@xsolla/payment-client-core 0.1.18 → 0.1.19

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.
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgTmV4dEFjdGlvbiB9IGZyb20gJy4vYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IENvbnRyb2xDb25maWcgfSBmcm9tICcuL2Zvcm0vY29udHJvbHMvY29udHJvbC1jb25maWcnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuaW50ZXJmYWNlJztcbmltcG9ydCB7IElucHV0RXZlbnROYW1lIH0gZnJvbSAnLi9mb3JtL2lucHV0LWV2ZW50LmVudW0nO1xuaW1wb3J0IHsgRm9ybUZpZWxkc1N0YXR1cyB9IGZyb20gJy4vZm9ybS9mb3JtLWZpZWxkcy1zdGF0dXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4vZm9ybS9mb3JtLXN0YXRlLmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUGF5bWVudCB7XG4gIGluaXRpYWxpemUoKTogUHJvbWlzZTxGaWVsZFtdPjtcbiAgc3VibWl0KCk6IFByb21pc2U8TmV4dEFjdGlvbiB8IG51bGwgfCB2b2lkPjtcbiAgZ2V0RmllbGRzKCk6IEZpZWxkW107XG4gIHZhbGlkYXRlKGZpZWxkOiBGaWVsZCk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+O1xuICBnZXRGaW5hbmNlRGV0YWlscygpOiBGaW5hbmNlRGV0YWlscyB8IG51bGw7XG4gIHJ1blRocmVlRHMoKTogdm9pZDtcbiAgZ2V0U3RhdHVzKCk6IFByb21pc2U8U3RhdHVzPjtcbiAgZm9ybToge1xuICAgIGZpZWxkc1N0YXR1cyQ6IE9ic2VydmFibGU8Rm9ybUZpZWxkc1N0YXR1cz47XG4gICAgY2hhbmdlRmllbGRWYWx1ZShuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpOiB2b2lkO1xuICAgIGdldENvbnRyb2xDb25maWcoZmllbGQ6IEZpZWxkKTogQ29udHJvbENvbmZpZyB8IG51bGw7XG4gICAgY2hhbmdlRmllbGRTdGF0ZShuYW1lOiBzdHJpbmcsIHN0YXRlOiBJbnB1dEV2ZW50TmFtZSk6IHZvaWQ7XG4gICAgdXBkYXRlRmllbGRGb3JtU3RhdGUoZmllbGROYW1lOiBzdHJpbmcsIGZvcm1TdGF0ZTogRm9ybVN0YXRlKTogdm9pZDtcbiAgICBmb3JtTWVzc2FnZXMkOiBPYnNlcnZhYmxlPHN0cmluZ1tdPjtcbiAgfTtcbiAgZmluYW5jZURldGFpbHNVcGRhdGVzJDogT2JzZXJ2YWJsZTxGaW5hbmNlRGV0YWlscz47XG59XG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbFN0YXR1cywgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5leHRBY3Rpb24gfSBmcm9tICcuL2FjdGlvbnMvbmV4dC1hY3Rpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vc3RhdHVzL3N0YXR1cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBDb250cm9sQ29uZmlnIH0gZnJvbSAnLi9mb3JtL2NvbnRyb2xzL2NvbnRyb2wtY29uZmlnJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzIH0gZnJvbSAnLi9maW5hbmNlLWRldGFpbHMvZmluYW5jZS1kZXRhaWxzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJbnB1dEV2ZW50TmFtZSB9IGZyb20gJy4vZm9ybS9pbnB1dC1ldmVudC5lbnVtJztcbmltcG9ydCB7IEZvcm1GaWVsZHNTdGF0dXMgfSBmcm9tICcuL2Zvcm0vZm9ybS1maWVsZHMtc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGb3JtU3RhdGUgfSBmcm9tICcuL2Zvcm0vZm9ybS1zdGF0ZS5pbnRlcmZhY2UnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFBheW1lbnQge1xuICBpbml0aWFsaXplKCk6IFByb21pc2U8RmllbGRbXT47XG4gIHN1Ym1pdCgpOiBQcm9taXNlPE5leHRBY3Rpb24gfCBudWxsIHwgdm9pZD47XG4gIGdldEZpZWxkcygpOiBGaWVsZFtdO1xuICB2YWxpZGF0ZShmaWVsZDogRmllbGQpOiBQcm9taXNlPFZhbGlkYXRpb25FcnJvcnMgfCBudWxsPjtcbiAgZ2V0RmluYW5jZURldGFpbHMoKTogRmluYW5jZURldGFpbHMgfCBudWxsO1xuICBydW5UaHJlZURzKCk6IHZvaWQ7XG4gIGdldFN0YXR1cygpOiBQcm9taXNlPFN0YXR1cz47XG4gIGZvcm06IHtcbiAgICBmaWVsZHNTdGF0dXMkOiBPYnNlcnZhYmxlPEZvcm1GaWVsZHNTdGF0dXM+O1xuICAgIGNoYW5nZUZpZWxkVmFsdWUobmFtZTogc3RyaW5nLCB2YWx1ZTogc3RyaW5nKTogdm9pZDtcbiAgICBnZXRDb250cm9sQ29uZmlnKGZpZWxkOiBGaWVsZCk6IENvbnRyb2xDb25maWcgfCBudWxsO1xuICAgIGNoYW5nZUZpZWxkU3RhdGUobmFtZTogc3RyaW5nLCBzdGF0ZTogSW5wdXRFdmVudE5hbWUpOiB2b2lkO1xuICAgIHVwZGF0ZUZpZWxkRm9ybVN0YXRlKGZpZWxkTmFtZTogc3RyaW5nLCBmb3JtU3RhdGU6IEZvcm1TdGF0ZSk6IHZvaWQ7XG4gICAgZm9ybU1lc3NhZ2VzJDogT2JzZXJ2YWJsZTxzdHJpbmdbXT47XG4gICAgZ2V0Rm9ybVN0YXR1cygpOiBGb3JtQ29udHJvbFN0YXR1cyB8IHVuZGVmaW5lZDtcbiAgfTtcbiAgZmluYW5jZURldGFpbHNVcGRhdGVzJDogT2JzZXJ2YWJsZTxGaW5hbmNlRGV0YWlscz47XG59XG4iXX0=
@@ -24,6 +24,7 @@ export class SyncService extends EmitDataService {
24
24
  this.prevFieldSyncStates = {};
25
25
  this.form = new UntypedFormGroup({});
26
26
  this.fields = [];
27
+ this.fieldSyncTimers = {};
27
28
  this.fieldAsyncValidation = new Subject();
28
29
  }
29
30
  get fieldAsyncValidation$() {
@@ -39,7 +40,7 @@ export class SyncService extends EmitDataService {
39
40
  this.form = new UntypedFormGroup({});
40
41
  this.fields = [];
41
42
  }
42
- async validate(field) {
43
+ async validate(field, delay = Number('750')) {
43
44
  if (!this.isReadyField(field)) {
44
45
  return Promise.resolve(null);
45
46
  }
@@ -55,15 +56,31 @@ export class SyncService extends EmitDataService {
55
56
  return response?.error ?? null;
56
57
  });
57
58
  }
58
- const requestPromise = this.request(field);
59
- this.setPrevFieldSyncState(field, value, requestPromise);
60
- return requestPromise.then((response) => {
61
- this.fieldAsyncValidation.next({
62
- value,
63
- field,
64
- response,
59
+ const updateFieldState = async () => {
60
+ const requestPromise = this.request(field);
61
+ this.setPrevFieldSyncState(field, value, requestPromise);
62
+ return requestPromise.then((response) => {
63
+ this.fieldAsyncValidation.next({
64
+ value,
65
+ field,
66
+ response,
67
+ });
68
+ return response.error ?? null;
65
69
  });
66
- return response.error ?? null;
70
+ };
71
+ return new Promise((resolve) => {
72
+ if (delay) {
73
+ const timerId = setTimeout(() => {
74
+ if (value !== control?.value) {
75
+ return resolve(null);
76
+ }
77
+ void updateFieldState().then((errors) => resolve(errors));
78
+ }, delay);
79
+ this.resetFieldSyncTimer(field, Number(timerId));
80
+ }
81
+ else {
82
+ void updateFieldState().then((errors) => resolve(errors));
83
+ }
67
84
  });
68
85
  }
69
86
  getSyncValidationErrors(field) {
@@ -104,6 +121,13 @@ export class SyncService extends EmitDataService {
104
121
  this.nextActionService.emitFlowUpdates(new ShowErrorsAction(formErrors));
105
122
  }
106
123
  }
124
+ resetFieldSyncTimer(field, timerId) {
125
+ const prevTimerId = this.fieldSyncTimers[field.name];
126
+ if (prevTimerId) {
127
+ clearTimeout(prevTimerId);
128
+ }
129
+ this.fieldSyncTimers[field.name] = timerId;
130
+ }
107
131
  }
108
132
  SyncService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, deps: [{ token: syncRequestFactoryToken }, { token: syncResponseFactoryToken }, { token: i1.XpsApiService }, { token: i2.NextActionService }, { token: i3.SettingsService }, { token: i4.XpsResponseErrorsMappingService }, { token: i5.EncryptCreditCardService }], target: i0.ɵɵFactoryTarget.Injectable });
109
133
  SyncService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, providedIn: 'root' });
@@ -119,4 +143,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
119
143
  type: Inject,
120
144
  args: [syncResponseFactoryToken]
121
145
  }] }, { type: i1.XpsApiService }, { type: i2.NextActionService }, { type: i3.SettingsService }, { type: i4.XpsResponseErrorsMappingService }, { type: i5.EncryptCreditCardService }]; } });
