@xsolla/payment-client-core 0.1.14-test20 → 0.1.14-test21

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.
@@ -20,10 +20,15 @@ export class SavePaymentMethodStatusService {
20
20
  this.statusChecked = false;
21
21
  }
22
22
  async getStatus(params) {
23
+ if (this.listenStatusSubscription) {
24
+ this.listenStatusSubscription.unsubscribe();
25
+ this.listenStatusService.stopListening();
26
+ }
23
27
  this.statusRequestService.setRequestParams(params);
24
28
  this.statusRequestService.request();
25
29
  const statusResponse = await firstValueFrom(this.statusRequestService.response$);
26
30
  statusResponse.status.isSavePaymentAccount = true;
31
+ // this.listenStatusService.stopListening();
27
32
  const accountData = await this.getPaymentAccountData(params.invoice);
28
33
  if (this.savingFailedOrCancel(statusResponse?.status) || this.savingSuccessful(accountData, statusResponse?.status)) {
29
34
  return statusResponse.status;
@@ -41,7 +46,7 @@ export class SavePaymentMethodStatusService {
41
46
  this.statusChecked = true;
42
47
  }
43
48
  this.startWaitingStatusUpdates(params.invoice);
44
- // this.statusRequestService.request();
49
+ this.statusRequestService.request();
45
50
  }
46
51
  async getStatusOld(params) {
47
52
  console.log('getStatus', params);
@@ -195,4 +200,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImpor
195
200
  providedIn: 'root'
196
201
  }]
197
202
  }], ctorParameters: function () { return [{ type: i1.StatusRequestService }, { type: i2.ListenStatusService }, { type: i3.SavedPaymentAccountChangesService }, { type: i4.NextActionService }, { type: i5.CheckStatusService }]; } });
