taxtank-core 0.20.1 → 0.21.2
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 +913 -697
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/collection.js +6 -3
- package/esm2015/lib/collections/property/property.collection.js +24 -5
- package/esm2015/lib/db/Enums/bank-popular.enum.js +14 -0
- package/esm2015/lib/forms/abstract.form.js +11 -4
- package/esm2015/lib/forms/bank/bank-account/bank-account-add-manual.form.js +75 -0
- package/esm2015/lib/forms/bank/bank-account/bank-account-import.form.js +43 -0
- package/esm2015/lib/forms/bank/bank-account/bank-account-loan.form.js +23 -0
- package/esm2015/lib/forms/bank/bank-account/bank-account-properties.form.js +36 -0
- package/esm2015/lib/forms/bank/bank-account/bank-accounts-import.form.js +50 -0
- package/esm2015/lib/forms/index.js +6 -7
- package/esm2015/lib/forms/register/register-client.form.js +3 -9
- package/esm2015/lib/forms/register/register-firm.form.js +4 -1
- package/esm2015/lib/forms/report/my-tax/my-tax-income-statements.form.js +3 -3
- package/esm2015/lib/forms/user/password.form.js +3 -2
- package/esm2015/lib/forms/user/reset-password.form.js +2 -1
- package/esm2015/lib/interceptors/basiq.interceptor.js +3 -3
- package/esm2015/lib/interceptors/corelogic-interceptor.js +3 -3
- package/esm2015/lib/interceptors/financial-year-interceptor.js +3 -3
- package/esm2015/lib/interceptors/interceptors.module.js +4 -4
- package/esm2015/lib/interceptors/jwt-interceptor.js +9 -4
- package/esm2015/lib/interceptors/preloader.interceptor.js +3 -3
- package/esm2015/lib/interceptors/user-switcher-interceptor.js +3 -3
- package/esm2015/lib/models/badge/badge-color.enum.js +8 -0
- package/esm2015/lib/models/badge/badge.js +14 -0
- package/esm2015/lib/models/bank/bank.js +7 -2
- package/esm2015/lib/models/dictionary/dictionary.js +35 -0
- package/esm2015/lib/models/property/property.js +6 -1
- package/esm2015/lib/services/account-setup/account-setup.service.js +3 -3
- package/esm2015/lib/services/asset/assets.service.js +3 -3
- package/esm2015/lib/services/auth/auth.service.js +3 -3
- package/esm2015/lib/services/auth/jwt.service.js +3 -3
- package/esm2015/lib/services/bank/bank-account-calculation.service.js +3 -3
- package/esm2015/lib/services/bank/bank-transaction-calculation.service.js +3 -3
- package/esm2015/lib/services/event/event-dispatcher.service.js +3 -3
- package/esm2015/lib/services/event/sse.service.js +3 -3
- package/esm2015/lib/services/export/export-formatter.service.js +3 -3
- package/esm2015/lib/services/header-title/header-title.service.js +3 -3
- package/esm2015/lib/services/http/address/address.service.js +3 -3
- package/esm2015/lib/services/http/bank/bank-account/bank-account.service.js +10 -4
- package/esm2015/lib/services/http/bank/bank-connection/bank-connection.service.js +18 -48
- package/esm2015/lib/services/http/bank/bank-transaction/bank-transaction.service.js +3 -3
- package/esm2015/lib/services/http/bank/bank.service.js +11 -4
- package/esm2015/lib/services/http/bank/basiq/basiq-token.service.js +3 -3
- package/esm2015/lib/services/http/bank/basiq/basiq.service.js +55 -17
- package/esm2015/lib/services/http/chart-accounts/chart-accounts-depreciations/chart-accounts-depreciations.service.js +3 -3
- package/esm2015/lib/services/http/chart-accounts/chart-accounts.service.js +3 -3
- package/esm2015/lib/services/http/chat/chat.service.js +3 -3
- package/esm2015/lib/services/http/chat/message/message.service.js +3 -3
- package/esm2015/lib/services/http/chat/message-document/message-document.service.js +3 -3
- package/esm2015/lib/services/http/depreciation/depreciation-capital-project/depreciation-capital-project.service.js +3 -3
- package/esm2015/lib/services/http/depreciation/depreciation.service.js +3 -3
- package/esm2015/lib/services/http/document/document-folder/document-folder.service.js +3 -3
- package/esm2015/lib/services/http/facebook/facebook.service.js +3 -3
- package/esm2015/lib/services/http/firm/client-income/client-income-types.service.js +3 -3
- package/esm2015/lib/services/http/firm/client-invite/client-invite.service.js +3 -3
- package/esm2015/lib/services/http/firm/client-movement/client-movement.service.js +3 -3
- package/esm2015/lib/services/http/firm/employee/employee.service.js +3 -3
- package/esm2015/lib/services/http/firm/employee-invite/employee-invite.service.js +3 -3
- package/esm2015/lib/services/http/firm/firm.service.js +3 -3
- package/esm2015/lib/services/http/firm/portfolio-report/client-portfolio-report.service.js +3 -3
- package/esm2015/lib/services/http/income-source/income-source-forecast/income-source-forecast.service.js +3 -3
- package/esm2015/lib/services/http/income-source/income-source.service.js +3 -3
- package/esm2015/lib/services/http/income-source/salary-forecast/salary-forecast.service.js +3 -3
- package/esm2015/lib/services/http/income-source/sole-forecast/sole-forecast.service.js +3 -3
- package/esm2015/lib/services/http/loan/borrowing-expense/borrowing-expense.service.js +3 -3
- package/esm2015/lib/services/http/loan/loan.service.js +3 -3
- package/esm2015/lib/services/http/property/property-category/property-category.service.js +3 -3
- package/esm2015/lib/services/http/property/property-category-movement/property-category-movement.service.js +3 -3
- package/esm2015/lib/services/http/property/property-document/property-document.service.js +3 -3
- package/esm2015/lib/services/http/property/property-sale/property-sale.service.js +3 -3
- package/esm2015/lib/services/http/property/property-sale/tax-exemption/tax-exemption.service.js +3 -3
- package/esm2015/lib/services/http/property/property-share/property-share.service.js +3 -3
- package/esm2015/lib/services/http/property/property.service.js +3 -3
- package/esm2015/lib/services/http/rest/rest.service.js +3 -3
- package/esm2015/lib/services/http/service-notification/service-notification.service.js +3 -3
- package/esm2015/lib/services/http/subscription/service-price.service.js +3 -3
- package/esm2015/lib/services/http/subscription/subscription.service.js +3 -3
- package/esm2015/lib/services/http/tax-review/tax-review-history/tax-review-history.service.js +3 -3
- package/esm2015/lib/services/http/tax-review/tax-review.service.js +3 -3
- package/esm2015/lib/services/http/tax-summary/tax-summary.service.js +3 -3
- package/esm2015/lib/services/http/transaction/transaction-allocation/transaction-allocation.service.js +3 -3
- package/esm2015/lib/services/http/transaction/transaction.service.js +3 -3
- package/esm2015/lib/services/http/user/occupation/occupation.service.js +3 -3
- package/esm2015/lib/services/http/user/user-event-setting/user-event-setting.service.js +3 -3
- package/esm2015/lib/services/http/user/user-event-type/user-event-type.service.js +3 -3
- package/esm2015/lib/services/http/user/user.service.js +3 -3
- package/esm2015/lib/services/http/vehicle/vehicle-claim.service.js +3 -3
- package/esm2015/lib/services/http/vehicle/vehicle-logbook.service.js +3 -3
- package/esm2015/lib/services/http/vehicle/vehicle.service.js +3 -3
- package/esm2015/lib/services/intercom/intercom.service.js +3 -3
- package/esm2015/lib/services/kompassify/kompassify.service.js +3 -3
- package/esm2015/lib/services/pdf/pdf-from-dom-element/pdf-from-dom-element.service.js +3 -3
- package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-data-table/pdf-from-data-table.service.js +3 -3
- package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-html-table/pdf-from-html-table.service.js +3 -3
- package/esm2015/lib/services/pdf/pdf-from-table/pdf-from-table.service.js +3 -3
- package/esm2015/lib/services/preloader/preloader.service.js +3 -3
- package/esm2015/lib/services/property/corelogic/corelogic.service.js +3 -3
- package/esm2015/lib/services/property/equity-position-chart/equity-position-chart.service.js +3 -3
- package/esm2015/lib/services/property/property-calculation/property-calculation.service.js +38 -4
- package/esm2015/lib/services/report/property/property-transaction-report.service.js +3 -3
- package/esm2015/lib/services/toast/toast.service.js +3 -3
- package/esm2015/lib/services/transaction/transaction-calculation.service.js +3 -3
- package/esm2015/lib/services/user/user-switcher.service.js +3 -3
- package/esm2015/lib/services/xlsx/xlsx.service.js +3 -3
- package/esm2015/lib/tt-core.module.js +4 -4
- package/esm2015/lib/validators/at-least-one-enabled.validator.js +11 -0
- package/esm2015/lib/validators/autocomplete.validator.js +10 -0
- package/esm2015/lib/validators/index.js +2 -3
- package/esm2015/public-api.js +5 -2
- package/fesm2015/taxtank-core.js +789 -574
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/collection.d.ts +2 -1
- package/lib/collections/property/property.collection.d.ts +5 -0
- package/lib/db/Enums/bank-popular.enum.d.ts +12 -0
- package/lib/forms/abstract.form.d.ts +5 -3
- package/lib/forms/bank/bank-account/bank-account-add-manual.form.d.ts +25 -0
- package/lib/forms/bank/bank-account/bank-account-import.form.d.ts +15 -0
- package/lib/forms/bank/bank-account/bank-account-loan.form.d.ts +8 -0
- package/lib/forms/bank/bank-account/bank-account-properties.form.d.ts +11 -0
- package/lib/forms/bank/bank-account/bank-accounts-import.form.d.ts +12 -0
- package/lib/forms/index.d.ts +5 -6
- package/lib/forms/register/register-client.form.d.ts +3 -2
- package/lib/forms/register/register-firm.form.d.ts +1 -0
- package/lib/models/badge/badge-color.enum.d.ts +6 -0
- package/lib/models/badge/badge.d.ts +10 -0
- package/lib/models/bank/bank.d.ts +1 -0
- package/lib/models/dictionary/dictionary.d.ts +12 -0
- package/lib/models/property/property.d.ts +5 -0
- package/lib/services/http/bank/bank-account/bank-account.service.d.ts +3 -0
- package/lib/services/http/bank/bank-connection/bank-connection.service.d.ts +0 -8
- package/lib/services/http/bank/bank.service.d.ts +2 -0
- package/lib/services/http/bank/basiq/basiq.service.d.ts +12 -3
- package/lib/services/property/property-calculation/property-calculation.service.d.ts +10 -0
- package/lib/validators/at-least-one-enabled.validator.d.ts +5 -0
- package/lib/validators/{require-autocomplete.d.ts → autocomplete.validator.d.ts} +2 -1
- package/lib/validators/index.d.ts +1 -2
- package/package.json +1 -1
- package/public-api.d.ts +4 -1
- package/esm2015/lib/collections/bank.collection.js +0 -15
- package/esm2015/lib/forms/bank/bank-account-add-manual.form.js +0 -19
- package/esm2015/lib/forms/bank/bank-account-loan.form.js +0 -20
- package/esm2015/lib/forms/bank/bank-account-migrate.form.js +0 -15
- package/esm2015/lib/forms/bank/bank-account-properties.form.js +0 -15
- package/esm2015/lib/forms/bank/bank-account-property.form.js +0 -13
- package/esm2015/lib/forms/bank/bank-account.form.js +0 -66
- package/esm2015/lib/validators/require-autocomplete.js +0 -14
- package/esm2015/lib/validators/require-select.validator.js +0 -15
- package/lib/collections/bank.collection.d.ts +0 -7
- package/lib/forms/bank/bank-account-add-manual.form.d.ts +0 -10
- package/lib/forms/bank/bank-account-loan.form.d.ts +0 -5
- package/lib/forms/bank/bank-account-migrate.form.d.ts +0 -9
- package/lib/forms/bank/bank-account-properties.form.d.ts +0 -8
- package/lib/forms/bank/bank-account-property.form.d.ts +0 -5
- package/lib/forms/bank/bank-account.form.d.ts +0 -28
- package/lib/validators/require-select.validator.d.ts +0 -5
package/fesm2015/taxtank-core.js
CHANGED
|
@@ -15,10 +15,11 @@ import * as moment from 'moment';
|
|
|
15
15
|
import flatten from 'lodash/flatten';
|
|
16
16
|
import hasIn from 'lodash/hasIn';
|
|
17
17
|
import first from 'lodash/first';
|
|
18
|
-
import cloneDeep$1 from 'lodash/cloneDeep';
|
|
19
|
-
import compact from 'lodash/compact';
|
|
20
18
|
import uniqBy from 'lodash/uniqBy';
|
|
21
19
|
import concat from 'lodash/concat';
|
|
20
|
+
import { throwError as throwError$1 } from 'rxjs/internal/observable/throwError';
|
|
21
|
+
import cloneDeep$1 from 'lodash/cloneDeep';
|
|
22
|
+
import compact from 'lodash/compact';
|
|
22
23
|
import { DateRange } from 'moment-range';
|
|
23
24
|
import { Validators, FormGroup, FormControl, FormArray } from '@angular/forms';
|
|
24
25
|
import fromPairs from 'lodash/fromPairs';
|
|
@@ -68,9 +69,9 @@ class CorelogicService {
|
|
|
68
69
|
}));
|
|
69
70
|
}
|
|
70
71
|
}
|
|
71
|
-
CorelogicService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
72
|
-
CorelogicService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
73
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
72
|
+
CorelogicService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
73
|
+
CorelogicService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicService, providedIn: 'root' });
|
|
74
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicService, decorators: [{
|
|
74
75
|
type: Injectable,
|
|
75
76
|
args: [{
|
|
76
77
|
providedIn: 'root'
|
|
@@ -112,9 +113,9 @@ class CorelogicInterceptor {
|
|
|
112
113
|
return next.handle(this.addToken(request));
|
|
113
114
|
}
|
|
114
115
|
}
|
|
115
|
-
CorelogicInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
116
|
-
CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
117
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
116
|
+
CorelogicInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor, deps: [{ token: CorelogicService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
117
|
+
CorelogicInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor });
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: CorelogicInterceptor, decorators: [{
|
|
118
119
|
type: Injectable
|
|
119
120
|
}], ctorParameters: function () { return [{ type: CorelogicService }, { type: undefined, decorators: [{
|
|
120
121
|
type: Inject,
|
|
@@ -150,9 +151,9 @@ class FinancialYearInterceptor {
|
|
|
150
151
|
return next.handle(clonedReq);
|
|
151
152
|
}
|
|
152
153
|
}
|
|
153
|
-
FinancialYearInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
154
|
-
FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
155
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
154
|
+
FinancialYearInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
155
|
+
FinancialYearInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor });
|
|
156
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FinancialYearInterceptor, decorators: [{
|
|
156
157
|
type: Injectable
|
|
157
158
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
158
159
|
type: Inject,
|
|
@@ -183,9 +184,9 @@ class JwtService extends JwtHelperService {
|
|
|
183
184
|
return this.getUser().id === userId;
|
|
184
185
|
}
|
|
185
186
|
}
|
|
186
|
-
JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
187
|
-
JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
188
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
187
|
+
JwtService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
188
|
+
JwtService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, providedIn: 'root' });
|
|
189
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtService, decorators: [{
|
|
189
190
|
type: Injectable,
|
|
190
191
|
args: [{
|
|
191
192
|
providedIn: 'root'
|
|
@@ -258,9 +259,9 @@ class EventDispatcherService {
|
|
|
258
259
|
this.eventSubject.next(event);
|
|
259
260
|
}
|
|
260
261
|
}
|
|
261
|
-
EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
262
|
-
EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
263
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
262
|
+
EventDispatcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
263
|
+
EventDispatcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, providedIn: 'root' });
|
|
264
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EventDispatcherService, decorators: [{
|
|
264
265
|
type: Injectable,
|
|
265
266
|
args: [{
|
|
266
267
|
providedIn: 'root'
|
|
@@ -309,9 +310,9 @@ class AuthService {
|
|
|
309
310
|
location.replace(url);
|
|
310
311
|
}
|
|
311
312
|
}
|
|
312
|
-
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
313
|
-
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
314
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
313
|
+
AuthService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, deps: [{ token: i1.HttpClient }, { token: JwtService }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
314
|
+
AuthService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, providedIn: 'root' });
|
|
315
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AuthService, decorators: [{
|
|
315
316
|
type: Injectable,
|
|
316
317
|
args: [{
|
|
317
318
|
providedIn: 'root'
|
|
@@ -396,6 +397,11 @@ class JwtInterceptor {
|
|
|
396
397
|
// });
|
|
397
398
|
}
|
|
398
399
|
handle401Error(req, next, err) {
|
|
400
|
+
var _a;
|
|
401
|
+
// skip 401 errors not from JWT (basiq login case or other)
|
|
402
|
+
if (!((_a = err.error.message) === null || _a === void 0 ? void 0 : _a.includes('JWT Token'))) {
|
|
403
|
+
return throwError(err);
|
|
404
|
+
}
|
|
399
405
|
if (req.url.includes('token/refresh') || req.url.includes('login')) {
|
|
400
406
|
if (req.url.includes('token/refresh')) {
|
|
401
407
|
this.authService.logoutFront();
|
|
@@ -442,9 +448,9 @@ class JwtInterceptor {
|
|
|
442
448
|
});
|
|
443
449
|
}
|
|
444
450
|
}
|
|
445
|
-
JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
446
|
-
JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
447
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
451
|
+
JwtInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor, deps: [{ token: JwtService }, { token: AuthService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
452
|
+
JwtInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor });
|
|
453
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: JwtInterceptor, decorators: [{
|
|
448
454
|
type: Injectable
|
|
449
455
|
}], ctorParameters: function () { return [{ type: JwtService }, { type: AuthService }, { type: undefined, decorators: [{
|
|
450
456
|
type: Inject,
|
|
@@ -477,9 +483,9 @@ class UserSwitcherService {
|
|
|
477
483
|
window.location.replace('/firm/dashboard');
|
|
478
484
|
}
|
|
479
485
|
}
|
|
480
|
-
UserSwitcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
481
|
-
UserSwitcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
482
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
486
|
+
UserSwitcherService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
487
|
+
UserSwitcherService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherService, providedIn: 'root' });
|
|
488
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherService, decorators: [{
|
|
483
489
|
type: Injectable,
|
|
484
490
|
args: [{
|
|
485
491
|
providedIn: 'root'
|
|
@@ -515,9 +521,9 @@ class UserSwitcherInterceptor {
|
|
|
515
521
|
return next.handle(this.switch(request, this.userSwitcherService.get()));
|
|
516
522
|
}
|
|
517
523
|
}
|
|
518
|
-
UserSwitcherInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
519
|
-
UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
520
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
524
|
+
UserSwitcherInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor, deps: [{ token: UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
525
|
+
UserSwitcherInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor });
|
|
526
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserSwitcherInterceptor, decorators: [{
|
|
521
527
|
type: Injectable
|
|
522
528
|
}], ctorParameters: function () { return [{ type: UserSwitcherService }, { type: undefined, decorators: [{
|
|
523
529
|
type: Inject,
|
|
@@ -713,9 +719,9 @@ class PreloaderService {
|
|
|
713
719
|
this.activePreloaders.next(activePreloaders);
|
|
714
720
|
}
|
|
715
721
|
}
|
|
716
|
-
PreloaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
717
|
-
PreloaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
718
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
722
|
+
PreloaderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
723
|
+
PreloaderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderService, providedIn: 'root' });
|
|
724
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderService, decorators: [{
|
|
719
725
|
type: Injectable,
|
|
720
726
|
args: [{
|
|
721
727
|
providedIn: 'root'
|
|
@@ -743,9 +749,9 @@ class PreloaderInterceptor {
|
|
|
743
749
|
return Object.values(ENDPOINTS).find((endpoint) => endpoint.test(requestPath));
|
|
744
750
|
}
|
|
745
751
|
}
|
|
746
|
-
PreloaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
747
|
-
PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
748
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
752
|
+
PreloaderInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor, deps: [{ token: PreloaderService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
753
|
+
PreloaderInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor });
|
|
754
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PreloaderInterceptor, decorators: [{
|
|
749
755
|
type: Injectable
|
|
750
756
|
}], ctorParameters: function () { return [{ type: PreloaderService }]; } });
|
|
751
757
|
|
|
@@ -879,9 +885,9 @@ class ToastService {
|
|
|
879
885
|
}));
|
|
880
886
|
}
|
|
881
887
|
}
|
|
882
|
-
ToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
883
|
-
ToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
884
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
888
|
+
ToastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ToastService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
889
|
+
ToastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ToastService, providedIn: 'root' });
|
|
890
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ToastService, decorators: [{
|
|
885
891
|
type: Injectable,
|
|
886
892
|
args: [{
|
|
887
893
|
providedIn: 'root'
|
|
@@ -1074,9 +1080,9 @@ class RestService {
|
|
|
1074
1080
|
*/
|
|
1075
1081
|
listenEvents() { }
|
|
1076
1082
|
}
|
|
1077
|
-
RestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
1078
|
-
RestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
1079
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
1083
|
+
RestService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RestService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
1084
|
+
RestService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RestService, providedIn: 'root' });
|
|
1085
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: RestService, decorators: [{
|
|
1080
1086
|
type: Injectable,
|
|
1081
1087
|
args: [{
|
|
1082
1088
|
providedIn: 'root'
|
|
@@ -2041,6 +2047,9 @@ class Collection {
|
|
|
2041
2047
|
getIds() {
|
|
2042
2048
|
return this.items.map((item) => item['id']);
|
|
2043
2049
|
}
|
|
2050
|
+
mapBy(path) {
|
|
2051
|
+
return this.items.map((item) => get(item, path));
|
|
2052
|
+
}
|
|
2044
2053
|
sortBy(field = 'id', isDesc = true) {
|
|
2045
2054
|
sort(this.items, field, isDesc);
|
|
2046
2055
|
return this;
|
|
@@ -2095,8 +2104,8 @@ class Collection {
|
|
|
2095
2104
|
remove(items) {
|
|
2096
2105
|
return this.filter((model) => !items.map((item) => item.id).includes(model.id));
|
|
2097
2106
|
}
|
|
2098
|
-
removeBy(path,
|
|
2099
|
-
return this.filter((item) => get(item, path)
|
|
2107
|
+
removeBy(path, values) {
|
|
2108
|
+
return this.filter((item) => !(Array.isArray(values) ? values : [values]).includes(get(item, path)));
|
|
2100
2109
|
}
|
|
2101
2110
|
}
|
|
2102
2111
|
|
|
@@ -2301,6 +2310,11 @@ class Property extends Property$1 {
|
|
|
2301
2310
|
getOwnershipDuration(sale, unitOfTime = 'days') {
|
|
2302
2311
|
return moment(sale.contractDate).diff(moment(this.contractDate), unitOfTime);
|
|
2303
2312
|
}
|
|
2313
|
+
/**
|
|
2314
|
+
* Tax Position = Income - Expense - Interest - Depreciation
|
|
2315
|
+
* Where (Income - Expense - Interest) is cash position.
|
|
2316
|
+
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217415928/Dashboard+Property
|
|
2317
|
+
*/
|
|
2304
2318
|
getTaxPosition(transactions, depreciations) {
|
|
2305
2319
|
return transactions.cashPosition - Math.abs(depreciations.claimAmount);
|
|
2306
2320
|
}
|
|
@@ -2358,6 +2372,20 @@ class BasiqJob extends BasiqJob$1 {
|
|
|
2358
2372
|
class Bank$1 extends AbstractModel {
|
|
2359
2373
|
}
|
|
2360
2374
|
|
|
2375
|
+
var BankPopularEnum;
|
|
2376
|
+
(function (BankPopularEnum) {
|
|
2377
|
+
BankPopularEnum["BANKWEST"] = "Bank of Western Australia trading as BankWest";
|
|
2378
|
+
BankPopularEnum["ANZ"] = "Australia and New Zealand Banking Group Limited";
|
|
2379
|
+
BankPopularEnum["CBA"] = "Commonwealth Bank Australia";
|
|
2380
|
+
BankPopularEnum["WESTPAC"] = "Westpac Banking Corporation";
|
|
2381
|
+
BankPopularEnum["BENDIGO"] = "Bendigo and Adelaide Bank Limited";
|
|
2382
|
+
BankPopularEnum["ING_DIRECT"] = "ING Bank (Australia) Limited (trading as ING Direct)";
|
|
2383
|
+
BankPopularEnum["ST_GEORGE"] = "St. George Bank (a subsidiary of Westpac)";
|
|
2384
|
+
BankPopularEnum["SUNCORP"] = "Suncorp-Metway Limited";
|
|
2385
|
+
BankPopularEnum["CITIBANK"] = "Citibank";
|
|
2386
|
+
BankPopularEnum["BOQ"] = "Bank of Queensland Limited";
|
|
2387
|
+
})(BankPopularEnum || (BankPopularEnum = {}));
|
|
2388
|
+
|
|
2361
2389
|
class Bank extends Bank$1 {
|
|
2362
2390
|
getInitials() {
|
|
2363
2391
|
return this.name[0] + this.name[1];
|
|
@@ -2372,6 +2400,10 @@ class Bank extends Bank$1 {
|
|
|
2372
2400
|
__decorate([
|
|
2373
2401
|
Transform(({ value }) => value ? value.replace(' ', '%20') : null)
|
|
2374
2402
|
], Bank.prototype, "logo", void 0);
|
|
2403
|
+
__decorate([
|
|
2404
|
+
Transform(({ obj }) => Object.values(BankPopularEnum).includes(obj.name)),
|
|
2405
|
+
Expose()
|
|
2406
|
+
], Bank.prototype, "isPopular", void 0);
|
|
2375
2407
|
|
|
2376
2408
|
var BankConnectionStatusEnum;
|
|
2377
2409
|
(function (BankConnectionStatusEnum) {
|
|
@@ -2522,13 +2554,139 @@ __decorate([
|
|
|
2522
2554
|
Type(() => BankConnection)
|
|
2523
2555
|
], BankAccount.prototype, "bankConnection", void 0);
|
|
2524
2556
|
|
|
2557
|
+
const TYPE_LOAN = [
|
|
2558
|
+
BankAccountTypeEnum.MORTGAGE,
|
|
2559
|
+
BankAccountTypeEnum.CREDIT_CARD,
|
|
2560
|
+
BankAccountTypeEnum.LOAN
|
|
2561
|
+
];
|
|
2562
|
+
|
|
2525
2563
|
/**
|
|
2526
|
-
*
|
|
2564
|
+
* Collection of bank accounts.
|
|
2527
2565
|
*/
|
|
2528
|
-
class
|
|
2529
|
-
|
|
2530
|
-
|
|
2531
|
-
|
|
2566
|
+
class BankAccountCollection extends Collection {
|
|
2567
|
+
/**
|
|
2568
|
+
* get list of bank accounts with passed types
|
|
2569
|
+
*/
|
|
2570
|
+
getByType(types, isExclude = false) {
|
|
2571
|
+
// get types always as array (if only one passed)
|
|
2572
|
+
const typesArray = concat(types);
|
|
2573
|
+
return this.items.filter((bankAccount) => {
|
|
2574
|
+
if (isExclude) {
|
|
2575
|
+
return !typesArray.includes(bankAccount.type);
|
|
2576
|
+
}
|
|
2577
|
+
return typesArray.includes(bankAccount.type);
|
|
2578
|
+
});
|
|
2579
|
+
}
|
|
2580
|
+
/**
|
|
2581
|
+
* get amount of initial loans
|
|
2582
|
+
*/
|
|
2583
|
+
getInitialLoanAmount() {
|
|
2584
|
+
return this.getByType(TYPE_LOAN)
|
|
2585
|
+
.reduce((sum, bankAccount) => {
|
|
2586
|
+
return sum += bankAccount.balances.length ? bankAccount.getOpeningBalance() : 0;
|
|
2587
|
+
}, 0);
|
|
2588
|
+
}
|
|
2589
|
+
/**
|
|
2590
|
+
* get amount of current loans
|
|
2591
|
+
*/
|
|
2592
|
+
getCurrentLoanAmount() {
|
|
2593
|
+
return this.getByType(TYPE_LOAN)
|
|
2594
|
+
.reduce((sum, bankAccount) => {
|
|
2595
|
+
return sum += bankAccount.currentBalance;
|
|
2596
|
+
}, 0);
|
|
2597
|
+
}
|
|
2598
|
+
/**
|
|
2599
|
+
* get collection filtered by property id
|
|
2600
|
+
*/
|
|
2601
|
+
getByPropertyId(id) {
|
|
2602
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2603
|
+
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
2604
|
+
return bankAccountProperty.property.id === id;
|
|
2605
|
+
});
|
|
2606
|
+
}));
|
|
2607
|
+
}
|
|
2608
|
+
/**
|
|
2609
|
+
* get collection filtered by properties ids
|
|
2610
|
+
*/
|
|
2611
|
+
getByPropertiesIds(ids) {
|
|
2612
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2613
|
+
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
2614
|
+
return ids.includes(bankAccountProperty.property.id);
|
|
2615
|
+
});
|
|
2616
|
+
}));
|
|
2617
|
+
}
|
|
2618
|
+
/**
|
|
2619
|
+
* get collection of active bank accounts
|
|
2620
|
+
*/
|
|
2621
|
+
getActiveBankAccounts() {
|
|
2622
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2623
|
+
return bankAccount.isActive();
|
|
2624
|
+
}));
|
|
2625
|
+
}
|
|
2626
|
+
/**
|
|
2627
|
+
* get reduction of loan (reduction of principle) percentage
|
|
2628
|
+
*/
|
|
2629
|
+
getPrincipleReductionPercent() {
|
|
2630
|
+
const initialLoans = this.getInitialLoanAmount();
|
|
2631
|
+
const currentLoans = this.getCurrentLoanAmount();
|
|
2632
|
+
if (!initialLoans) {
|
|
2633
|
+
return 0;
|
|
2634
|
+
}
|
|
2635
|
+
return (initialLoans - currentLoans) / initialLoans * 100;
|
|
2636
|
+
}
|
|
2637
|
+
/**
|
|
2638
|
+
* Get collection of loan bank accounts
|
|
2639
|
+
*/
|
|
2640
|
+
getLoanAccounts() {
|
|
2641
|
+
return new BankAccountCollection(this.getByType(TYPE_LOAN));
|
|
2642
|
+
}
|
|
2643
|
+
getSavingsAccounts() {
|
|
2644
|
+
return new BankAccountCollection(this.getByType(TYPE_LOAN, true));
|
|
2645
|
+
}
|
|
2646
|
+
getOpeningBalance() {
|
|
2647
|
+
return this.items.reduce((sum, bankAccount) => sum + bankAccount.getOpeningBalance(), 0);
|
|
2648
|
+
}
|
|
2649
|
+
get currentBalance() {
|
|
2650
|
+
return this.sumBy('currentBalance');
|
|
2651
|
+
}
|
|
2652
|
+
/**
|
|
2653
|
+
* Get Collection of bank accounts with property tank type
|
|
2654
|
+
*/
|
|
2655
|
+
getPropertyBankAccounts() {
|
|
2656
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isPropertyTank()));
|
|
2657
|
+
}
|
|
2658
|
+
/**
|
|
2659
|
+
* Get Collection of bank accounts with work tank type
|
|
2660
|
+
*/
|
|
2661
|
+
getWorkBankAccounts() {
|
|
2662
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isWorkTank()));
|
|
2663
|
+
}
|
|
2664
|
+
/**
|
|
2665
|
+
* Get Collection of bank accounts by tank type
|
|
2666
|
+
*/
|
|
2667
|
+
getByTankType(tankType) {
|
|
2668
|
+
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.tankType === tankType));
|
|
2669
|
+
}
|
|
2670
|
+
/**
|
|
2671
|
+
* Get list of all bank account properties
|
|
2672
|
+
*/
|
|
2673
|
+
getBankAccountPropertiesList() {
|
|
2674
|
+
return flatten(this.items.map((bankAccount) => {
|
|
2675
|
+
return bankAccount.bankAccountProperties;
|
|
2676
|
+
}));
|
|
2677
|
+
}
|
|
2678
|
+
/**
|
|
2679
|
+
* Get lis of unique properties from all bank accounts properties
|
|
2680
|
+
*/
|
|
2681
|
+
getProperties() {
|
|
2682
|
+
return uniqBy(this.getBankAccountPropertiesList().map((bankAccountProperty) => {
|
|
2683
|
+
return bankAccountProperty.property;
|
|
2684
|
+
}), 'id');
|
|
2685
|
+
}
|
|
2686
|
+
getPropertyBalanceAmount(propertyId) {
|
|
2687
|
+
return this.items.reduce((sum, bankAccount) => {
|
|
2688
|
+
return sum + bankAccount.getPropertyBalanceAmount(propertyId);
|
|
2689
|
+
}, 0);
|
|
2532
2690
|
}
|
|
2533
2691
|
}
|
|
2534
2692
|
|
|
@@ -2544,15 +2702,25 @@ class BankConnectionService extends RestService {
|
|
|
2544
2702
|
}
|
|
2545
2703
|
listenEvents() {
|
|
2546
2704
|
this.listenToAddedBankAccounts();
|
|
2547
|
-
this.listenBasiqJobCreated();
|
|
2548
|
-
this.listenConnectionUpdated();
|
|
2549
2705
|
this.listenNotifications();
|
|
2550
2706
|
}
|
|
2551
2707
|
add(bankConnection) {
|
|
2552
2708
|
return this.http.post(`${this.environment.apiV2}/${this.url}`, bankConnection)
|
|
2553
2709
|
.pipe(map((bankConnectionBase) => {
|
|
2554
|
-
|
|
2555
|
-
|
|
2710
|
+
const connection = plainToClass(BankConnection, bankConnectionBase);
|
|
2711
|
+
// We use this endpoint for create and reconnect bank connections because of basiq logic.
|
|
2712
|
+
// So we try to replace bank connection in cache for reconnection case.
|
|
2713
|
+
if (bankConnection.id) {
|
|
2714
|
+
const tempCache = cloneDeep$1(this.cache);
|
|
2715
|
+
replace(tempCache, connection);
|
|
2716
|
+
this.cache = cloneDeep$1(tempCache);
|
|
2717
|
+
this.cacheSubject.next(tempCache);
|
|
2718
|
+
}
|
|
2719
|
+
else {
|
|
2720
|
+
this.cache.push(connection);
|
|
2721
|
+
this.cacheSubject.next(cloneDeep$1(this.cache));
|
|
2722
|
+
}
|
|
2723
|
+
return plainToClass(BankConnection, connection);
|
|
2556
2724
|
}));
|
|
2557
2725
|
}
|
|
2558
2726
|
listenToAddedBankAccounts() {
|
|
@@ -2560,45 +2728,6 @@ class BankConnectionService extends RestService {
|
|
|
2560
2728
|
this.resetCache();
|
|
2561
2729
|
});
|
|
2562
2730
|
}
|
|
2563
|
-
/**
|
|
2564
|
-
* When user log in to bank, basiq create a job. We create a bank connection with based on this job
|
|
2565
|
-
*/
|
|
2566
|
-
listenBasiqJobCreated() {
|
|
2567
|
-
this.eventDispatcherService.on(AppEventTypeEnum.BASIQ_JOB_CREATED).subscribe((result) => {
|
|
2568
|
-
// push connection to cache temporary to show it to user directly with pending status and not wait until backend loaded
|
|
2569
|
-
const tempCache = cloneDeep$1(this.cache);
|
|
2570
|
-
result.connection.setPending();
|
|
2571
|
-
tempCache.push(result.connection);
|
|
2572
|
-
this.cache = tempCache;
|
|
2573
|
-
this.cacheSubject.next(tempCache);
|
|
2574
|
-
this.add(plainToClass(BankConnection, { basiqJob: { externalId: result.jobId } })).subscribe((newConnection) => {
|
|
2575
|
-
// replace temporary connection with real saved connection
|
|
2576
|
-
// no replace() because connection does not have id yet
|
|
2577
|
-
tempCache.splice(-1, 1, newConnection);
|
|
2578
|
-
this.cache = cloneDeep$1(tempCache);
|
|
2579
|
-
this.cacheSubject.next(tempCache);
|
|
2580
|
-
});
|
|
2581
|
-
});
|
|
2582
|
-
}
|
|
2583
|
-
/**
|
|
2584
|
-
* When basiq connection disconnected we create a basiq job and update this connection
|
|
2585
|
-
*/
|
|
2586
|
-
listenConnectionUpdated() {
|
|
2587
|
-
this.eventDispatcherService.on(AppEventTypeEnum.BASIQ_CONNECTION_UPDATED).subscribe((result) => {
|
|
2588
|
-
// replace connection to cache temporary to show pending status until backend loaded
|
|
2589
|
-
const tempCache = cloneDeep$1(this.cache);
|
|
2590
|
-
result.connection.setPending();
|
|
2591
|
-
replace(tempCache, result.connection);
|
|
2592
|
-
this.cache = tempCache;
|
|
2593
|
-
this.cacheSubject.next(tempCache);
|
|
2594
|
-
this.add(plainToClass(BankConnection, { basiqJob: { externalId: result.jobId } })).subscribe((updatedConnection) => {
|
|
2595
|
-
// replace temporary connection again with real updated connection
|
|
2596
|
-
replace(tempCache, updatedConnection);
|
|
2597
|
-
this.cache = cloneDeep$1(tempCache);
|
|
2598
|
-
this.cacheSubject.next(tempCache);
|
|
2599
|
-
});
|
|
2600
|
-
});
|
|
2601
|
-
}
|
|
2602
2731
|
/**
|
|
2603
2732
|
* Update cache when basiq login failed to get actual connections statuses
|
|
2604
2733
|
*/
|
|
@@ -2610,9 +2739,9 @@ class BankConnectionService extends RestService {
|
|
|
2610
2739
|
});
|
|
2611
2740
|
}
|
|
2612
2741
|
}
|
|
2613
|
-
BankConnectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2614
|
-
BankConnectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
2615
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
2742
|
+
BankConnectionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
2743
|
+
BankConnectionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, providedIn: 'root' });
|
|
2744
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankConnectionService, decorators: [{
|
|
2616
2745
|
type: Injectable,
|
|
2617
2746
|
args: [{
|
|
2618
2747
|
providedIn: 'root'
|
|
@@ -2624,9 +2753,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.16", ngImpo
|
|
|
2624
2753
|
* service is responsible for fetching bank related information
|
|
2625
2754
|
*/
|
|
2626
2755
|
class BasiqService extends RestService {
|
|
2627
|
-
constructor(http, eventDispatcherService, environment, toastService,
|
|
2628
|
-
// init BankConnectionService to listen events
|
|
2629
|
-
bankConnectionService) {
|
|
2756
|
+
constructor(http, eventDispatcherService, environment, toastService, bankConnectionService) {
|
|
2630
2757
|
super(http, eventDispatcherService, environment, toastService);
|
|
2631
2758
|
this.http = http;
|
|
2632
2759
|
this.eventDispatcherService = eventDispatcherService;
|
|
@@ -2643,21 +2770,58 @@ class BasiqService extends RestService {
|
|
|
2643
2770
|
this.listenNotifications();
|
|
2644
2771
|
}
|
|
2645
2772
|
/**
|
|
2646
|
-
* Create
|
|
2647
|
-
|
|
2648
|
-
|
|
2649
|
-
|
|
2650
|
-
|
|
2651
|
-
|
|
2773
|
+
* Create a new Bank connection based on Basiq job.
|
|
2774
|
+
* Here we have nested requests because we need to get a job id before we create a bank connection.
|
|
2775
|
+
* There is no way to use event dispatcher because we expect some errors from bank-connections API, but in components
|
|
2776
|
+
* we interact with basiq service.
|
|
2777
|
+
*/
|
|
2778
|
+
createConnection(loginData, userId) {
|
|
2779
|
+
// Send login data to basiq API to create a basiq job
|
|
2780
|
+
return this.http.post(`${BasiqService.basiqApiUrl}/users/${userId}/connections`, loginData)
|
|
2781
|
+
.pipe(mergeMap((response) => {
|
|
2782
|
+
// Create bank connection based on basiq job
|
|
2783
|
+
return this.bankConnectionService.add(plainToClass(BankConnection, { basiqJob: { externalId: response.id } }));
|
|
2784
|
+
}), catchError((error) => {
|
|
2785
|
+
// Show error when user provided wrong login data
|
|
2786
|
+
if (error.status === 401) {
|
|
2787
|
+
this.toastService.error('Invalid credentials');
|
|
2788
|
+
}
|
|
2789
|
+
return throwError$1(error);
|
|
2652
2790
|
}));
|
|
2653
2791
|
}
|
|
2654
2792
|
/**
|
|
2655
2793
|
* Update disconnected bank connection
|
|
2794
|
+
* Here we have nested requests because we need to get a job id before we create a bank connection.
|
|
2795
|
+
* There is no way to use event dispatcher because we expect some errors from bank-connections API, but in components
|
|
2796
|
+
* we interact with basiq service.
|
|
2656
2797
|
*/
|
|
2657
2798
|
updateConnection(data, userId, connection) {
|
|
2658
|
-
|
|
2659
|
-
|
|
2660
|
-
|
|
2799
|
+
// Send login data to basiq API to create a basiq job
|
|
2800
|
+
return this.http.post(`${BasiqService.basiqApiUrl}/users/${userId}/connections`, Object.assign(data, { id: connection.externalId }))
|
|
2801
|
+
.pipe(
|
|
2802
|
+
// Create bank connection based on basiq job
|
|
2803
|
+
mergeMap((response) => {
|
|
2804
|
+
return this.bankConnectionService.add(plainToClass(BankConnection, Object.assign({ id: connection.id, basiqJob: { externalId: response.id } })));
|
|
2805
|
+
}), catchError((error) => {
|
|
2806
|
+
// Show error when user provided wrong login data
|
|
2807
|
+
if (error.status === 401) {
|
|
2808
|
+
this.toastService.error('Invalid credentials');
|
|
2809
|
+
}
|
|
2810
|
+
// Show error when user provided another login (not login he used before)
|
|
2811
|
+
if (error.status === 400) {
|
|
2812
|
+
this.toastService.error('Please enter the login you used before');
|
|
2813
|
+
}
|
|
2814
|
+
return throwError$1(error);
|
|
2815
|
+
}));
|
|
2816
|
+
}
|
|
2817
|
+
getByConnection(connection) {
|
|
2818
|
+
return this.get().pipe(map((bankAccounts) => {
|
|
2819
|
+
return new BankAccountCollection(bankAccounts).filterBy('bankConnection.id', connection.id);
|
|
2820
|
+
}));
|
|
2821
|
+
}
|
|
2822
|
+
getNotImportedByConnection(savedAccounts, connection) {
|
|
2823
|
+
return this.getByConnection(connection).pipe(map((bankAccounts) => {
|
|
2824
|
+
return bankAccounts.removeBy('accountId', savedAccounts.mapBy('accountId'));
|
|
2661
2825
|
}));
|
|
2662
2826
|
}
|
|
2663
2827
|
/**
|
|
@@ -2672,9 +2836,9 @@ class BasiqService extends RestService {
|
|
|
2672
2836
|
}
|
|
2673
2837
|
}
|
|
2674
2838
|
BasiqService.basiqApiUrl = 'https://au-api.basiq.io';
|
|
2675
|
-
BasiqService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2676
|
-
BasiqService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
2677
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
2839
|
+
BasiqService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }, { token: BankConnectionService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2840
|
+
BasiqService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, providedIn: 'root' });
|
|
2841
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqService, decorators: [{
|
|
2678
2842
|
type: Injectable,
|
|
2679
2843
|
args: [{
|
|
2680
2844
|
providedIn: 'root'
|
|
@@ -2721,9 +2885,9 @@ class BasiqTokenService {
|
|
|
2721
2885
|
return this.cacheSubject.asObservable();
|
|
2722
2886
|
}
|
|
2723
2887
|
}
|
|
2724
|
-
BasiqTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2725
|
-
BasiqTokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
2726
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
2888
|
+
BasiqTokenService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2889
|
+
BasiqTokenService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenService, providedIn: 'root' });
|
|
2890
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqTokenService, decorators: [{
|
|
2727
2891
|
type: Injectable,
|
|
2728
2892
|
args: [{
|
|
2729
2893
|
providedIn: 'root'
|
|
@@ -2757,17 +2921,17 @@ class BasiqInterceptor {
|
|
|
2757
2921
|
});
|
|
2758
2922
|
}
|
|
2759
2923
|
}
|
|
2760
|
-
BasiqInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2761
|
-
BasiqInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
2762
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
2924
|
+
BasiqInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqInterceptor, deps: [{ token: BasiqTokenService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
2925
|
+
BasiqInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqInterceptor });
|
|
2926
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BasiqInterceptor, decorators: [{
|
|
2763
2927
|
type: Injectable
|
|
2764
2928
|
}], ctorParameters: function () { return [{ type: BasiqTokenService }]; } });
|
|
2765
2929
|
|
|
2766
2930
|
class InterceptorsModule {
|
|
2767
2931
|
}
|
|
2768
|
-
InterceptorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2769
|
-
InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
2770
|
-
InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
2932
|
+
InterceptorsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
2933
|
+
InterceptorsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule });
|
|
2934
|
+
InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, providers: [
|
|
2771
2935
|
{
|
|
2772
2936
|
provide: HTTP_INTERCEPTORS,
|
|
2773
2937
|
useClass: CorelogicInterceptor,
|
|
@@ -2800,7 +2964,7 @@ InterceptorsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", vers
|
|
|
2800
2964
|
multi: true
|
|
2801
2965
|
}
|
|
2802
2966
|
] });
|
|
2803
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
2967
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: InterceptorsModule, decorators: [{
|
|
2804
2968
|
type: NgModule,
|
|
2805
2969
|
args: [{
|
|
2806
2970
|
providers: [
|
|
@@ -2853,14 +3017,14 @@ class TtCoreModule {
|
|
|
2853
3017
|
};
|
|
2854
3018
|
}
|
|
2855
3019
|
}
|
|
2856
|
-
TtCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
2857
|
-
TtCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.
|
|
3020
|
+
TtCoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TtCoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
3021
|
+
TtCoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TtCoreModule, imports: [CommonModule,
|
|
2858
3022
|
InterceptorsModule] });
|
|
2859
|
-
TtCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.
|
|
3023
|
+
TtCoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TtCoreModule, imports: [[
|
|
2860
3024
|
CommonModule,
|
|
2861
3025
|
InterceptorsModule
|
|
2862
3026
|
]] });
|
|
2863
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
3027
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TtCoreModule, decorators: [{
|
|
2864
3028
|
type: NgModule,
|
|
2865
3029
|
args: [{
|
|
2866
3030
|
declarations: [],
|
|
@@ -2881,156 +3045,6 @@ class AccountSetupItemCollection extends Collection {
|
|
|
2881
3045
|
}
|
|
2882
3046
|
}
|
|
2883
3047
|
|
|
2884
|
-
class BankCollection extends Collection {
|
|
2885
|
-
constructor(banks) {
|
|
2886
|
-
super(banks);
|
|
2887
|
-
this.sortByPopularity();
|
|
2888
|
-
}
|
|
2889
|
-
sortByPopularity() {
|
|
2890
|
-
this.items.sort((bank1, bank2) => {
|
|
2891
|
-
// Banks already sorted on backend by name, so we just need to up top-10 banks
|
|
2892
|
-
return (BankCollection.tobBanksIds.includes(bank1.id) && !BankCollection.tobBanksIds.includes(bank2.id)) ? -1 : 1;
|
|
2893
|
-
});
|
|
2894
|
-
}
|
|
2895
|
-
}
|
|
2896
|
-
BankCollection.tobBanksIds = [124, 13, 134, 172, 126, 142, 135, 137, 138, 128];
|
|
2897
|
-
|
|
2898
|
-
const TYPE_LOAN = [
|
|
2899
|
-
BankAccountTypeEnum.MORTGAGE,
|
|
2900
|
-
BankAccountTypeEnum.CREDIT_CARD,
|
|
2901
|
-
BankAccountTypeEnum.LOAN
|
|
2902
|
-
];
|
|
2903
|
-
|
|
2904
|
-
/**
|
|
2905
|
-
* Collection of bank accounts.
|
|
2906
|
-
*/
|
|
2907
|
-
class BankAccountCollection extends Collection {
|
|
2908
|
-
/**
|
|
2909
|
-
* get list of bank accounts with passed types
|
|
2910
|
-
*/
|
|
2911
|
-
getByType(types, isExclude = false) {
|
|
2912
|
-
// get types always as array (if only one passed)
|
|
2913
|
-
const typesArray = concat(types);
|
|
2914
|
-
return this.items.filter((bankAccount) => {
|
|
2915
|
-
if (isExclude) {
|
|
2916
|
-
return !typesArray.includes(bankAccount.type);
|
|
2917
|
-
}
|
|
2918
|
-
return typesArray.includes(bankAccount.type);
|
|
2919
|
-
});
|
|
2920
|
-
}
|
|
2921
|
-
/**
|
|
2922
|
-
* get amount of initial loans
|
|
2923
|
-
*/
|
|
2924
|
-
getInitialLoanAmount() {
|
|
2925
|
-
return this.getByType(TYPE_LOAN)
|
|
2926
|
-
.reduce((sum, bankAccount) => {
|
|
2927
|
-
return sum += bankAccount.balances.length ? bankAccount.getOpeningBalance() : 0;
|
|
2928
|
-
}, 0);
|
|
2929
|
-
}
|
|
2930
|
-
/**
|
|
2931
|
-
* get amount of current loans
|
|
2932
|
-
*/
|
|
2933
|
-
getCurrentLoanAmount() {
|
|
2934
|
-
return this.getByType(TYPE_LOAN)
|
|
2935
|
-
.reduce((sum, bankAccount) => {
|
|
2936
|
-
return sum += bankAccount.currentBalance;
|
|
2937
|
-
}, 0);
|
|
2938
|
-
}
|
|
2939
|
-
/**
|
|
2940
|
-
* get collection filtered by property id
|
|
2941
|
-
*/
|
|
2942
|
-
getByPropertyId(id) {
|
|
2943
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2944
|
-
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
2945
|
-
return bankAccountProperty.property.id === id;
|
|
2946
|
-
});
|
|
2947
|
-
}));
|
|
2948
|
-
}
|
|
2949
|
-
/**
|
|
2950
|
-
* get collection filtered by properties ids
|
|
2951
|
-
*/
|
|
2952
|
-
getByPropertiesIds(ids) {
|
|
2953
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2954
|
-
return bankAccount.bankAccountProperties.find((bankAccountProperty) => {
|
|
2955
|
-
return ids.includes(bankAccountProperty.property.id);
|
|
2956
|
-
});
|
|
2957
|
-
}));
|
|
2958
|
-
}
|
|
2959
|
-
/**
|
|
2960
|
-
* get collection of active bank accounts
|
|
2961
|
-
*/
|
|
2962
|
-
getActiveBankAccounts() {
|
|
2963
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => {
|
|
2964
|
-
return bankAccount.isActive();
|
|
2965
|
-
}));
|
|
2966
|
-
}
|
|
2967
|
-
/**
|
|
2968
|
-
* get reduction of loan (reduction of principle) percentage
|
|
2969
|
-
*/
|
|
2970
|
-
getPrincipleReductionPercent() {
|
|
2971
|
-
const initialLoans = this.getInitialLoanAmount();
|
|
2972
|
-
const currentLoans = this.getCurrentLoanAmount();
|
|
2973
|
-
if (!initialLoans) {
|
|
2974
|
-
return 0;
|
|
2975
|
-
}
|
|
2976
|
-
return (initialLoans - currentLoans) / initialLoans * 100;
|
|
2977
|
-
}
|
|
2978
|
-
/**
|
|
2979
|
-
* Get collection of loan bank accounts
|
|
2980
|
-
*/
|
|
2981
|
-
getLoanAccounts() {
|
|
2982
|
-
return new BankAccountCollection(this.getByType(TYPE_LOAN));
|
|
2983
|
-
}
|
|
2984
|
-
getSavingsAccounts() {
|
|
2985
|
-
return new BankAccountCollection(this.getByType(TYPE_LOAN, true));
|
|
2986
|
-
}
|
|
2987
|
-
getOpeningBalance() {
|
|
2988
|
-
return this.items.reduce((sum, bankAccount) => sum + bankAccount.getOpeningBalance(), 0);
|
|
2989
|
-
}
|
|
2990
|
-
get currentBalance() {
|
|
2991
|
-
return this.sumBy('currentBalance');
|
|
2992
|
-
}
|
|
2993
|
-
/**
|
|
2994
|
-
* Get Collection of bank accounts with property tank type
|
|
2995
|
-
*/
|
|
2996
|
-
getPropertyBankAccounts() {
|
|
2997
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isPropertyTank()));
|
|
2998
|
-
}
|
|
2999
|
-
/**
|
|
3000
|
-
* Get Collection of bank accounts with work tank type
|
|
3001
|
-
*/
|
|
3002
|
-
getWorkBankAccounts() {
|
|
3003
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.isWorkTank()));
|
|
3004
|
-
}
|
|
3005
|
-
/**
|
|
3006
|
-
* Get Collection of bank accounts by tank type
|
|
3007
|
-
*/
|
|
3008
|
-
getByTankType(tankType) {
|
|
3009
|
-
return new BankAccountCollection(this.items.filter((bankAccount) => bankAccount.tankType === tankType));
|
|
3010
|
-
}
|
|
3011
|
-
/**
|
|
3012
|
-
* Get list of all bank account properties
|
|
3013
|
-
*/
|
|
3014
|
-
getBankAccountPropertiesList() {
|
|
3015
|
-
return flatten(this.items.map((bankAccount) => {
|
|
3016
|
-
return bankAccount.bankAccountProperties;
|
|
3017
|
-
}));
|
|
3018
|
-
}
|
|
3019
|
-
/**
|
|
3020
|
-
* Get lis of unique properties from all bank accounts properties
|
|
3021
|
-
*/
|
|
3022
|
-
getProperties() {
|
|
3023
|
-
return uniqBy(this.getBankAccountPropertiesList().map((bankAccountProperty) => {
|
|
3024
|
-
return bankAccountProperty.property;
|
|
3025
|
-
}), 'id');
|
|
3026
|
-
}
|
|
3027
|
-
getPropertyBalanceAmount(propertyId) {
|
|
3028
|
-
return this.items.reduce((sum, bankAccount) => {
|
|
3029
|
-
return sum + bankAccount.getPropertyBalanceAmount(propertyId);
|
|
3030
|
-
}, 0);
|
|
3031
|
-
}
|
|
3032
|
-
}
|
|
3033
|
-
|
|
3034
3048
|
var TransactionOperationEnum;
|
|
3035
3049
|
(function (TransactionOperationEnum) {
|
|
3036
3050
|
TransactionOperationEnum[TransactionOperationEnum["ALLOCATE"] = 1] = "ALLOCATE";
|
|
@@ -3739,13 +3753,32 @@ class PropertyCollection extends Collection {
|
|
|
3739
3753
|
* Get property with the lowest tax position
|
|
3740
3754
|
*/
|
|
3741
3755
|
getBestPerformanceTaxProperty(transactions, depreciations) {
|
|
3756
|
+
const transactionsByProperty = transactions.groupBy('property.id');
|
|
3757
|
+
const depreciationsByProperty = depreciations.groupBy('property.id');
|
|
3742
3758
|
return this.items.reduce((min, current) => {
|
|
3743
|
-
|
|
3744
|
-
|
|
3745
|
-
|
|
3746
|
-
: min;
|
|
3759
|
+
const minTaxPosition = min.getTaxPosition(transactionsByProperty.get(min.id), depreciationsByProperty.get(min.id));
|
|
3760
|
+
const currentTaxPosition = current.getTaxPosition(transactionsByProperty.get(current.id), depreciationsByProperty.get(current.id));
|
|
3761
|
+
return minTaxPosition > currentTaxPosition ? current : min;
|
|
3747
3762
|
}, this.first);
|
|
3748
3763
|
}
|
|
3764
|
+
/**
|
|
3765
|
+
* Show best performance properties first
|
|
3766
|
+
* https://taxtank.atlassian.net/wiki/spaces/TAXTANK/pages/217677997/Property+Tank+Dashboard
|
|
3767
|
+
*/
|
|
3768
|
+
sortByBestPerformance(transactions, depreciations) {
|
|
3769
|
+
const activeProperties = this.getActiveProperties();
|
|
3770
|
+
// nothing to sort when no active properties
|
|
3771
|
+
if (!activeProperties.length) {
|
|
3772
|
+
return this;
|
|
3773
|
+
}
|
|
3774
|
+
const bestProperties = uniqBy(this.create([
|
|
3775
|
+
activeProperties.getBestPerformanceGrowthProperty(),
|
|
3776
|
+
activeProperties.getBestPerformanceTaxProperty(transactions, depreciations)
|
|
3777
|
+
]).toArray(), 'id');
|
|
3778
|
+
const newItems = this.remove(bestProperties).toArray();
|
|
3779
|
+
newItems.unshift(...bestProperties);
|
|
3780
|
+
return this.create(newItems);
|
|
3781
|
+
}
|
|
3749
3782
|
}
|
|
3750
3783
|
|
|
3751
3784
|
/**
|
|
@@ -5931,6 +5964,26 @@ class AccountSetupItem extends AbstractModel {
|
|
|
5931
5964
|
}
|
|
5932
5965
|
}
|
|
5933
5966
|
|
|
5967
|
+
var BadgeColorEnum;
|
|
5968
|
+
(function (BadgeColorEnum) {
|
|
5969
|
+
BadgeColorEnum["DEFAULT"] = "default";
|
|
5970
|
+
BadgeColorEnum["GREEN"] = "green";
|
|
5971
|
+
BadgeColorEnum["GOLD"] = "gold";
|
|
5972
|
+
BadgeColorEnum["GRAY"] = "gray";
|
|
5973
|
+
})(BadgeColorEnum || (BadgeColorEnum = {}));
|
|
5974
|
+
|
|
5975
|
+
/**
|
|
5976
|
+
* Class for UI element badge
|
|
5977
|
+
*/
|
|
5978
|
+
class Badge extends AbstractModel {
|
|
5979
|
+
constructor(text, color) {
|
|
5980
|
+
super();
|
|
5981
|
+
this.text = '';
|
|
5982
|
+
this.text = text;
|
|
5983
|
+
this.color = color || BadgeColorEnum.DEFAULT;
|
|
5984
|
+
}
|
|
5985
|
+
}
|
|
5986
|
+
|
|
5934
5987
|
/**
|
|
5935
5988
|
* bank account collection UI class with frontend specific data
|
|
5936
5989
|
*/
|
|
@@ -6490,6 +6543,39 @@ var AlphabetColorsEnum;
|
|
|
6490
6543
|
AlphabetColorsEnum["Z"] = "#E3C9CE";
|
|
6491
6544
|
})(AlphabetColorsEnum || (AlphabetColorsEnum = {}));
|
|
6492
6545
|
|
|
6546
|
+
/**
|
|
6547
|
+
* List of objects grouped by passed property
|
|
6548
|
+
*/
|
|
6549
|
+
class Dictionary {
|
|
6550
|
+
constructor(items, path = 'id') {
|
|
6551
|
+
this.items = {};
|
|
6552
|
+
if (!items.length) {
|
|
6553
|
+
return;
|
|
6554
|
+
}
|
|
6555
|
+
// Do nothing if provided path was not found in the 1st item
|
|
6556
|
+
if (!hasIn(items[0], path.split('.')[0])) {
|
|
6557
|
+
return;
|
|
6558
|
+
}
|
|
6559
|
+
this.groupItems(items, path);
|
|
6560
|
+
}
|
|
6561
|
+
add(key, value) {
|
|
6562
|
+
this.items[key] = value;
|
|
6563
|
+
}
|
|
6564
|
+
get(key) {
|
|
6565
|
+
return this.items[key] ? this.items[key] : null;
|
|
6566
|
+
}
|
|
6567
|
+
groupItems(items, path) {
|
|
6568
|
+
items.forEach((item) => {
|
|
6569
|
+
let key = get(item, path);
|
|
6570
|
+
// if object does not have property for grouping it will be grouped as 'other'
|
|
6571
|
+
if (key === undefined) {
|
|
6572
|
+
key = 'other';
|
|
6573
|
+
}
|
|
6574
|
+
this.items[key] = item;
|
|
6575
|
+
});
|
|
6576
|
+
}
|
|
6577
|
+
}
|
|
6578
|
+
|
|
6493
6579
|
var DepreciationGroupEnum;
|
|
6494
6580
|
(function (DepreciationGroupEnum) {
|
|
6495
6581
|
DepreciationGroupEnum[DepreciationGroupEnum["BUILDING_IMPROVEMENTS"] = 0] = "BUILDING_IMPROVEMENTS";
|
|
@@ -6642,6 +6728,16 @@ __decorate([
|
|
|
6642
6728
|
Type(() => User)
|
|
6643
6729
|
], EmployeeInvite.prototype, "employee", void 0);
|
|
6644
6730
|
|
|
6731
|
+
/**
|
|
6732
|
+
* any event happened in the app, which needs to be handled somehow (distributed to other part of the app)
|
|
6733
|
+
*/
|
|
6734
|
+
class AppEvent {
|
|
6735
|
+
constructor(type, payload) {
|
|
6736
|
+
this.type = type;
|
|
6737
|
+
this.payload = payload;
|
|
6738
|
+
}
|
|
6739
|
+
}
|
|
6740
|
+
|
|
6645
6741
|
var ExportFormatEnum;
|
|
6646
6742
|
(function (ExportFormatEnum) {
|
|
6647
6743
|
ExportFormatEnum["PDF"] = "PDF";
|
|
@@ -8113,9 +8209,9 @@ class ClientIncomeTypesService {
|
|
|
8113
8209
|
}));
|
|
8114
8210
|
}
|
|
8115
8211
|
}
|
|
8116
|
-
ClientIncomeTypesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8117
|
-
ClientIncomeTypesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8118
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8212
|
+
ClientIncomeTypesService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientIncomeTypesService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8213
|
+
ClientIncomeTypesService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientIncomeTypesService, providedIn: 'root' });
|
|
8214
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientIncomeTypesService, decorators: [{
|
|
8119
8215
|
type: Injectable,
|
|
8120
8216
|
args: [{
|
|
8121
8217
|
providedIn: 'root'
|
|
@@ -8216,9 +8312,9 @@ class PropertyService extends RestService {
|
|
|
8216
8312
|
return this.get().pipe(map((properties) => properties.filter((property) => property.isActive)));
|
|
8217
8313
|
}
|
|
8218
8314
|
}
|
|
8219
|
-
PropertyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8220
|
-
PropertyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8221
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8315
|
+
PropertyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8316
|
+
PropertyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyService, providedIn: 'root' });
|
|
8317
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyService, decorators: [{
|
|
8222
8318
|
type: Injectable,
|
|
8223
8319
|
args: [{
|
|
8224
8320
|
providedIn: 'root'
|
|
@@ -8305,9 +8401,9 @@ class IncomeSourceService extends RestService {
|
|
|
8305
8401
|
return this.incomeSourceTypeSubject.asObservable();
|
|
8306
8402
|
}
|
|
8307
8403
|
}
|
|
8308
|
-
IncomeSourceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8309
|
-
IncomeSourceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8310
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8404
|
+
IncomeSourceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8405
|
+
IncomeSourceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceService, providedIn: 'root' });
|
|
8406
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceService, decorators: [{
|
|
8311
8407
|
type: Injectable,
|
|
8312
8408
|
args: [{
|
|
8313
8409
|
providedIn: 'root'
|
|
@@ -8388,6 +8484,11 @@ class BankAccountService extends RestService {
|
|
|
8388
8484
|
return bankAccounts.filter((bankAccount) => bankAccount.isOwner(+localStorage.getItem('userId')));
|
|
8389
8485
|
}));
|
|
8390
8486
|
}
|
|
8487
|
+
getByConnection(connection) {
|
|
8488
|
+
return this.get().pipe(map((bankAccounts) => {
|
|
8489
|
+
return new BankAccountCollection(bankAccounts).filterBy('bankConnection.id', connection.id);
|
|
8490
|
+
}));
|
|
8491
|
+
}
|
|
8391
8492
|
/**
|
|
8392
8493
|
* Listen to EventDispatcherService events
|
|
8393
8494
|
*/
|
|
@@ -8401,9 +8502,9 @@ class BankAccountService extends RestService {
|
|
|
8401
8502
|
});
|
|
8402
8503
|
}
|
|
8403
8504
|
}
|
|
8404
|
-
BankAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8405
|
-
BankAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8406
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8505
|
+
BankAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8506
|
+
BankAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, providedIn: 'root' });
|
|
8507
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountService, decorators: [{
|
|
8407
8508
|
type: Injectable,
|
|
8408
8509
|
args: [{
|
|
8409
8510
|
providedIn: 'root'
|
|
@@ -8477,9 +8578,9 @@ class TransactionAllocationService extends RestService {
|
|
|
8477
8578
|
});
|
|
8478
8579
|
}
|
|
8479
8580
|
}
|
|
8480
|
-
TransactionAllocationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8481
|
-
TransactionAllocationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8482
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8581
|
+
TransactionAllocationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionAllocationService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8582
|
+
TransactionAllocationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionAllocationService, providedIn: 'root' });
|
|
8583
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionAllocationService, decorators: [{
|
|
8483
8584
|
type: Injectable,
|
|
8484
8585
|
args: [{
|
|
8485
8586
|
providedIn: 'root'
|
|
@@ -8509,9 +8610,9 @@ class VehicleClaimService extends RestService {
|
|
|
8509
8610
|
this.messageDeleted = MessagesEnum$1.VEHICLE_CLAIM_DELETED;
|
|
8510
8611
|
}
|
|
8511
8612
|
}
|
|
8512
|
-
VehicleClaimService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8513
|
-
VehicleClaimService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8514
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8613
|
+
VehicleClaimService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleClaimService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8614
|
+
VehicleClaimService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleClaimService, providedIn: 'root' });
|
|
8615
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleClaimService, decorators: [{
|
|
8515
8616
|
type: Injectable,
|
|
8516
8617
|
args: [{
|
|
8517
8618
|
providedIn: 'root'
|
|
@@ -8833,9 +8934,9 @@ class TransactionService extends RestService {
|
|
|
8833
8934
|
this.eventDispatcherService.on(AppEventTypeEnum.PROPERTY_SHARE_UPDATED).subscribe(() => this.resetCache());
|
|
8834
8935
|
}
|
|
8835
8936
|
}
|
|
8836
|
-
TransactionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8837
|
-
TransactionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8838
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
8937
|
+
TransactionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
8938
|
+
TransactionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionService, providedIn: 'root' });
|
|
8939
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionService, decorators: [{
|
|
8839
8940
|
type: Injectable,
|
|
8840
8941
|
args: [{
|
|
8841
8942
|
providedIn: 'root'
|
|
@@ -8967,9 +9068,9 @@ class AccountSetupService {
|
|
|
8967
9068
|
}));
|
|
8968
9069
|
}
|
|
8969
9070
|
}
|
|
8970
|
-
AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
8971
|
-
AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
8972
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9071
|
+
AccountSetupService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, deps: [{ token: ClientIncomeTypesService }, { token: PropertyService }, { token: IncomeSourceService }, { token: BankAccountService }, { token: TransactionAllocationService }, { token: VehicleClaimService }, { token: TransactionService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9072
|
+
AccountSetupService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, providedIn: 'root' });
|
|
9073
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AccountSetupService, decorators: [{
|
|
8973
9074
|
type: Injectable,
|
|
8974
9075
|
args: [{
|
|
8975
9076
|
providedIn: 'root'
|
|
@@ -8996,9 +9097,9 @@ class AddressService {
|
|
|
8996
9097
|
return this.countriesSubject.asObservable();
|
|
8997
9098
|
}
|
|
8998
9099
|
}
|
|
8999
|
-
AddressService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9000
|
-
AddressService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9001
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9100
|
+
AddressService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AddressService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9101
|
+
AddressService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AddressService, providedIn: 'root' });
|
|
9102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AddressService, decorators: [{
|
|
9002
9103
|
type: Injectable,
|
|
9003
9104
|
args: [{
|
|
9004
9105
|
providedIn: 'root'
|
|
@@ -9043,9 +9144,9 @@ class AssetsService {
|
|
|
9043
9144
|
return this.http.delete(`${this.environment.apiV2}/${asset.entityType}/${entityId}/${asset.type}/${asset.id}`);
|
|
9044
9145
|
}
|
|
9045
9146
|
}
|
|
9046
|
-
AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9047
|
-
AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9048
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9147
|
+
AssetsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, deps: [{ token: i1.HttpClient }, { token: UserSwitcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9148
|
+
AssetsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, providedIn: 'root' });
|
|
9149
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: AssetsService, decorators: [{
|
|
9049
9150
|
type: Injectable,
|
|
9050
9151
|
args: [{
|
|
9051
9152
|
providedIn: 'root'
|
|
@@ -9065,10 +9166,16 @@ class BankService extends RestService {
|
|
|
9065
9166
|
this.url = 'banks';
|
|
9066
9167
|
this.isHydra = true;
|
|
9067
9168
|
}
|
|
9169
|
+
get() {
|
|
9170
|
+
return super.get().pipe(map((banks) => {
|
|
9171
|
+
// exclude basiq banks without login fields (basiq may return broken banks without loginFields)
|
|
9172
|
+
return banks.filter((bank) => !bank.externalId || (bank.externalId && bank.loginFields));
|
|
9173
|
+
}));
|
|
9174
|
+
}
|
|
9068
9175
|
}
|
|
9069
|
-
BankService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9070
|
-
BankService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9071
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9176
|
+
BankService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
9177
|
+
BankService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, providedIn: 'root' });
|
|
9178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankService, decorators: [{
|
|
9072
9179
|
type: Injectable,
|
|
9073
9180
|
args: [{
|
|
9074
9181
|
providedIn: 'root'
|
|
@@ -9128,9 +9235,9 @@ class BankTransactionCalculationService {
|
|
|
9128
9235
|
return allocations.getByBankTransactionsIds(bankTransactions.debitTransactions.getIds()).amount;
|
|
9129
9236
|
}
|
|
9130
9237
|
}
|
|
9131
|
-
BankTransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9132
|
-
BankTransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9133
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9238
|
+
BankTransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9239
|
+
BankTransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, providedIn: 'root' });
|
|
9240
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionCalculationService, decorators: [{
|
|
9134
9241
|
type: Injectable,
|
|
9135
9242
|
args: [{
|
|
9136
9243
|
providedIn: 'root'
|
|
@@ -9155,9 +9262,9 @@ class BankAccountCalculationService {
|
|
|
9155
9262
|
return bankAccounts.currentBalance - this.getTaxTankBalance(bankAccounts.getLoanAccounts(), bankTransactions, allocations);
|
|
9156
9263
|
}
|
|
9157
9264
|
}
|
|
9158
|
-
BankAccountCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9159
|
-
BankAccountCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9160
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9265
|
+
BankAccountCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, deps: [{ token: BankTransactionCalculationService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9266
|
+
BankAccountCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, providedIn: 'root' });
|
|
9267
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankAccountCalculationService, decorators: [{
|
|
9161
9268
|
type: Injectable,
|
|
9162
9269
|
args: [{
|
|
9163
9270
|
providedIn: 'root'
|
|
@@ -9226,9 +9333,9 @@ class BankTransactionService extends RestService {
|
|
|
9226
9333
|
});
|
|
9227
9334
|
}
|
|
9228
9335
|
}
|
|
9229
|
-
BankTransactionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9230
|
-
BankTransactionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9231
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9336
|
+
BankTransactionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
9337
|
+
BankTransactionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, providedIn: 'root' });
|
|
9338
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BankTransactionService, decorators: [{
|
|
9232
9339
|
type: Injectable,
|
|
9233
9340
|
args: [{
|
|
9234
9341
|
providedIn: 'root'
|
|
@@ -9288,9 +9395,9 @@ class BorrowingExpenseService {
|
|
|
9288
9395
|
}));
|
|
9289
9396
|
}
|
|
9290
9397
|
}
|
|
9291
|
-
BorrowingExpenseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9292
|
-
BorrowingExpenseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9293
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9398
|
+
BorrowingExpenseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BorrowingExpenseService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9399
|
+
BorrowingExpenseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BorrowingExpenseService, providedIn: 'root' });
|
|
9400
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: BorrowingExpenseService, decorators: [{
|
|
9294
9401
|
type: Injectable,
|
|
9295
9402
|
args: [{
|
|
9296
9403
|
providedIn: 'root'
|
|
@@ -9368,9 +9475,9 @@ class ChartAccountsService {
|
|
|
9368
9475
|
}));
|
|
9369
9476
|
}
|
|
9370
9477
|
}
|
|
9371
|
-
ChartAccountsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9372
|
-
ChartAccountsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9373
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9478
|
+
ChartAccountsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9479
|
+
ChartAccountsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsService, providedIn: 'root' });
|
|
9480
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsService, decorators: [{
|
|
9374
9481
|
type: Injectable,
|
|
9375
9482
|
args: [{
|
|
9376
9483
|
providedIn: 'root'
|
|
@@ -9403,9 +9510,9 @@ class ChartAccountsDepreciationService extends RestService {
|
|
|
9403
9510
|
}));
|
|
9404
9511
|
}
|
|
9405
9512
|
}
|
|
9406
|
-
ChartAccountsDepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9407
|
-
ChartAccountsDepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9408
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9513
|
+
ChartAccountsDepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsDepreciationService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
9514
|
+
ChartAccountsDepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsDepreciationService, providedIn: 'root' });
|
|
9515
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChartAccountsDepreciationService, decorators: [{
|
|
9409
9516
|
type: Injectable,
|
|
9410
9517
|
args: [{
|
|
9411
9518
|
providedIn: 'root'
|
|
@@ -9443,9 +9550,9 @@ class SseService {
|
|
|
9443
9550
|
}));
|
|
9444
9551
|
}
|
|
9445
9552
|
}
|
|
9446
|
-
SseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9447
|
-
SseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9448
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9553
|
+
SseService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, deps: [{ token: i0.NgZone }, { token: JwtService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9554
|
+
SseService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, providedIn: 'root' });
|
|
9555
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SseService, decorators: [{
|
|
9449
9556
|
type: Injectable,
|
|
9450
9557
|
args: [{
|
|
9451
9558
|
providedIn: 'root'
|
|
@@ -9519,9 +9626,9 @@ class ChatService extends RestService {
|
|
|
9519
9626
|
});
|
|
9520
9627
|
}
|
|
9521
9628
|
}
|
|
9522
|
-
ChatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9523
|
-
ChatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9524
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9629
|
+
ChatService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }, { token: SseService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9630
|
+
ChatService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, providedIn: 'root' });
|
|
9631
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ChatService, decorators: [{
|
|
9525
9632
|
type: Injectable,
|
|
9526
9633
|
args: [{
|
|
9527
9634
|
providedIn: 'root'
|
|
@@ -9567,9 +9674,9 @@ class MessageService extends RestService {
|
|
|
9567
9674
|
});
|
|
9568
9675
|
}
|
|
9569
9676
|
}
|
|
9570
|
-
MessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9571
|
-
MessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9572
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9677
|
+
MessageService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }, { token: SseService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9678
|
+
MessageService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageService, providedIn: 'root' });
|
|
9679
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageService, decorators: [{
|
|
9573
9680
|
type: Injectable,
|
|
9574
9681
|
args: [{
|
|
9575
9682
|
providedIn: 'root'
|
|
@@ -9675,9 +9782,9 @@ class MessageDocumentService {
|
|
|
9675
9782
|
}));
|
|
9676
9783
|
}
|
|
9677
9784
|
}
|
|
9678
|
-
MessageDocumentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9679
|
-
MessageDocumentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9680
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9785
|
+
MessageDocumentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageDocumentService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9786
|
+
MessageDocumentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageDocumentService, providedIn: 'root' });
|
|
9787
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: MessageDocumentService, decorators: [{
|
|
9681
9788
|
type: Injectable,
|
|
9682
9789
|
args: [{
|
|
9683
9790
|
providedIn: 'root'
|
|
@@ -9770,9 +9877,9 @@ class ClientInviteService extends RestService {
|
|
|
9770
9877
|
}));
|
|
9771
9878
|
}
|
|
9772
9879
|
}
|
|
9773
|
-
ClientInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9774
|
-
ClientInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9775
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9880
|
+
ClientInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
9881
|
+
ClientInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, providedIn: 'root' });
|
|
9882
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientInviteService, decorators: [{
|
|
9776
9883
|
type: Injectable,
|
|
9777
9884
|
args: [{
|
|
9778
9885
|
providedIn: 'root'
|
|
@@ -9849,9 +9956,9 @@ class ClientMovementService extends RestService {
|
|
|
9849
9956
|
});
|
|
9850
9957
|
}
|
|
9851
9958
|
}
|
|
9852
|
-
ClientMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9853
|
-
ClientMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9854
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9959
|
+
ClientMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
9960
|
+
ClientMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, providedIn: 'root' });
|
|
9961
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientMovementService, decorators: [{
|
|
9855
9962
|
type: Injectable,
|
|
9856
9963
|
args: [{
|
|
9857
9964
|
providedIn: 'root'
|
|
@@ -9876,9 +9983,9 @@ class ClientPortfolioReportService {
|
|
|
9876
9983
|
}));
|
|
9877
9984
|
}
|
|
9878
9985
|
}
|
|
9879
|
-
ClientPortfolioReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9880
|
-
ClientPortfolioReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9881
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
9986
|
+
ClientPortfolioReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9987
|
+
ClientPortfolioReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, providedIn: 'root' });
|
|
9988
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ClientPortfolioReportService, decorators: [{
|
|
9882
9989
|
type: Injectable,
|
|
9883
9990
|
args: [{
|
|
9884
9991
|
providedIn: 'root'
|
|
@@ -9930,9 +10037,9 @@ class DepreciationCapitalProjectService {
|
|
|
9930
10037
|
}));
|
|
9931
10038
|
}
|
|
9932
10039
|
}
|
|
9933
|
-
DepreciationCapitalProjectService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
9934
|
-
DepreciationCapitalProjectService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
9935
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10040
|
+
DepreciationCapitalProjectService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationCapitalProjectService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10041
|
+
DepreciationCapitalProjectService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationCapitalProjectService, providedIn: 'root' });
|
|
10042
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationCapitalProjectService, decorators: [{
|
|
9936
10043
|
type: Injectable,
|
|
9937
10044
|
args: [{
|
|
9938
10045
|
providedIn: 'root'
|
|
@@ -10027,9 +10134,9 @@ class DepreciationService extends RestService {
|
|
|
10027
10134
|
});
|
|
10028
10135
|
}
|
|
10029
10136
|
}
|
|
10030
|
-
DepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10031
|
-
DepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10032
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10137
|
+
DepreciationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10138
|
+
DepreciationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, providedIn: 'root' });
|
|
10139
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DepreciationService, decorators: [{
|
|
10033
10140
|
type: Injectable,
|
|
10034
10141
|
args: [{
|
|
10035
10142
|
providedIn: 'root'
|
|
@@ -10095,9 +10202,9 @@ class DocumentFolderService extends RestService {
|
|
|
10095
10202
|
}));
|
|
10096
10203
|
}
|
|
10097
10204
|
}
|
|
10098
|
-
DocumentFolderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10099
|
-
DocumentFolderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10205
|
+
DocumentFolderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10206
|
+
DocumentFolderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, providedIn: 'root' });
|
|
10207
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: DocumentFolderService, decorators: [{
|
|
10101
10208
|
type: Injectable,
|
|
10102
10209
|
args: [{
|
|
10103
10210
|
providedIn: 'root'
|
|
@@ -10126,9 +10233,9 @@ class EmployeeService extends RestService {
|
|
|
10126
10233
|
}));
|
|
10127
10234
|
}
|
|
10128
10235
|
}
|
|
10129
|
-
EmployeeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10130
|
-
EmployeeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10131
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10236
|
+
EmployeeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10237
|
+
EmployeeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, providedIn: 'root' });
|
|
10238
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeService, decorators: [{
|
|
10132
10239
|
type: Injectable,
|
|
10133
10240
|
args: [{
|
|
10134
10241
|
providedIn: 'root'
|
|
@@ -10171,9 +10278,9 @@ class EmployeeInviteService extends RestService {
|
|
|
10171
10278
|
}));
|
|
10172
10279
|
}
|
|
10173
10280
|
}
|
|
10174
|
-
EmployeeInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10175
|
-
EmployeeInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10176
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10281
|
+
EmployeeInviteService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10282
|
+
EmployeeInviteService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, providedIn: 'root' });
|
|
10283
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EmployeeInviteService, decorators: [{
|
|
10177
10284
|
type: Injectable,
|
|
10178
10285
|
args: [{
|
|
10179
10286
|
providedIn: 'root'
|
|
@@ -10240,9 +10347,9 @@ class FirmService {
|
|
|
10240
10347
|
}));
|
|
10241
10348
|
}
|
|
10242
10349
|
}
|
|
10243
|
-
FirmService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10244
|
-
FirmService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10245
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10350
|
+
FirmService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10351
|
+
FirmService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, providedIn: 'root' });
|
|
10352
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FirmService, decorators: [{
|
|
10246
10353
|
type: Injectable,
|
|
10247
10354
|
args: [{
|
|
10248
10355
|
providedIn: 'root'
|
|
@@ -10270,9 +10377,9 @@ class ExportFormatterService {
|
|
|
10270
10377
|
}));
|
|
10271
10378
|
}
|
|
10272
10379
|
}
|
|
10273
|
-
ExportFormatterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10274
|
-
ExportFormatterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10275
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10380
|
+
ExportFormatterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, deps: [{ token: i1$1.CurrencyPipe }, { token: i1$1.DatePipe }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10381
|
+
ExportFormatterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, providedIn: 'root' });
|
|
10382
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ExportFormatterService, decorators: [{
|
|
10276
10383
|
type: Injectable,
|
|
10277
10384
|
args: [{
|
|
10278
10385
|
providedIn: 'root'
|
|
@@ -10293,9 +10400,9 @@ class HeaderTitleService {
|
|
|
10293
10400
|
}), filter((route) => route.outlet === 'primary'), mergeMap((route) => route.data));
|
|
10294
10401
|
}
|
|
10295
10402
|
}
|
|
10296
|
-
HeaderTitleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10297
|
-
HeaderTitleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10298
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10403
|
+
HeaderTitleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: HeaderTitleService, deps: [{ token: i1$2.Router }, { token: i1$2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10404
|
+
HeaderTitleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: HeaderTitleService, providedIn: 'root' });
|
|
10405
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: HeaderTitleService, decorators: [{
|
|
10299
10406
|
type: Injectable,
|
|
10300
10407
|
args: [{
|
|
10301
10408
|
providedIn: 'root'
|
|
@@ -10365,9 +10472,9 @@ class IncomeSourceForecastService extends RestService {
|
|
|
10365
10472
|
}).flat();
|
|
10366
10473
|
}
|
|
10367
10474
|
}
|
|
10368
|
-
IncomeSourceForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10369
|
-
IncomeSourceForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10370
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10475
|
+
IncomeSourceForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceForecastService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10476
|
+
IncomeSourceForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceForecastService, providedIn: 'root' });
|
|
10477
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IncomeSourceForecastService, decorators: [{
|
|
10371
10478
|
type: Injectable,
|
|
10372
10479
|
args: [{
|
|
10373
10480
|
providedIn: 'root'
|
|
@@ -10437,9 +10544,9 @@ class SalaryForecastService extends RestService {
|
|
|
10437
10544
|
}).flat();
|
|
10438
10545
|
}
|
|
10439
10546
|
}
|
|
10440
|
-
SalaryForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10441
|
-
SalaryForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10442
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10547
|
+
SalaryForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SalaryForecastService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10548
|
+
SalaryForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SalaryForecastService, providedIn: 'root' });
|
|
10549
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SalaryForecastService, decorators: [{
|
|
10443
10550
|
type: Injectable,
|
|
10444
10551
|
args: [{
|
|
10445
10552
|
providedIn: 'root'
|
|
@@ -10506,9 +10613,9 @@ class SoleForecastService extends RestService {
|
|
|
10506
10613
|
}).flat();
|
|
10507
10614
|
}
|
|
10508
10615
|
}
|
|
10509
|
-
SoleForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10510
|
-
SoleForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10511
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10616
|
+
SoleForecastService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SoleForecastService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10617
|
+
SoleForecastService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SoleForecastService, providedIn: 'root' });
|
|
10618
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SoleForecastService, decorators: [{
|
|
10512
10619
|
type: Injectable,
|
|
10513
10620
|
args: [{
|
|
10514
10621
|
providedIn: 'root'
|
|
@@ -10542,9 +10649,9 @@ class IntercomService {
|
|
|
10542
10649
|
window.Intercom('boot', connectionCredentials);
|
|
10543
10650
|
}
|
|
10544
10651
|
}
|
|
10545
|
-
IntercomService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10546
|
-
IntercomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10547
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10652
|
+
IntercomService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntercomService, deps: [{ token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10653
|
+
IntercomService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntercomService, providedIn: 'root' });
|
|
10654
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: IntercomService, decorators: [{
|
|
10548
10655
|
type: Injectable,
|
|
10549
10656
|
args: [{
|
|
10550
10657
|
providedIn: 'root'
|
|
@@ -10572,9 +10679,9 @@ class KompassifyService {
|
|
|
10572
10679
|
});
|
|
10573
10680
|
}
|
|
10574
10681
|
}
|
|
10575
|
-
KompassifyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10576
|
-
KompassifyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10577
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10682
|
+
KompassifyService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: KompassifyService, deps: [{ token: i1$2.Router }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10683
|
+
KompassifyService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: KompassifyService, providedIn: 'root' });
|
|
10684
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: KompassifyService, decorators: [{
|
|
10578
10685
|
type: Injectable,
|
|
10579
10686
|
args: [{
|
|
10580
10687
|
providedIn: 'root'
|
|
@@ -10698,9 +10805,9 @@ class LoanService extends RestService {
|
|
|
10698
10805
|
}));
|
|
10699
10806
|
}
|
|
10700
10807
|
}
|
|
10701
|
-
LoanService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10702
|
-
LoanService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10703
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10808
|
+
LoanService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LoanService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
10809
|
+
LoanService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LoanService, providedIn: 'root' });
|
|
10810
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: LoanService, decorators: [{
|
|
10704
10811
|
type: Injectable,
|
|
10705
10812
|
args: [{
|
|
10706
10813
|
providedIn: 'root'
|
|
@@ -10743,9 +10850,9 @@ class ServiceNotificationService extends RestService {
|
|
|
10743
10850
|
});
|
|
10744
10851
|
}
|
|
10745
10852
|
}
|
|
10746
|
-
ServiceNotificationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10747
|
-
ServiceNotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10748
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10853
|
+
ServiceNotificationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServiceNotificationService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }, { token: SseService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10854
|
+
ServiceNotificationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServiceNotificationService, providedIn: 'root' });
|
|
10855
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServiceNotificationService, decorators: [{
|
|
10749
10856
|
type: Injectable,
|
|
10750
10857
|
args: [{
|
|
10751
10858
|
providedIn: 'root'
|
|
@@ -10795,9 +10902,9 @@ class PdfFromDomElementService {
|
|
|
10795
10902
|
.then());
|
|
10796
10903
|
}
|
|
10797
10904
|
}
|
|
10798
|
-
PdfFromDomElementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10799
|
-
PdfFromDomElementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10800
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10905
|
+
PdfFromDomElementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDomElementService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10906
|
+
PdfFromDomElementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDomElementService, providedIn: 'root' });
|
|
10907
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDomElementService, decorators: [{
|
|
10801
10908
|
type: Injectable,
|
|
10802
10909
|
args: [{
|
|
10803
10910
|
providedIn: 'root'
|
|
@@ -10876,9 +10983,9 @@ class PdfFromTableService {
|
|
|
10876
10983
|
doc.addImage(logo, 'PNG', doc.internal.pageSize.width - FILE_SETTINGS.logo.positionX, FILE_SETTINGS.logo.positionY, FILE_SETTINGS.logo.width, FILE_SETTINGS.logo.height);
|
|
10877
10984
|
}
|
|
10878
10985
|
}
|
|
10879
|
-
PdfFromTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10880
|
-
PdfFromTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10881
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
10986
|
+
PdfFromTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromTableService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
10987
|
+
PdfFromTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromTableService, providedIn: 'root' });
|
|
10988
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromTableService, decorators: [{
|
|
10882
10989
|
type: Injectable,
|
|
10883
10990
|
args: [{
|
|
10884
10991
|
providedIn: 'root'
|
|
@@ -10911,9 +11018,9 @@ class PdfFromHtmlTableService extends PdfFromTableService {
|
|
|
10911
11018
|
return pdf;
|
|
10912
11019
|
}
|
|
10913
11020
|
}
|
|
10914
|
-
PdfFromHtmlTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10915
|
-
PdfFromHtmlTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10916
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11021
|
+
PdfFromHtmlTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromHtmlTableService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11022
|
+
PdfFromHtmlTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromHtmlTableService, providedIn: 'root' });
|
|
11023
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromHtmlTableService, decorators: [{
|
|
10917
11024
|
type: Injectable,
|
|
10918
11025
|
args: [{
|
|
10919
11026
|
providedIn: 'root'
|
|
@@ -10945,9 +11052,9 @@ class PdfFromDataTableService extends PdfFromTableService {
|
|
|
10945
11052
|
return pdf;
|
|
10946
11053
|
}
|
|
10947
11054
|
}
|
|
10948
|
-
PdfFromDataTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
10949
|
-
PdfFromDataTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
10950
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11055
|
+
PdfFromDataTableService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDataTableService, deps: [{ token: ExportFormatterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11056
|
+
PdfFromDataTableService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDataTableService, providedIn: 'root' });
|
|
11057
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PdfFromDataTableService, decorators: [{
|
|
10951
11058
|
type: Injectable,
|
|
10952
11059
|
args: [{
|
|
10953
11060
|
providedIn: 'root'
|
|
@@ -11004,9 +11111,9 @@ class PropertyTransactionReportService {
|
|
|
11004
11111
|
}));
|
|
11005
11112
|
}
|
|
11006
11113
|
}
|
|
11007
|
-
PropertyTransactionReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11008
|
-
PropertyTransactionReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11009
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11114
|
+
PropertyTransactionReportService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyTransactionReportService, deps: [{ token: PropertyService }, { token: TransactionService }, { token: DepreciationService }, { token: ChartAccountsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11115
|
+
PropertyTransactionReportService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyTransactionReportService, providedIn: 'root' });
|
|
11116
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyTransactionReportService, decorators: [{
|
|
11010
11117
|
type: Injectable,
|
|
11011
11118
|
args: [{
|
|
11012
11119
|
providedIn: 'root'
|
|
@@ -11120,10 +11227,41 @@ class PropertyCalculationService {
|
|
|
11120
11227
|
// Math abs is required for correct percentage calculation
|
|
11121
11228
|
return properties.purchasePrice - Math.abs(this.getLoanAmount(properties, bankAccounts, loans));
|
|
11122
11229
|
}
|
|
11230
|
+
/**
|
|
11231
|
+
* Get dictionary of badges for each property in collection
|
|
11232
|
+
*/
|
|
11233
|
+
getBadgesByProperty(properties, transactions, depreciations) {
|
|
11234
|
+
const badgesByProperty = new Dictionary([]);
|
|
11235
|
+
properties.toArray().forEach((property) => {
|
|
11236
|
+
badgesByProperty.add(property.id, this.getBadge(property, properties, transactions, depreciations));
|
|
11237
|
+
});
|
|
11238
|
+
return badgesByProperty;
|
|
11239
|
+
}
|
|
11240
|
+
/**
|
|
11241
|
+
* Get Badge for single property in collection
|
|
11242
|
+
*/
|
|
11243
|
+
getBadge(property, properties, transactions, depreciations) {
|
|
11244
|
+
// best performance properties could be only from active properties list
|
|
11245
|
+
const activeProperties = properties.getActiveProperties();
|
|
11246
|
+
const bestPerformanceGrowthProperty = activeProperties.getBestPerformanceGrowthProperty();
|
|
11247
|
+
const bestPerformanceTaxProperty = activeProperties.getBestPerformanceTaxProperty(transactions, depreciations);
|
|
11248
|
+
switch (true) {
|
|
11249
|
+
case !property.isActive:
|
|
11250
|
+
return new Badge('Inactive', BadgeColorEnum.GRAY);
|
|
11251
|
+
case property.id === bestPerformanceTaxProperty.id && property.id === bestPerformanceGrowthProperty.id:
|
|
11252
|
+
return new Badge('Best performance growth & tax', BadgeColorEnum.GOLD);
|
|
11253
|
+
case property.id === bestPerformanceTaxProperty.id:
|
|
11254
|
+
return new Badge('Best performance tax', BadgeColorEnum.GOLD);
|
|
11255
|
+
case property.id === bestPerformanceGrowthProperty.id:
|
|
11256
|
+
return new Badge('Best performance growth', BadgeColorEnum.GREEN);
|
|
11257
|
+
default:
|
|
11258
|
+
return new Badge('Monitoring performance');
|
|
11259
|
+
}
|
|
11260
|
+
}
|
|
11123
11261
|
}
|
|
11124
|
-
PropertyCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11125
|
-
PropertyCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11126
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11262
|
+
PropertyCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCalculationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11263
|
+
PropertyCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCalculationService, providedIn: 'root' });
|
|
11264
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCalculationService, decorators: [{
|
|
11127
11265
|
type: Injectable,
|
|
11128
11266
|
args: [{
|
|
11129
11267
|
providedIn: 'root'
|
|
@@ -11140,9 +11278,9 @@ class PropertyCategoryService extends RestService {
|
|
|
11140
11278
|
this.url = 'properties/categories';
|
|
11141
11279
|
}
|
|
11142
11280
|
}
|
|
11143
|
-
PropertyCategoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11144
|
-
PropertyCategoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11145
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11281
|
+
PropertyCategoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11282
|
+
PropertyCategoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryService, providedIn: 'root' });
|
|
11283
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryService, decorators: [{
|
|
11146
11284
|
type: Injectable,
|
|
11147
11285
|
args: [{
|
|
11148
11286
|
providedIn: 'root'
|
|
@@ -11194,9 +11332,9 @@ class PropertyDocumentService extends RestService {
|
|
|
11194
11332
|
});
|
|
11195
11333
|
}
|
|
11196
11334
|
}
|
|
11197
|
-
PropertyDocumentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11198
|
-
PropertyDocumentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11199
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11335
|
+
PropertyDocumentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyDocumentService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11336
|
+
PropertyDocumentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyDocumentService, providedIn: 'root' });
|
|
11337
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyDocumentService, decorators: [{
|
|
11200
11338
|
type: Injectable,
|
|
11201
11339
|
args: [{
|
|
11202
11340
|
providedIn: 'root'
|
|
@@ -11291,9 +11429,9 @@ class PropertyShareService extends RestService {
|
|
|
11291
11429
|
});
|
|
11292
11430
|
}
|
|
11293
11431
|
}
|
|
11294
|
-
PropertyShareService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11295
|
-
PropertyShareService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11296
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11432
|
+
PropertyShareService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11433
|
+
PropertyShareService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, providedIn: 'root' });
|
|
11434
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyShareService, decorators: [{
|
|
11297
11435
|
type: Injectable,
|
|
11298
11436
|
args: [{
|
|
11299
11437
|
providedIn: 'root'
|
|
@@ -11307,9 +11445,9 @@ class PropertySaleService extends RestService {
|
|
|
11307
11445
|
this.url = 'properties/sales';
|
|
11308
11446
|
}
|
|
11309
11447
|
}
|
|
11310
|
-
PropertySaleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11311
|
-
PropertySaleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11312
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11448
|
+
PropertySaleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertySaleService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11449
|
+
PropertySaleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertySaleService, providedIn: 'root' });
|
|
11450
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertySaleService, decorators: [{
|
|
11313
11451
|
type: Injectable,
|
|
11314
11452
|
args: [{
|
|
11315
11453
|
providedIn: 'root'
|
|
@@ -11342,9 +11480,9 @@ class EquityPositionChartService {
|
|
|
11342
11480
|
}));
|
|
11343
11481
|
}
|
|
11344
11482
|
}
|
|
11345
|
-
EquityPositionChartService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11346
|
-
EquityPositionChartService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11347
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11483
|
+
EquityPositionChartService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EquityPositionChartService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11484
|
+
EquityPositionChartService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EquityPositionChartService, providedIn: 'root' });
|
|
11485
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: EquityPositionChartService, decorators: [{
|
|
11348
11486
|
type: Injectable,
|
|
11349
11487
|
args: [{
|
|
11350
11488
|
providedIn: 'root'
|
|
@@ -11385,9 +11523,9 @@ class PropertyCategoryMovementService extends RestService {
|
|
|
11385
11523
|
}));
|
|
11386
11524
|
}
|
|
11387
11525
|
}
|
|
11388
|
-
PropertyCategoryMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11389
|
-
PropertyCategoryMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11390
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11526
|
+
PropertyCategoryMovementService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryMovementService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11527
|
+
PropertyCategoryMovementService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryMovementService, providedIn: 'root' });
|
|
11528
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: PropertyCategoryMovementService, decorators: [{
|
|
11391
11529
|
type: Injectable,
|
|
11392
11530
|
args: [{
|
|
11393
11531
|
providedIn: 'root'
|
|
@@ -11479,9 +11617,9 @@ class SubscriptionService {
|
|
|
11479
11617
|
});
|
|
11480
11618
|
}
|
|
11481
11619
|
}
|
|
11482
|
-
SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11483
|
-
SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11484
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11620
|
+
SubscriptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SubscriptionService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: SseService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11621
|
+
SubscriptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SubscriptionService, providedIn: 'root' });
|
|
11622
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SubscriptionService, decorators: [{
|
|
11485
11623
|
type: Injectable,
|
|
11486
11624
|
args: [{
|
|
11487
11625
|
providedIn: 'root'
|
|
@@ -11502,9 +11640,9 @@ class ServicePriceService extends RestService {
|
|
|
11502
11640
|
this.isHydra = true;
|
|
11503
11641
|
}
|
|
11504
11642
|
}
|
|
11505
|
-
ServicePriceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11506
|
-
ServicePriceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11507
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11643
|
+
ServicePriceService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServicePriceService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11644
|
+
ServicePriceService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServicePriceService, providedIn: 'root' });
|
|
11645
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: ServicePriceService, decorators: [{
|
|
11508
11646
|
type: Injectable,
|
|
11509
11647
|
args: [{
|
|
11510
11648
|
providedIn: 'root'
|
|
@@ -11586,9 +11724,9 @@ class TaxReviewService extends RestService {
|
|
|
11586
11724
|
});
|
|
11587
11725
|
}
|
|
11588
11726
|
}
|
|
11589
|
-
TaxReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11590
|
-
TaxReviewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11591
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11727
|
+
TaxReviewService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11728
|
+
TaxReviewService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewService, providedIn: 'root' });
|
|
11729
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewService, decorators: [{
|
|
11592
11730
|
type: Injectable,
|
|
11593
11731
|
args: [{
|
|
11594
11732
|
providedIn: 'root'
|
|
@@ -11620,9 +11758,9 @@ class TaxReviewHistoryService extends RestService {
|
|
|
11620
11758
|
});
|
|
11621
11759
|
}
|
|
11622
11760
|
}
|
|
11623
|
-
TaxReviewHistoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11624
|
-
TaxReviewHistoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11625
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11761
|
+
TaxReviewHistoryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewHistoryService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
11762
|
+
TaxReviewHistoryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewHistoryService, providedIn: 'root' });
|
|
11763
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxReviewHistoryService, decorators: [{
|
|
11626
11764
|
type: Injectable,
|
|
11627
11765
|
args: [{
|
|
11628
11766
|
providedIn: 'root'
|
|
@@ -11679,9 +11817,9 @@ class TaxSummaryService {
|
|
|
11679
11817
|
});
|
|
11680
11818
|
}
|
|
11681
11819
|
}
|
|
11682
|
-
TaxSummaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11683
|
-
TaxSummaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11684
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11820
|
+
TaxSummaryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxSummaryService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11821
|
+
TaxSummaryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxSummaryService, providedIn: 'root' });
|
|
11822
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxSummaryService, decorators: [{
|
|
11685
11823
|
type: Injectable,
|
|
11686
11824
|
args: [{
|
|
11687
11825
|
providedIn: 'root'
|
|
@@ -11726,9 +11864,9 @@ class TransactionCalculationService {
|
|
|
11726
11864
|
}));
|
|
11727
11865
|
}
|
|
11728
11866
|
}
|
|
11729
|
-
TransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11730
|
-
TransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11731
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11867
|
+
TransactionCalculationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionCalculationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11868
|
+
TransactionCalculationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionCalculationService, providedIn: 'root' });
|
|
11869
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TransactionCalculationService, decorators: [{
|
|
11732
11870
|
type: Injectable,
|
|
11733
11871
|
args: [{
|
|
11734
11872
|
providedIn: 'root'
|
|
@@ -11761,9 +11899,9 @@ class OccupationService {
|
|
|
11761
11899
|
return this.occupationsSubject.asObservable();
|
|
11762
11900
|
}
|
|
11763
11901
|
}
|
|
11764
|
-
OccupationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11765
|
-
OccupationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11766
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
11902
|
+
OccupationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: OccupationService, deps: [{ token: i1.HttpClient }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
11903
|
+
OccupationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: OccupationService, providedIn: 'root' });
|
|
11904
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: OccupationService, decorators: [{
|
|
11767
11905
|
type: Injectable,
|
|
11768
11906
|
args: [{
|
|
11769
11907
|
providedIn: 'root'
|
|
@@ -11907,9 +12045,9 @@ class UserService {
|
|
|
11907
12045
|
this.eventDispatcherService.on(AppEventTypeEnum.SERVICE_SUBSCRIPTION_UPDATED).subscribe(() => this.resetCache());
|
|
11908
12046
|
}
|
|
11909
12047
|
}
|
|
11910
|
-
UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11911
|
-
UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11912
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12048
|
+
UserService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserService, deps: [{ token: i1.HttpClient }, { token: JwtService }, { token: EventDispatcherService }, { token: SseService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12049
|
+
UserService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserService, providedIn: 'root' });
|
|
12050
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserService, decorators: [{
|
|
11913
12051
|
type: Injectable,
|
|
11914
12052
|
args: [{
|
|
11915
12053
|
providedIn: 'root'
|
|
@@ -11953,9 +12091,9 @@ class UserEventSettingService extends RestService {
|
|
|
11953
12091
|
}));
|
|
11954
12092
|
}
|
|
11955
12093
|
}
|
|
11956
|
-
UserEventSettingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11957
|
-
UserEventSettingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11958
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12094
|
+
UserEventSettingService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventSettingService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
12095
|
+
UserEventSettingService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventSettingService, providedIn: 'root' });
|
|
12096
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventSettingService, decorators: [{
|
|
11959
12097
|
type: Injectable,
|
|
11960
12098
|
args: [{
|
|
11961
12099
|
providedIn: 'root'
|
|
@@ -11970,9 +12108,9 @@ class UserEventTypeService extends RestService {
|
|
|
11970
12108
|
this.isHydra = true;
|
|
11971
12109
|
}
|
|
11972
12110
|
}
|
|
11973
|
-
UserEventTypeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
11974
|
-
UserEventTypeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
11975
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12111
|
+
UserEventTypeService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventTypeService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
12112
|
+
UserEventTypeService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventTypeService, providedIn: 'root' });
|
|
12113
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: UserEventTypeService, decorators: [{
|
|
11976
12114
|
type: Injectable,
|
|
11977
12115
|
args: [{
|
|
11978
12116
|
providedIn: 'root'
|
|
@@ -12035,9 +12173,9 @@ class VehicleService extends RestService {
|
|
|
12035
12173
|
});
|
|
12036
12174
|
}
|
|
12037
12175
|
}
|
|
12038
|
-
VehicleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
12039
|
-
VehicleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
12040
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12176
|
+
VehicleService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
12177
|
+
VehicleService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleService, providedIn: 'root' });
|
|
12178
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleService, decorators: [{
|
|
12041
12179
|
type: Injectable,
|
|
12042
12180
|
args: [{
|
|
12043
12181
|
providedIn: 'root'
|
|
@@ -12080,9 +12218,9 @@ class VehicleLogbookService {
|
|
|
12080
12218
|
}));
|
|
12081
12219
|
}
|
|
12082
12220
|
}
|
|
12083
|
-
VehicleLogbookService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
12084
|
-
VehicleLogbookService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
12085
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12221
|
+
VehicleLogbookService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleLogbookService, deps: [{ token: i1.HttpClient }, { token: EventDispatcherService }, { token: 'environment' }, { token: ToastService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12222
|
+
VehicleLogbookService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleLogbookService, providedIn: 'root' });
|
|
12223
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: VehicleLogbookService, decorators: [{
|
|
12086
12224
|
type: Injectable,
|
|
12087
12225
|
args: [{
|
|
12088
12226
|
providedIn: 'root'
|
|
@@ -12126,9 +12264,9 @@ class XlsxService {
|
|
|
12126
12264
|
return xlsx.write(workbook, { bookType: 'xlsx', type: 'array' });
|
|
12127
12265
|
}
|
|
12128
12266
|
}
|
|
12129
|
-
XlsxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
12130
|
-
XlsxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
12131
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12267
|
+
XlsxService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: XlsxService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12268
|
+
XlsxService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: XlsxService, providedIn: 'root' });
|
|
12269
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: XlsxService, decorators: [{
|
|
12132
12270
|
type: Injectable,
|
|
12133
12271
|
args: [{
|
|
12134
12272
|
providedIn: 'root'
|
|
@@ -12143,9 +12281,9 @@ class TaxExemptionService extends RestService {
|
|
|
12143
12281
|
this.isHydra = true;
|
|
12144
12282
|
}
|
|
12145
12283
|
}
|
|
12146
|
-
TaxExemptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
12147
|
-
TaxExemptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
12148
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12284
|
+
TaxExemptionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxExemptionService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
12285
|
+
TaxExemptionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxExemptionService, providedIn: 'root' });
|
|
12286
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: TaxExemptionService, decorators: [{
|
|
12149
12287
|
type: Injectable,
|
|
12150
12288
|
args: [{
|
|
12151
12289
|
providedIn: 'root'
|
|
@@ -12222,9 +12360,9 @@ FacebookService.authOptions = {
|
|
|
12222
12360
|
auth_type: 'rerequest',
|
|
12223
12361
|
return_scopes: true
|
|
12224
12362
|
};
|
|
12225
|
-
FacebookService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.
|
|
12226
|
-
FacebookService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.
|
|
12227
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.
|
|
12363
|
+
FacebookService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FacebookService, deps: [{ token: i1.HttpClient }, { token: ToastService }, { token: JwtService }, { token: i1$2.Router }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12364
|
+
FacebookService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FacebookService, providedIn: 'root' });
|
|
12365
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: FacebookService, decorators: [{
|
|
12228
12366
|
type: Injectable,
|
|
12229
12367
|
args: [{
|
|
12230
12368
|
providedIn: 'root'
|
|
@@ -12308,9 +12446,10 @@ function taxReviewFilterPredicate(data, filter) {
|
|
|
12308
12446
|
* Abstract form class
|
|
12309
12447
|
*/
|
|
12310
12448
|
class AbstractForm extends FormGroup {
|
|
12311
|
-
constructor(controls, model
|
|
12449
|
+
constructor(controls, model, validatorOrOpts, asyncValidator) {
|
|
12312
12450
|
super(controls, validatorOrOpts, asyncValidator);
|
|
12313
|
-
this.
|
|
12451
|
+
this.onSubmit = new EventEmitter();
|
|
12452
|
+
this.model = model || this.createModelInstance();
|
|
12314
12453
|
this.modelClass = this.model.constructor;
|
|
12315
12454
|
}
|
|
12316
12455
|
/**
|
|
@@ -12324,10 +12463,18 @@ class AbstractForm extends FormGroup {
|
|
|
12324
12463
|
if (!this.valid) {
|
|
12325
12464
|
return null;
|
|
12326
12465
|
}
|
|
12327
|
-
|
|
12466
|
+
const model = this.createModelInstance(Object.assign({}, this.model, this.value, data));
|
|
12467
|
+
this.onSubmit.emit(model);
|
|
12468
|
+
return model;
|
|
12469
|
+
}
|
|
12470
|
+
createModelInstance(data = {}) {
|
|
12471
|
+
return plainToClass(this.modelClass, data);
|
|
12328
12472
|
}
|
|
12329
12473
|
}
|
|
12330
12474
|
|
|
12475
|
+
/**
|
|
12476
|
+
* Form with bank account loan details
|
|
12477
|
+
*/
|
|
12331
12478
|
class BankAccountLoanForm extends AbstractForm {
|
|
12332
12479
|
constructor(loan = plainToClass(Loan, {})) {
|
|
12333
12480
|
super({
|
|
@@ -12344,89 +12491,79 @@ class BankAccountLoanForm extends AbstractForm {
|
|
|
12344
12491
|
}
|
|
12345
12492
|
}
|
|
12346
12493
|
|
|
12347
|
-
|
|
12348
|
-
|
|
12349
|
-
|
|
12350
|
-
property: new FormControl(bankAccountProperty.property, Validators.required),
|
|
12351
|
-
percent: new FormControl({ value: bankAccountProperty.percent, disabled: !isLoan }, Validators.required)
|
|
12352
|
-
}, bankAccountProperty);
|
|
12353
|
-
}
|
|
12354
|
-
}
|
|
12355
|
-
|
|
12494
|
+
/**
|
|
12495
|
+
* Form array with bank account properties
|
|
12496
|
+
*/
|
|
12356
12497
|
class BankAccountPropertiesForm extends FormArray {
|
|
12357
|
-
constructor(
|
|
12358
|
-
super(bankAccountProperties.
|
|
12359
|
-
|
|
12360
|
-
|
|
12361
|
-
|
|
12362
|
-
|
|
12498
|
+
constructor(bankAccountProperties = [plainToClass(BankAccountProperty, {})]) {
|
|
12499
|
+
super(bankAccountProperties.map((bankAccountProperty) => {
|
|
12500
|
+
return new FormGroup({
|
|
12501
|
+
property: new FormControl(bankAccountProperty.property, Validators.required),
|
|
12502
|
+
percent: new FormControl(bankAccountProperty.percent, Validators.required)
|
|
12503
|
+
});
|
|
12504
|
+
}));
|
|
12363
12505
|
}
|
|
12364
12506
|
add() {
|
|
12365
|
-
this.push(new
|
|
12507
|
+
this.push(new FormGroup({
|
|
12508
|
+
property: new FormControl(null, Validators.required),
|
|
12509
|
+
percent: new FormControl({
|
|
12510
|
+
value: 100,
|
|
12511
|
+
disabled: !this.at(0).contains('percent')
|
|
12512
|
+
}, Validators.required)
|
|
12513
|
+
}));
|
|
12514
|
+
}
|
|
12515
|
+
enablePercent() {
|
|
12516
|
+
this.controls.forEach((propertyFormGroup) => {
|
|
12517
|
+
propertyFormGroup.get('percent').enable();
|
|
12518
|
+
});
|
|
12519
|
+
}
|
|
12520
|
+
disablePercent() {
|
|
12521
|
+
this.controls.forEach((propertyFormGroup) => {
|
|
12522
|
+
propertyFormGroup.get('percent').disable();
|
|
12523
|
+
});
|
|
12366
12524
|
}
|
|
12367
12525
|
}
|
|
12368
12526
|
|
|
12369
12527
|
/**
|
|
12370
|
-
* Form
|
|
12371
|
-
*
|
|
12528
|
+
* Form is using for import basiq bank accounts.
|
|
12529
|
+
* Basiq accounts has all data except tank type, properties and loan partially
|
|
12372
12530
|
*/
|
|
12373
|
-
class
|
|
12374
|
-
constructor(bankAccount
|
|
12531
|
+
class BankAccountImportForm extends AbstractForm {
|
|
12532
|
+
constructor(bankAccount) {
|
|
12375
12533
|
super({
|
|
12376
12534
|
tankType: new FormControl(bankAccount.tankType, Validators.required),
|
|
12377
12535
|
}, bankAccount);
|
|
12378
|
-
this.bankAccount = bankAccount;
|
|
12379
12536
|
if (bankAccount.isLoan()) {
|
|
12380
12537
|
this.addControl('loan', new BankAccountLoanForm(bankAccount.loan));
|
|
12381
12538
|
}
|
|
12539
|
+
// basiq account import form should be disabled (unchecked) by default
|
|
12540
|
+
this.disable();
|
|
12382
12541
|
this.listenEvents();
|
|
12383
12542
|
}
|
|
12384
12543
|
listenEvents() {
|
|
12385
12544
|
this.listenTankTypeChanges();
|
|
12386
|
-
this.listenValueChanges();
|
|
12387
|
-
}
|
|
12388
|
-
get properties() {
|
|
12389
|
-
return this.get('bankAccountProperties');
|
|
12390
|
-
}
|
|
12391
|
-
isLoan() {
|
|
12392
|
-
return BankAccount.loanTypes.includes(this.bankAccount.type);
|
|
12393
|
-
}
|
|
12394
|
-
isPropertyTank() {
|
|
12395
|
-
return this.get('tankType').value === TankTypeEnum.PROPERTY;
|
|
12396
|
-
}
|
|
12397
|
-
confirm() {
|
|
12398
|
-
this.markAllAsTouched();
|
|
12399
|
-
if (this.invalid) {
|
|
12400
|
-
return;
|
|
12401
|
-
}
|
|
12402
|
-
this.isConfirmed = true;
|
|
12403
|
-
}
|
|
12404
|
-
addPropertiesArray() {
|
|
12405
|
-
const control = new BankAccountPropertiesForm(this.isLoan(), this.bankAccount.bankAccountProperties);
|
|
12406
|
-
// Default form behaviour is: if we add enabled form control to disabled form group then this form group enable.
|
|
12407
|
-
// Disable form control before add to avoid form group enabling.
|
|
12408
|
-
if (this.disabled) {
|
|
12409
|
-
control.disable();
|
|
12410
|
-
}
|
|
12411
|
-
this.addControl('bankAccountProperties', control);
|
|
12412
12545
|
}
|
|
12413
12546
|
/**
|
|
12414
|
-
* Add/Remove properties form
|
|
12547
|
+
* Add/Remove bank account properties form depends on selected tank type
|
|
12415
12548
|
*/
|
|
12416
12549
|
listenTankTypeChanges() {
|
|
12417
|
-
this.get('tankType').valueChanges.subscribe(() => {
|
|
12418
|
-
|
|
12419
|
-
|
|
12420
|
-
|
|
12421
|
-
|
|
12422
|
-
|
|
12423
|
-
|
|
12550
|
+
this.get('tankType').valueChanges.subscribe((tankType) => {
|
|
12551
|
+
if (tankType === TankTypeEnum.PROPERTY) {
|
|
12552
|
+
this.addControl('bankAccountProperties', new BankAccountPropertiesForm());
|
|
12553
|
+
// property percent allowed only for loan bank accounts
|
|
12554
|
+
if (!this.contains('loan')) {
|
|
12555
|
+
this.get('bankAccountProperties').disablePercent();
|
|
12556
|
+
}
|
|
12557
|
+
}
|
|
12558
|
+
else {
|
|
12559
|
+
this.removeControl('bankAccountProperties');
|
|
12560
|
+
}
|
|
12424
12561
|
});
|
|
12425
12562
|
}
|
|
12426
12563
|
}
|
|
12427
12564
|
|
|
12428
12565
|
/**
|
|
12429
|
-
* Form is using for manual bank account creation (not Basiq)
|
|
12566
|
+
* Form is using for single manual bank account creation (not Basiq)
|
|
12430
12567
|
*/
|
|
12431
12568
|
class BankAccountAddManualForm extends AbstractForm {
|
|
12432
12569
|
constructor(connection) {
|
|
@@ -12435,7 +12572,61 @@ class BankAccountAddManualForm extends AbstractForm {
|
|
|
12435
12572
|
accountName: new FormControl(null, Validators.required),
|
|
12436
12573
|
currentBalance: new FormControl(null, Validators.required),
|
|
12437
12574
|
accountNumber: new FormControl(null, [Validators.required, Validators.pattern(BankAccountAddManualForm.accountNumberPattern)]),
|
|
12438
|
-
|
|
12575
|
+
tankType: new FormControl(null, Validators.required),
|
|
12576
|
+
});
|
|
12577
|
+
this.connection = connection;
|
|
12578
|
+
this.listenEvents();
|
|
12579
|
+
}
|
|
12580
|
+
listenEvents() {
|
|
12581
|
+
this.listenTypeChanges();
|
|
12582
|
+
this.listenTankTypeChanges();
|
|
12583
|
+
}
|
|
12584
|
+
/**
|
|
12585
|
+
* Add/Remove loan form depends on selected bank account type
|
|
12586
|
+
*/
|
|
12587
|
+
listenTypeChanges() {
|
|
12588
|
+
this.get('type').valueChanges.subscribe((type) => {
|
|
12589
|
+
if (BankAccount.loanTypes.includes(type)) {
|
|
12590
|
+
this.addControl('loan', new BankAccountLoanForm());
|
|
12591
|
+
// property percent allowed only for loan bank accounts
|
|
12592
|
+
if (this.contains('bankAccountProperties')) {
|
|
12593
|
+
this.get('bankAccountProperties').enablePercent();
|
|
12594
|
+
}
|
|
12595
|
+
}
|
|
12596
|
+
else {
|
|
12597
|
+
this.removeControl('loan');
|
|
12598
|
+
// property percent allowed only for loan bank accounts
|
|
12599
|
+
if (this.contains('bankAccountProperties')) {
|
|
12600
|
+
this.get('bankAccountProperties').disablePercent();
|
|
12601
|
+
}
|
|
12602
|
+
}
|
|
12603
|
+
});
|
|
12604
|
+
}
|
|
12605
|
+
/**
|
|
12606
|
+
* Add/Remove bank account properties form depends on selected tank type
|
|
12607
|
+
*/
|
|
12608
|
+
listenTankTypeChanges() {
|
|
12609
|
+
this.get('tankType').valueChanges.subscribe((tankType) => {
|
|
12610
|
+
if (tankType === TankTypeEnum.PROPERTY) {
|
|
12611
|
+
this.addControl('bankAccountProperties', new BankAccountPropertiesForm());
|
|
12612
|
+
// property percent allowed only for loan bank accounts
|
|
12613
|
+
if (this.contains('loan')) {
|
|
12614
|
+
this.get('bankAccountProperties').enablePercent();
|
|
12615
|
+
}
|
|
12616
|
+
else {
|
|
12617
|
+
this.get('bankAccountProperties').disablePercent();
|
|
12618
|
+
}
|
|
12619
|
+
}
|
|
12620
|
+
else {
|
|
12621
|
+
this.removeControl('bankAccountProperties');
|
|
12622
|
+
}
|
|
12623
|
+
});
|
|
12624
|
+
}
|
|
12625
|
+
/**
|
|
12626
|
+
* Attach bank connection to manual bank account
|
|
12627
|
+
*/
|
|
12628
|
+
submit() {
|
|
12629
|
+
return super.submit({ bankConnection: this.connection });
|
|
12439
12630
|
}
|
|
12440
12631
|
}
|
|
12441
12632
|
BankAccountAddManualForm.accountNumberPattern = '^[0-9]{6}[ ]{1}[0-9]{1,}$';
|
|
@@ -12462,16 +12653,60 @@ function dateRangeValidator(dateStart, dateEnd) {
|
|
|
12462
12653
|
};
|
|
12463
12654
|
}
|
|
12464
12655
|
|
|
12465
|
-
|
|
12466
|
-
|
|
12656
|
+
/**
|
|
12657
|
+
* Validator check if at least one control in formArray is enabled
|
|
12658
|
+
*/
|
|
12659
|
+
function atLeastOneEnabledValidator(arrayName) {
|
|
12660
|
+
return (formGroup) => {
|
|
12661
|
+
return !!formGroup.get(arrayName).controls.find((control) => control.enabled)
|
|
12662
|
+
? null
|
|
12663
|
+
: { arrayControlsDisabled: true };
|
|
12664
|
+
};
|
|
12665
|
+
}
|
|
12666
|
+
|
|
12667
|
+
/**
|
|
12668
|
+
* Form for import multiple basiq bank accounts
|
|
12669
|
+
*/
|
|
12670
|
+
class BankAccountsImportForm extends AbstractForm {
|
|
12671
|
+
constructor(bankAccounts) {
|
|
12467
12672
|
super({
|
|
12468
|
-
migrateFrom: new FormControl(
|
|
12469
|
-
migrateTo: new FormControl(
|
|
12673
|
+
migrateFrom: new FormControl(BankAccountsImportForm.minDate, [Validators.required, dateRangeValidator(BankAccountsImportForm.minDate, BankAccountsImportForm.maxDate)]),
|
|
12674
|
+
migrateTo: new FormControl(BankAccountsImportForm.maxDate, [Validators.required, dateRangeValidator(BankAccountsImportForm.minDate, BankAccountsImportForm.maxDate)]),
|
|
12675
|
+
bankAccounts: new FormArray(bankAccounts.map((bankAccount) => new BankAccountImportForm(bankAccount)))
|
|
12676
|
+
}, [], {
|
|
12677
|
+
validators: [atLeastOneEnabledValidator('bankAccounts')]
|
|
12470
12678
|
});
|
|
12679
|
+
this.bankAccounts = bankAccounts;
|
|
12680
|
+
}
|
|
12681
|
+
submit() {
|
|
12682
|
+
this.submitted = true;
|
|
12683
|
+
if (this.invalid) {
|
|
12684
|
+
return null;
|
|
12685
|
+
}
|
|
12686
|
+
const bankAccounts = [];
|
|
12687
|
+
// form is valid when all selected bank accounts forms are valid
|
|
12688
|
+
for (let bankAccountImportForm of this.get('bankAccounts').controls) {
|
|
12689
|
+
// skip disabled forms
|
|
12690
|
+
if (bankAccountImportForm.disabled) {
|
|
12691
|
+
continue;
|
|
12692
|
+
}
|
|
12693
|
+
const bankAccount = bankAccountImportForm.submit({
|
|
12694
|
+
migrateFrom: this.value.migrateFrom,
|
|
12695
|
+
migrateTo: this.value.migrateTo
|
|
12696
|
+
});
|
|
12697
|
+
if (!bankAccount) {
|
|
12698
|
+
return null;
|
|
12699
|
+
}
|
|
12700
|
+
bankAccounts.push(bankAccount);
|
|
12701
|
+
}
|
|
12702
|
+
if (!bankAccounts.length) {
|
|
12703
|
+
return null;
|
|
12704
|
+
}
|
|
12705
|
+
return bankAccounts;
|
|
12471
12706
|
}
|
|
12472
12707
|
}
|
|
12473
|
-
|
|
12474
|
-
|
|
12708
|
+
BankAccountsImportForm.minDate = new FinancialYear().prevFinYear.startDate;
|
|
12709
|
+
BankAccountsImportForm.maxDate = new Date();
|
|
12475
12710
|
|
|
12476
12711
|
/**
|
|
12477
12712
|
* Form with basiq bank login fields.
|
|
@@ -12501,15 +12736,11 @@ function atLeastOneCheckedValidator() {
|
|
|
12501
12736
|
|
|
12502
12737
|
/**
|
|
12503
12738
|
* Validation function for autocomplete fields. Checks that the user should select a value from a list rather than type in input field
|
|
12739
|
+
* @TODO Alex: create class AppValidators with static methods and move there all custom validators (line Angular Validators)
|
|
12504
12740
|
*/
|
|
12505
|
-
function
|
|
12741
|
+
function autocompleteValidator() {
|
|
12506
12742
|
return (control) => {
|
|
12507
|
-
|
|
12508
|
-
return { notFromList: true };
|
|
12509
|
-
}
|
|
12510
|
-
else {
|
|
12511
|
-
return null;
|
|
12512
|
-
}
|
|
12743
|
+
return (!control.value || (typeof control.value === 'object')) ? null : { notFromList: true };
|
|
12513
12744
|
};
|
|
12514
12745
|
}
|
|
12515
12746
|
|
|
@@ -12550,21 +12781,6 @@ function passwordMatchValidator(newPassControlName, confirmPassControlName) {
|
|
|
12550
12781
|
};
|
|
12551
12782
|
}
|
|
12552
12783
|
|
|
12553
|
-
/**
|
|
12554
|
-
* Validation function, that checks that the user should select a value from a list rather than type in input field
|
|
12555
|
-
*/
|
|
12556
|
-
function requireSelectValidator() {
|
|
12557
|
-
return (control) => {
|
|
12558
|
-
const selection = control.value;
|
|
12559
|
-
if (typeof selection === 'string' && !!selection) {
|
|
12560
|
-
return { notFromList: true };
|
|
12561
|
-
}
|
|
12562
|
-
else {
|
|
12563
|
-
return null;
|
|
12564
|
-
}
|
|
12565
|
-
};
|
|
12566
|
-
}
|
|
12567
|
-
|
|
12568
12784
|
class ClientIncomeTypesForm extends AbstractForm {
|
|
12569
12785
|
constructor(clientIncomeTypes) {
|
|
12570
12786
|
super({
|
|
@@ -12587,12 +12803,13 @@ class LoginForm extends AbstractForm {
|
|
|
12587
12803
|
}
|
|
12588
12804
|
}
|
|
12589
12805
|
|
|
12806
|
+
// @TODO Alex: Create a model and handle request fields via class-transformer
|
|
12590
12807
|
class PasswordForm extends AbstractForm {
|
|
12591
12808
|
constructor() {
|
|
12592
12809
|
super({
|
|
12593
12810
|
password: new FormControl(null, [Validators.required, passwordValidator()]),
|
|
12594
12811
|
confirm: new FormControl(null, Validators.required),
|
|
12595
|
-
}, {}, passwordMatchValidator('password', 'confirm'));
|
|
12812
|
+
}, { password: null, confirm: null }, passwordMatchValidator('password', 'confirm'));
|
|
12596
12813
|
}
|
|
12597
12814
|
}
|
|
12598
12815
|
|
|
@@ -12607,18 +12824,12 @@ class RegisterClientForm extends AbstractForm {
|
|
|
12607
12824
|
referenceCode: new FormControl(referenceCode)
|
|
12608
12825
|
});
|
|
12609
12826
|
}
|
|
12610
|
-
submit() {
|
|
12827
|
+
submit(data = {}) {
|
|
12828
|
+
return super.submit({ password: this.get('password').submit().password });
|
|
12611
12829
|
const formValue = super.submit();
|
|
12612
12830
|
if (!formValue) {
|
|
12613
12831
|
return null;
|
|
12614
12832
|
}
|
|
12615
|
-
return {
|
|
12616
|
-
firstName: this.value.firstName,
|
|
12617
|
-
lastName: this.value.lastName,
|
|
12618
|
-
email: this.value.email,
|
|
12619
|
-
password: this.value.password.password,
|
|
12620
|
-
referenceCode: this.value.referenceCode
|
|
12621
|
-
};
|
|
12622
12833
|
}
|
|
12623
12834
|
}
|
|
12624
12835
|
|
|
@@ -12633,8 +12844,12 @@ class RegisterFirmForm extends AbstractForm {
|
|
|
12633
12844
|
}, plainToClass(Firm, {}));
|
|
12634
12845
|
this.firmType = firmType;
|
|
12635
12846
|
}
|
|
12847
|
+
submit(data = {}) {
|
|
12848
|
+
return super.submit({ owner: this.get('owner').submit() });
|
|
12849
|
+
}
|
|
12636
12850
|
}
|
|
12637
12851
|
|
|
12852
|
+
// @TODO Alex: Create a model and handle request fields via class-transformer
|
|
12638
12853
|
class ResetPasswordForm extends AbstractForm {
|
|
12639
12854
|
constructor() {
|
|
12640
12855
|
super({
|
|
@@ -12880,7 +13095,7 @@ class MyTaxEmployeeShareSchemesForm extends AbstractForm {
|
|
|
12880
13095
|
class MyTaxIncomeStatementsForm extends AbstractForm {
|
|
12881
13096
|
constructor(incomeStatements, user) {
|
|
12882
13097
|
super({
|
|
12883
|
-
occupation: new FormControl(user.clientDetails.occupation, [Validators.required,
|
|
13098
|
+
occupation: new FormControl(user.clientDetails.occupation, [Validators.required, autocompleteValidator()]),
|
|
12884
13099
|
allowanceTotalAmount: new FormControl({
|
|
12885
13100
|
value: incomeStatements.allowanceTotalAmount,
|
|
12886
13101
|
disabled: true
|
|
@@ -13119,5 +13334,5 @@ class MyTaxRentForm extends AbstractForm {
|
|
|
13119
13334
|
* Generated bundle index. Do not edit.
|
|
13120
13335
|
*/
|
|
13121
13336
|
|
|
13122
|
-
export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupService, Address, AddressService, AddressTypeEnum, AlphabetColorsEnum, AppEvent, AppEventTypeEnum, AssetEntityTypeEnum, AssetTypeEnum, AssetsService, AuthService, BANK_ACCOUNT_TYPES, Bank, BankAccount, BankAccountAddManualForm, BankAccountCalculationService, BankAccountChartData, BankAccountCollection,
|
|
13337
|
+
export { AbstractForm, AbstractModel, AccountSetupItem, AccountSetupItemCollection, AccountSetupService, Address, AddressService, AddressTypeEnum, AlphabetColorsEnum, AppEvent, AppEventTypeEnum, AssetEntityTypeEnum, AssetTypeEnum, AssetsService, AuthService, BANK_ACCOUNT_TYPES, Badge, BadgeColorEnum, Bank, BankAccount, BankAccountAddManualForm, BankAccountCalculationService, BankAccountChartData, BankAccountCollection, BankAccountImportForm, BankAccountLoanForm, BankAccountPropertiesForm, BankAccountProperty, BankAccountService, BankAccountStatusEnum, BankAccountTypeEnum, BankAccountsImportForm, BankConnection, BankConnectionService, BankConnectionStatusEnum, BankLoginData, BankLoginForm, BankService, BankTransaction, BankTransactionCalculationService, BankTransactionChartData, BankTransactionCollection, BankTransactionService, BankTransactionSummaryFieldsEnum, BankTransactionTypeEnum, BasiqConfig, BasiqJob, BasiqService, BasiqToken, BorrowingExpense, BorrowingExpenseLoan, BorrowingExpenseService, CAPITAL_COSTS_ITEMS, CHART_ACCOUNTS_CATEGORIES, CalculationFormItem, CalculationFormTypeEnum, ChartAccounts, ChartAccountsCategoryEnum, ChartAccountsDepreciation, ChartAccountsDepreciationService, ChartAccountsEtpEnum, ChartAccountsHeading, ChartAccountsHeadingListEnum, ChartAccountsHeadingTaxDeductibleEnum, ChartAccountsHeadingTaxableEnum, ChartAccountsHeadingVehicleListEnum, ChartAccountsListEnum, ChartAccountsMetadata, ChartAccountsMetadataListEnum, ChartAccountsMetadataTypeEnum, ChartAccountsService, ChartAccountsTaxLabelsEnum, ChartAccountsTypeEnum, ChartAccountsValue, ChartData, ChartSerie, Chat, ChatService, ChatStatusEnum, ChatViewTypeEnum, ClientCollection, ClientDetails, ClientDetailsMedicareExemptionEnum, ClientDetailsWorkDepreciationCalculationEnum, ClientDetailsWorkingHolidayMakerEnum, ClientIncomeTypes, ClientIncomeTypesForm, ClientIncomeTypesService, ClientInvite, ClientInviteService, ClientInviteStatusEnum, ClientInviteTypeEnum, ClientMovement, ClientMovementCollection, ClientMovementService, ClientPortfolioChartData, ClientPortfolioReport, ClientPortfolioReportCollection, ClientPortfolioReportService, Collection, CollectionDictionary, CorelogicService, CorelogicSuggestion, Country, DEDUCTION_CATEGORIES, DEFAULT_VEHICLE_EXPENSE, DEPRECIATION_GROUPS, DOCUMENT_FILE_TYPES, DeductionClothingTypeEnum, DeductionSelfEducationTypeEnum, Depreciation, DepreciationCalculationEnum, DepreciationCalculationPercentEnum, DepreciationCapitalProject, DepreciationCapitalProjectService, DepreciationCollection, DepreciationForecast, DepreciationForecastCollection, DepreciationGroup, DepreciationGroupEnum, DepreciationGroupItem, DepreciationLvpAssetTypeEnum, DepreciationLvpReportItem, DepreciationLvpReportItemCollection, DepreciationReceipt, DepreciationReportItem, DepreciationReportItemCollection, DepreciationService, DepreciationTypeEnum, DepreciationWriteOffAmountEnum, Dictionary, Document, DocumentApiUrlPrefixEnum, DocumentFolder, DocumentFolderService, ENDPOINTS, EmployeeCollection, EmployeeDetails, EmployeeInvite, EmployeeInviteService, EmployeeService, Endpoint, EquityPositionChartService, EventDispatcherService, ExportDataTable, ExportFormatEnum, ExportFormatterService, ExportableCollection, FacebookService, FinancialYear, Firm, FirmService, FirmTypeEnum, HeaderTitleService, IconsFileEnum, IncomeAmountTypeEnum, IncomePosition, IncomeSource, IncomeSourceChartData, IncomeSourceCollection, IncomeSourceForecast, IncomeSourceForecastService, IncomeSourceService, IncomeSourceType, IncomeSourceTypeEnum, IncomeSourceTypeListOtherEnum, IncomeSourceTypeListSoleEnum, IncomeSourceTypeListWorkEnum, InterceptorsModule, IntercomService, InviteStatusEnum, JwtService, KompassifyService, Loan, LoanBankTypeEnum, LoanCollection, LoanFrequencyEnum, LoanInterestTypeEnum, LoanMaxNumberOfPaymentsEnum, LoanPayment, LoanPaymentCollection, LoanPayout, LoanPayoutTypeEnum, LoanRepaymentFrequencyEnum, LoanRepaymentTypeEnum, LoanService, LoanTypeEnum, LoanVehicleTypeEnum, LogbookPeriod, LoginForm, MODULE_URL_LIST, MONTHS, Message, MessageCollection, MessageDocument, MessageDocumentCollection, MessageDocumentService, MessageService, MonthNameShortEnum, MonthNumberEnum, MyAccountHistory, MyAccountHistoryInitiatedByEnum, MyAccountHistoryStatusEnum, MyAccountHistoryTypeEnum, MyTaxBusinessOrLosses, MyTaxBusinessOrLossesForm, MyTaxDeductions, MyTaxDeductionsForm, MyTaxDividends, MyTaxDividendsForm, MyTaxEmployeeShareSchemes, MyTaxEmployeeShareSchemesForm, MyTaxIncomeStatements, MyTaxIncomeStatementsForm, MyTaxIncomeTests, MyTaxIncomeTestsForm, MyTaxInterest, MyTaxInterestForm, MyTaxLosses, MyTaxLossesForm, MyTaxMedicareForm, MyTaxOffsets, MyTaxOffsetsForm, MyTaxOtherIncome, MyTaxOtherIncomeForm, MyTaxPartnershipsAndTrusts, MyTaxPartnershipsAndTrustsForm, MyTaxRent, MyTaxRentForm, Notification, Occupation, OccupationService, PASSWORD_REGEXPS, PasswordForm, PdfFromDataTableService, PdfFromDomElementService, PdfFromHtmlTableService, PdfOrientationEnum, PdfSettings, Phone, PhoneTypeEnum, PreloaderService, Property, PropertyCalculationService, PropertyCategory, PropertyCategoryListEnum, PropertyCategoryMovement, PropertyCategoryMovementService, PropertyCategoryService, PropertyCollection, PropertyDepreciationCalculationEnum, PropertyDocument, PropertyDocumentService, PropertyEquityChartData, PropertyEquityChartItem, PropertyForecast, PropertyReportItem, PropertyReportItemCollection, PropertyReportItemDepreciationCollection, PropertyReportItemTransaction, PropertyReportItemTransactionCollection, PropertySale, PropertySaleService, PropertySaleTaxExemptionMetadata, PropertyService, PropertyShare, PropertyShareAccessEnum, PropertyShareService, PropertyShareStatusEnum, PropertySubscription, PropertyTransactionReportService, PropertyValuation, RegisterClientForm, RegisterFirmForm, RegistrationInvite, RegistrationInviteStatusEnum, ReportItem, ReportItemCollection, ReportItemDetails, ResetPasswordForm, SUBSCRIPTION_DESCRIPTION, SUBSCRIPTION_TITLE, SalaryForecast, SalaryForecastFrequencyEnum, SalaryForecastService, ServiceNotificationService, ServiceNotificationStatusEnum, ServiceNotificationTypeEnum, ServicePayment, ServicePaymentStatusEnum, ServicePrice, ServicePriceRecurringIntervalEnum, ServicePriceService, ServicePriceTypeEnum, ServiceProduct, ServiceProductIdEnum, ServiceProductStatusEnum, ServiceSubscription, ServiceSubscriptionCollection, ServiceSubscriptionItem, ServiceSubscriptionStatusEnum, ShareFilterOptionsEnum, SoleForecast, SoleForecastService, SpareDocumentSpareTypeEnum, SseService, SubscriptionService, SubscriptionTypeEnum, TAX_RETURN_CATEGORIES, TYPE_LOAN, TankTypeEnum, TaxCalculationMedicareExemptionEnum, TaxCalculationTypeEnum, TaxExemption, TaxExemptionEnum, TaxExemptionMetadata, TaxExemptionMetadataEnum, TaxExemptionService, TaxReturnCategoryListEnum, TaxReturnCategorySectionEnum, TaxReview, TaxReviewCollection, TaxReviewHistoryService, TaxReviewService, TaxReviewStatusEnum, TaxSummary, TaxSummaryListEnum, TaxSummarySection, TaxSummarySectionEnum, TaxSummaryService, TaxSummaryTaxSummaryEnum, TaxSummaryTypeEnum, TicketFeedbackEnum, TicketStatusEnum, TicketTypesEnum, Toast, ToastService, ToastTypeEnum, Transaction, TransactionAllocation, TransactionAllocationCollection, TransactionAllocationService, TransactionBase, TransactionCalculationService, TransactionCategoryEnum, TransactionCollection, TransactionMetadata, TransactionOperationEnum, TransactionReceipt, TransactionService, TransactionSourceEnum, TransactionTypeEnum, TtCoreModule, USER_ROLES, USER_WORK_POSITION, User, UserEventSetting, UserEventSettingCollection, UserEventSettingFieldEnum, UserEventSettingService, UserEventStatusEnum, UserEventType, UserEventTypeCategory, UserEventTypeClientTypeEnum, UserEventTypeEmployeeTypeEnum, UserEventTypeFrequencyEnum, UserEventTypeService, UserEventTypeUserTypeEnum, UserMedicareExemptionEnum, UserRolesEnum, UserService, UserStatusEnum, UserSwitcherService, UserTitleEnum, UserToRegister, UserWorkDepreciationCalculationEnum, UserWorkingHolidayMakerEnum, Vehicle, VehicleClaim, VehicleClaimForm, VehicleClaimMethodEnum, VehicleClaimService, VehicleCollection, VehicleExpense, VehicleExpenseCollection, VehicleForm, VehicleLogbook, VehicleLogbookCollection, VehicleLogbookPurposeEnum, VehicleLogbookService, VehicleService, WORK_TANK_LOGBOOK_PURPOSE_OPTIONS, XlsxService, atLeastOneCheckedValidator, atoLinks, autocompleteValidator, cloneDeep, compare, compareMatOptions, createDate, displayMatOptions, enumToList, getDocIcon, passwordMatchValidator, passwordValidator, replace, roundTo, sort, sortDeep, taxReviewFilterPredicate };
|
|
13123
13338
|
//# sourceMappingURL=taxtank-core.js.map
|