122
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJaEUsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFFTCx3QkFBd0IsR0FDekIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7OztBQVVuRixNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQTRCO0lBTTNELFlBRW1CLGNBQWtDLEVBRWxDLGVBQW9DLEVBQ3BDLGFBQTRCLEVBQzVCLGlCQUFvQyxFQUNwQyxlQUFnQyxFQUNoQywrQkFBZ0UsRUFDaEUsd0JBQWtEO1FBRW5FLEtBQUssRUFBRSxDQUFDO1FBVFMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBRWxDLG9CQUFlLEdBQWYsZUFBZSxDQUFxQjtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxvQ0FBK0IsR0FBL0IsK0JBQStCLENBQWlDO1FBQ2hFLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFkN0Qsd0JBQW1CLEdBQTRDLEVBQUUsQ0FBQztRQUNsRSxTQUFJLEdB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QUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztRQUUzRSxJQUFJLFVBQVUsRUFBRSxNQUFNLEVBQUU7WUFDdEIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxJQUFJLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUM7U0FDMUU7SUFDSCxDQUFDOzt3R0FoSVUsV0FBVyxrQkFPWix1QkFBdUIsYUFFdkIsd0JBQXdCOzRHQVR2QixXQUFXLGNBRlYsTUFBTTsyRkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBUUksTUFBTTsyQkFBQyx1QkFBdUI7OzBCQUU5QixNQUFNOzJCQUFDLHdCQUF3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVW50eXBlZEZvcm1Hcm91cCwgVmFsaWRhdGlvbkVycm9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uLy4uL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRW1pdERhdGFTZXJ2aWNlIH0gZnJvbSAnLi4vZW1pdC1kYXRhLnNlcnZpY2UuYWJzdHJhY3QnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuLi9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2UgfSBmcm9tICcuLi94cHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkU3luY1N0YXRlIH0gZnJvbSAnLi9maWVsZC1zeW5jLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBTeW5jUmVxdWVzdEZhY3RvcnksXG4gIHN5bmNSZXF1ZXN0RmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3JlcXVlc3Qvc3luYy1yZXF1ZXN0LnRva2VuJztcbmltcG9ydCB7IFN5bmNSZXNwb25zZSB9IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQge1xuICBTeW5jUmVzcG9uc2VGYWN0b3J5LFxuICBzeW5jUmVzcG9uc2VGYWN0b3J5VG9rZW4sXG59IGZyb20gJy4vcmVzcG9uc2Uvc3luYy1yZXNwb25zZS50b2tlbic7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4uL2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTaG93RXJyb3JzQWN0aW9uIH0gZnJvbSAnLi4vYWN0aW9ucy9zaG93LWVycm9ycy9zaG93LWVycm9ycy5hY3Rpb24uY2xhc3MnO1xuaW1wb3J0IHsgWHBzQXBpU2VydmljZSB9IGZyb20gJy4uL3hwcy1hcGkveHBzLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IEZpZWxkQXN5bmNWYWxpZGF0aW9uIH0gZnJvbSAnLi9maWVsZC1hc3luYy12YWxpZGF0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBFbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2UgfSBmcm9tICcuLi8uLi9lbmNyeXB0LWNyZWRpdC1jYXJkL2VuY3J5cHQtY3JlZGl0LWNhcmQuc2VydmljZSc7XG5pbXBvcnQgeyBTeW5jUmVxdWVzdCB9IGZyb20gJy4vcmVxdWVzdC9zeW5jLXJlcXVlc3QuY2xhc3MnO1xuaW1wb3J0IHsgWHBzUmVzcG9uc2VFcnJvcnNNYXBwaW5nU2VydmljZSB9IGZyb20gJy4uLy4uL2Vycm9ycy1tYXBwaW5nL3hwcy1yZXNwb25zZS1lcnJvcnMtbWFwcGluZy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFN5bmNTZXJ2aWNlIGV4dGVuZHMgRW1pdERhdGFTZXJ2aWNlPFhwc1Jlc3BvbnNlPiB7XG4gIHByaXZhdGUgcHJldkZpZWxkU3luY1N0YXRlczogeyBbZmllbGROYW1lOiBzdHJpbmddOiBGaWVsZFN5bmNTdGF0ZSB9ID0ge307XG4gIHByaXZhdGUgZm9ybTogVW50eXBlZEZvcm1Hcm91cCA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHt9KTtcbiAgcHJpdmF0ZSBmaWVsZHM6IEZpZWxkW10gPSBbXTtcbiAgcHJpdmF0ZSByZWFkb25seSBmaWVsZEFzeW5jVmFsaWRhdGlvbiA9IG5ldyBTdWJqZWN0PEZpZWxkQXN5bmNWYWxpZGF0aW9uPigpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHN5bmNSZXF1ZXN0RmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVxdWVzdEZhY3Rvcnk6IFN5bmNSZXF1ZXN0RmFjdG9yeSxcbiAgICBASW5qZWN0KHN5bmNSZXNwb25zZUZhY3RvcnlUb2tlbilcbiAgICBwcml2YXRlIHJlYWRvbmx5IHJlc3BvbnNlRmFjdG9yeTogU3luY1Jlc3BvbnNlRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHhwc0FwaVNlcnZpY2U6IFhwc0FwaVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXh0QWN0aW9uU2VydmljZTogTmV4dEFjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZXR0aW5nc1NlcnZpY2U6IFNldHRpbmdzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHhwc1Jlc3BvbnNlRXJyb3JzTWFwcGluZ1NlcnZpY2U6IFhwc1Jlc3BvbnNlRXJyb3JzTWFwcGluZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlbmNyeXB0Q3JlZGl0Q2FyZFNlcnZpY2U6IEVuY3J5cHRDcmVkaXRDYXJkU2VydmljZVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGdldCBmaWVsZEFzeW5jVmFsaWRhdGlvbiQoKTogT2JzZXJ2YWJsZTxGaWVsZEFzeW5jVmFsaWRhdGlvbj4ge1xuICAgIHJldHVybiB0aGlzLmZpZWxkQXN5bmNWYWxpZGF0aW9uLmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgcHVibGljIHNldHVwKGZvcm06IFVudHlwZWRGb3JtR3JvdXAsIGZpZWxkczogRmllbGRbXSk6IHZvaWQge1xuICAgIHRoaXMucmVzZXQoKTtcblxuICAgIHRoaXMuZm9ybSA9IGZvcm07XG4gICAgdGhpcy5maWVsZHMgPSBmaWVsZHM7XG4gIH1cblxuICBwdWJsaWMgcmVzZXQoKTogdm9pZCB7XG4gICAgdGhpcy5wcmV2RmllbGRTeW5jU3RhdGVzID0ge307XG4gICAgdGhpcy5mb3JtID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuICAgIHRoaXMuZmllbGRzID0gW107XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgdmFsaWRhdGUoZmllbGQ6IEZpZWxkKTogUHJvbWlzZTxWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbD4ge1xuICAgIGlmICghdGhpcy5pc1JlYWR5RmllbGQoZmllbGQpKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIGNvbnN0IHZhbHVlID0gY29udHJvbD8udmFsdWU7XG4gICAgY29uc3QgcHJldkZpZWxkU3RhdGUgPSB0aGlzLmdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZCk7XG5cbiAgICBjb25zdCBpc0luaXRpYWxWYWx1ZSA9IHZhbHVlID09PSBmaWVsZC52YWx1ZSAmJiAhcHJldkZpZWxkU3RhdGU7XG5cbiAgICBpZiAoaXNJbml0aWFsVmFsdWUpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUobnVsbCk7XG4gICAgfVxuXG4gICAgaWYgKHByZXZGaWVsZFN0YXRlICYmIHZhbHVlID09PSBwcmV2RmllbGRTdGF0ZS52YWx1ZSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShwcmV2RmllbGRTdGF0ZS5yZXN1bHQpLnRoZW4oKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiByZXNwb25zZT8uZXJyb3IgPz8gbnVsbDtcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGNvbnN0IHJlcXVlc3RQcm9taXNlID0gdGhpcy5yZXF1ZXN0KGZpZWxkKTtcblxuICAgIHRoaXMuc2V0UHJldkZpZWxkU3luY1N0YXRlKGZpZWxkLCB2YWx1ZSwgcmVxdWVzdFByb21pc2UpO1xuXG4gICAgcmV0dXJuIHJlcXVlc3RQcm9taXNlLnRoZW4oKHJlc3BvbnNlOiBTeW5jUmVzcG9uc2UpID0+IHtcbiAgICAgIHRoaXMuZmllbGRBc3luY1ZhbGlkYXRpb24ubmV4dCh7XG4gICAgICAgIHZhbHVlLFxuICAgICAgICBmaWVsZCxcbiAgICAgICAgcmVzcG9uc2UsXG4gICAgICB9KTtcblxuICAgICAgcmV0dXJuIHJlc3BvbnNlLmVycm9yID8/IG51bGw7XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3luY1ZhbGlkYXRpb25FcnJvcnMoZmllbGQ6IEZpZWxkKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIHJldHVybiBjb250cm9sPy5lcnJvcnMgPz8gbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyByZXF1ZXN0KGZpZWxkOiBGaWVsZCk6IFByb21pc2U8U3luY1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtcyA9IHRoaXMucmVxdWVzdEZhY3Rvcnkoe1xuICAgICAgdG9rZW46IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnRva2VuLFxuICAgICAgY2hhbmdlZEZpZWxkOiBmaWVsZCxcbiAgICAgIGZpZWxkczogdGhpcy5maWVsZHMsXG4gICAgICBmb3JtOiB0aGlzLmZvcm0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBlbmNyeXB0ZWRSZXF1ZXN0ID1cbiAgICAgIHRoaXMuZW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlLmVuY3J5cHRDcmVkaXRDYXJkPFN5bmNSZXF1ZXN0PihcbiAgICAgICAgcmVxdWVzdFBhcmFtc1xuICAgICAgKTtcblxuICAgIHJldHVybiB0aGlzLnhwc0FwaVNlcnZpY2VcbiAgICAgIC5kaXJlY3RQYXltZW50UmVxdWVzdChlbmNyeXB0ZWRSZXF1ZXN0KVxuICAgICAgLnRoZW4oKHhwc1Jlc3BvbnNlOiBYcHNSZXNwb25zZSkgPT4ge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9XG4gICAgICAgICAgdGhpcy54cHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlLm1hcEVycm9ycyh4cHNSZXNwb25zZSk7XG5cbiAgICAgICAgdGhpcy5lbWl0Rm9ybUVycm9ycyhyZXNwb25zZSk7XG4gICAgICAgIHRoaXMuZW1pdChyZXNwb25zZSk7XG4gICAgICAgIHJldHVybiB0aGlzLnJlc3BvbnNlRmFjdG9yeShmaWVsZCwgcmVzcG9uc2UpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzUmVhZHlGaWVsZChmaWVsZDogRmllbGQpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc1N5bmNFbmFibGVkID0gISFmaWVsZC5qYXZhc2NyaXB0Py5jaGFuZ2U7XG4gICAgY29uc3QgaXNFeGlzdHNJbkZvcm0gPSAhIXRoaXMuZm9ybT8uZ2V0KGZpZWxkLm5hbWUpO1xuXG4gICAgcmV0dXJuIGlzU3luY0VuYWJsZWQgJiYgaXNFeGlzdHNJbkZvcm07XG4gIH1cblxuICBwcml2YXRlIGdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZDogRmllbGQpOiBGaWVsZFN5bmNTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMucHJldkZpZWxkU3luY1N0YXRlc1tmaWVsZC5uYW1lXTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJldkZpZWxkU3luY1N0YXRlKFxuICAgIGZpZWxkOiBGaWVsZCxcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICByZXN1bHQ6IFByb21pc2U8U3luY1Jlc3BvbnNlPlxuICApOiB2b2lkIHtcbiAgICB0aGlzLnByZXZGaWVsZFN5bmNTdGF0ZXNbZmllbGQubmFtZV0gPSB7IHZhbHVlLCByZXN1bHQgfTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvcm1FcnJvcnMocmVzcG9uc2U6IFhwc1Jlc3BvbnNlKTogdm9pZCB7XG4gICAgY29uc3QgZm9ybUVycm9ycyA9IHJlc3BvbnNlLmVycm9ycz8uZmlsdGVyKChlcnJvcikgPT4gIWVycm9yLmVsZW1lbnRfbmFtZSk7XG5cbiAgICBpZiAoZm9ybUVycm9ycz8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmVtaXRGbG93VXBkYXRlcyhuZXcgU2hvd0Vycm9yc0FjdGlvbihmb3JtRXJyb3JzKSk7XG4gICAgfVxuICB9XG59XG4iXX0=
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luYy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zeW5jL3N5bmMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEUsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUUzQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFJaEUsT0FBTyxFQUVMLHVCQUF1QixHQUN4QixNQUFNLDhCQUE4QixDQUFDO0FBRXRDLE9BQU8sRUFFTCx3QkFBd0IsR0FDekIsTUFBTSxnQ0FBZ0MsQ0FBQztBQUV4QyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpREFBaUQsQ0FBQzs7Ozs7OztBQVVuRixNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQTRCO0lBTzNELFlBRW1CLGNBQWtDLEVBRWxDLGVBQW9DLEVBQ3BDLGFBQTRCLEVBQzVCLGlCQUFvQyxFQUNwQyxlQUFnQyxFQUNoQywrQkFBZ0UsRUFDaEUsd0JBQWtEO1FBRW5FLEtBQUssRUFBRSxDQUFDO1FBVFMsbUJBQWMsR0FBZCxjQUFjLENBQW9CO1FBRWxDLG9CQUFlLEdBQWYsZUFBZSxDQUFxQjtRQUNwQyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM1QixzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxvQ0FBK0IsR0FBL0IsK0JBQStCLENBQWlDO1FBQ2hFLDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBMEI7UUFmN0Qsd0JBQW1CLEdBQTRDLEVBQUUsQ0FBQztRQUNsRSxTQUFJLEdB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V0FBVyxHQUFXLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTdELElBQUksV0FBVyxFQUFFO1lBQ2YsWUFBWSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzNCO1FBRUQsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsT0FBTyxDQUFDO0lBQzdDLENBQUM7O3dHQXhLVSxXQUFXLGtCQVFaLHVCQUF1QixhQUV2Qix3QkFBd0I7NEdBVnZCLFdBQVcsY0FGVixNQUFNOzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLHVCQUF1Qjs7MEJBRTlCLE1BQU07MkJBQUMsd0JBQXdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVbnR5cGVkRm9ybUdyb3VwLCBWYWxpZGF0aW9uRXJyb3JzIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBFbWl0RGF0YVNlcnZpY2UgfSBmcm9tICcuLi9lbWl0LWRhdGEuc2VydmljZS5hYnN0cmFjdCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4uL2ZpZWxkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBYcHNSZXNwb25zZSB9IGZyb20gJy4uL3hwcy1yZXNwb25zZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmllbGRTeW5jU3RhdGUgfSBmcm9tICcuL2ZpZWxkLXN5bmMtc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIFN5bmNSZXF1ZXN0RmFjdG9yeSxcbiAgc3luY1JlcXVlc3RGYWN0b3J5VG9rZW4sXG59IGZyb20gJy4vcmVxdWVzdC9zeW5jLXJlcXVlc3QudG9rZW4nO1xuaW1wb3J0IHsgU3luY1Jlc3BvbnNlIH0gZnJvbSAnLi9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7XG4gIFN5bmNSZXNwb25zZUZhY3RvcnksXG4gIHN5bmNSZXNwb25zZUZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9yZXNwb25zZS9zeW5jLXJlc3BvbnNlLnRva2VuJztcbmltcG9ydCB7IE5leHRBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFNob3dFcnJvcnNBY3Rpb24gfSBmcm9tICcuLi9hY3Rpb25zL3Nob3ctZXJyb3JzL3Nob3ctZXJyb3JzLmFjdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBYcHNBcGlTZXJ2aWNlIH0gZnJvbSAnLi4veHBzLWFwaS94cHMtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmllbGRBc3luY1ZhbGlkYXRpb24gfSBmcm9tICcuL2ZpZWxkLWFzeW5jLXZhbGlkYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IEVuY3J5cHRDcmVkaXRDYXJkU2VydmljZSB9IGZyb20gJy4uLy4uL2VuY3J5cHQtY3JlZGl0LWNhcmQvZW5jcnlwdC1jcmVkaXQtY2FyZC5zZXJ2aWNlJztcbmltcG9ydCB7IFN5bmNSZXF1ZXN0IH0gZnJvbSAnLi9yZXF1ZXN0L3N5bmMtcmVxdWVzdC5jbGFzcyc7XG5pbXBvcnQgeyBYcHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZXJyb3JzLW1hcHBpbmcveHBzLXJlc3BvbnNlLWVycm9ycy1tYXBwaW5nLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgU3luY1NlcnZpY2UgZXh0ZW5kcyBFbWl0RGF0YVNlcnZpY2U8WHBzUmVzcG9uc2U+IHtcbiAgcHJpdmF0ZSBwcmV2RmllbGRTeW5jU3RhdGVzOiB7IFtmaWVsZE5hbWU6IHN0cmluZ106IEZpZWxkU3luY1N0YXRlIH0gPSB7fTtcbiAgcHJpdmF0ZSBmb3JtOiBVbnR5cGVkRm9ybUdyb3VwID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoe30pO1xuICBwcml2YXRlIGZpZWxkczogRmllbGRbXSA9IFtdO1xuICBwcml2YXRlIGZpZWxkU3luY1RpbWVyczogeyBbZmllbGROYW1lOiBzdHJpbmddOiBudW1iZXIgfSA9IHt9O1xuICBwcml2YXRlIHJlYWRvbmx5IGZpZWxkQXN5bmNWYWxpZGF0aW9uID0gbmV3IFN1YmplY3Q8RmllbGRBc3luY1ZhbGlkYXRpb24+KCk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3Qoc3luY1JlcXVlc3RGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXF1ZXN0RmFjdG9yeTogU3luY1JlcXVlc3RGYWN0b3J5LFxuICAgIEBJbmplY3Qoc3luY1Jlc3BvbnNlRmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzcG9uc2VGYWN0b3J5OiBTeW5jUmVzcG9uc2VGYWN0b3J5LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgeHBzQXBpU2VydmljZTogWHBzQXBpU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgeHBzUmVzcG9uc2VFcnJvcnNNYXBwaW5nU2VydmljZTogWHBzUmVzcG9uc2VFcnJvcnNNYXBwaW5nU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVuY3J5cHRDcmVkaXRDYXJkU2VydmljZTogRW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpZWxkQXN5bmNWYWxpZGF0aW9uJCgpOiBPYnNlcnZhYmxlPEZpZWxkQXN5bmNWYWxpZGF0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuZmllbGRBc3luY1ZhbGlkYXRpb24uYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwdWJsaWMgc2V0dXAoZm9ybTogVW50eXBlZEZvcm1Hcm91cCwgZmllbGRzOiBGaWVsZFtdKTogdm9pZCB7XG4gICAgdGhpcy5yZXNldCgpO1xuXG4gICAgdGhpcy5mb3JtID0gZm9ybTtcbiAgICB0aGlzLmZpZWxkcyA9IGZpZWxkcztcbiAgfVxuXG4gIHB1YmxpYyByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLnByZXZGaWVsZFN5bmNTdGF0ZXMgPSB7fTtcbiAgICB0aGlzLmZvcm0gPSBuZXcgVW50eXBlZEZvcm1Hcm91cCh7fSk7XG4gICAgdGhpcy5maWVsZHMgPSBbXTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB2YWxpZGF0ZShcbiAgICBmaWVsZDogRmllbGQsXG4gICAgZGVsYXkgPSBOdW1iZXIoJzc1MCcpXG4gICk6IFByb21pc2U8VmFsaWRhdGlvbkVycm9ycyB8IG51bGw+IHtcbiAgICBpZiAoIXRoaXMuaXNSZWFkeUZpZWxkKGZpZWxkKSkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShudWxsKTtcbiAgICB9XG5cbiAgICBjb25zdCBjb250cm9sID0gdGhpcy5mb3JtLmdldChmaWVsZC5uYW1lKTtcbiAgICBjb25zdCB2YWx1ZSA9IGNvbnRyb2w/LnZhbHVlO1xuICAgIGNvbnN0IHByZXZGaWVsZFN0YXRlID0gdGhpcy5nZXRQcmV2RmllbGRTeW5jU3RhdGUoZmllbGQpO1xuXG4gICAgY29uc3QgaXNJbml0aWFsVmFsdWUgPSB2YWx1ZSA9PT0gZmllbGQudmFsdWUgJiYgIXByZXZGaWVsZFN0YXRlO1xuXG4gICAgaWYgKGlzSW5pdGlhbFZhbHVlKSB7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKG51bGwpO1xuICAgIH1cblxuICAgIGlmIChwcmV2RmllbGRTdGF0ZSAmJiB2YWx1ZSA9PT0gcHJldkZpZWxkU3RhdGUudmFsdWUpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUocHJldkZpZWxkU3RhdGUucmVzdWx0KS50aGVuKChyZXNwb25zZSkgPT4ge1xuICAgICAgICByZXR1cm4gcmVzcG9uc2U/LmVycm9yID8/IG51bGw7XG4gICAgICB9KTtcbiAgICB9XG5cbiAgICBjb25zdCB1cGRhdGVGaWVsZFN0YXRlID0gYXN5bmMgKCk6IFByb21pc2U8XG4gICAgICBzdHJpbmcgfCBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbFxuICAgID4gPT4ge1xuICAgICAgY29uc3QgcmVxdWVzdFByb21pc2UgPSB0aGlzLnJlcXVlc3QoZmllbGQpO1xuXG4gICAgICB0aGlzLnNldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZCwgdmFsdWUsIHJlcXVlc3RQcm9taXNlKTtcblxuICAgICAgcmV0dXJuIHJlcXVlc3RQcm9taXNlLnRoZW4oKHJlc3BvbnNlOiBTeW5jUmVzcG9uc2UpID0+IHtcbiAgICAgICAgdGhpcy5maWVsZEFzeW5jVmFsaWRhdGlvbi5uZXh0KHtcbiAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICBmaWVsZCxcbiAgICAgICAgICByZXNwb25zZSxcbiAgICAgICAgfSk7XG5cbiAgICAgICAgcmV0dXJuIHJlc3BvbnNlLmVycm9yID8/IG51bGw7XG4gICAgICB9KTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBpZiAoZGVsYXkpIHtcbiAgICAgICAgY29uc3QgdGltZXJJZCA9IHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgIGlmICh2YWx1ZSAhPT0gY29udHJvbD8udmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybiByZXNvbHZlKG51bGwpO1xuICAgICAgICAgIH1cblxuICAgICAgICAgIHZvaWQgdXBkYXRlRmllbGRTdGF0ZSgpLnRoZW4oXG4gICAgICAgICAgICAoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB8IHN0cmluZykgPT5cbiAgICAgICAgICAgICAgcmVzb2x2ZShlcnJvcnMgYXMgVmFsaWRhdGlvbkVycm9ycylcbiAgICAgICAgICApO1xuICAgICAgICB9LCBkZWxheSk7XG5cbiAgICAgICAgdGhpcy5yZXNldEZpZWxkU3luY1RpbWVyKGZpZWxkLCBOdW1iZXIodGltZXJJZCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdm9pZCB1cGRhdGVGaWVsZFN0YXRlKCkudGhlbihcbiAgICAgICAgICAoZXJyb3JzOiBWYWxpZGF0aW9uRXJyb3JzIHwgbnVsbCB8IHN0cmluZykgPT5cbiAgICAgICAgICAgIHJlc29sdmUoZXJyb3JzIGFzIFZhbGlkYXRpb25FcnJvcnMpXG4gICAgICAgICk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0U3luY1ZhbGlkYXRpb25FcnJvcnMoZmllbGQ6IEZpZWxkKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzLmZvcm0uZ2V0KGZpZWxkLm5hbWUpO1xuICAgIHJldHVybiBjb250cm9sPy5lcnJvcnMgPz8gbnVsbDtcbiAgfVxuXG4gIHByb3RlY3RlZCBhc3luYyByZXF1ZXN0KGZpZWxkOiBGaWVsZCk6IFByb21pc2U8U3luY1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtcyA9IHRoaXMucmVxdWVzdEZhY3Rvcnkoe1xuICAgICAgdG9rZW46IHRoaXMuc2V0dGluZ3NTZXJ2aWNlLnRva2VuLFxuICAgICAgY2hhbmdlZEZpZWxkOiBmaWVsZCxcbiAgICAgIGZpZWxkczogdGhpcy5maWVsZHMsXG4gICAgICBmb3JtOiB0aGlzLmZvcm0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBlbmNyeXB0ZWRSZXF1ZXN0ID1cbiAgICAgIHRoaXMuZW5jcnlwdENyZWRpdENhcmRTZXJ2aWNlLmVuY3J5cHRDcmVkaXRDYXJkPFN5bmNSZXF1ZXN0PihcbiAgICAgICAgcmVxdWVzdFBhcmFtc1xuICAgICAgKTtcblxuICAgIHJldHVybiB0aGlzLnhwc0FwaVNlcnZpY2VcbiAgICAgIC5kaXJlY3RQYXltZW50UmVxdWVzdChlbmNyeXB0ZWRSZXF1ZXN0KVxuICAgICAgLnRoZW4oKHhwc1Jlc3BvbnNlOiBYcHNSZXNwb25zZSkgPT4ge1xuICAgICAgICBjb25zdCByZXNwb25zZSA9XG4gICAgICAgICAgdGhpcy54cHNSZXNwb25zZUVycm9yc01hcHBpbmdTZXJ2aWNlLm1hcEVycm9ycyh4cHNSZXNwb25zZSk7XG5cbiAgICAgICAgdGhpcy5lbWl0Rm9ybUVycm9ycyhyZXNwb25zZSk7XG4gICAgICAgIHRoaXMuZW1pdChyZXNwb25zZSk7XG4gICAgICAgIHJldHVybiB0aGlzLnJlc3BvbnNlRmFjdG9yeShmaWVsZCwgcmVzcG9uc2UpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGlzUmVhZHlGaWVsZChmaWVsZDogRmllbGQpOiBib29sZWFuIHtcbiAgICBjb25zdCBpc1N5bmNFbmFibGVkID0gISFmaWVsZC5qYXZhc2NyaXB0Py5jaGFuZ2U7XG4gICAgY29uc3QgaXNFeGlzdHNJbkZvcm0gPSAhIXRoaXMuZm9ybT8uZ2V0KGZpZWxkLm5hbWUpO1xuXG4gICAgcmV0dXJuIGlzU3luY0VuYWJsZWQgJiYgaXNFeGlzdHNJbkZvcm07XG4gIH1cblxuICBwcml2YXRlIGdldFByZXZGaWVsZFN5bmNTdGF0ZShmaWVsZDogRmllbGQpOiBGaWVsZFN5bmNTdGF0ZSB7XG4gICAgcmV0dXJuIHRoaXMucHJldkZpZWxkU3luY1N0YXRlc1tmaWVsZC5uYW1lXTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0UHJldkZpZWxkU3luY1N0YXRlKFxuICAgIGZpZWxkOiBGaWVsZCxcbiAgICB2YWx1ZTogdW5rbm93bixcbiAgICByZXN1bHQ6IFByb21pc2U8U3luY1Jlc3BvbnNlPlxuICApOiB2b2lkIHtcbiAgICB0aGlzLnByZXZGaWVsZFN5bmNTdGF0ZXNbZmllbGQubmFtZV0gPSB7IHZhbHVlLCByZXN1bHQgfTtcbiAgfVxuXG4gIHByaXZhdGUgZW1pdEZvcm1FcnJvcnMocmVzcG9uc2U6IFhwc1Jlc3BvbnNlKTogdm9pZCB7XG4gICAgY29uc3QgZm9ybUVycm9ycyA9IHJlc3BvbnNlLmVycm9ycz8uZmlsdGVyKChlcnJvcikgPT4gIWVycm9yLmVsZW1lbnRfbmFtZSk7XG5cbiAgICBpZiAoZm9ybUVycm9ycz8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmVtaXRGbG93VXBkYXRlcyhuZXcgU2hvd0Vycm9yc0FjdGlvbihmb3JtRXJyb3JzKSk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSByZXNldEZpZWxkU3luY1RpbWVyKGZpZWxkOiBGaWVsZCwgdGltZXJJZDogbnVtYmVyKTogdm9pZCB7XG4gICAgY29uc3QgcHJldlRpbWVySWQ6IG51bWJlciA9IHRoaXMuZmllbGRTeW5jVGltZXJzW2ZpZWxkLm5hbWVdO1xuXG4gICAgaWYgKHByZXZUaW1lcklkKSB7XG4gICAgICBjbGVhclRpbWVvdXQocHJldlRpbWVySWQpO1xuICAgIH1cblxuICAgIHRoaXMuZmllbGRTeW5jVGltZXJzW2ZpZWxkLm5hbWVdID0gdGltZXJJZDtcbiAgfVxufVxuIl19
@@ -18,6 +18,9 @@ export class PaymentMethodsService {
18
18
  }