198
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsY0FBYyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUVwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUsvRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBTzVFLE1BQU0sT0FBTyw4QkFBOEI7SUFLekMsWUFDbUIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4QyxpQ0FBb0UsRUFDcEUsaUJBQW9DLEVBQ3BDLGtCQUFzQztRQUp0Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFtQztRQUNwRSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFQakQsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFPK0IsQ0FBQztJQUN2RCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQTJCO1FBQ2hELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLENBQUMsQ0FB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LENBQUMsZUFBZSxDQUNwQyxJQUFJLG1CQUFtQixDQUFDLE1BQU0sRUFBRSxtQkFBbUIsRUFBRSxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FDbkYsQ0FBQztJQUNKLENBQUM7OzJIQXpPVSw4QkFBOEI7K0hBQTlCLDhCQUE4QixjQUY3QixNQUFNOzJGQUVQLDhCQUE4QjtrQkFIMUMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0UGFyYW1zIH0gZnJvbSAnLi4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3QtcGFyYW1zLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdGF0dXMgfSBmcm9tICcuLi9zdGF0dXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IGZpcnN0VmFsdWVGcm9tLCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFN0YXR1c1JlcXVlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vc3RhdHVzLXJlcXVlc3Qvc3RhdHVzLXJlcXVlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNVcGRhdGVkQWN0aW9uIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9zdGF0dXMtdXBkYXRlZC9zdGF0dXMtdXBkYXRlZC5hY3Rpb24uY2xhc3MnO1xuaW1wb3J0IHsgTGlzdGVuU3RhdHVzU2VydmljZSB9IGZyb20gJy4uL2xpc3Rlbi1zdGF0dXMvbGlzdGVuLXN0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzIH0gZnJvbSAnLi9hcGkvc2F2ZWQtcGF5bWVudC1hY2NvdW50LWNoYW5nZXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZSB9IGZyb20gJy4vYXBpL3NhdmVkLXBheW1lbnQtYWNjb3VudC1jaGFuZ2VzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2F2ZWRQYXltZW50QWNjb3VudCB9IGZyb20gJy4vYXBpL3NhdmVkLXBheW1lbnQtYWNjb3VudC5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgVGl0bGVDbGFzcyB9IGZyb20gJy4uL3RpdGxlLWNsYXNzLmVudW0nO1xuaW1wb3J0IHsgTmV4dEFjdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9hY3Rpb25zL25leHQtYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzRW51bSB9IGZyb20gJy4uL3N0YXR1cy5lbnVtJztcbmltcG9ydCB7IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzIH0gZnJvbSAnLi9zYXZlLXBheW1lbnQtbWV0aG9kLXN0YXR1cy5lbnVtJztcbmltcG9ydCB7IENoZWNrU3RhdHVzU2VydmljZSB9IGZyb20gJy4uL2NoZWNrLXN0YXR1cy9jaGVjay1zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBDaGVja1N0YXR1c1Jlc3BvbnNlIH0gZnJvbSAnLi4vY2hlY2stc3RhdHVzL3Jlc3BvbnNlL2NoZWNrLXN0YXR1cy1yZXNwb25zZS5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFNhdmVQYXltZW50TWV0aG9kU3RhdHVzU2VydmljZSB7XG4gIHByaXZhdGUgc2F2ZVBheW1lbnRNZXRob2RTdGF0dXM/OiBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cztcbiAgcHJpdmF0ZSBsaXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24hOiBTdWJzY3JpcHRpb247XG4gIHByaXZhdGUgc3RhdHVzQ2hlY2tlZCA9IGZhbHNlO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1JlcXVlc3RTZXJ2aWNlOiBTdGF0dXNSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlblN0YXR1c1NlcnZpY2U6IExpc3RlblN0YXR1c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2U6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrU3RhdHVzU2VydmljZTogQ2hlY2tTdGF0dXNTZXJ2aWNlKSB7IH1cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiBQcm9taXNlPFN0YXR1cz4ge1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG5cbiAgICBjb25zdCBhY2NvdW50RGF0YSA9IGF3YWl0IHRoaXMuZ2V0UGF5bWVudEFjY291bnREYXRhKHBhcmFtcy5pbnZvaWNlKTtcbiAgICBpZiAodGhpcy5zYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSB8fCB0aGlzLnNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudERhdGEsIHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpKSB7XG4gICAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIGlmICghdGhpcy5zdGF0dXNDaGVja2VkKSB7XG4gICAgICB0aGlzLmNoZWNrU3RhdHVzKHBhcmFtcyk7XG4gICAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0uZXJyb3I7XG4gICAgcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgfVxuXG4gIHByaXZhdGUgY2hlY2tTdGF0dXMocGFyYW1zOiBTdGF0dXNSZXF1ZXN0UGFyYW1zKTogdm9pZCB7XG4gICAgaWYgKCF0aGlzLnN0YXR1c0NoZWNrZWQpIHtcbiAgICAgIHRoaXMuc3RhdHVzQ2hlY2tlZCA9IHRydWU7XG4gICAgfVxuICAgIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG4gIH1cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1c09sZChwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiBQcm9taXNlPFN0YXR1cyB8IG51bGw+IHtcbiAgICBjb25zb2xlLmxvZygnZ2V0U3RhdHVzJywgcGFyYW1zKTtcblxuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIC8vIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG5cbiAgICBjb25zdCBzdGF0dXNSZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXNwb25zZSRcbiAgICApO1xuXG4gICAgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3QgY2hlY2tTdGF0dXNSZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIGlmICghY2hlY2tTdGF0dXNSZXNwb25zZS5maW5hbCkge1xuICAgICAgdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG4gICAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIC8vIHRvZG86IGdldCBhY2NvdW50XG4gICAgY29uc3QgYWNjb3VudERhdGEgPSBhd2FpdCB0aGlzLmdldFBheW1lbnRBY2NvdW50RGF0YShwYXJhbXMuaW52b2ljZSk7XG5cbiAgICBpZiAoIXRoaXMuc2F2aW5nRmFpbGVkT3JDYW5jZWwoc3RhdHVzUmVzcG9uc2U/LnN0YXR1cykgJiYgIXRoaXMuc2F2aW5nU3VjY2Vzc2Z1bChhY2NvdW50RGF0YSwgc3RhdHVzUmVzcG9uc2U/LnN0YXR1cykpIHtcbiAgICAgIC8vIHRvZG8gaXMgcHJvY2Nlc3NpbmdcblxuICAgICAgdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICB9XG4gICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLmlzU2F2ZVBheW1lbnRBY2NvdW50ID0gdHJ1ZTtcbiAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuXG4gICAgLy8gdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLmxpc3RlbihwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG5cblxuXG5cbiAgICAvLyBjb25zdCBwYXJhbXNDaGVjayA9IHtcbiAgICAvLyAgIHNlY3Rpb246ICdnZXRzdGF0dXMnLFxuICAgIC8vICAgYWN0aW9uOiAnZ2V0c3RhdHVzJyxcbiAgICAvLyAgIC8vIGludm9pY2U6IHBhcmFtcy5pbnZvaWNlLFxuICAgIC8vICAgLi4ucGFyYW1zLFxuICAgIC8vICAgYWNjZXNzX3Rva2VuOiBwYXJhbXMudG9rZW4gfHwgJzhzb2dQTGlzQjMyOFNuZjlNOWFDaFN3a1puNEl6T3pmX2xjX2VuJ1xuICAgIC8vIH07XG4gICAgLy8gLy8gY29uc3QgY2hlY2sgPSBhd2FpdCB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXF1ZXN0UHJvbWlzZSgnZGlyZWN0cGF5bWVudCcsIHBhcmFtc0NoZWNrKTtcbiAgICAvLyAvLyBjb25zb2xlLmxvZygncmVxdWVzdFByb21pc2UnLCBjaGVjayk7XG4gICAgLy8gLy8gdG9kbzogZ2V0IGFjY291bnRcbiAgICAvLyAvLyBjb25zdCBhY2NvdW50RGF0YSA9IGF3YWl0IHRoaXMuZ2V0UGF5bWVudEFjY291bnREYXRhKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyAvLyB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIC8vIC8vIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5zdGF0dXNVcGRhdGVkJFxuICAgIC8vIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG4gICAgLy8gdGhpcy5jaGVja1N0YXR1c1NlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVxdWVzdCgpO1xuICAgIC8vIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlc3BvbnNlJC5zdWJzY3JpYmUoKHJlc3ApID0+IHtcbiAgICAvLyAgIGNvbnNvbGUubG9nKCdjaGVja1N0JywgcmVzcCk7XG4gICAgLy8gfSk7XG5cbiAgICAvLyBjb25zdCBzdGF0dXNSZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgIC8vICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXNwb25zZSRcbiAgICAvLyApO1xuXG5cblxuICAgIC8vIGNvbnN0IHNhdmluZ0ZhaWxlZE9yQ2FuY2VsID0gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbCB8fCBzdGF0dXNSZXNwb25zZS5zdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsVXNlcjtcblxuICAgIC8vIGNvbnN0IHNhdmluZ1N1Y2Nlc3NmdWwgPSBzdGF0dXNSZXNwb25zZS5zdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuZG9uZSAmJiBhY2NvdW50RGF0YT8ubmV3X2FjY291bnQ7XG5cbiAgICAvLyBpZiAoIWFjY291bnREYXRhKSB7XG4gICAgLy8gICB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIC8vICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5wcm9jZXNzaW5nO1xuICAgIC8vIH1cblxuICAgIC8vIGlmICghdGhpcy5zYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSAmJiAhdGhpcy5zYXZpbmdTdWNjZXNzZnVsKGFjY291bnREYXRhLCBzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSkge1xuICAgIC8vICAgLy8gdG9kbyBpcyBwcm9jY2Vzc2luZ1xuICAgIC8vXG4gICAgLy8gICAvLyB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIC8vICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5wcm9jZXNzaW5nO1xuICAgIC8vIH1cbiAgICAvLyBzdGF0dXNSZXNwb25zZS5zdGF0dXMuaXNTYXZlUGF5bWVudEFjY291bnQgPSB0cnVlO1xuICAgIC8vIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG4gICAgLy8gcmV0dXJuIG51bGw7XG5cbiAgICAvLyBpZiAoIXRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMpIHtcbiAgICAvLyAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICAvLyB9XG4gICAgLy8gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLmlzU2F2ZVBheW1lbnRBY2NvdW50ID0gdHJ1ZTtcbiAgICAvLyByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICB9XG5cbiAgcHJpdmF0ZSBzYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXM/OiBTdGF0dXMpOiBib29sZWFuIHtcbiAgICByZXR1cm4gc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbCB8fCBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsVXNlcjtcbiAgfVxuXG4gIHByaXZhdGUgc2F2aW5nU3VjY2Vzc2Z1bChhY2NvdW50RGF0YTogU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMsIHN0YXR1cz86IFN0YXR1cywgY2hlY2tTdGF0dXM/OiBDaGVja1N0YXR1c1Jlc3BvbnNlKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhKHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5kb25lICYmIChhY2NvdW50RGF0YT8ubmV3X2FjY291bnQgfHwgY2hlY2tTdGF0dXM/LmlzUGF5bWVudEFjY291bnRBdHRhY2hlZCkpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRQYXltZW50QWNjb3VudERhdGEoaW52b2ljZTogbnVtYmVyKTogUHJvbWlzZTxTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcz4ge1xuICAgIHJldHVybiB0aGlzLnNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZVxuICAgICAgLnJlcXVlc3QoaW52b2ljZSlcbiAgICAgIC8vIC50aGVuKChhY2NvdW50Q2hhbmdlczogU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMpID0+IHtcbiAgICAgIC8vICAgaWYgKGFjY291bnRDaGFuZ2VzKSB7XG4gICAgICAvLyAgICAgdGhpcy5oYW5kbGVTYXZpbmdTdGF0dXMoc3RhdHVzLCBhY2NvdW50Q2hhbmdlcy5uZXdfYWNjb3VudCk7XG4gICAgICAvLyAgIH1cbiAgICAgIC8vIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKGludm9pY2U6IG51bWJlcik6IHZvaWQge1xuICAgIGlmICh0aGlzLmxpc3RlblN0YXR1c1N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5saXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5zdG9wTGlzdGVuaW5nKCk7XG4gICAgfVxuXG4gICAgLy8gZGVidWdnZXJcbiAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2UubGlzdGVuKGludm9pY2UpO1xuXG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24gPSB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RhdHVzVXBkYXRlZCRcbiAgICAgIC5zdWJzY3JpYmUoKHN0YXR1c1NldHRpbmdzKSA9PiB7XG5cbiAgICAgICAgLy8gdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVzcG9uc2UkLnN1YnNjcmliZSgocmVzKSA9PiB7XG4gICAgICAgIC8vICAgaWYgKHJlcy5maW5hbCkge1xuICAgICAgICAvLyAgICAgaWYgKHN0YXR1c1NldHRpbmdzPy5zdGF0dXNSZXNwb25zZS5zdGF0dXMpIHtcbiAgICAgICAgLy8gICAgICAgdGhpcy5sb2FkTmV3UGF5bWVudEFjY291bnREYXRhKHN0YXR1c1NldHRpbmdzPy5zdGF0dXNSZXNwb25zZS5zdGF0dXMsIHJlcylcbiAgICAgICAgLy8gICAgIH1cbiAgICAgICAgLy8gICB9XG4gICAgICAgIC8vIH0pO1xuICAgICAgICB2b2lkIGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAgIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlc3BvbnNlJFxuICAgICAgICApLnRoZW4oKGNoZWNrU3RhdHVzUmVzcG9uc2UpID0+IHtcbiAgICAgICAgICBpZiAoY2hlY2tTdGF0dXNSZXNwb25zZS5maW5hbCAmJiBzdGF0dXNTZXR0aW5ncz8uc3RhdHVzUmVzcG9uc2Uuc3RhdHVzKSB7XG4gICAgICAgICAgICB0aGlzLmxvYWROZXdQYXltZW50QWNjb3VudERhdGEoc3RhdHVzU2V0dGluZ3M/LnN0YXR1c1Jlc3BvbnNlLnN0YXR1cywgY2hlY2tTdGF0dXNSZXNwb25zZSlcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICAvLyB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXF1ZXN0KCk7XG5cbiAgICAgICAgLy8gY29uc3QgY2hlY2tTdGF0dXNSZXNwb25zZSA9IGF3YWl0IGZpcnN0VmFsdWVGcm9tKFxuICAgICAgICAvLyAgIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlc3BvbnNlJFxuICAgICAgICAvLyApO1xuICAgICAgfSk7XG4gICAgLy8gdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5yZXF1ZXN0KCk7XG4gIH1cblxuICBwcml2YXRlIGxvYWROZXdQYXltZW50QWNjb3VudERhdGEoc3RhdHVzOiBTdGF0dXMsIGNoZWNrU3RhdHVzOiBDaGVja1N0YXR1c1Jlc3BvbnNlKTogdm9pZCB7XG4gICAgaWYgKCFzdGF0dXMuaW52b2ljZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB2b2lkIHRoaXMuc2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXNTZXJ2aWNlXG4gICAgICAucmVxdWVzdChzdGF0dXMuaW52b2ljZSlcbiAgICAgIC50aGVuKChhY2NvdW50Q2hhbmdlczogU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMpID0+IHtcbiAgICAgICAgaWYgKGFjY291bnRDaGFuZ2VzKSB7XG5cbiAgICAgICAgICB0aGlzLmhhbmRsZVNhdmluZ1N0YXR1cyhzdGF0dXMsIGFjY291bnRDaGFuZ2VzLCBjaGVja1N0YXR1cyk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBoYW5kbGVTYXZpbmdTdGF0dXMoXG4gICAgc3RhdHVzOiBTdGF0dXMsXG4gICAgYWNjb3VudDogU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMsXG4gICAgY2hlY2tTdGF0dXM6IENoZWNrU3RhdHVzUmVzcG9uc2VcbiAgKTogdm9pZCB7XG5cbiAgICAvLyBjb25zdCBzYXZpbmdGYWlsZWRPckNhbmNlbCA9IHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWwgfHwgc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbFVzZXI7XG4gICAgLy9cbiAgICAvLyBjb25zdCBzYXZpbmdTdWNjZXNzZnVsID0gc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmRvbmUgJiYgYWNjb3VudDtcblxuXG4gICAgaWYgKHRoaXMuc2F2aW5nU3VjY2Vzc2Z1bChhY2NvdW50LCBzdGF0dXMsIGNoZWNrU3RhdHVzKSkge1xuICAgICAgdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cyA9IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzLnN1Y2Nlc3M7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMgPSBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cy5mYWlsZWQ7XG4gICAgfVxuICAgIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5zdG9wTGlzdGVuaW5nKCk7XG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcblxuICAgIC8vIGNvbnN0IHBheW1lbnRBY2NvdW50V2FzU2F2ZWQgPSBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuZG9uZSAmJiBhY2NvdW50ICE9PSBudWxsO1xuICAgIGNvbnN0IGlzU2F2ZVBheW1lbnRNZXRob2QgPSB0cnVlO1xuXG4gICAgLy8gdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cyA9IHRoaXMuc2F2aW5nRmFpbGVkT3JDYW5jZWwoc3RhdHVzKSA/IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzLnN1Y2Nlc3MgOiBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cy5mYWlsZWQ7XG4gICAgY29uc29sZS5sb2coc3RhdHVzLCBpc1NhdmVQYXltZW50TWV0aG9kLCB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzKVxuICAgIHRoaXMubmV4dEFjdGlvblNlcnZpY2UuZW1pdEZsb3dVcGRhdGVzKFxuICAgICAgbmV3IFN0YXR1c1VwZGF0ZWRBY3Rpb24oc3RhdHVzLCBpc1NhdmVQYXltZW50TWV0aG9kLCB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzKVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
203
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsY0FBYyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUVwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUsvRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBTzVFLE1BQU0sT0FBTyw4QkFBOEI7SUFLekMsWUFDbUIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4QyxpQ0FBb0UsRUFDcEUsaUJBQW9DLEVBQ3BDLGtCQUFzQztRQUp0Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFtQztRQUNwRSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7UUFQakQsa0JBQWEsR0FBRyxLQUFLLENBQUM7SUFPK0IsQ0FBQztJQUN2RCxLQUFLLENBQUMsU0FBUyxDQUFDLE1BQTJCO1FBRWhELElBQUksSUFBSSxDQUFDLHdCQUF3QixFQUFFO1lBQ2pDLElBQUksQ0FBQyx3QkFB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LEVBQUUsQ0FBQztRQUU1Qyw2RkFBNkY7UUFDN0YsTUFBTSxtQkFBbUIsR0FBRyxJQUFJLENBQUM7UUFFakMsdUlBQXVJO1FBQ3ZJLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLG1CQUFtQixFQUFFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUFBO1FBQ3RFLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxlQUFlLENBQ3BDLElBQUksbUJBQW1CLENBQUMsTUFBTSxFQUFFLG1CQUFtQixFQUFFLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxDQUNuRixDQUFDO0lBQ0osQ0FBQzs7MkhBaFBVLDhCQUE4QjsrSEFBOUIsOEJBQThCLGNBRjdCLE1BQU07MkZBRVAsOEJBQThCO2tCQUgxQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0YXR1c1JlcXVlc3RQYXJhbXMgfSBmcm9tICcuLi9zdGF0dXMtcmVxdWVzdC9zdGF0dXMtcmVxdWVzdC1wYXJhbXMuaW50ZXJmYWNlJztcbmltcG9ydCB7IFN0YXR1cyB9IGZyb20gJy4uL3N0YXR1cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgZmlyc3RWYWx1ZUZyb20sIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU3RhdHVzUmVxdWVzdFNlcnZpY2UgfSBmcm9tICcuLi9zdGF0dXMtcmVxdWVzdC9zdGF0dXMtcmVxdWVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1c1VwZGF0ZWRBY3Rpb24gfSBmcm9tICcuLi8uLi9hY3Rpb25zL3N0YXR1cy11cGRhdGVkL3N0YXR1cy11cGRhdGVkLmFjdGlvbi5jbGFzcyc7XG5pbXBvcnQgeyBMaXN0ZW5TdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi4vbGlzdGVuLXN0YXR1cy9saXN0ZW4tc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMgfSBmcm9tICcuL2FwaS9zYXZlZC1wYXltZW50LWFjY291bnQtY2hhbmdlcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXNTZXJ2aWNlIH0gZnJvbSAnLi9hcGkvc2F2ZWQtcGF5bWVudC1hY2NvdW50LWNoYW5nZXMuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlZFBheW1lbnRBY2NvdW50IH0gZnJvbSAnLi9hcGkvc2F2ZWQtcGF5bWVudC1hY2NvdW50LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUaXRsZUNsYXNzIH0gZnJvbSAnLi4vdGl0bGUtY2xhc3MuZW51bSc7XG5pbXBvcnQgeyBOZXh0QWN0aW9uU2VydmljZSB9IGZyb20gJy4uLy4uL2FjdGlvbnMvbmV4dC1hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBTdGF0dXNFbnVtIH0gZnJvbSAnLi4vc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgU2F2ZVBheW1lbnRNZXRob2RTdGF0dXMgfSBmcm9tICcuL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLmVudW0nO1xuaW1wb3J0IHsgQ2hlY2tTdGF0dXNTZXJ2aWNlIH0gZnJvbSAnLi4vY2hlY2stc3RhdHVzL2NoZWNrLXN0YXR1cy5zZXJ2aWNlJztcbmltcG9ydCB7IENoZWNrU3RhdHVzUmVzcG9uc2UgfSBmcm9tICcuLi9jaGVjay1zdGF0dXMvcmVzcG9uc2UvY2hlY2stc3RhdHVzLXJlc3BvbnNlLmNsYXNzJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgU2F2ZVBheW1lbnRNZXRob2RTdGF0dXNTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBzYXZlUGF5bWVudE1ldGhvZFN0YXR1cz86IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzO1xuICBwcml2YXRlIGxpc3RlblN0YXR1c1N1YnNjcmlwdGlvbiE6IFN1YnNjcmlwdGlvbjtcbiAgcHJpdmF0ZSBzdGF0dXNDaGVja2VkID0gZmFsc2U7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc3RhdHVzUmVxdWVzdFNlcnZpY2U6IFN0YXR1c1JlcXVlc3RTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbGlzdGVuU3RhdHVzU2VydmljZTogTGlzdGVuU3RhdHVzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZTogU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXNTZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgbmV4dEFjdGlvblNlcnZpY2U6IE5leHRBY3Rpb25TZXJ2aWNlLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgY2hlY2tTdGF0dXNTZXJ2aWNlOiBDaGVja1N0YXR1c1NlcnZpY2UpIHsgfVxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzKHBhcmFtczogU3RhdHVzUmVxdWVzdFBhcmFtcyk6IFByb21pc2U8U3RhdHVzPiB7XG5cbiAgICBpZiAodGhpcy5saXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMubGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RvcExpc3RlbmluZygpO1xuICAgIH1cblxuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG4gICAgLy8gdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0b3BMaXN0ZW5pbmcoKTtcblxuICAgIGNvbnN0IGFjY291bnREYXRhID0gYXdhaXQgdGhpcy5nZXRQYXltZW50QWNjb3VudERhdGEocGFyYW1zLmludm9pY2UpO1xuICAgIGlmICh0aGlzLnNhdmluZ0ZhaWxlZE9yQ2FuY2VsKHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpIHx8IHRoaXMuc2F2aW5nU3VjY2Vzc2Z1bChhY2NvdW50RGF0YSwgc3RhdHVzUmVzcG9uc2U/LnN0YXR1cykpIHtcbiAgICAgIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLnN0YXR1c0NoZWNrZWQpIHtcbiAgICAgIHRoaXMuY2hlY2tTdGF0dXMocGFyYW1zKTtcbiAgICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICAgIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG4gICAgfVxuXG4gICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5lcnJvcjtcbiAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1N0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiB2b2lkIHtcbiAgICBpZiAoIXRoaXMuc3RhdHVzQ2hlY2tlZCkge1xuICAgICAgdGhpcy5zdGF0dXNDaGVja2VkID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcbiAgfVxuICBwdWJsaWMgYXN5bmMgZ2V0U3RhdHVzT2xkKHBhcmFtczogU3RhdHVzUmVxdWVzdFBhcmFtcyk6IFByb21pc2U8U3RhdHVzIHwgbnVsbD4ge1xuICAgIGNvbnNvbGUubG9nKCdnZXRTdGF0dXMnLCBwYXJhbXMpO1xuXG4gICAgdGhpcy5zdGF0dXNSZXF1ZXN0U2VydmljZS5zZXRSZXF1ZXN0UGFyYW1zKHBhcmFtcyk7XG4gICAgLy8gdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcblxuICAgIGNvbnN0IHN0YXR1c1Jlc3BvbnNlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlc3BvbnNlJFxuICAgICk7XG5cbiAgICB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5zZXRSZXF1ZXN0UGFyYW1zKHBhcmFtcy5pbnZvaWNlKTtcbiAgICB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXF1ZXN0KCk7XG5cbiAgICBjb25zdCBjaGVja1N0YXR1c1Jlc3BvbnNlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXNwb25zZSRcbiAgICApO1xuXG4gICAgaWYgKCFjaGVja1N0YXR1c1Jlc3BvbnNlLmZpbmFsKSB7XG4gICAgICB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLmlzU2F2ZVBheW1lbnRBY2NvdW50ID0gdHJ1ZTtcbiAgICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICAgIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG4gICAgfVxuXG4gICAgLy8gdG9kbzogZ2V0IGFjY291bnRcbiAgICBjb25zdCBhY2NvdW50RGF0YSA9IGF3YWl0IHRoaXMuZ2V0UGF5bWVudEFjY291bnREYXRhKHBhcmFtcy5pbnZvaWNlKTtcblxuICAgIGlmICghdGhpcy5zYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSAmJiAhdGhpcy5zYXZpbmdTdWNjZXNzZnVsKGFjY291bnREYXRhLCBzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSkge1xuICAgICAgLy8gdG9kbyBpcyBwcm9jY2Vzc2luZ1xuXG4gICAgICB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5wcm9jZXNzaW5nO1xuICAgIH1cbiAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuaXNTYXZlUGF5bWVudEFjY291bnQgPSB0cnVlO1xuICAgIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG5cbiAgICAvLyB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2UubGlzdGVuKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcblxuXG5cblxuICAgIC8vIGNvbnN0IHBhcmFtc0NoZWNrID0ge1xuICAgIC8vICAgc2VjdGlvbjogJ2dldHN0YXR1cycsXG4gICAgLy8gICBhY3Rpb246ICdnZXRzdGF0dXMnLFxuICAgIC8vICAgLy8gaW52b2ljZTogcGFyYW1zLmludm9pY2UsXG4gICAgLy8gICAuLi5wYXJhbXMsXG4gICAgLy8gICBhY2Nlc3NfdG9rZW46IHBhcmFtcy50b2tlbiB8fCAnOHNvZ1BMaXNCMzI4U25mOU05YUNoU3drWm40SXpPemZfbGNfZW4nXG4gICAgLy8gfTtcbiAgICAvLyAvLyBjb25zdCBjaGVjayA9IGF3YWl0IHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlcXVlc3RQcm9taXNlKCdkaXJlY3RwYXltZW50JywgcGFyYW1zQ2hlY2spO1xuICAgIC8vIC8vIGNvbnNvbGUubG9nKCdyZXF1ZXN0UHJvbWlzZScsIGNoZWNrKTtcbiAgICAvLyAvLyB0b2RvOiBnZXQgYWNjb3VudFxuICAgIC8vIC8vIGNvbnN0IGFjY291bnREYXRhID0gYXdhaXQgdGhpcy5nZXRQYXltZW50QWNjb3VudERhdGEocGFyYW1zLmludm9pY2UpO1xuICAgIC8vIC8vIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gLy8gdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0YXR1c1VwZGF0ZWQkXG4gICAgLy8gdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcbiAgICAvLyB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5zZXRSZXF1ZXN0UGFyYW1zKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXF1ZXN0KCk7XG4gICAgLy8gdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVzcG9uc2UkLnN1YnNjcmliZSgocmVzcCkgPT4ge1xuICAgIC8vICAgY29uc29sZS5sb2coJ2NoZWNrU3QnLCByZXNwKTtcbiAgICAvLyB9KTtcblxuICAgIC8vIGNvbnN0IHN0YXR1c1Jlc3BvbnNlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgLy8gICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlc3BvbnNlJFxuICAgIC8vICk7XG5cblxuXG4gICAgLy8gY29uc3Qgc2F2aW5nRmFpbGVkT3JDYW5jZWwgPSBzdGF0dXNSZXNwb25zZS5zdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsIHx8IHN0YXR1c1Jlc3BvbnNlLnN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWxVc2VyO1xuXG4gICAgLy8gY29uc3Qgc2F2aW5nU3VjY2Vzc2Z1bCA9IHN0YXR1c1Jlc3BvbnNlLnN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5kb25lICYmIGFjY291bnREYXRhPy5uZXdfYWNjb3VudDtcblxuICAgIC8vIGlmICghYWNjb3VudERhdGEpIHtcbiAgICAvLyAgIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgLy8gfVxuXG4gICAgLy8gaWYgKCF0aGlzLnNhdmluZ0ZhaWxlZE9yQ2FuY2VsKHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpICYmICF0aGlzLnNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudERhdGEsIHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpKSB7XG4gICAgLy8gICAvLyB0b2RvIGlzIHByb2NjZXNzaW5nXG4gICAgLy9cbiAgICAvLyAgIC8vIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgLy8gfVxuICAgIC8vIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG4gICAgLy8gcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgICAvLyByZXR1cm4gbnVsbDtcblxuICAgIC8vIGlmICghdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cykge1xuICAgIC8vICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5wcm9jZXNzaW5nO1xuICAgIC8vIH1cbiAgICAvLyBzdGF0dXNSZXNwb25zZS5zdGF0dXMuaXNTYXZlUGF5bWVudEFjY291bnQgPSB0cnVlO1xuICAgIC8vIHJldHVybiBzdGF0dXNSZXNwb25zZS5zdGF0dXM7XG4gIH1cblxuICBwcml2YXRlIHNhdmluZ0ZhaWxlZE9yQ2FuY2VsKHN0YXR1cz86IFN0YXR1cyk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsIHx8IHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWxVc2VyO1xuICB9XG5cbiAgcHJpdmF0ZSBzYXZpbmdTdWNjZXNzZnVsKGFjY291bnREYXRhOiBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcywgc3RhdHVzPzogU3RhdHVzLCBjaGVja1N0YXR1cz86IENoZWNrU3RhdHVzUmVzcG9uc2UpOiBib29sZWFuIHtcbiAgICByZXR1cm4gISEoc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmRvbmUgJiYgKGFjY291bnREYXRhPy5uZXdfYWNjb3VudCB8fCBjaGVja1N0YXR1cz8uaXNQYXltZW50QWNjb3VudEF0dGFjaGVkKSk7XG4gIH1cblxuICBwcml2YXRlIGdldFBheW1lbnRBY2NvdW50RGF0YShpbnZvaWNlOiBudW1iZXIpOiBQcm9taXNlPFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzPiB7XG4gICAgcmV0dXJuIHRoaXMuc2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXNTZXJ2aWNlXG4gICAgICAucmVxdWVzdChpbnZvaWNlKVxuICAgICAgLy8gLnRoZW4oKGFjY291bnRDaGFuZ2VzOiBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcykgPT4ge1xuICAgICAgLy8gICBpZiAoYWNjb3VudENoYW5nZXMpIHtcbiAgICAgIC8vICAgICB0aGlzLmhhbmRsZVNhdmluZ1N0YXR1cyhzdGF0dXMsIGFjY291bnRDaGFuZ2VzLm5ld19hY2NvdW50KTtcbiAgICAgIC8vICAgfVxuICAgICAgLy8gfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMoaW52b2ljZTogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHRoaXMubGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uKSB7XG4gICAgICB0aGlzLmxpc3RlblN0YXR1c1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0b3BMaXN0ZW5pbmcoKTtcbiAgICB9XG5cbiAgICAvLyBkZWJ1Z2dlclxuICAgIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5saXN0ZW4oaW52b2ljZSk7XG5cbiAgICB0aGlzLmxpc3RlblN0YXR1c1N1YnNjcmlwdGlvbiA9IHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5zdGF0dXNVcGRhdGVkJFxuICAgICAgLnN1YnNjcmliZSgoc3RhdHVzU2V0dGluZ3MpID0+IHtcblxuICAgICAgICAvLyB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXNwb25zZSQuc3Vic2NyaWJlKChyZXMpID0+IHtcbiAgICAgICAgLy8gICBpZiAocmVzLmZpbmFsKSB7XG4gICAgICAgIC8vICAgICBpZiAoc3RhdHVzU2V0dGluZ3M/LnN0YXR1c1Jlc3BvbnNlLnN0YXR1cykge1xuICAgICAgICAvLyAgICAgICB0aGlzLmxvYWROZXdQYXltZW50QWNjb3VudERhdGEoc3RhdHVzU2V0dGluZ3M/LnN0YXR1c1Jlc3BvbnNlLnN0YXR1cywgcmVzKVxuICAgICAgICAvLyAgICAgfVxuICAgICAgICAvLyAgIH1cbiAgICAgICAgLy8gfSk7XG4gICAgICAgIHZvaWQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgICAgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVzcG9uc2UkXG4gICAgICAgICkudGhlbigoY2hlY2tTdGF0dXNSZXNwb25zZSkgPT4ge1xuICAgICAgICAgIGlmIChjaGVja1N0YXR1c1Jlc3BvbnNlLmZpbmFsICYmIHN0YXR1c1NldHRpbmdzPy5zdGF0dXNSZXNwb25zZS5zdGF0dXMpIHtcbiAgICAgICAgICAgIHRoaXMubG9hZE5ld1BheW1lbnRBY2NvdW50RGF0YShzdGF0dXNTZXR0aW5ncz8uc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLCBjaGVja1N0YXR1c1Jlc3BvbnNlKVxuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgICAgIC8vIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlcXVlc3QoKTtcblxuICAgICAgICAvLyBjb25zdCBjaGVja1N0YXR1c1Jlc3BvbnNlID0gYXdhaXQgZmlyc3RWYWx1ZUZyb20oXG4gICAgICAgIC8vICAgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVzcG9uc2UkXG4gICAgICAgIC8vICk7XG4gICAgICB9KTtcbiAgICAvLyB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnJlcXVlc3QoKTtcbiAgfVxuXG4gIHByaXZhdGUgbG9hZE5ld1BheW1lbnRBY2NvdW50RGF0YShzdGF0dXM6IFN0YXR1cywgY2hlY2tTdGF0dXM6IENoZWNrU3RhdHVzUmVzcG9uc2UpOiB2b2lkIHtcbiAgICBpZiAoIXN0YXR1cy5pbnZvaWNlKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIHZvaWQgdGhpcy5zYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2VcbiAgICAgIC5yZXF1ZXN0KHN0YXR1cy5pbnZvaWNlKVxuICAgICAgLnRoZW4oKGFjY291bnRDaGFuZ2VzOiBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcykgPT4ge1xuICAgICAgICBpZiAoYWNjb3VudENoYW5nZXMpIHtcblxuICAgICAgICAgIHRoaXMuaGFuZGxlU2F2aW5nU3RhdHVzKHN0YXR1cywgYWNjb3VudENoYW5nZXMsIGNoZWNrU3RhdHVzKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGhhbmRsZVNhdmluZ1N0YXR1cyhcbiAgICBzdGF0dXM6IFN0YXR1cyxcbiAgICBhY2NvdW50OiBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcyxcbiAgICBjaGVja1N0YXR1czogQ2hlY2tTdGF0dXNSZXNwb25zZVxuICApOiB2b2lkIHtcblxuICAgIC8vIGNvbnN0IHNhdmluZ0ZhaWxlZE9yQ2FuY2VsID0gc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbCB8fCBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsVXNlcjtcbiAgICAvL1xuICAgIC8vIGNvbnN0IHNhdmluZ1N1Y2Nlc3NmdWwgPSBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuZG9uZSAmJiBhY2NvdW50O1xuXG5cbiAgICBpZiAodGhpcy5zYXZpbmdTdWNjZXNzZnVsKGFjY291bnQsIHN0YXR1cywgY2hlY2tTdGF0dXMpKSB7XG4gICAgICB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzID0gU2F2ZVBheW1lbnRNZXRob2RTdGF0dXMuc3VjY2VzcztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cyA9IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzLmZhaWxlZDtcbiAgICB9XG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0b3BMaXN0ZW5pbmcoKTtcbiAgICB0aGlzLmxpc3RlblN0YXR1c1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuXG4gICAgLy8gY29uc3QgcGF5bWVudEFjY291bnRXYXNTYXZlZCA9IHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5kb25lICYmIGFjY291bnQgIT09IG51bGw7XG4gICAgY29uc3QgaXNTYXZlUGF5bWVudE1ldGhvZCA9IHRydWU7XG5cbiAgICAvLyB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzID0gdGhpcy5zYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXMpID8gU2F2ZVBheW1lbnRNZXRob2RTdGF0dXMuc3VjY2VzcyA6IFNhdmVQYXltZW50TWV0aG9kU3RhdHVzLmZhaWxlZDtcbiAgICBjb25zb2xlLmxvZyhzdGF0dXMsIGlzU2F2ZVBheW1lbnRNZXRob2QsIHRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMpXG4gICAgdGhpcy5uZXh0QWN0aW9uU2VydmljZS5lbWl0Rmxvd1VwZGF0ZXMoXG4gICAgICBuZXcgU3RhdHVzVXBkYXRlZEFjdGlvbihzdGF0dXMsIGlzU2F2ZVBheW1lbnRNZXRob2QsIHRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMpXG4gICAgKTtcbiAgfVxufVxuIl19
@@ -4747,10 +4747,15 @@ class SavePaymentMethodStatusService {
4747
4747
  }
