@indigina/kendo 1.0.128-beta → 1.0.142-beta

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.
Files changed (48) hide show
  1. package/README.md +6 -5
  2. package/bundles/indigina-kendo.umd.js +2824 -2565
  3. package/bundles/indigina-kendo.umd.js.map +1 -1
  4. package/bundles/indigina-kendo.umd.min.js +2 -2
  5. package/bundles/indigina-kendo.umd.min.js.map +1 -1
  6. package/esm2015/indigina-kendo.js +3 -1
  7. package/esm2015/lib/angular/indigina.module.js +24 -14
  8. package/esm2015/lib/angular/models/AppSettings.js +1 -1
  9. package/esm2015/lib/angular/services/settings.service.js +8 -1
  10. package/esm2015/lib/components/azure-login-callback/azure-login-callback.component.js +35 -0
  11. package/esm2015/lib/config/msal-instance.factory.js +27 -0
  12. package/esm2015/lib/interceptors/auth-headers.interceptor.js +32 -0
  13. package/esm2015/lib/kendo.module.js +44 -24
  14. package/esm2015/lib/models/AuthProviders.js +6 -0
  15. package/esm2015/lib/models/AzureB2CSettings.js +2 -0
  16. package/esm2015/lib/models/SystemInfo.js +2 -0
  17. package/esm2015/lib/services/account.service.js +9 -9
  18. package/esm2015/lib/services/auth-provider.resolver.js +48 -0
  19. package/esm2015/lib/services/auth.providers/AuthProvider.js +3 -0
  20. package/esm2015/lib/services/auth.providers/azureb2c.provider.js +44 -0
  21. package/esm2015/lib/services/auth.providers/oauth.provider.js +40 -0
  22. package/esm2015/lib/services/base.account.service.js +67 -66
  23. package/esm2015/lib/services/signalr/signalr.service.js +3 -2
  24. package/esm2015/lib/widgets/entity-edit/entity-edit-form.component.js +7 -2
  25. package/esm2015/lib/widgets/entity-edit/field-multiselect/field-multiselect.component.js +4 -7
  26. package/esm2015/public-api.js +51 -46
  27. package/fesm2015/indigina-kendo.js +2482 -2241
  28. package/fesm2015/indigina-kendo.js.map +1 -1
  29. package/indigina-kendo.d.ts +2 -0
  30. package/indigina-kendo.metadata.json +1 -1
  31. package/lib/angular/indigina.module.d.ts +1 -1
  32. package/lib/angular/models/AppSettings.d.ts +6 -0
  33. package/lib/angular/services/settings.service.d.ts +2 -0
  34. package/lib/components/azure-login-callback/azure-login-callback.component.d.ts +11 -0
  35. package/lib/config/msal-instance.factory.d.ts +3 -0
  36. package/lib/interceptors/auth-headers.interceptor.d.ts +8 -0
  37. package/lib/models/AuthProviders.d.ts +4 -0
  38. package/lib/models/AzureB2CSettings.d.ts +5 -0
  39. package/lib/models/SystemInfo.d.ts +3 -0
  40. package/lib/services/account.service.d.ts +5 -5
  41. package/lib/services/auth-provider.resolver.d.ts +12 -0
  42. package/lib/services/auth.providers/AuthProvider.d.ts +8 -0
  43. package/lib/services/auth.providers/azureb2c.provider.d.ts +14 -0
  44. package/lib/services/auth.providers/oauth.provider.d.ts +15 -0
  45. package/lib/services/base.account.service.d.ts +5 -5
  46. package/lib/widgets/entity-edit/field-multiselect/field-multiselect.component.d.ts +1 -1
  47. package/package.json +3 -1
  48. package/public-api.d.ts +67 -60
