taxtank-core 0.33.69 → 0.33.70

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.
@@ -6,6 +6,7 @@ import { map } from 'rxjs/operators';
6
6
  import { plainToClass } from 'class-transformer';
7
7
  import { BankAccountStatusEnum } from '../../../../db/Enums';
8
8
  import { UserRolesEnum } from 'taxtank-core/common';
9
+ import { UserEventTypeTypeEnum } from '../../../../db/Enums/user-event-type-type.enum';
9
10
  import * as i0 from "@angular/core";
10
11
  import * as i1 from "@angular/common/http";
11
12
  import * as i2 from "../../../event";
@@ -34,10 +35,12 @@ export class BankAccountService extends RestService {
34
35
  */
35
36
  listenEvents() {
36
37
  this.listenToEventDispatcherChanges();
38
+ // @TODO why?
37
39
  this.listenCSE(BankTransaction, this.refreshCache, ['post', 'delete']);
38
40
  this.listenCSE(PropertyShare, this.refreshCache, ['put']);
39
41
  this.listenCSE(BankConnection, this.refreshCache, ['post']);
40
- this.listenConnections();
42
+ this.listenNotifications();
43
+ // this.listenConnections();
41
44
  }
42
45
  /**
43
46
  * Update bank account current balance
@@ -71,6 +74,19 @@ export class BankAccountService extends RestService {
71
74
  this.refreshCache();
72
75
  });
73
76
  }
77
+ listenNotifications() {
78
+ this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
79
+ const events = [
80
+ UserEventTypeTypeEnum.BASIQ_NEW_ACCOUNTS,
81
+ UserEventTypeTypeEnum.BASIQ_FIRST_IMPORT_COMPLETE,
82
+ UserEventTypeTypeEnum.BASIQ_AUTHORIZATION_FAIL,
83
+ ];
84
+ if (!notification.isRead && events.includes(notification.eventType)) {
85
+ // @TODO TT-3826 move to unified mercure event
86
+ this.refreshCache();
87
+ }
88
+ });
89
+ }
74
90
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BankAccountService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: i2.SseService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable }); }
75
91
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BankAccountService, providedIn: 'root' }); }
76
92
  }
@@ -83,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
83
99
  type: Inject,
84
100
  args: ['environment']
85
101
  }] }] });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9iYW5rL2JhbmstYWNjb3VudC9iYW5rLWFjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLGNBQWMsRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbkgsT0FBTyxFQUFjLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUVyRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBR2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQzs7OztBQUVwRDs7R0FFRztBQUlILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxXQUFnRTtJQU90RyxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUM5QyxVQUFzQixFQUNDLFdBQWdCO1FBRWpELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUxULFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUM5QyxlQUFVLEdBQVYsVUFBVSxDQUFZO1FBQ0MsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFWbkQsZ0JBQVcsR0FBRyxlQUFlLENBQUM7UUFDOUIsZUFBVSxHQUF1QixXQUFXLENBQUM7UUFDN0Msb0JBQWUsR0FBaUMscUJBQXFCLENBQUM7UUFDdEUsb0JBQWUsR0FBaUIsQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUM5RSxVQUFLLEdBQUcsQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLGFBQWEsQ0FBQyxhQUFhLEVBQUUsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBU3RGLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUscUJBQXFCLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDNUQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWTtRQUNWLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO1FBQ3RDLElBQUksQ0FBQyxTQUFTLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUMxRCxJQUFJLENBQUMsU0FBUyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM1RCxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztJQUMzQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsb0JBQW9CLENBQUMsV0FBd0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLElBQUksV0FBVyxDQUFDLEVBQUUsVUFBVSxFQUFFLFdBQVcsQ0FBQzthQUMxRSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBZ0IsRUFBRSxFQUFFO1lBQ3ZCLE1BQU0sa0JBQWtCLEdBQWdCLFlBQVksQ0FBQyxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7WUFDNUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7WUFFakQsT0FBTyxrQkFBa0IsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0ssOEJBQThCO1FBQ3BDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLENBQUM7WUFDN0IsZ0JBQWdCLENBQUMsbUJBQW1CO1lBQ3BDLGdCQUFnQixDQUFDLHVCQUF1QjtTQUN6QyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNoQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0ssaUJBQWlCO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDLGlCQUFpQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBOEIsRUFBUSxFQUFFO1lBQ3ZGLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBcEVVLGtCQUFrQiw0R0FXbkIsYUFBYTttSEFYWixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBWUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCBhcyBCYW5rQWNjb3VudEJhc2UsIEJhbmtDb25uZWN0aW9uIGFzIEJhbmtDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscyc7XG5pbXBvcnQgeyBBcHBFdmVudFR5cGVFbnVtLCBCYW5rQWNjb3VudCwgQmFua0Nvbm5lY3Rpb24sIEJhbmtUcmFuc2FjdGlvbiwgUHJvcGVydHlTaGFyZSB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBSZXN0TWV0aG9kLCBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3Jlc3QnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIFNzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9ldmVudCc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmFua0FjY291bnRTdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVXNlclJvbGVzRW51bSB9IGZyb20gJ3RheHRhbmstY29yZS9jb21tb24nO1xuXG4vKipcbiAqIFNlcnZpY2UgdGhhdCBoYW5kbGluZyB1c2VyJ3MgYmFuayBhY2NvdW50cyBsb2dpY1xuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudFNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxCYW5rQWNjb3VudEJhc2UsIEJhbmtBY2NvdW50LCBCYW5rQWNjb3VudENvbGxlY3Rpb24+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBlbmRwb2ludFVyaSA9ICdiYW5rLWFjY291bnRzJztcbiAgbW9kZWxDbGFzczogdHlwZW9mIEJhbmtBY2NvdW50ID0gQmFua0FjY291bnQ7XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIEJhbmtBY2NvdW50Q29sbGVjdGlvbiA9IEJhbmtBY2NvdW50Q29sbGVjdGlvbjtcbiAgZGlzYWJsZWRNZXRob2RzOiBSZXN0TWV0aG9kW10gPSBbJ3Bvc3QnLCAncHV0QmF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZUJhdGNoJ107XG4gIHJvbGVzID0gW1VzZXJSb2xlc0VudW0uV09SS19UQU5LLCBVc2VyUm9sZXNFbnVtLlBST1BFUlRZX1RBTkssIFVzZXJSb2xlc0VudW0uU09MRV9UQU5LXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCxcbiAgICBwcm90ZWN0ZWQgZXZlbnREaXNwYXRjaGVyU2VydmljZTogRXZlbnREaXNwYXRjaGVyU2VydmljZSxcbiAgICBwcm90ZWN0ZWQgc3NlU2VydmljZTogU3NlU2VydmljZSxcbiAgICBASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55LFxuICApIHtcbiAgICBzdXBlcihlbnZpcm9ubWVudCk7XG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIGdldEFjdGl2ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5nZXRCeSgnc3RhdHVzJywgQmFua0FjY291bnRTdGF0dXNFbnVtLkFDVElWRSk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIHN5c3RlbSBub3RpZmljYXRpb25zIGFuZCB1cGRhdGUgY2FjaGUgd2hlbiBnb3QgYmFzaXEgbm90aWZpY2F0aW9uIHJlY2VpdmVkXG4gICAqL1xuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5Ub0V2ZW50RGlzcGF0Y2hlckNoYW5nZXMoKTtcbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rVHJhbnNhY3Rpb24sIHRoaXMucmVmcmVzaENhY2hlLCBbJ3Bvc3QnLCAnZGVsZXRlJ10pO1xuICAgIHRoaXMubGlzdGVuQ1NFKFByb3BlcnR5U2hhcmUsIHRoaXMucmVmcmVzaENhY2hlLCBbJ3B1dCddKTtcbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rQ29ubmVjdGlvbiwgdGhpcy5yZWZyZXNoQ2FjaGUsIFsncG9zdCddKTtcbiAgICB0aGlzLmxpc3RlbkNvbm5lY3Rpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGJhbmsgYWNjb3VudCBjdXJyZW50IGJhbGFuY2VcbiAgICogQFRPRE8gVmlrOiByZWZhY3RvciBvbmNlIGJhY2tlbmQgdXBkYXRlZCAoc2hvdWxkIGJlIHNlcGFyYXRlZCBlbmRwb2ludCBmb3IgQmFua0FjY291bnRCYWxhbmNlIGVudGl0eSlcbiAgICovXG4gIHVwZGF0ZUN1cnJlbnRCYWxhbmNlKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IE9ic2VydmFibGU8QmFua0FjY291bnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmFwaVVybH0vJHtiYW5rQWNjb3VudC5pZH0vYmFsYW5jZWAsIGJhbmtBY2NvdW50KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRCYW5rQWNjb3VudDogQmFua0FjY291bnQgPSBwbGFpblRvQ2xhc3MoQmFua0FjY291bnQsIHJlc3BvbnNlKTtcbiAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKFt1cGRhdGVkQmFua0FjY291bnRdLCAncHV0Jyk7XG5cbiAgICAgICAgICByZXR1cm4gdXBkYXRlZEJhbmtBY2NvdW50O1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudHNcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVG9FdmVudERpc3BhdGNoZXJDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihbXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLkxPQU5fUEFZT1VUX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLkJBTktfVFJBTlNBQ1RJT05TX0FEREVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaENhY2hlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gcmVtb3ZlIHdoZW4gVFQtMzgyNiBpcyByZWFkeVxuICAgKiBtYW51YWxDb25uZWN0aW9uIG1vdmVkIHRvIGJhc2lxLCBvbGQgbWFudWFsIGJhbmtBY2NvdW50cyBjbG9zZWQgdG8gbGV0IHVzZXIgYWRkIGF1dG9tYXRlZCBiYW5rQWNjb3VudHMgKGJlY2F1c2UgdGhlcmUgaXMgbm8gcmVsaWFibGUgd2F5IHRvIG1lcmdlKVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Db25uZWN0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLnNzZVNlcnZpY2Uub24oYGJhbmtDb25uZWN0aW9uc2ApLnN1YnNjcmliZSgoY29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb25CYXNlKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLnJlZnJlc2hDYWNoZSgpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9iYW5rL2JhbmstYWNjb3VudC9iYW5rLWFjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLFdBQVcsRUFDWCxjQUFjLEVBQ2QsZUFBZSxFQUVmLGFBQWEsRUFDZCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBYyxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFckQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7Ozs7QUFFdkY7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsV0FBZ0U7SUFPdEcsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDOUMsVUFBc0IsRUFDQyxXQUFnQjtRQUVqRCxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFMVCxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDOUMsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUNDLGdCQUFXLEdBQVgsV0FBVyxDQUFLO1FBVm5ELGdCQUFX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QUMsWUFBWSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckZVLGtCQUFrQiw0R0FXbkIsYUFBYTttSEFYWixrQkFBa0IsY0FGakIsTUFBTTs7NEZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBWUksTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCBhcyBCYW5rQWNjb3VudEJhc2UsIEJhbmtDb25uZWN0aW9uIGFzIEJhbmtDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscyc7XG5pbXBvcnQge1xuICBBcHBFdmVudFR5cGVFbnVtLFxuICBCYW5rQWNjb3VudCxcbiAgQmFua0Nvbm5lY3Rpb24sXG4gIEJhbmtUcmFuc2FjdGlvbixcbiAgTm90aWZpY2F0aW9uLFxuICBQcm9wZXJ0eVNoYXJlXG59IGZyb20gJy4uLy4uLy4uLy4uL21vZGVscyc7XG5pbXBvcnQgeyBSZXN0TWV0aG9kLCBSZXN0U2VydmljZSB9IGZyb20gJy4uLy4uL3Jlc3QnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEJhbmtBY2NvdW50Q29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsIFNzZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9ldmVudCc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQmFua0FjY291bnRTdGF0dXNFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgVXNlclJvbGVzRW51bSB9IGZyb20gJ3RheHRhbmstY29yZS9jb21tb24nO1xuaW1wb3J0IHsgVXNlckV2ZW50VHlwZVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMvdXNlci1ldmVudC10eXBlLXR5cGUuZW51bSc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGhhbmRsaW5nIHVzZXIncyBiYW5rIGFjY291bnRzIGxvZ2ljXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50U2VydmljZSBleHRlbmRzIFJlc3RTZXJ2aWNlPEJhbmtBY2NvdW50QmFzZSwgQmFua0FjY291bnQsIEJhbmtBY2NvdW50Q29sbGVjdGlvbj4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIGVuZHBvaW50VXJpID0gJ2JhbmstYWNjb3VudHMnO1xuICBtb2RlbENsYXNzOiB0eXBlb2YgQmFua0FjY291bnQgPSBCYW5rQWNjb3VudDtcbiAgY29sbGVjdGlvbkNsYXNzOiB0eXBlb2YgQmFua0FjY291bnRDb2xsZWN0aW9uID0gQmFua0FjY291bnRDb2xsZWN0aW9uO1xuICBkaXNhYmxlZE1ldGhvZHM6IFJlc3RNZXRob2RbXSA9IFsncG9zdCcsICdwdXRCYXRjaCcsICdkZWxldGUnLCAnZGVsZXRlQmF0Y2gnXTtcbiAgcm9sZXMgPSBbVXNlclJvbGVzRW51bS5XT1JLX1RBTkssIFVzZXJSb2xlc0VudW0uUFJPUEVSVFlfVEFOSywgVXNlclJvbGVzRW51bS5TT0xFX1RBTktdO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIHByb3RlY3RlZCBzc2VTZXJ2aWNlOiBTc2VTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnksXG4gICkge1xuICAgIHN1cGVyKGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgZ2V0QWN0aXZlKCkge1xuICAgIHJldHVybiB0aGlzLmdldEJ5KCdzdGF0dXMnLCBCYW5rQWNjb3VudFN0YXR1c0VudW0uQUNUSVZFKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gc3lzdGVtIG5vdGlmaWNhdGlvbnMgYW5kIHVwZGF0ZSBjYWNoZSB3aGVuIGdvdCBiYXNpcSBub3RpZmljYXRpb24gcmVjZWl2ZWRcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvRXZlbnREaXNwYXRjaGVyQ2hhbmdlcygpO1xuICAgIC8vIEBUT0RPIHdoeT9cbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rVHJhbnNhY3Rpb24sIHRoaXMucmVmcmVzaENhY2hlLCBbJ3Bvc3QnLCAnZGVsZXRlJ10pO1xuICAgIHRoaXMubGlzdGVuQ1NFKFByb3BlcnR5U2hhcmUsIHRoaXMucmVmcmVzaENhY2hlLCBbJ3B1dCddKTtcbiAgICB0aGlzLmxpc3RlbkNTRShCYW5rQ29ubmVjdGlvbiwgdGhpcy5yZWZyZXNoQ2FjaGUsIFsncG9zdCddKTtcbiAgICB0aGlzLmxpc3Rlbk5vdGlmaWNhdGlvbnMoKTtcbiAgICAvLyB0aGlzLmxpc3RlbkNvbm5lY3Rpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGJhbmsgYWNjb3VudCBjdXJyZW50IGJhbGFuY2VcbiAgICogQFRPRE8gVmlrOiByZWZhY3RvciBvbmNlIGJhY2tlbmQgdXBkYXRlZCAoc2hvdWxkIGJlIHNlcGFyYXRlZCBlbmRwb2ludCBmb3IgQmFua0FjY291bnRCYWxhbmNlIGVudGl0eSlcbiAgICovXG4gIHVwZGF0ZUN1cnJlbnRCYWxhbmNlKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IE9ic2VydmFibGU8QmFua0FjY291bnQ+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dChgJHt0aGlzLmFwaVVybH0vJHtiYW5rQWNjb3VudC5pZH0vYmFsYW5jZWAsIGJhbmtBY2NvdW50KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHVwZGF0ZWRCYW5rQWNjb3VudDogQmFua0FjY291bnQgPSBwbGFpblRvQ2xhc3MoQmFua0FjY291bnQsIHJlc3BvbnNlKTtcbiAgICAgICAgICB0aGlzLmhhbmRsZVJlc3BvbnNlKFt1cGRhdGVkQmFua0FjY291bnRdLCAncHV0Jyk7XG5cbiAgICAgICAgICByZXR1cm4gdXBkYXRlZEJhbmtBY2NvdW50O1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudHNcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVG9FdmVudERpc3BhdGNoZXJDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihbXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLkxPQU5fUEFZT1VUX1VQREFURUQsXG4gICAgICBBcHBFdmVudFR5cGVFbnVtLkJBTktfVFJBTlNBQ1RJT05TX0FEREVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaENhY2hlKCk7XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogQFRPRE8gcmVtb3ZlIHdoZW4gVFQtMzgyNiBpcyByZWFkeVxuICAgKiBtYW51YWxDb25uZWN0aW9uIG1vdmVkIHRvIGJhc2lxLCBvbGQgbWFudWFsIGJhbmtBY2NvdW50cyBjbG9zZWQgdG8gbGV0IHVzZXIgYWRkIGF1dG9tYXRlZCBiYW5rQWNjb3VudHMgKGJlY2F1c2UgdGhlcmUgaXMgbm8gcmVsaWFibGUgd2F5IHRvIG1lcmdlKVxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Db25uZWN0aW9ucygpOiB2b2lkIHtcbiAgICB0aGlzLnNzZVNlcnZpY2Uub24oYGJhbmtDb25uZWN0aW9uc2ApLnN1YnNjcmliZSgoY29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb25CYXNlKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLnJlZnJlc2hDYWNoZSgpO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ob3RpZmljYXRpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLk5PVElGSUNBVElPTl9BRERFRCkuc3Vic2NyaWJlKChub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbikgPT4ge1xuICAgICAgY29uc3QgZXZlbnRzID0gW1xuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfTkVXX0FDQ09VTlRTLFxuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfRklSU1RfSU1QT1JUX0NPTVBMRVRFLFxuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfQVVUSE9SSVpBVElPTl9GQUlMLFxuICAgICAgXTtcblxuICAgICAgaWYgKCFub3RpZmljYXRpb24uaXNSZWFkICYmIGV2ZW50cy5pbmNsdWRlcyhub3RpZmljYXRpb24uZXZlbnRUeXBlKSkge1xuICAgICAgICAvLyBAVE9ETyBUVC0zODI2IG1vdmUgdG8gdW5pZmllZCBtZXJjdXJlIGV2ZW50XG4gICAgICAgIHRoaXMucmVmcmVzaENhY2hlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -2,10 +2,11 @@ import { Inject, Injectable } from '@angular/core';
2
2
  import { catchError, map } from 'rxjs/operators';
3
3
  import { plainToClass } from 'class-transformer';
4
4
  import { RestService } from '../../rest';
5
- import { BankConnection } from '../../../../models';
5
+ import { AppEventTypeEnum, BankConnection } from '../../../../models';
6
6
  import { throwError as observableThrowError } from 'rxjs';
7
7
  import { Collection } from '../../../../collections';
8
8
  import { BankConnectionMessagesEnum } from './bank-connection-messages.enum';
9
+ import { UserEventTypeTypeEnum } from '../../../../db/Enums/user-event-type-type.enum';
9
10
  import * as i0 from "@angular/core";
10
11
  /**
11
12
  * BankConnection means user account at specific bank (usually each user has only one at the same bank)
@@ -19,12 +20,10 @@ export class BankConnectionService extends RestService {
19
20
  this.collectionClass = Collection;
20
21
  this.endpointUri = 'bank-connections';
21
22
  this.disabledMethods = ['postBatch', 'putBatch', 'delete', 'deleteBatch'];
22
- this.mercureTopic = 'bankConnections';
23
23
  this.listenEvents();
24
24
  }
25
25
  listenEvents() {
26
- // @TODO remove when TT-3826 is ready
27
- this.listenSSE();
26
+ this.listenNotifications();
28
27
  }
29
28
  /**
30
29
  * there is no put BankConnection method, we have to post to update
@@ -67,6 +66,19 @@ export class BankConnectionService extends RestService {
67
66
  deactivate(bankConnection) {
68
67
  return this.put(bankConnection, `${this.apiUrl}/${bankConnection.id}/deactivate`);
69
68
  }
69
+ listenNotifications() {
70
+ this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
71
+ const events = [
72
+ UserEventTypeTypeEnum.BASIQ_NEW_ACCOUNTS,
73
+ UserEventTypeTypeEnum.BASIQ_FIRST_IMPORT_COMPLETE,
74
+ UserEventTypeTypeEnum.BASIQ_AUTHORIZATION_FAIL,
75
+ ];
76
+ if (!notification.isRead && events.includes(notification.eventType)) {
77
+ // @TODO TT-3826 move to unified mercure event
78
+ this.refreshCache();
79
+ }
80
+ });
81
+ }
70
82
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BankConnectionService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable }); }
71
83
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: BankConnectionService, providedIn: 'root' }); }
72
84
  }
@@ -79,4 +91,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
79
91
  type: Inject,
80
92
  args: ['environment']
81
93
  }] }] });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9iYW5rL2JhbmstY29ubmVjdGlvbi9iYW5rLWNvbm5lY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUdwRCxPQUFPLEVBQUUsVUFBVSxJQUFJLG9CQUFvQixFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7QUFFN0U7OztHQUdHO0FBSUgsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFdBQTJFO0lBT3BILFlBQTZDLFdBQWdCO1FBQzNELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUR3QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQU43RCxlQUFVLEdBQTBCLGNBQWMsQ0FBQztRQUNuRCxvQkFBZSxHQUFzQixVQUFVLENBQUM7UUFDaEQsZ0JBQVcsR0FBRyxrQkFBa0IsQ0FBQztRQUNqQyxvQkFBZSxHQUFpQixDQUFDLFdBQVcsRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ25GLGlCQUFZLEdBQUcsaUJBQWlCLENBQUM7UUFJL0IsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YscUNBQXFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxDQUFDLGNBQThCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUM7YUFDL0MsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQTRCLEVBQUUsRUFBRTtZQUNuQyxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRXRELCtEQUErRDtZQUMvRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDcEIsUUFBUSxJQUFJLEVBQUU7b0JBQ1osS0FBSyxNQUFNLENBQUMsY0FBYyxFQUFFO3dCQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFDcEUsTUFBTTtvQkFDUixLQUFLLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRTt3QkFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsMEJBQTBCLENBQUMsa0JBQWtCLENBQUMsQ0FBQzt3QkFDekUsTUFBTTtpQkFDVDthQUNGO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLGlEQUFpRDtZQUNqRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3pFO1lBRUQseUVBQXlFO1lBQ3pFLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFDdEU7WUFFRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2FBQzNFO1lBRUQsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0wsQ0FBQztJQUVELFFBQVEsQ0FBQyxjQUE4QjtRQUNyQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxjQUFjLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsVUFBVSxDQUFDLGNBQThCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLGNBQWMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7K0dBbkVVLHFCQUFxQixrQkFPWixhQUFhO21IQVB0QixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUWMsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiBhcyBCYW5rQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IElFdmVudExpc3RlbmVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IHRocm93RXJyb3IgYXMgb2JzZXJ2YWJsZVRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvbGxlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9jb2xsZWN0aW9ucyc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bSB9IGZyb20gJy4vYmFuay1jb25uZWN0aW9uLW1lc3NhZ2VzLmVudW0nO1xuXG4vKipcbiAqIEJhbmtDb25uZWN0aW9uIG1lYW5zIHVzZXIgYWNjb3VudCBhdCBzcGVjaWZpYyBiYW5rICh1c3VhbGx5IGVhY2ggdXNlciBoYXMgb25seSBvbmUgYXQgdGhlIHNhbWUgYmFuaylcbiAqIHNlcnZpY2UgaGFuZGxlcyBCYW5rQ29ubmVjdGlvbiBtYW5hZ2VtZW50XG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJhbmtDb25uZWN0aW9uU2VydmljZSBleHRlbmRzIFJlc3RTZXJ2aWNlPEJhbmtDb25uZWN0aW9uQmFzZSwgQmFua0Nvbm5lY3Rpb24sIENvbGxlY3Rpb248QmFua0Nvbm5lY3Rpb24+PiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgbW9kZWxDbGFzczogdHlwZW9mIEJhbmtDb25uZWN0aW9uID0gQmFua0Nvbm5lY3Rpb247XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIENvbGxlY3Rpb24gPSBDb2xsZWN0aW9uO1xuICBlbmRwb2ludFVyaSA9ICdiYW5rLWNvbm5lY3Rpb25zJztcbiAgZGlzYWJsZWRNZXRob2RzOiBSZXN0TWV0aG9kW10gPSBbJ3Bvc3RCYXRjaCcsICdwdXRCYXRjaCcsICdkZWxldGUnLCAnZGVsZXRlQmF0Y2gnXTtcbiAgbWVyY3VyZVRvcGljID0gJ2JhbmtDb25uZWN0aW9ucyc7XG5cbiAgY29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgIHN1cGVyKGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCkge1xuICAgIC8vIEBUT0RPIHJlbW92ZSB3aGVuIFRULTM4MjYgaXMgcmVhZHlcbiAgICB0aGlzLmxpc3RlblNTRSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIHRoZXJlIGlzIG5vIHB1dCBCYW5rQ29ubmVjdGlvbiBtZXRob2QsIHdlIGhhdmUgdG8gcG9zdCB0byB1cGRhdGVcbiAgICogUE9TVCBlbmRwb2ludCBpcyB1c2luZyBmb3IgY3JlYXRlIGFuZCBmb3IgdXBkYXRlLlxuICAgKi9cbiAgcG9zdChiYW5rQ29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pOiBPYnNlcnZhYmxlPEJhbmtDb25uZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuYXBpVXJsLCBiYW5rQ29ubmVjdGlvbilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBCYW5rQ29ubmVjdGlvbkJhc2UpID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBwbGFpblRvQ2xhc3MoQmFua0Nvbm5lY3Rpb24sIHJlc3BvbnNlKTtcblxuICAgICAgICAgIC8vIEBUT0RPIHRlc3QgaWYgYCFiYW5rQ29ubmVjdGlvbi5pZCAmJmAgZG9lc24ndCBicmVhayBhbnl0aGluZ1xuICAgICAgICAgIGlmIChyZXN1bHQuaXNCYXNpcSgpKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgICAgY2FzZSByZXN1bHQuaXNMb2dpblN1Y2Nlc3MoKTpcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKEJhbmtDb25uZWN0aW9uTWVzc2FnZXNFbnVtLkxPR0lOX1NVQ0NFU1MpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICBjYXNlIHJlc3VsdC5pc0FjY291bnRzUmV0cmlldmVkKCk6XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2VzcyhCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5BQ0NPVU5UU19SRVRSSUVWRUQpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAvLyBTaG93IGVycm9yIHdoZW4gdXNlciBwcm92aWRlZCB3cm9uZyBsb2dpbiBkYXRhXG4gICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5lcnJvcihCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5JTlZBTElEX0NSRURFTlRJQUxTKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBTaG93IGVycm9yIHdoZW4gdXNlciBwcm92aWRlZCBhbm90aGVyIGxvZ2luIChub3QgbG9naW4gaGUgdXNlZCBiZWZvcmUpXG4gICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAwKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5lcnJvcihCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5XUk9OR19MT0dJTl9EQVRBKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA1MDApIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKEJhbmtDb25uZWN0aW9uTWVzc2FnZXNFbnVtLlRFTVBPUkFSWV9VTkFWQUlMQUJMRSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9ic2VydmFibGVUaHJvd0Vycm9yKGVycm9yKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIGFjdGl2YXRlKGJhbmtDb25uZWN0aW9uOiBCYW5rQ29ubmVjdGlvbik6IE9ic2VydmFibGU8QmFua0Nvbm5lY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5wdXQoYmFua0Nvbm5lY3Rpb24sIGAke3RoaXMuYXBpVXJsfS8ke2JhbmtDb25uZWN0aW9uLmlkfS9hY3RpdmF0ZWApO1xuICB9XG5cbiAgZGVhY3RpdmF0ZShiYW5rQ29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pOiBPYnNlcnZhYmxlPEJhbmtDb25uZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMucHV0KGJhbmtDb25uZWN0aW9uLCBgJHt0aGlzLmFwaVVybH0vJHtiYW5rQ29ubmVjdGlvbi5pZH0vZGVhY3RpdmF0ZWApO1xuICB9XG59XG4iXX0=
94
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9iYW5rL2JhbmstY29ubmVjdGlvbi9iYW5rLWNvbm5lY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWpELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQWMsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxjQUFjLEVBQWdCLE1BQU0sb0JBQW9CLENBQUM7QUFHcEYsT0FBTyxFQUFFLFVBQVUsSUFBSSxvQkFBb0IsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMxRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDckQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDN0UsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sZ0RBQWdELENBQUM7O0FBRXZGOzs7R0FHRztBQUlILE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxXQUEyRTtJQU1wSCxZQUE2QyxXQUFnQjtRQUMzRCxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFEd0IsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFMN0QsZUFBVSxHQUEwQixjQUFjLENBQUM7UUFDbkQsb0JBQWUsR0FBc0IsVUFBVSxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsa0JBQWtCLENBQUM7UUFDakMsb0JBQWUsR0FBaUIsQ0FBQyxXQUFXLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxhQUFhLENBQUMsQ0FBQztRQUlqRixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsSUFBSSxDQUFDLGNBQThCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxjQUFjLENBQUM7YUFDL0MsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLFFBQTRCLEVBQUUsRUFBRTtZQUNuQyxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBRXRELCtEQUErRDtZQUMvRCxJQUFJLE1BQU0sQ0FBQyxPQUFPLEVBQUUsRUFBRTtnQkFDcEIsUUFBUSxJQUFJLEVBQUU7b0JBQ1osS0FBSyxNQUFNLENBQUMsY0FBYyxFQUFFO3dCQUMxQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxhQUFhLENBQUMsQ0FBQzt3QkFDcEUsTUFBTTtvQkFDUixLQUFLLE1BQU0sQ0FBQyxtQkFBbUIsRUFBRTt3QkFDL0IsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsMEJBQTBCLENBQUMsa0JBQWtCLENBQUMsQ0FBQzt3QkFDekUsTUFBTTtpQkFDVDthQUNGO1lBRUQsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsS0FBd0IsRUFBRSxFQUFFO1lBQ3RDLGlEQUFpRDtZQUNqRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO2FBQ3pFO1lBRUQseUVBQXlFO1lBQ3pFLElBQUksS0FBSyxDQUFDLE1BQU0sS0FBSyxHQUFHLEVBQUU7Z0JBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLDBCQUEwQixDQUFDLGdCQUFnQixDQUFDLENBQUM7YUFDdEU7WUFFRCxJQUFJLEtBQUssQ0FBQyxNQUFNLEtBQUssR0FBRyxFQUFFO2dCQUN4QixJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2FBQzNFO1lBRUQsT0FBTyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyQyxDQUFDLENBQUMsQ0FDSCxDQUFBO0lBQ0wsQ0FBQztJQUVELFFBQVEsQ0FBQyxjQUE4QjtRQUNyQyxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxjQUFjLENBQUMsRUFBRSxXQUFXLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsVUFBVSxDQUFDLGNBQThCO1FBQ3ZDLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLGNBQWMsQ0FBQyxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ3BGLENBQUM7SUFFTyxtQkFBbUI7UUFDekIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLFlBQTBCLEVBQUUsRUFBRTtZQUMzRyxNQUFNLE1BQU0sR0FBRztnQkFDYixxQkFBcUIsQ0FBQyxrQkFBa0I7Z0JBQ3hDLHFCQUFxQixDQUFDLDJCQUEyQjtnQkFDakQscUJBQXFCLENBQUMsd0JBQXdCO2FBQy9DLENBQUM7WUFFRixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDbkUsOENBQThDO2dCQUM5QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBaEZVLHFCQUFxQixrQkFNWixhQUFhO21IQU50QixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT2MsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiBhcyBCYW5rQ29ubmVjdGlvbkJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVzdE1ldGhvZCwgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0sIEJhbmtDb25uZWN0aW9uLCBOb3RpZmljYXRpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IEh0dHBFcnJvclJlc3BvbnNlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgdGhyb3dFcnJvciBhcyBvYnNlcnZhYmxlVGhyb3dFcnJvciB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uTWVzc2FnZXNFbnVtIH0gZnJvbSAnLi9iYW5rLWNvbm5lY3Rpb24tbWVzc2FnZXMuZW51bSc7XG5pbXBvcnQgeyBVc2VyRXZlbnRUeXBlVHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9FbnVtcy91c2VyLWV2ZW50LXR5cGUtdHlwZS5lbnVtJztcblxuLyoqXG4gKiBCYW5rQ29ubmVjdGlvbiBtZWFucyB1c2VyIGFjY291bnQgYXQgc3BlY2lmaWMgYmFuayAodXN1YWxseSBlYWNoIHVzZXIgaGFzIG9ubHkgb25lIGF0IHRoZSBzYW1lIGJhbmspXG4gKiBzZXJ2aWNlIGhhbmRsZXMgQmFua0Nvbm5lY3Rpb24gbWFuYWdlbWVudFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvblNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxCYW5rQ29ubmVjdGlvbkJhc2UsIEJhbmtDb25uZWN0aW9uLCBDb2xsZWN0aW9uPEJhbmtDb25uZWN0aW9uPj4gaW1wbGVtZW50cyBJRXZlbnRMaXN0ZW5lciB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBCYW5rQ29ubmVjdGlvbiA9IEJhbmtDb25uZWN0aW9uO1xuICBjb2xsZWN0aW9uQ2xhc3M6IHR5cGVvZiBDb2xsZWN0aW9uID0gQ29sbGVjdGlvbjtcbiAgZW5kcG9pbnRVcmkgPSAnYmFuay1jb25uZWN0aW9ucyc7XG4gIGRpc2FibGVkTWV0aG9kczogUmVzdE1ldGhvZFtdID0gWydwb3N0QmF0Y2gnLCAncHV0QmF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZUJhdGNoJ107XG5cbiAgY29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgIHN1cGVyKGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCkge1xuICAgIHRoaXMubGlzdGVuTm90aWZpY2F0aW9ucygpO1xuICB9XG5cbiAgLyoqXG4gICAqIHRoZXJlIGlzIG5vIHB1dCBCYW5rQ29ubmVjdGlvbiBtZXRob2QsIHdlIGhhdmUgdG8gcG9zdCB0byB1cGRhdGVcbiAgICogUE9TVCBlbmRwb2ludCBpcyB1c2luZyBmb3IgY3JlYXRlIGFuZCBmb3IgdXBkYXRlLlxuICAgKi9cbiAgcG9zdChiYW5rQ29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pOiBPYnNlcnZhYmxlPEJhbmtDb25uZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuYXBpVXJsLCBiYW5rQ29ubmVjdGlvbilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBCYW5rQ29ubmVjdGlvbkJhc2UpID0+IHtcbiAgICAgICAgICBjb25zdCByZXN1bHQgPSBwbGFpblRvQ2xhc3MoQmFua0Nvbm5lY3Rpb24sIHJlc3BvbnNlKTtcblxuICAgICAgICAgIC8vIEBUT0RPIHRlc3QgaWYgYCFiYW5rQ29ubmVjdGlvbi5pZCAmJmAgZG9lc24ndCBicmVhayBhbnl0aGluZ1xuICAgICAgICAgIGlmIChyZXN1bHQuaXNCYXNpcSgpKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKHRydWUpIHtcbiAgICAgICAgICAgICAgY2FzZSByZXN1bHQuaXNMb2dpblN1Y2Nlc3MoKTpcbiAgICAgICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5zdWNjZXNzKEJhbmtDb25uZWN0aW9uTWVzc2FnZXNFbnVtLkxPR0lOX1NVQ0NFU1MpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICBjYXNlIHJlc3VsdC5pc0FjY291bnRzUmV0cmlldmVkKCk6XG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdFNlcnZpY2Uuc3VjY2VzcyhCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5BQ0NPVU5UU19SRVRSSUVWRUQpO1xuICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH1cblxuICAgICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgICAgIH0pLFxuICAgICAgICBjYXRjaEVycm9yKChlcnJvcjogSHR0cEVycm9yUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICAvLyBTaG93IGVycm9yIHdoZW4gdXNlciBwcm92aWRlZCB3cm9uZyBsb2dpbiBkYXRhXG4gICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAxKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5lcnJvcihCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5JTlZBTElEX0NSRURFTlRJQUxTKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICAvLyBTaG93IGVycm9yIHdoZW4gdXNlciBwcm92aWRlZCBhbm90aGVyIGxvZ2luIChub3QgbG9naW4gaGUgdXNlZCBiZWZvcmUpXG4gICAgICAgICAgaWYgKGVycm9yLnN0YXR1cyA9PT0gNDAwKSB7XG4gICAgICAgICAgICB0aGlzLnRvYXN0U2VydmljZS5lcnJvcihCYW5rQ29ubmVjdGlvbk1lc3NhZ2VzRW51bS5XUk9OR19MT0dJTl9EQVRBKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA1MDApIHtcbiAgICAgICAgICAgIHRoaXMudG9hc3RTZXJ2aWNlLmVycm9yKEJhbmtDb25uZWN0aW9uTWVzc2FnZXNFbnVtLlRFTVBPUkFSWV9VTkFWQUlMQUJMRSk7XG4gICAgICAgICAgfVxuXG4gICAgICAgICAgcmV0dXJuIG9ic2VydmFibGVUaHJvd0Vycm9yKGVycm9yKTtcbiAgICAgICAgfSlcbiAgICAgIClcbiAgfVxuXG4gIGFjdGl2YXRlKGJhbmtDb25uZWN0aW9uOiBCYW5rQ29ubmVjdGlvbik6IE9ic2VydmFibGU8QmFua0Nvbm5lY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5wdXQoYmFua0Nvbm5lY3Rpb24sIGAke3RoaXMuYXBpVXJsfS8ke2JhbmtDb25uZWN0aW9uLmlkfS9hY3RpdmF0ZWApO1xuICB9XG5cbiAgZGVhY3RpdmF0ZShiYW5rQ29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pOiBPYnNlcnZhYmxlPEJhbmtDb25uZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMucHV0KGJhbmtDb25uZWN0aW9uLCBgJHt0aGlzLmFwaVVybH0vJHtiYW5rQ29ubmVjdGlvbi5pZH0vZGVhY3RpdmF0ZWApO1xuICB9XG5cbiAgcHJpdmF0ZSBsaXN0ZW5Ob3RpZmljYXRpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLk5PVElGSUNBVElPTl9BRERFRCkuc3Vic2NyaWJlKChub3RpZmljYXRpb246IE5vdGlmaWNhdGlvbikgPT4ge1xuICAgICAgY29uc3QgZXZlbnRzID0gW1xuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfTkVXX0FDQ09VTlRTLFxuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfRklSU1RfSU1QT1JUX0NPTVBMRVRFLFxuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQkFTSVFfQVVUSE9SSVpBVElPTl9GQUlMLFxuICAgICAgXTtcblxuICAgICAgaWYgKCFub3RpZmljYXRpb24uaXNSZWFkICYmIGV2ZW50cy5pbmNsdWRlcyhub3RpZmljYXRpb24uZXZlbnRUeXBlKSkge1xuICAgICAgICAvLyBAVE9ETyBUVC0zODI2IG1vdmUgdG8gdW5pZmllZCBtZXJjdXJlIGV2ZW50XG4gICAgICAgIHRoaXMucmVmcmVzaENhY2hlKCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -7,7 +7,6 @@ import { RestService } from '../../rest';
7
7
  import { ClientMovement } from '../../../../models';
8
8
  import { AppEvent } from '../../../../models';
9
9
  import { AppEventTypeEnum } from '../../../../models';
10
- import { UserEventTypeTypeEnum } from '../../../../db/Enums/user-event-type-type.enum';
11
10
  import * as i0 from "@angular/core";
12
11
  export class ClientMovementService extends RestService {
13
12
  constructor(environment) {
@@ -17,6 +16,7 @@ export class ClientMovementService extends RestService {
17
16
  this.collectionClass = ClientMovementCollection;
18
17
  this.modelClass = ClientMovement;
19
18
  this.disabledMethods = ['postBatch', 'delete', 'deleteBatch'];
19
+ this.mercureTopic = 'clientMovements';
20
20
  this.listenEvents();
21
21
  }
22
22
  listenEvents() {
@@ -24,7 +24,8 @@ export class ClientMovementService extends RestService {
24
24
  this.eventDispatcherService.on([AppEventTypeEnum.CLIENT_INVITE_ACCEPTED]).subscribe(() => {
25
25
  this.refreshCache();
26
26
  });
27
- this.listenNotifications();
27
+ // @TODO remove when TT-3826 is ready
28
+ this.listenSSE();
28
29
  }
29
30
  getActive() {
30
31
  return this.get().pipe(map((clientMovements) => clientMovements.active));
@@ -72,21 +73,6 @@ export class ClientMovementService extends RestService {
72
73
  // this.updateCache([clientMovement], 'delete');
73
74
  }));
74
75
  }
75
- listenNotifications() {
76
- this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
77
- const events = [
78
- UserEventTypeTypeEnum.FIRM_INVITE_ACCEPTED,
79
- UserEventTypeTypeEnum.FIRM_INVITE_REJECTED,
80
- UserEventTypeTypeEnum.CLIENT_INVITE_ACCEPTED,
81
- UserEventTypeTypeEnum.CLIENT_INVITE_REJECTED,
82
- UserEventTypeTypeEnum.CLIENT_INVITE_REGISTERED,
83
- ];
84
- if (!notification.isRead && events.includes(notification.eventType)) {
85
- // @TODO TT-3826 move to unified mercure event
86
- this.refreshCache();
87
- }
88
- });
89
- }
90
76
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClientMovementService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable }); }
91
77
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: ClientMovementService, providedIn: 'root' }); }
92
78
  }
@@ -99,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
99
85
  type: Inject,
100
86
  args: ['environment']
101
87
  }] }] });
102
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW1vdmVtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9maXJtL2NsaWVudC1tb3ZlbWVudC9jbGllbnQtbW92ZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFnQixNQUFNLG9CQUFvQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM5QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUd0RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQzs7QUFLdkYsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFdBQXlFO0lBTWxILFlBQTZDLFdBQWdCO1FBQzNELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUR3QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQUxuRCxnQkFBVyxHQUFHLGtCQUFrQixDQUFDO1FBQzNDLG9CQUFlLEdBQW9DLHdCQUF3QixDQUFDO1FBQzVFLGVBQVUsR0FBMEIsY0FBYyxDQUFDO1FBQ25ELG9CQUFlLEdBQWlCLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxhQUFh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Q0FBQztJQUVPLG1CQUFtQjtRQUN6QixJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFO1lBQzNHLE1BQU0sTUFBTSxHQUFHO2dCQUNiLHFCQUFxQixDQUFDLG9CQUFvQjtnQkFDMUMscUJBQXFCLENBQUMsb0JBQW9CO2dCQUMxQyxxQkFBcUIsQ0FBQyxzQkFBc0I7Z0JBQzVDLHFCQUFxQixDQUFDLHNCQUFzQjtnQkFDNUMscUJBQXFCLENBQUMsd0JBQXdCO2FBQy9DLENBQUM7WUFFRixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sSUFBSSxNQUFNLENBQUMsUUFBUSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsRUFBRTtnQkFDbkUsOENBQThDO2dCQUM5QyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7YUFDckI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckdVLHFCQUFxQixrQkFNWixhQUFhO21IQU50QixxQkFBcUIsY0FGcEIsTUFBTTs7NEZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT2MsTUFBTTsyQkFBQyxhQUFhIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudCBhcyBDbGllbnRNb3ZlbWVudEJhc2UgfSBmcm9tICcuLi8uLi8uLi8uLi9kYi9Nb2RlbHMvZmlybS9jbGllbnQtbW92ZW1lbnQnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgZm9ya0pvaW4gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEZpcm1UeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcbmltcG9ydCB7IFJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vcmVzdCc7XG5pbXBvcnQgeyBDbGllbnRNb3ZlbWVudCwgTm90aWZpY2F0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEFwcEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFJlc3RNZXRob2QgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IFVzZXJFdmVudFR5cGVUeXBlRW51bSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL0VudW1zL3VzZXItZXZlbnQtdHlwZS10eXBlLmVudW0nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBDbGllbnRNb3ZlbWVudFNlcnZpY2UgZXh0ZW5kcyBSZXN0U2VydmljZTxDbGllbnRNb3ZlbWVudEJhc2UsIENsaWVudE1vdmVtZW50LCBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICBwcm90ZWN0ZWQgZW5kcG9pbnRVcmkgPSAnY2xpZW50LW1vdmVtZW50cyc7XG4gIGNvbGxlY3Rpb25DbGFzczogdHlwZW9mIENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiA9IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbjtcbiAgbW9kZWxDbGFzczogdHlwZW9mIENsaWVudE1vdmVtZW50ID0gQ2xpZW50TW92ZW1lbnQ7XG4gIGRpc2FibGVkTWV0aG9kczogUmVzdE1ldGhvZFtdID0gWydwb3N0QmF0Y2gnLCAnZGVsZXRlJywgJ2RlbGV0ZUJhdGNoJ107XG5cbiAgY29uc3RydWN0b3IoQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueSkge1xuICAgIHN1cGVyKGVudmlyb25tZW50KTtcbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIC8vIGNsaWVudCBpbnZpdGUgYWNjZXB0IHRyaWdnZXJzIGNsaWVudCBtb3ZlbWVudCB1cGRhdGVcbiAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2Uub24oW0FwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX0lOVklURV9BQ0NFUFRFRF0pLnN1YnNjcmliZSgoKTogdm9pZCA9PiB7XG4gICAgICB0aGlzLnJlZnJlc2hDYWNoZSgpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5saXN0ZW5Ob3RpZmljYXRpb25zKCk7XG4gIH1cblxuICBnZXRBY3RpdmUoKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKS5waXBlKFxuICAgICAgbWFwKChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbik6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiA9PiBjbGllbnRNb3ZlbWVudHMuYWN0aXZlKVxuICAgICk7XG4gIH1cblxuICBnZXRUVEFkdmlzb3IoKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZSgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChtb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbikgPT4gbW92ZW1lbnRzLmZpbmRCeSgnZW1wbG95ZWUuZW1haWwnLCB0aGlzLmVudmlyb25tZW50LnR0QWR2aXNvcikgfHwgbnVsbClcbiAgICAgICk7XG4gIH1cblxuICBnZXRBY3RpdmVCeUZpcm1UeXBlKHR5cGU6IEZpcm1UeXBlRW51bSk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWN0aXZlKCkucGlwZShcbiAgICAgIG1hcCgoY2xpZW50TW92ZW1lbnRzOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24pOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24gPT4gY2xpZW50TW92ZW1lbnRzLmdldEJ5RmlybVR5cGUodHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyB1c2Ugc2ltcGxlIHB1dCB3aGVuIGJhY2tlbmQgcmVmYWN0b3JlZCAoaW5uZXIgbW92ZW1lbnRzIHNob3VsZG4ndCBjcmVhdGUgYSBuZXcgbW92ZW1lbnQpXG4gICAqIE1ldGhvZCBpcyB1c2luZyBmb3IgdHJhbnNmZXIgY2xpZW50IGJldHdlZW4gZW1wbG95ZWVzLlxuICAgKiBPbiBiYWNrZW5kIHdlIGNsb3NlIHBhc3NlZCBtb3ZlbWVudCBhbmQgY3JlYXRlIGEgbmV3IG9uZSBpbnN0ZWFkXG4gICAqL1xuICBwdXQobW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD4ge1xuICAgIC8vIGV4dGVuZCBiYXNlICdhZGQnIG1ldGhvZCBhbmQgcGFzcyBpbnRvIGl0IG1vdmVtZW50IHdpdGhvdXQgaWRcbiAgICByZXR1cm4gc3VwZXIucG9zdChwbGFpblRvQ2xhc3MoQ2xpZW50TW92ZW1lbnQsIE9iamVjdC5hc3NpZ24oe30sIG1vdmVtZW50LCB7IGlkOiBudWxsIH0pKSkucGlwZShcbiAgICAgIG1hcCgodXBkYXRlZE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4ge1xuICAgICAgICAvLyByZW1vdmUgcHJvdmlkZWQgbW92ZW1lbnQgZnJvbSBjYWNoZVxuICAgICAgICAvLyB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKGl0ZW06IENsaWVudE1vdmVtZW50KSA9PiBpdGVtLmlkICE9PSBtb3ZlbWVudC5pZCk7XG4gICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoW3VwZGF0ZWRNb3ZlbWVudF0sICdwb3N0Jyk7XG5cbiAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkNMSUVOVF9UUkFOU0ZFUl9UT19PVEhFUl9FTVBMT1lFRSwgW3VwZGF0ZWRNb3ZlbWVudC5jbGllbnRdKSk7XG5cbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRNb3ZlbWVudDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGVyZSBpcyBubyBhY3R1YWxseSBkaXJlY3QgdXBkYXRpbmcgb2YgY2xpZW50IG1vdmVtZW50LCBidXQgd2UgYXJlIHVzaW5nIHRoaXMgbWV0aG9kIGZvciB0cmFuc2ZlciBjbGllbnRzIGJldHdlZW4gZW1wbG95ZWVzXG4gICAqL1xuICBwdXRCYXRjaChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50W10pOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50W10+IHtcbiAgICBjb25zdCBiYXRjaDogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD5bXSA9IGNsaWVudE1vdmVtZW50cy5tYXAoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gdGhpcy5wdXQoY2xpZW50TW92ZW1lbnQpKTtcblxuICAgIHJldHVybiBmb3JrSm9pbihiYXRjaCk7XG4gIH1cblxuICAvKipcbiAgICogUmVqZWN0IGN1cnJlbnQgZmlybVxuICAgKi9cbiAgY2xvc2UoY2xpZW50TW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgLy8gY2FudCB1c2UgcGFyZW50IG1ldGhvZCBiZWNhdXNlIG9mIGN1c3RvbSBzcGVjaWZpYyBoYW5kbGVyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vY2xpZW50LW1vdmVtZW50cy8ke2NsaWVudE1vdmVtZW50LmlkfS9jbG9zZWAsIHt9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKTogdm9pZCA9PiB7XG4gICAgICAgICAgLy8gQFRPRE8gcmVtb3ZlIHdoZW4gVGF4UmV2aWV3U2VydmljZSByZWZhY3RvcmVkIHdpdGggdGhlIG5ldyByZXN0IGFuZCB1c2UgdGhlcmUgbGlzdGVuQ1NFIGluc3RlYWRcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX01PVkVNRU5UX0NMT1NFRCwgbnVsbCkpO1xuXG4gICAgICAgICAgLy8gQFRPRE8gd2h5IGNvbW1lbnRlZD9cbiAgICAgICAgICAvLyB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKG1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCk6IGJvb2xlYW4gPT4gbW92ZW1lbnQuaWQgIT09IGNsaWVudE1vdmVtZW50LmlkKTtcbiAgICAgICAgICAvLyB0aGlzLnVwZGF0ZUNhY2hlKFtjbGllbnRNb3ZlbWVudF0sICdkZWxldGUnKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxpc3Rlbk5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uTk9USUZJQ0FUSU9OX0FEREVEKS5zdWJzY3JpYmUoKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uKSA9PiB7XG4gICAgICBjb25zdCBldmVudHMgPSBbXG4gICAgICAgIFVzZXJFdmVudFR5cGVUeXBlRW51bS5GSVJNX0lOVklURV9BQ0NFUFRFRCxcbiAgICAgICAgVXNlckV2ZW50VHlwZVR5cGVFbnVtLkZJUk1fSU5WSVRFX1JFSkVDVEVELFxuICAgICAgICBVc2VyRXZlbnRUeXBlVHlwZUVudW0uQ0xJRU5UX0lOVklURV9BQ0NFUFRFRCxcbiAgICAgICAgVXNlckV2ZW50VHlwZVR5cGVFbnVtLkNMSUVOVF9JTlZJVEVfUkVKRUNURUQsXG4gICAgICAgIFVzZXJFdmVudFR5cGVUeXBlRW51bS5DTElFTlRfSU5WSVRFX1JFR0lTVEVSRUQsXG4gICAgICBdO1xuXG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgZXZlbnRzLmluY2x1ZGVzKG5vdGlmaWNhdGlvbi5ldmVudFR5cGUpKSB7XG4gICAgICAgIC8vIEBUT0RPIFRULTM4MjYgbW92ZSB0byB1bmlmaWVkIG1lcmN1cmUgZXZlbnRcbiAgICAgICAgdGhpcy5yZWZyZXNoQ2FjaGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50LW1vdmVtZW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvaHR0cC9maXJtL2NsaWVudC1tb3ZlbWVudC9jbGllbnQtbW92ZW1lbnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQWMsUUFBUSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDakQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUN6QyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDOztBQU90RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEsV0FBeUU7SUFPbEgsWUFBNkMsV0FBZ0I7UUFDM0QsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRHdCLGdCQUFXLEdBQVgsV0FBVyxDQUFLO1FBTm5ELGdCQUFXLEdBQUcsa0JBQWtCLENBQUM7UUFDM0Msb0JBQWUsR0FBb0Msd0JBQXdCLENBQUM7UUFDNUUsZUFBVSxHQUEwQixjQUFjLENBQUM7UUFDbkQsb0JBQWUsR0FBaUIsQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLGFBQWEsQ0FBQyxDQUFDO1FBQ3ZFLGlCQUFZLEdBQUcsaUJBQWlCLENBQUM7UUFJL0Is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R0FyRlUscUJBQXFCLGtCQU9aLGFBQWE7bUhBUHRCLHFCQUFxQixjQUZwQixNQUFNOzs0RkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFRYyxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50IGFzIENsaWVudE1vdmVtZW50QmFzZSB9IGZyb20gJy4uLy4uLy4uLy4uL2RiL01vZGVscy9maXJtL2NsaWVudC1tb3ZlbWVudCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBmb3JrSm9pbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgRmlybVR5cGVFbnVtIH0gZnJvbSAnLi4vLi4vLi4vLi4vZGIvRW51bXMnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgUmVzdFNlcnZpY2UgfSBmcm9tICcuLi8uLi9yZXN0JztcbmltcG9ydCB7IENsaWVudE1vdmVtZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEFwcEV2ZW50IH0gZnJvbSAnLi4vLi4vLi4vLi4vbW9kZWxzJztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbHMnO1xuaW1wb3J0IHsgSUV2ZW50TGlzdGVuZXIgfSBmcm9tICcuLi8uLi8uLi8uLi9pbnRlcmZhY2VzJztcbmltcG9ydCB7IFJlc3RNZXRob2QgfSBmcm9tICcuLi8uLi9yZXN0JztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQ2xpZW50TW92ZW1lbnRTZXJ2aWNlIGV4dGVuZHMgUmVzdFNlcnZpY2U8Q2xpZW50TW92ZW1lbnRCYXNlLCBDbGllbnRNb3ZlbWVudCwgQ2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uPiBpbXBsZW1lbnRzIElFdmVudExpc3RlbmVyIHtcbiAgcHJvdGVjdGVkIGVuZHBvaW50VXJpID0gJ2NsaWVudC1tb3ZlbWVudHMnO1xuICBjb2xsZWN0aW9uQ2xhc3M6IHR5cGVvZiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24gPSBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb247XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBDbGllbnRNb3ZlbWVudCA9IENsaWVudE1vdmVtZW50O1xuICBkaXNhYmxlZE1ldGhvZHM6IFJlc3RNZXRob2RbXSA9IFsncG9zdEJhdGNoJywgJ2RlbGV0ZScsICdkZWxldGVCYXRjaCddO1xuICBtZXJjdXJlVG9waWMgPSAnY2xpZW50TW92ZW1lbnRzJztcblxuICBjb25zdHJ1Y3RvcihASW5qZWN0KCdlbnZpcm9ubWVudCcpIHByb3RlY3RlZCBlbnZpcm9ubWVudDogYW55KSB7XG4gICAgc3VwZXIoZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgLy8gY2xpZW50IGludml0ZSBhY2NlcHQgdHJpZ2dlcnMgY2xpZW50IG1vdmVtZW50IHVwZGF0ZVxuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihbQXBwRXZlbnRUeXBlRW51bS5DTElFTlRfSU5WSVRFX0FDQ0VQVEVEXSkuc3Vic2NyaWJlKCgpOiB2b2lkID0+IHtcbiAgICAgIHRoaXMucmVmcmVzaENhY2hlKCk7XG4gICAgfSk7XG4gICAgLy8gQFRPRE8gcmVtb3ZlIHdoZW4gVFQtMzgyNiBpcyByZWFkeVxuICAgIHRoaXMubGlzdGVuU1NFKCk7XG4gIH1cblxuICBnZXRBY3RpdmUoKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKS5waXBlKFxuICAgICAgbWFwKChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbik6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbiA9PiBjbGllbnRNb3ZlbWVudHMuYWN0aXZlKVxuICAgICk7XG4gIH1cblxuICBnZXRUVEFkdmlzb3IoKTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD4ge1xuICAgIHJldHVybiB0aGlzLmdldEFjdGl2ZSgpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChtb3ZlbWVudHM6IENsaWVudE1vdmVtZW50Q29sbGVjdGlvbikgPT4gbW92ZW1lbnRzLmZpbmRCeSgnZW1wbG95ZWUuZW1haWwnLCB0aGlzLmVudmlyb25tZW50LnR0QWR2aXNvcikgfHwgbnVsbClcbiAgICAgICk7XG4gIH1cblxuICBnZXRBY3RpdmVCeUZpcm1UeXBlKHR5cGU6IEZpcm1UeXBlRW51bSk6IE9ic2VydmFibGU8Q2xpZW50TW92ZW1lbnRDb2xsZWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0QWN0aXZlKCkucGlwZShcbiAgICAgIG1hcCgoY2xpZW50TW92ZW1lbnRzOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24pOiBDbGllbnRNb3ZlbWVudENvbGxlY3Rpb24gPT4gY2xpZW50TW92ZW1lbnRzLmdldEJ5RmlybVR5cGUodHlwZSkpXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBAVE9ETyB1c2Ugc2ltcGxlIHB1dCB3aGVuIGJhY2tlbmQgcmVmYWN0b3JlZCAoaW5uZXIgbW92ZW1lbnRzIHNob3VsZG4ndCBjcmVhdGUgYSBuZXcgbW92ZW1lbnQpXG4gICAqIE1ldGhvZCBpcyB1c2luZyBmb3IgdHJhbnNmZXIgY2xpZW50IGJldHdlZW4gZW1wbG95ZWVzLlxuICAgKiBPbiBiYWNrZW5kIHdlIGNsb3NlIHBhc3NlZCBtb3ZlbWVudCBhbmQgY3JlYXRlIGEgbmV3IG9uZSBpbnN0ZWFkXG4gICAqL1xuICBwdXQobW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD4ge1xuICAgIC8vIGV4dGVuZCBiYXNlICdhZGQnIG1ldGhvZCBhbmQgcGFzcyBpbnRvIGl0IG1vdmVtZW50IHdpdGhvdXQgaWRcbiAgICByZXR1cm4gc3VwZXIucG9zdChwbGFpblRvQ2xhc3MoQ2xpZW50TW92ZW1lbnQsIE9iamVjdC5hc3NpZ24oe30sIG1vdmVtZW50LCB7IGlkOiBudWxsIH0pKSkucGlwZShcbiAgICAgIG1hcCgodXBkYXRlZE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4ge1xuICAgICAgICAvLyByZW1vdmUgcHJvdmlkZWQgbW92ZW1lbnQgZnJvbSBjYWNoZVxuICAgICAgICAvLyB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKGl0ZW06IENsaWVudE1vdmVtZW50KSA9PiBpdGVtLmlkICE9PSBtb3ZlbWVudC5pZCk7XG4gICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoW3VwZGF0ZWRNb3ZlbWVudF0sICdwb3N0Jyk7XG5cbiAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkNMSUVOVF9UUkFOU0ZFUl9UT19PVEhFUl9FTVBMT1lFRSwgW3VwZGF0ZWRNb3ZlbWVudC5jbGllbnRdKSk7XG5cbiAgICAgICAgcmV0dXJuIHVwZGF0ZWRNb3ZlbWVudDtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUaGVyZSBpcyBubyBhY3R1YWxseSBkaXJlY3QgdXBkYXRpbmcgb2YgY2xpZW50IG1vdmVtZW50LCBidXQgd2UgYXJlIHVzaW5nIHRoaXMgbWV0aG9kIGZvciB0cmFuc2ZlciBjbGllbnRzIGJldHdlZW4gZW1wbG95ZWVzXG4gICAqL1xuICBwdXRCYXRjaChjbGllbnRNb3ZlbWVudHM6IENsaWVudE1vdmVtZW50W10pOiBPYnNlcnZhYmxlPENsaWVudE1vdmVtZW50W10+IHtcbiAgICBjb25zdCBiYXRjaDogT2JzZXJ2YWJsZTxDbGllbnRNb3ZlbWVudD5bXSA9IGNsaWVudE1vdmVtZW50cy5tYXAoKGNsaWVudE1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCkgPT4gdGhpcy5wdXQoY2xpZW50TW92ZW1lbnQpKTtcblxuICAgIHJldHVybiBmb3JrSm9pbihiYXRjaCk7XG4gIH1cblxuICAvKipcbiAgICogUmVqZWN0IGN1cnJlbnQgZmlybVxuICAgKi9cbiAgY2xvc2UoY2xpZW50TW92ZW1lbnQ6IENsaWVudE1vdmVtZW50KTogT2JzZXJ2YWJsZTx2b2lkPiB7XG4gICAgLy8gY2FudCB1c2UgcGFyZW50IG1ldGhvZCBiZWNhdXNlIG9mIGN1c3RvbSBzcGVjaWZpYyBoYW5kbGVyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vY2xpZW50LW1vdmVtZW50cy8ke2NsaWVudE1vdmVtZW50LmlkfS9jbG9zZWAsIHt9KVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKTogdm9pZCA9PiB7XG4gICAgICAgICAgLy8gQFRPRE8gcmVtb3ZlIHdoZW4gVGF4UmV2aWV3U2VydmljZSByZWZhY3RvcmVkIHdpdGggdGhlIG5ldyByZXN0IGFuZCB1c2UgdGhlcmUgbGlzdGVuQ1NFIGluc3RlYWRcbiAgICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQ0xJRU5UX01PVkVNRU5UX0NMT1NFRCwgbnVsbCkpO1xuXG4gICAgICAgICAgLy8gQFRPRE8gd2h5IGNvbW1lbnRlZD9cbiAgICAgICAgICAvLyB0aGlzLmNhY2hlID0gdGhpcy5jYWNoZS5maWx0ZXIoKG1vdmVtZW50OiBDbGllbnRNb3ZlbWVudCk6IGJvb2xlYW4gPT4gbW92ZW1lbnQuaWQgIT09IGNsaWVudE1vdmVtZW50LmlkKTtcbiAgICAgICAgICAvLyB0aGlzLnVwZGF0ZUNhY2hlKFtjbGllbnRNb3ZlbWVudF0sICdkZWxldGUnKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
@@ -39,15 +39,8 @@ export class XlsxService {
39
39
  // add caption for the current table
40
40
  xlsx.utils.sheet_add_aoa(worksheet, [[data.caption?.innerText]], { origin: -1 });
41
41
  // Prepare to add table data to the worksheet, processing each cell
42
- const rows = Array.from(data.rows).map((row) => Array.from(row.cells).map((cell) => {
43
- const cellValue = cell.innerText;
44
- // Convert currency strings like "$0.00" to numbers
45
- if (/^-?\$/.test(cellValue)) {
46
- // @TODO vik fix
47
- // cellValue = parseFloat(cellValue.replace('$', ''));
48
- }
49
- return cellValue;
50
- }));
42
+ const rows = Array.from(data.rows)
43
+ .map((row) => Array.from(row.cells).map(cell => this.htmlToXlsCell(cell)));
51
44
  // Add the processed table data to the worksheet
52
45
  xlsx.utils.sheet_add_aoa(worksheet, rows, { origin: -1 });
53
46
  // set empty row after current table
@@ -56,6 +49,21 @@ export class XlsxService {
56
49
  xlsx.utils.book_append_sheet(workbook, worksheet);
57
50
  return xlsx.write(workbook, { bookType: 'xlsx', type: 'array' });
58
51
  }
52
+ htmlToXlsCell(cell) {
53
+ const cellValue = cell.innerText;
54
+ // regex to check currency value
55
+ return /^-?\$/.test(cellValue) ? this.currencyToNumber(cellValue) : cellValue;
56
+ }
57
+ /**
58
+ * function which reconverts values from customCurrencyPipe
59
+ * @param cellValue - string with $ and possibly comma. $123,123.03
60
+ * @returns value without $ and comma. like 123123.03
61
+ */
62
+ currencyToNumber(cellValue) {
63
+ // remove dollar sign and comma
64
+ cellValue = cellValue.replace(/[$,]/g, '');
65
+ return parseFloat(cellValue);
66
+ }
59
67
  /**
60
68
  * @TODO vik/artem work with ExportDataTable instead of ExportableCollection
61
69
  * @TODO vik/artem why so much code? here is 6 rows solution https://stackoverflow.com/questions/64939994/how-to-export-array-of-objects-to-an-excel-in-angular-8
@@ -91,4 +99,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImpo
91
99
  providedIn: 'root'
92
100
  }]
93
101
  }] });
94
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGxzeC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL3hsc3gveGxzeC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxLQUFLLFNBQVMsTUFBTSxZQUFZLENBQUM7O0FBSXhDLE1BQU0sVUFBVSxHQUFXLGlGQUFpRixDQUFBO0FBTTVHOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFQeEI7UUFxREUsZ0JBQVcsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQzdCLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxjQUFjLENBQUM7WUFDekMsTUFBTSxRQUFRLEdBQUcsR0FBRyxTQUFTLEVBQUUsQ0FBQztZQUNoQyxPQUFPO2dCQUNMLFNBQVM7Z0JBQ1QsUUFBUTthQUNULENBQUM7UUFDSixDQUFDLENBQUM7S0FnQ0g7SUFwRkM7O09BRUc7SUFDSCxZQUFZLENBQUMsTUFBb0MsRUFBRSxLQUFhLEVBQUUsUUFBZ0I7UUFDaEYsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRSxNQUFNLElBQUksR0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3ZDLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztRQUVILFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsUUFBUSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsTUFBb0MsRUFBRSxLQUFjO1FBQzdFLHNCQUFzQjtRQUN0QixNQUFNLFFBQVEsR0FBa0IsSUFBSSxDQUFDLEtB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QUUsQ0FBQyxDQUFDO1FBRXhELElBQUksQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2xELE1BQU0sU0FBUyxHQUFhLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQztRQUV0RixNQUFNLElBQUksR0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3ZDLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztRQUNILFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsUUFBUSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDOytHQXBGVSxXQUFXO21IQUFYLFdBQVcsY0FOVixNQUFNOzs0RkFNUCxXQUFXO2tCQVB2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIHhsc3ggZnJvbSAneGxzeCc7XG5pbXBvcnQgKiBhcyBGaWxlU2F2ZXIgZnJvbSAnZmlsZS1zYXZlcic7XG5pbXBvcnQgeyBFeHBvcnRhYmxlQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uL2NvbGxlY3Rpb25zJztcbmltcG9ydCB7IEV4cG9ydERhdGFUYWJsZSB9IGZyb20gJy4uLy4uL21vZGVscy9leHBvcnQvZXhwb3J0LWRhdGEtdGFibGUnO1xuXG5jb25zdCBFWENFTF9UWVBFOiBzdHJpbmcgPSAnYXBwbGljYXRpb24vdm5kLm9wZW54bWxmb3JtYXRzLW9mZmljZWRvY3VtZW50LnNwcmVhZHNoZWV0bWwuc2hlZXQ7Y2hhcnNldD1VVEYtOCdcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5cbi8qKlxuICogU2VydmljZSB0byB3b3JrIHdpdGggWExTWCAoZ2VuZXJhdGUsIGRvd25sb2FkLCBlLnQuYy4pXG4gKi9cbmV4cG9ydCBjbGFzcyBYbHN4U2VydmljZSB7XG4gIC8qKlxuICAgKiBFeHBvcnQgZmlsZSBmb3JtIHByb3ZpZGVkIEhUTUwgdGFibGVzXG4gICAqL1xuICBleHBvcnRUYWJsZXModGFibGVzOiBOb2RlTGlzdE9mPEhUTUxUYWJsZUVsZW1lbnQ+LCB0aXRsZTogc3RyaW5nLCBmaWxlTmFtZTogc3RyaW5nKTogdm9pZCB7XG4gICAgY29uc3QgZXhjZWxGaWxlOiBCbG9iUGFydCA9IHRoaXMuZ2VuZXJhdGVGcm9tVGFibGVzKHRhYmxlcywgdGl0bGUpO1xuICAgIGNvbnN0IGRhdGE6IEJsb2IgPSBuZXcgQmxvYihbZXhjZWxGaWxlXSwge1xuICAgICAgdHlwZTogRVhDRUxfVFlQRVxuICAgIH0pO1xuXG4gICAgRmlsZVNhdmVyLnNhdmVBcyhkYXRhLCBgJHtmaWxlTmFtZX0ueGxzeGApO1xuICB9XG5cbiAgcHJpdmF0ZSBnZW5lcmF0ZUZyb21UYWJsZXModGFibGVzOiBOb2RlTGlzdE9mPEhUTUxUYWJsZUVsZW1lbnQ+LCB0aXRsZT86IHN0cmluZyk6IEJsb2JQYXJ0IHtcbiAgICAvLyBjcmVhdGUgbmV3IHdvcmtib29rXG4gICAgY29uc3Qgd29ya2Jvb2s6IHhsc3guV29ya0Jvb2sgPSB4bHN4LnV0aWxzLmJvb2tfbmV3KCk7XG4gICAgLy8gY3JlYXRlIGVtcHR5IHdvcmtzaGVldFxuICAgIGNvbnN0IHdvcmtzaGVldDogeGxzeC5Xb3JrU2hlZXQgPSB7XG4gICAgICBTaGVldE5hbWVzOiBbXSxcbiAgICAgIFNoZWV0czoge31cbiAgICB9O1xuXG4gICAgdGFibGVzLmZvckVhY2goKGRhdGE6IEhUTUxUYWJsZUVsZW1lbnQpID0+IHtcbiAgICAgIC8vIGFkZCBjYXB0aW9uIGZvciB0aGUgY3VycmVudCB0YWJsZVxuICAgICAgeGxzeC51dGlscy5zaGVldF9hZGRfYW9hKHdvcmtzaGVldCwgW1tkYXRhLmNhcHRpb24/LmlubmVyVGV4dF1dLCB7IG9yaWdpbjogLTEgfSk7XG4gICAgICAvLyBQcmVwYXJlIHRvIGFkZCB0YWJsZSBkYXRhIHRvIHRoZSB3b3Jrc2hlZXQsIHByb2Nlc3NpbmcgZWFjaCBjZWxsXG4gICAgICBjb25zdCByb3dzID0gQXJyYXkuZnJvbShkYXRhLnJvd3MpLm1hcCgocm93OiBIVE1MVGFibGVSb3dFbGVtZW50KSA9PiBBcnJheS5mcm9tKHJvdy5jZWxscykubWFwKChjZWxsOiBIVE1MVGFibGVDZWxsRWxlbWVudCkgPT4ge1xuICAgICAgICBjb25zdCBjZWxsVmFsdWU6IHN0cmluZyB8IG51bWJlciA9IGNlbGwuaW5uZXJUZXh0O1xuICAgICAgICAvLyBDb252ZXJ0IGN1cnJlbmN5IHN0cmluZ3MgbGlrZSBcIiQwLjAwXCIgdG8gbnVtYmVyc1xuICAgICAgICBpZiAoL14tP1xcJC8udGVzdChjZWxsVmFsdWUpKSB7XG4gICAgICAgICAgLy8gQFRPRE8gdmlrIGZpeFxuICAgICAgICAgIC8vIGNlbGxWYWx1ZSA9IHBhcnNlRmxvYXQoY2VsbFZhbHVlLnJlcGxhY2UoJyQnLCAnJykpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGNlbGxWYWx1ZTtcbiAgICAgIH0pKTtcbiAgICAgIC8vIEFkZCB0aGUgcHJvY2Vzc2VkIHRhYmxlIGRhdGEgdG8gdGhlIHdvcmtzaGVldFxuICAgICAgeGxzeC51dGlscy5zaGVldF9hZGRfYW9hKHdvcmtzaGVldCwgcm93cywgeyBvcmlnaW46IC0xIH0pO1xuICAgICAgLy8gc2V0IGVtcHR5IHJvdyBhZnRlciBjdXJyZW50IHRhYmxlXG4gICAgICB4bHN4LnV0aWxzLnNoZWV0X2FkZF9hb2Eod29ya3NoZWV0LCBbXSwgeyBvcmlnaW46IC0xIH0pO1xuICAgIH0pO1xuXG4gICAgeGxzeC51dGlscy5ib29rX2FwcGVuZF9zaGVldCh3b3JrYm9vaywgd29ya3NoZWV0KTtcbiAgICByZXR1cm4geGxzeC53cml0ZSh3b3JrYm9vaywgeyBib29rVHlwZTogJ3hsc3gnLCB0eXBlOiAnYXJyYXknIH0pO1xuICB9XG5cbiAgZ2V0RmlsZU5hbWUgPSAobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3Qgc2hlZXROYW1lID0gbmFtZSB8fCAnRXhwb3J0UmVzdWx0JztcbiAgICBjb25zdCBmaWxlTmFtZSA9IGAke3NoZWV0TmFtZX1gO1xuICAgIHJldHVybiB7XG4gICAgICBzaGVldE5hbWUsXG4gICAgICBmaWxlTmFtZVxuICAgIH07XG4gIH07XG5cbiAgLyoqXG4gICAqIEBUT0RPIHZpay9hcnRlbSB3b3JrIHdpdGggRXhwb3J0RGF0YVRhYmxlIGluc3RlYWQgb2YgRXhwb3J0YWJsZUNvbGxlY3Rpb25cbiAgICogQFRPRE8gdmlrL2FydGVtIHdoeSBzbyBtdWNoIGNvZGU/IGhlcmUgaXMgNiByb3dzIHNvbHV0aW9uIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzY0OTM5OTk0L2hvdy10by1leHBvcnQtYXJyYXktb2Ytb2JqZWN0cy10by1hbi1leGNlbC1pbi1hbmd1bGFyLThcbiAgICovXG4gIGV4cG9ydEFycmF5VG9FeGNlbChleHBvcnRhYmxlQ29sbGVjdGlvbjogRXhwb3J0YWJsZUNvbGxlY3Rpb248YW55PiwgbmFtZT86IHN0cmluZywgcGFyYW1zPyA6IGFueSkge1xuICAgIGNvbnN0IHdvcmtib29rOiB4bHN4LldvcmtCb29rID0geGxzeC51dGlscy5ib29rX25ldygpO1xuICAgIC8vIGNyZWF0ZSBlbXB0eSB3b3Jrc2hlZXRcbiAgICBjb25zdCB3b3Jrc2hlZXQ6IHhsc3guV29ya1NoZWV0ID0ge1xuICAgICAgU2hlZXROYW1lczogW10sXG4gICAgICBTaGVldHM6IHt9XG4gICAgfTtcblxuICAgIGNvbnN0IGV4cG9ydERhdGE6IEV4cG9ydERhdGFUYWJsZSA9IGV4cG9ydGFibGVDb2xsZWN0aW9uLmV4cG9ydChwYXJhbXMpXG4gICAgY29uc3QgZXhwb3J0QW9hID0gZXhwb3J0YWJsZUNvbGxlY3Rpb24uZ2V0Qm9keUFvYShleHBvcnREYXRhKTtcbiAgICBjb25zdCB7IHNoZWV0TmFtZSwgZmlsZU5hbWUgfSA9IHRoaXMuZ2V0RmlsZU5hbWUobmFtZSk7XG5cbiAgICB4bHN4LnV0aWxzLnNoZWV0X2FkZF9hb2Eod29ya3NoZWV0LCBbZXhwb3J0RGF0YS5oZWFkZXJdLCB7IG9yaWdpbjogLTEgfSk7XG4gICAgLy8gYWRkIHRhYmxlIHRhYmxlIGRhdGEgdG8gdGhlIHdvcmtzaGVldFxuICAgIHhsc3gudXRpbHMuc2hlZXRfYWRkX2FvYSh3b3Jrc2hlZXQsIGV4cG9ydEFvYSwgeyBvcmlnaW46IC0xIH0pO1xuICAgIC8vIHNldCBlbXB0eSByb3cgYWZ0ZXIgY3VycmVudCB0YWJsZVxuICAgIHhsc3gudXRpbHMuc2hlZXRfYWRkX2FvYSh3b3Jrc2hlZXQsIFtdLCB7IG9yaWdpbjogLTEgfSk7XG5cbiAgICB4bHN4LnV0aWxzLmJvb2tfYXBwZW5kX3NoZWV0KHdvcmtib29rLCB3b3Jrc2hlZXQpO1xuICAgIGNvbnN0IGV4Y2VsRmlsZTogQmxvYlBhcnQgPSB4bHN4LndyaXRlKHdvcmtib29rLCB7IGJvb2tUeXBlOiAneGxzeCcsIHR5cGU6ICdhcnJheScgfSk7XG5cbiAgICBjb25zdCBkYXRhOiBCbG9iID0gbmV3IEJsb2IoW2V4Y2VsRmlsZV0sIHtcbiAgICAgIHR5cGU6IEVYQ0VMX1RZUEVcbiAgICB9KTtcbiAgICBGaWxlU2F2ZXIuc2F2ZUFzKGRhdGEsIGAke2ZpbGVOYW1lfS54bHN4YCk7XG4gIH1cbn1cbiJdfQ==
102
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoieGxzeC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL3hsc3gveGxzeC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxLQUFLLFNBQVMsTUFBTSxZQUFZLENBQUM7O0FBSXhDLE1BQU0sVUFBVSxHQUFXLGlGQUFpRixDQUFBO0FBTTVHOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFdBQVc7SUFQeEI7UUErREUsZ0JBQVcsR0FBRyxDQUFDLElBQVksRUFBRSxFQUFFO1lBQzdCLE1BQU0sU0FBUyxHQUFHLElBQUksSUFBSSxjQUFjLENBQUM7WUFDekMsTUFBTSxRQUFRLEdBQUcsR0FBRyxTQUFTLEVBQUUsQ0FBQztZQUNoQyxPQUFPO2dCQUNMLFNBQVM7Z0JBQ1QsUUFBUTthQUNULENBQUM7UUFDSixDQUFDLENBQUM7S0FnQ0g7SUE5RkM7O09BRUc7SUFDSCxZQUFZLENBQUMsTUFBb0MsRUFBRSxLQUFhLEVBQUUsUUFBZ0I7UUFDaEYsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxLQUFLLENBQUMsQ0FBQztRQUNuRSxNQUFNLElBQUksR0FBUyxJQUFJLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ3ZDLElBQUksRUFBRSxVQUFVO1NBQ2pCLENBQUMsQ0FBQztRQUVILFNBQVMsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEdBQUcsUUFBUSxPQUFPLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU8sa0JBQWtCLENBQUMsTUFBb0MsRUFBRSxLQUFjO1FBQzdFLHNCQUFzQjtRQUN0QixNQUFNLFFBQVEsR0FBa0IsSUFBSSxDQUFDLEtB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QUUsQ0FBQyxDQUFDO1FBQ3pFLHdDQUF3QztRQUN4QyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsU0FBUyxFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMvRCxvQ0FBb0M7UUFDcEMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsU0FBUyxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFeEQsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbEQsTUFBTSxTQUFTLEdBQWEsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEVBQUUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBRXRGLE1BQU0sSUFBSSxHQUFTLElBQUksSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDdkMsSUFBSSxFQUFFLFVBQVU7U0FDakIsQ0FBQyxDQUFDO1FBQ0gsU0FBUyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsR0FBRyxRQUFRLE9BQU8sQ0FBQyxDQUFDO0lBQzdDLENBQUM7K0dBOUZVLFdBQVc7bUhBQVgsV0FBVyxjQU5WLE1BQU07OzRGQU1QLFdBQVc7a0JBUHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgeGxzeCBmcm9tICd4bHN4JztcbmltcG9ydCAqIGFzIEZpbGVTYXZlciBmcm9tICdmaWxlLXNhdmVyJztcbmltcG9ydCB7IEV4cG9ydGFibGVDb2xsZWN0aW9uIH0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgRXhwb3J0RGF0YVRhYmxlIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2V4cG9ydC9leHBvcnQtZGF0YS10YWJsZSc7XG5cbmNvbnN0IEVYQ0VMX1RZUEU6IHN0cmluZyA9ICdhcHBsaWNhdGlvbi92bmQub3BlbnhtbGZvcm1hdHMtb2ZmaWNlZG9jdW1lbnQuc3ByZWFkc2hlZXRtbC5zaGVldDtjaGFyc2V0PVVURi04J1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcblxuLyoqXG4gKiBTZXJ2aWNlIHRvIHdvcmsgd2l0aCBYTFNYIChnZW5lcmF0ZSwgZG93bmxvYWQsIGUudC5jLilcbiAqL1xuZXhwb3J0IGNsYXNzIFhsc3hTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIEV4cG9ydCBmaWxlIGZvcm0gcHJvdmlkZWQgSFRNTCB0YWJsZXNcbiAgICovXG4gIGV4cG9ydFRhYmxlcyh0YWJsZXM6IE5vZGVMaXN0T2Y8SFRNTFRhYmxlRWxlbWVudD4sIHRpdGxlOiBzdHJpbmcsIGZpbGVOYW1lOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zdCBleGNlbEZpbGU6IEJsb2JQYXJ0ID0gdGhpcy5nZW5lcmF0ZUZyb21UYWJsZXModGFibGVzLCB0aXRsZSk7XG4gICAgY29uc3QgZGF0YTogQmxvYiA9IG5ldyBCbG9iKFtleGNlbEZpbGVdLCB7XG4gICAgICB0eXBlOiBFWENFTF9UWVBFXG4gICAgfSk7XG5cbiAgICBGaWxlU2F2ZXIuc2F2ZUFzKGRhdGEsIGAke2ZpbGVOYW1lfS54bHN4YCk7XG4gIH1cblxuICBwcml2YXRlIGdlbmVyYXRlRnJvbVRhYmxlcyh0YWJsZXM6IE5vZGVMaXN0T2Y8SFRNTFRhYmxlRWxlbWVudD4sIHRpdGxlPzogc3RyaW5nKTogQmxvYlBhcnQge1xuICAgIC8vIGNyZWF0ZSBuZXcgd29ya2Jvb2tcbiAgICBjb25zdCB3b3JrYm9vazogeGxzeC5Xb3JrQm9vayA9IHhsc3gudXRpbHMuYm9va19uZXcoKTtcbiAgICAvLyBjcmVhdGUgZW1wdHkgd29ya3NoZWV0XG4gICAgY29uc3Qgd29ya3NoZWV0OiB4bHN4LldvcmtTaGVldCA9IHtcbiAgICAgIFNoZWV0TmFtZXM6IFtdLFxuICAgICAgU2hlZXRzOiB7fVxuICAgIH07XG5cbiAgICB0YWJsZXMuZm9yRWFjaCgoZGF0YTogSFRNTFRhYmxlRWxlbWVudCkgPT4ge1xuICAgICAgLy8gYWRkIGNhcHRpb24gZm9yIHRoZSBjdXJyZW50IHRhYmxlXG4gICAgICB4bHN4LnV0aWxzLnNoZWV0X2FkZF9hb2Eod29ya3NoZWV0LCBbW2RhdGEuY2FwdGlvbj8uaW5uZXJUZXh0XV0sIHsgb3JpZ2luOiAtMSB9KTtcbiAgICAgIC8vIFByZXBhcmUgdG8gYWRkIHRhYmxlIGRhdGEgdG8gdGhlIHdvcmtzaGVldCwgcHJvY2Vzc2luZyBlYWNoIGNlbGxcbiAgICAgIGNvbnN0IHJvd3MgPSBBcnJheS5mcm9tKGRhdGEucm93cylcbiAgICAgICAgLm1hcCgocm93OiBIVE1MVGFibGVSb3dFbGVtZW50KSA9PiBBcnJheS5mcm9tKHJvdy5jZWxscykubWFwKGNlbGwgPT4gdGhpcy5odG1sVG9YbHNDZWxsKGNlbGwpKSk7XG4gICAgICAvLyBBZGQgdGhlIHByb2Nlc3NlZCB0YWJsZSBkYXRhIHRvIHRoZSB3b3Jrc2hlZXRcbiAgICAgIHhsc3gudXRpbHMuc2hlZXRfYWRkX2FvYSh3b3Jrc2hlZXQsIHJvd3MsIHsgb3JpZ2luOiAtMSB9KTtcbiAgICAgIC8vIHNldCBlbXB0eSByb3cgYWZ0ZXIgY3VycmVudCB0YWJsZVxuICAgICAgeGxzeC51dGlscy5zaGVldF9hZGRfYW9hKHdvcmtzaGVldCwgW10sIHsgb3JpZ2luOiAtMSB9KTtcbiAgICB9KTtcblxuICAgIHhsc3gudXRpbHMuYm9va19hcHBlbmRfc2hlZXQod29ya2Jvb2ssIHdvcmtzaGVldCk7XG4gICAgcmV0dXJuIHhsc3gud3JpdGUod29ya2Jvb2ssIHsgYm9va1R5cGU6ICd4bHN4JywgdHlwZTogJ2FycmF5JyB9KTtcbiAgfVxuXG4gIGh0bWxUb1hsc0NlbGwoY2VsbDogSFRNTFRhYmxlQ2VsbEVsZW1lbnQpOiBzdHJpbmcgfCBudW1iZXIge1xuICAgIGNvbnN0IGNlbGxWYWx1ZTogc3RyaW5nIHwgbnVtYmVyID0gY2VsbC5pbm5lclRleHQ7XG4gICAgLy8gcmVnZXggdG8gY2hlY2sgY3VycmVuY3kgdmFsdWVcbiAgICByZXR1cm4gL14tP1xcJC8udGVzdChjZWxsVmFsdWUpID8gdGhpcy5jdXJyZW5jeVRvTnVtYmVyKGNlbGxWYWx1ZSkgOiBjZWxsVmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogZnVuY3Rpb24gd2hpY2ggcmVjb252ZXJ0cyB2YWx1ZXMgZnJvbSBjdXN0b21DdXJyZW5jeVBpcGVcbiAgICogQHBhcmFtIGNlbGxWYWx1ZSAtIHN0cmluZyB3aXRoICQgYW5kIHBvc3NpYmx5IGNvbW1hLiAgJDEyMywxMjMuMDNcbiAgICogQHJldHVybnMgdmFsdWUgd2l0aG91dCAkIGFuZCBjb21tYS4gbGlrZSAxMjMxMjMuMDNcbiAgICovXG4gIGN1cnJlbmN5VG9OdW1iZXIoY2VsbFZhbHVlOiBzdHJpbmcpOiBudW1iZXIge1xuICAgIC8vIHJlbW92ZSBkb2xsYXIgc2lnbiBhbmQgY29tbWFcbiAgICBjZWxsVmFsdWUgPSBjZWxsVmFsdWUucmVwbGFjZSgvWyQsXS9nLCAnJyk7XG5cbiAgICByZXR1cm4gcGFyc2VGbG9hdChjZWxsVmFsdWUpO1xuICB9XG5cbiAgZ2V0RmlsZU5hbWUgPSAobmFtZTogc3RyaW5nKSA9PiB7XG4gICAgY29uc3Qgc2hlZXROYW1lID0gbmFtZSB8fCAnRXhwb3J0UmVzdWx0JztcbiAgICBjb25zdCBmaWxlTmFtZSA9IGAke3NoZWV0TmFtZX1gO1xuICAgIHJldHVybiB7XG4gICAgICBzaGVldE5hbWUsXG4gICAgICBmaWxlTmFtZVxuICAgIH07XG4gIH07XG5cbiAgLyoqXG4gICAqIEBUT0RPIHZpay9hcnRlbSB3b3JrIHdpdGggRXhwb3J0RGF0YVRhYmxlIGluc3RlYWQgb2YgRXhwb3J0YWJsZUNvbGxlY3Rpb25cbiAgICogQFRPRE8gdmlrL2FydGVtIHdoeSBzbyBtdWNoIGNvZGU/IGhlcmUgaXMgNiByb3dzIHNvbHV0aW9uIGh0dHBzOi8vc3RhY2tvdmVyZmxvdy5jb20vcXVlc3Rpb25zLzY0OTM5OTk0L2hvdy10by1leHBvcnQtYXJyYXktb2Ytb2JqZWN0cy10by1hbi1leGNlbC1pbi1hbmd1bGFyLThcbiAgICovXG4gIGV4cG9ydEFycmF5VG9FeGNlbChleHBvcnRhYmxlQ29sbGVjdGlvbjogRXhwb3J0YWJsZUNvbGxlY3Rpb248YW55PiwgbmFtZT86IHN0cmluZywgcGFyYW1zPyA6IGFueSkge1xuICAgIGNvbnN0IHdvcmtib29rOiB4bHN4LldvcmtCb29rID0geGxzeC51dGlscy5ib29rX25ldygpO1xuICAgIC8vIGNyZWF0ZSBlbXB0eSB3b3Jrc2hlZXRcbiAgICBjb25zdCB3b3Jrc2hlZXQ6IHhsc3guV29ya1NoZWV0ID0ge1xuICAgICAgU2hlZXROYW1lczogW10sXG4gICAgICBTaGVldHM6IHt9XG4gICAgfTtcblxuICAgIGNvbnN0IGV4cG9ydERhdGE6IEV4cG9ydERhdGFUYWJsZSA9IGV4cG9ydGFibGVDb2xsZWN0aW9uLmV4cG9ydChwYXJhbXMpXG4gICAgY29uc3QgZXhwb3J0QW9hID0gZXhwb3J0YWJsZUNvbGxlY3Rpb24uZ2V0Qm9keUFvYShleHBvcnREYXRhKTtcbiAgICBjb25zdCB7IHNoZWV0TmFtZSwgZmlsZU5hbWUgfSA9IHRoaXMuZ2V0RmlsZU5hbWUobmFtZSk7XG5cbiAgICB4bHN4LnV0aWxzLnNoZWV0X2FkZF9hb2Eod29ya3NoZWV0LCBbZXhwb3J0RGF0YS5oZWFkZXJdLCB7IG9yaWdpbjogLTEgfSk7XG4gICAgLy8gYWRkIHRhYmxlIHRhYmxlIGRhdGEgdG8gdGhlIHdvcmtzaGVldFxuICAgIHhsc3gudXRpbHMuc2hlZXRfYWRkX2FvYSh3b3Jrc2hlZXQsIGV4cG9ydEFvYSwgeyBvcmlnaW46IC0xIH0pO1xuICAgIC8vIHNldCBlbXB0eSByb3cgYWZ0ZXIgY3VycmVudCB0YWJsZVxuICAgIHhsc3gudXRpbHMuc2hlZXRfYWRkX2FvYSh3b3Jrc2hlZXQsIFtdLCB7IG9yaWdpbjogLTEgfSk7XG5cbiAgICB4bHN4LnV0aWxzLmJvb2tfYXBwZW5kX3NoZWV0KHdvcmtib29rLCB3b3Jrc2hlZXQpO1xuICAgIGNvbnN0IGV4Y2VsRmlsZTogQmxvYlBhcnQgPSB4bHN4LndyaXRlKHdvcmtib29rLCB7IGJvb2tUeXBlOiAneGxzeCcsIHR5cGU6ICdhcnJheScgfSk7XG5cbiAgICBjb25zdCBkYXRhOiBCbG9iID0gbmV3IEJsb2IoW2V4Y2VsRmlsZV0sIHtcbiAgICAgIHR5cGU6IEVYQ0VMX1RZUEVcbiAgICB9KTtcbiAgICBGaWxlU2F2ZXIuc2F2ZUFzKGRhdGEsIGAke2ZpbGVOYW1lfS54bHN4YCk7XG4gIH1cbn1cbiJdfQ==