4748
4748
  getStatus(params) {
4749
4749
  return __awaiter(this, void 0, void 0, function* () {
4750
+ if (this.listenStatusSubscription) {
4751
+ this.listenStatusSubscription.unsubscribe();
4752
+ this.listenStatusService.stopListening();
4753
+ }
4750
4754
  this.statusRequestService.setRequestParams(params);
4751
4755
  this.statusRequestService.request();
4752
4756
  const statusResponse = yield firstValueFrom(this.statusRequestService.response$);
4753
4757
  statusResponse.status.isSavePaymentAccount = true;
4758
+ // this.listenStatusService.stopListening();
4754
4759
  const accountData = yield this.getPaymentAccountData(params.invoice);
4755
4760
  if (this.savingFailedOrCancel(statusResponse === null || statusResponse === void 0 ? void 0 : statusResponse.status) || this.savingSuccessful(accountData, statusResponse === null || statusResponse === void 0 ? void 0 : statusResponse.status)) {
4756
4761
  return statusResponse.status;
@@ -4769,7 +4774,7 @@ class SavePaymentMethodStatusService {
4769
4774
  this.statusChecked = true;
4770
4775
  }
4771
4776
  this.startWaitingStatusUpdates(params.invoice);
4772
- // this.statusRequestService.request();
4777
+ this.statusRequestService.request();
4773
4778
  }
4774
4779
  getStatusOld(params) {
4775
4780
  return __awaiter(this, void 0, void 0, function* () {