19
19
  async getList(isSaveMethodMode) {
20
20
  const response = await this.request(isSaveMethodMode);
21
+ if (this.isFixedPaymentMethod) {
22
+ return this.filterMethodsByFixedPaymentMethod(response.remained);
23
+ }
21
24
  return response.remained;
22
25
  }
23
26
  async getQuickMethods() {
@@ -46,6 +49,14 @@ export class PaymentMethodsService {
46
49
  // @ts-expect-error the map already has the cache with key
47
50
  return this.cache.get(cacheKey);
48
51
  }
52
+ filterMethodsByFixedPaymentMethod(methods) {
53
+ const fixedPid = this.settingsService.purchase?.payment_system?.id;
54
+ const paymentMethod = methods.find((method) => method.id === fixedPid);
55
+ return paymentMethod ? [paymentMethod] : [];
56
+ }
57
+ get isFixedPaymentMethod() {
58
+ return !!this.settingsService.purchase?.payment_system?.id;
59
+ }
49
60
  }
50
61
  PaymentMethodsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PaymentMethodsService, deps: [{ token: paymentMethodsResponseFactoryToken }, { token: i1.SettingsService }, { token: i2.CountryService }, { token: i3.SecureApiClient }], target: i0.ɵɵFactoryTarget.Injectable });
