@xsolla/payment-client-core 0.1.14-test18 → 0.1.14-test2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/esm2020/lib/core/payment/actions/status-updated/status-updated.action.class.mjs +7 -17
  2. package/esm2020/lib/core/payment/actions/status-updated/status-updated.action.type.mjs +1 -1
  3. package/esm2020/lib/core/payment/config/config.service.mjs +6 -12
  4. package/esm2020/lib/core/payment/initialize/initialize.service.mjs +3 -3
  5. package/esm2020/lib/core/payment/payment.interface.mjs +1 -1
  6. package/esm2020/lib/core/payment/payment.service.mjs +2 -11
  7. package/esm2020/lib/core/payment/status/status-request/status-request-params.interface.mjs +1 -1
  8. package/esm2020/lib/core/payment/status/status-request/status-search-param.enum.mjs +1 -2
  9. package/esm2020/lib/core/payment/status/status-request/status-search-params.map.mjs +1 -8
  10. package/esm2020/lib/core/payment/status/status.interface.mjs +1 -1
  11. package/esm2020/lib/core/payment/status/status.service.mjs +4 -13
  12. package/esm2020/lib/core/payment-methods/payment-methods.service.mjs +1 -1
  13. package/esm2020/lib/core-library.service.mjs +1 -1
  14. package/fesm2015/xsolla-payment-client-core.mjs +145 -419
  15. package/fesm2015/xsolla-payment-client-core.mjs.map +1 -1
  16. package/fesm2020/xsolla-payment-client-core.mjs +142 -410
  17. package/fesm2020/xsolla-payment-client-core.mjs.map +1 -1
  18. package/lib/core/payment/actions/status-updated/status-updated.action.class.d.ts +1 -3
  19. package/lib/core/payment/actions/status-updated/status-updated.action.type.d.ts +0 -3
  20. package/lib/core/payment/payment.interface.d.ts +1 -1
  21. package/lib/core/payment/payment.service.d.ts +1 -2
  22. package/lib/core/payment/status/status-request/status-request-params.interface.d.ts +0 -1
  23. package/lib/core/payment/status/status-request/status-search-param.enum.d.ts +1 -2
  24. package/lib/core/payment/status/status.interface.d.ts +0 -1
  25. package/lib/core/payment/status/status.service.d.ts +3 -5
  26. package/lib/core/payment-methods/payment-methods.service.d.ts +1 -1
  27. package/lib/core-library.service.d.ts +2 -2
  28. package/package.json +1 -1
  29. package/xsolla-payment-client-core-0.1.14-test2.tgz +0 -0
  30. package/esm2020/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.interface.mjs +0 -2
  31. package/esm2020/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.service.mjs +0 -44
  32. package/esm2020/lib/core/payment/status/save-payment-method-status/api/saved-payment-account.interface.mjs +0 -2
  33. package/esm2020/lib/core/payment/status/save-payment-method-status/save-payment-method-status.enum.mjs +0 -6
  34. package/esm2020/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.mjs +0 -191
  35. package/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.interface.d.ts +0 -6
  36. package/lib/core/payment/status/save-payment-method-status/api/saved-payment-account-changes.service.d.ts +0 -16
  37. package/lib/core/payment/status/save-payment-method-status/api/saved-payment-account.interface.d.ts +0 -7
  38. package/lib/core/payment/status/save-payment-method-status/save-payment-method-status.enum.d.ts +0 -4
  39. package/lib/core/payment/status/save-payment-method-status/save-payment-method-status.service.d.ts +0 -29
  40. package/xsolla-payment-client-core-0.1.14-test18.tgz +0 -0
@@ -1,10 +1,8 @@
1
1
  import { Action } from '../action.interface';
2
2
  import { StatusUpdatedActionData, StatusUpdatedActionType } from './status-updated.action.type';
3
3
  import { StatusResponse } from '../../status/status-request/response/status-response.class';
4
- import { Status } from '../../status/status.interface';
5
- import { SavePaymentMethodStatus } from '../../status/save-payment-method-status/save-payment-method-status.enum';
6
4
  export declare class StatusUpdatedAction implements Action {
7
5
  type: StatusUpdatedActionType;
8
6
  data: StatusUpdatedActionData;
9
- constructor(statusResponse: StatusResponse | Status, isSavePaymentMethodMode?: boolean, savePaymentMethodStatus?: SavePaymentMethodStatus);
7
+ constructor(statusResponse: StatusResponse);
10
8
  }
@@ -1,6 +1,5 @@
1
1
  import { Action } from '../action.interface';
2
2
  import { StatusEnum } from '../../status/status.enum';
3
- import { SavePaymentMethodStatus } from '../../status/save-payment-method-status/save-payment-method-status.enum';
4
3
  export type StatusUpdatedActionType = 'status_updated';