@@ -0,0 +1,44 @@
1
+ import { __awaiter } from "tslib";
2
+ import { InteractionRequiredAuthError } from '@azure/msal-browser';
3
+ import { from, of } from 'rxjs';
4
+ import { AuthProvider } from './AuthProvider';
5
+ export class AzureB2CProvider extends AuthProvider {
6
+ constructor(authService, settingsService) {
7
+ super();
8
+ this.authService = authService;
9
+ this.settingsService = settingsService;
10
+ this.isUserLoggedIn = () => { var _a; return !!((_a = this.authService.instance.getActiveAccount()) === null || _a === void 0 ? void 0 : _a.localAccountId); };
11
+ }
12
+ initialize() {
13
+ return of(true);
14
+ }
15
+ login() {
16
+ if (!this.isUserLoggedIn()) {
17
+ this.authService.loginRedirect().subscribe();
18
+ }
19
+ }
20
+ logout() {
21
+ this.authService.logoutRedirect({
22
+ postLogoutRedirectUri: location.origin,
23
+ });
24
+ }
25
+ getAccessToken() {
26
+ const request = {
27
+ scopes: ['openid', 'offline_access', 'profile'],
28
+ };
29
+ return from(this.authService.instance
30
+ .acquireTokenSilent(request)
31
+ .then((authenticationResult) => {
32
+ const token = authenticationResult.idToken;
33
+ this.settingsService.setToken(token);
34
+ return token;
35
+ })
36
+ .catch((error) => __awaiter(this, void 0, void 0, function* () {
37
+ if (error instanceof InteractionRequiredAuthError) {
38
+ yield this.authService.instance.acquireTokenRedirect(request);
39
+ return this.settingsService.getToken();
40
+ }
41
+ })));
42
+ }
43
+ }
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp1cmViMmMucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2F1dGgucHJvdmlkZXJzL2F6dXJlYjJjLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFDQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsSUFBSSxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUU1QyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFlBQVk7SUFDaEQsWUFDVSxXQUF3QixFQUN4QixlQUFnQztRQUV4QyxLQUFLLEVBQUUsQ0FBQztRQUhBLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQ3hCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQTZDbkMsbUJBQWMsR0FBRyxHQUFZLEVBQUUsV0FDcEMsT0FBQSxDQUFDLFFBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLEVBQUUsMENBQUUsY0FBYyxDQUFBLENBQUEsRUFBQSxDQUFDO0lBM0NqRSxDQUFDO0lBRU0sVUFBVTtRQUNmLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2xCLENBQUM7SUFFTSxLQUFLO1FBQ1YsSUFBSSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDO1NBQzlDO0lBQ0gsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQztZQUM5QixxQkFBcUIsRUFBRSxRQUFRLENBQUMsTUFBTTtTQUN2QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sY0FBYztRQUNuQixNQUFNLE9BQU8sR0FBRztZQUNkLE1BQU0sRUFBRSxDQUFDLFFBQVEsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUM7U0FDaEQsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUNULElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTthQUN0QixrQkFBa0IsQ0FBQyxPQUFPLENBQUM7YUFDM0IsSUFBSSxDQUFDLENBQUMsb0JBQW9CLEVBQUUsRUFBRTtZQUM3QixNQUFNLEtBQUssR0FBRyxvQkFBb0IsQ0FBQyxPQUFPLENBQUM7WUFDM0MsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7WUFFckMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDLENBQUM7YUFDRCxLQUFLLENBQUMsQ0FBTyxLQUFLLEVBQUUsRUFBRTtZQUNyQixJQUFJLEtBQUssWUFBWSw0QkFBNEIsRUFBRTtnQkFDakQsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxvQkFBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztnQkFFOUQsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQ3hDO1FBQ0gsQ0FBQyxDQUFBLENBQUMsQ0FDTCxDQUFDO0lBQ0osQ0FBQztDQUlGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTXNhbFNlcnZpY2UgfSBmcm9tICdAYXp1cmUvbXNhbC1hbmd1bGFyJztcbmltcG9ydCB7IEludGVyYWN0aW9uUmVxdWlyZWRBdXRoRXJyb3IgfSBmcm9tICdAYXp1cmUvbXNhbC1icm93c2VyJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi8uLi9hbmd1bGFyL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyIH0gZnJvbSAnLi9BdXRoUHJvdmlkZXInO1xuXG5leHBvcnQgY2xhc3MgQXp1cmVCMkNQcm92aWRlciBleHRlbmRzIEF1dGhQcm92aWRlciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgYXV0aFNlcnZpY2U6IE1zYWxTZXJ2aWNlLFxuICAgIHByaXZhdGUgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2VcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuXG4gIHB1YmxpYyBpbml0aWFsaXplKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiBvZih0cnVlKTtcbiAgfVxuXG4gIHB1YmxpYyBsb2dpbigpIHtcbiAgICBpZiAoIXRoaXMuaXNVc2VyTG9nZ2VkSW4oKSkge1xuICAgICAgdGhpcy5hdXRoU2VydmljZS5sb2dpblJlZGlyZWN0KCkuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGxvZ291dCgpIHtcbiAgICB0aGlzLmF1dGhTZXJ2aWNlLmxvZ291dFJlZGlyZWN0KHtcbiAgICAgIHBvc3RMb2dvdXRSZWRpcmVjdFVyaTogbG9jYXRpb24ub3JpZ2luLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGdldEFjY2Vzc1Rva2VuKCk6IE9ic2VydmFibGU8c3RyaW5nPiB7XG4gICAgY29uc3QgcmVxdWVzdCA9IHtcbiAgICAgIHNjb3BlczogWydvcGVuaWQnLCAnb2ZmbGluZV9hY2Nlc3MnLCAncHJvZmlsZSddLFxuICAgIH07XG5cbiAgICByZXR1cm4gZnJvbShcbiAgICAgIHRoaXMuYXV0aFNlcnZpY2UuaW5zdGFuY2VcbiAgICAgICAgLmFjcXVpcmVUb2tlblNpbGVudChyZXF1ZXN0KVxuICAgICAgICAudGhlbigoYXV0aGVudGljYXRpb25SZXN1bHQpID0+IHtcbiAgICAgICAgICBjb25zdCB0b2tlbiA9IGF1dGhlbnRpY2F0aW9uUmVzdWx0LmlkVG9rZW47XG4gICAgICAgICAgdGhpcy5zZXR0aW5nc1NlcnZpY2Uuc2V0VG9rZW4odG9rZW4pO1xuXG4gICAgICAgICAgcmV0dXJuIHRva2VuO1xuICAgICAgICB9KVxuICAgICAgICAuY2F0Y2goYXN5bmMgKGVycm9yKSA9PiB7XG4gICAgICAgICAgaWYgKGVycm9yIGluc3RhbmNlb2YgSW50ZXJhY3Rpb25SZXF1aXJlZEF1dGhFcnJvcikge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5hdXRoU2VydmljZS5pbnN0YW5jZS5hY3F1aXJlVG9rZW5SZWRpcmVjdChyZXF1ZXN0KTtcblxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuc2V0dGluZ3NTZXJ2aWNlLmdldFRva2VuKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgaXNVc2VyTG9nZ2VkSW4gPSAoKTogYm9vbGVhbiA9PlxuICAgICEhdGhpcy5hdXRoU2VydmljZS5pbnN0YW5jZS5nZXRBY3RpdmVBY2NvdW50KCk/LmxvY2FsQWNjb3VudElkO1xufVxuIl19
@@ -0,0 +1,40 @@
1
+ import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';
2
+ import { from, of } from 'rxjs';
3
+ import { mergeMap } from 'rxjs/operators';
4
+ import { AuthProvider } from './AuthProvider';
5
+ const homePath = '/home';
6
+ export class OAuthProvider extends AuthProvider {
7
+ constructor(oauthService, configuration) {
8
+ super();
9
+ this.oauthService = oauthService;
10
+ this.configuration = configuration;
11
+ this.isUserLoggedIn = () => this.oauthService.hasValidAccessToken();
12
+ }
13
+ initialize() {
14
+ const authConfig = {
15
+ issuer: this.configuration.appSettings.oidc.issuer,
16
+ redirectUri: window.location.origin + '/login/callback',
17
+ clientId: this.configuration.appSettings.oidc.clientId,
18
+ scope: 'openid profile offline_access',
19
+ postLogoutRedirectUri: window.location.origin + homePath,
20
+ silentRefreshRedirectUri: window.location.origin + '/silent-renew.html',
21
+ };
22
+ return this.configure(authConfig);
23
+ }
24
+ login() {
25
+ this.oauthService.initLoginFlow();
26
+ }
27
+ logout() {
28
+ this.oauthService.logOut();
29
+ }
30
+ getAccessToken() {
31
+ return of(this.oauthService.getAccessToken());
32
+ }
33
+ configure(authConfig) {
34
+ this.oauthService.configure(authConfig);
35
+ this.oauthService.tokenValidationHandler = new JwksValidationHandler();
36
+ this.oauthService.setupAutomaticSilentRefresh();
37
+ return from(this.oauthService.loadDiscoveryDocument(authConfig.issuer + '/identity/.well-known/openid-configuration')).pipe(mergeMap(() => from(this.oauthService.tryLoginImplicitFlow())));
38
+ }
39
+ }
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib2F1dGgucHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2F1dGgucHJvdmlkZXJzL29hdXRoLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxJQUFJLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUUxQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFOUMsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDO0FBRXpCLE1BQU0sT0FBTyxhQUFjLFNBQVEsWUFBWTtJQUM3QyxZQUNVLFlBQTBCLEVBQzFCLGFBQW9DO1FBRTVDLEtBQUssRUFBRSxDQUFDO1FBSEEsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDMUIsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBOEJ2QyxtQkFBYyxHQUFHLEdBQVksRUFBRSxDQUNwQyxJQUFJLENBQUMsWUFBWSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUE1QjFDLENBQUM7SUFFTSxVQUFVO1FBQ2YsTUFBTSxVQUFVLEdBQWU7WUFDN0IsTUFBTSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQ2xELFdBQVcsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxpQkFBaUI7WUFDdkQsUUFBUSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ3RELEtBQUssRUFBRSwrQkFBK0I7WUFDdEMscUJBQXFCLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsUUFBUTtZQUN4RCx3QkFBd0IsRUFBRSxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sR0FBRyxvQkFBb0I7U0FDeEUsQ0FBQztRQUVGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sS0FBSztRQUNWLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDcEMsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFTSxjQUFjO1FBQ25CLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBS08sU0FBUyxDQUFDLFVBQXNCO1FBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hDLElBQUksQ0FBQyxZQUFZLENBQUMsc0JBQXNCLEdBQUcsSUFBSSxxQkFBcUIsRUFBRSxDQUFDO1FBQ3ZFLElBQUksQ0FBQyxZQUFZLENBQUMsMkJBQTJCLEVBQUUsQ0FBQztRQUVoRCxPQUFPLElBQUksQ0FDVCxJQUFJLENBQUMsWUFBWSxDQUFDLHFCQUFxQixDQUNyQyxVQUFVLENBQUMsTUFBTSxHQUFHLDRDQUE0QyxDQUNqRSxDQUNGLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF1dGhDb25maWcsIE9BdXRoU2VydmljZSB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMnO1xuaW1wb3J0IHsgSndrc1ZhbGlkYXRpb25IYW5kbGVyIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYy1qd2tzJztcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtZXJnZU1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEluZGlnaW5hQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvbW9kZWxzL0luZGlnaW5hQ29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBBdXRoUHJvdmlkZXIgfSBmcm9tICcuL0F1dGhQcm92aWRlcic7XG5cbmNvbnN0IGhvbWVQYXRoID0gJy9ob21lJztcblxuZXhwb3J0IGNsYXNzIE9BdXRoUHJvdmlkZXIgZXh0ZW5kcyBBdXRoUHJvdmlkZXIge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIG9hdXRoU2VydmljZTogT0F1dGhTZXJ2aWNlLFxuICAgIHByaXZhdGUgY29uZmlndXJhdGlvbjogSW5kaWdpbmFDb25maWd1cmF0aW9uXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgaW5pdGlhbGl6ZSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICBjb25zdCBhdXRoQ29uZmlnOiBBdXRoQ29uZmlnID0ge1xuICAgICAgaXNzdWVyOiB0aGlzLmNvbmZpZ3VyYXRpb24uYXBwU2V0dGluZ3Mub2lkYy5pc3N1ZXIsXG4gICAgICByZWRpcmVjdFVyaTogd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvbG9naW4vY2FsbGJhY2snLFxuICAgICAgY2xpZW50SWQ6IHRoaXMuY29uZmlndXJhdGlvbi5hcHBTZXR0aW5ncy5vaWRjLmNsaWVudElkLFxuICAgICAgc2NvcGU6ICdvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcycsXG4gICAgICBwb3N0TG9nb3V0UmVkaXJlY3RVcmk6IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBob21lUGF0aCxcbiAgICAgIHNpbGVudFJlZnJlc2hSZWRpcmVjdFVyaTogd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvc2lsZW50LXJlbmV3Lmh0bWwnLFxuICAgIH07XG5cbiAgICByZXR1cm4gdGhpcy5jb25maWd1cmUoYXV0aENvbmZpZyk7XG4gIH1cblxuICBwdWJsaWMgbG9naW4oKSB7XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UuaW5pdExvZ2luRmxvdygpO1xuICB9XG5cbiAgcHVibGljIGxvZ291dCgpIHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5sb2dPdXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBY2Nlc3NUb2tlbigpOiBPYnNlcnZhYmxlPHN0cmluZz4ge1xuICAgIHJldHVybiBvZih0aGlzLm9hdXRoU2VydmljZS5nZXRBY2Nlc3NUb2tlbigpKTtcbiAgfVxuXG4gIHB1YmxpYyBpc1VzZXJMb2dnZWRJbiA9ICgpOiBib29sZWFuID0+XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UuaGFzVmFsaWRBY2Nlc3NUb2tlbigpO1xuXG4gIHByaXZhdGUgY29uZmlndXJlKGF1dGhDb25maWc6IEF1dGhDb25maWcpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5jb25maWd1cmUoYXV0aENvbmZpZyk7XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UudG9rZW5WYWxpZGF0aW9uSGFuZGxlciA9IG5ldyBKd2tzVmFsaWRhdGlvbkhhbmRsZXIoKTtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5zZXR1cEF1dG9tYXRpY1NpbGVudFJlZnJlc2goKTtcblxuICAgIHJldHVybiBmcm9tKFxuICAgICAgdGhpcy5vYXV0aFNlcnZpY2UubG9hZERpc2NvdmVyeURvY3VtZW50KFxuICAgICAgICBhdXRoQ29uZmlnLmlzc3VlciArICcvaWRlbnRpdHkvLndlbGwta25vd24vb3BlbmlkLWNvbmZpZ3VyYXRpb24nXG4gICAgICApXG4gICAgKS5waXBlKG1lcmdlTWFwKCgpID0+IGZyb20odGhpcy5vYXV0aFNlcnZpY2UudHJ5TG9naW5JbXBsaWNpdEZsb3coKSkpKTtcbiAgfVxufVxuIl19
@@ -1,87 +1,88 @@
1
1
  import { __awaiter } from "tslib";
2
2
  import { BehaviorSubject } from 'rxjs';
3
- import { JwksValidationHandler } from 'angular-oauth2-oidc-jwks';
3
+ import { map, mergeMap } from 'rxjs/operators';
4
4
  import { endpoints } from './endpoints';
5
5
  import { EventNames } from './signalr/EventNames';
6
- import { map } from 'rxjs/operators';
7
6
  const adminUriPart = '/admin/';