51
62
  PaymentMethodsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PaymentMethodsService, providedIn: 'root' });
@@ -58,4 +69,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
58
69
  type: Inject,
59
70
  args: [paymentMethodsResponseFactoryToken]
60
71
  }] }, { type: i1.SettingsService }, { type: i2.CountryService }, { type: i3.SecureApiClient }]; } });
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1tZXRob2RzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50LW1ldGhvZHMvcGF5bWVudC1tZXRob2RzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQU9uRixPQUFPLEVBRUwsa0NBQWtDLEdBQ25DLE1BQU0sa0NBQWtDLENBQUM7Ozs7O0FBTTFDLE1BQU0sT0FBTyxxQkFBcUI7SUFLaEMsWUFFbUIsZUFBOEMsRUFDOUMsZUFBZ0MsRUFDaEMsY0FBOEIsRUFDOUIsU0FBMEI7UUFIMUIsb0JBQWUsR0FBZixlQUFlLENBQStCO1FBQzlDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFUNUIsYUFBUSxHQUFHLDBCQUEwQixDQUFDO1FBRXRDLFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBMkMsQ0FBQztJQVF6RSxDQUFDO0lBRUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBMEI7UUFDN0MsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDdEQsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZTtRQUMxQixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QyxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVPLEtBQUssQ0FBQyxPQUFPLENBQ25CLGdCQUEwQjtRQUUxQixNQUFNLGFBQWEsR0FBZ0M7WUFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSztZQUN4QyxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUU7WUFDekMseUJBQXlCLEVBQUUsZ0JBQWdCO2dCQUN6QyxDQUFDO2dCQUNELENBQUMsMkJBQWlCO1NBQ3JCLENBQUM7UUFDRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRS9DLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDWixRQUFRLEVBQ1IsYUFBYSxDQUNYLElBQUksQ0FBQyxTQUFTO2lCQUNYLElBQUksQ0FDSCxJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxFQUN6QztnQkFDRSxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQzVCLGNBQWMsRUFDZCxrREFBa0QsQ0FDbkQ7Z0JBQ0QsWUFBWSxFQUFFLE1BQU07YUFDckIsQ0FDRjtpQkFDQSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNsRSxDQUNKLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUU7Z0JBQ3ZCLE1BQU0sSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtRQUVELDBEQUEwRDtRQUMxRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7O2tIQTlEVSxxQkFBcUIsa0JBTXRCLGtDQUFrQztzSEFOakMscUJBQXFCLGNBRnBCLE1BQU07MkZBRVAscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT0ksTUFBTTsyQkFBQyxrQ0FBa0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgbGFzdFZhbHVlRnJvbSwgbWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb3VudHJ5U2VydmljZSB9IGZyb20gJy4uL2NvdW50cnkvY291bnRyeS5zZXJ2aWNlJztcbmltcG9ydCB7IFJlc3BvbnNlRXJyb3IgfSBmcm9tICcuLi9leGNlcHRpb25zLWhhbmRsaW5nL2Vycm9ycy9yZXNwb25zZS1lcnJvci5jbGFzcyc7XG5pbXBvcnQgeyBTZWN1cmVBcGlDbGllbnQgfSBmcm9tICcuLi9odHRwL3NlY3VyZS1hcGkvc2VjdXJlLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4uL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vcGF5bWVudC1tZXRob2QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RzUmVxdWVzdFBhcmFtcyB9IGZyb20gJy4vcGF5bWVudC1tZXRob2RzLXJlcXVlc3QtcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kc1Jlc3BvbnNlIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZHMtcmVzcG9uc2UuY2xhc3MnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZHNSZXNwb25zZUFwaSB9IGZyb20gJy4vcGF5bWVudC1tZXRob2RzLXJlc3BvbnNlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBQYXltZW50TWV0aG9kc1Jlc3BvbnNlRmFjdG9yeSxcbiAgcGF5bWVudE1ldGhvZHNSZXNwb25zZUZhY3RvcnlUb2tlbixcbn0gZnJvbSAnLi9wYXltZW50LW1ldGhvZHMtcmVzcG9uc2UudG9rZW4nO1xuaW1wb3J0IHsgWHBzQm9vbGVhbiB9IGZyb20gJy4uL3hwcy1ib29sZWFuLmVudW0nO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgUGF5bWVudE1ldGhvZHNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSByZWFkb25seSBhcGlSb3V0ZSA9ICdyZW1haW5lZF9wYXltZW50X21ldGhvZHMnO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY2FjaGUgPSBuZXcgTWFwPHN0cmluZywgUHJvbWlzZTxQYXltZW50TWV0aG9kc1Jlc3BvbnNlPj4oKTtcblxuICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChwYXltZW50TWV0aG9kc1Jlc3BvbnNlRmFjdG9yeVRva2VuKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVzcG9uc2VGYWN0b3J5OiBQYXltZW50TWV0aG9kc1Jlc3BvbnNlRmFjdG9yeSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY291bnRyeVNlcnZpY2U6IENvdW50cnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2VjdXJlQXBpOiBTZWN1cmVBcGlDbGllbnRcbiAgKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBnZXRMaXN0KGlzU2F2ZU1ldGhvZE1vZGU/OiBib29sZWFuKTogUHJvbWlzZTxQYXltZW50TWV0aG9kW10+IHtcbiAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMucmVxdWVzdChpc1NhdmVNZXRob2RNb2RlKTtcbiAgICByZXR1cm4gcmVzcG9uc2UucmVtYWluZWQ7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0UXVpY2tNZXRob2RzKCk6IFByb21pc2U8UGF5bWVudE1ldGhvZFtdPiB7XG4gICAgY29uc3QgcmVzcG9uc2UgPSBhd2FpdCB0aGlzLnJlcXVlc3QoKTtcbiAgICByZXR1cm4gcmVzcG9uc2UuZXNwZWNpYWw7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIHJlcXVlc3QoXG4gICAgaXNTYXZlTWV0aG9kTW9kZT86IGJvb2xlYW5cbiAgKTogUHJvbWlzZTxQYXltZW50TWV0aG9kc1Jlc3BvbnNlPiB7XG4gICAgY29uc3QgcmVxdWVzdFBhcmFtczogUGF5bWVudE1ldGhvZHNSZXF1ZXN0UGFyYW1zID0ge1xuICAgICAgYWNjZXNzX3Rva2VuOiB0aGlzLnNldHRpbmdzU2VydmljZS50b2tlbixcbiAgICAgIGNvdW50cnk6IHRoaXMuY291bnRyeVNlcnZpY2UuZ2V0Q291bnRyeSgpLFxuICAgICAgc2F2ZV9wYXltZW50X2FjY291bnRfb25seTogaXNTYXZlTWV0aG9kTW9kZVxuICAgICAgICA/IFhwc0Jvb2xlYW4udHJ1ZVxuICAgICAgICA6IFhwc0Jvb2xlYW4uZmFsc2UsXG4gICAgfTtcbiAgICBjb25zdCBjYWNoZUtleSA9IEpTT04uc3RyaW5naWZ5KHJlcXVlc3RQYXJhbXMpO1xuXG4gICAgaWYgKCF0aGlzLmNhY2hlLmhhcyhjYWNoZUtleSkpIHtcbiAgICAgIHRoaXMuY2FjaGUuc2V0KFxuICAgICAgICBjYWNoZUtleSxcbiAgICAgICAgbGFzdFZhbHVlRnJvbShcbiAgICAgICAgICB0aGlzLnNlY3VyZUFwaVxuICAgICAgICAgICAgLnBvc3Q8UGF5bWVudE1ldGhvZHNSZXNwb25zZUFwaT4oXG4gICAgICAgICAgICAgIHRoaXMuYXBpUm91dGUsXG4gICAgICAgICAgICAgIG5ldyBVUkxTZWFyY2hQYXJhbXMoeyAuLi5yZXF1ZXN0UGFyYW1zIH0pLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgaGVhZGVyczogbmV3IEh0dHBIZWFkZXJzKCkuc2V0KFxuICAgICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZScsXG4gICAgICAgICAgICAgICAgICAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkOyBjaGFyc2V0PXV0Zi04J1xuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICBtYXAoKHJlc3BvbnNlKSA9PiB0aGlzLnJlc3BvbnNlRmFjdG9yeShyZXNwb25zZS5wYXltZW50X21ldGhvZHMpKVxuICAgICAgICAgICAgKVxuICAgICAgICApLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgICAgICB0aHJvdyBuZXcgUmVzcG9uc2VFcnJvcihlcnJvci5tZXNzYWdlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gICAgfVxuXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvciB0aGUgbWFwIGFscmVhZHkgaGFzIHRoZSBjYWNoZSB3aXRoIGtleVxuICAgIHJldHVybiB0aGlzLmNhY2hlLmdldChjYWNoZUtleSk7XG4gIH1cbn1cbiJdfQ==
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF5bWVudC1tZXRob2RzLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS9wYXltZW50LW1ldGhvZHMvcGF5bWVudC1tZXRob2RzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRTFDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQU9uRixPQUFPLEVBRUwsa0NBQWtDLEdBQ25DLE1BQU0sa0NBQWtDLENBQUM7Ozs7O0FBTTFDLE1BQU0sT0FBTyxxQkFBcUI7SUFLaEMsWUFFbUIsZUFBOEMsRUFDOUMsZUFBZ0MsRUFDaEMsY0FBOEIsRUFDOUIsU0FBMEI7UUFIMUIsb0JBQWUsR0FBZixlQUFlLENBQStCO1FBQzlDLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsY0FBUyxHQUFULFNBQVMsQ0FBaUI7UUFUNUIsYUFBUSxHQUFHLDBCQUEwQixDQUFDO1FBRXRDLFVBQUssR0FBRyxJQUFJLEdBQUcsRUFBMkMsQ0FBQztJQVF6RSxDQUFDO0lBRUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxnQkFBMEI7UUFDN0MsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFFdEQsSUFBSSxJQUFJLENBQUMsb0JBQW9CLEVBQUU7WUFDN0IsT0FBTyxJQUFJLENBQUMsaUNBQWlDLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ2xFO1FBRUQsT0FBTyxRQUFRLENBQUMsUUFBUSxDQUFDO0lBQzNCLENBQUM7SUFFTSxLQUFLLENBQUMsZUFBZTtRQUMxQixNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUN0QyxPQUFPLFFBQVEsQ0FBQyxRQUFRLENBQUM7SUFDM0IsQ0FBQztJQUVPLEtBQUssQ0FBQyxPQUFPLENBQ25CLGdCQUEwQjtRQUUxQixNQUFNLGFBQWEsR0FBZ0M7WUFDakQsWUFBWSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSztZQUN4QyxPQUFPLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxVQUFVLEVBQUU7WUFDekMseUJBQXlCLEVBQUUsZ0JBQWdCO2dCQUN6QyxDQUFDO2dCQUNELENBQUMsMkJBQWlCO1NBQ3JCLENBQUM7UUFDRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRS9DLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsRUFBRTtZQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDWixRQUFRLEVBQ1IsYUFBYSxDQUNYLElBQUksQ0FBQyxTQUFTO2lCQUNYLElBQUksQ0FDSCxJQUFJLENBQUMsUUFBUSxFQUNiLElBQUksZUFBZSxDQUFDLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQyxFQUN6QztnQkFDRSxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQzVCLGNBQWMsRUFDZCxrREFBa0QsQ0FDbkQ7Z0JBQ0QsWUFBWSxFQUFFLE1BQU07YUFDckIsQ0FDRjtpQkFDQSxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUNsRSxDQUNKLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUU7Z0JBQ3ZCLE1BQU0sSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3pDLENBQUMsQ0FBQyxDQUNILENBQUM7U0FDSDtRQUVELDBEQUEwRDtRQUMxRCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTyxpQ0FBaUMsQ0FDdkMsT0FBd0I7UUFFeEIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxRQUFRLEVBQUUsY0FBYyxFQUFFLEVBQUUsQ0FBQztRQUNuRSxNQUFNLGFBQWEsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsRUFBRSxLQUFLLFFBQVEsQ0FBQyxDQUFDO1FBRXZFLE9BQU8sYUFBYSxDQUFDLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQVksb0JBQW9CO1FBQzlCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxFQUFFLENBQUM7SUFDN0QsQ0FBQzs7a0hBaEZVLHFCQUFxQixrQkFNdEIsa0NBQWtDO3NIQU5qQyxxQkFBcUIsY0FGcEIsTUFBTTsyRkFFUCxxQkFBcUI7a0JBSGpDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPSSxNQUFNOzJCQUFDLGtDQUFrQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBIZWFkZXJzIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tLCBtYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IENvdW50cnlTZXJ2aWNlIH0gZnJvbSAnLi4vY291bnRyeS9jb3VudHJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUmVzcG9uc2VFcnJvciB9IGZyb20gJy4uL2V4Y2VwdGlvbnMtaGFuZGxpbmcvZXJyb3JzL3Jlc3BvbnNlLWVycm9yLmNsYXNzJztcbmltcG9ydCB7IFNlY3VyZUFwaUNsaWVudCB9IGZyb20gJy4uL2h0dHAvc2VjdXJlLWFwaS9zZWN1cmUtYXBpLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZHNSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZHMtcmVxdWVzdC1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RzUmVzcG9uc2UgfSBmcm9tICcuL3BheW1lbnQtbWV0aG9kcy1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kc1Jlc3BvbnNlQXBpIH0gZnJvbSAnLi9wYXltZW50LW1ldGhvZHMtcmVzcG9uc2UuaW50ZXJmYWNlJztcbmltcG9ydCB7XG4gIFBheW1lbnRNZXRob2RzUmVzcG9uc2VGYWN0b3J5LFxuICBwYXltZW50TWV0aG9kc1Jlc3BvbnNlRmFjdG9yeVRva2VuLFxufSBmcm9tICcuL3BheW1lbnQtbWV0aG9kcy1yZXNwb25zZS50b2tlbic7XG5pbXBvcnQgeyBYcHNCb29sZWFuIH0gZnJvbSAnLi4veHBzLWJvb2xlYW4uZW51bSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxufSlcbmV4cG9ydCBjbGFzcyBQYXltZW50TWV0aG9kc1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVJvdXRlID0gJ3JlbWFpbmVkX3BheW1lbnRfbWV0aG9kcyc7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBjYWNoZSA9IG5ldyBNYXA8c3RyaW5nLCBQcm9taXNlPFBheW1lbnRNZXRob2RzUmVzcG9uc2U+PigpO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBASW5qZWN0KHBheW1lbnRNZXRob2RzUmVzcG9uc2VGYWN0b3J5VG9rZW4pXG4gICAgcHJpdmF0ZSByZWFkb25seSByZXNwb25zZUZhY3Rvcnk6IFBheW1lbnRNZXRob2RzUmVzcG9uc2VGYWN0b3J5LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3VudHJ5U2VydmljZTogQ291bnRyeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWN1cmVBcGk6IFNlY3VyZUFwaUNsaWVudFxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGdldExpc3QoaXNTYXZlTWV0aG9kTW9kZT86IGJvb2xlYW4pOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5yZXF1ZXN0KGlzU2F2ZU1ldGhvZE1vZGUpO1xuXG4gICAgaWYgKHRoaXMuaXNGaXhlZFBheW1lbnRNZXRob2QpIHtcbiAgICAgIHJldHVybiB0aGlzLmZpbHRlck1ldGhvZHNCeUZpeGVkUGF5bWVudE1ldGhvZChyZXNwb25zZS5yZW1haW5lZCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHJlc3BvbnNlLnJlbWFpbmVkO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGdldFF1aWNrTWV0aG9kcygpOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5yZXF1ZXN0KCk7XG4gICAgcmV0dXJuIHJlc3BvbnNlLmVzcGVjaWFsO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyByZXF1ZXN0KFxuICAgIGlzU2F2ZU1ldGhvZE1vZGU/OiBib29sZWFuXG4gICk6IFByb21pc2U8UGF5bWVudE1ldGhvZHNSZXNwb25zZT4ge1xuICAgIGNvbnN0IHJlcXVlc3RQYXJhbXM6IFBheW1lbnRNZXRob2RzUmVxdWVzdFBhcmFtcyA9IHtcbiAgICAgIGFjY2Vzc190b2tlbjogdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9rZW4sXG4gICAgICBjb3VudHJ5OiB0aGlzLmNvdW50cnlTZXJ2aWNlLmdldENvdW50cnkoKSxcbiAgICAgIHNhdmVfcGF5bWVudF9hY2NvdW50X29ubHk6IGlzU2F2ZU1ldGhvZE1vZGVcbiAgICAgICAgPyBYcHNCb29sZWFuLnRydWVcbiAgICAgICAgOiBYcHNCb29sZWFuLmZhbHNlLFxuICAgIH07XG4gICAgY29uc3QgY2FjaGVLZXkgPSBKU09OLnN0cmluZ2lmeShyZXF1ZXN0UGFyYW1zKTtcblxuICAgIGlmICghdGhpcy5jYWNoZS5oYXMoY2FjaGVLZXkpKSB7XG4gICAgICB0aGlzLmNhY2hlLnNldChcbiAgICAgICAgY2FjaGVLZXksXG4gICAgICAgIGxhc3RWYWx1ZUZyb20oXG4gICAgICAgICAgdGhpcy5zZWN1cmVBcGlcbiAgICAgICAgICAgIC5wb3N0PFBheW1lbnRNZXRob2RzUmVzcG9uc2VBcGk+KFxuICAgICAgICAgICAgICB0aGlzLmFwaVJvdXRlLFxuICAgICAgICAgICAgICBuZXcgVVJMU2VhcmNoUGFyYW1zKHsgLi4ucmVxdWVzdFBhcmFtcyB9KSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnLFxuICAgICAgICAgICAgICAgICAgJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZDsgY2hhcnNldD11dGYtOCdcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICApXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgbWFwKChyZXNwb25zZSkgPT4gdGhpcy5yZXNwb25zZUZhY3RvcnkocmVzcG9uc2UucGF5bWVudF9tZXRob2RzKSlcbiAgICAgICAgICAgIClcbiAgICAgICAgKS5jYXRjaCgoZXJyb3I6IEVycm9yKSA9PiB7XG4gICAgICAgICAgdGhyb3cgbmV3IFJlc3BvbnNlRXJyb3IoZXJyb3IubWVzc2FnZSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICAgIH1cblxuICAgIC8vIEB0cy1leHBlY3QtZXJyb3IgdGhlIG1hcCBhbHJlYWR5IGhhcyB0aGUgY2FjaGUgd2l0aCBrZXlcbiAgICByZXR1cm4gdGhpcy5jYWNoZS5nZXQoY2FjaGVLZXkpO1xuICB9XG5cbiAgcHJpdmF0ZSBmaWx0ZXJNZXRob2RzQnlGaXhlZFBheW1lbnRNZXRob2QoXG4gICAgbWV0aG9kczogUGF5bWVudE1ldGhvZFtdXG4gICk6IFBheW1lbnRNZXRob2RbXSB7XG4gICAgY29uc3QgZml4ZWRQaWQgPSB0aGlzLnNldHRpbmdzU2VydmljZS5wdXJjaGFzZT8ucGF5bWVudF9zeXN0ZW0/LmlkO1xuICAgIGNvbnN0IHBheW1lbnRNZXRob2QgPSBtZXRob2RzLmZpbmQoKG1ldGhvZCkgPT4gbWV0aG9kLmlkID09PSBmaXhlZFBpZCk7XG5cbiAgICByZXR1cm4gcGF5bWVudE1ldGhvZCA/IFtwYXltZW50TWV0aG9kXSA6IFtdO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXQgaXNGaXhlZFBheW1lbnRNZXRob2QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5zZXR0aW5nc1NlcnZpY2UucHVyY2hhc2U/LnBheW1lbnRfc3lzdGVtPy5pZDtcbiAgfVxufVxuIl19
@@ -74,6 +74,7 @@ export class CoreLibraryService {
74
74
  changeFieldState: (name, state) => this.paymentService.changeFieldState(name, state),
75
75
  updateFieldFormState: (fieldName, formState) => this.paymentService.updateFieldFormState(fieldName, formState),
76
76
  formMessages$: this.formMessagesService.data$,
77
+ getFormStatus: () => this.paymentService.form?.status,
77
78
  },
