taxtank-core 0.8.6 → 0.8.7
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.
- package/bundles/taxtank-core.umd.js +94 -92
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/db/Models/transaction-base.js +2 -1
- package/esm2015/lib/services/http/address/address.service.js +39 -0
- package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +118 -0
- package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +52 -0
- package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +89 -0
- package/esm2015/lib/services/http/bank/bank.service.js +24 -0
- package/esm2015/lib/services/http/bank/basiq/basiq.service.js +94 -0
- package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +38 -0
- package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +89 -0
- package/esm2015/lib/services/http/chat/chat.service.js +77 -0
- package/esm2015/lib/services/http/chat/message/message.service.js +65 -0
- package/esm2015/lib/services/http/chat/message-document/message-document.service.js +118 -0
- package/esm2015/lib/services/{depreciation/capital-project.service.js → http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js} +7 -7
- package/esm2015/lib/services/http/depreciation/depreciation.service.js +146 -0
- package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +84 -0
- package/esm2015/lib/services/{client → http/firm/client-invite}/client-invite.service.js +7 -7
- package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +98 -0
- package/esm2015/lib/services/http/firm/employee/employee.service.js +39 -0
- package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +53 -0
- package/esm2015/lib/services/http/firm/firm.service.js +79 -0
- package/esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js +37 -0
- package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +90 -0
- package/esm2015/lib/services/http/income-source/income-source.service.js +109 -0
- package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +90 -0
- package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +87 -0
- package/esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js +73 -0
- package/esm2015/lib/services/http/loan/loan.service.js +145 -0
- package/esm2015/lib/services/http/property/property-category/property-category.service.js +23 -0
- package/esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js +47 -0
- package/esm2015/lib/services/http/property/property-document/property-document.service.js +70 -0
- package/esm2015/lib/services/http/property/property-sale/property-sale.service.js +20 -0
- package/esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js +21 -0
- package/esm2015/lib/services/http/property/property-share/property-share.service.js +115 -0
- package/esm2015/lib/services/http/property/property.service.js +126 -0
- package/esm2015/lib/services/http/rest/rest.service.js +190 -0
- package/esm2015/lib/services/http/service-notification/service-notification.service.js +65 -0
- package/esm2015/lib/services/http/subscription/subscription.service.js +157 -0
- package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +41 -0
- package/esm2015/lib/services/http/tax-review/tax-review.service.js +103 -0
- package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +71 -0
- package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +85 -0
- package/esm2015/lib/services/http/transaction/transaction.service.js +319 -0
- package/esm2015/lib/services/http/user/occupation/occupation.service.js +45 -0
- package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +59 -0
- package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +29 -0
- package/esm2015/lib/services/http/user/user.service.js +124 -0
- package/esm2015/lib/services/http/vehicle/vehicle.service.js +237 -0
- package/esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js +45 -0
- package/esm2015/public-api.js +48 -48
- package/fesm2015/taxtank-core.js +51 -49
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/services/{address → http/address}/address.service.d.ts +1 -1
- package/lib/services/{bank → http/bank/bank-account}/bank-account.service.d.ts +5 -5
- package/lib/services/{bank → http/bank/bank-connection}/bank-connection.service.d.ts +5 -5
- package/lib/services/{bank → http/bank/bank-transaction}/bank-transaction.service.d.ts +5 -5
- package/lib/services/{bank → http/bank}/bank.service.d.ts +4 -4
- package/lib/services/{bank → http/bank/basiq}/basiq.service.d.ts +7 -7
- package/lib/services/{chart-accounts → http/chart-accounts/chart-accounts-depreciations}/chart-accounts-depreciations.service.d.ts +4 -4
- package/lib/services/{chart-accounts → http/chart-accounts}/chart-accounts.service.d.ts +3 -3
- package/lib/services/{chat → http/chat}/chat.service.d.ts +7 -7
- package/lib/services/{chat → http/chat/message}/message.service.d.ts +7 -7
- package/lib/services/{chat → http/chat/message-document}/message-document.service.d.ts +3 -3
- package/lib/services/{depreciation/capital-project.service.d.ts → http/depreciation/depreciation-capital-project/depreciation-capital-project.service.d.ts} +4 -4
- package/lib/services/{depreciation → http/depreciation}/depreciation.service.d.ts +5 -5
- package/lib/services/{document → http/document/document-folder}/document-folder.service.d.ts +6 -6
- package/lib/services/{client → http/firm/client-invite}/client-invite.service.d.ts +4 -4
- package/lib/services/{client → http/firm/client-movement}/client-movement.service.d.ts +7 -7
- package/lib/services/{employee → http/firm/employee}/employee.service.d.ts +4 -4
- package/lib/services/{employee → http/firm/employee-invite}/employee-invite.service.d.ts +4 -4
- package/lib/services/{firm → http/firm}/firm.service.d.ts +2 -2
- package/lib/services/{client → http/firm/portfolio-report}/client-portfolio-report.service.d.ts +1 -1
- package/lib/services/{income-source → http/income-source/income-source-forecast}/income-source-forecast.service.d.ts +5 -5
- package/lib/services/{income-source → http/income-source}/income-source.service.d.ts +8 -8
- package/lib/services/{income-source → http/income-source/salary-forecast}/salary-forecast.service.d.ts +6 -6
- package/lib/services/{income-source → http/income-source/sole-forecast}/sole-forecast.service.d.ts +5 -5
- package/lib/services/{borrowing-expense → http/loan/borrowing-expense}/borrowing-expense.service.d.ts +2 -2
- package/lib/services/{loan → http/loan}/loan.service.d.ts +6 -6
- package/lib/services/{property → http/property}/property-category/property-category.service.d.ts +4 -4
- package/lib/services/{property → http/property/property-category-movement}/property-category-movement.service.d.ts +4 -4
- package/lib/services/{property → http/property}/property-document/property-document.service.d.ts +5 -5
- package/lib/services/http/property/property-sale/property-sale.service.d.ts +10 -0
- package/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.d.ts +11 -0
- package/lib/services/{property → http/property}/property-share/property-share.service.d.ts +5 -5
- package/lib/services/{property → http/property}/property.service.d.ts +5 -5
- package/lib/services/{base-rest.service.d.ts → http/rest/rest.service.d.ts} +4 -4
- package/lib/services/http/service-notification/service-notification.service.d.ts +31 -0
- package/lib/services/{subscription → http/subscription}/subscription.service.d.ts +6 -6
- package/lib/services/{tax-review → http/tax-review/tax-review-history}/tax-review-history.service.d.ts +5 -5
- package/lib/services/{tax-review → http/tax-review}/tax-review.service.d.ts +6 -6
- package/lib/services/{tax-summary → http/tax-summary}/tax-summary.service.d.ts +2 -2
- package/lib/services/{transaction → http/transaction/transaction-allocation}/transaction-allocation.service.d.ts +6 -6
- package/lib/services/{transaction → http/transaction}/transaction.service.d.ts +7 -7
- package/lib/services/{user → http/user/occupation}/occupation.service.d.ts +1 -1
- package/lib/services/{user-event → http/user/user-event-setting}/user-event-setting.service.d.ts +5 -5
- package/lib/services/{user-event → http/user/user-event-type}/user-event-type.service.d.ts +5 -5
- package/lib/services/{user → http/user}/user.service.d.ts +3 -3
- package/lib/services/{work/work-tank.service.d.ts → http/vehicle/vehicle.service.d.ts} +9 -8
- package/lib/services/property/{equity-position-chart.service.d.ts → equity-position-chart/equity-position-chart.service.d.ts} +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +47 -47
- package/esm2015/lib/services/address/address.service.js +0 -39
- package/esm2015/lib/services/bank/bank-account.service.js +0 -118
- package/esm2015/lib/services/bank/bank-connection.service.js +0 -52
- package/esm2015/lib/services/bank/bank-transaction.service.js +0 -89
- package/esm2015/lib/services/bank/bank.service.js +0 -24
- package/esm2015/lib/services/bank/basiq.service.js +0 -94
- package/esm2015/lib/services/base-rest.service.js +0 -190
- package/esm2015/lib/services/borrowing-expense/borrowing-expense.service.js +0 -73
- package/esm2015/lib/services/chart-accounts/chart-accounts-depreciations.service.js +0 -38
- package/esm2015/lib/services/chart-accounts/chart-accounts.service.js +0 -89
- package/esm2015/lib/services/chat/chat.service.js +0 -77
- package/esm2015/lib/services/chat/message-document.service.js +0 -118
- package/esm2015/lib/services/chat/message.service.js +0 -65
- package/esm2015/lib/services/client/client-movement.service.js +0 -98
- package/esm2015/lib/services/client/client-portfolio-report.service.js +0 -37
- package/esm2015/lib/services/depreciation/depreciation.service.js +0 -146
- package/esm2015/lib/services/document/document-folder.service.js +0 -84
- package/esm2015/lib/services/employee/employee-invite.service.js +0 -53
- package/esm2015/lib/services/employee/employee.service.js +0 -39
- package/esm2015/lib/services/firm/firm.service.js +0 -79
- package/esm2015/lib/services/income-source/income-source-forecast.service.js +0 -90
- package/esm2015/lib/services/income-source/income-source.service.js +0 -109
- package/esm2015/lib/services/income-source/salary-forecast.service.js +0 -90
- package/esm2015/lib/services/income-source/sole-forecast.service.js +0 -87
- package/esm2015/lib/services/loan/loan.service.js +0 -145
- package/esm2015/lib/services/notification/notification.service.js +0 -65
- package/esm2015/lib/services/property/equity-position-chart.service.js +0 -45
- package/esm2015/lib/services/property/property-category/property-category.service.js +0 -23
- package/esm2015/lib/services/property/property-category-movement.service.js +0 -47
- package/esm2015/lib/services/property/property-document/property-document.service.js +0 -70
- package/esm2015/lib/services/property/property-sale/property-sale.service.js +0 -20
- package/esm2015/lib/services/property/property-sale/tax-exemption/tax-exemption.service.js +0 -21
- package/esm2015/lib/services/property/property-share/property-share.service.js +0 -115
- package/esm2015/lib/services/property/property.service.js +0 -126
- package/esm2015/lib/services/subscription/subscription.service.js +0 -157
- package/esm2015/lib/services/tax-review/tax-review-history.service.js +0 -41
- package/esm2015/lib/services/tax-review/tax-review.service.js +0 -103
- package/esm2015/lib/services/tax-summary/tax-summary.service.js +0 -71
- package/esm2015/lib/services/transaction/transaction-allocation.service.js +0 -85
- package/esm2015/lib/services/transaction/transaction.service.js +0 -319
- package/esm2015/lib/services/user/occupation.service.js +0 -45
- package/esm2015/lib/services/user/user.service.js +0 -124
- package/esm2015/lib/services/user-event/user-event-setting.service.js +0 -59
- package/esm2015/lib/services/user-event/user-event-type.service.js +0 -29
- package/esm2015/lib/services/work/work-tank.service.js +0 -236
- package/lib/services/notification/notification.service.d.ts +0 -31
- package/lib/services/property/property-sale/property-sale.service.d.ts +0 -10
- package/lib/services/property/property-sale/tax-exemption/tax-exemption.service.d.ts +0 -11
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { map } from 'rxjs/operators';
|
|
3
|
-
import _ from 'lodash';
|
|
4
|
-
import { replace } from '../../functions/array';
|
|
5
|
-
import { plainToClass } from 'class-transformer';
|
|
6
|
-
import { BaseRestService } from '../base-rest.service';
|
|
7
|
-
import { BankAccount } from '../../models/bank/bank-account';
|
|
8
|
-
import { AppEvent } from '../../models/event/app-event';
|
|
9
|
-
import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
|
|
10
|
-
import * as i0 from "@angular/core";
|
|
11
|
-
import * as i1 from "@angular/common/http";
|
|
12
|
-
import * as i2 from "../event/event-dispatcher.service";
|
|
13
|
-
/**
|
|
14
|
-
* Service that handling user's bank accounts logic
|
|
15
|
-
*/
|
|
16
|
-
export class BankAccountService extends BaseRestService {
|
|
17
|
-
constructor(http, eventDispatcherService, environment) {
|
|
18
|
-
super(http, eventDispatcherService, environment);
|
|
19
|
-
this.http = http;
|
|
20
|
-
this.eventDispatcherService = eventDispatcherService;
|
|
21
|
-
this.environment = environment;
|
|
22
|
-
// api url parameter for bank accounts
|
|
23
|
-
this.url = 'bank-accounts';
|
|
24
|
-
this.modelClass = BankAccount;
|
|
25
|
-
this.listenEvents();
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Listen system notifications and update cache when got basiq notification received
|
|
29
|
-
*/
|
|
30
|
-
listenEvents() {
|
|
31
|
-
this.listenToEventDispatcherChanges();
|
|
32
|
-
}
|
|
33
|
-
/**
|
|
34
|
-
* Created manual bank account
|
|
35
|
-
* @param bankAccounts
|
|
36
|
-
* @param queryParams
|
|
37
|
-
*/
|
|
38
|
-
addBatch(bankAccounts, queryParams = {}) {
|
|
39
|
-
return this.http.post(`${this.environment.apiV2}/${this.url}`, bankAccounts)
|
|
40
|
-
.pipe(map((newBankAccountsBase) => {
|
|
41
|
-
const newBankAccounts = newBankAccountsBase.map((bankAccountBase) => plainToClass(BankAccount, bankAccountBase));
|
|
42
|
-
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.BANK_ACCOUNT_CREATED, newBankAccounts));
|
|
43
|
-
const tempCache = _.cloneDeep(this.cache);
|
|
44
|
-
tempCache.push(...newBankAccounts);
|
|
45
|
-
this.cache = tempCache;
|
|
46
|
-
this.updateCache();
|
|
47
|
-
return newBankAccounts;
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Update bank account and fire event
|
|
52
|
-
*/
|
|
53
|
-
update(bankAccount) {
|
|
54
|
-
return super.update(bankAccount).pipe(map((updatedBankAccount) => {
|
|
55
|
-
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.BANK_ACCOUNT_UPDATED, updatedBankAccount));
|
|
56
|
-
return updatedBankAccount;
|
|
57
|
-
}));
|
|
58
|
-
}
|
|
59
|
-
/**
|
|
60
|
-
* Update bank account opening balance
|
|
61
|
-
* @param bankAccount Bank account for balance updating
|
|
62
|
-
*/
|
|
63
|
-
updateOpeningBalance(bankAccount) {
|
|
64
|
-
return this.http.put(`${this.environment.apiV2}/${this.url}/${bankAccount.id}/opening-balances/${bankAccount.getCurrentYearBalance().id}`, bankAccount.getCurrentYearBalance())
|
|
65
|
-
.pipe(map((response) => {
|
|
66
|
-
const tempCache = _.cloneDeep(this.cache);
|
|
67
|
-
replace(tempCache[tempCache.findIndex((ba) => ba.id === bankAccount.id)].balances, response);
|
|
68
|
-
this.cache = tempCache;
|
|
69
|
-
this.updateCache();
|
|
70
|
-
}));
|
|
71
|
-
}
|
|
72
|
-
/**
|
|
73
|
-
* Update bank account current balance
|
|
74
|
-
*/
|
|
75
|
-
updateCurrentBalance(bankAccount) {
|
|
76
|
-
return this.http.put(`${this.environment.apiV2}/${this.url}/${bankAccount.id}/balance`, bankAccount)
|
|
77
|
-
.pipe(map((response) => {
|
|
78
|
-
const updatedBankAccount = plainToClass(BankAccount, response);
|
|
79
|
-
replace(this.cache, updatedBankAccount);
|
|
80
|
-
this.updateCache();
|
|
81
|
-
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.BANK_ACCOUNT_UPDATED, updatedBankAccount));
|
|
82
|
-
return updatedBankAccount;
|
|
83
|
-
}));
|
|
84
|
-
}
|
|
85
|
-
getOwn() {
|
|
86
|
-
return this.get()
|
|
87
|
-
.pipe(map((bankAccounts) => {
|
|
88
|
-
return bankAccounts.filter((bankAccount) => bankAccount.isOwner(+localStorage.getItem('userId')));
|
|
89
|
-
}));
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* Listen to EventDispatcherService events
|
|
93
|
-
*/
|
|
94
|
-
listenToEventDispatcherChanges() {
|
|
95
|
-
this.eventDispatcherService.on([
|
|
96
|
-
AppEventTypeEnum.PROPERTY_SHARE_UPDATED,
|
|
97
|
-
AppEventTypeEnum.LOAN_PAYOUT_UPDATED,
|
|
98
|
-
AppEventTypeEnum.BANK_CONNECTION_ADDED
|
|
99
|
-
]).subscribe(() => {
|
|
100
|
-
this.fetch().subscribe((bankAccounts) => {
|
|
101
|
-
this.cache = bankAccounts;
|
|
102
|
-
this.updateCache();
|
|
103
|
-
});
|
|
104
|
-
});
|
|
105
|
-
}
|
|
106
|
-
}
|
|
107
|
-
BankAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
108
|
-
BankAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, providedIn: 'root' });
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, decorators: [{
|
|
110
|
-
type: Injectable,
|
|
111
|
-
args: [{
|
|
112
|
-
providedIn: 'root'
|
|
113
|
-
}]
|
|
114
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
115
|
-
type: Inject,
|
|
116
|
-
args: ['environment']
|
|
117
|
-
}] }]; } });
|
|
118
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvYmFuay9iYW5rLWFjY291bnQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUlqRCxPQUFPLEVBQUMsR0FBRyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkMsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDO0FBQ3ZCLE9BQU8sRUFBQyxPQUFPLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUM5QyxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sbUJBQW1CLENBQUM7QUFDL0MsT0FBTyxFQUFDLGVBQWUsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBQyxXQUFXLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQztBQUUzRCxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDdEQsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sd0NBQXdDLENBQUM7Ozs7QUFFeEU7O0dBRUc7QUFJSCxNQUFNLE9BQU8sa0JBQW1CLFNBQVEsZUFBNkM7SUFLbkYsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFQbkQsc0NBQXNDO1FBQ3RDLFFBQUcsR0FBVyxlQUFlLENBQUM7UUFDOUIsZUFBVSxHQUFHLFdBQVcsQ0FBQztRQVF2QixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJ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L0dVLGtCQUFrQixrRkFRbkIsYUFBYTtvSEFSWixrQkFBa0IsY0FGakIsTUFBTTs0RkFFUCxrQkFBa0I7a0JBSDlCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdCwgSW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0h0dHBDbGllbnR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7T2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0JhbmtBY2NvdW50IGFzIEJhbmtBY2NvdW50QmFzZX0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL2JhbmstYWNjb3VudCc7XG5pbXBvcnQge21hcH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7cmVwbGFjZX0gZnJvbSAnLi4vLi4vZnVuY3Rpb25zL2FycmF5JztcbmltcG9ydCB7cGxhaW5Ub0NsYXNzfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQge0Jhc2VSZXN0U2VydmljZX0gZnJvbSAnLi4vYmFzZS1yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHtCYW5rQWNjb3VudH0gZnJvbSAnLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7RXZlbnREaXNwYXRjaGVyU2VydmljZX0gZnJvbSAnLi4vZXZlbnQvZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7QXBwRXZlbnR9IGZyb20gJy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHtBcHBFdmVudFR5cGVFbnVtfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGhhbmRsaW5nIHVzZXIncyBiYW5rIGFjY291bnRzIGxvZ2ljXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50U2VydmljZSBleHRlbmRzIEJhc2VSZXN0U2VydmljZTxCYW5rQWNjb3VudEJhc2UsIEJhbmtBY2NvdW50PiB7XG4gIC8vIGFwaSB1cmwgcGFyYW1ldGVyIGZvciBiYW5rIGFjY291bnRzXG4gIHVybDogc3RyaW5nID0gJ2JhbmstYWNjb3VudHMnO1xuICBtb2RlbENsYXNzID0gQmFua0FjY291bnQ7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgcHJvdGVjdGVkIGV2ZW50RGlzcGF0Y2hlclNlcnZpY2U6IEV2ZW50RGlzcGF0Y2hlclNlcnZpY2UsXG4gICAgQEluamVjdCgnZW52aXJvbm1lbnQnKSBwcm90ZWN0ZWQgZW52aXJvbm1lbnQ6IGFueVxuICApIHtcbiAgICBzdXBlcihodHRwLCBldmVudERpc3BhdGNoZXJTZXJ2aWNlLCBlbnZpcm9ubWVudCk7XG4gICAgdGhpcy5saXN0ZW5FdmVudHMoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gc3lzdGVtIG5vdGlmaWNhdGlvbnMgYW5kIHVwZGF0ZSBjYWNoZSB3aGVuIGdvdCBiYXNpcSBub3RpZmljYXRpb24gcmVjZWl2ZWRcbiAgICovXG4gIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlblRvRXZlbnREaXNwYXRjaGVyQ2hhbmdlcygpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZWQgbWFudWFsIGJhbmsgYWNjb3VudFxuICAgKiBAcGFyYW0gYmFua0FjY291bnRzXG4gICAqIEBwYXJhbSBxdWVyeVBhcmFtc1xuICAgKi9cbiAgYWRkQmF0Y2goYmFua0FjY291bnRzOiBCYW5rQWNjb3VudFtdLCBxdWVyeVBhcmFtczogb2JqZWN0ID0ge30pOiBPYnNlcnZhYmxlPEJhbmtBY2NvdW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gLCBiYW5rQWNjb3VudHMpXG4gICAgICAucGlwZShcbiAgICAgICAgbWFwKChuZXdCYW5rQWNjb3VudHNCYXNlOiBCYW5rQWNjb3VudEJhc2VbXSkgPT4ge1xuICAgICAgICAgIGNvbnN0IG5ld0JhbmtBY2NvdW50czogQmFua0FjY291bnRbXSA9IG5ld0JhbmtBY2NvdW50c0Jhc2UubWFwKChiYW5rQWNjb3VudEJhc2U6IEJhbmtBY2NvdW50QmFzZSk6IEJhbmtBY2NvdW50ID0+IHBsYWluVG9DbGFzcyhCYW5rQWNjb3VudCwgYmFua0FjY291bnRCYXNlKSk7XG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkJBTktfQUNDT1VOVF9DUkVBVEVELCBuZXdCYW5rQWNjb3VudHMpKTtcbiAgICAgICAgICBjb25zdCB0ZW1wQ2FjaGU6IEJhbmtBY2NvdW50W10gPSBfLmNsb25lRGVlcCh0aGlzLmNhY2hlKTtcbiAgICAgICAgICB0ZW1wQ2FjaGUucHVzaCguLi5uZXdCYW5rQWNjb3VudHMpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICAgIHJldHVybiBuZXdCYW5rQWNjb3VudHM7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBiYW5rIGFjY291bnQgYW5kIGZpcmUgZXZlbnRcbiAgICovXG4gIHVwZGF0ZShiYW5rQWNjb3VudDogQmFua0FjY291bnQpOiBPYnNlcnZhYmxlPEJhbmtBY2NvdW50PiB7XG4gICAgcmV0dXJuIHN1cGVyLnVwZGF0ZShiYW5rQWNjb3VudCkucGlwZShcbiAgICAgIG1hcCgodXBkYXRlZEJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4ge1xuICAgICAgICB0aGlzLmV2ZW50RGlzcGF0Y2hlclNlcnZpY2UuZGlzcGF0Y2gobmV3IEFwcEV2ZW50KEFwcEV2ZW50VHlwZUVudW0uQkFOS19BQ0NPVU5UX1VQREFURUQsIHVwZGF0ZWRCYW5rQWNjb3VudCkpO1xuICAgICAgICByZXR1cm4gdXBkYXRlZEJhbmtBY2NvdW50O1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBiYW5rIGFjY291bnQgb3BlbmluZyBiYWxhbmNlXG4gICAqIEBwYXJhbSBiYW5rQWNjb3VudCBCYW5rIGFjY291bnQgZm9yIGJhbGFuY2UgdXBkYXRpbmdcbiAgICovXG4gIHVwZGF0ZU9wZW5pbmdCYWxhbmNlKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wdXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH0vJHtiYW5rQWNjb3VudC5pZH0vb3BlbmluZy1iYWxhbmNlcy8ke2JhbmtBY2NvdW50LmdldEN1cnJlbnRZZWFyQmFsYW5jZSgpLmlkfWAsIGJhbmtBY2NvdW50LmdldEN1cnJlbnRZZWFyQmFsYW5jZSgpKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocmVzcG9uc2U6IG9iamVjdCkgPT4ge1xuICAgICAgICAgIGNvbnN0IHRlbXBDYWNoZTogQmFua0FjY291bnRbXSA9IF8uY2xvbmVEZWVwKHRoaXMuY2FjaGUpO1xuXG4gICAgICAgICAgcmVwbGFjZSh0ZW1wQ2FjaGVbdGVtcENhY2hlLmZpbmRJbmRleCgoYmE6IEJhbmtBY2NvdW50KSA9PiBiYS5pZCA9PT0gYmFua0FjY291bnQuaWQpXS5iYWxhbmNlcywgcmVzcG9uc2UpO1xuICAgICAgICAgIHRoaXMuY2FjaGUgPSB0ZW1wQ2FjaGU7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgYmFuayBhY2NvdW50IGN1cnJlbnQgYmFsYW5jZVxuICAgKi9cbiAgdXBkYXRlQ3VycmVudEJhbGFuY2UoYmFua0FjY291bnQ6IEJhbmtBY2NvdW50KTogT2JzZXJ2YWJsZTxCYW5rQWNjb3VudD4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucHV0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9LyR7dGhpcy51cmx9LyR7YmFua0FjY291bnQuaWR9L2JhbGFuY2VgLCBiYW5rQWNjb3VudClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBvYmplY3QpID0+IHtcbiAgICAgICAgICBjb25zdCB1cGRhdGVkQmFua0FjY291bnQ6IEJhbmtBY2NvdW50ID0gcGxhaW5Ub0NsYXNzKEJhbmtBY2NvdW50LCByZXNwb25zZSk7XG5cbiAgICAgICAgICByZXBsYWNlKHRoaXMuY2FjaGUsIHVwZGF0ZWRCYW5rQWNjb3VudCk7XG4gICAgICAgICAgdGhpcy51cGRhdGVDYWNoZSgpO1xuXG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkJBTktfQUNDT1VOVF9VUERBVEVELCB1cGRhdGVkQmFua0FjY291bnQpKTtcbiAgICAgICAgICByZXR1cm4gdXBkYXRlZEJhbmtBY2NvdW50O1xuICAgICAgICB9KVxuICAgICAgKTtcbiAgfVxuXG4gIGdldE93bigpOiBPYnNlcnZhYmxlPEJhbmtBY2NvdW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXQoKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoYmFua0FjY291bnRzOiBCYW5rQWNjb3VudFtdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGJhbmtBY2NvdW50cy5maWx0ZXIoKGJhbmtBY2NvdW50OiBCYW5rQWNjb3VudCkgPT4gYmFua0FjY291bnQuaXNPd25lcigrbG9jYWxTdG9yYWdlLmdldEl0ZW0oJ3VzZXJJZCcpKSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiB0byBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIGV2ZW50c1xuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0V2ZW50RGlzcGF0Y2hlckNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKFtcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uUFJPUEVSVFlfU0hBUkVfVVBEQVRFRCxcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uTE9BTl9QQVlPVVRfVVBEQVRFRCxcbiAgICAgIEFwcEV2ZW50VHlwZUVudW0uQkFOS19DT05ORUNUSU9OX0FEREVEXG4gICAgXSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgIHRoaXMuZmV0Y2goKS5zdWJzY3JpYmUoKGJhbmtBY2NvdW50czogQmFua0FjY291bnRbXSkgPT4ge1xuICAgICAgICB0aGlzLmNhY2hlID0gYmFua0FjY291bnRzO1xuICAgICAgICB0aGlzLnVwZGF0ZUNhY2hlKCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { map } from 'rxjs/operators';
|
|
3
|
-
import { plainToClass } from 'class-transformer';
|
|
4
|
-
import { BankConnection } from '../../models/bank/bank-connection';
|
|
5
|
-
import { BaseRestService } from '../base-rest.service';
|
|
6
|
-
import { AppEvent } from '../../models/event/app-event';
|
|
7
|
-
import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/common/http";
|
|
10
|
-
import * as i2 from "../event/event-dispatcher.service";
|
|
11
|
-
/**
|
|
12
|
-
* BankConnection means user account at specific bank (usually each user has only one at the same bank)
|
|
13
|
-
* service handles BankConnection management
|
|
14
|
-
*/
|
|
15
|
-
export class BankConnectionService extends BaseRestService {
|
|
16
|
-
constructor(http, eventDispatcherService, environment) {
|
|
17
|
-
super(http, eventDispatcherService, environment);
|
|
18
|
-
this.http = http;
|
|
19
|
-
this.eventDispatcherService = eventDispatcherService;
|
|
20
|
-
this.environment = environment;
|
|
21
|
-
this.modelClass = BankConnection;
|
|
22
|
-
this.url = 'bank-connections';
|
|
23
|
-
this.listenEvents();
|
|
24
|
-
}
|
|
25
|
-
listenEvents() {
|
|
26
|
-
this.listenToAddedBankAccounts();
|
|
27
|
-
}
|
|
28
|
-
post(bankConnection) {
|
|
29
|
-
return this.http.post(`${this.environment.apiV2}/${this.url}`, bankConnection)
|
|
30
|
-
.pipe(map((bankConnectionBase) => {
|
|
31
|
-
this.eventDispatcherService.dispatch(new AppEvent(AppEventTypeEnum.BANK_CONNECTION_ADDED, null));
|
|
32
|
-
return plainToClass(BankConnection, bankConnectionBase);
|
|
33
|
-
}));
|
|
34
|
-
}
|
|
35
|
-
listenToAddedBankAccounts() {
|
|
36
|
-
this.eventDispatcherService.on(AppEventTypeEnum.BANK_ACCOUNT_CREATED).subscribe(() => {
|
|
37
|
-
this.resetCache();
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
BankConnectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42
|
-
BankConnectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, providedIn: 'root' });
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, decorators: [{
|
|
44
|
-
type: Injectable,
|
|
45
|
-
args: [{
|
|
46
|
-
providedIn: 'root'
|
|
47
|
-
}]
|
|
48
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
49
|
-
type: Inject,
|
|
50
|
-
args: ['environment']
|
|
51
|
-
}] }]; } });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1jb25uZWN0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvc2VydmljZXMvYmFuay9iYW5rLWNvbm5lY3Rpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUduRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNuRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDOzs7O0FBRTFFOzs7R0FHRztBQUlILE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxlQUFtRDtJQUk1RixZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQjtRQUVqRCxLQUFLLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBSnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQU5uRCxlQUFVLEdBQUcsY0FBYyxDQUFDO1FBQzVCLFFBQUcsR0FBVyxrQkFBa0IsQ0FBQztRQVEvQixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDdEIsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxDQUFDLGNBQThCO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsY0FBYyxDQUFDO2FBQzNFLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxrQkFBc0MsRUFBRSxFQUFFO1lBQzdDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxRQUFRLENBQUMsSUFBSSxRQUFRLENBQUMsZ0JBQWdCLENBQUMscUJBQXFCLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUVqRyxPQUFPLFlBQVksQ0FBQyxjQUFjLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUMxRCxDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVELHlCQUF5QjtRQUN2QixJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNuRixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOzttSEFoQ1UscUJBQXFCLGtGQU90QixhQUFhO3VIQVBaLHFCQUFxQixjQUZwQixNQUFNOzRGQUVQLHFCQUFxQjtrQkFIakMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQVFJLE1BQU07MkJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEJhbmtDb25uZWN0aW9uIGFzIEJhbmtDb25uZWN0aW9uQmFzZSB9IGZyb20gJy4uLy4uL2RiL01vZGVscy9iYW5rLWNvbm5lY3Rpb24nO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uL2V2ZW50L2V2ZW50LWRpc3BhdGNoZXIuc2VydmljZSc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBCYXNlUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9iYXNlLXJlc3Quc2VydmljZSc7XG5pbXBvcnQgeyBBcHBFdmVudCB9IGZyb20gJy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQnO1xuaW1wb3J0IHsgQXBwRXZlbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uL21vZGVscy9ldmVudC9hcHAtZXZlbnQtdHlwZS5lbnVtJztcblxuLyoqXG4gKiBCYW5rQ29ubmVjdGlvbiBtZWFucyB1c2VyIGFjY291bnQgYXQgc3BlY2lmaWMgYmFuayAodXN1YWxseSBlYWNoIHVzZXIgaGFzIG9ubHkgb25lIGF0IHRoZSBzYW1lIGJhbmspXG4gKiBzZXJ2aWNlIGhhbmRsZXMgQmFua0Nvbm5lY3Rpb24gbWFuYWdlbWVudFxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBCYW5rQ29ubmVjdGlvblNlcnZpY2UgZXh0ZW5kcyBCYXNlUmVzdFNlcnZpY2U8QmFua0Nvbm5lY3Rpb25CYXNlLCBCYW5rQ29ubmVjdGlvbj4ge1xuICBtb2RlbENsYXNzID0gQmFua0Nvbm5lY3Rpb247XG4gIHVybDogc3RyaW5nID0gJ2JhbmstY29ubmVjdGlvbnMnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICBsaXN0ZW5FdmVudHMoKTogdm9pZCB7XG4gICAgdGhpcy5saXN0ZW5Ub0FkZGVkQmFua0FjY291bnRzKCk7XG4gIH1cblxuICBwb3N0KGJhbmtDb25uZWN0aW9uOiBCYW5rQ29ubmVjdGlvbik6IE9ic2VydmFibGU8QmFua0Nvbm5lY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5odHRwLnBvc3QoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vJHt0aGlzLnVybH1gLCBiYW5rQ29ubmVjdGlvbilcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGJhbmtDb25uZWN0aW9uQmFzZTogQmFua0Nvbm5lY3Rpb25CYXNlKSA9PiB7XG4gICAgICAgICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLmRpc3BhdGNoKG5ldyBBcHBFdmVudChBcHBFdmVudFR5cGVFbnVtLkJBTktfQ09OTkVDVElPTl9BRERFRCwgbnVsbCkpO1xuXG4gICAgICAgICAgcmV0dXJuIHBsYWluVG9DbGFzcyhCYW5rQ29ubmVjdGlvbiwgYmFua0Nvbm5lY3Rpb25CYXNlKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBsaXN0ZW5Ub0FkZGVkQmFua0FjY291bnRzKCk6IHZvaWQge1xuICAgIHRoaXMuZXZlbnREaXNwYXRjaGVyU2VydmljZS5vbihBcHBFdmVudFR5cGVFbnVtLkJBTktfQUNDT1VOVF9DUkVBVEVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5yZXNldENhY2hlKCk7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { map } from 'rxjs/operators';
|
|
3
|
-
import { BaseRestService } from '../base-rest.service';
|
|
4
|
-
import { plainToClass } from 'class-transformer';
|
|
5
|
-
import { UserEventTypeClientTypeEnum } from '../../db/Enums/user-event-type-client-type.enum';
|
|
6
|
-
import { BankTransaction } from '../../models/bank/bank-transaction';
|
|
7
|
-
import { FinancialYear } from '../../models/financial-year/financial-year';
|
|
8
|
-
import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common/http";
|
|
11
|
-
import * as i2 from "../event/event-dispatcher.service";
|
|
12
|
-
/**
|
|
13
|
-
* Service for bank transactions business logic
|
|
14
|
-
*/
|
|
15
|
-
export class BankTransactionService extends BaseRestService {
|
|
16
|
-
constructor(http, eventDispatcherService, environment) {
|
|
17
|
-
super(http, eventDispatcherService, environment);
|
|
18
|
-
this.http = http;
|
|
19
|
-
this.eventDispatcherService = eventDispatcherService;
|
|
20
|
-
this.environment = environment;
|
|
21
|
-
// url part for BankTransaction API
|
|
22
|
-
this.url = 'bank-transactions';
|
|
23
|
-
this.modelClass = BankTransaction;
|
|
24
|
-
this.listenEvents();
|
|
25
|
-
}
|
|
26
|
-
listenEvents() {
|
|
27
|
-
this.listenBankTransactionsImport();
|
|
28
|
-
}
|
|
29
|
-
;
|
|
30
|
-
/**
|
|
31
|
-
* get list of bank transactions for passed bank account id
|
|
32
|
-
* @param bankAccountId Id of bank account we search bank transactions for
|
|
33
|
-
*/
|
|
34
|
-
getByBankAccountId(bankAccountId) {
|
|
35
|
-
return this.get()
|
|
36
|
-
.pipe(map((bankTransactions) => {
|
|
37
|
-
return bankTransactions.filter((bankTransaction) => bankTransaction.bankAccount.id === bankAccountId);
|
|
38
|
-
}));
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* Get list of bank transactions for provided financial year
|
|
42
|
-
* @TODO VIK/Alex: consider to use one endpoint to get bank transactions for 2 fin years
|
|
43
|
-
*/
|
|
44
|
-
getTransactionsByYear(finYear) {
|
|
45
|
-
return this.http.get(`${this.environment.apiV2}/bank-transactions?financialYear=${finYear}`)
|
|
46
|
-
.pipe(map((bankTransactionsBase) => {
|
|
47
|
-
return bankTransactionsBase.map((bankTransaction) => plainToClass(BankTransaction, bankTransaction));
|
|
48
|
-
}));
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* import bank transactions from csv file
|
|
52
|
-
* @param bankAccountId Bank account id we import bank transactions for
|
|
53
|
-
* @param file File with bank transactions for import
|
|
54
|
-
*/
|
|
55
|
-
import(bankAccountId, file) {
|
|
56
|
-
const formData = new FormData();
|
|
57
|
-
formData.append('file', file);
|
|
58
|
-
return this.http.post(`${this.environment.apiV2}/bank-accounts/${bankAccountId}/bank-transaction-imports`, formData)
|
|
59
|
-
.pipe(map((response) => {
|
|
60
|
-
const newBankTransactions = response.map((bankTransaction) => plainToClass(BankTransaction, bankTransaction));
|
|
61
|
-
// push new items to cache only if we already have cache. Otherwise cache will contain only new items.
|
|
62
|
-
if (this.cache) {
|
|
63
|
-
// just current year's transactions should be added
|
|
64
|
-
this.cache.push(...newBankTransactions.filter((bt) => new FinancialYear().includes(bt.date)));
|
|
65
|
-
this.updateCache();
|
|
66
|
-
}
|
|
67
|
-
return newBankTransactions;
|
|
68
|
-
}));
|
|
69
|
-
}
|
|
70
|
-
listenBankTransactionsImport() {
|
|
71
|
-
this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
|
|
72
|
-
if (!notification.isRead && notification.eventType === UserEventTypeClientTypeEnum.BASIQ_FIRST_IMPORT_COMPLETE) {
|
|
73
|
-
this.resetCache();
|
|
74
|
-
}
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
BankTransactionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
79
|
-
BankTransactionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, providedIn: 'root' });
|
|
80
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, decorators: [{
|
|
81
|
-
type: Injectable,
|
|
82
|
-
args: [{
|
|
83
|
-
providedIn: 'root'
|
|
84
|
-
}]
|
|
85
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
86
|
-
type: Inject,
|
|
87
|
-
args: ['environment']
|
|
88
|
-
}] }]; } });
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay10cmFuc2FjdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2JhbmsvYmFuay10cmFuc2FjdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBR25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNyQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLGlEQUFpRCxDQUFDO0FBQzlGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUVyRSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7QUFHMUU7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBcUQ7SUFLL0YsWUFDWSxJQUFnQixFQUNoQixzQkFBOEMsRUFDdkIsV0FBZ0I7UUFFakQsS0FBSyxDQUFDLElBQUksRUFBRSxzQkFBc0IsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUp2QyxTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBd0I7UUFDdkIsZ0JBQVcsR0FBWCxXQUFXLENBQUs7UUFQbkQsbUNBQW1DO1FBQ25DLFFBQUcsR0FBVyxtQkFBbUIsQ0FBQztRQUNsQyxlQUFVLEdBQUcsZUFBZSxDQUFDO1FBUTNCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQztJQUN0QyxDQUFDO0lBQUEsQ0FBQztJQUVGOzs7T0FHRztJQUNILGtCQUFrQixDQUFDLGFBQXFCO1FBQ3RDLE9BQU8sSUFBSSxDQUFDLEdBQUcsRUFBRTthQUNkLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxnQkFBbUMsRUFBRSxFQUFFO1lBQzFDLE9BQU8sZ0JBQWdCLENBQUMsTUFBTSxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEtBQUssYUFBYSxDQUFDLENBQUM7UUFDekgsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNOLENBQUM7SUFFRDs7O09BR0c7SUFDSCxxQkFBcUIsQ0FBQyxPQUFlO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssb0NBQW9DLE9BQU8sRUFBRSxDQUFDO2FBQ3pGLElBQUksQ0FDSCxHQUFHLENBQUMsQ0FBQyxvQkFBMkMsRUFBRSxFQUFFO1lBQ2xELE9BQU8sb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFLENBQUMsWUFBWSxDQUFDLGVBQWUsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3hILENBQUMsQ0FBQyxDQUNILENBQUM7SUFDTixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxhQUFxQixFQUFFLElBQVU7UUFDdEMsTUFBTSxRQUFRLEdBQWEsSUFBSSxRQUFRLEVBQUUsQ0FBQztRQUMxQyxRQUFRLENBQUMsTUFBTSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztRQUU5QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLGtCQUFrQixhQUFhLDJCQUEyQixFQUFFLFFBQVEsQ0FBQzthQUNqSCxJQUFJLENBQ0gsR0FBRyxDQUFDLENBQUMsUUFBK0IsRUFBRSxFQUFFO1lBQ3RDLE1BQU0sbUJBQW1CLEdBQXNCLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxlQUFvQyxFQUFFLEVBQUUsQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFDdEosc0dBQXNHO1lBQ3RHLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtnQkFDZCxtREFBbUQ7Z0JBQ25ELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsbUJBQW1CLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBbUIsRUFBRSxFQUFFLENBQUMsSUFBSSxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztnQkFDL0csSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO2FBQ3BCO1lBRUQsT0FBTyxtQkFBbUIsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FDSCxDQUFDO0lBQ04sQ0FBQztJQUVPLDRCQUE0QjtRQUNsQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUFDLGtCQUFrQixDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsWUFBMEIsRUFBRSxFQUFFO1lBQzNHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxJQUFJLFlBQVksQ0FBQyxTQUFTLEtBQUssMkJBQTJCLENBQUMsMkJBQTJCLEVBQUU7Z0JBQzlHLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQzthQUNuQjtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7b0hBM0VVLHNCQUFzQixrRkFRdkIsYUFBYTt3SEFSWixzQkFBc0IsY0FGckIsTUFBTTs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFTSSxNQUFNOzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiBhcyBCYW5rVHJhbnNhY3Rpb25CYXNlIH0gZnJvbSAnLi4vLi4vZGIvTW9kZWxzL2JhbmstdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgQmFzZVJlc3RTZXJ2aWNlIH0gZnJvbSAnLi4vYmFzZS1yZXN0LnNlcnZpY2UnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IFVzZXJFdmVudFR5cGVDbGllbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3VzZXItZXZlbnQtdHlwZS1jbGllbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhbmtUcmFuc2FjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9iYW5rL2JhbmstdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgRXZlbnREaXNwYXRjaGVyU2VydmljZSB9IGZyb20gJy4uL2V2ZW50L2V2ZW50LWRpc3BhdGNoZXIuc2VydmljZSc7XG5pbXBvcnQgeyBGaW5hbmNpYWxZZWFyIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2ZpbmFuY2lhbC15ZWFyL2ZpbmFuY2lhbC15ZWFyJztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbic7XG5cbi8qKlxuICogU2VydmljZSBmb3IgYmFuayB0cmFuc2FjdGlvbnMgYnVzaW5lc3MgbG9naWNcbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQmFua1RyYW5zYWN0aW9uU2VydmljZSBleHRlbmRzIEJhc2VSZXN0U2VydmljZTxCYW5rVHJhbnNhY3Rpb25CYXNlLCBCYW5rVHJhbnNhY3Rpb24+IHtcbiAgLy8gdXJsIHBhcnQgZm9yIEJhbmtUcmFuc2FjdGlvbiBBUElcbiAgdXJsOiBzdHJpbmcgPSAnYmFuay10cmFuc2FjdGlvbnMnO1xuICBtb2RlbENsYXNzID0gQmFua1RyYW5zYWN0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkV2ZW50cygpOiB2b2lkIHtcbiAgICB0aGlzLmxpc3RlbkJhbmtUcmFuc2FjdGlvbnNJbXBvcnQoKTtcbiAgfTtcblxuICAvKipcbiAgICogZ2V0IGxpc3Qgb2YgYmFuayB0cmFuc2FjdGlvbnMgZm9yIHBhc3NlZCBiYW5rIGFjY291bnQgaWRcbiAgICogQHBhcmFtIGJhbmtBY2NvdW50SWQgSWQgb2YgYmFuayBhY2NvdW50IHdlIHNlYXJjaCBiYW5rIHRyYW5zYWN0aW9ucyBmb3JcbiAgICovXG4gIGdldEJ5QmFua0FjY291bnRJZChiYW5rQWNjb3VudElkOiBudW1iZXIpOiBPYnNlcnZhYmxlPEJhbmtUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGJhbmtUcmFuc2FjdGlvbnM6IEJhbmtUcmFuc2FjdGlvbltdKSA9PiB7XG4gICAgICAgICAgcmV0dXJuIGJhbmtUcmFuc2FjdGlvbnMuZmlsdGVyKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gYmFua1RyYW5zYWN0aW9uLmJhbmtBY2NvdW50LmlkID09PSBiYW5rQWNjb3VudElkKTtcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGxpc3Qgb2YgYmFuayB0cmFuc2FjdGlvbnMgZm9yIHByb3ZpZGVkIGZpbmFuY2lhbCB5ZWFyXG4gICAqIEBUT0RPIFZJSy9BbGV4OiBjb25zaWRlciB0byB1c2Ugb25lIGVuZHBvaW50IHRvIGdldCBiYW5rIHRyYW5zYWN0aW9ucyBmb3IgMiBmaW4geWVhcnNcbiAgICovXG4gIGdldFRyYW5zYWN0aW9uc0J5WWVhcihmaW5ZZWFyOiBudW1iZXIpOiBPYnNlcnZhYmxlPEJhbmtUcmFuc2FjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vYmFuay10cmFuc2FjdGlvbnM/ZmluYW5jaWFsWWVhcj0ke2ZpblllYXJ9YClcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKGJhbmtUcmFuc2FjdGlvbnNCYXNlOiBCYW5rVHJhbnNhY3Rpb25CYXNlW10pID0+IHtcbiAgICAgICAgICByZXR1cm4gYmFua1RyYW5zYWN0aW9uc0Jhc2UubWFwKChiYW5rVHJhbnNhY3Rpb246IEJhbmtUcmFuc2FjdGlvbikgPT4gcGxhaW5Ub0NsYXNzKEJhbmtUcmFuc2FjdGlvbiwgYmFua1RyYW5zYWN0aW9uKSk7XG4gICAgICAgIH0pXG4gICAgICApO1xuICB9XG5cbiAgLyoqXG4gICAqIGltcG9ydCBiYW5rIHRyYW5zYWN0aW9ucyBmcm9tIGNzdiBmaWxlXG4gICAqIEBwYXJhbSBiYW5rQWNjb3VudElkIEJhbmsgYWNjb3VudCBpZCB3ZSBpbXBvcnQgYmFuayB0cmFuc2FjdGlvbnMgZm9yXG4gICAqIEBwYXJhbSBmaWxlIEZpbGUgd2l0aCBiYW5rIHRyYW5zYWN0aW9ucyBmb3IgaW1wb3J0XG4gICAqL1xuICBpbXBvcnQoYmFua0FjY291bnRJZDogbnVtYmVyLCBmaWxlOiBGaWxlKTogT2JzZXJ2YWJsZTxCYW5rVHJhbnNhY3Rpb25bXT4ge1xuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZScsIGZpbGUpO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KGAke3RoaXMuZW52aXJvbm1lbnQuYXBpVjJ9L2JhbmstYWNjb3VudHMvJHtiYW5rQWNjb3VudElkfS9iYW5rLXRyYW5zYWN0aW9uLWltcG9ydHNgLCBmb3JtRGF0YSlcbiAgICAgIC5waXBlKFxuICAgICAgICBtYXAoKHJlc3BvbnNlOiBCYW5rVHJhbnNhY3Rpb25CYXNlW10pID0+IHtcbiAgICAgICAgICBjb25zdCBuZXdCYW5rVHJhbnNhY3Rpb25zOiBCYW5rVHJhbnNhY3Rpb25bXSA9IHJlc3BvbnNlLm1hcCgoYmFua1RyYW5zYWN0aW9uOiBCYW5rVHJhbnNhY3Rpb25CYXNlKSA9PiBwbGFpblRvQ2xhc3MoQmFua1RyYW5zYWN0aW9uLCBiYW5rVHJhbnNhY3Rpb24pKTtcbiAgICAgICAgICAvLyBwdXNoIG5ldyBpdGVtcyB0byBjYWNoZSBvbmx5IGlmIHdlIGFscmVhZHkgaGF2ZSBjYWNoZS4gT3RoZXJ3aXNlIGNhY2hlIHdpbGwgY29udGFpbiBvbmx5IG5ldyBpdGVtcy5cbiAgICAgICAgICBpZiAodGhpcy5jYWNoZSkge1xuICAgICAgICAgICAgLy8ganVzdCBjdXJyZW50IHllYXIncyB0cmFuc2FjdGlvbnMgc2hvdWxkIGJlIGFkZGVkXG4gICAgICAgICAgICB0aGlzLmNhY2hlLnB1c2goLi4ubmV3QmFua1RyYW5zYWN0aW9ucy5maWx0ZXIoKGJ0OiBCYW5rVHJhbnNhY3Rpb24pID0+IG5ldyBGaW5hbmNpYWxZZWFyKCkuaW5jbHVkZXMoYnQuZGF0ZSkpKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICByZXR1cm4gbmV3QmFua1RyYW5zYWN0aW9ucztcbiAgICAgICAgfSlcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxpc3RlbkJhbmtUcmFuc2FjdGlvbnNJbXBvcnQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uTk9USUZJQ0FUSU9OX0FEREVEKS5zdWJzY3JpYmUoKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uKSA9PiB7XG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgbm90aWZpY2F0aW9uLmV2ZW50VHlwZSA9PT0gVXNlckV2ZW50VHlwZUNsaWVudFR5cGVFbnVtLkJBU0lRX0ZJUlNUX0lNUE9SVF9DT01QTEVURSkge1xuICAgICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Bank } from '../../models/bank/bank';
|
|
3
|
-
import { BaseRestService } from '../base-rest.service';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
/**
|
|
6
|
-
* Service that handling banks logic
|
|
7
|
-
*/
|
|
8
|
-
export class BankService extends BaseRestService {
|
|
9
|
-
constructor() {
|
|
10
|
-
super(...arguments);
|
|
11
|
-
this.modelClass = Bank;
|
|
12
|
-
this.url = 'banks';
|
|
13
|
-
this.isHydra = true;
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
BankService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
17
|
-
BankService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, providedIn: 'root' });
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, decorators: [{
|
|
19
|
-
type: Injectable,
|
|
20
|
-
args: [{
|
|
21
|
-
providedIn: 'root'
|
|
22
|
-
}]
|
|
23
|
-
}] });
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3NlcnZpY2VzL2JhbmsvYmFuay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7QUFFdkQ7O0dBRUc7QUFJSCxNQUFNLE9BQU8sV0FBWSxTQUFRLGVBQStCO0lBSGhFOztRQUlFLGVBQVUsR0FBZ0IsSUFBSSxDQUFDO1FBQy9CLFFBQUcsR0FBVyxPQUFPLENBQUM7UUFDdEIsWUFBTyxHQUFZLElBQUksQ0FBQztLQUN6Qjs7eUdBSlksV0FBVzs2R0FBWCxXQUFXLGNBRlYsTUFBTTs0RkFFUCxXQUFXO2tCQUh2QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEJhbmsgYXMgQmFua0Jhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvYmFuayc7XG5pbXBvcnQgeyBCYW5rIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2JhbmsvYmFuayc7XG5pbXBvcnQgeyBCYXNlUmVzdFNlcnZpY2UgfSBmcm9tICcuLi9iYXNlLXJlc3Quc2VydmljZSc7XG5cbi8qKlxuICogU2VydmljZSB0aGF0IGhhbmRsaW5nIGJhbmtzIGxvZ2ljXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJhbmtTZXJ2aWNlIGV4dGVuZHMgQmFzZVJlc3RTZXJ2aWNlPEJhbmtCYXNlLCBCYW5rPiB7XG4gIG1vZGVsQ2xhc3M6IHR5cGVvZiBCYW5rID0gQmFuaztcbiAgdXJsOiBzdHJpbmcgPSAnYmFua3MnO1xuICBpc0h5ZHJhOiBib29sZWFuID0gdHJ1ZTtcbn1cbiJdfQ==
|
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
import { Inject, Injectable } from '@angular/core';
|
|
2
|
-
import { ReplaySubject } from 'rxjs';
|
|
3
|
-
import { map } from 'rxjs/operators';
|
|
4
|
-
import { UserEventTypeClientTypeEnum } from '../../db/Enums/user-event-type-client-type.enum';
|
|
5
|
-
import { BaseRestService } from '../base-rest.service';
|
|
6
|
-
import { BankAccount } from '../../models/bank/bank-account';
|
|
7
|
-
import { BasiqToken } from '../../models/bank/basiq-token';
|
|
8
|
-
import { AppEventTypeEnum } from '../../models/event/app-event-type.enum';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/common/http";
|
|
11
|
-
import * as i2 from "../event/event-dispatcher.service";
|
|
12
|
-
/**
|
|
13
|
-
* basiq is a middleman between bank and user
|
|
14
|
-
* service is responsible for fetching bank related information
|
|
15
|
-
*/
|
|
16
|
-
export class BasiqService extends BaseRestService {
|
|
17
|
-
constructor(http, eventDispatcherService, environment) {
|
|
18
|
-
super(http, eventDispatcherService, environment);
|
|
19
|
-
this.http = http;
|
|
20
|
-
this.eventDispatcherService = eventDispatcherService;
|
|
21
|
-
this.environment = environment;
|
|
22
|
-
this.tokenSubject = new ReplaySubject();
|
|
23
|
-
this.url = 'basiq/accounts';
|
|
24
|
-
this.modelClass = BankAccount;
|
|
25
|
-
this.listenEvents();
|
|
26
|
-
}
|
|
27
|
-
/**
|
|
28
|
-
* Listen events from Event Dispatcher service
|
|
29
|
-
*/
|
|
30
|
-
listenEvents() {
|
|
31
|
-
this.listenToBankConnectionAdded();
|
|
32
|
-
this.listenNotifications();
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* access token to use basiq connect ui iframe
|
|
36
|
-
*/
|
|
37
|
-
getToken() {
|
|
38
|
-
if (!this.token || this.token.isExpired()) {
|
|
39
|
-
this.http.get(`${this.environment.apiV2}/basiq/tokens`)
|
|
40
|
-
.pipe(map((response) => {
|
|
41
|
-
const now = new Date().getTime();
|
|
42
|
-
return new BasiqToken(response['access_token'], new Date(now + response['expires_in'] * 1000));
|
|
43
|
-
}))
|
|
44
|
-
.subscribe((token) => {
|
|
45
|
-
this.tokenSubject.next(token);
|
|
46
|
-
});
|
|
47
|
-
}
|
|
48
|
-
return this.tokenSubject.asObservable();
|
|
49
|
-
}
|
|
50
|
-
getConnections() {
|
|
51
|
-
return this.get().pipe(map((bankAccounts) => {
|
|
52
|
-
// get all connections
|
|
53
|
-
const connections = bankAccounts.map((bankAccount) => {
|
|
54
|
-
return bankAccount.bankConnection;
|
|
55
|
-
});
|
|
56
|
-
// return without duplicates
|
|
57
|
-
return [...new Map(connections.map((connection) => [connection.id, connection])).values()];
|
|
58
|
-
}));
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* Listen to EventDispatcherService event related to added Bank connection
|
|
62
|
-
*/
|
|
63
|
-
listenToBankConnectionAdded() {
|
|
64
|
-
this.eventDispatcherService.on(AppEventTypeEnum.BANK_CONNECTION_ADDED).subscribe(() => {
|
|
65
|
-
this.fetch().subscribe((bankAccounts) => {
|
|
66
|
-
this.cache = bankAccounts;
|
|
67
|
-
this.updateCache();
|
|
68
|
-
});
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
/**
|
|
72
|
-
* listen to notifications to update basiq accounts list
|
|
73
|
-
*/
|
|
74
|
-
listenNotifications() {
|
|
75
|
-
this.eventDispatcherService.on(AppEventTypeEnum.NOTIFICATION_ADDED).subscribe((notification) => {
|
|
76
|
-
if (!notification.isRead && notification.eventType === UserEventTypeClientTypeEnum.BASIQ_NEW_ACCOUNTS) {
|
|
77
|
-
this.resetCache();
|
|
78
|
-
this.get().subscribe();
|
|
79
|
-
}
|
|
80
|
-
});
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
BasiqService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, deps: [{ token: i1.HttpClient }, { token: i2.EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
84
|
-
BasiqService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, providedIn: 'root' });
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, decorators: [{
|
|
86
|
-
type: Injectable,
|
|
87
|
-
args: [{
|
|
88
|
-
providedIn: 'root'
|
|
89
|
-
}]
|
|
90
|
-
}], ctorParameters: function () { return [{ type: i1.HttpClient }, { type: i2.EventDispatcherService }, { type: undefined, decorators: [{
|
|
91
|
-
type: Inject,
|
|
92
|
-
args: ['environment']
|
|
93
|
-
}] }]; } });
|
|
94
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzaXEuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9zZXJ2aWNlcy9iYW5rL2Jhc2lxLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFjLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNqRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0saURBQWlELENBQUM7QUFDOUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7Ozs7QUFJMUU7OztHQUdHO0FBSUgsTUFBTSxPQUFPLFlBQWEsU0FBUSxlQUE2QztJQU03RSxZQUNZLElBQWdCLEVBQ2hCLHNCQUE4QyxFQUN2QixXQUFnQjtRQUVqRCxLQUFLLENBQUMsSUFBSSxFQUFFLHNCQUFzQixFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBSnZDLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF3QjtRQUN2QixnQkFBVyxHQUFYLFdBQVcsQ0FBSztRQVBuRCxpQkFBWSxHQUE4QixJQUFJLGFBQWEsRUFBYyxDQUFDO1FBQzFFLFFBQUcsR0FBVyxnQkFBZ0IsQ0FBQztRQUMvQixlQUFVLEdBQUcsV0FBVyxDQUFDO1FBUXZCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBRUQ7O09BRUc7SUFDSCxZQUFZ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OzJCQUFDLGFBQWEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3QsIEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBSZXBsYXlTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudCBhcyBCYW5rQWNjb3VudEJhc2UgfSBmcm9tICcuLi8uLi9kYi9Nb2RlbHMvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IFVzZXJFdmVudFR5cGVDbGllbnRUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3VzZXItZXZlbnQtdHlwZS1jbGllbnQtdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhc2VSZXN0U2VydmljZSB9IGZyb20gJy4uL2Jhc2UtcmVzdC5zZXJ2aWNlJztcbmltcG9ydCB7IEJhbmtBY2NvdW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50JztcbmltcG9ydCB7IEJhc2lxVG9rZW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvYmFuay9iYXNpcS10b2tlbic7XG5pbXBvcnQgeyBFdmVudERpc3BhdGNoZXJTZXJ2aWNlIH0gZnJvbSAnLi4vZXZlbnQvZXZlbnQtZGlzcGF0Y2hlci5zZXJ2aWNlJztcbmltcG9ydCB7IEFwcEV2ZW50VHlwZUVudW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvZXZlbnQvYXBwLWV2ZW50LXR5cGUuZW51bSc7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbic7XG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvbm90aWZpY2F0aW9uL25vdGlmaWNhdGlvbic7XG5cbi8qKlxuICogYmFzaXEgaXMgYSBtaWRkbGVtYW4gYmV0d2VlbiBiYW5rIGFuZCB1c2VyXG4gKiBzZXJ2aWNlIGlzIHJlc3BvbnNpYmxlIGZvciBmZXRjaGluZyBiYW5rIHJlbGF0ZWQgaW5mb3JtYXRpb25cbiAqL1xuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQmFzaXFTZXJ2aWNlIGV4dGVuZHMgQmFzZVJlc3RTZXJ2aWNlPEJhbmtBY2NvdW50QmFzZSwgQmFua0FjY291bnQ+IHtcbiAgdG9rZW46IEJhc2lxVG9rZW47XG4gIHRva2VuU3ViamVjdDogUmVwbGF5U3ViamVjdDxCYXNpcVRva2VuPiA9IG5ldyBSZXBsYXlTdWJqZWN0PEJhc2lxVG9rZW4+KCk7XG4gIHVybDogc3RyaW5nID0gJ2Jhc2lxL2FjY291bnRzJztcbiAgbW9kZWxDbGFzcyA9IEJhbmtBY2NvdW50O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByb3RlY3RlZCBldmVudERpc3BhdGNoZXJTZXJ2aWNlOiBFdmVudERpc3BhdGNoZXJTZXJ2aWNlLFxuICAgIEBJbmplY3QoJ2Vudmlyb25tZW50JykgcHJvdGVjdGVkIGVudmlyb25tZW50OiBhbnlcbiAgKSB7XG4gICAgc3VwZXIoaHR0cCwgZXZlbnREaXNwYXRjaGVyU2VydmljZSwgZW52aXJvbm1lbnQpO1xuICAgIHRoaXMubGlzdGVuRXZlbnRzKCk7XG4gIH1cblxuICAvKipcbiAgICogTGlzdGVuIGV2ZW50cyBmcm9tIEV2ZW50IERpc3BhdGNoZXIgc2VydmljZVxuICAgKi9cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVG9CYW5rQ29ubmVjdGlvbkFkZGVkKCk7XG4gICAgdGhpcy5saXN0ZW5Ob3RpZmljYXRpb25zKCk7XG4gIH1cblxuICAvKipcbiAgICogYWNjZXNzIHRva2VuIHRvIHVzZSBiYXNpcSBjb25uZWN0IHVpIGlmcmFtZVxuICAgKi9cbiAgZ2V0VG9rZW4oKTogT2JzZXJ2YWJsZTxCYXNpcVRva2VuPiB7XG4gICAgaWYgKCF0aGlzLnRva2VuIHx8IHRoaXMudG9rZW4uaXNFeHBpcmVkKCkpIHtcbiAgICAgIHRoaXMuaHR0cC5nZXQoYCR7dGhpcy5lbnZpcm9ubWVudC5hcGlWMn0vYmFzaXEvdG9rZW5zYClcbiAgICAgICAgLnBpcGUoXG4gICAgICAgICAgbWFwKChyZXNwb25zZTogb2JqZWN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBub3c6IG51bWJlciA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpO1xuXG4gICAgICAgICAgICByZXR1cm4gbmV3IEJhc2lxVG9rZW4ocmVzcG9uc2VbJ2FjY2Vzc190b2tlbiddLCBuZXcgRGF0ZShub3cgKyByZXNwb25zZVsnZXhwaXJlc19pbiddICogMTAwMCkpO1xuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSgodG9rZW46IEJhc2lxVG9rZW4pID0+IHtcbiAgICAgICAgICB0aGlzLnRva2VuU3ViamVjdC5uZXh0KHRva2VuKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXMudG9rZW5TdWJqZWN0LmFzT2JzZXJ2YWJsZSgpO1xuICB9XG5cbiAgZ2V0Q29ubmVjdGlvbnMoKTogT2JzZXJ2YWJsZTxCYW5rQ29ubmVjdGlvbltdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0KCkucGlwZShcbiAgICAgIG1hcCgoYmFua0FjY291bnRzOiBCYW5rQWNjb3VudFtdKSA9PiB7XG4gICAgICAgIC8vIGdldCBhbGwgY29ubmVjdGlvbnNcbiAgICAgICAgY29uc3QgY29ubmVjdGlvbnM6IEJhbmtDb25uZWN0aW9uW10gPSBiYW5rQWNjb3VudHMubWFwKChiYW5rQWNjb3VudDogQmFua0FjY291bnQpID0+IHtcbiAgICAgICAgICByZXR1cm4gYmFua0FjY291bnQuYmFua0Nvbm5lY3Rpb247XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIHJldHVybiB3aXRob3V0IGR1cGxpY2F0ZXNcbiAgICAgICAgcmV0dXJuIFsuLi5uZXcgTWFwKGNvbm5lY3Rpb25zLm1hcCgoY29ubmVjdGlvbjogQmFua0Nvbm5lY3Rpb24pID0+IFtjb25uZWN0aW9uLmlkLCBjb25uZWN0aW9uXSkpLnZhbHVlcygpXTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaXN0ZW4gdG8gRXZlbnREaXNwYXRjaGVyU2VydmljZSBldmVudCByZWxhdGVkIHRvIGFkZGVkIEJhbmsgY29ubmVjdGlvblxuICAgKi9cbiAgcHJpdmF0ZSBsaXN0ZW5Ub0JhbmtDb25uZWN0aW9uQWRkZWQoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uQkFOS19DT05ORUNUSU9OX0FEREVEKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgdGhpcy5mZXRjaCgpLnN1YnNjcmliZSgoYmFua0FjY291bnRzOiBCYW5rQWNjb3VudFtdKSA9PiB7XG4gICAgICAgIHRoaXMuY2FjaGUgPSBiYW5rQWNjb3VudHM7XG4gICAgICAgIHRoaXMudXBkYXRlQ2FjaGUoKTtcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIGxpc3RlbiB0byBub3RpZmljYXRpb25zIHRvIHVwZGF0ZSBiYXNpcSBhY2NvdW50cyBsaXN0XG4gICAqL1xuICBwcml2YXRlIGxpc3Rlbk5vdGlmaWNhdGlvbnMoKTogdm9pZCB7XG4gICAgdGhpcy5ldmVudERpc3BhdGNoZXJTZXJ2aWNlLm9uKEFwcEV2ZW50VHlwZUVudW0uTk9USUZJQ0FUSU9OX0FEREVEKS5zdWJzY3JpYmUoKG5vdGlmaWNhdGlvbjogTm90aWZpY2F0aW9uKTogdm9pZCA9PiB7XG4gICAgICBpZiAoIW5vdGlmaWNhdGlvbi5pc1JlYWQgJiYgbm90aWZpY2F0aW9uLmV2ZW50VHlwZSA9PT0gVXNlckV2ZW50VHlwZUNsaWVudFR5cGVFbnVtLkJBU0lRX05FV19BQ0NPVU5UUykge1xuICAgICAgICB0aGlzLnJlc2V0Q2FjaGUoKTtcbiAgICAgICAgdGhpcy5nZXQoKS5zdWJzY3JpYmUoKTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxufVxuIl19
|