8
- const homePath = '/home';
9
7
  export class BaseAccountService {
10
- constructor(oauthService, httpService, settingsService, signalRService) {
11
- this.oauthService = oauthService;
8
+ constructor(resolver, httpService, settingsService, signalRService) {
9
+ this.resolver = resolver;
12
10
  this.httpService = httpService;
13
11
  this.settingsService = settingsService;
14
12
  this.signalRService = signalRService;
15
13
  this.user = new BehaviorSubject(null);
16
- this.userHasLoggedIn = () => this.oauthService.hasValidAccessToken();
17
- this.httpService
18
- .get(endpoints.oidc.config)
19
- .subscribe((oidcResponse) => {
20
- const authConfig = {
21
- issuer: oidcResponse.issuer,
22
- redirectUri: window.location.origin + '/login/callback',
23
- clientId: oidcResponse.clientId,
24
- scope: 'openid profile offline_access',
25
- postLogoutRedirectUri: window.location.origin + homePath,
26
- silentRefreshRedirectUri: window.location.origin + '/silent-renew.html',
27
- };
28
- this.configure(authConfig);
29
- this.signalRService
30
- .on(EventNames.UserUpdated)
31
- .subscribe(() => __awaiter(this, void 0, void 0, function* () {
32
- this.signalRService.reconnect(this.oauthService.getAccessToken());
33
- this.httpService
34
- .get(endpoints.members.me)
35
- .subscribe((user) => this.user.next(user));
36
- }));
37
- });
14
+ this.resolver
15
+ .getProvider()
16
+ .pipe(map((provider) => {
17
+ this.initialize(provider);
18
+ }))
19
+ .subscribe();
38
20
  }
39
21
  login() {
40
- this.oauthService.initLoginFlow();
22
+ this.resolver
23
+ .getProvider()
24
+ .pipe(map((provider) => {
25
+ provider.login();
26
+ }))
27
+ .subscribe();
41
28
  }
42
29
  logout() {
43
30
  this.settingsService.clearLoginAsUser();
44
- this.oauthService.logOut();
31
+ this.resolver
32
+ .getProvider()
33
+ .pipe(map((provider) => {
34
+ provider.logout();
35
+ }))
36
+ .subscribe();
37
+ }
38
+ initialize(provider) {
39
+ this.getCurrentUser().subscribe((user) => {
40
+ if (!user) {
41
+ return;
42
+ }
43
+ const path = this.settingsService.getCallbackPath();
44
+ if (path) {
45
+ this.settingsService.clearCallbackPath();
46
+ window.location.href = window.location.origin + path;
47
+ return;
48
+ }
49
+ if (this.isAdmin(user) &&
50
+ !window.location.pathname.startsWith(adminUriPart)) {
51
+ window.location.href = `${window.location.origin}${adminUriPart}`;
52
+ return;
53
+ }
54
+ provider.getAccessToken().subscribe((token) => {
55
+ this.signalRService.startConnection(token);
56
+ this.signalRService
57
+ .on(EventNames.UserUpdated)
58
+ .subscribe(() => __awaiter(this, void 0, void 0, function* () {
59
+ provider.getAccessToken().subscribe((token) => {
60
+ this.signalRService.reconnect(token);
61
+ });
62
+ this.httpService
63
+ .get(endpoints.members.me)
64
+ .subscribe((user) => this.user.next(user));
65
+ }));
66
+ });
67
+ });
45
68
  }
46
69
  getCurrentUser() {
47
- if (this.user.getValue() || !this.oauthService.hasValidAccessToken()) {
48
- return this.user;
49
- }
50
- return this.httpService.get(endpoints.members.me).pipe(map((user) => {
51
- this.user.next(user);
52
- return user;
70
+ return this.resolver.getProvider().pipe(mergeMap((provider) => {
71
+ if (this.user.getValue() || !provider.isUserLoggedIn()) {
72
+ return this.user;
73
+ }
74
+ return provider.getAccessToken().pipe(mergeMap(() => {
75
+ return this.httpService.get(endpoints.members.me).pipe(map((user) => {
76
+ this.user.next(user);
77
+ return user;
78
+ }));
79
+ }));
53
80
  }));
54
81
  }
55
- configure(authConfig) {
56
- return __awaiter(this, void 0, void 0, function* () {
57
- this.oauthService.configure(authConfig);
58
- this.oauthService.tokenValidationHandler = new JwksValidationHandler();
59
- this.oauthService.setupAutomaticSilentRefresh();
60
- yield this.oauthService.loadDiscoveryDocument(authConfig.issuer + '/identity/.well-known/openid-configuration');
61
- this.oauthService.tryLoginImplicitFlow().then(() => __awaiter(this, void 0, void 0, function* () {
62
- if (!this.oauthService.hasValidAccessToken()) {
63
- return;
64
- }
65
- this.getCurrentUser().subscribe((user) => {
66
- if (!user) {
67
- return;
68
- }
69
- const path = this.settingsService.getCallbackPath();
70
- if (path) {
71
- this.settingsService.clearCallbackPath();
72
- window.location.href = window.location.origin + path;
73
- return;
74
- }
75
- if (this.isAdmin(user) &&
76
- !window.location.pathname.startsWith(adminUriPart)) {
77
- window.location.href = `${window.location.origin}${adminUriPart}`;
78
- return;
79
- }
80
- const token = this.oauthService.getAccessToken();
81
- this.signalRService.startConnection(token);
82
- });
83
- }));
84
- });
82
+ isUserLoggedIn() {
83
+ return this.resolver
84
+ .getProvider()
85
+ .pipe(map((provider) => provider.isUserLoggedIn()));
85
86
  }
86
87
  }
87
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2Jhc2UuYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBR25ELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJeEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVyQyxNQUFNLFlBQVksR0FBRyxTQUFTLENBQUM7QUFDL0IsTUFBTSxRQUFRLEdBQUcsT0FBTyxDQUFDO0FBRXpCLE1BQU0sT0FBZ0Isa0JBQWtCO0lBR3RDLFlBQ1MsWUFBMEIsRUFDdkIsV0FBd0IsRUFDeEIsZUFBZ0MsRUFDaEMsY0FBOEI7UUFIakMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQU5uQyxTQUFJLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFnR3BDLG9CQUFlLEdBQUcsR0FBWSxFQUFFLENBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztRQXpGeEMsSUFBSSxDQUFDLFdBQVc7YUFDYixHQUFHLENBQWUsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7YUFDeEMsU0FBUyxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFO1lBQ3hDLE1BQU0sVUFBVSxHQUFlO2dCQUM3QixNQUFNLEVBQUUsWUFBWSxDQUFD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ekMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDO3dCQUVyRCxPQUFPO3FCQUNSO29CQUVELElBQ0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUM7d0JBQ2xCLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxFQUNsRDt3QkFDQSxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsTUFBTSxHQUFHLFlBQVksRUFBRSxDQUFDO3dCQUVsRSxPQUFPO3FCQUNSO29CQUVELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsY0FBYyxFQUFFLENBQUM7b0JBQ2pELElBQUksQ0FBQyxjQUFjLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUM3QyxDQUFDLENBQUMsQ0FBQztZQUNMLENBQUMsQ0FBQSxDQUFDLENBQUM7UUFDTCxDQUFDO0tBQUE7Q0FNRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQXV0aENvbmZpZywgT0F1dGhTZXJ2aWNlIH0gZnJvbSAnYW5ndWxhci1vYXV0aDItb2lkYyc7XG5pbXBvcnQgeyBPaWRjU2V0dGluZ3MgfSBmcm9tICcuLi9tb2RlbHMvT2lkY1NldHRpbmdzJztcbmltcG9ydCB7IEp3a3NWYWxpZGF0aW9uSGFuZGxlciB9IGZyb20gJ2FuZ3VsYXItb2F1dGgyLW9pZGMtandrcyc7XG5pbXBvcnQgeyBlbmRwb2ludHMgfSBmcm9tICcuL2VuZHBvaW50cyc7XG5pbXBvcnQgeyBIdHRwU2VydmljZSB9IGZyb20gJy4uL2FuZ3VsYXIvc2VydmljZXMvaHR0cC5zZXJ2aWNlJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uL2FuZ3VsYXIvc2VydmljZXMvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBTaWduYWxSU2VydmljZSB9IGZyb20gJy4vc2lnbmFsci9zaWduYWxyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRXZlbnROYW1lcyB9IGZyb20gJy4vc2lnbmFsci9FdmVudE5hbWVzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuY29uc3QgYWRtaW5VcmlQYXJ0ID0gJy9hZG1pbi8nO1xuY29uc3QgaG9tZVBhdGggPSAnL2hvbWUnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZUFjY291bnRTZXJ2aWNlPFQ+IHtcbiAgcHVibGljIHVzZXIgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KG51bGwpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBvYXV0aFNlcnZpY2U6IE9BdXRoU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgaHR0cFNlcnZpY2U6IEh0dHBTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBzZXR0aW5nc1NlcnZpY2U6IFNldHRpbmdzU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgc2lnbmFsUlNlcnZpY2U6IFNpZ25hbFJTZXJ2aWNlXG4gICkge1xuICAgIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgIC5nZXQ8T2lkY1NldHRpbmdzPihlbmRwb2ludHMub2lkYy5jb25maWcpXG4gICAgICAuc3Vic2NyaWJlKChvaWRjUmVzcG9uc2U6IE9pZGNTZXR0aW5ncykgPT4ge1xuICAgICAgICBjb25zdCBhdXRoQ29uZmlnOiBBdXRoQ29uZmlnID0ge1xuICAgICAgICAgIGlzc3Vlcjogb2lkY1Jlc3BvbnNlLmlzc3VlcixcbiAgICAgICAgICByZWRpcmVjdFVyaTogd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvbG9naW4vY2FsbGJhY2snLFxuICAgICAgICAgIGNsaWVudElkOiBvaWRjUmVzcG9uc2UuY2xpZW50SWQsXG4gICAgICAgICAgc2NvcGU6ICdvcGVuaWQgcHJvZmlsZSBvZmZsaW5lX2FjY2VzcycsXG4gICAgICAgICAgcG9zdExvZ291dFJlZGlyZWN0VXJpOiB3aW5kb3cubG9jYXRpb24ub3JpZ2luICsgaG9tZVBhdGgsXG4gICAgICAgICAgc2lsZW50UmVmcmVzaFJlZGlyZWN0VXJpOlxuICAgICAgICAgICAgd2luZG93LmxvY2F0aW9uLm9yaWdpbiArICcvc2lsZW50LXJlbmV3Lmh0bWwnLFxuICAgICAgICB9O1xuXG4gICAgICAgIHRoaXMuY29uZmlndXJlKGF1dGhDb25maWcpO1xuICAgICAgICB0aGlzLnNpZ25hbFJTZXJ2aWNlXG4gICAgICAgICAgLm9uPFQ+KEV2ZW50TmFtZXMuVXNlclVwZGF0ZWQpXG4gICAgICAgICAgLnN1YnNjcmliZShhc3luYyAoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNpZ25hbFJTZXJ2aWNlLnJlY29ubmVjdCh0aGlzLm9hdXRoU2VydmljZS5nZXRBY2Nlc3NUb2tlbigpKTtcbiAgICAgICAgICAgIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgICAgICAgICAgLmdldDxUPihlbmRwb2ludHMubWVtYmVycy5tZSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgodXNlcikgPT4gdGhpcy51c2VyLm5leHQodXNlcikpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gIH1cblxuICBsb2dpbigpIHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5pbml0TG9naW5GbG93KCk7XG4gIH1cblxuICBsb2dvdXQoKSB7XG4gICAgdGhpcy5zZXR0aW5nc1NlcnZpY2UuY2xlYXJMb2dpbkFzVXNlcigpO1xuICAgIHRoaXMub2F1dGhTZXJ2aWNlLmxvZ091dCgpO1xuICB9XG5cbiAgZ2V0Q3VycmVudFVzZXIoKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgaWYgKHRoaXMudXNlci5nZXRWYWx1ZSgpIHx8ICF0aGlzLm9hdXRoU2VydmljZS5oYXNWYWxpZEFjY2Vzc1Rva2VuKCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnVzZXI7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuZ2V0KGVuZHBvaW50cy5tZW1iZXJzLm1lKS5waXBlKFxuICAgICAgbWFwKCh1c2VyKSA9PiB7XG4gICAgICAgIHRoaXMudXNlci5uZXh0KHVzZXIgYXMgVCk7XG5cbiAgICAgICAgcmV0dXJuIHVzZXIgYXMgVDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgY29uZmlndXJlKGF1dGhDb25maWc6IEF1dGhDb25maWcpIHtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5jb25maWd1cmUoYXV0aENvbmZpZyk7XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UudG9rZW5WYWxpZGF0aW9uSGFuZGxlciA9IG5ldyBKd2tzVmFsaWRhdGlvbkhhbmRsZXIoKTtcbiAgICB0aGlzLm9hdXRoU2VydmljZS5zZXR1cEF1dG9tYXRpY1NpbGVudFJlZnJlc2goKTtcbiAgICBhd2FpdCB0aGlzLm9hdXRoU2VydmljZS5sb2FkRGlzY292ZXJ5RG9jdW1lbnQoXG4gICAgICBhdXRoQ29uZmlnLmlzc3VlciArICcvaWRlbnRpdHkvLndlbGwta25vd24vb3BlbmlkLWNvbmZpZ3VyYXRpb24nXG4gICAgKTtcbiAgICB0aGlzLm9hdXRoU2VydmljZS50cnlMb2dpbkltcGxpY2l0RmxvdygpLnRoZW4oYXN5bmMgKCkgPT4ge1xuICAgICAgaWYgKCF0aGlzLm9hdXRoU2VydmljZS5oYXNWYWxpZEFjY2Vzc1Rva2VuKCkpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICB0aGlzLmdldEN1cnJlbnRVc2VyKCkuc3Vic2NyaWJlKCh1c2VyKSA9PiB7XG4gICAgICAgIGlmICghdXNlcikge1xuICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHBhdGggPSB0aGlzLnNldHRpbmdzU2VydmljZS5nZXRDYWxsYmFja1BhdGgoKTtcbiAgICAgICAgaWYgKHBhdGgpIHtcbiAgICAgICAgICB0aGlzLnNldHRpbmdzU2VydmljZS5jbGVhckNhbGxiYWNrUGF0aCgpO1xuICAgICAgICAgIHdpbmRvdy5sb2NhdGlvbi5ocmVmID0gd2luZG93LmxvY2F0aW9uLm9yaWdpbiArIHBhdGg7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgdGhpcy5pc0FkbWluKHVzZXIpICYmXG4gICAgICAgICAgIXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zdGFydHNXaXRoKGFkbWluVXJpUGFydClcbiAgICAgICAgKSB7XG4gICAgICAgICAgd2luZG93LmxvY2F0aW9uLmhyZWYgPSBgJHt3aW5kb3cubG9jYXRpb24ub3JpZ2lufSR7YWRtaW5VcmlQYXJ0fWA7XG5cbiAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0b2tlbiA9IHRoaXMub2F1dGhTZXJ2aWNlLmdldEFjY2Vzc1Rva2VuKCk7XG4gICAgICAgIHRoaXMuc2lnbmFsUlNlcnZpY2Uuc3RhcnRDb25uZWN0aW9uKHRva2VuKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHVzZXJIYXNMb2dnZWRJbiA9ICgpOiBib29sZWFuID0+XG4gICAgdGhpcy5vYXV0aFNlcnZpY2UuaGFzVmFsaWRBY2Nlc3NUb2tlbigpO1xuXG4gIHB1YmxpYyBhYnN0cmFjdCBpc0FkbWluKG1lbWJlcjogVCk6IGJvb2xlYW47XG59XG4iXX0=
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS5hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3NlcnZpY2VzL2Jhc2UuYWNjb3VudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFLL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUN4QyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbEQsTUFBTSxZQUFZLEdBQUcsU0FBUyxDQUFDO0FBRS9CLE1BQU0sT0FBZ0Isa0JBQWtCO0lBR3RDLFlBQ1MsUUFBOEIsRUFDM0IsV0FBd0IsRUFDeEIsZUFBZ0MsRUFDaEMsY0FBOEI7UUFIakMsYUFBUSxHQUFSLFFBQVEsQ0FBc0I7UUFDM0IsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFDeEIsb0JBQWUsR0FBZixlQUFlLENBQWlCO1FBQ2hDLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtRQU5uQyxTQUFJLEdBQUcsSUFBSSxlQUFlLENBQUksSUFBSSxDQUFDLENBQUM7UUFRekMsSUFBSSxDQUFDLFFBQVE7YUFDVixXQUFXLEVBQUU7YUFDYixJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7WUFDZixJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUNIO2FBQ0EsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsUUFBUTthQUNWLFdBQVcsRUFBRTthQUNiLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtZQUNmLFFBQVEsQ0FBQyxLQUFLLEVBQUUs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QUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUVyQixPQUFPLElBQUksQ0FBQztnQkFDZCxDQUFDLENBQUMsQ0FDSCxDQUFDO1lBQ0osQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRU0sY0FBYztRQUNuQixPQUFPLElBQUksQ0FBQyxRQUFRO2FBQ2pCLFdBQVcsRUFBRTthQUNiLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDeEQsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIG1lcmdlTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSHR0cFNlcnZpY2UgfSBmcm9tICcuLi9hbmd1bGFyL3NlcnZpY2VzL2h0dHAuc2VydmljZSc7XG5pbXBvcnQgeyBTZXR0aW5nc1NlcnZpY2UgfSBmcm9tICcuLi9hbmd1bGFyL3NlcnZpY2VzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyUmVzb2x2ZXIgfSBmcm9tICcuL2F1dGgtcHJvdmlkZXIucmVzb2x2ZXInO1xuaW1wb3J0IHsgQXV0aFByb3ZpZGVyIH0gZnJvbSAnLi9hdXRoLnByb3ZpZGVycy9BdXRoUHJvdmlkZXInO1xuaW1wb3J0IHsgZW5kcG9pbnRzIH0gZnJvbSAnLi9lbmRwb2ludHMnO1xuaW1wb3J0IHsgRXZlbnROYW1lcyB9IGZyb20gJy4vc2lnbmFsci9FdmVudE5hbWVzJztcbmltcG9ydCB7IFNpZ25hbFJTZXJ2aWNlIH0gZnJvbSAnLi9zaWduYWxyL3NpZ25hbHIuc2VydmljZSc7XG5cbmNvbnN0IGFkbWluVXJpUGFydCA9ICcvYWRtaW4vJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VBY2NvdW50U2VydmljZTxUPiB7XG4gIHB1YmxpYyB1c2VyID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihudWxsKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVzb2x2ZXI6IEF1dGhQcm92aWRlclJlc29sdmVyLFxuICAgIHByb3RlY3RlZCBodHRwU2VydmljZTogSHR0cFNlcnZpY2UsXG4gICAgcHJvdGVjdGVkIHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBzaWduYWxSU2VydmljZTogU2lnbmFsUlNlcnZpY2VcbiAgKSB7XG4gICAgdGhpcy5yZXNvbHZlclxuICAgICAgLmdldFByb3ZpZGVyKClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHByb3ZpZGVyKSA9PiB7XG4gICAgICAgICAgdGhpcy5pbml0aWFsaXplKHByb3ZpZGVyKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGxvZ2luKCkge1xuICAgIHRoaXMucmVzb2x2ZXJcbiAgICAgIC5nZXRQcm92aWRlcigpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChwcm92aWRlcikgPT4ge1xuICAgICAgICAgIHByb3ZpZGVyLmxvZ2luKCk7XG4gICAgICAgIH0pXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBsb2dvdXQoKSB7XG4gICAgdGhpcy5zZXR0aW5nc1NlcnZpY2UuY2xlYXJMb2dpbkFzVXNlcigpO1xuICAgIHRoaXMucmVzb2x2ZXJcbiAgICAgIC5nZXRQcm92aWRlcigpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChwcm92aWRlcikgPT4ge1xuICAgICAgICAgIHByb3ZpZGVyLmxvZ291dCgpO1xuICAgICAgICB9KVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgpO1xuICB9XG5cbiAgcHJpdmF0ZSBpbml0aWFsaXplKHByb3ZpZGVyOiBBdXRoUHJvdmlkZXIpIHtcbiAgICB0aGlzLmdldEN1cnJlbnRVc2VyKCkuc3Vic2NyaWJlKCh1c2VyKSA9PiB7XG4gICAgICBpZiAoIXVzZXIpIHtcbiAgICAgICAgcmV0dXJuO1xuICAgICAgfVxuXG4gICAgICBjb25zdCBwYXRoID0gdGhpcy5zZXR0aW5nc1NlcnZpY2UuZ2V0Q2FsbGJhY2tQYXRoKCk7XG4gICAgICBpZiAocGF0aCkge1xuICAgICAgICB0aGlzLnNldHRpbmdzU2VydmljZS5jbGVhckNhbGxiYWNrUGF0aCgpO1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gKyBwYXRoO1xuXG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgaWYgKFxuICAgICAgICB0aGlzLmlzQWRtaW4odXNlcikgJiZcbiAgICAgICAgIXdpbmRvdy5sb2NhdGlvbi5wYXRobmFtZS5zdGFydHNXaXRoKGFkbWluVXJpUGFydClcbiAgICAgICkge1xuICAgICAgICB3aW5kb3cubG9jYXRpb24uaHJlZiA9IGAke3dpbmRvdy5sb2NhdGlvbi5vcmlnaW59JHthZG1pblVyaVBhcnR9YDtcblxuICAgICAgICByZXR1cm47XG4gICAgICB9XG5cbiAgICAgIHByb3ZpZGVyLmdldEFjY2Vzc1Rva2VuKCkuc3Vic2NyaWJlKCh0b2tlbikgPT4ge1xuICAgICAgICB0aGlzLnNpZ25hbFJTZXJ2aWNlLnN0YXJ0Q29ubmVjdGlvbih0b2tlbik7XG4gICAgICAgIHRoaXMuc2lnbmFsUlNlcnZpY2VcbiAgICAgICAgICAub248VD4oRXZlbnROYW1lcy5Vc2VyVXBkYXRlZClcbiAgICAgICAgICAuc3Vic2NyaWJlKGFzeW5jICgpID0+IHtcbiAgICAgICAgICAgIHByb3ZpZGVyLmdldEFjY2Vzc1Rva2VuKCkuc3Vic2NyaWJlKCh0b2tlbikgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnNpZ25hbFJTZXJ2aWNlLnJlY29ubmVjdCh0b2tlbik7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHRoaXMuaHR0cFNlcnZpY2VcbiAgICAgICAgICAgICAgLmdldDxUPihlbmRwb2ludHMubWVtYmVycy5tZSlcbiAgICAgICAgICAgICAgLnN1YnNjcmliZSgodXNlcikgPT4gdGhpcy51c2VyLm5leHQodXNlcikpO1xuICAgICAgICAgIH0pO1xuICAgICAgfSk7XG4gICAgfSk7XG4gIH1cblxuICBnZXRDdXJyZW50VXNlcigpOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNvbHZlci5nZXRQcm92aWRlcigpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgocHJvdmlkZXIpID0+IHtcbiAgICAgICAgaWYgKHRoaXMudXNlci5nZXRWYWx1ZSgpIHx8ICFwcm92aWRlci5pc1VzZXJMb2dnZWRJbigpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMudXNlcjtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwcm92aWRlci5nZXRBY2Nlc3NUb2tlbigpLnBpcGUoXG4gICAgICAgICAgbWVyZ2VNYXAoKCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuaHR0cFNlcnZpY2UuZ2V0KGVuZHBvaW50cy5tZW1iZXJzLm1lKS5waXBlKFxuICAgICAgICAgICAgICBtYXAoKHVzZXI6IFQpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVzZXIubmV4dCh1c2VyKTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB1c2VyO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGlzVXNlckxvZ2dlZEluKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnJlc29sdmVyXG4gICAgICAuZ2V0UHJvdmlkZXIoKVxuICAgICAgLnBpcGUobWFwKChwcm92aWRlcikgPT4gcHJvdmlkZXIuaXNVc2VyTG9nZ2VkSW4oKSkpO1xuICB9XG5cbiAgcHVibGljIGFic3RyYWN0IGlzQWRtaW4obWVtYmVyOiBUKTogYm9vbGVhbjtcbn1cbiJdfQ==
@@ -11,13 +11,14 @@ export class SignalRService {
11
11
  this.eventEmitters = {};
12
12
  }
13
13
  createConnection(token) {
14
+ var _a;
14
15
  this.hubConnection = new signalR.HubConnectionBuilder()
15
16
  .withUrl(this.appSettings.apiUrl + endpoints.signalr.eventsHub, {
16
17
  accessTokenFactory: () => {
17
18
  return token;
18
19
  },
19
20
  })
20
- .configureLogging(signalR.LogLevel.Warning)
21
+ .configureLogging((_a = this.appSettings.signalRLogLevel) !== null && _a !== void 0 ? _a : signalR.LogLevel.None)
21
22
  .build();
22
23
  this.hubConnection.onclose((err) => {
23
24
  if (err !== undefined) {
@@ -72,4 +73,4 @@ SignalRService.decorators = [
72
73
  SignalRService.ctorParameters = () => [
73
74
  { type: AppSettings }
74
75
  ];
75
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9zaWduYWxyL3NpZ25hbHIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEtBQUssT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFHekMsTUFBTSxPQUFPLGNBQWM7SUFLekIsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFKbEMsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBRWxDLGtCQUFhLEdBQStDLEVBQUUsQ0FBQztJQUV4QixDQUFDO0lBRXhDLGdCQUFnQixDQUFDLEtBQWE7UUFDcEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLE9BQU8sQ0FBQyxvQkFBb0IsRUFBRTthQUNwRCxPQUFPLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDOUQsa0JBQWtCLEVBQUUsR0FBRyxFQUFFO2dCQUN2QixPQUFPLEtBQUssQ0FBQztZQUNmLENBQUM7U0FDRixDQUFDO2FBQ0QsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUM7YUFDMUMsS0FBSyxFQUFFLENBQUM7UUFFWCxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUksRUFBRSxFQUFFO1lBQ2xDLElBQUksR0FBRyxLQUFLLFNBQVMsRUFBRTtnQkFDckIsSUFBSSxDQUFDLHVCQUF1QixHQUFHLEtBQUssQ0FBQztnQkFDckMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM3QjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVNLGVBQWUsQ0FBQyxLQUFhO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDakMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxhQUFhO2lCQUNmLEtBQUssRUFBRTtpQkFDUCxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNULElBQUksQ0FBQyx1QkFBdUIsR0FBRyxJQUFJLENBQUM7Z0JBQ3BDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFNBQVMsRUFBRSxFQUFFO29CQUNwRCxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTt3QkFDekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQzVDLENBQUMsQ0FBQyxDQUFDO2dCQUNMLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDO2lCQUNELEtBQUssQ0FBQyxHQUFHLEVBQUU7Z0JBQ1YsT0FBTyxDQUFDLElBQUksQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO2dCQUNqRSxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsRUFBRSxJQUFJLENBQUMsQ0FBQztZQUN0RCxDQUFDLENBQUMsQ0FBQztTQUNOO0lBQ0gsQ0FBQztJQUVNLFNBQVMsQ0FBQyxLQUFhO1FBQzVCLElBQUksSUFBSSxDQUFDLHVCQUF1QixFQUFFO1lBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLHVCQUF1QixHQUFHLEtBQUssQ0FBQztnQkFDckMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QixDQUFDLENBQUMsQ0FBQztTQUNKO0lBQ0gsQ0FBQztJQUVNLEVBQUUsQ0FBSSxTQUFpQjtRQUM1QixJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsRUFBRTtZQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksWUFBWSxFQUFLLENBQUM7WUFDdEQsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN0QixJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUUsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtvQkFDekMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzVDLENBQUMsQ0FBQyxDQUFDO2FBQ0o7U0FDRjtRQUVELE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQW9CLENBQUM7SUFDMUQsQ0FBQzs7OztZQWxFRixVQUFVLFNBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFOzs7WUFIekIsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgc2lnbmFsUiBmcm9tICdAbWljcm9zb2Z0L3NpZ25hbHInO1xuaW1wb3J0IHsgQXBwU2V0dGluZ3MgfSBmcm9tICcuLi8uLi9hbmd1bGFyL21vZGVscy9BcHBTZXR0aW5ncyc7XG5pbXBvcnQgeyBlbmRwb2ludHMgfSBmcm9tICcuLi9lbmRwb2ludHMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFNpZ25hbFJTZXJ2aWNlIHtcbiAgcHJvdGVjdGVkIGlzQ29ubmVjdGlvbkVzdGFibGlzaGVkID0gZmFsc2U7XG4gIHByb3RlY3RlZCBodWJDb25uZWN0aW9uOiBzaWduYWxSLkh1YkNvbm5lY3Rpb247XG4gIHByaXZhdGUgZXZlbnRFbWl0dGVyczogeyBbZXZlbnROYW1lOiBzdHJpbmddOiBFdmVudEVtaXR0ZXI8YW55PiB9ID0ge307XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhcHBTZXR0aW5nczogQXBwU2V0dGluZ3MpIHt9XG5cbiAgcHJpdmF0ZSBjcmVhdGVDb25uZWN0aW9uKHRva2VuOiBzdHJpbmcpIHtcbiAgICB0aGlzLmh1YkNvbm5lY3Rpb24gPSBuZXcgc2lnbmFsUi5IdWJDb25uZWN0aW9uQnVpbGRlcigpXG4gICAgICAud2l0aFVybCh0aGlzLmFwcFNldHRpbmdzLmFwaVVybCArIGVuZHBvaW50cy5zaWduYWxyLmV2ZW50c0h1Yiwge1xuICAgICAgICBhY2Nlc3NUb2tlbkZhY3Rvcnk6ICgpID0+IHtcbiAgICAgICAgICByZXR1cm4gdG9rZW47XG4gICAgICAgIH0sXG4gICAgICB9KVxuICAgICAgLmNvbmZpZ3VyZUxvZ2dpbmcoc2lnbmFsUi5Mb2dMZXZlbC5XYXJuaW5nKVxuICAgICAgLmJ1aWxkKCk7XG5cbiAgICB0aGlzLmh1YkNvbm5lY3Rpb24ub25jbG9zZSgoZXJyPykgPT4ge1xuICAgICAgaWYgKGVyciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zdGFydENvbm5lY3Rpb24odG9rZW4pO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHN0YXJ0Q29ubmVjdGlvbih0b2tlbjogc3RyaW5nKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLmlzQ29ubmVjdGlvbkVzdGFibGlzaGVkKSB7XG4gICAgICB0aGlzLmNyZWF0ZUNvbm5lY3Rpb24odG9rZW4pO1xuICAgICAgdGhpcy5odWJDb25uZWN0aW9uXG4gICAgICAgIC5zdGFydCgpXG4gICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmlzQ29ubmVjdGlvbkVzdGFibGlzaGVkID0gdHJ1ZTtcbiAgICAgICAgICBPYmplY3Qua2V5cyh0aGlzLmV2ZW50RW1pdHRlcnMpLmZvckVhY2goKGV2ZW50TmFtZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5odWJDb25uZWN0aW9uLm9uKGV2ZW50TmFtZSwgKG1vZGVsKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuZXZlbnRFbWl0dGVyc1tldmVudE5hbWVdLmVtaXQobW9kZWwpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pXG4gICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgY29uc29sZS53YXJuKCdFcnJvciB3aGlsZSBlc3RhYmxpc2hpbmcgY29ubmVjdGlvbiwgcmV0cnlpbmcuLi4nKTtcbiAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuc3RhcnRDb25uZWN0aW9uKHRva2VuKSwgNTAwMCk7XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyByZWNvbm5lY3QodG9rZW46IHN0cmluZykge1xuICAgIGlmICh0aGlzLmlzQ29ubmVjdGlvbkVzdGFibGlzaGVkKSB7XG4gICAgICB0aGlzLmh1YkNvbm5lY3Rpb24uc3RvcCgpLnRoZW4oKCkgPT4ge1xuICAgICAgICB0aGlzLmlzQ29ubmVjdGlvbkVzdGFibGlzaGVkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuc3RhcnRDb25uZWN0aW9uKHRva2VuKTtcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBvbjxUPihldmVudE5hbWU6IHN0cmluZyk6IEV2ZW50RW1pdHRlcjxUPiB7XG4gICAgaWYgKCF0aGlzLmV2ZW50RW1pdHRlcnNbZXZlbnROYW1lXSkge1xuICAgICAgdGhpcy5ldmVudEVtaXR0ZXJzW2V2ZW50TmFtZV0gPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG4gICAgICBpZiAodGhpcy5odWJDb25uZWN0aW9uKSB7XG4gICAgICAgIHRoaXMuaHViQ29ubmVjdGlvbi5vbihldmVudE5hbWUsIChtb2RlbCkgPT4ge1xuICAgICAgICAgIHRoaXMuZXZlbnRFbWl0dGVyc1tldmVudE5hbWVdLmVtaXQobW9kZWwpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5ldmVudEVtaXR0ZXJzW2V2ZW50TmFtZV0gYXMgRXZlbnRFbWl0dGVyPFQ+O1xuICB9XG59XG4iXX0=
76
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnbmFsci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9zZXJ2aWNlcy9zaWduYWxyL3NpZ25hbHIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEtBQUssT0FBTyxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUMvRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDOzs7QUFHekMsTUFBTSxPQUFPLGNBQWM7SUFLekIsWUFBb0IsV0FBd0I7UUFBeEIsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFKbEMsNEJBQXVCLEdBQUcsS0FBSyxDQUFDO1FBRWxDLGtCQUFhLEdBQStDLEVBQUUsQ0FBQztJQUV4QixDQUFDO0lBRXhDLGdCQUFnQixDQUFDLEtBQWE7O1FBQ3BDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxPQUFPLENBQUMsb0JBQW9CLEVBQUU7YUFDcEQsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFO1lBQzlELGtCQUFrQixFQUFFLEdBQUcsRUFBRTtnQkFDdkIsT0FBTyxLQUFLLENBQUM7WUFDZixDQUFDO1NBQ0YsQ0FBQzthQUNELGdCQUFnQixPQUNmLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxtQ0FBSSxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FDMUQ7YUFDQSxLQUFLLEVBQUUsQ0FBQztRQUVYLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUMsR0FBSSxFQUFFLEVBQUU7WUFDbEMsSUFBSSxHQUFHLEtBQUssU0FBUyxFQUFFO2dCQUNyQixJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO2FBQzdCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU0sZUFBZSxDQUFDLEtBQWE7UUFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyx1QkFBdUIsRUFBRTtZQUNqQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLGFBQWE7aUJBQ2YsS0FBSyxFQUFFO2lCQUNQLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ1QsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQztnQkFDcEMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7b0JBQ3BELElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO3dCQUN6QyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztvQkFDNUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ0wsQ0FBQyxDQUFDLENBQUM7WUFDTCxDQUFDLENBQUM7aUJBQ0QsS0FBSyxDQUFDLEdBQUcsRUFBRTtnQkFDVixPQUFPLENBQUMsSUFBSSxDQUFDLGtEQUFrRCxDQUFDLENBQUM7Z0JBQ2pFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ3RELENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDSCxDQUFDO0lBRU0sU0FBUyxDQUFDLEtBQWE7UUFDNUIsSUFBSSxJQUFJLENBQUMsdUJBQXVCLEVBQUU7WUFDaEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUNsQyxJQUFJLENBQUMsdUJBQXVCLEdBQUcsS0FBSyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsZUFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRU0sRUFBRSxDQUFJLFNBQWlCO1FBQzVCLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ2xDLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLEdBQUcsSUFBSSxZQUFZLEVBQUssQ0FBQztZQUN0RCxJQUFJLElBQUksQ0FBQyxhQUFhLEVBQUU7Z0JBQ3RCLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUN6QyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDNUMsQ0FBQyxDQUFDLENBQUM7YUFDSjtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBb0IsQ0FBQztJQUMxRCxDQUFDOzs7O1lBcEVGLFVBQVUsU0FBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OztZQUh6QixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBzaWduYWxSIGZyb20gJ0BtaWNyb3NvZnQvc2lnbmFscic7XG5pbXBvcnQgeyBBcHBTZXR0aW5ncyB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvbW9kZWxzL0FwcFNldHRpbmdzJztcbmltcG9ydCB7IGVuZHBvaW50cyB9IGZyb20gJy4uL2VuZHBvaW50cyc7XG5cbkBJbmplY3RhYmxlKHsgcHJvdmlkZWRJbjogJ3Jvb3QnIH0pXG5leHBvcnQgY2xhc3MgU2lnbmFsUlNlcnZpY2Uge1xuICBwcm90ZWN0ZWQgaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQgPSBmYWxzZTtcbiAgcHJvdGVjdGVkIGh1YkNvbm5lY3Rpb246IHNpZ25hbFIuSHViQ29ubmVjdGlvbjtcbiAgcHJpdmF0ZSBldmVudEVtaXR0ZXJzOiB7IFtldmVudE5hbWU6IHN0cmluZ106IEV2ZW50RW1pdHRlcjxhbnk+IH0gPSB7fTtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGFwcFNldHRpbmdzOiBBcHBTZXR0aW5ncykge31cblxuICBwcml2YXRlIGNyZWF0ZUNvbm5lY3Rpb24odG9rZW46IHN0cmluZykge1xuICAgIHRoaXMuaHViQ29ubmVjdGlvbiA9IG5ldyBzaWduYWxSLkh1YkNvbm5lY3Rpb25CdWlsZGVyKClcbiAgICAgIC53aXRoVXJsKHRoaXMuYXBwU2V0dGluZ3MuYXBpVXJsICsgZW5kcG9pbnRzLnNpZ25hbHIuZXZlbnRzSHViLCB7XG4gICAgICAgIGFjY2Vzc1Rva2VuRmFjdG9yeTogKCkgPT4ge1xuICAgICAgICAgIHJldHVybiB0b2tlbjtcbiAgICAgICAgfSxcbiAgICAgIH0pXG4gICAgICAuY29uZmlndXJlTG9nZ2luZyhcbiAgICAgICAgdGhpcy5hcHBTZXR0aW5ncy5zaWduYWxSTG9nTGV2ZWwgPz8gc2lnbmFsUi5Mb2dMZXZlbC5Ob25lXG4gICAgICApXG4gICAgICAuYnVpbGQoKTtcblxuICAgIHRoaXMuaHViQ29ubmVjdGlvbi5vbmNsb3NlKChlcnI/KSA9PiB7XG4gICAgICBpZiAoZXJyICE9PSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5pc0Nvbm5lY3Rpb25Fc3RhYmxpc2hlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLnN0YXJ0Q29ubmVjdGlvbih0b2tlbik7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgc3RhcnRDb25uZWN0aW9uKHRva2VuOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQpIHtcbiAgICAgIHRoaXMuY3JlYXRlQ29ubmVjdGlvbih0b2tlbik7XG4gICAgICB0aGlzLmh1YkNvbm5lY3Rpb25cbiAgICAgICAgLnN0YXJ0KClcbiAgICAgICAgLnRoZW4oKCkgPT4ge1xuICAgICAgICAgIHRoaXMuaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQgPSB0cnVlO1xuICAgICAgICAgIE9iamVjdC5rZXlzKHRoaXMuZXZlbnRFbWl0dGVycykuZm9yRWFjaCgoZXZlbnROYW1lKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmh1YkNvbm5lY3Rpb24ub24oZXZlbnROYW1lLCAobW9kZWwpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5ldmVudEVtaXR0ZXJzW2V2ZW50TmFtZV0uZW1pdChtb2RlbCk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSlcbiAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICBjb25zb2xlLndhcm4oJ0Vycm9yIHdoaWxlIGVzdGFibGlzaGluZyBjb25uZWN0aW9uLCByZXRyeWluZy4uLicpO1xuICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5zdGFydENvbm5lY3Rpb24odG9rZW4pLCA1MDAwKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHJlY29ubmVjdCh0b2tlbjogc3RyaW5nKSB7XG4gICAgaWYgKHRoaXMuaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQpIHtcbiAgICAgIHRoaXMuaHViQ29ubmVjdGlvbi5zdG9wKCkudGhlbigoKSA9PiB7XG4gICAgICAgIHRoaXMuaXNDb25uZWN0aW9uRXN0YWJsaXNoZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5zdGFydENvbm5lY3Rpb24odG9rZW4pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uPFQ+KGV2ZW50TmFtZTogc3RyaW5nKTogRXZlbnRFbWl0dGVyPFQ+IHtcbiAgICBpZiAoIXRoaXMuZXZlbnRFbWl0dGVyc1tldmVudE5hbWVdKSB7XG4gICAgICB0aGlzLmV2ZW50RW1pdHRlcnNbZXZlbnROYW1lXSA9IG5ldyBFdmVudEVtaXR0ZXI8VD4oKTtcbiAgICAgIGlmICh0aGlzLmh1YkNvbm5lY3Rpb24pIHtcbiAgICAgICAgdGhpcy5odWJDb25uZWN0aW9uLm9uKGV2ZW50TmFtZSwgKG1vZGVsKSA9PiB7XG4gICAgICAgICAgdGhpcy5ldmVudEVtaXR0ZXJzW2V2ZW50TmFtZV0uZW1pdChtb2RlbCk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmV2ZW50RW1pdHRlcnNbZXZlbnROYW1lXSBhcyBFdmVudEVtaXR0ZXI8VD47XG4gIH1cbn1cbiJdfQ==
@@ -2,6 +2,7 @@ import { ViewChild, Component, Input } from '@angular/core';
2
2
  import { ActivatedRoute } from '@angular/router';
3
3
  import { FormControl } from '@angular/forms';
4
4
  import { FormGroupWithErrors } from '../../angular/forms/extensions/FormGroupWithErrors';
5
+ import { finalize } from 'rxjs/operators';
5
6
  export class EntityEditFormComponent {
6
7
  constructor(route) {
7
8
  this.route = route;
@@ -24,6 +25,10 @@ export class EntityEditFormComponent {
24
25
  this.formGroup = formGroup;
25
26
  });
26
27
  }
28
+ else {
29
+ this.adapter.setForm(formGroup);
30
+ this.formGroup = formGroup;
31
+ }
27
32
  });
28
33
  }
29
34
  save() {
@@ -31,8 +36,8 @@ export class EntityEditFormComponent {
31
36
  this.adapter
32
37
  .getService()
33
38
  .save(this.adapter.getValue())
39
+ .pipe(finalize(() => (this.saveInProgress = false)))
34
40
  .subscribe((result) => {
35
- this.saveInProgress = false;
36
41
  this.adapter.onSaved(result);
37
42
  }, (error) => {
38
43
  this.formGroup.applyServerErrors(error.error, this.formGroup);
@@ -55,4 +60,4 @@ EntityEditFormComponent.propDecorators = {
55
60
  title: [{ type: Input }],
56
61
  adapter: [{ type: Input }]
57
62
  };
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWVkaXQtZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3dpZGdldHMvZW50aXR5LWVkaXQvZW50aXR5LWVkaXQtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFTekYsTUFBTSxPQUFPLHVCQUF1QjtJQVdsQyxZQUFvQixLQUFxQjtRQUFyQixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUN2QyxJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQXVCLEVBQUUsRUFBRTtZQUN0RCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztZQUN0QixNQUFNLFNBQVMsR0FBRyxJQUFJLG1CQUFtQixDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQzlDLElBQUksTUFBTSxDQUFDLEVBQUUsRUFBRTtnQkFDYixJQUFJLENBQUMsT0FBTztxQkFDVCxVQUFVLEVBQUU7cUJBQ1osR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7cUJBQ2QsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7b0JBQ25CLFNBQVMsQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUN0RCxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEVBQUU7d0JBQ3BDLFNBQVMsQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7cUJBQ3hEO29CQUVELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDO29CQUNoQyxJQUFJLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztnQkFDN0IsQ0FBQyxDQUFDLENBQUM7YUFDTjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELElBQUk7UUFDRixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQztRQUMzQixJQUFJLENBQUMsT0FBTzthQUNULFVBQVUsRUFBRTthQUNaLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDO2FBQzdCLFNBQVMsQ0FDUixDQUFDLE1BQXVCLEVBQUUsRUFBRTtZQUMxQixJQUFJLENBQUMsY0FBYyxHQUFHLEtBQUssQ0FBQztZQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUMvQixDQUFDLEVBQ0QsQ0FBQyxLQUF3QixFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUM5RCxJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FDRixDQUFDO0lBQ04sQ0FBQzs7O1lBeERGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsa0JBQWtCO2dCQUM1Qix1d0JBQWdEOzthQUVqRDs7O1lBWlEsY0FBYzs7OzRCQWVwQixTQUFTLFNBQUMsZ0JBQWdCO29CQUUxQixLQUFLO3NCQUVMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPbkluaXQsIFZpZXdDaGlsZCwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgSHR0cEVycm9yUmVzcG9uc2UgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IElGb3JtQWRhcHRlciB9IGZyb20gJy4vSUZvcm1BZGFwdGVyJztcbmltcG9ydCB7IEZvcm1Hcm91cFdpdGhFcnJvcnMgfSBmcm9tICcuLi8uLi9hbmd1bGFyL2Zvcm1zL2V4dGVuc2lvbnMvRm9ybUdyb3VwV2l0aEVycm9ycyc7XG5pbXBvcnQgeyBHZW5lcmFsRXJyb3JzQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYW5ndWxhci9mb3Jtcy93aWRnZXRzL2dlbmVyYWwtZXJyb3JzL2dlbmVyYWwtZXJyb3JzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJZGVudGlmaWVkTW9kZWwgfSBmcm9tICcuLi8uLi9hbmd1bGFyL21vZGVscy9JZGVudGlmaWVkTW9kZWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlbnRpdHktZWRpdC1mb3JtJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VudGl0eS1lZGl0LWZvcm0uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktZWRpdC1mb3JtLmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgRW50aXR5RWRpdEZvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBwdWJsaWMgZm9ybUdyb3VwOiBGb3JtR3JvdXBXaXRoRXJyb3JzO1xuICBAVmlld0NoaWxkKCdnZW5lcmFsX2Vycm9ycycpXG4gIGdlbmVyYWxFcnJvcnM6IEdlbmVyYWxFcnJvcnNDb21wb25lbnQ7XG4gIEBJbnB1dCgpXG4gIHRpdGxlOiBzdHJpbmc7XG4gIEBJbnB1dCgpXG4gIGFkYXB0ZXI6IElGb3JtQWRhcHRlcjxJZGVudGlmaWVkTW9kZWw+O1xuXG4gIHB1YmxpYyBzYXZlSW5Qcm9ncmVzczogYm9vbGVhbjtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgIHRoaXMuc2F2ZUluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMucm91dGUucGFyYW1zLnN1YnNjcmliZSgocGFyYW1zOiBJZGVudGlmaWVkTW9kZWwpID0+IHtcbiAgICAgIHRoaXMuZm9ybUdyb3VwID0gbnVsbDtcbiAgICAgIGNvbnN0IGZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXBXaXRoRXJyb3JzKHt9KTtcbiAgICAgIGlmIChwYXJhbXMuaWQpIHtcbiAgICAgICAgdGhpcy5hZGFwdGVyXG4gICAgICAgICAgLmdldFNlcnZpY2UoKVxuICAgICAgICAgIC5nZXQocGFyYW1zLmlkKVxuICAgICAgICAgIC5zdWJzY3JpYmUoKG1vZGVsKSA9PiB7XG4gICAgICAgICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbCgnaWQnLCBuZXcgRm9ybUNvbnRyb2wobW9kZWwuaWQpKTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IG9mIE9iamVjdC5rZXlzKG1vZGVsKSkge1xuICAgICAgICAgICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbChrZXksIG5ldyBGb3JtQ29udHJvbChtb2RlbFtrZXldKSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuYWRhcHRlci5zZXRGb3JtKGZvcm1Hcm91cCk7XG4gICAgICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IGZvcm1Hcm91cDtcbiAgICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgdGhpcy5hZGFwdGVyXG4gICAgICAuZ2V0U2VydmljZSgpXG4gICAgICAuc2F2ZSh0aGlzLmFkYXB0ZXIuZ2V0VmFsdWUoKSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChyZXN1bHQ6IElkZW50aWZpZWRNb2RlbCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2F2ZUluUHJvZ3Jlc3MgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmFkYXB0ZXIub25TYXZlZChyZXN1bHQpO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5mb3JtR3JvdXAuYXBwbHlTZXJ2ZXJFcnJvcnMoZXJyb3IuZXJyb3IsIHRoaXMuZm9ybUdyb3VwKTtcbiAgICAgICAgICB0aGlzLmdlbmVyYWxFcnJvcnMuc2V0RXJyb3JzKHRoaXMuZm9ybUdyb3VwLmdlbmVyYWxFcnJvcnMpO1xuICAgICAgICB9XG4gICAgICApO1xuICB9XG59XG4iXX0=
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWVkaXQtZm9ybS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9rZW5kby9zcmMvbGliL3dpZGdldHMvZW50aXR5LWVkaXQvZW50aXR5LWVkaXQtZm9ybS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFVLFNBQVMsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3BFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFHekYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBTzFDLE1BQU0sT0FBTyx1QkFBdUI7SUFXbEMsWUFBb0IsS0FBcUI7UUFBckIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDdkMsSUFBSSxDQUFDLGNBQWMsR0FBRyxLQUFLLENBQUM7SUFDOUIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUF1QixFQUFFLEVBQUU7WUFDdEQsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7WUFDdEIsTUFBTSxTQUFTLEdBQUcsSUFBSSxtQkFBbUIsQ0FBQyxFQUFFLENBQUMsQ0FBQztZQUM5QyxJQUFJLE1BQU0sQ0FBQyxFQUFFLEVBQUU7Z0JBQ2IsSUFBSSxDQUFDLE9BQU87cUJBQ1QsVUFBVSxFQUFFO3FCQUNaLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO3FCQUNkLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO29CQUNuQixTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDdEQsS0FBSyxNQUFNLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFO3dCQUNwQyxTQUFTLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO3FCQUN4RDtvQkFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztvQkFDaEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7Z0JBQzdCLENBQUMsQ0FBQyxDQUFDO2FBQ047aUJBQU07Z0JBQ0wsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO2FBQzVCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsSUFBSTtRQUNGLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDO1FBQzNCLElBQUksQ0FBQyxPQUFPO2FBQ1QsVUFBVSxFQUFFO2FBQ1osSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDN0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxjQUFjLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQzthQUNuRCxTQUFTLENBQ1IsQ0FBQyxNQUF1QixFQUFFLEVBQUU7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDL0IsQ0FBQyxFQUNELENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM3RCxDQUFDLENBQ0YsQ0FBQztJQUNOLENBQUM7OztZQTNERixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtnQkFDNUIsdXdCQUFnRDs7YUFFakQ7OztZQWJRLGNBQWM7Ozs0QkFnQnBCLFNBQVMsU0FBQyxnQkFBZ0I7b0JBRTFCLEtBQUs7c0JBRUwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE9uSW5pdCwgVmlld0NoaWxkLCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEZvcm1Db250cm9sIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgSUZvcm1BZGFwdGVyIH0gZnJvbSAnLi9JRm9ybUFkYXB0ZXInO1xuaW1wb3J0IHsgRm9ybUdyb3VwV2l0aEVycm9ycyB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvZm9ybXMvZXh0ZW5zaW9ucy9Gb3JtR3JvdXBXaXRoRXJyb3JzJztcbmltcG9ydCB7IEdlbmVyYWxFcnJvcnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hbmd1bGFyL2Zvcm1zL3dpZGdldHMvZ2VuZXJhbC1lcnJvcnMvZ2VuZXJhbC1lcnJvcnMuY29tcG9uZW50JztcbmltcG9ydCB7IElkZW50aWZpZWRNb2RlbCB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvbW9kZWxzL0lkZW50aWZpZWRNb2RlbCc7XG5pbXBvcnQgeyBmaW5hbGl6ZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50aXR5LWVkaXQtZm9ybScsXG4gIHRlbXBsYXRlVXJsOiAnLi9lbnRpdHktZWRpdC1mb3JtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZW50aXR5LWVkaXQtZm9ybS5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eUVkaXRGb3JtQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgcHVibGljIGZvcm1Hcm91cDogRm9ybUdyb3VwV2l0aEVycm9ycztcbiAgQFZpZXdDaGlsZCgnZ2VuZXJhbF9lcnJvcnMnKVxuICBnZW5lcmFsRXJyb3JzOiBHZW5lcmFsRXJyb3JzQ29tcG9uZW50O1xuICBASW5wdXQoKVxuICB0aXRsZTogc3RyaW5nO1xuICBASW5wdXQoKVxuICBhZGFwdGVyOiBJRm9ybUFkYXB0ZXI8SWRlbnRpZmllZE1vZGVsPjtcblxuICBwdWJsaWMgc2F2ZUluUHJvZ3Jlc3M6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUpIHtcbiAgICB0aGlzLnNhdmVJblByb2dyZXNzID0gZmFsc2U7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLnJvdXRlLnBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogSWRlbnRpZmllZE1vZGVsKSA9PiB7XG4gICAgICB0aGlzLmZvcm1Hcm91cCA9IG51bGw7XG4gICAgICBjb25zdCBmb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwV2l0aEVycm9ycyh7fSk7XG4gICAgICBpZiAocGFyYW1zLmlkKSB7XG4gICAgICAgIHRoaXMuYWRhcHRlclxuICAgICAgICAgIC5nZXRTZXJ2aWNlKClcbiAgICAgICAgICAuZ2V0KHBhcmFtcy5pZClcbiAgICAgICAgICAuc3Vic2NyaWJlKChtb2RlbCkgPT4ge1xuICAgICAgICAgICAgZm9ybUdyb3VwLmFkZENvbnRyb2woJ2lkJywgbmV3IEZvcm1Db250cm9sKG1vZGVsLmlkKSk7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhtb2RlbCkpIHtcbiAgICAgICAgICAgICAgZm9ybUdyb3VwLmFkZENvbnRyb2woa2V5LCBuZXcgRm9ybUNvbnRyb2wobW9kZWxba2V5XSkpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0Rm9ybShmb3JtR3JvdXApO1xuICAgICAgICAgICAgdGhpcy5mb3JtR3JvdXAgPSBmb3JtR3JvdXA7XG4gICAgICAgICAgfSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmFkYXB0ZXIuc2V0Rm9ybShmb3JtR3JvdXApO1xuICAgICAgICB0aGlzLmZvcm1Hcm91cCA9IGZvcm1Hcm91cDtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIHNhdmUoKTogdm9pZCB7XG4gICAgdGhpcy5zYXZlSW5Qcm9ncmVzcyA9IHRydWU7XG4gICAgdGhpcy5hZGFwdGVyXG4gICAgICAuZ2V0U2VydmljZSgpXG4gICAgICAuc2F2ZSh0aGlzLmFkYXB0ZXIuZ2V0VmFsdWUoKSlcbiAgICAgIC5waXBlKGZpbmFsaXplKCgpID0+ICh0aGlzLnNhdmVJblByb2dyZXNzID0gZmFsc2UpKSlcbiAgICAgIC5zdWJzY3JpYmUoXG4gICAgICAgIChyZXN1bHQ6IElkZW50aWZpZWRNb2RlbCkgPT4ge1xuICAgICAgICAgIHRoaXMuYWRhcHRlci5vblNhdmVkKHJlc3VsdCk7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICB0aGlzLmZvcm1Hcm91cC5hcHBseVNlcnZlckVycm9ycyhlcnJvci5lcnJvciwgdGhpcy5mb3JtR3JvdXApO1xuICAgICAgICAgIHRoaXMuZ2VuZXJhbEVycm9ycy5zZXRFcnJvcnModGhpcy5mb3JtR3JvdXAuZ2VuZXJhbEVycm9ycyk7XG4gICAgICAgIH1cbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -1,4 +1,3 @@
1
- import { __awaiter } from "tslib";
2
1
  import { Component, Input, ElementRef } from '@angular/core';
3
2
  import { ControlContainer, FormGroupDirective, } from '@angular/forms';
4
3
  import { FieldComponent } from '../../../angular/forms/widgets/field/field.component';
@@ -13,15 +12,13 @@ export class FieldMultiSelectComponent extends FieldComponent {
13
12
  return this.parent.form.get(this.fieldName);
14
13
  }
15
14
  ngOnChanges() {
16
- return __awaiter(this, void 0, void 0, function* () {
17
- yield this.getData();
15
+ this.getData().subscribe((data) => {
16
+ this.data = data.data;
18
17
  this.control.setValue(this.control.value.filter((x) => this.data.filter((d) => d.id === x).length));
19
18
  });
20
19
  }
21
20
  getData() {
22
- this.service
23
- .getPage(this.filter ? { filter: this.filter } : {})
24
- .subscribe((data) => (this.data = data.data));
21
+ return this.service.getPage(this.filter ? { filter: this.filter } : {});
25
22
  }
26
23
  }
27
24
  FieldMultiSelectComponent.decorators = [
@@ -43,4 +40,4 @@ FieldMultiSelectComponent.propDecorators = {
43
40
  rebind: [{ type: Input }],
44
41
  filter: [{ type: Input }]
45
42
  };
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtbXVsdGlzZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1lZGl0L2ZpZWxkLW11bHRpc2VsZWN0L2ZpZWxkLW11bHRpc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsa0JBQWtCLEdBRW5CLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBYXRGLE1BQU0sT0FBTyx5QkFDWCxTQUFRLGNBQXdCO0lBY2hDLFlBQW1CLE1BQTBCLEVBQVMsSUFBZ0I7UUFDcEUsS0FBSyxDQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFEUCxXQUFNLEdBQU4sTUFBTSxDQUFvQjtRQUFTLFNBQUksR0FBSixJQUFJLENBQVk7UUFMdEUsU0FBSSxHQUFzQixFQUFFLENBQUM7SUFPN0IsQ0FBQztJQU5ELElBQUksT0FBTztRQUNULE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5QyxDQUFDO0lBTUssV0FBVzs7WUFDZixNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN2QixDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUMxRCxDQUNGLENBQUM7UUFDSixDQUFDO0tBQUE7SUFFTyxPQUFPO1FBQ2IsSUFBSSxDQUFDLE9BQU87YUFDVCxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7YUFDbkQsU0FBUyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQzs7O1lBeENGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsbUJBQW1CO2dCQUM3Qix3MEJBQWlEO2dCQUVqRCxhQUFhLEVBQUU7b0JBQ2IsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLGtCQUFrQixFQUFFO2lCQUMvRDs7YUFDRjs7O1lBaEJDLGtCQUFrQjtZQUhPLFVBQVU7OztzQkF3QmxDLEtBQUs7cUJBRUwsS0FBSztxQkFFTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRWxlbWVudFJlZiwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBDb250cm9sQ29udGFpbmVyLFxuICBGb3JtR3JvdXBEaXJlY3RpdmUsXG4gIEFic3RyYWN0Q29udHJvbCxcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvciB9IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IEZpZWxkQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vYW5ndWxhci9mb3Jtcy93aWRnZXRzL2ZpZWxkL2ZpZWxkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBJZGVudGlmaWVkTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9hbmd1bGFyL21vZGVscy9JZGVudGlmaWVkTW9kZWwnO1xuaW1wb3J0IHsgTmFtZWRNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2FuZ3VsYXIvbW9kZWxzL05hbWVkTW9kZWwnO1xuaW1wb3J0IHsgSUVudGl0eVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9zZXJ2aWNlcy9JRW50aXR5U2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2ZpZWxkLW11bHRpc2VsZWN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2ZpZWxkLW11bHRpc2VsZWN0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vZmllbGQtbXVsdGlzZWxlY3QuY29tcG9uZW50LmNzcyddLFxuICB2aWV3UHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBDb250cm9sQ29udGFpbmVyLCB1c2VFeGlzdGluZzogRm9ybUdyb3VwRGlyZWN0aXZlIH0sXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEZpZWxkTXVsdGlTZWxlY3RDb21wb25lbnRcbiAgZXh0ZW5kcyBGaWVsZENvbXBvbmVudDxzdHJpbmdbXT5cbiAgaW1wbGVtZW50cyBPbkNoYW5nZXNcbntcbiAgQElucHV0KClcbiAgc2VydmljZTogSUVudGl0eVNlcnZpY2U8TmFtZWRNb2RlbD47XG4gIEBJbnB1dCgpXG4gIHJlYmluZDogc3RyaW5nO1xuICBASW5wdXQoKVxuICBmaWx0ZXI/OiBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yO1xuICBkYXRhOiBJZGVudGlmaWVkTW9kZWxbXSA9IFtdO1xuICBnZXQgY29udHJvbCgpOiBBYnN0cmFjdENvbnRyb2wge1xuICAgIHJldHVybiB0aGlzLnBhcmVudC5mb3JtLmdldCh0aGlzLmZpZWxkTmFtZSk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgcGFyZW50OiBGb3JtR3JvdXBEaXJlY3RpdmUsIHB1YmxpYyBlcmVmOiBFbGVtZW50UmVmKSB7XG4gICAgc3VwZXIocGFyZW50LCBlcmVmLCBbXSk7XG4gIH1cblxuICBhc3luYyBuZ09uQ2hhbmdlcygpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmdldERhdGEoKTtcbiAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUoXG4gICAgICB0aGlzLmNvbnRyb2wudmFsdWUuZmlsdGVyKFxuICAgICAgICAoeDogc3RyaW5nKSA9PiB0aGlzLmRhdGEuZmlsdGVyKChkKSA9PiBkLmlkID09PSB4KS5sZW5ndGhcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXREYXRhKCkge1xuICAgIHRoaXMuc2VydmljZVxuICAgICAgLmdldFBhZ2UodGhpcy5maWx0ZXIgPyB7IGZpbHRlcjogdGhpcy5maWx0ZXIgfSA6IHt9KVxuICAgICAgLnN1YnNjcmliZSgoZGF0YSkgPT4gKHRoaXMuZGF0YSA9IGRhdGEuZGF0YSkpO1xuICB9XG59XG4iXX0=
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmllbGQtbXVsdGlzZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1lZGl0L2ZpZWxkLW11bHRpc2VsZWN0L2ZpZWxkLW11bHRpc2VsZWN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixrQkFBa0IsR0FFbkIsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFhdEYsTUFBTSxPQUFPLHlCQUNYLFNBQVEsY0FBd0I7SUFjaEMsWUFBbUIsTUFBMEIsRUFBUyxJQUFnQjtRQUNwRSxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztRQURQLFdBQU0sR0FBTixNQUFNLENBQW9CO1FBQVMsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUx0RSxTQUFJLEdBQXNCLEVBQUUsQ0FBQztJQU83QixDQUFDO0lBTkQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFNRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2hDLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztZQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FDbkIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUN2QixDQUFDLENBQVMsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUMxRCxDQUNGLENBQUM7UUFDSixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxPQUFPO1FBQ2IsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQzFFLENBQUM7OztZQXhDRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLG1CQUFtQjtnQkFDN0IsdzBCQUFpRDtnQkFFakQsYUFBYSxFQUFFO29CQUNiLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFdBQVcsRUFBRSxrQkFBa0IsRUFBRTtpQkFDL0Q7O2FBQ0Y7OztZQWhCQyxrQkFBa0I7WUFITyxVQUFVOzs7c0JBd0JsQyxLQUFLO3FCQUVMLEtBQUs7cUJBRUwsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIEVsZW1lbnRSZWYsIE9uQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQ29udHJvbENvbnRhaW5lcixcbiAgRm9ybUdyb3VwRGlyZWN0aXZlLFxuICBBYnN0cmFjdENvbnRyb2wsXG59IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IgfSBmcm9tICdAcHJvZ3Jlc3Mva2VuZG8tZGF0YS1xdWVyeSc7XG5pbXBvcnQgeyBGaWVsZENvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2FuZ3VsYXIvZm9ybXMvd2lkZ2V0cy9maWVsZC9maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgSWRlbnRpZmllZE1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vYW5ndWxhci9tb2RlbHMvSWRlbnRpZmllZE1vZGVsJztcbmltcG9ydCB7IE5hbWVkTW9kZWwgfSBmcm9tICcuLi8uLi8uLi9hbmd1bGFyL21vZGVscy9OYW1lZE1vZGVsJztcbmltcG9ydCB7IElFbnRpdHlTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZXMvSUVudGl0eVNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdmaWVsZC1tdWx0aXNlbGVjdCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9maWVsZC1tdWx0aXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2ZpZWxkLW11bHRpc2VsZWN0LmNvbXBvbmVudC5jc3MnXSxcbiAgdmlld1Byb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQ29udHJvbENvbnRhaW5lciwgdXNlRXhpc3Rpbmc6IEZvcm1Hcm91cERpcmVjdGl2ZSB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBGaWVsZE11bHRpU2VsZWN0Q29tcG9uZW50XG4gIGV4dGVuZHMgRmllbGRDb21wb25lbnQ8c3RyaW5nW10+XG4gIGltcGxlbWVudHMgT25DaGFuZ2VzXG57XG4gIEBJbnB1dCgpXG4gIHNlcnZpY2U6IElFbnRpdHlTZXJ2aWNlPE5hbWVkTW9kZWw+O1xuICBASW5wdXQoKVxuICByZWJpbmQ6IHN0cmluZztcbiAgQElucHV0KClcbiAgZmlsdGVyPzogQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcjtcbiAgZGF0YTogSWRlbnRpZmllZE1vZGVsW10gPSBbXTtcbiAgZ2V0IGNvbnRyb2woKTogQWJzdHJhY3RDb250cm9sIHtcbiAgICByZXR1cm4gdGhpcy5wYXJlbnQuZm9ybS5nZXQodGhpcy5maWVsZE5hbWUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIHBhcmVudDogRm9ybUdyb3VwRGlyZWN0aXZlLCBwdWJsaWMgZXJlZjogRWxlbWVudFJlZikge1xuICAgIHN1cGVyKHBhcmVudCwgZXJlZiwgW10pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5nZXREYXRhKCkuc3Vic2NyaWJlKChkYXRhKSA9PiB7XG4gICAgICB0aGlzLmRhdGEgPSBkYXRhLmRhdGE7XG4gICAgICB0aGlzLmNvbnRyb2wuc2V0VmFsdWUoXG4gICAgICAgIHRoaXMuY29udHJvbC52YWx1ZS5maWx0ZXIoXG4gICAgICAgICAgKHg6IHN0cmluZykgPT4gdGhpcy5kYXRhLmZpbHRlcigoZCkgPT4gZC5pZCA9PT0geCkubGVuZ3RoXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldERhdGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5nZXRQYWdlKHRoaXMuZmlsdGVyID8geyBmaWx0ZXI6IHRoaXMuZmlsdGVyIH0gOiB7fSk7XG4gIH1cbn1cbiJdfQ==