78
79
  };
79
80
  }
@@ -112,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
112
113
  providedIn: 'root',
113
114
  }]
114
115
  }], ctorParameters: function () { return [{ type: i1.SettingsService }, { type: i2.CountryService }, { type: i3.PaymentMethodsService }, { type: i4.SavedMethodsService }, { type: i5.UserBalanceService }, { type: i6.PaymentConfigService }, { type: i7.PaymentService }, { type: i8.DeviceFingerPrintService }, { type: i9.FinanceDetailsService }, { type: i10.LegalService }, { type: i11.StatusService }, { type: i12.NextActionService }, { type: i13.CreditCardService }, { type: i14.CreditCardStateService }, { type: i15.FormMessagesService }, { type: i16.EditSavedMethodsService }]; } });
115
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1saWJyYXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS1saWJyYXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQW1CM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCNUUsTUFBTSxPQUFPLGtCQUFrQjtJQWU3QixZQUNtQixlQUFnQyxFQUNoQyxjQUE4QixFQUM5QixxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLGtCQUFzQyxFQUN0QyxvQkFBMEMsRUFDMUMsY0FBOEIsRUFDOUIsd0JBQWtELEVBQ2xELHFCQUE0QyxFQUM1QyxZQUEwQixFQUMxQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxtQkFBd0MsRUFDeEMsdUJBQWdEO1FBZmhELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFt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QyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUN2RCxPQUFPLGlCQUFpQixDQUFDLGFBQWEsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFTSxtQkFBbUI7UUFDeEIsT0FBTyxJQUFJLENBQUMsa0JBQWtCLENBQUMsbUJBQW1CLEVBQUUsQ0FBQztJQUN2RCxDQUFDOzsrR0EvR1Usa0JBQWtCO21IQUFsQixrQkFBa0IsY0FGakIsTUFBTTsyRkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSW5pdENvbmZpZ3VyYXRpb24gfSBmcm9tICcuL2NvcmUvc2V0dGluZ3MvY29uZmlndXJhdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3NldHRpbmdzL3NldHRpbmdzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ291bnRyeVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvY291bnRyeS9jb3VudHJ5LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZHNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQtbWV0aG9kcy9wYXltZW50LW1ldGhvZHMuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50TWV0aG9kIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQtbWV0aG9kcy9wYXltZW50LW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2F2ZWRNZXRob2RzU2VydmljZSB9IGZyb20gJy4vY29yZS9zYXZlZC1tZXRob2RzL3NhdmVkLW1ldGhvZHMuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlZE1ldGhvZCB9IGZyb20gJy4vY29yZS9zYXZlZC1tZXRob2RzL3NhdmVkLW1ldGhvZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVXNlckJhbGFuY2VSZXNwb25zZSB9IGZyb20gJy4vY29yZS91c2VyLWJhbGFuY2UvdXNlci1iYWxhbmNlLXJlc3BvbnNlLmNsYXNzJztcbmltcG9ydCB7IFVzZXJCYWxhbmNlU2VydmljZSB9IGZyb20gJy4vY29yZS91c2VyLWJhbGFuY2UvdXNlci1iYWxhbmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudENvbmZpZyB9IGZyb20gJy4vY29yZS9wYXltZW50L3BheW1lbnQtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQYXltZW50U2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L3BheW1lbnQuc2VydmljZSc7XG5pbXBvcnQgeyBQYXltZW50IH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvcGF5bWVudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmllbGQgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9maWVsZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRGV2aWNlRmluZ2VyUHJpbnRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2RldmljZS1maW5nZXItcHJpbnQvZGV2aWNlLWZpbmdlci1wcmludC5zZXJ2aWNlJztcbmltcG9ydCB7IExlZ2FsU2VydmljZSB9IGZyb20gJy4vY29yZS9sZWdhbC9sZWdhbC5zZXJ2aWNlJztcbmltcG9ydCB7IExlZ2FsQ29tcG9uZW50Q29uZmlnIH0gZnJvbSAnLi9jb3JlL2xlZ2FsL2xlZ2FsLmNvbXBvbmVudC5jb25maWcnO1xuaW1wb3J0IHsgTmV4dEFjdGlvblNlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9hY3Rpb25zL25leHQtYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZmluYW5jZS1kZXRhaWxzL2ZpbmFuY2UtZGV0YWlscy5zZXJ2aWNlJztcbmltcG9ydCB7IG1hc2tzRnVuY3Rpb25zTWFwIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS9tYXNrcy1mdW5jdGlvbnMubWFwJztcbmltcG9ydCB7IFBheW1lbnRDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4vY29yZS9wYXltZW50L3N0YXR1cy9zdGF0dXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN0YXR1c1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9zdGF0dXMvc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvY3JlZGl0LWNhcmQvY3JlZGl0LWNhcmQuc2VydmljZSc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkVHlwZXMgfSBmcm9tICcuL2NvcmUvY3JlZGl0LWNhcmQvY3JlZGl0LWNhcmQtdHlwZXMuZW51bSc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkIH0gZnJvbSAnLi9jb3JlL2NyZWRpdC1jYXJkL2NyZWRpdC1jYXJkLmludGVyZmFjZSc7XG5pbXBvcnQgeyBJbnB1dEV2ZW50TmFtZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2Zvcm0vaW5wdXQtZXZlbnQuZW51bSc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkU3RhdGVTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvY3JlZGl0LWNhcmQtc3RhdGUvY3JlZGl0LWNhcmQtc3RhdGUuc2VydmljZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDcmVkaXRDYXJkU3RhdGUgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9jcmVkaXQtY2FyZC1zdGF0ZS9jcmVkaXQtY2FyZC1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRm9ybVN0YXRlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS9mb3JtLXN0YXRlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGaW5hbmNlRGV0YWlscyB9IGZyb20gJy4vY29yZS9wYXltZW50L2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuaW50ZXJmYWNlJztcbmltcG9ydCB7IE5leHRBY3Rpb24gfSBmcm9tICcuL2NvcmUvcGF5bWVudC9hY3Rpb25zL25leHQtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBCYWxhbmNlIH0gZnJvbSAnLi9jb3JlL3NldHRpbmdzL2JhbGFuY2UuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcm1NZXNzYWdlc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9mb3JtLW1lc3NhZ2VzL2Zvcm0tbWVzc2FnZXMuc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0U2F2ZWRNZXRob2RzU2VydmljZSB9IGZyb20gJy4vY29yZS9lZGl0LXNhdmVkLW1ldGhvZHMvZWRpdC1zYXZlZC1tZXRob2RzLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgQ29yZUxpYnJhcnlTZXJ2aWNlIHtcbiAgcHVibGljIHBheW1lbnRNZXRob2RzID0ge1xuICAgIGdldExpc3Q6IGFzeW5jIChpc1NhdmVNZXRob2RNb2RlPzogYm9vbGVhbik6IFByb21pc2U8UGF5bWVudE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5wYXltZW50TWV0aG9kc1NlcnZpY2UuZ2V0TGlzdChpc1NhdmVNZXRob2RNb2RlKSxcblxuICAgIGdldFF1aWNrTWV0aG9kczogYXN5bmMgKCk6IFByb21pc2U8UGF5bWVudE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5wYXltZW50TWV0aG9kc1NlcnZpY2UuZ2V0UXVpY2tNZXRob2RzKCksXG4gICAgZ2V0U2F2ZWRNZXRob2RzOiBhc3luYyAoKTogUHJvbWlzZTxTYXZlZE1ldGhvZFtdPiA9PlxuICAgICAgdGhpcy5zYXZlZE1ldGhvZHNTZXJ2aWNlLmdldExpc3QoKSxcbiAgICBnZXRVc2VyQmFsYW5jZTogYXN5bmMgKCk6IFByb21pc2U8VXNlckJhbGFuY2VSZXNwb25zZT4gPT5cbiAgICAgIHRoaXMudXNlckJhbGFuY2VTZXJ2aWNlLmdldFVzZXJCYWxhbmNlKCksXG4gICAgZGVsZXRlU2F2ZWRNZXRob2Q6IGFzeW5jIChpZDogbnVtYmVyLCB0eXBlOiBzdHJpbmcpOiBQcm9taXNlPGJvb2xlYW4+ID0+XG4gICAgICB0aGlzLmVkaXRTYXZlZE1ldGhvZHNTZXJ2aWNlLmRlbGV0ZVNhdmVkTWV0aG9kUmVxdWVzdChpZCwgdHlwZSksXG4gIH07XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjb3VudHJ5U2VydmljZTogQ291bnRyeVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50TWV0aG9kc1NlcnZpY2U6IFBheW1lbnRNZXRob2RzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNhdmVkTWV0aG9kc1NlcnZpY2U6IFNhdmVkTWV0aG9kc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSB1c2VyQmFsYW5jZVNlcnZpY2U6IFVzZXJCYWxhbmNlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBheW1lbnRDb25maWdTZXJ2aWNlOiBQYXltZW50Q29uZmlnU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHBheW1lbnRTZXJ2aWNlOiBQYXltZW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRldmljZUZpbmdlclByaW50U2VydmljZTogRGV2aWNlRmluZ2VyUHJpbnRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZmluYW5jZURldGFpbHNTZXJ2aWNlOiBGaW5hbmNlRGV0YWlsc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBsZWdhbFNlcnZpY2U6IExlZ2FsU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1NlcnZpY2U6IFN0YXR1c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBuZXh0QWN0aW9uU2VydmljZTogTmV4dEFjdGlvblNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjcmVkaXRDYXJkU2VydmljZTogQ3JlZGl0Q2FyZFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBjcmVkaXRDYXJkU3RhdGVTZXJ2aWNlOiBDcmVkaXRDYXJkU3RhdGVTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZm9ybU1lc3NhZ2VzU2VydmljZTogRm9ybU1lc3NhZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGVkaXRTYXZlZE1ldGhvZHNTZXJ2aWNlOiBFZGl0U2F2ZWRNZXRob2RzU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIGFzeW5jIGluaXQoY29uZmlndXJhdGlvbjogSW5pdENvbmZpZ3VyYXRpb24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnNldHRpbmdzU2VydmljZS5pbml0KGNvbmZpZ3VyYXRpb24pO1xuICAgIHRoaXMuZGV2aWNlRmluZ2VyUHJpbnRTZXJ2aWNlLmluaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBnZXRTdGF0dXModXJsPzogc3RyaW5nKTogUHJvbWlzZTxTdGF0dXM+IHtcbiAgICByZXR1cm4gdGhpcy5zdGF0dXNTZXJ2aWNlLmdldFN0YXR1c1dpdGhVcmxTZWFyY2hQYXJhbXModXJsKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRDb3VudHJ5KGNvdW50cnk6IHN0cmluZyk6IHZvaWQge1xuICAgIHRoaXMuY291bnRyeVNlcnZpY2Uuc2V0Q291bnRyeShjb3VudHJ5KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDb3VudHJ5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY291bnRyeVNlcnZpY2UuZ2V0Q291bnRyeSgpO1xuICB9XG5cbiAgcHVibGljIGNyZWF0ZVBheW1lbnQoY29uZmlnOiBQYXltZW50Q29uZmlnKTogUGF5bWVudCB7XG4gICAgY29uc3QgZW5yaWNoZWRDb25maWcgPSB0aGlzLnBheW1lbnRDb25maWdTZXJ2aWNlLmVucmljaChjb25maWcpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIGluaXRpYWxpemU6IGFzeW5jICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuaW5pdGlhbGl6ZShlbnJpY2hlZENvbmZpZyksXG4gICAgICBzdWJtaXQ6IGFzeW5jICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2Uuc3VibWl0KCksXG4gICAgICBnZXRGaWVsZHM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RmllbGRzKCksXG4gICAgICB2YWxpZGF0ZTogYXN5bmMgKGZpZWxkOiBGaWVsZCkgPT4gdGhpcy5wYXltZW50U2VydmljZS52YWxpZGF0ZShmaWVsZCksXG4gICAgICBnZXRGaW5hbmNlRGV0YWlsczogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5nZXRGaW5hbmNlRGV0YWlscygpLFxuICAgICAgcnVuVGhyZWVEczogKCkgPT4gdGhpcy5wYXltZW50U2VydmljZS5ydW5UaHJlZURzKCksXG4gICAgICBnZXRTdGF0dXM6IGFzeW5jICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0U3RhdHVzKCksXG4gICAgICBmaW5hbmNlRGV0YWlsc1VwZGF0ZXMkOiB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5kYXRhJCxcbiAgICAgIGZvcm06IHtcbiAgICAgICAgZmllbGRzU3RhdHVzJDogdGhpcy5wYXltZW50U2VydmljZS5mb3JtRmllbGRzU3RhdHVzJCxcbiAgICAgICAgZ2V0Q29udHJvbENvbmZpZzogKGZpZWxkOiBGaWVsZCkgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldEZpZWxkQ29uZmlnKGZpZWxkKSxcbiAgICAgICAgY2hhbmdlRmllbGRWYWx1ZTogKG5hbWU6IHN0cmluZywgdmFsdWU6IHN0cmluZykgPT5cbiAgICAgICAgICB0aGlzLnBheW1lbnRTZXJ2aWNlLmNoYW5nZUZpZWxkVmFsdWUobmFtZSwgdmFsdWUpLFxuICAgICAgICBjaGFuZ2VGaWVsZFN0YXRlOiAobmFtZTogc3RyaW5nLCBzdGF0ZTogSW5wdXRFdmVudE5hbWUpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5jaGFuZ2VGaWVsZFN0YXRlKG5hbWUsIHN0YXRlKSxcbiAgICAgICAgdXBkYXRlRmllbGRGb3JtU3RhdGU6IChmaWVsZE5hbWU6IHN0cmluZywgZm9ybVN0YXRlOiBGb3JtU3RhdGUpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS51cGRhdGVGaWVsZEZvcm1TdGF0ZShmaWVsZE5hbWUsIGZvcm1TdGF0ZSksXG4gICAgICAgIGZvcm1NZXNzYWdlcyQ6IHRoaXMuZm9ybU1lc3NhZ2VzU2VydmljZS5kYXRhJCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRDcmVkaXRDYXJkU2VydmljZSgpOiBDcmVkaXRDYXJkIHtcbiAgICByZXR1cm4ge1xuICAgICAgZ2V0VHlwZUJ5TnVtYmVyOiAoY2FyZE51bWJlcjogc3RyaW5nKSA9PlxuICAgICAgICB0aGlzLmNyZWRpdENhcmRTZXJ2aWNlLmdldFR5cGVCeU51bWJlcihjYXJkTnVtYmVyKSxcbiAgICAgIGdldENyZWRpdENhcmRTZXR0aW5nczogKGNhcmRUeXBlOiBDcmVkaXRDYXJkVHlwZXMpID0+XG4gICAgICAgIHRoaXMuY3JlZGl0Q2FyZFNlcnZpY2UuZ2V0Q3JlZGl0Q2FyZFNldHRpbmdzKGNhcmRUeXBlKSxcbiAgICAgIGNhcmRUeXBlVXBkYXRlcyQ6IHRoaXMuY3JlZGl0Q2FyZFN0YXRlU2VydmljZS5kYXRhJCxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldCBmbG93VXBkYXRlcyQoKTogT2JzZXJ2YWJsZTxOZXh0QWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMubmV4dEFjdGlvblNlcnZpY2UuZmxvd1VwZGF0ZXMkO1xuICB9XG5cbiAgcHVibGljIGdldCBmaW5hbmNlRGV0YWlsc1VwZGF0ZXMkKCk6IE9ic2VydmFibGU8RmluYW5jZURldGFpbHM+IHtcbiAgICByZXR1cm4gdGhpcy5maW5hbmNlRGV0YWlsc1NlcnZpY2UuZGF0YSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGNhcmRUeXBlVXBkYXRlcyQoKTogT2JzZXJ2YWJsZTxDcmVkaXRDYXJkU3RhdGU+IHtcbiAgICByZXR1cm4gdGhpcy5jcmVkaXRDYXJkU3RhdGVTZXJ2aWNlLmRhdGEkO1xuICB9XG5cbiAgcHVibGljIGdldExlZ2FsQ29tcG9uZW50Q29uZmlnKCk6IExlZ2FsQ29tcG9uZW50Q29uZmlnIHtcbiAgICByZXR1cm4gdGhpcy5sZWdhbFNlcnZpY2UuZ2V0TGVnYWxDb21wb25lbnRDb25maWcoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRGaWVsZE1hc2soZmllbGQ6IEZpZWxkKTogdW5kZWZpbmVkIHwgKCgpID0+IHN0cmluZykge1xuICAgIGNvbnN0IHNhbml0aXplZE5hbWUgPSBmaWVsZC5uYW1lLnJlcGxhY2UoL15maXhfL2ksICcnKTtcbiAgICByZXR1cm4gbWFza3NGdW5jdGlvbnNNYXBbc2FuaXRpemVkTmFtZV07XG4gIH1cblxuICBwdWJsaWMgZ2V0VXNlckJhbGFuY2VWYWx1ZSgpOiBCYWxhbmNlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMudXNlckJhbGFuY2VTZXJ2aWNlLmdldFVzZXJCYWxhbmNlVmFsdWUoKTtcbiAgfVxufVxuIl19
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29yZS1saWJyYXJ5LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wYWNrYWdlcy9wYXltZW50LWNsaWVudC1jb3JlL3NyYy9saWIvY29yZS1saWJyYXJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQW1CM0MsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQXFCNUUsTUFBTSxPQUFPLGtCQUFrQjtJQWU3QixZQUNtQixlQUFnQyxFQUNoQyxjQUE4QixFQUM5QixxQkFBNEMsRUFDNUMsbUJBQXdDLEVBQ3hDLGtCQUFzQyxFQUN0QyxvQkFBMEMsRUFDMUMsY0FBOEIsRUFDOUIsd0JBQWtELEVBQ2xELHFCQUE0QyxFQUM1QyxZQUEwQixFQUMxQixhQUE0QixFQUM1QixpQkFBb0MsRUFDcEMsaUJBQW9DLEVBQ3BDLHNCQUE4QyxFQUM5QyxtQkFBd0MsRUFDeEMsdUJBQWdEO1FBZmhELG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1Qyx3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFDdEMseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFzQjtRQUMxQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDOUIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCwwQkFBcUIsR0FBckIscUJBQXFCLENBQXVCO1FBQzVDLGlCQUFZLEdBQVosWUFBWSxDQUFjO1FBQzFCLGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQzVCLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBbUI7UUFDcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFt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RSxDQUFDO0lBQ3JELENBQUM7SUFFTSxZQUFZLENBQUMsS0FBWTtRQUM5QixNQUFNLGFBQWEsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDdkQsT0FBTyxpQkFBaUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRU0sbUJBQW1CO1FBQ3hCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDdkQsQ0FBQzs7K0dBaEhVLGtCQUFrQjttSEFBbEIsa0JBQWtCLGNBRmpCLE1BQU07MkZBRVAsa0JBQWtCO2tCQUg5QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEluaXRDb25maWd1cmF0aW9uIH0gZnJvbSAnLi9jb3JlL3NldHRpbmdzL2NvbmZpZ3VyYXRpb24uaW50ZXJmYWNlJztcbmltcG9ydCB7IFNldHRpbmdzU2VydmljZSB9IGZyb20gJy4vY29yZS9zZXR0aW5ncy9zZXR0aW5ncy5zZXJ2aWNlJztcbmltcG9ydCB7IENvdW50cnlTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2NvdW50cnkvY291bnRyeS5zZXJ2aWNlJztcbmltcG9ydCB7IFBheW1lbnRNZXRob2RzU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50LW1ldGhvZHMvcGF5bWVudC1tZXRob2RzLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudE1ldGhvZCB9IGZyb20gJy4vY29yZS9wYXltZW50LW1ldGhvZHMvcGF5bWVudC1tZXRob2QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNhdmVkTWV0aG9kc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvc2F2ZWQtbWV0aG9kcy9zYXZlZC1tZXRob2RzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2F2ZWRNZXRob2QgfSBmcm9tICcuL2NvcmUvc2F2ZWQtbWV0aG9kcy9zYXZlZC1tZXRob2QuaW50ZXJmYWNlJztcbmltcG9ydCB7IFVzZXJCYWxhbmNlUmVzcG9uc2UgfSBmcm9tICcuL2NvcmUvdXNlci1iYWxhbmNlL3VzZXItYmFsYW5jZS1yZXNwb25zZS5jbGFzcyc7XG5pbXBvcnQgeyBVc2VyQmFsYW5jZVNlcnZpY2UgfSBmcm9tICcuL2NvcmUvdXNlci1iYWxhbmNlL3VzZXItYmFsYW5jZS5zZXJ2aWNlJztcbmltcG9ydCB7IFBheW1lbnRDb25maWcgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9wYXltZW50LWNvbmZpZy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGF5bWVudFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9wYXltZW50LnNlcnZpY2UnO1xuaW1wb3J0IHsgUGF5bWVudCB9IGZyb20gJy4vY29yZS9wYXltZW50L3BheW1lbnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZpZWxkIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZmllbGQuaW50ZXJmYWNlJztcbmltcG9ydCB7IERldmljZUZpbmdlclByaW50U2VydmljZSB9IGZyb20gJy4vY29yZS9kZXZpY2UtZmluZ2VyLXByaW50L2RldmljZS1maW5nZXItcHJpbnQuc2VydmljZSc7XG5pbXBvcnQgeyBMZWdhbFNlcnZpY2UgfSBmcm9tICcuL2NvcmUvbGVnYWwvbGVnYWwuc2VydmljZSc7XG5pbXBvcnQgeyBMZWdhbENvbXBvbmVudENvbmZpZyB9IGZyb20gJy4vY29yZS9sZWdhbC9sZWdhbC5jb21wb25lbnQuY29uZmlnJztcbmltcG9ydCB7IE5leHRBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEZpbmFuY2VEZXRhaWxzU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2ZpbmFuY2UtZGV0YWlscy9maW5hbmNlLWRldGFpbHMuc2VydmljZSc7XG5pbXBvcnQgeyBtYXNrc0Z1bmN0aW9uc01hcCB9IGZyb20gJy4vY29yZS9wYXltZW50L2Zvcm0vbWFza3MtZnVuY3Rpb25zLm1hcCc7XG5pbXBvcnQgeyBQYXltZW50Q29uZmlnU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2NvbmZpZy9jb25maWcuc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9zdGF0dXMvc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvc3RhdHVzL3N0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IENyZWRpdENhcmRTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL2NyZWRpdC1jYXJkL2NyZWRpdC1jYXJkLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFR5cGVzIH0gZnJvbSAnLi9jb3JlL2NyZWRpdC1jYXJkL2NyZWRpdC1jYXJkLXR5cGVzLmVudW0nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZCB9IGZyb20gJy4vY29yZS9jcmVkaXQtY2FyZC9jcmVkaXQtY2FyZC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgSW5wdXRFdmVudE5hbWUgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9mb3JtL2lucHV0LWV2ZW50LmVudW0nO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2NyZWRpdC1jYXJkLXN0YXRlL2NyZWRpdC1jYXJkLXN0YXRlLnNlcnZpY2UnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ3JlZGl0Q2FyZFN0YXRlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvY3JlZGl0LWNhcmQtc3RhdGUvY3JlZGl0LWNhcmQtc3RhdGUuaW50ZXJmYWNlJztcbmltcG9ydCB7IEZvcm1TdGF0ZSB9IGZyb20gJy4vY29yZS9wYXltZW50L2Zvcm0vZm9ybS1zdGF0ZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgRmluYW5jZURldGFpbHMgfSBmcm9tICcuL2NvcmUvcGF5bWVudC9maW5hbmNlLWRldGFpbHMvZmluYW5jZS1kZXRhaWxzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvYWN0aW9ucy9uZXh0LWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQmFsYW5jZSB9IGZyb20gJy4vY29yZS9zZXR0aW5ncy9iYWxhbmNlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBGb3JtTWVzc2FnZXNTZXJ2aWNlIH0gZnJvbSAnLi9jb3JlL3BheW1lbnQvZm9ybS1tZXNzYWdlcy9mb3JtLW1lc3NhZ2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgRWRpdFNhdmVkTWV0aG9kc1NlcnZpY2UgfSBmcm9tICcuL2NvcmUvZWRpdC1zYXZlZC1tZXRob2RzL2VkaXQtc2F2ZWQtbWV0aG9kcy5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIENvcmVMaWJyYXJ5U2VydmljZSB7XG4gIHB1YmxpYyBwYXltZW50TWV0aG9kcyA9IHtcbiAgICBnZXRMaXN0OiBhc3luYyAoaXNTYXZlTWV0aG9kTW9kZT86IGJvb2xlYW4pOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHNTZXJ2aWNlLmdldExpc3QoaXNTYXZlTWV0aG9kTW9kZSksXG5cbiAgICBnZXRRdWlja01ldGhvZHM6IGFzeW5jICgpOiBQcm9taXNlPFBheW1lbnRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMucGF5bWVudE1ldGhvZHNTZXJ2aWNlLmdldFF1aWNrTWV0aG9kcygpLFxuICAgIGdldFNhdmVkTWV0aG9kczogYXN5bmMgKCk6IFByb21pc2U8U2F2ZWRNZXRob2RbXT4gPT5cbiAgICAgIHRoaXMuc2F2ZWRNZXRob2RzU2VydmljZS5nZXRMaXN0KCksXG4gICAgZ2V0VXNlckJhbGFuY2U6IGFzeW5jICgpOiBQcm9taXNlPFVzZXJCYWxhbmNlUmVzcG9uc2U+ID0+XG4gICAgICB0aGlzLnVzZXJCYWxhbmNlU2VydmljZS5nZXRVc2VyQmFsYW5jZSgpLFxuICAgIGRlbGV0ZVNhdmVkTWV0aG9kOiBhc3luYyAoaWQ6IG51bWJlciwgdHlwZTogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiA9PlxuICAgICAgdGhpcy5lZGl0U2F2ZWRNZXRob2RzU2VydmljZS5kZWxldGVTYXZlZE1ldGhvZFJlcXVlc3QoaWQsIHR5cGUpLFxuICB9O1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNldHRpbmdzU2VydmljZTogU2V0dGluZ3NTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY291bnRyeVNlcnZpY2U6IENvdW50cnlTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcGF5bWVudE1ldGhvZHNTZXJ2aWNlOiBQYXltZW50TWV0aG9kc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYXZlZE1ldGhvZHNTZXJ2aWNlOiBTYXZlZE1ldGhvZHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgdXNlckJhbGFuY2VTZXJ2aWNlOiBVc2VyQmFsYW5jZVNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50Q29uZmlnU2VydmljZTogUGF5bWVudENvbmZpZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBwYXltZW50U2VydmljZTogUGF5bWVudFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBkZXZpY2VGaW5nZXJQcmludFNlcnZpY2U6IERldmljZUZpbmdlclByaW50U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZpbmFuY2VEZXRhaWxzU2VydmljZTogRmluYW5jZURldGFpbHNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGVnYWxTZXJ2aWNlOiBMZWdhbFNlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzdGF0dXNTZXJ2aWNlOiBTdGF0dXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3JlZGl0Q2FyZFNlcnZpY2U6IENyZWRpdENhcmRTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY3JlZGl0Q2FyZFN0YXRlU2VydmljZTogQ3JlZGl0Q2FyZFN0YXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGZvcm1NZXNzYWdlc1NlcnZpY2U6IEZvcm1NZXNzYWdlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBlZGl0U2F2ZWRNZXRob2RzU2VydmljZTogRWRpdFNhdmVkTWV0aG9kc1NlcnZpY2VcbiAgKSB7fVxuXG4gIHB1YmxpYyBhc3luYyBpbml0KGNvbmZpZ3VyYXRpb246IEluaXRDb25maWd1cmF0aW9uKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5zZXR0aW5nc1NlcnZpY2UuaW5pdChjb25maWd1cmF0aW9uKTtcbiAgICB0aGlzLmRldmljZUZpbmdlclByaW50U2VydmljZS5pbml0KCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKHVybD86IHN0cmluZyk6IFByb21pc2U8U3RhdHVzPiB7XG4gICAgcmV0dXJuIHRoaXMuc3RhdHVzU2VydmljZS5nZXRTdGF0dXNXaXRoVXJsU2VhcmNoUGFyYW1zKHVybCk7XG4gIH1cblxuICBwdWJsaWMgc2V0Q291bnRyeShjb3VudHJ5OiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLmNvdW50cnlTZXJ2aWNlLnNldENvdW50cnkoY291bnRyeSk7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q291bnRyeSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvdW50cnlTZXJ2aWNlLmdldENvdW50cnkoKTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVQYXltZW50KGNvbmZpZzogUGF5bWVudENvbmZpZyk6IFBheW1lbnQge1xuICAgIGNvbnN0IGVucmljaGVkQ29uZmlnID0gdGhpcy5wYXltZW50Q29uZmlnU2VydmljZS5lbnJpY2goY29uZmlnKTtcblxuICAgIHJldHVybiB7XG4gICAgICBpbml0aWFsaXplOiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmluaXRpYWxpemUoZW5yaWNoZWRDb25maWcpLFxuICAgICAgc3VibWl0OiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLnN1Ym1pdCgpLFxuICAgICAgZ2V0RmllbGRzOiAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldEZpZWxkcygpLFxuICAgICAgdmFsaWRhdGU6IGFzeW5jIChmaWVsZDogRmllbGQpID0+IHRoaXMucGF5bWVudFNlcnZpY2UudmFsaWRhdGUoZmllbGQpLFxuICAgICAgZ2V0RmluYW5jZURldGFpbHM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZ2V0RmluYW5jZURldGFpbHMoKSxcbiAgICAgIHJ1blRocmVlRHM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UucnVuVGhyZWVEcygpLFxuICAgICAgZ2V0U3RhdHVzOiBhc3luYyAoKSA9PiB0aGlzLnBheW1lbnRTZXJ2aWNlLmdldFN0YXR1cygpLFxuICAgICAgZmluYW5jZURldGFpbHNVcGRhdGVzJDogdGhpcy5maW5hbmNlRGV0YWlsc1NlcnZpY2UuZGF0YSQsXG4gICAgICBmb3JtOiB7XG4gICAgICAgIGZpZWxkc1N0YXR1cyQ6IHRoaXMucGF5bWVudFNlcnZpY2UuZm9ybUZpZWxkc1N0YXR1cyQsXG4gICAgICAgIGdldENvbnRyb2xDb25maWc6IChmaWVsZDogRmllbGQpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5nZXRGaWVsZENvbmZpZyhmaWVsZCksXG4gICAgICAgIGNoYW5nZUZpZWxkVmFsdWU6IChuYW1lOiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcpID0+XG4gICAgICAgICAgdGhpcy5wYXltZW50U2VydmljZS5jaGFuZ2VGaWVsZFZhbHVlKG5hbWUsIHZhbHVlKSxcbiAgICAgICAgY2hhbmdlRmllbGRTdGF0ZTogKG5hbWU6IHN0cmluZywgc3RhdGU6IElucHV0RXZlbnROYW1lKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UuY2hhbmdlRmllbGRTdGF0ZShuYW1lLCBzdGF0ZSksXG4gICAgICAgIHVwZGF0ZUZpZWxkRm9ybVN0YXRlOiAoZmllbGROYW1lOiBzdHJpbmcsIGZvcm1TdGF0ZTogRm9ybVN0YXRlKSA9PlxuICAgICAgICAgIHRoaXMucGF5bWVudFNlcnZpY2UudXBkYXRlRmllbGRGb3JtU3RhdGUoZmllbGROYW1lLCBmb3JtU3RhdGUpLFxuICAgICAgICBmb3JtTWVzc2FnZXMkOiB0aGlzLmZvcm1NZXNzYWdlc1NlcnZpY2UuZGF0YSQsXG4gICAgICAgIGdldEZvcm1TdGF0dXM6ICgpID0+IHRoaXMucGF5bWVudFNlcnZpY2UuZm9ybT8uc3RhdHVzLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHVibGljIGdldENyZWRpdENhcmRTZXJ2aWNlKCk6IENyZWRpdENhcmQge1xuICAgIHJldHVybiB7XG4gICAgICBnZXRUeXBlQnlOdW1iZXI6IChjYXJkTnVtYmVyOiBzdHJpbmcpID0+XG4gICAgICAgIHRoaXMuY3JlZGl0Q2FyZFNlcnZpY2UuZ2V0VHlwZUJ5TnVtYmVyKGNhcmROdW1iZXIpLFxuICAgICAgZ2V0Q3JlZGl0Q2FyZFNldHRpbmdzOiAoY2FyZFR5cGU6IENyZWRpdENhcmRUeXBlcykgPT5cbiAgICAgICAgdGhpcy5jcmVkaXRDYXJkU2VydmljZS5nZXRDcmVkaXRDYXJkU2V0dGluZ3MoY2FyZFR5cGUpLFxuICAgICAgY2FyZFR5cGVVcGRhdGVzJDogdGhpcy5jcmVkaXRDYXJkU3RhdGVTZXJ2aWNlLmRhdGEkLFxuICAgIH07XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZsb3dVcGRhdGVzJCgpOiBPYnNlcnZhYmxlPE5leHRBY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5uZXh0QWN0aW9uU2VydmljZS5mbG93VXBkYXRlcyQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGZpbmFuY2VEZXRhaWxzVXBkYXRlcyQoKTogT2JzZXJ2YWJsZTxGaW5hbmNlRGV0YWlscz4ge1xuICAgIHJldHVybiB0aGlzLmZpbmFuY2VEZXRhaWxzU2VydmljZS5kYXRhJDtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2FyZFR5cGVVcGRhdGVzJCgpOiBPYnNlcnZhYmxlPENyZWRpdENhcmRTdGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLmNyZWRpdENhcmRTdGF0ZVNlcnZpY2UuZGF0YSQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0TGVnYWxDb21wb25lbnRDb25maWcoKTogTGVnYWxDb21wb25lbnRDb25maWcge1xuICAgIHJldHVybiB0aGlzLmxlZ2FsU2VydmljZS5nZXRMZWdhbENvbXBvbmVudENvbmZpZygpO1xuICB9XG5cbiAgcHVibGljIGdldEZpZWxkTWFzayhmaWVsZDogRmllbGQpOiB1bmRlZmluZWQgfCAoKCkgPT4gc3RyaW5nKSB7XG4gICAgY29uc3Qgc2FuaXRpemVkTmFtZSA9IGZpZWxkLm5hbWUucmVwbGFjZSgvXmZpeF8vaSwgJycpO1xuICAgIHJldHVybiBtYXNrc0Z1bmN0aW9uc01hcFtzYW5pdGl6ZWROYW1lXTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRVc2VyQmFsYW5jZVZhbHVlKCk6IEJhbGFuY2UgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy51c2VyQmFsYW5jZVNlcnZpY2UuZ2V0VXNlckJhbGFuY2VWYWx1ZSgpO1xuICB9XG59XG4iXX0=
@@ -247,6 +247,9 @@ class PaymentMethodsService {
247
247
  getList(isSaveMethodMode) {
248
248
  return __awaiter(this, void 0, void 0, function* () {
249
249
  const response = yield this.request(isSaveMethodMode);
250
+ if (this.isFixedPaymentMethod) {
251
+ return this.filterMethodsByFixedPaymentMethod(response.remained);
252
+ }
250
253
  return response.remained;
251
254
  });
252
255
  }
@@ -280,6 +283,16 @@ class PaymentMethodsService {
280
283
  return this.cache.get(cacheKey);
281
284
  });
