taxtank-core 0.20.1 → 0.21.0
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 +754 -617
- package/bundles/taxtank-core.umd.js.map +1 -1
- package/esm2015/lib/collections/collection.js +6 -3
- 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/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/bank/bank.js +7 -2
- package/esm2015/lib/models/dictionary/dictionary.js +35 -0
- 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 +3 -3
- 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 +2 -2
- package/fesm2015/taxtank-core.js +705 -562
- package/fesm2015/taxtank-core.js.map +1 -1
- package/lib/collections/collection.d.ts +2 -1
- 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/models/bank/bank.d.ts +1 -0
- package/lib/models/dictionary/dictionary.d.ts +12 -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/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 +1 -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
|
@@ -16,6 +16,7 @@ export declare class Collection<Model extends AbstractModel> implements Iterable
|
|
|
16
16
|
get first(): Model;
|
|
17
17
|
get last(): Model;
|
|
18
18
|
getIds(): number[];
|
|
19
|
+
mapBy(path: string): any[];
|
|
19
20
|
sortBy(field?: string, isDesc?: boolean): this;
|
|
20
21
|
/**
|
|
21
22
|
* Get total sum of items by field
|
|
@@ -32,5 +33,5 @@ export declare class Collection<Model extends AbstractModel> implements Iterable
|
|
|
32
33
|
push(...items: Model[]): this;
|
|
33
34
|
replaceBy(path: string, value: any, item: Model): this;
|
|
34
35
|
remove(items: Model[]): this;
|
|
35
|
-
removeBy(path: string,
|
|
36
|
+
removeBy(path: string, values: any): this;
|
|
36
37
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare enum BankPopularEnum {
|
|
2
|
+
BANKWEST = "Bank of Western Australia trading as BankWest",
|
|
3
|
+
ANZ = "Australia and New Zealand Banking Group Limited",
|
|
4
|
+
CBA = "Commonwealth Bank Australia",
|
|
5
|
+
WESTPAC = "Westpac Banking Corporation",
|
|
6
|
+
BENDIGO = "Bendigo and Adelaide Bank Limited",
|
|
7
|
+
ING_DIRECT = "ING Bank (Australia) Limited (trading as ING Direct)",
|
|
8
|
+
ST_GEORGE = "St. George Bank (a subsidiary of Westpac)",
|
|
9
|
+
SUNCORP = "Suncorp-Metway Limited",
|
|
10
|
+
CITIBANK = "Citibank",
|
|
11
|
+
BOQ = "Bank of Queensland Limited"
|
|
12
|
+
}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import { AbstractControl, AbstractControlOptions, AsyncValidatorFn, FormGroup, ValidatorFn } from '@angular/forms';
|
|
2
|
-
import { Type } from '@angular/core';
|
|
2
|
+
import { EventEmitter, Type } from '@angular/core';
|
|
3
3
|
/**
|
|
4
4
|
* Abstract form class
|
|
5
5
|
*/
|
|
6
6
|
export declare abstract class AbstractForm<Model> extends FormGroup {
|
|
7
7
|
protected modelClass: Type<Model>;
|
|
8
|
-
model: Model
|
|
8
|
+
model: Model;
|
|
9
9
|
submitted: boolean;
|
|
10
|
+
onSubmit: EventEmitter<Model>;
|
|
10
11
|
protected constructor(controls: {
|
|
11
12
|
[key: string]: AbstractControl;
|
|
12
|
-
}, model?: Model
|
|
13
|
+
}, model?: Model, validatorOrOpts?: ValidatorFn | ValidatorFn[] | AbstractControlOptions | null, asyncValidator?: AsyncValidatorFn | AsyncValidatorFn[] | null);
|
|
13
14
|
/**
|
|
14
15
|
* Check validation and return a new instance of generic model.
|
|
15
16
|
* Merge form value to initial object
|
|
16
17
|
* @param data Additional data object which be merged to form value
|
|
17
18
|
*/
|
|
18
19
|
submit(data?: object): Model;
|
|
20
|
+
private createModelInstance;
|
|
19
21
|
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AbstractForm } from '../../abstract.form';
|
|
2
|
+
import { BankAccount } from '../../../models/bank/bank-account';
|
|
3
|
+
import { BankConnection } from '../../../models/bank/bank-connection';
|
|
4
|
+
import { IEventListener } from '../../../interfaces/event-listener.interface';
|
|
5
|
+
/**
|
|
6
|
+
* Form is using for single manual bank account creation (not Basiq)
|
|
7
|
+
*/
|
|
8
|
+
export declare class BankAccountAddManualForm extends AbstractForm<BankAccount> implements IEventListener {
|
|
9
|
+
private connection;
|
|
10
|
+
static accountNumberPattern: string;
|
|
11
|
+
constructor(connection: BankConnection);
|
|
12
|
+
listenEvents(): void;
|
|
13
|
+
/**
|
|
14
|
+
* Add/Remove loan form depends on selected bank account type
|
|
15
|
+
*/
|
|
16
|
+
private listenTypeChanges;
|
|
17
|
+
/**
|
|
18
|
+
* Add/Remove bank account properties form depends on selected tank type
|
|
19
|
+
*/
|
|
20
|
+
private listenTankTypeChanges;
|
|
21
|
+
/**
|
|
22
|
+
* Attach bank connection to manual bank account
|
|
23
|
+
*/
|
|
24
|
+
submit(): BankAccount;
|
|
25
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { AbstractForm } from '../../abstract.form';
|
|
2
|
+
import { BankAccount } from '../../../models/bank/bank-account';
|
|
3
|
+
import { IEventListener } from '../../../interfaces/event-listener.interface';
|
|
4
|
+
/**
|
|
5
|
+
* Form is using for import basiq bank accounts.
|
|
6
|
+
* Basiq accounts has all data except tank type, properties and loan partially
|
|
7
|
+
*/
|
|
8
|
+
export declare class BankAccountImportForm extends AbstractForm<BankAccount> implements IEventListener {
|
|
9
|
+
constructor(bankAccount: BankAccount);
|
|
10
|
+
listenEvents(): void;
|
|
11
|
+
/**
|
|
12
|
+
* Add/Remove bank account properties form depends on selected tank type
|
|
13
|
+
*/
|
|
14
|
+
private listenTankTypeChanges;
|
|
15
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { FormArray } from '@angular/forms';
|
|
2
|
+
import { BankAccountProperty } from '../../../models/bank/bank-account-property';
|
|
3
|
+
/**
|
|
4
|
+
* Form array with bank account properties
|
|
5
|
+
*/
|
|
6
|
+
export declare class BankAccountPropertiesForm extends FormArray {
|
|
7
|
+
constructor(bankAccountProperties?: BankAccountProperty[]);
|
|
8
|
+
add(): void;
|
|
9
|
+
enablePercent(): void;
|
|
10
|
+
disablePercent(): void;
|
|
11
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BankAccount } from '../../../models/bank/bank-account';
|
|
2
|
+
import { AbstractForm } from '../../abstract.form';
|
|
3
|
+
/**
|
|
4
|
+
* Form for import multiple basiq bank accounts
|
|
5
|
+
*/
|
|
6
|
+
export declare class BankAccountsImportForm extends AbstractForm<BankAccount[]> {
|
|
7
|
+
protected bankAccounts: BankAccount[];
|
|
8
|
+
static minDate: Date;
|
|
9
|
+
static maxDate: Date;
|
|
10
|
+
constructor(bankAccounts: BankAccount[]);
|
|
11
|
+
submit(): BankAccount[];
|
|
12
|
+
}
|
package/lib/forms/index.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
export * from './abstract.form';
|
|
2
|
-
export * from './bank/bank-account.form';
|
|
3
|
-
export * from './bank/bank-account-loan.form';
|
|
4
|
-
export * from './bank/bank-account-add-manual.form';
|
|
5
|
-
export * from './bank/bank-account-
|
|
6
|
-
export * from './bank/bank-account-
|
|
7
|
-
export * from './bank/bank-account-properties.form';
|
|
2
|
+
export * from './bank/bank-account/bank-account-import.form';
|
|
3
|
+
export * from './bank/bank-account/bank-account-loan.form';
|
|
4
|
+
export * from './bank/bank-account/bank-account-add-manual.form';
|
|
5
|
+
export * from './bank/bank-account/bank-account-properties.form';
|
|
6
|
+
export * from './bank/bank-account/bank-accounts-import.form';
|
|
8
7
|
export * from './bank/bank-login.form';
|
|
9
8
|
export * from './client/client-income-types.form';
|
|
10
9
|
export * from './login/login.form';
|
|
@@ -2,6 +2,7 @@ import { Bank as BankBase } from '../../db/Models/bank/bank';
|
|
|
2
2
|
import { Photoable } from '../../interfaces/photoable';
|
|
3
3
|
export declare class Bank extends BankBase implements Photoable {
|
|
4
4
|
logo: string;
|
|
5
|
+
isPopular: boolean;
|
|
5
6
|
getInitials(): string;
|
|
6
7
|
getPhoto(): string;
|
|
7
8
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* List of objects grouped by passed property
|
|
3
|
+
*/
|
|
4
|
+
export declare class Dictionary<Model> {
|
|
5
|
+
items: {
|
|
6
|
+
[key: string]: Model;
|
|
7
|
+
};
|
|
8
|
+
constructor(items: Model[], path?: string);
|
|
9
|
+
add(key: string | number, value: Model): void;
|
|
10
|
+
get(key: string | number): Model;
|
|
11
|
+
private groupItems;
|
|
12
|
+
}
|
|
@@ -3,6 +3,8 @@ import { BankAccount as BankAccountBase } from '../../../../db/Models/bank/bank-
|
|
|
3
3
|
import { RestService } from '../../rest/rest.service';
|
|
4
4
|
import { BankAccount } from '../../../../models/bank/bank-account';
|
|
5
5
|
import { IEventListener } from '../../../../interfaces/event-listener.interface';
|
|
6
|
+
import { BankConnection } from '../../../../models/bank/bank-connection';
|
|
7
|
+
import { BankAccountCollection } from '../../../../collections/bank-account.collection';
|
|
6
8
|
import * as i0 from "@angular/core";
|
|
7
9
|
/**
|
|
8
10
|
* Service that handling user's bank accounts logic
|
|
@@ -34,6 +36,7 @@ export declare class BankAccountService extends RestService<BankAccountBase, Ban
|
|
|
34
36
|
*/
|
|
35
37
|
updateCurrentBalance(bankAccount: BankAccount): Observable<BankAccount>;
|
|
36
38
|
getOwn(): Observable<BankAccount[]>;
|
|
39
|
+
getByConnection(connection: BankConnection): Observable<BankAccountCollection>;
|
|
37
40
|
/**
|
|
38
41
|
* Listen to EventDispatcherService events
|
|
39
42
|
*/
|
|
@@ -14,14 +14,6 @@ export declare class BankConnectionService extends RestService<BankConnectionBas
|
|
|
14
14
|
listenEvents(): void;
|
|
15
15
|
add(bankConnection: BankConnection): Observable<BankConnection>;
|
|
16
16
|
listenToAddedBankAccounts(): void;
|
|
17
|
-
/**
|
|
18
|
-
* When user log in to bank, basiq create a job. We create a bank connection with based on this job
|
|
19
|
-
*/
|
|
20
|
-
listenBasiqJobCreated(): void;
|
|
21
|
-
/**
|
|
22
|
-
* When basiq connection disconnected we create a basiq job and update this connection
|
|
23
|
-
*/
|
|
24
|
-
listenConnectionUpdated(): void;
|
|
25
17
|
/**
|
|
26
18
|
* Update cache when basiq login failed to get actual connections statuses
|
|
27
19
|
*/
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Bank as BankBase } from '../../../db/Models/bank/bank';
|
|
2
2
|
import { Bank } from '../../../models/bank/bank';
|
|
3
3
|
import { RestService } from '../rest/rest.service';
|
|
4
|
+
import { Observable } from 'rxjs';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
6
|
/**
|
|
6
7
|
* Service that handling banks logic
|
|
@@ -9,6 +10,7 @@ export declare class BankService extends RestService<BankBase, Bank> {
|
|
|
9
10
|
modelClass: typeof Bank;
|
|
10
11
|
url: string;
|
|
11
12
|
isHydra: boolean;
|
|
13
|
+
get(): Observable<Bank[]>;
|
|
12
14
|
static ɵfac: i0.ɵɵFactoryDeclaration<BankService, never>;
|
|
13
15
|
static ɵprov: i0.ɵɵInjectableDeclaration<BankService>;
|
|
14
16
|
}
|
|
@@ -9,6 +9,7 @@ import { EventDispatcherService } from '../../../event/event-dispatcher.service'
|
|
|
9
9
|
import { BankConnectionService } from '../bank-connection/bank-connection.service';
|
|
10
10
|
import { ToastService } from '../../../toast/toast.service';
|
|
11
11
|
import { BankLoginData } from '../../../../models/bank/bank-login-data';
|
|
12
|
+
import { BankAccountCollection } from '../../../../collections/bank-account.collection';
|
|
12
13
|
import * as i0 from "@angular/core";
|
|
13
14
|
/**
|
|
14
15
|
* basiq is a middleman between bank and user
|
|
@@ -29,13 +30,21 @@ export declare class BasiqService extends RestService<BankAccountBase, BankAccou
|
|
|
29
30
|
*/
|
|
30
31
|
listenEvents(): void;
|
|
31
32
|
/**
|
|
32
|
-
* Create
|
|
33
|
+
* Create a new Bank connection based on Basiq job.
|
|
34
|
+
* Here we have nested requests because we need to get a job id before we create a bank connection.
|
|
35
|
+
* There is no way to use event dispatcher because we expect some errors from bank-connections API, but in components
|
|
36
|
+
* we interact with basiq service.
|
|
33
37
|
*/
|
|
34
|
-
createConnection(
|
|
38
|
+
createConnection(loginData: BankLoginData, userId: string): Observable<BankConnection>;
|
|
35
39
|
/**
|
|
36
40
|
* Update disconnected bank connection
|
|
41
|
+
* Here we have nested requests because we need to get a job id before we create a bank connection.
|
|
42
|
+
* There is no way to use event dispatcher because we expect some errors from bank-connections API, but in components
|
|
43
|
+
* we interact with basiq service.
|
|
37
44
|
*/
|
|
38
|
-
updateConnection(data:
|
|
45
|
+
updateConnection(data: BankLoginData, userId: string, connection: BankConnection): Observable<BankConnection>;
|
|
46
|
+
getByConnection(connection: BankConnection): Observable<BankAccountCollection>;
|
|
47
|
+
getNotImportedByConnection(savedAccounts: BankAccountCollection, connection: BankConnection): Observable<BankAccountCollection>;
|
|
39
48
|
/**
|
|
40
49
|
* listen to notifications to update basiq accounts list
|
|
41
50
|
*/
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ValidatorFn } from '@angular/forms';
|
|
2
2
|
/**
|
|
3
3
|
* Validation function for autocomplete fields. Checks that the user should select a value from a list rather than type in input field
|
|
4
|
+
* @TODO Alex: create class AppValidators with static methods and move there all custom validators (line Angular Validators)
|
|
4
5
|
*/
|
|
5
|
-
export declare function
|
|
6
|
+
export declare function autocompleteValidator(): ValidatorFn;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -7,7 +7,6 @@ export * from './lib/tt-core.module';
|
|
|
7
7
|
*/
|
|
8
8
|
export * from './lib/collections/collection';
|
|
9
9
|
export * from './lib/collections/account-setup-item.collection';
|
|
10
|
-
export * from './lib/collections/bank.collection';
|
|
11
10
|
export * from './lib/collections/bank-account.collection';
|
|
12
11
|
export * from './lib/collections/bank-transaction.collection';
|
|
13
12
|
export * from './lib/collections/client.collection';
|
|
@@ -183,6 +182,7 @@ export * from './lib/models/depreciation/depreciation-group';
|
|
|
183
182
|
export * from './lib/models/depreciation/depreciation-group-item';
|
|
184
183
|
export * from './lib/models/depreciation/depreciation-groups.const';
|
|
185
184
|
export * from './lib/models/depreciation/depreciation-receipt';
|
|
185
|
+
export * from './lib/models/dictionary/dictionary';
|
|
186
186
|
export * from './lib/models/document/document';
|
|
187
187
|
export * from './lib/models/document/document-api-url-prefix.enum';
|
|
188
188
|
export * from './lib/models/document/document-file-types.const';
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { Collection } from './collection';
|
|
2
|
-
export class BankCollection extends Collection {
|
|
3
|
-
constructor(banks) {
|
|
4
|
-
super(banks);
|
|
5
|
-
this.sortByPopularity();
|
|
6
|
-
}
|
|
7
|
-
sortByPopularity() {
|
|
8
|
-
this.items.sort((bank1, bank2) => {
|
|
9
|
-
// Banks already sorted on backend by name, so we just need to up top-10 banks
|
|
10
|
-
return (BankCollection.tobBanksIds.includes(bank1.id) && !BankCollection.tobBanksIds.includes(bank2.id)) ? -1 : 1;
|
|
11
|
-
});
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
BankCollection.tobBanksIds = [124, 13, 134, 172, 126, 142, 135, 137, 138, 128];
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay5jb2xsZWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL2NvbGxlY3Rpb25zL2JhbmsuY29sbGVjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRzFDLE1BQU0sT0FBTyxjQUFlLFNBQVEsVUFBZ0I7SUFHbEQsWUFBWSxLQUFhO1FBQ3ZCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNiLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFRCxnQkFBZ0I7UUFDZCxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQVcsRUFBRSxLQUFXLEVBQVUsRUFBRTtZQUNuRCw4RUFBOEU7WUFDOUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFaTSwwQkFBVyxHQUFhLENBQUMsR0FBRyxFQUFFLEVBQUUsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2xsZWN0aW9uIH0gZnJvbSAnLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7IEJhbmsgfSBmcm9tICcuLi9tb2RlbHMvYmFuay9iYW5rJztcblxuZXhwb3J0IGNsYXNzIEJhbmtDb2xsZWN0aW9uIGV4dGVuZHMgQ29sbGVjdGlvbjxCYW5rPiB7XG4gIHN0YXRpYyB0b2JCYW5rc0lkczogbnVtYmVyW10gPSBbMTI0LCAxMywgMTM0LCAxNzIsIDEyNiwgMTQyLCAxMzUsIDEzNywgMTM4LCAxMjhdO1xuXG4gIGNvbnN0cnVjdG9yKGJhbmtzOiBCYW5rW10pIHtcbiAgICBzdXBlcihiYW5rcyk7XG4gICAgdGhpcy5zb3J0QnlQb3B1bGFyaXR5KCk7XG4gIH1cblxuICBzb3J0QnlQb3B1bGFyaXR5KCk6IHZvaWQge1xuICAgIHRoaXMuaXRlbXMuc29ydCgoYmFuazE6IEJhbmssIGJhbmsyOiBCYW5rKTogbnVtYmVyID0+IHtcbiAgICAgIC8vIEJhbmtzIGFscmVhZHkgc29ydGVkIG9uIGJhY2tlbmQgYnkgbmFtZSwgc28gd2UganVzdCBuZWVkIHRvIHVwIHRvcC0xMCBiYW5rc1xuICAgICAgcmV0dXJuIChCYW5rQ29sbGVjdGlvbi50b2JCYW5rc0lkcy5pbmNsdWRlcyhiYW5rMS5pZCkgJiYgIUJhbmtDb2xsZWN0aW9uLnRvYkJhbmtzSWRzLmluY2x1ZGVzKGJhbmsyLmlkKSkgPyAtMSA6IDE7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { BankAccount } from '../../models/bank/bank-account';
|
|
3
|
-
import { FormControl, Validators } from '@angular/forms';
|
|
4
|
-
import { plainToClass } from 'class-transformer';
|
|
5
|
-
/**
|
|
6
|
-
* Form is using for manual bank account creation (not Basiq), prepares bank account data for the next saving.
|
|
7
|
-
*/
|
|
8
|
-
export class BankAccountAddManualForm extends AbstractForm {
|
|
9
|
-
constructor(connection) {
|
|
10
|
-
super({
|
|
11
|
-
type: new FormControl(null, Validators.required),
|
|
12
|
-
accountName: new FormControl(null, Validators.required),
|
|
13
|
-
currentBalance: new FormControl(null, Validators.required),
|
|
14
|
-
accountNumber: new FormControl(null, [Validators.required, Validators.pattern(BankAccountAddManualForm.accountNumberPattern)]),
|
|
15
|
-
}, plainToClass(BankAccount, { bankConnection: connection }));
|
|
16
|
-
}
|
|
17
|
-
}
|
|
18
|
-
BankAccountAddManualForm.accountNumberPattern = '^[0-9]{6}[ ]{1}[0-9]{1,}$';
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWFkZC1tYW51YWwuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC1hZGQtbWFudWFsLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUdqRDs7R0FFRztBQUNILE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxZQUF5QjtJQUdyRSxZQUFZLFVBQTBCO1FBQ3BDLEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNoRCxXQUFXLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDdkQsY0FBYyxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzFELGFBQWEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsd0JBQXdCLENBQUMsb0JBQW9CLENBQUMsQ0FBQyxDQUFDO1NBQy9ILEVBQUUsWUFBWSxDQUFDLFdBQVcsRUFBRSxFQUFDLGNBQWMsRUFBRSxVQUFVLEVBQUMsQ0FBQyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7QUFUTSw2Q0FBb0IsR0FBVywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgQmFua0FjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYmFuay9iYW5rLWFjY291bnQnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBwbGFpblRvQ2xhc3MgfSBmcm9tICdjbGFzcy10cmFuc2Zvcm1lcic7XG5pbXBvcnQgeyBCYW5rQ29ubmVjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy9iYW5rL2JhbmstY29ubmVjdGlvbic7XG5cbi8qKlxuICogRm9ybSBpcyB1c2luZyBmb3IgbWFudWFsIGJhbmsgYWNjb3VudCBjcmVhdGlvbiAobm90IEJhc2lxKSwgcHJlcGFyZXMgYmFuayBhY2NvdW50IGRhdGEgZm9yIHRoZSBuZXh0IHNhdmluZy5cbiAqL1xuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50QWRkTWFudWFsRm9ybSBleHRlbmRzIEFic3RyYWN0Rm9ybTxCYW5rQWNjb3VudD4ge1xuICBzdGF0aWMgYWNjb3VudE51bWJlclBhdHRlcm46IHN0cmluZyA9ICdeWzAtOV17Nn1bIF17MX1bMC05XXsxLH0kJztcblxuICBjb25zdHJ1Y3Rvcihjb25uZWN0aW9uOiBCYW5rQ29ubmVjdGlvbikge1xuICAgIHN1cGVyKHtcbiAgICAgIHR5cGU6IG5ldyBGb3JtQ29udHJvbChudWxsLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIGFjY291bnROYW1lOiBuZXcgRm9ybUNvbnRyb2wobnVsbCwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBjdXJyZW50QmFsYW5jZTogbmV3IEZvcm1Db250cm9sKG51bGwsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgYWNjb3VudE51bWJlcjogbmV3IEZvcm1Db250cm9sKG51bGwsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLnBhdHRlcm4oQmFua0FjY291bnRBZGRNYW51YWxGb3JtLmFjY291bnROdW1iZXJQYXR0ZXJuKV0pLFxuICAgIH0sIHBsYWluVG9DbGFzcyhCYW5rQWNjb3VudCwge2JhbmtDb25uZWN0aW9uOiBjb25uZWN0aW9ufSkpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { FormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { Loan } from '../../models/loan/loan';
|
|
4
|
-
import { plainToClass } from 'class-transformer';
|
|
5
|
-
export class BankAccountLoanForm extends AbstractForm {
|
|
6
|
-
constructor(loan = plainToClass(Loan, {})) {
|
|
7
|
-
super({
|
|
8
|
-
type: new FormControl(loan.type, Validators.required),
|
|
9
|
-
amount: new FormControl(loan.amount, Validators.required),
|
|
10
|
-
repaymentType: new FormControl(loan.repaymentType, Validators.required),
|
|
11
|
-
interestRate: new FormControl(loan.interestRate, [Validators.required, Validators.min(0), Validators.max(100)]),
|
|
12
|
-
interestType: new FormControl(loan.interestType, Validators.required),
|
|
13
|
-
availableRedraw: new FormControl(loan.availableRedraw, Validators.required),
|
|
14
|
-
commencementDate: new FormControl(loan.commencementDate, Validators.required),
|
|
15
|
-
repaymentAmount: new FormControl(loan.repaymentAmount, Validators.required),
|
|
16
|
-
repaymentFrequency: new FormControl(loan.repaymentFrequency, Validators.required)
|
|
17
|
-
}, loan);
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LWxvYW4uZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC1sb2FuLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxNQUFNLE9BQU8sbUJBQW9CLFNBQVEsWUFBa0I7SUFDekQsWUFBWSxPQUFhLFlBQVksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQzdDLEtBQUssQ0FBQztZQUNKLElBQUksRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDckQsTUFBTSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUN6RCxhQUFhLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3ZFLFlBQVksRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUMsVUFBVSxDQUFDLFFBQVEsRUFBRSxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUMvRyxZQUFZLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQ3JFLGVBQWUsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDM0UsZ0JBQWdCLEVBQUUsSUFBSSxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDN0UsZUFBZSxFQUFFLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUMzRSxrQkFBa0IsRUFBRSxJQUFJLFdBQVcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztTQUNsRixFQUFFLElBQUksQ0FBQyxDQUFDO0lBQ1gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExvYW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvbG9hbi9sb2FuJztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50TG9hbkZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08TG9hbj4ge1xuICBjb25zdHJ1Y3Rvcihsb2FuOiBMb2FuID0gcGxhaW5Ub0NsYXNzKExvYW4sIHt9KSkge1xuICAgIHN1cGVyKHtcbiAgICAgIHR5cGU6IG5ldyBGb3JtQ29udHJvbChsb2FuLnR5cGUsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgYW1vdW50OiBuZXcgRm9ybUNvbnRyb2wobG9hbi5hbW91bnQsIFZhbGlkYXRvcnMucmVxdWlyZWQpLFxuICAgICAgcmVwYXltZW50VHlwZTogbmV3IEZvcm1Db250cm9sKGxvYW4ucmVwYXltZW50VHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBpbnRlcmVzdFJhdGU6IG5ldyBGb3JtQ29udHJvbChsb2FuLmludGVyZXN0UmF0ZSwgW1ZhbGlkYXRvcnMucmVxdWlyZWQsIFZhbGlkYXRvcnMubWluKDApLCBWYWxpZGF0b3JzLm1heCgxMDApXSksXG4gICAgICBpbnRlcmVzdFR5cGU6IG5ldyBGb3JtQ29udHJvbChsb2FuLmludGVyZXN0VHlwZSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBhdmFpbGFibGVSZWRyYXc6IG5ldyBGb3JtQ29udHJvbChsb2FuLmF2YWlsYWJsZVJlZHJhdywgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBjb21tZW5jZW1lbnREYXRlOiBuZXcgRm9ybUNvbnRyb2wobG9hbi5jb21tZW5jZW1lbnREYXRlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIHJlcGF5bWVudEFtb3VudDogbmV3IEZvcm1Db250cm9sKGxvYW4ucmVwYXltZW50QW1vdW50LCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICAgIHJlcGF5bWVudEZyZXF1ZW5jeTogbmV3IEZvcm1Db250cm9sKGxvYW4ucmVwYXltZW50RnJlcXVlbmN5LCBWYWxpZGF0b3JzLnJlcXVpcmVkKVxuICAgIH0sIGxvYW4pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { FormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { FinancialYear } from '../../models/financial-year/financial-year';
|
|
4
|
-
import { dateRangeValidator } from '../../validators/date-range.validator';
|
|
5
|
-
export class BankAccountMigrateForm extends AbstractForm {
|
|
6
|
-
constructor() {
|
|
7
|
-
super({
|
|
8
|
-
migrateFrom: new FormControl(BankAccountMigrateForm.minDate, [Validators.required, dateRangeValidator(BankAccountMigrateForm.minDate, BankAccountMigrateForm.maxDate)]),
|
|
9
|
-
migrateTo: new FormControl(BankAccountMigrateForm.maxDate, [Validators.required, dateRangeValidator(BankAccountMigrateForm.minDate, BankAccountMigrateForm.maxDate)])
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
BankAccountMigrateForm.minDate = new FinancialYear().prevFinYear.startDate;
|
|
14
|
-
BankAccountMigrateForm.maxDate = new Date();
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LW1pZ3JhdGUuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC1taWdyYXRlLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBRTNFLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxZQUFrRDtJQUk1RjtRQUNFLEtBQUssQ0FBQztZQUNKLFdBQVcsRUFBRSxJQUFJLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLGtCQUFrQixDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1lBQ3ZLLFNBQVMsRUFBRSxJQUFJLFdBQVcsQ0FBQyxzQkFBc0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLGtCQUFrQixDQUFDLHNCQUFzQixDQUFDLE9BQU8sRUFBRSxzQkFBc0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDO1NBQ3RLLENBQUMsQ0FBQztJQUNMLENBQUM7O0FBUk0sOEJBQU8sR0FBUyxJQUFJLGFBQWEsRUFBRSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUM7QUFDMUQsOEJBQU8sR0FBUyxJQUFJLElBQUksRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEZpbmFuY2lhbFllYXIgfSBmcm9tICcuLi8uLi9tb2RlbHMvZmluYW5jaWFsLXllYXIvZmluYW5jaWFsLXllYXInO1xuaW1wb3J0IHsgZGF0ZVJhbmdlVmFsaWRhdG9yIH0gZnJvbSAnLi4vLi4vdmFsaWRhdG9ycy9kYXRlLXJhbmdlLnZhbGlkYXRvcic7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudE1pZ3JhdGVGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPHttaWdyYXRlRnJvbTogRGF0ZSwgbWlncmF0ZVRvOiBEYXRlfT4ge1xuICBzdGF0aWMgbWluRGF0ZTogRGF0ZSA9IG5ldyBGaW5hbmNpYWxZZWFyKCkucHJldkZpblllYXIuc3RhcnREYXRlO1xuICBzdGF0aWMgbWF4RGF0ZTogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoe1xuICAgICAgbWlncmF0ZUZyb206IG5ldyBGb3JtQ29udHJvbChCYW5rQWNjb3VudE1pZ3JhdGVGb3JtLm1pbkRhdGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBkYXRlUmFuZ2VWYWxpZGF0b3IoQmFua0FjY291bnRNaWdyYXRlRm9ybS5taW5EYXRlLCBCYW5rQWNjb3VudE1pZ3JhdGVGb3JtLm1heERhdGUpXSksXG4gICAgICBtaWdyYXRlVG86IG5ldyBGb3JtQ29udHJvbChCYW5rQWNjb3VudE1pZ3JhdGVGb3JtLm1heERhdGUsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBkYXRlUmFuZ2VWYWxpZGF0b3IoQmFua0FjY291bnRNaWdyYXRlRm9ybS5taW5EYXRlLCBCYW5rQWNjb3VudE1pZ3JhdGVGb3JtLm1heERhdGUpXSlcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FormArray } from '@angular/forms';
|
|
2
|
-
import { BankAccountPropertyForm } from './bank-account-property.form';
|
|
3
|
-
export class BankAccountPropertiesForm extends FormArray {
|
|
4
|
-
constructor(isLoan, bankAccountProperties = []) {
|
|
5
|
-
super(bankAccountProperties.length
|
|
6
|
-
? bankAccountProperties.map((bankAccountProperty) => new BankAccountPropertyForm(isLoan, bankAccountProperty))
|
|
7
|
-
: [new BankAccountPropertyForm(isLoan)]);
|
|
8
|
-
this.isLoan = isLoan;
|
|
9
|
-
this.bankAccountProperties = bankAccountProperties;
|
|
10
|
-
}
|
|
11
|
-
add() {
|
|
12
|
-
this.push(new BankAccountPropertyForm(this.isLoan));
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LXByb3BlcnRpZXMuZm9ybS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3R0LWNvcmUvc3JjL2xpYi9mb3Jtcy9iYW5rL2JhbmstYWNjb3VudC1wcm9wZXJ0aWVzLmZvcm0udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzNDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBR3ZFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxTQUFTO0lBQ3RELFlBQ1UsTUFBZSxFQUNmLHdCQUErQyxFQUFFO1FBRXpELEtBQUssQ0FDSCxxQkFBcUIsQ0FBQyxNQUFNO1lBQzFCLENBQUMsQ0FBQyxxQkFBcUIsQ0FBQyxHQUFHLENBQUMsQ0FBQyxtQkFBd0MsRUFBRSxFQUFFLENBQUMsSUFBSSx1QkFBdUIsQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztZQUNuSSxDQUFDLENBQUMsQ0FBQyxJQUFJLHVCQUF1QixDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQzFDLENBQUM7UUFQTSxXQUFNLEdBQU4sTUFBTSxDQUFTO1FBQ2YsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUE0QjtJQU8zRCxDQUFDO0lBRUQsR0FBRztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUN0RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQXJyYXkgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFByb3BlcnR5Rm9ybSB9IGZyb20gJy4vYmFuay1hY2NvdW50LXByb3BlcnR5LmZvcm0nO1xuaW1wb3J0IHsgQmFua0FjY291bnRQcm9wZXJ0eSB9IGZyb20gJy4uLy4uL21vZGVscy9iYW5rL2JhbmstYWNjb3VudC1wcm9wZXJ0eSc7XG5cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudFByb3BlcnRpZXNGb3JtIGV4dGVuZHMgRm9ybUFycmF5IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBpc0xvYW46IGJvb2xlYW4sXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudFByb3BlcnRpZXM6IEJhbmtBY2NvdW50UHJvcGVydHlbXSA9IFtdXG4gICkge1xuICAgIHN1cGVyKFxuICAgICAgYmFua0FjY291bnRQcm9wZXJ0aWVzLmxlbmd0aFxuICAgICAgICA/IGJhbmtBY2NvdW50UHJvcGVydGllcy5tYXAoKGJhbmtBY2NvdW50UHJvcGVydHk6IEJhbmtBY2NvdW50UHJvcGVydHkpID0+IG5ldyBCYW5rQWNjb3VudFByb3BlcnR5Rm9ybShpc0xvYW4sIGJhbmtBY2NvdW50UHJvcGVydHkpKVxuICAgICAgICA6IFtuZXcgQmFua0FjY291bnRQcm9wZXJ0eUZvcm0oaXNMb2FuKV1cbiAgICApO1xuICB9XG5cbiAgYWRkKCk6IHZvaWQge1xuICAgIHRoaXMucHVzaChuZXcgQmFua0FjY291bnRQcm9wZXJ0eUZvcm0odGhpcy5pc0xvYW4pKTtcbiAgfVxufVxuIl19
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { FormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { BankAccountProperty } from '../../models/bank/bank-account-property';
|
|
4
|
-
import { plainToClass } from 'class-transformer';
|
|
5
|
-
export class BankAccountPropertyForm extends AbstractForm {
|
|
6
|
-
constructor(isLoan, bankAccountProperty = plainToClass(BankAccountProperty, {})) {
|
|
7
|
-
super({
|
|
8
|
-
property: new FormControl(bankAccountProperty.property, Validators.required),
|
|
9
|
-
percent: new FormControl({ value: bankAccountProperty.percent, disabled: !isLoan }, Validators.required)
|
|
10
|
-
}, bankAccountProperty);
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LXByb3BlcnR5LmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvYmFuay9iYW5rLWFjY291bnQtcHJvcGVydHkuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUM5RSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFakQsTUFBTSxPQUFPLHVCQUF3QixTQUFRLFlBQWlDO0lBQzVFLFlBQ0UsTUFBZSxFQUNmLHNCQUEyQyxZQUFZLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxDQUFDO1FBRWhGLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxtQkFBbUIsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM1RSxPQUFPLEVBQUUsSUFBSSxXQUFXLENBQUMsRUFBQyxLQUFLLEVBQUUsbUJBQW1CLENBQUMsT0FBTyxFQUFFLFFBQVEsRUFBRSxDQUFDLE1BQU0sRUFBQyxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDdkcsRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Rm9ybSB9IGZyb20gJy4uL2Fic3RyYWN0LmZvcm0nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCYW5rQWNjb3VudFByb3BlcnR5IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2JhbmsvYmFuay1hY2NvdW50LXByb3BlcnR5JztcbmltcG9ydCB7IHBsYWluVG9DbGFzcyB9IGZyb20gJ2NsYXNzLXRyYW5zZm9ybWVyJztcblxuZXhwb3J0IGNsYXNzIEJhbmtBY2NvdW50UHJvcGVydHlGb3JtIGV4dGVuZHMgQWJzdHJhY3RGb3JtPEJhbmtBY2NvdW50UHJvcGVydHk+IHtcbiAgY29uc3RydWN0b3IoXG4gICAgaXNMb2FuOiBib29sZWFuLFxuICAgIGJhbmtBY2NvdW50UHJvcGVydHk6IEJhbmtBY2NvdW50UHJvcGVydHkgPSBwbGFpblRvQ2xhc3MoQmFua0FjY291bnRQcm9wZXJ0eSwge30pXG4gICkge1xuICAgIHN1cGVyKHtcbiAgICAgIHByb3BlcnR5OiBuZXcgRm9ybUNvbnRyb2woYmFua0FjY291bnRQcm9wZXJ0eS5wcm9wZXJ0eSwgVmFsaWRhdG9ycy5yZXF1aXJlZCksXG4gICAgICBwZXJjZW50OiBuZXcgRm9ybUNvbnRyb2woe3ZhbHVlOiBiYW5rQWNjb3VudFByb3BlcnR5LnBlcmNlbnQsIGRpc2FibGVkOiAhaXNMb2FufSwgVmFsaWRhdG9ycy5yZXF1aXJlZClcbiAgICB9LCBiYW5rQWNjb3VudFByb3BlcnR5KTtcbiAgfVxufVxuIl19
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { FormControl, Validators } from '@angular/forms';
|
|
3
|
-
import { TankTypeEnum } from '../../db/Enums/tank-type.enum';
|
|
4
|
-
import { BankAccountLoanForm } from './bank-account-loan.form';
|
|
5
|
-
import { BankAccount } from '../../models/bank/bank-account';
|
|
6
|
-
import { plainToClass } from 'class-transformer';
|
|
7
|
-
import { BankAccountPropertiesForm } from './bank-account-properties.form';
|
|
8
|
-
/**
|
|
9
|
-
* Form for additional data for bank accounts. Allow user to set tank type, loan and properties for new not-saved bank accounts.
|
|
10
|
-
* Works with manual and basiq bank accounts.
|
|
11
|
-
*/
|
|
12
|
-
export class BankAccountForm extends AbstractForm {
|
|
13
|
-
constructor(bankAccount = plainToClass(BankAccount, {})) {
|
|
14
|
-
super({
|
|
15
|
-
tankType: new FormControl(bankAccount.tankType, Validators.required),
|
|
16
|
-
}, bankAccount);
|
|
17
|
-
this.bankAccount = bankAccount;
|
|
18
|
-
if (bankAccount.isLoan()) {
|
|
19
|
-
this.addControl('loan', new BankAccountLoanForm(bankAccount.loan));
|
|
20
|
-
}
|
|
21
|
-
this.listenEvents();
|
|
22
|
-
}
|
|
23
|
-
listenEvents() {
|
|
24
|
-
this.listenTankTypeChanges();
|
|
25
|
-
this.listenValueChanges();
|
|
26
|
-
}
|
|
27
|
-
get properties() {
|
|
28
|
-
return this.get('bankAccountProperties');
|
|
29
|
-
}
|
|
30
|
-
isLoan() {
|
|
31
|
-
return BankAccount.loanTypes.includes(this.bankAccount.type);
|
|
32
|
-
}
|
|
33
|
-
isPropertyTank() {
|
|
34
|
-
return this.get('tankType').value === TankTypeEnum.PROPERTY;
|
|
35
|
-
}
|
|
36
|
-
confirm() {
|
|
37
|
-
this.markAllAsTouched();
|
|
38
|
-
if (this.invalid) {
|
|
39
|
-
return;
|
|
40
|
-
}
|
|
41
|
-
this.isConfirmed = true;
|
|
42
|
-
}
|
|
43
|
-
addPropertiesArray() {
|
|
44
|
-
const control = new BankAccountPropertiesForm(this.isLoan(), this.bankAccount.bankAccountProperties);
|
|
45
|
-
// Default form behaviour is: if we add enabled form control to disabled form group then this form group enable.
|
|
46
|
-
// Disable form control before add to avoid form group enabling.
|
|
47
|
-
if (this.disabled) {
|
|
48
|
-
control.disable();
|
|
49
|
-
}
|
|
50
|
-
this.addControl('bankAccountProperties', control);
|
|
51
|
-
}
|
|
52
|
-
/**
|
|
53
|
-
* Add/Remove properties form array depending on selected tank type
|
|
54
|
-
*/
|
|
55
|
-
listenTankTypeChanges() {
|
|
56
|
-
this.get('tankType').valueChanges.subscribe(() => {
|
|
57
|
-
this.isPropertyTank() ? this.addPropertiesArray() : this.removeControl('bankAccountProperties');
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
listenValueChanges() {
|
|
61
|
-
this.valueChanges.subscribe(() => {
|
|
62
|
-
this.isConfirmed = false;
|
|
63
|
-
});
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFuay1hY2NvdW50LmZvcm0uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvZm9ybXMvYmFuay9iYW5rLWFjY291bnQuZm9ybS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDaEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDN0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUczRTs7O0dBR0c7QUFDSCxNQUFNLE9BQU8sZUFBZ0IsU0FBUSxZQUF5QjtJQU81RCxZQUNVLGNBQTJCLFlBQVksQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDO1FBRWhFLEtBQUssQ0FBQztZQUNKLFFBQVEsRUFBRSxJQUFJLFdBQVcsQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7U0FDckUsRUFBRSxXQUFXLENBQUMsQ0FBQztRQUpSLGdCQUFXLEdBQVgsV0FBVyxDQUE2QztRQU1oRSxJQUFJLFdBQVcsQ0FBQyxNQUFNLEVBQUUsRUFBRTtZQUN4QixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxJQUFJLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO1NBQ3BFO1FBRUQsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBSSxDQUFDLHFCQUFxQixFQUFFLENBQUM7UUFDN0IsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQUksVUFBVTtRQUNaLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBOEIsQ0FBQztJQUN4RSxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sV0FBVyxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMvRCxDQUFDO0lBRUQsY0FBYztRQUNaLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsQ0FBQyxLQUFLLEtBQUssWUFBWSxDQUFDLFFBQVEsQ0FBQztJQUM5RCxDQUFDO0lBRUQsT0FBTztRQUNMLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXhCLElBQUksSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNoQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRU8sa0JBQWtCO1FBQ3hCLE1BQU0sT0FBTyxHQUFHLElBQUkseUJBQXlCLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUNyRyxnSEFBZ0g7UUFDaEgsZ0VBQWdFO1FBQ2hFLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUNqQixPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDbkI7UUFDRCxJQUFJLENBQUMsVUFBVSxDQUFDLHVCQUF1QixFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7T0FFRztJQUNLLHFCQUFxQjtRQUMzQixJQUFJLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBUyxFQUFFO1lBQ3JELElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUNsRyxDQUFDLENBQUMsQ0FBQTtJQUNKLENBQUM7SUFFTyxrQkFBa0I7UUFDeEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQy9CLElBQUksQ0FBQyxXQUFXLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWJzdHJhY3RGb3JtIH0gZnJvbSAnLi4vYWJzdHJhY3QuZm9ybSc7XG5pbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRhbmtUeXBlRW51bSB9IGZyb20gJy4uLy4uL2RiL0VudW1zL3RhbmstdHlwZS5lbnVtJztcbmltcG9ydCB7IEJhbmtBY2NvdW50TG9hbkZvcm0gfSBmcm9tICcuL2JhbmstYWNjb3VudC1sb2FuLmZvcm0nO1xuaW1wb3J0IHsgQmFua0FjY291bnQgfSBmcm9tICcuLi8uLi9tb2RlbHMvYmFuay9iYW5rLWFjY291bnQnO1xuaW1wb3J0IHsgcGxhaW5Ub0NsYXNzIH0gZnJvbSAnY2xhc3MtdHJhbnNmb3JtZXInO1xuaW1wb3J0IHsgQmFua0FjY291bnRQcm9wZXJ0aWVzRm9ybSB9IGZyb20gJy4vYmFuay1hY2NvdW50LXByb3BlcnRpZXMuZm9ybSc7XG5pbXBvcnQgeyBJRXZlbnRMaXN0ZW5lciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvZXZlbnQtbGlzdGVuZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBGb3JtIGZvciBhZGRpdGlvbmFsIGRhdGEgZm9yIGJhbmsgYWNjb3VudHMuIEFsbG93IHVzZXIgdG8gc2V0IHRhbmsgdHlwZSwgbG9hbiBhbmQgcHJvcGVydGllcyBmb3IgbmV3IG5vdC1zYXZlZCBiYW5rIGFjY291bnRzLlxuICogV29ya3Mgd2l0aCBtYW51YWwgYW5kIGJhc2lxIGJhbmsgYWNjb3VudHMuXG4gKi9cbmV4cG9ydCBjbGFzcyBCYW5rQWNjb3VudEZvcm0gZXh0ZW5kcyBBYnN0cmFjdEZvcm08QmFua0FjY291bnQ+IGltcGxlbWVudHMgSUV2ZW50TGlzdGVuZXIge1xuICAvKipcbiAgICogVUkgZmxhZzogdXNlciBjb25maXJtIGhlIGNvbXBsZXRlZCBmaWxsIHRoZSBmb3JtXG4gICAqIGh0dHBzOi8vdGF4dGFuay5hdGxhc3NpYW4ubmV0L2Jyb3dzZS9UVC0xOTE3IChwb2ludCAyKVxuICAgKi9cbiAgaXNDb25maXJtZWQ6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBiYW5rQWNjb3VudDogQmFua0FjY291bnQgPSBwbGFpblRvQ2xhc3MoQmFua0FjY291bnQsIHt9KVxuICApIHtcbiAgICBzdXBlcih7XG4gICAgICB0YW5rVHlwZTogbmV3IEZvcm1Db250cm9sKGJhbmtBY2NvdW50LnRhbmtUeXBlLCBWYWxpZGF0b3JzLnJlcXVpcmVkKSxcbiAgICB9LCBiYW5rQWNjb3VudCk7XG5cbiAgICBpZiAoYmFua0FjY291bnQuaXNMb2FuKCkpIHtcbiAgICAgIHRoaXMuYWRkQ29udHJvbCgnbG9hbicsIG5ldyBCYW5rQWNjb3VudExvYW5Gb3JtKGJhbmtBY2NvdW50LmxvYW4pKTtcbiAgICB9XG5cbiAgICB0aGlzLmxpc3RlbkV2ZW50cygpO1xuICB9XG5cbiAgbGlzdGVuRXZlbnRzKCk6IHZvaWQge1xuICAgIHRoaXMubGlzdGVuVGFua1R5cGVDaGFuZ2VzKCk7XG4gICAgdGhpcy5saXN0ZW5WYWx1ZUNoYW5nZXMoKTtcbiAgfVxuXG4gIGdldCBwcm9wZXJ0aWVzKCk6IEJhbmtBY2NvdW50UHJvcGVydGllc0Zvcm0ge1xuICAgIHJldHVybiB0aGlzLmdldCgnYmFua0FjY291bnRQcm9wZXJ0aWVzJykgYXMgQmFua0FjY291bnRQcm9wZXJ0aWVzRm9ybTtcbiAgfVxuXG4gIGlzTG9hbigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gQmFua0FjY291bnQubG9hblR5cGVzLmluY2x1ZGVzKHRoaXMuYmFua0FjY291bnQudHlwZSk7XG4gIH1cblxuICBpc1Byb3BlcnR5VGFuaygpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5nZXQoJ3RhbmtUeXBlJykudmFsdWUgPT09IFRhbmtUeXBlRW51bS5QUk9QRVJUWTtcbiAgfVxuXG4gIGNvbmZpcm0oKTogdm9pZCB7XG4gICAgdGhpcy5tYXJrQWxsQXNUb3VjaGVkKCk7XG5cbiAgICBpZiAodGhpcy5pbnZhbGlkKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgdGhpcy5pc0NvbmZpcm1lZCA9IHRydWU7XG4gIH1cblxuICBwcml2YXRlIGFkZFByb3BlcnRpZXNBcnJheSgpOiB2b2lkIHtcbiAgICBjb25zdCBjb250cm9sID0gbmV3IEJhbmtBY2NvdW50UHJvcGVydGllc0Zvcm0odGhpcy5pc0xvYW4oKSwgdGhpcy5iYW5rQWNjb3VudC5iYW5rQWNjb3VudFByb3BlcnRpZXMpO1xuICAgIC8vIERlZmF1bHQgZm9ybSBiZWhhdmlvdXIgaXM6IGlmIHdlIGFkZCBlbmFibGVkIGZvcm0gY29udHJvbCB0byBkaXNhYmxlZCBmb3JtIGdyb3VwIHRoZW4gdGhpcyBmb3JtIGdyb3VwIGVuYWJsZS5cbiAgICAvLyBEaXNhYmxlIGZvcm0gY29udHJvbCBiZWZvcmUgYWRkIHRvIGF2b2lkIGZvcm0gZ3JvdXAgZW5hYmxpbmcuXG4gICAgaWYgKHRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIGNvbnRyb2wuZGlzYWJsZSgpO1xuICAgIH1cbiAgICB0aGlzLmFkZENvbnRyb2woJ2JhbmtBY2NvdW50UHJvcGVydGllcycsIGNvbnRyb2wpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZC9SZW1vdmUgcHJvcGVydGllcyBmb3JtIGFycmF5IGRlcGVuZGluZyBvbiBzZWxlY3RlZCB0YW5rIHR5cGVcbiAgICovXG4gIHByaXZhdGUgbGlzdGVuVGFua1R5cGVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMuZ2V0KCd0YW5rVHlwZScpLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKCk6IHZvaWQgPT4ge1xuICAgICAgdGhpcy5pc1Byb3BlcnR5VGFuaygpID8gdGhpcy5hZGRQcm9wZXJ0aWVzQXJyYXkoKSA6IHRoaXMucmVtb3ZlQ29udHJvbCgnYmFua0FjY291bnRQcm9wZXJ0aWVzJyk7XG4gICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgbGlzdGVuVmFsdWVDaGFuZ2VzKCk6IHZvaWQge1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICB0aGlzLmlzQ29uZmlybWVkID0gZmFsc2U7XG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Validation function for autocomplete fields. Checks that the user should select a value from a list rather than type in input field
|
|
3
|
-
*/
|
|
4
|
-
export function requireAutocomplete() {
|
|
5
|
-
return (control) => {
|
|
6
|
-
if (typeof control.value === 'string' && !!control.value) {
|
|
7
|
-
return { notFromList: true };
|
|
8
|
-
}
|
|
9
|
-
else {
|
|
10
|
-
return null;
|
|
11
|
-
}
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1hdXRvY29tcGxldGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90dC1jb3JlL3NyYy9saWIvdmFsaWRhdG9ycy9yZXF1aXJlLWF1dG9jb21wbGV0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sVUFBVSxtQkFBbUI7SUFDakMsT0FBTyxDQUFDLE9BQW9CLEVBQUUsRUFBRTtRQUM5QixJQUFJLE9BQU8sT0FBTyxDQUFDLEtBQUssS0FBSyxRQUFRLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUU7WUFDeEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUUsQ0FBQztTQUM5QjthQUFNO1lBQ0wsT0FBTyxJQUFJLENBQUM7U0FDYjtJQUNILENBQUMsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb3JtQ29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8qKlxuICogVmFsaWRhdGlvbiBmdW5jdGlvbiBmb3IgYXV0b2NvbXBsZXRlIGZpZWxkcy4gQ2hlY2tzIHRoYXQgdGhlIHVzZXIgc2hvdWxkIHNlbGVjdCBhIHZhbHVlIGZyb20gYSBsaXN0IHJhdGhlciB0aGFuIHR5cGUgaW4gaW5wdXQgZmllbGRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHJlcXVpcmVBdXRvY29tcGxldGUoKTogVmFsaWRhdG9yRm4ge1xuICByZXR1cm4gKGNvbnRyb2w6IEZvcm1Db250cm9sKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBjb250cm9sLnZhbHVlID09PSAnc3RyaW5nJyAmJiAhIWNvbnRyb2wudmFsdWUpIHtcbiAgICAgIHJldHVybiB7IG5vdEZyb21MaXN0OiB0cnVlIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfTtcbn1cbiJdfQ==
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Validation function, that checks that the user should select a value from a list rather than type in input field
|
|
3
|
-
*/
|
|
4
|
-
export function requireSelectValidator() {
|
|
5
|
-
return (control) => {
|
|
6
|
-
const selection = control.value;
|
|
7
|
-
if (typeof selection === 'string' && !!selection) {
|
|
8
|
-
return { notFromList: true };
|
|
9
|
-
}
|
|
10
|
-
else {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS1zZWxlY3QudmFsaWRhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdHQtY29yZS9zcmMvbGliL3ZhbGlkYXRvcnMvcmVxdWlyZS1zZWxlY3QudmFsaWRhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBOztHQUVHO0FBQ0gsTUFBTSxVQUFVLHNCQUFzQjtJQUNwQyxPQUFPLENBQUMsT0FBd0IsRUFBRSxFQUFFO1FBQ2xDLE1BQU0sU0FBUyxHQUFRLE9BQU8sQ0FBQyxLQUFLLENBQUM7UUFDckMsSUFBSSxPQUFPLFNBQVMsS0FBSyxRQUFRLElBQUksQ0FBQyxDQUFDLFNBQVMsRUFBRTtZQUNoRCxPQUFPLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxDQUFDO1NBQzlCO2FBQU07WUFDTCxPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgVmFsaWRhdG9yRm4gfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbi8qKlxuICogVmFsaWRhdGlvbiBmdW5jdGlvbiwgdGhhdCBjaGVja3MgdGhhdCB0aGUgdXNlciBzaG91bGQgc2VsZWN0IGEgdmFsdWUgZnJvbSBhIGxpc3QgcmF0aGVyIHRoYW4gdHlwZSBpbiBpbnB1dCBmaWVsZFxuICovXG5leHBvcnQgZnVuY3Rpb24gcmVxdWlyZVNlbGVjdFZhbGlkYXRvcigpOiBWYWxpZGF0b3JGbiB7XG4gIHJldHVybiAoY29udHJvbDogQWJzdHJhY3RDb250cm9sKSA9PiB7XG4gICAgY29uc3Qgc2VsZWN0aW9uOiBhbnkgPSBjb250cm9sLnZhbHVlO1xuICAgIGlmICh0eXBlb2Ygc2VsZWN0aW9uID09PSAnc3RyaW5nJyAmJiAhIXNlbGVjdGlvbikge1xuICAgICAgcmV0dXJuIHsgbm90RnJvbUxpc3Q6IHRydWUgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9O1xufVxuIl19
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { BankAccount } from '../../models/bank/bank-account';
|
|
3
|
-
import { BankConnection } from '../../models/bank/bank-connection';
|
|
4
|
-
/**
|
|
5
|
-
* Form is using for manual bank account creation (not Basiq), prepares bank account data for the next saving.
|
|
6
|
-
*/
|
|
7
|
-
export declare class BankAccountAddManualForm extends AbstractForm<BankAccount> {
|
|
8
|
-
static accountNumberPattern: string;
|
|
9
|
-
constructor(connection: BankConnection);
|
|
10
|
-
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { FormArray } from '@angular/forms';
|
|
2
|
-
import { BankAccountProperty } from '../../models/bank/bank-account-property';
|
|
3
|
-
export declare class BankAccountPropertiesForm extends FormArray {
|
|
4
|
-
private isLoan;
|
|
5
|
-
private bankAccountProperties;
|
|
6
|
-
constructor(isLoan: boolean, bankAccountProperties?: BankAccountProperty[]);
|
|
7
|
-
add(): void;
|
|
8
|
-
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { AbstractForm } from '../abstract.form';
|
|
2
|
-
import { BankAccountProperty } from '../../models/bank/bank-account-property';
|
|
3
|
-
export declare class BankAccountPropertyForm extends AbstractForm<BankAccountProperty> {
|
|
4
|
-
constructor(isLoan: boolean, bankAccountProperty?: BankAccountProperty);
|
|
5
|
-
}
|