5
4
  export interface StatusUpdatedActionData {
6
5
  statusState: StatusEnum;
@@ -8,7 +7,5 @@ export interface StatusUpdatedActionData {
8
7
  isCanceled?: boolean;
9
8
  isSuccess?: boolean;
10
9
  invoice?: number;
11
- isSavePaymentMethodMode: boolean;
12
- savePaymentMethodStatus?: SavePaymentMethodStatus;
13
10
  }
14
11
  export type StatusUpdatedAction = Action<StatusUpdatedActionType, StatusUpdatedActionData>;
@@ -15,7 +15,7 @@ export interface Payment {
15
15
  validate(field: Field): Promise<ValidationErrors | null>;
16
16
  getFinanceDetails(): FinanceDetails | null;
17
17
  runThreeDs(): void;
18
- getStatus(): Promise<Status | null>;
18
+ getStatus(): Promise<Status>;
19
19
  form: {
20
20
  fieldsStatus$: Observable<FormFieldsStatus>;
21
21
  changeFieldValue(name: string, value: string): void;
@@ -44,7 +44,6 @@ export declare class PaymentService {
44
44
  private destroy$;
45
45
  private formDestroy$;
46
46
  private readonly formFieldsStatusSubject;
47
- private isSavingMethodMode;
48
47
  constructor(initializeService: InitializeService, submitService: SubmitService, syncService: SyncService, formService: FormService, statusService: StatusService, financeDetailsService: FinanceDetailsService, creditCardStateService: CreditCardStateService, nextActionService: NextActionService, controlConfigService: ControlConfigService, threeDsService: ThreeDsService, formMessagesService: FormMessagesService);
49
48
  initialize(config: PaymentConfig): Promise<Field[]>;
50
49
  submit(): Promise<NextAction | null | void>;
@@ -53,7 +52,7 @@ export declare class PaymentService {
53
52
  runThreeDs(): void;
54
53
  getFinanceDetails(): FinanceDetails | null;
55
54
  updateFieldFormState(fieldName: string, formState: FormState): void;
56
- getStatus(): Promise<Status | null>;
55
+ getStatus(): Promise<Status>;
57
56
  getFieldConfig(field: Field): ControlConfig | null;
58
57
  changeFieldValue(name: string, value: string): void;
59
58
  changeFieldState(name: string, state: InputEventName): void;
@@ -8,5 +8,4 @@ export interface StatusRequestParams {
8
8
  testXsolla?: number;
9
9
  userReturnStatus?: string;
10
10
  token?: string | null;
11
- isSavePaymentAccount?: number;
12
11
  }
@@ -7,6 +7,5 @@ export declare enum StatusSearchParam {
7
7
  testProject = "fix_testProject",
8
8
  testPs = "fix_testPs",
9
9
  testXsolla = "fix_testXsolla",
10
- userReturnStatus = "fix_userReturnStatus",
11
- isSavePaymentAccount = "isSavePaymentAccount"
10
+ userReturnStatus = "fix_userReturnStatus"
12
11
  }
@@ -47,5 +47,4 @@ export interface Status {
47
47
  isCanceled?: boolean;
48
48
  paymentCountryIso: string;
49
49
  order?: StatusOrder;
50
- isSavePaymentAccount?: boolean;
51
50
  }
@@ -5,7 +5,6 @@ import { Status } from './status.interface';
5
5
  import { NextActionService } from '../actions/next-action.service';
6
6
  import { UrlService } from '../../url/url.service';
7
7
  import { FinanceDetailsService } from '../finance-details/finance-details.service';
8
- import { SavePaymentMethodStatusService } from './save-payment-method-status/save-payment-method-status.service';
9
8
  import * as i0 from "@angular/core";
10
9
  export declare class StatusService {
11
10
  private readonly urlService;
@@ -13,10 +12,9 @@ export declare class StatusService {
13
12
  private readonly financeDetailsService;
14
13
  private readonly listenStatusService;
15
14
  private readonly nextActionService;
16
- private readonly savePaymentMethodStatusService;
17
- constructor(urlService: UrlService, statusRequestService: StatusRequestService, financeDetailsService: FinanceDetailsService, listenStatusService: ListenStatusService, nextActionService: NextActionService, savePaymentMethodStatusService: SavePaymentMethodStatusService);
18
- getStatus(params: StatusRequestParams): Promise<Status | null>;
19
- getStatusWithUrlSearchParams(url?: string): Promise<Status | null>;
15
+ constructor(urlService: UrlService, statusRequestService: StatusRequestService, financeDetailsService: FinanceDetailsService, listenStatusService: ListenStatusService, nextActionService: NextActionService);
16
+ getStatus(params: StatusRequestParams): Promise<Status>;
17
+ getStatusWithUrlSearchParams(url?: string): Promise<Status>;
20
18
  private getRequestParamsFromUrl;
21
19
  private startWaitingStatusUpdates;
22
20
  static ɵfac: i0.ɵɵFactoryDeclaration<StatusService, never>;
@@ -12,7 +12,7 @@ export declare class PaymentMethodsService {
12
12
  private readonly apiRoute;
13
13
  private readonly cache;
14
14
  constructor(responseFactory: PaymentMethodsResponseFactory, settingsService: SettingsService, countryService: CountryService, secureApi: SecureApiClient);
15
- getList(isSaveMethodMode?: boolean): Promise<PaymentMethod[]>;
15
+ getList(isSaveMethodMode: boolean): Promise<PaymentMethod[]>;
16
16
  getQuickMethods(): Promise<PaymentMethod[]>;
17
17
  private request;
18
18
  static ɵfac: i0.ɵɵFactoryDeclaration<PaymentMethodsService, never>;
@@ -46,14 +46,14 @@ export declare class CoreLibraryService {
46
46
  private readonly creditCardStateService;
47
47
  private readonly formMessagesService;
48
48
  paymentMethods: {
49
- getList: (isSaveMethodMode?: boolean) => Promise<PaymentMethod[]>;
49
+ getList: (isSaveMethodMode: boolean) => Promise<PaymentMethod[]>;
50
50
  getQuickMethods: () => Promise<PaymentMethod[]>;
51
51
  getSavedMethods: () => Promise<SavedMethod[]>;
52
52
  getUserBalance: () => Promise<UserBalanceResponse>;
53
53
  };
54
54
  constructor(settingsService: SettingsService, countryService: CountryService, paymentMethodsService: PaymentMethodsService, savedMethodsService: SavedMethodsService, userBalanceService: UserBalanceService, paymentConfigService: PaymentConfigService, paymentService: PaymentService, deviceFingerPrintService: DeviceFingerPrintService, financeDetailsService: FinanceDetailsService, legalService: LegalService, statusService: StatusService, nextActionService: NextActionService, creditCardService: CreditCardService, creditCardStateService: CreditCardStateService, formMessagesService: FormMessagesService);
55
55
  init(configuration: InitConfiguration): Promise<void>;
56
- getStatus(url?: string): Promise<Status | null>;
56
+ getStatus(url?: string): Promise<Status>;
57
57
  setCountry(country: string): void;
58
58
  getCountry(): string;
59
59
  createPayment(config: PaymentConfig): Payment;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xsolla/payment-client-core",
3
- "version": "0.1.14-test18",
3
+ "version": "0.1.14-test2",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^15.2.0",
6
6
  "@angular/core": "^15.2.0",
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtcGF5bWVudC1hY2NvdW50LWNoYW5nZXMuaW50ZXJmYWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvcGF5bWVudC1jbGllbnQtY29yZS9zcmMvbGliL2NvcmUvcGF5bWVudC9zdGF0dXMvc2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMvYXBpL3NhdmVkLXBheW1lbnQtYWNjb3VudC1jaGFuZ2VzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2F2ZWRQYXltZW50QWNjb3VudCB9IGZyb20gJy4vc2F2ZWQtcGF5bWVudC1hY2NvdW50LmludGVyZmFjZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXMge1xuICBpbnZvaWNlX2lkOiBudW1iZXI7XG4gIG5ld19hY2NvdW50OiBTYXZlZFBheW1lbnRBY2NvdW50IHwgbnVsbDtcbiAgb2xkX2FjY291bnQ6IFNhdmVkUGF5bWVudEFjY291bnQgfCBudWxsO1xufVxuIl19
@@ -1,44 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { lastValueFrom, Subject } from 'rxjs';
3
- import { HttpHeaders } from '@angular/common/http';
4
- import { tap } from 'rxjs/operators';
5
- import { XpsResponseError } from '../../../xps-response.error';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "../../../../settings/settings.service";
8
- import * as i2 from "../../../../http/secure-api/secure-api.service";
9
- export class SavedPaymentAccountChangesService {
10
- constructor(settingsService, secureApi) {
11
- this.settingsService = settingsService;
12
- this.secureApi = secureApi;
13
- this.apiRoute = 'savedmethods/newaccountinfo';
14
- this.response = new Subject();
15
- }
16
- get response$() {
17
- return this.response.asObservable();
18
- }
19
- async request(invoice) {
20
- const requestParameters = {
21
- access_token: this.settingsService.token,
22
- invoice_id: invoice,
23
- };
24
- return lastValueFrom(this.secureApi
25
- .post(this.apiRoute, new URLSearchParams(requestParameters), {
26
- headers: new HttpHeaders().set('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8'),
27
- responseType: 'json',
28
- })
29
- .pipe(tap((value) => {
30
- this.response.next(value);
31
- }))).catch((error) => {
32
- throw new XpsResponseError(error.message);
33
- });
34
- }
35
- }
36
- SavedPaymentAccountChangesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavedPaymentAccountChangesService, deps: [{ token: i1.SettingsService }, { token: i2.SecureApiClient }], target: i0.ɵɵFactoryTarget.Injectable });
37
- SavedPaymentAccountChangesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavedPaymentAccountChangesService, providedIn: 'root' });
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavedPaymentAccountChangesService, decorators: [{
39
- type: Injectable,
40
- args: [{
41
- providedIn: 'root'
42
- }]
43
- }], ctorParameters: function () { return [{ type: i1.SettingsService }, { type: i2.SecureApiClient }]; } });
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtcGF5bWVudC1hY2NvdW50LWNoYW5nZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL2FwaS9zYXZlZC1wYXltZW50LWFjY291bnQtY2hhbmdlcy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLGFBQWEsRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlyQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7OztBQUsvRCxNQUFNLE9BQU8saUNBQWlDO0lBSTVDLFlBQ21CLGVBQWdDLEVBQ2hDLFNBQTBCO1FBRDFCLG9CQUFlLEdBQWYsZUFBZSxDQUFpQjtRQUNoQyxjQUFTLEdBQVQsU0FBUyxDQUFpQjtRQUw1QixhQUFRLEdBQUcsNkJBQTZCLENBQUM7UUFDekMsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFxQyxDQUFDO0lBSzFFLENBQUM7SUFFSixJQUFXLFNBQVM7UUFDbEIsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFTSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQWU7UUFDbEMsTUFBTSxpQkFBaUIsR0FBRztZQUN4QixZQUFZLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxLQUFLO1lBQ3hDLFVBQVUsRUFBRSxPQUFPO1NBQ3BCLENBQUM7UUFFRixPQUFPLGFBQWEsQ0FDbEIsSUFBSSxDQUFDLFNBQVM7YUFDWCxJQUFJLENBQ0gsSUFBSSxDQUFDLFFBQVEsRUFDYixJQUFJLGVBQWUsQ0FDakIsaUJBQXlELENBQzFELEVBQ0Q7WUFDRSxPQUFPLEVBQUUsSUFBSSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQzVCLGNBQWMsRUFDZCxrREFBa0QsQ0FDbkQ7WUFDRCxZQUFZLEVBQUUsTUFBTTtTQUNyQixDQUNGO2FBQ0EsSUFBSSxDQUNILEdBQUcsQ0FBQyxDQUFDLEtBQWlDLEVBQUUsRUFBRTtZQUN4QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FDSCxDQUNKLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBWSxFQUFFLEVBQUU7WUFDdkIsTUFBTSxJQUFJLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OzhIQTFDVSxpQ0FBaUM7a0lBQWpDLGlDQUFpQyxjQUZoQyxNQUFNOzJGQUVQLGlDQUFpQztrQkFIN0MsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBsYXN0VmFsdWVGcm9tLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwSGVhZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzIH0gZnJvbSAnLi9zYXZlZC1wYXltZW50LWFjY291bnQtY2hhbmdlcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU2V0dGluZ3NTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2V0dGluZ3Mvc2V0dGluZ3Muc2VydmljZSc7XG5pbXBvcnQgeyBTZWN1cmVBcGlDbGllbnQgfSBmcm9tICcuLi8uLi8uLi8uLi9odHRwL3NlY3VyZS1hcGkvc2VjdXJlLWFwaS5zZXJ2aWNlJztcbmltcG9ydCB7IFhwc1Jlc3BvbnNlRXJyb3IgfSBmcm9tICcuLi8uLi8uLi94cHMtcmVzcG9uc2UuZXJyb3InO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IGFwaVJvdXRlID0gJ3NhdmVkbWV0aG9kcy9uZXdhY2NvdW50aW5mbyc7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVzcG9uc2UgPSBuZXcgU3ViamVjdDxTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcyB8IG51bGw+KCk7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgc2V0dGluZ3NTZXJ2aWNlOiBTZXR0aW5nc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzZWN1cmVBcGk6IFNlY3VyZUFwaUNsaWVudFxuICApIHt9XG5cbiAgcHVibGljIGdldCByZXNwb25zZSQoKTogT2JzZXJ2YWJsZTxTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcyB8IG51bGw+IHtcbiAgICByZXR1cm4gdGhpcy5yZXNwb25zZS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyByZXF1ZXN0KGludm9pY2U6IG51bWJlcik6IFByb21pc2U8U2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXM+IHtcbiAgICBjb25zdCByZXF1ZXN0UGFyYW1ldGVycyA9IHtcbiAgICAgIGFjY2Vzc190b2tlbjogdGhpcy5zZXR0aW5nc1NlcnZpY2UudG9rZW4sXG4gICAgICBpbnZvaWNlX2lkOiBpbnZvaWNlLFxuICAgIH07XG5cbiAgICByZXR1cm4gbGFzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc2VjdXJlQXBpXG4gICAgICAgIC5wb3N0PFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzPihcbiAgICAgICAgICB0aGlzLmFwaVJvdXRlLFxuICAgICAgICAgIG5ldyBVUkxTZWFyY2hQYXJhbXMoXG4gICAgICAgICAgICByZXF1ZXN0UGFyYW1ldGVycyBhcyB1bmtub3duIGFzIHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH1cbiAgICAgICAgICApLFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycygpLnNldChcbiAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZScsXG4gICAgICAgICAgICAgICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9dXRmLTgnXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgcmVzcG9uc2VUeXBlOiAnanNvbicsXG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgICAgIC5waXBlKFxuICAgICAgICAgIHRhcCgodmFsdWU6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlc3BvbnNlLm5leHQodmFsdWUpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICApLmNhdGNoKChlcnJvcjogRXJyb3IpID0+IHtcbiAgICAgIHRocm93IG5ldyBYcHNSZXNwb25zZUVycm9yKGVycm9yLm1lc3NhZ2UpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZWQtcGF5bWVudC1hY2NvdW50LmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL2FwaS9zYXZlZC1wYXltZW50LWFjY291bnQuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFNhdmVkUGF5bWVudEFjY291bnQge1xuICBpY29uU3JjPzogc3RyaW5nO1xuICBpZDogbnVtYmVyO1xuICBuYW1lOiBzdHJpbmc7XG4gIHBzTmFtZTogc3RyaW5nO1xuICB0eXBlOiBzdHJpbmc7XG59XG4iXX0=
@@ -1,6 +0,0 @@
1
- export var SavePaymentMethodStatus;
2
- (function (SavePaymentMethodStatus) {
3
- SavePaymentMethodStatus["success"] = "success";
4
- SavePaymentMethodStatus["failed"] = "failed";
5
- })(SavePaymentMethodStatus || (SavePaymentMethodStatus = {}));
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMuZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLmVudW0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFOLElBQVksdUJBR1g7QUFIRCxXQUFZLHVCQUF1QjtJQUNqQyw4Q0FBbUIsQ0FBQTtJQUNuQiw0Q0FBaUIsQ0FBQTtBQUNuQixDQUFDLEVBSFcsdUJBQXVCLEtBQXZCLHVCQUF1QixRQUdsQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBlbnVtIFNhdmVQYXltZW50TWV0aG9kU3RhdHVzIHtcbiAgc3VjY2VzcyA9ICdzdWNjZXNzJyxcbiAgZmFpbGVkID0gJ2ZhaWxlZCdcbn1cbiJdfQ==
@@ -1,191 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import { firstValueFrom } from 'rxjs';
3
- import { StatusUpdatedAction } from '../../actions/status-updated/status-updated.action.class';
4
- import { TitleClass } from '../title-class.enum';
5
- import { StatusEnum } from '../status.enum';
6
- import { SavePaymentMethodStatus } from './save-payment-method-status.enum';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../status-request/status-request.service";
9
- import * as i2 from "../listen-status/listen-status.service";
10
- import * as i3 from "./api/saved-payment-account-changes.service";
11
- import * as i4 from "../../actions/next-action.service";
12
- import * as i5 from "../check-status/check-status.service";
13
- export class SavePaymentMethodStatusService {
14
- constructor(statusRequestService, listenStatusService, savedPaymentAccountChangesService, nextActionService, checkStatusService) {
15
- this.statusRequestService = statusRequestService;
16
- this.listenStatusService = listenStatusService;
17
- this.savedPaymentAccountChangesService = savedPaymentAccountChangesService;
18
- this.nextActionService = nextActionService;
19
- this.checkStatusService = checkStatusService;
20
- }
21
- async getStatus(params) {
22
- this.statusRequestService.setRequestParams(params);
23
- this.statusRequestService.request();
24
- const statusResponse = await firstValueFrom(this.statusRequestService.response$);
25
- statusResponse.status.isSavePaymentAccount = true;
26
- const accountData = await this.getPaymentAccountData(params.invoice);
27
- if (this.savingFailedOrCancel(statusResponse?.status) || this.savingSuccessful(accountData, statusResponse?.status)) {
28
- return statusResponse.status;
29
- }
30
- this.checkStatus(params);
31
- statusResponse.status.isSavePaymentAccount = true;
32
- statusResponse.status.statusState = StatusEnum.processing;
33
- return statusResponse.status;
34
- }
35
- checkStatus(params) {
36
- this.startWaitingStatusUpdates(params.invoice);
37
- this.statusRequestService.request();
38
- }
39
- async getStatusOld(params) {
40
- console.log('getStatus', params);
41
- this.statusRequestService.setRequestParams(params);
42
- // this.startWaitingStatusUpdates(params.invoice);
43
- this.statusRequestService.request();
44
- const statusResponse = await firstValueFrom(this.statusRequestService.response$);
45
- this.checkStatusService.setRequestParams(params.invoice);
46
- this.checkStatusService.request();
47
- const checkStatusResponse = await firstValueFrom(this.checkStatusService.response$);
48
- if (!checkStatusResponse.final) {
49
- this.startWaitingStatusUpdates(params.invoice);
50
- statusResponse.status.isSavePaymentAccount = true;
51
- statusResponse.status.statusState = StatusEnum.processing;
52
- return statusResponse.status;
53
- }
54
- // todo: get account
55
- const accountData = await this.getPaymentAccountData(params.invoice);
56
- if (!this.savingFailedOrCancel(statusResponse?.status) && !this.savingSuccessful(accountData, statusResponse?.status)) {
57
- // todo is proccessing
58
- this.startWaitingStatusUpdates(params.invoice);
59
- statusResponse.status.statusState = StatusEnum.processing;
60
- }
61
- statusResponse.status.isSavePaymentAccount = true;
62
- return statusResponse.status;
63
- // this.listenStatusService.listen(params.invoice);
64
- // this.statusRequestService.request();
65
- // const paramsCheck = {
66
- // section: 'getstatus',
67
- // action: 'getstatus',
68
- // // invoice: params.invoice,
69
- // ...params,
70
- // access_token: params.token || '8sogPLisB328Snf9M9aChSwkZn4IzOzf_lc_en'
71
- // };
72
- // // const check = await this.checkStatusService.requestPromise('directpayment', paramsCheck);
73
- // // console.log('requestPromise', check);
74
- // // todo: get account
75
- // // const accountData = await this.getPaymentAccountData(params.invoice);
76
- // // this.startWaitingStatusUpdates(params.invoice);
77
- // // this.listenStatusService.statusUpdated$
78
- // this.startWaitingStatusUpdates(params.invoice);
79
- // this.statusRequestService.request();
80
- // this.checkStatusService.setRequestParams(params.invoice);
81
- // this.checkStatusService.request();
82
- // this.checkStatusService.response$.subscribe((resp) => {
83
- // console.log('checkSt', resp);
84
- // });
85
- // const statusResponse = await firstValueFrom(
86
- // this.statusRequestService.response$
87
- // );
88
- // const savingFailedOrCancel = statusResponse.status?.titleClass === TitleClass.cancel || statusResponse.status?.titleClass === TitleClass.cancelUser;
89
- // const savingSuccessful = statusResponse.status?.titleClass === TitleClass.done && accountData?.new_account;
90
- // if (!accountData) {
91
- // this.startWaitingStatusUpdates(params.invoice);
92
- // statusResponse.status.statusState = StatusEnum.processing;
93
- // }
94
- // if (!this.savingFailedOrCancel(statusResponse?.status) && !this.savingSuccessful(accountData, statusResponse?.status)) {
95
- // // todo is proccessing
96
- //
97
- // // this.startWaitingStatusUpdates(params.invoice);
98
- // statusResponse.status.statusState = StatusEnum.processing;
99
- // }
100
- // statusResponse.status.isSavePaymentAccount = true;
101
- // return statusResponse.status;
102
- // return null;
103
- // if (!this.savePaymentMethodStatus) {
104
- // statusResponse.status.statusState = StatusEnum.processing;
105
- // }
106
- // statusResponse.status.isSavePaymentAccount = true;
107
- // return statusResponse.status;
108
- }
109
- savingFailedOrCancel(status) {
110
- return status?.titleClass === TitleClass.cancel || status?.titleClass === TitleClass.cancelUser;
111
- }
112
- savingSuccessful(accountData, status, checkStatus) {
113
- return !!(status?.titleClass === TitleClass.done && (accountData?.new_account || checkStatus?.isPaymentAccountAttached));
114
- }
115
- getPaymentAccountData(invoice) {
116
- return this.savedPaymentAccountChangesService
117
- .request(invoice);
118
- // .then((accountChanges: SavedPaymentAccountChanges) => {
119
- // if (accountChanges) {
120
- // this.handleSavingStatus(status, accountChanges.new_account);
121
- // }
122
- // });
123
- }
124
- startWaitingStatusUpdates(invoice) {
125
- if (this.listenStatusSubscription) {
126
- this.listenStatusSubscription.unsubscribe();
127
- this.listenStatusService.stopListening();
128
- }
129
- // debugger
130
- this.listenStatusService.listen(invoice);
131
- this.listenStatusSubscription = this.listenStatusService.statusUpdated$
132
- .subscribe((statusSettings) => {
133
- // this.checkStatusService.response$.subscribe((res) => {
134
- // if (res.final) {
135
- // if (statusSettings?.statusResponse.status) {
136
- // this.loadNewPaymentAccountData(statusSettings?.statusResponse.status, res)
137
- // }
138
- // }
139
- // });
140
- void firstValueFrom(this.checkStatusService.response$).then((checkStatusResponse) => {
141
- if (checkStatusResponse.final && statusSettings?.statusResponse.status) {
142
- this.loadNewPaymentAccountData(statusSettings?.statusResponse.status, checkStatusResponse);
143
- }
144
- });
145
- // this.checkStatusService.request();
146
- // const checkStatusResponse = await firstValueFrom(
147
- // this.checkStatusService.response$
148
- // );
149
- });
150
- // this.statusRequestService.request();
151
- }
152
- loadNewPaymentAccountData(status, checkStatus) {
153
- if (!status.invoice) {
154
- return;
155
- }
156
- void this.savedPaymentAccountChangesService
157
- .request(status.invoice)
158
- .then((accountChanges) => {
159
- if (accountChanges) {
160
- this.handleSavingStatus(status, accountChanges, checkStatus);
161
- }
162
- });
163
- }
164
- handleSavingStatus(status, account, checkStatus) {
165
- // const savingFailedOrCancel = status?.titleClass === TitleClass.cancel || status?.titleClass === TitleClass.cancelUser;
166
- //
167
- // const savingSuccessful = status?.titleClass === TitleClass.done && account;
168
- if (this.savingSuccessful(account, status, checkStatus)) {
169
- this.savePaymentMethodStatus = SavePaymentMethodStatus.success;
170
- }
171
- else {
172
- this.savePaymentMethodStatus = SavePaymentMethodStatus.failed;
173
- }
174
- this.listenStatusService.stopListening();
175
- this.listenStatusSubscription.unsubscribe();
176
- // const paymentAccountWasSaved = status?.titleClass === TitleClass.done && account !== null;
177
- const isSavePaymentMethod = true;
178
- // this.savePaymentMethodStatus = this.savingFailedOrCancel(status) ? SavePaymentMethodStatus.success : SavePaymentMethodStatus.failed;
179
- console.log(status, isSavePaymentMethod, this.savePaymentMethodStatus);
180
- this.nextActionService.emitFlowUpdates(new StatusUpdatedAction(status, isSavePaymentMethod, this.savePaymentMethodStatus));
181
- }
182
- }
183
- SavePaymentMethodStatusService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavePaymentMethodStatusService, deps: [{ token: i1.StatusRequestService }, { token: i2.ListenStatusService }, { token: i3.SavedPaymentAccountChangesService }, { token: i4.NextActionService }, { token: i5.CheckStatusService }], target: i0.ɵɵFactoryTarget.Injectable });
184
- SavePaymentMethodStatusService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavePaymentMethodStatusService, providedIn: 'root' });
185
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.7", ngImport: i0, type: SavePaymentMethodStatusService, decorators: [{
186
- type: Injectable,
187
- args: [{
188
- providedIn: 'root'
189
- }]
190
- }], ctorParameters: function () { return [{ type: i1.StatusRequestService }, { type: i2.ListenStatusService }, { type: i3.SavedPaymentAccountChangesService }, { type: i4.NextActionService }, { type: i5.CheckStatusService }]; } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL3BheW1lbnQtY2xpZW50LWNvcmUvc3JjL2xpYi9jb3JlL3BheW1lbnQvc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzL3NhdmUtcGF5bWVudC1tZXRob2Qtc3RhdHVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUczQyxPQUFPLEVBQUUsY0FBYyxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUVwRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUsvRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFakQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzVDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDOzs7Ozs7O0FBTzVFLE1BQU0sT0FBTyw4QkFBOEI7SUFJekMsWUFDbUIsb0JBQTBDLEVBQzFDLG1CQUF3QyxFQUN4QyxpQ0FBb0UsRUFDcEUsaUJBQW9DLEVBQ3BDLGtCQUFzQztRQUp0Qyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBQzFDLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsc0NBQWlDLEdBQWpDLGlDQUFpQyxDQUFtQztRQUNwRSxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO1FBQ3BDLHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBb0I7SUFBSSxDQUFDO0lBQ3ZELEtBQUssQ0FBQyxTQUFTLENBQUMsTUFBMkI7UUFDaEQsSUFBSSxDQUFDLG9CQUFvQixDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ25ELElBQUksQ0FBQyxvQkFBb0IsQ0FB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SDFDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3RhdHVzUmVxdWVzdFBhcmFtcyB9IGZyb20gJy4uL3N0YXR1cy1yZXF1ZXN0L3N0YXR1cy1yZXF1ZXN0LXBhcmFtcy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgU3RhdHVzIH0gZnJvbSAnLi4vc3RhdHVzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBmaXJzdFZhbHVlRnJvbSwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBTdGF0dXNSZXF1ZXN0U2VydmljZSB9IGZyb20gJy4uL3N0YXR1cy1yZXF1ZXN0L3N0YXR1cy1yZXF1ZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU3RhdHVzVXBkYXRlZEFjdGlvbiB9IGZyb20gJy4uLy4uL2FjdGlvbnMvc3RhdHVzLXVwZGF0ZWQvc3RhdHVzLXVwZGF0ZWQuYWN0aW9uLmNsYXNzJztcbmltcG9ydCB7IExpc3RlblN0YXR1c1NlcnZpY2UgfSBmcm9tICcuLi9saXN0ZW4tc3RhdHVzL2xpc3Rlbi1zdGF0dXMuc2VydmljZSc7XG5pbXBvcnQgeyBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlcyB9IGZyb20gJy4vYXBpL3NhdmVkLXBheW1lbnQtYWNjb3VudC1jaGFuZ2VzLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2UgfSBmcm9tICcuL2FwaS9zYXZlZC1wYXltZW50LWFjY291bnQtY2hhbmdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFNhdmVkUGF5bWVudEFjY291bnQgfSBmcm9tICcuL2FwaS9zYXZlZC1wYXltZW50LWFjY291bnQuaW50ZXJmYWNlJztcbmltcG9ydCB7IFRpdGxlQ2xhc3MgfSBmcm9tICcuLi90aXRsZS1jbGFzcy5lbnVtJztcbmltcG9ydCB7IE5leHRBY3Rpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vYWN0aW9ucy9uZXh0LWFjdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IFN0YXR1c0VudW0gfSBmcm9tICcuLi9zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cyB9IGZyb20gJy4vc2F2ZS1wYXltZW50LW1ldGhvZC1zdGF0dXMuZW51bSc7XG5pbXBvcnQgeyBDaGVja1N0YXR1c1NlcnZpY2UgfSBmcm9tICcuLi9jaGVjay1zdGF0dXMvY2hlY2stc3RhdHVzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2hlY2tTdGF0dXNSZXNwb25zZSB9IGZyb20gJy4uL2NoZWNrLXN0YXR1cy9yZXNwb25zZS9jaGVjay1zdGF0dXMtcmVzcG9uc2UuY2xhc3MnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBTYXZlUGF5bWVudE1ldGhvZFN0YXR1c1NlcnZpY2Uge1xuICBwcml2YXRlIHNhdmVQYXltZW50TWV0aG9kU3RhdHVzPzogU2F2ZVBheW1lbnRNZXRob2RTdGF0dXM7XG4gIHByaXZhdGUgbGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uITogU3Vic2NyaXB0aW9uO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IHN0YXR1c1JlcXVlc3RTZXJ2aWNlOiBTdGF0dXNSZXF1ZXN0U2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxpc3RlblN0YXR1c1NlcnZpY2U6IExpc3RlblN0YXR1c1NlcnZpY2UsXG4gICAgcHJpdmF0ZSByZWFkb25seSBzYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2U6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IG5leHRBY3Rpb25TZXJ2aWNlOiBOZXh0QWN0aW9uU2VydmljZSxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNoZWNrU3RhdHVzU2VydmljZTogQ2hlY2tTdGF0dXNTZXJ2aWNlKSB7IH1cbiAgcHVibGljIGFzeW5jIGdldFN0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiBQcm9taXNlPFN0YXR1cz4ge1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2Uuc2V0UmVxdWVzdFBhcmFtcyhwYXJhbXMpO1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG5cbiAgICBjb25zdCBhY2NvdW50RGF0YSA9IGF3YWl0IHRoaXMuZ2V0UGF5bWVudEFjY291bnREYXRhKHBhcmFtcy5pbnZvaWNlKTtcbiAgICBpZiAodGhpcy5zYXZpbmdGYWlsZWRPckNhbmNlbChzdGF0dXNSZXNwb25zZT8uc3RhdHVzKSB8fCB0aGlzLnNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudERhdGEsIHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpKSB7XG4gICAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICAgIH1cblxuICAgIHRoaXMuY2hlY2tTdGF0dXMocGFyYW1zKTtcbiAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuaXNTYXZlUGF5bWVudEFjY291bnQgPSB0cnVlO1xuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICB9XG5cbiAgcHJpdmF0ZSBjaGVja1N0YXR1cyhwYXJhbXM6IFN0YXR1c1JlcXVlc3RQYXJhbXMpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuICB9XG4gIHB1YmxpYyBhc3luYyBnZXRTdGF0dXNPbGQocGFyYW1zOiBTdGF0dXNSZXF1ZXN0UGFyYW1zKTogUHJvbWlzZTxTdGF0dXMgfCBudWxsPiB7XG4gICAgY29uc29sZS5sb2coJ2dldFN0YXR1cycsIHBhcmFtcyk7XG5cbiAgICB0aGlzLnN0YXR1c1JlcXVlc3RTZXJ2aWNlLnNldFJlcXVlc3RQYXJhbXMocGFyYW1zKTtcbiAgICAvLyB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgKTtcblxuICAgIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnNldFJlcXVlc3RQYXJhbXMocGFyYW1zLmludm9pY2UpO1xuICAgIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlcXVlc3QoKTtcblxuICAgIGNvbnN0IGNoZWNrU3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlc3BvbnNlJFxuICAgICk7XG5cbiAgICBpZiAoIWNoZWNrU3RhdHVzUmVzcG9uc2UuZmluYWwpIHtcbiAgICAgIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuaXNTYXZlUGF5bWVudEFjY291bnQgPSB0cnVlO1xuICAgICAgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLnN0YXR1c1N0YXRlID0gU3RhdHVzRW51bS5wcm9jZXNzaW5nO1xuICAgICAgcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgICB9XG5cbiAgICAvLyB0b2RvOiBnZXQgYWNjb3VudFxuICAgIGNvbnN0IGFjY291bnREYXRhID0gYXdhaXQgdGhpcy5nZXRQYXltZW50QWNjb3VudERhdGEocGFyYW1zLmludm9pY2UpO1xuXG4gICAgaWYgKCF0aGlzLnNhdmluZ0ZhaWxlZE9yQ2FuY2VsKHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpICYmICF0aGlzLnNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudERhdGEsIHN0YXR1c1Jlc3BvbnNlPy5zdGF0dXMpKSB7XG4gICAgICAvLyB0b2RvIGlzIHByb2NjZXNzaW5nXG5cbiAgICAgIHRoaXMuc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhwYXJhbXMuaW52b2ljZSk7XG4gICAgICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgfVxuICAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG4gICAgcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcblxuICAgIC8vIHRoaXMubGlzdGVuU3RhdHVzU2VydmljZS5saXN0ZW4ocGFyYW1zLmludm9pY2UpO1xuICAgIC8vIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuXG5cblxuXG4gICAgLy8gY29uc3QgcGFyYW1zQ2hlY2sgPSB7XG4gICAgLy8gICBzZWN0aW9uOiAnZ2V0c3RhdHVzJyxcbiAgICAvLyAgIGFjdGlvbjogJ2dldHN0YXR1cycsXG4gICAgLy8gICAvLyBpbnZvaWNlOiBwYXJhbXMuaW52b2ljZSxcbiAgICAvLyAgIC4uLnBhcmFtcyxcbiAgICAvLyAgIGFjY2Vzc190b2tlbjogcGFyYW1zLnRva2VuIHx8ICc4c29nUExpc0IzMjhTbmY5TTlhQ2hTd2tabjRJek96Zl9sY19lbidcbiAgICAvLyB9O1xuICAgIC8vIC8vIGNvbnN0IGNoZWNrID0gYXdhaXQgdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVxdWVzdFByb21pc2UoJ2RpcmVjdHBheW1lbnQnLCBwYXJhbXNDaGVjayk7XG4gICAgLy8gLy8gY29uc29sZS5sb2coJ3JlcXVlc3RQcm9taXNlJywgY2hlY2spO1xuICAgIC8vIC8vIHRvZG86IGdldCBhY2NvdW50XG4gICAgLy8gLy8gY29uc3QgYWNjb3VudERhdGEgPSBhd2FpdCB0aGlzLmdldFBheW1lbnRBY2NvdW50RGF0YShwYXJhbXMuaW52b2ljZSk7XG4gICAgLy8gLy8gdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyAvLyB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RhdHVzVXBkYXRlZCRcbiAgICAvLyB0aGlzLnN0YXJ0V2FpdGluZ1N0YXR1c1VwZGF0ZXMocGFyYW1zLmludm9pY2UpO1xuICAgIC8vIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuICAgIC8vIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnNldFJlcXVlc3RQYXJhbXMocGFyYW1zLmludm9pY2UpO1xuICAgIC8vIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlcXVlc3QoKTtcbiAgICAvLyB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXNwb25zZSQuc3Vic2NyaWJlKChyZXNwKSA9PiB7XG4gICAgLy8gICBjb25zb2xlLmxvZygnY2hlY2tTdCcsIHJlc3ApO1xuICAgIC8vIH0pO1xuXG4gICAgLy8gY29uc3Qgc3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAvLyAgIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVzcG9uc2UkXG4gICAgLy8gKTtcblxuXG5cbiAgICAvLyBjb25zdCBzYXZpbmdGYWlsZWRPckNhbmNlbCA9IHN0YXR1c1Jlc3BvbnNlLnN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWwgfHwgc3RhdHVzUmVzcG9uc2Uuc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbFVzZXI7XG5cbiAgICAvLyBjb25zdCBzYXZpbmdTdWNjZXNzZnVsID0gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmRvbmUgJiYgYWNjb3VudERhdGE/Lm5ld19hY2NvdW50O1xuXG4gICAgLy8gaWYgKCFhY2NvdW50RGF0YSkge1xuICAgIC8vICAgdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICAvLyB9XG5cbiAgICAvLyBpZiAoIXRoaXMuc2F2aW5nRmFpbGVkT3JDYW5jZWwoc3RhdHVzUmVzcG9uc2U/LnN0YXR1cykgJiYgIXRoaXMuc2F2aW5nU3VjY2Vzc2Z1bChhY2NvdW50RGF0YSwgc3RhdHVzUmVzcG9uc2U/LnN0YXR1cykpIHtcbiAgICAvLyAgIC8vIHRvZG8gaXMgcHJvY2Nlc3NpbmdcbiAgICAvL1xuICAgIC8vICAgLy8gdGhpcy5zdGFydFdhaXRpbmdTdGF0dXNVcGRhdGVzKHBhcmFtcy5pbnZvaWNlKTtcbiAgICAvLyAgIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5zdGF0dXNTdGF0ZSA9IFN0YXR1c0VudW0ucHJvY2Vzc2luZztcbiAgICAvLyB9XG4gICAgLy8gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLmlzU2F2ZVBheW1lbnRBY2NvdW50ID0gdHJ1ZTtcbiAgICAvLyByZXR1cm4gc3RhdHVzUmVzcG9uc2Uuc3RhdHVzO1xuICAgIC8vIHJldHVybiBudWxsO1xuXG4gICAgLy8gaWYgKCF0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzKSB7XG4gICAgLy8gICBzdGF0dXNSZXNwb25zZS5zdGF0dXMuc3RhdHVzU3RhdGUgPSBTdGF0dXNFbnVtLnByb2Nlc3Npbmc7XG4gICAgLy8gfVxuICAgIC8vIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cy5pc1NhdmVQYXltZW50QWNjb3VudCA9IHRydWU7XG4gICAgLy8gcmV0dXJuIHN0YXR1c1Jlc3BvbnNlLnN0YXR1cztcbiAgfVxuXG4gIHByaXZhdGUgc2F2aW5nRmFpbGVkT3JDYW5jZWwoc3RhdHVzPzogU3RhdHVzKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWwgfHwgc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmNhbmNlbFVzZXI7XG4gIH1cblxuICBwcml2YXRlIHNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudERhdGE6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzLCBzdGF0dXM/OiBTdGF0dXMsIGNoZWNrU3RhdHVzPzogQ2hlY2tTdGF0dXNSZXNwb25zZSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhIShzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuZG9uZSAmJiAoYWNjb3VudERhdGE/Lm5ld19hY2NvdW50IHx8IGNoZWNrU3RhdHVzPy5pc1BheW1lbnRBY2NvdW50QXR0YWNoZWQpKTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0UGF5bWVudEFjY291bnREYXRhKGludm9pY2U6IG51bWJlcik6IFByb21pc2U8U2F2ZWRQYXltZW50QWNjb3VudENoYW5nZXM+IHtcbiAgICByZXR1cm4gdGhpcy5zYXZlZFBheW1lbnRBY2NvdW50Q2hhbmdlc1NlcnZpY2VcbiAgICAgIC5yZXF1ZXN0KGludm9pY2UpXG4gICAgICAvLyAudGhlbigoYWNjb3VudENoYW5nZXM6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzKSA9PiB7XG4gICAgICAvLyAgIGlmIChhY2NvdW50Q2hhbmdlcykge1xuICAgICAgLy8gICAgIHRoaXMuaGFuZGxlU2F2aW5nU3RhdHVzKHN0YXR1cywgYWNjb3VudENoYW5nZXMubmV3X2FjY291bnQpO1xuICAgICAgLy8gICB9XG4gICAgICAvLyB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhcnRXYWl0aW5nU3RhdHVzVXBkYXRlcyhpbnZvaWNlOiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5saXN0ZW5TdGF0dXNTdWJzY3JpcHRpb24pIHtcbiAgICAgIHRoaXMubGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RvcExpc3RlbmluZygpO1xuICAgIH1cblxuICAgIC8vIGRlYnVnZ2VyXG4gICAgdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLmxpc3RlbihpbnZvaWNlKTtcblxuICAgIHRoaXMubGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uID0gdGhpcy5saXN0ZW5TdGF0dXNTZXJ2aWNlLnN0YXR1c1VwZGF0ZWQkXG4gICAgICAuc3Vic2NyaWJlKChzdGF0dXNTZXR0aW5ncykgPT4ge1xuXG4gICAgICAgIC8vIHRoaXMuY2hlY2tTdGF0dXNTZXJ2aWNlLnJlc3BvbnNlJC5zdWJzY3JpYmUoKHJlcykgPT4ge1xuICAgICAgICAvLyAgIGlmIChyZXMuZmluYWwpIHtcbiAgICAgICAgLy8gICAgIGlmIChzdGF0dXNTZXR0aW5ncz8uc3RhdHVzUmVzcG9uc2Uuc3RhdHVzKSB7XG4gICAgICAgIC8vICAgICAgIHRoaXMubG9hZE5ld1BheW1lbnRBY2NvdW50RGF0YShzdGF0dXNTZXR0aW5ncz8uc3RhdHVzUmVzcG9uc2Uuc3RhdHVzLCByZXMpXG4gICAgICAgIC8vICAgICB9XG4gICAgICAgIC8vICAgfVxuICAgICAgICAvLyB9KTtcbiAgICAgICAgdm9pZCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgICB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXNwb25zZSRcbiAgICAgICAgKS50aGVuKChjaGVja1N0YXR1c1Jlc3BvbnNlKSA9PiB7XG4gICAgICAgICAgaWYgKGNoZWNrU3RhdHVzUmVzcG9uc2UuZmluYWwgJiYgc3RhdHVzU2V0dGluZ3M/LnN0YXR1c1Jlc3BvbnNlLnN0YXR1cykge1xuICAgICAgICAgICAgdGhpcy5sb2FkTmV3UGF5bWVudEFjY291bnREYXRhKHN0YXR1c1NldHRpbmdzPy5zdGF0dXNSZXNwb25zZS5zdGF0dXMsIGNoZWNrU3RhdHVzUmVzcG9uc2UpXG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgLy8gdGhpcy5jaGVja1N0YXR1c1NlcnZpY2UucmVxdWVzdCgpO1xuXG4gICAgICAgIC8vIGNvbnN0IGNoZWNrU3RhdHVzUmVzcG9uc2UgPSBhd2FpdCBmaXJzdFZhbHVlRnJvbShcbiAgICAgICAgLy8gICB0aGlzLmNoZWNrU3RhdHVzU2VydmljZS5yZXNwb25zZSRcbiAgICAgICAgLy8gKTtcbiAgICAgIH0pO1xuICAgIC8vIHRoaXMuc3RhdHVzUmVxdWVzdFNlcnZpY2UucmVxdWVzdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBsb2FkTmV3UGF5bWVudEFjY291bnREYXRhKHN0YXR1czogU3RhdHVzLCBjaGVja1N0YXR1czogQ2hlY2tTdGF0dXNSZXNwb25zZSk6IHZvaWQge1xuICAgIGlmICghc3RhdHVzLmludm9pY2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdm9pZCB0aGlzLnNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzU2VydmljZVxuICAgICAgLnJlcXVlc3Qoc3RhdHVzLmludm9pY2UpXG4gICAgICAudGhlbigoYWNjb3VudENoYW5nZXM6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzKSA9PiB7XG4gICAgICAgIGlmIChhY2NvdW50Q2hhbmdlcykge1xuXG4gICAgICAgICAgdGhpcy5oYW5kbGVTYXZpbmdTdGF0dXMoc3RhdHVzLCBhY2NvdW50Q2hhbmdlcywgY2hlY2tTdGF0dXMpO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgaGFuZGxlU2F2aW5nU3RhdHVzKFxuICAgIHN0YXR1czogU3RhdHVzLFxuICAgIGFjY291bnQ6IFNhdmVkUGF5bWVudEFjY291bnRDaGFuZ2VzLFxuICAgIGNoZWNrU3RhdHVzOiBDaGVja1N0YXR1c1Jlc3BvbnNlXG4gICk6IHZvaWQge1xuXG4gICAgLy8gY29uc3Qgc2F2aW5nRmFpbGVkT3JDYW5jZWwgPSBzdGF0dXM/LnRpdGxlQ2xhc3MgPT09IFRpdGxlQ2xhc3MuY2FuY2VsIHx8IHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5jYW5jZWxVc2VyO1xuICAgIC8vXG4gICAgLy8gY29uc3Qgc2F2aW5nU3VjY2Vzc2Z1bCA9IHN0YXR1cz8udGl0bGVDbGFzcyA9PT0gVGl0bGVDbGFzcy5kb25lICYmIGFjY291bnQ7XG5cblxuICAgIGlmICh0aGlzLnNhdmluZ1N1Y2Nlc3NmdWwoYWNjb3VudCwgc3RhdHVzLCBjaGVja1N0YXR1cykpIHtcbiAgICAgIHRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMgPSBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cy5zdWNjZXNzO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnNhdmVQYXltZW50TWV0aG9kU3RhdHVzID0gU2F2ZVBheW1lbnRNZXRob2RTdGF0dXMuZmFpbGVkO1xuICAgIH1cbiAgICB0aGlzLmxpc3RlblN0YXR1c1NlcnZpY2Uuc3RvcExpc3RlbmluZygpO1xuICAgIHRoaXMubGlzdGVuU3RhdHVzU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG5cbiAgICAvLyBjb25zdCBwYXltZW50QWNjb3VudFdhc1NhdmVkID0gc3RhdHVzPy50aXRsZUNsYXNzID09PSBUaXRsZUNsYXNzLmRvbmUgJiYgYWNjb3VudCAhPT0gbnVsbDtcbiAgICBjb25zdCBpc1NhdmVQYXltZW50TWV0aG9kID0gdHJ1ZTtcblxuICAgIC8vIHRoaXMuc2F2ZVBheW1lbnRNZXRob2RTdGF0dXMgPSB0aGlzLnNhdmluZ0ZhaWxlZE9yQ2FuY2VsKHN0YXR1cykgPyBTYXZlUGF5bWVudE1ldGhvZFN0YXR1cy5zdWNjZXNzIDogU2F2ZVBheW1lbnRNZXRob2RTdGF0dXMuZmFpbGVkO1xuICAgIGNvbnNvbGUubG9nKHN0YXR1cywgaXNTYXZlUGF5bWVudE1ldGhvZCwgdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cylcbiAgICB0aGlzLm5leHRBY3Rpb25TZXJ2aWNlLmVtaXRGbG93VXBkYXRlcyhcbiAgICAgIG5ldyBTdGF0dXNVcGRhdGVkQWN0aW9uKHN0YXR1cywgaXNTYXZlUGF5bWVudE1ldGhvZCwgdGhpcy5zYXZlUGF5bWVudE1ldGhvZFN0YXR1cylcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,6 +0,0 @@
1
- import { SavedPaymentAccount } from './saved-payment-account.interface';
2
- export interface SavedPaymentAccountChanges {
3
- invoice_id: number;
4
- new_account: SavedPaymentAccount | null;
5
- old_account: SavedPaymentAccount | null;
6
- }
@@ -1,16 +0,0 @@
1
- import { Observable } from 'rxjs';
2
- import { SavedPaymentAccountChanges } from './saved-payment-account-changes.interface';
3
- import { SettingsService } from '../../../../settings/settings.service';
4
- import { SecureApiClient } from '../../../../http/secure-api/secure-api.service';
5
- import * as i0 from "@angular/core";
6
- export declare class SavedPaymentAccountChangesService {
7
- private readonly settingsService;
8
- private readonly secureApi;
9
- private readonly apiRoute;
10
- private readonly response;
11
- constructor(settingsService: SettingsService, secureApi: SecureApiClient);
12
- get response$(): Observable<SavedPaymentAccountChanges | null>;
13
- request(invoice: number): Promise<SavedPaymentAccountChanges>;
14
- static ɵfac: i0.ɵɵFactoryDeclaration<SavedPaymentAccountChangesService, never>;
15
- static ɵprov: i0.ɵɵInjectableDeclaration<SavedPaymentAccountChangesService>;
16
- }
@@ -1,7 +0,0 @@
1
- export interface SavedPaymentAccount {
2
- iconSrc?: string;
3
- id: number;
4
- name: string;
5
- psName: string;
6
- type: string;
7
- }
@@ -1,4 +0,0 @@
1
- export declare enum SavePaymentMethodStatus {
2
- success = "success",
3
- failed = "failed"
4
- }
@@ -1,29 +0,0 @@
1
- import { StatusRequestParams } from '../status-request/status-request-params.interface';
2
- import { Status } from '../status.interface';
3
- import { StatusRequestService } from '../status-request/status-request.service';
4
- import { ListenStatusService } from '../listen-status/listen-status.service';
5
- import { SavedPaymentAccountChangesService } from './api/saved-payment-account-changes.service';
6
- import { NextActionService } from '../../actions/next-action.service';
7
- import { CheckStatusService } from '../check-status/check-status.service';
8
- import * as i0 from "@angular/core";
9
- export declare class SavePaymentMethodStatusService {
10
- private readonly statusRequestService;
11
- private readonly listenStatusService;
12
- private readonly savedPaymentAccountChangesService;
13
- private readonly nextActionService;
14
- private readonly checkStatusService;
15
- private savePaymentMethodStatus?;
16
- private listenStatusSubscription;
17
- constructor(statusRequestService: StatusRequestService, listenStatusService: ListenStatusService, savedPaymentAccountChangesService: SavedPaymentAccountChangesService, nextActionService: NextActionService, checkStatusService: CheckStatusService);
18
- getStatus(params: StatusRequestParams): Promise<Status>;
19
- private checkStatus;
20
- getStatusOld(params: StatusRequestParams): Promise<Status | null>;
21
- private savingFailedOrCancel;
22
- private savingSuccessful;
23
- private getPaymentAccountData;
24
- private startWaitingStatusUpdates;
25
- private loadNewPaymentAccountData;
26
- private handleSavingStatus;
27
- static ɵfac: i0.ɵɵFactoryDeclaration<SavePaymentMethodStatusService, never>;
28
- static ɵprov: i0.ɵɵInjectableDeclaration<SavePaymentMethodStatusService>;
29
- }