282
285
  }
286
+ filterMethodsByFixedPaymentMethod(methods) {
287
+ var _a, _b;
288
+ const fixedPid = (_b = (_a = this.settingsService.purchase) === null || _a === void 0 ? void 0 : _a.payment_system) === null || _b === void 0 ? void 0 : _b.id;
289
+ const paymentMethod = methods.find((method) => method.id === fixedPid);
290
+ return paymentMethod ? [paymentMethod] : [];
291
+ }
292
+ get isFixedPaymentMethod() {
293
+ var _a, _b;
294
+ return !!((_b = (_a = this.settingsService.purchase) === null || _a === void 0 ? void 0 : _a.payment_system) === null || _b === void 0 ? void 0 : _b.id);
295
+ }
283
296
  }
284
297
  PaymentMethodsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PaymentMethodsService, deps: [{ token: paymentMethodsResponseFactoryToken }, { token: SettingsService }, { token: CountryService }, { token: SecureApiClient }], target: i0.ɵɵFactoryTarget.Injectable });
285
298
  PaymentMethodsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: PaymentMethodsService, providedIn: 'root' });
@@ -1901,6 +1914,7 @@ class SyncService extends EmitDataService {
1901
1914
  this.prevFieldSyncStates = {};
1902
1915
  this.form = new UntypedFormGroup({});
1903
1916
  this.fields = [];
1917
+ this.fieldSyncTimers = {};
1904
1918
  this.fieldAsyncValidation = new Subject();
1905
1919
  }
1906
1920
  get fieldAsyncValidation$() {
@@ -1916,7 +1930,7 @@ class SyncService extends EmitDataService {
1916
1930
  this.form = new UntypedFormGroup({});
1917
1931
  this.fields = [];
1918
1932
  }
1919
- validate(field) {
1933
+ validate(field, delay = Number('750')) {
1920
1934
  return __awaiter(this, void 0, void 0, function* () {
1921
1935
  if (!this.isReadyField(field)) {
1922
1936
  return Promise.resolve(null);
@@ -1934,16 +1948,32 @@ class SyncService extends EmitDataService {
1934
1948
  return (_a = response === null || response === void 0 ? void 0 : response.error) !== null && _a !== void 0 ? _a : null;
1935
1949
  });
1936
1950
  }
1937
- const requestPromise = this.request(field);
1938
- this.setPrevFieldSyncState(field, value, requestPromise);
1939
- return requestPromise.then((response) => {
1940
- var _a;
1941
- this.fieldAsyncValidation.next({
1942
- value,
1943
- field,
1944
- response,
1951
+ const updateFieldState = () => __awaiter(this, void 0, void 0, function* () {
1952
+ const requestPromise = this.request(field);
1953
+ this.setPrevFieldSyncState(field, value, requestPromise);
1954
+ return requestPromise.then((response) => {
1955
+ var _a;
1956
+ this.fieldAsyncValidation.next({
1957
+ value,
1958
+ field,
1959
+ response,
1960
+ });
1961
+ return (_a = response.error) !== null && _a !== void 0 ? _a : null;
1945
1962
  });
1946
- return (_a = response.error) !== null && _a !== void 0 ? _a : null;
1963
+ });
1964
+ return new Promise((resolve) => {
1965
+ if (delay) {
1966
+ const timerId = setTimeout(() => {
1967
+ if (value !== (control === null || control === void 0 ? void 0 : control.value)) {
1968
+ return resolve(null);
1969
+ }
1970
+ void updateFieldState().then((errors) => resolve(errors));
1971
+ }, delay);
1972
+ this.resetFieldSyncTimer(field, Number(timerId));
1973
+ }
1974
+ else {
1975
+ void updateFieldState().then((errors) => resolve(errors));
1976
+ }
1947
1977
  });
1948
1978
  });
1949
1979
  }
@@ -1990,6 +2020,13 @@ class SyncService extends EmitDataService {
1990
2020
  this.nextActionService.emitFlowUpdates(new ShowErrorsAction(formErrors));
1991
2021
  }
1992
2022
  }
2023
+ resetFieldSyncTimer(field, timerId) {
2024
+ const prevTimerId = this.fieldSyncTimers[field.name];
2025
+ if (prevTimerId) {
2026
+ clearTimeout(prevTimerId);
2027
+ }
2028
+ this.fieldSyncTimers[field.name] = timerId;
2029
+ }
1993
2030
  }
1994
2031
  SyncService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, deps: [{ token: syncRequestFactoryToken }, { token: syncResponseFactoryToken }, { token: XpsApiService }, { token: NextActionService }, { token: SettingsService }, { token: XpsResponseErrorsMappingService }, { token: EncryptCreditCardService }], target: i0.ɵɵFactoryTarget.Injectable });
1995
2032
  SyncService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SyncService, providedIn: 'root' });
@@ -5792,6 +5829,7 @@ class CoreLibraryService {
5792
5829
  changeFieldState: (name, state) => this.paymentService.changeFieldState(name, state),
5793
5830
  updateFieldFormState: (fieldName, formState) => this.paymentService.updateFieldFormState(fieldName, formState),
5794
5831
  formMessages$: this.formMessagesService.data$,
5832
+ getFormStatus: () => { var _a; return (_a = this.paymentService.form) === null || _a === void 0 ? void 0 : _a.status; },
5795
5833
  },
5796
5834
  };
5797
5835
  }