Upgrade to Angular 16

Merge `angular-update-16` into `dev` branch
This commit is contained in:
Adam Saghy
2025-05-23 18:47:20 +02:00
parent c7c2f60182
commit 19a14e5b5b
882 changed files with 14895 additions and 14340 deletions
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -13,7 +13,7 @@ import { SettingsService } from 'app/settings/settings.service';
* View Standing Instructions resolver.
*/
@Injectable()
export class ListTransactionsResolver implements Resolve<Object> {
export class ListTransactionsResolver {
/**
* @param {AccountTransfersService} accountTransfersService Account Transfers service.
* @param {SettingsService} settingsService Settings Service.
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -12,7 +12,7 @@ import { AccountTransfersService } from '../account-transfers.service';
* View Standing Instructions resolver.
*/
@Injectable()
export class MakeAccountTransferTemplateResolver implements Resolve<Object> {
export class MakeAccountTransferTemplateResolver {
accountTypeId: string;
id: any;
/**
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -12,7 +12,7 @@ import { AccountTransfersService } from '../account-transfers.service';
* View Standing Instructions resolver.
*/
@Injectable()
export class StandingInstructionsDataAndTemplateResolver implements Resolve<Object> {
export class StandingInstructionsDataAndTemplateResolver {
/**
* @param {accountTransfersService} AccountTransfersService Account Transfers service.
*/
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -12,7 +12,7 @@ import { AccountTransfersService } from '../account-transfers.service';
* View Standing Instructions resolver.
*/
@Injectable()
export class StandingInstructionsTemplateResolver implements Resolve<Object> {
export class StandingInstructionsTemplateResolver {
accountTypeId: string;
/**
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -12,7 +12,7 @@ import { AccountTransfersService } from '../account-transfers.service';
* View Account Transfer data resolver.
*/
@Injectable()
export class ViewAccountTransferResolver implements Resolve<Object> {
export class ViewAccountTransferResolver {
/**
* @param {AccountTransfersService} AccountTransfersService Savings service.
*/
@@ -1,6 +1,6 @@
/** Angular Imports */
import { Injectable } from '@angular/core';
import { Resolve, ActivatedRouteSnapshot } from '@angular/router';
import { ActivatedRouteSnapshot } from '@angular/router';
/** rxjs Imports */
import { Observable } from 'rxjs';
@@ -12,7 +12,7 @@ import { AccountTransfersService } from '../account-transfers.service';
* View Standing Instructions resolver.
*/
@Injectable()
export class ViewStandingInstructionsResolver implements Resolve<Object> {
export class ViewStandingInstructionsResolver {
/**
* @param {accountTransfersService} AccountTransfersService Account Transfers service.
*/
@@ -2,8 +2,8 @@
<mat-card>
<form [formGroup]="createStandingInstructionsForm">
<mat-card-content>
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="48%">
<div class="layout-row-wrap gap-2px responsive-column">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.name' | translate }}</mat-label>
<input matInput required formControlName="name" />
<mat-error *ngIf="createStandingInstructionsForm.controls.name.hasError('required')">
@@ -12,12 +12,12 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Applicant' | translate }}</mat-label>
<input matInput formControlName="applicant" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select required formControlName="transferType" (selectionChange)="changeEvent()">
<mat-option *ngFor="let transferType of transferTypeData" [value]="transferType.id">
@@ -30,7 +30,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Priority' | translate }}</mat-label>
<mat-select required formControlName="priority">
<mat-option *ngFor="let priorityType of priorityTypeData" [value]="priorityType.id">
@@ -43,7 +43,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Status' | translate }}</mat-label>
<mat-select required formControlName="status">
<mat-option *ngFor="let statusType of statusTypeData" [value]="statusType.id">
@@ -56,7 +56,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.From Account Type' | translate }}</mat-label>
<mat-select required formControlName="fromAccountType" (selectionChange)="changeEvent()">
<mat-option *ngFor="let fromAccountType of fromAccountTypeData" [value]="fromAccountType.id">
@@ -69,7 +69,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.From Account' | translate }}</mat-label>
<mat-select required formControlName="fromAccountId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let fromAccount of fromAccountData" [value]="fromAccount.id">
@@ -82,7 +82,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Destination' | translate }}</mat-label>
<mat-select required formControlName="destination">
<mat-option *ngFor="let destinationType of destinationTypeData" [value]="destinationType.id">
@@ -95,7 +95,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Office' | translate }}</mat-label>
<mat-select [disabled]="ToOfficeId" required formControlName="toOfficeId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toOfficeType of toOfficeTypeData" [value]="toOfficeType.id">
@@ -108,7 +108,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Beneficiary' | translate }}</mat-label>
<mat-select [disabled]="ToClientId" required formControlName="toClientId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toClientType of toClientTypeData" [value]="toClientType.id">
@@ -121,7 +121,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Account Type' | translate }}</mat-label>
<mat-select required formControlName="toAccountType" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toAccountType of toAccountTypeData" [value]="toAccountType.id">
@@ -134,7 +134,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Account' | translate }}</mat-label>
<mat-select required formControlName="toAccountId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toAccount of toAccountData" [value]="toAccount.id">
@@ -147,7 +147,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Standing Instruction Type' | translate }}</mat-label>
<mat-select formControlName="instructionType">
<mat-option *ngFor="let instructionsType of instructionTypeData" [value]="instructionsType.id">
@@ -160,7 +160,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input type="number" matInput required formControlName="amount" />
<mat-error *ngIf="createStandingInstructionsForm.controls.amount.hasError('required')">
@@ -169,7 +169,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="validFromDatePicker.open()">
<mat-form-field class="flex-48" (click)="validFromDatePicker.open()">
<mat-label>{{ 'labels.inputs.Validity from' | translate }}</mat-label>
<input
matInput
@@ -187,7 +187,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="validTillDatePicker.open()">
<mat-form-field class="flex-48" (click)="validTillDatePicker.open()">
<mat-label>{{ 'labels.inputs.Validity To' | translate }}</mat-label>
<input
matInput
@@ -205,7 +205,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Recurrence Type' | translate }}</mat-label>
<mat-select required formControlName="recurrenceType">
<mat-option *ngFor="let recurrenceType of recurrenceTypeData" [value]="recurrenceType.id">
@@ -218,7 +218,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interval' | translate }}</mat-label>
<input type="number" matInput required formControlName="recurrenceInterval" />
<mat-error *ngIf="createStandingInstructionsForm.controls.recurrenceInterval.hasError('required')">
@@ -227,7 +227,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Recurrence Frequency' | translate }}</mat-label>
<mat-select required formControlName="recurrenceFrequency">
<mat-option
@@ -243,7 +243,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="recurrenceOnMonthDayDatePicker.open()">
<mat-form-field class="flex-48" (click)="recurrenceOnMonthDayDatePicker.open()">
<mat-label>{{ 'labels.inputs.On Month Day' | translate }}</mat-label>
<input
required
@@ -263,7 +263,7 @@
</div>
</mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<mat-card-actions class="layout-row align-center gap-5px responsive-column">
<button type="button" mat-raised-button [routerLink]="['../']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -2,28 +2,28 @@
<mat-card>
<form [formGroup]="editStandingInstructionsForm">
<mat-card-content>
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="48%">
<div class="layout-row-wrap gap-2px responsive-column">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.name' | translate }}</mat-label>
<input matInput formControlName="name" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Applicant' | translate }}</mat-label>
<input matInput formControlName="applicant" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<input matInput formControlName="type" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.From Account Type' | translate }}</mat-label>
<input matInput formControlName="fromAccountType" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Priority' | translate }}</mat-label>
<mat-select required formControlName="priority">
<mat-option *ngFor="let priorityType of priorityTypeData" [value]="priorityType.id">
@@ -36,7 +36,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Status' | translate }}</mat-label>
<mat-select required formControlName="status">
<mat-option *ngFor="let statusType of statusTypeData" [value]="statusType.id">
@@ -49,37 +49,37 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.From Account' | translate }}</mat-label>
<input matInput formControlName="fromAccount" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Destination' | translate }}</mat-label>
<input matInput formControlName="destination" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Office' | translate }}</mat-label>
<input matInput formControlName="toOffice" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Beneficiary' | translate }}</mat-label>
<input matInput formControlName="toClientId" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Account Type' | translate }}</mat-label>
<input matInput formControlName="toAccountType" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.To Account' | translate }}</mat-label>
<input matInput formControlName="toAccount" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Standing Instruction Type' | translate }}</mat-label>
<mat-select formControlName="instructionType">
<mat-option *ngFor="let instructionsType of instructionTypeData" [value]="instructionsType.id">
@@ -88,12 +88,12 @@
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input matInput formControlName="amount" />
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="validFromDatePicker.open()">
<mat-form-field class="flex-48" (click)="validFromDatePicker.open()">
<mat-label>{{ 'labels.inputs.Validity from' | translate }}</mat-label>
<input
matInput
@@ -111,7 +111,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="validTillDatePicker.open()">
<mat-form-field class="flex-48" (click)="validTillDatePicker.open()">
<mat-label>{{ 'labels.inputs.Validity To' | translate }}</mat-label>
<input
matInput
@@ -129,7 +129,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Recurrence Type' | translate }}</mat-label>
<mat-select required formControlName="recurrenceType">
<mat-option *ngFor="let recurrenceType of recurrenceTypeData" [value]="recurrenceType.id">
@@ -142,12 +142,12 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interval' | translate }}</mat-label>
<input matInput formControlName="recurrenceInterval" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Recurrence Frequency' | translate }}</mat-label>
<mat-select formControlName="recurrenceFrequency">
<mat-option
@@ -159,7 +159,7 @@
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="recurrenceOnMonthDayDatePicker.open()">
<mat-form-field class="flex-48" (click)="recurrenceOnMonthDayDatePicker.open()">
<mat-label>{{ 'labels.inputs.On Month Day' | translate }}</mat-label>
<input
matInput
@@ -174,7 +174,7 @@
</div>
</mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<mat-card-actions class="layout-row align-center gap-5px responsive-column">
<button type="button" mat-raised-button [routerLink]="['../view']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -1,26 +1,26 @@
<mat-card class="container">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<div fxFlexFill *ngIf="isFromClient">
<span fxFlex="40%">
<div class="layout-row-wrap gap-2px responsive-column">
<div class="flex-fill" *ngIf="isFromClient">
<span class="flex-40">
<h3 class="mat-h3">{{ 'labels.heading.Client Type' | translate }}</h3>
</span>
<span fxFlex="60%">
<span class="flex-60">
<h3 class="mat-h3">{{ clientName }}</h3>
</span>
</div>
<div fxFlexFill *ngIf="!isFromClient">
<mat-form-field fxFlex="30%">
<div *ngIf="!isFromClient" class="flex-fill">
<mat-form-field class="flex-30">
<input matInput placeholder="ClientName" [formControl]="clientNameControl" />
</mat-form-field>
<mat-form-field fxFlex="30%">
<mat-form-field class="flex-30">
<input matInput placeholder="From Client Id" [formControl]="fromClientId" />
</mat-form-field>
</div>
<mat-divider [inset]="true"></mat-divider>
<mat-form-field fxFlex="30%">
<mat-form-field class="flex-30">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select [formControl]="transferType">
<mat-option *ngFor="let transferTypeData of transferTypeDatas" [value]="transferTypeData.id">
@@ -29,7 +29,7 @@
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="30%">
<mat-form-field class="flex-30">
<input matInput placeholder="From Account Id" [formControl]="fromAccountId" />
</mat-form-field>
@@ -1,28 +1,28 @@
<div class="container m-b-20">
<mat-card class="mat-elevation-z8">
<mat-card-content>
<div fxLayout="row wrap" class="content">
<div fxFlex="25%" fxFlex.lt-md="50%" class="header">
<div class="layout-row-wrap">
<div class="flex-25 header">
{{ 'labels.inputs.From Account' | translate }}
</div>
<div fxFlex="25%" fxFlex.lt-md="50%">
<div class="flex-25">
{{ listTransactionData.fromAccount.accountNo }}({{ listTransactionData.fromAccountType.value }})
</div>
<div fxFlex="25%" fxFlex.lt-md="50%" class="header">
<div class="flex-25 header">
{{ 'labels.inputs.To Account' | translate }}
</div>
<div fxFlex="25%" fxFlex.lt-md="50%">
<div class="flex-25">
{{ listTransactionData.toAccount.accountNo }}({{ listTransactionData.toAccountType.value }})
</div>
<div fxFlex="25%" fxFlex.lt-md="50%" class="header">
<div class="flex-25 header">
{{ 'labels.inputs.Destination' | translate }}
</div>
<div fxFlex="25%" fxFlex.lt-md="50%">
<div class="flex-25">
{{ listTransactionData.toClient.displayName }}
</div>
</div>
@@ -33,7 +33,7 @@
<div class="mat-elevation-z8 container">
<table mat-table [dataSource]="dataSource">
<ng-container matColumnDef="transactionDate">
<th mat-header-cell *matHeaderCellDef>{{"labels.inputs.Transaction Date | translate}}</th>
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Transaction Date' | translate }}</th>
<td mat-cell *matCellDef="let transaction">{{ transaction.transferDate | dateFormat }}</td>
</ng-container>
@@ -43,7 +43,7 @@
</ng-container>
<ng-container matColumnDef="notes">
<th mat-header-cell *matHeaderCellDef>{{"labels.inputs.Notes | translate}}</th>
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.Notes' | translate }}</th>
<td mat-cell *matCellDef="let transaction">{{ transaction.transferDescription }}</td>
</ng-container>
@@ -1,7 +1,9 @@
/** Angular Imports */
import { Component, ViewChild } from '@angular/core';
import { MatPaginator } from '@angular/material/paginator';
import { MatTableDataSource } from '@angular/material/table';
import { ActivatedRoute } from '@angular/router';
/**
@@ -1,6 +1,6 @@
<form [formGroup]="makeAccountTransferForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="98%" (click)="transferDatePicker.open()">
<div class="layout-row-wrap gap-2px responsive-column">
<mat-form-field class="flex-98" (click)="transferDatePicker.open()">
<mat-label>{{ 'labels.inputs.Transaction Date' | translate }}</mat-label>
<input
matInput
@@ -18,27 +18,27 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Bank' | translate }}</mat-label>
<input matInput formControlName="toBank" />
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Client' | translate }}</mat-label>
<input matInput formControlName="toClientId" />
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Account Type' | translate }}</mat-label>
<input matInput formControlName="toAccountType" />
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Account' | translate }}</mat-label>
<input matInput formControlName="toAccountId" />
</mat-form-field>
<mat-form-field fxFlex="98%" class="error-warn">
<mat-form-field class="flex-98 error-warn">
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input #amntInput type="number" matInput required formControlName="transferAmount" />
<mat-error *ngIf="makeAccountTransferForm.controls.transferAmount.hasError('required')">
@@ -51,7 +51,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Description' | translate }}</mat-label>
<textarea matInput formControlName="transferDescription" cdkTextareaAutosize cdkAutosizeMinRows="2"></textarea>
<mat-error *ngIf="makeAccountTransferForm.controls.transferDescription.hasError('required')">
@@ -1,8 +1,6 @@
import { Component, Input } from '@angular/core';
import { FormGroup } from '@angular/forms';
import { MatInput } from '@angular/material/input';
@Component({
selector: 'mifosx-make-account-interbank-transfers',
templateUrl: './make-account-interbank-transfers.component.html',
@@ -7,47 +7,47 @@
</div>
<mat-card *ngIf="!isLoading">
<mat-card-content>
<div fxLayout="row wrap" fxLayout.lt-md="column">
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Transferring From Details' | translate }}</h3>
<div class="layout-row-wrap responsive-column">
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Transferring From Details' | translate }}</h3>
<mat-divider [inset]="true"></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Applicant' | translate }}</span>
<span fxFlex="60%">{{ accountTransferTemplateData.fromClient.displayName }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Applicant' | translate }}</span>
<span class="flex-60">{{ accountTransferTemplateData.fromClient.displayName }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Office' | translate }}</span>
<span fxFlex="60%">{{ accountTransferTemplateData.fromOffice.name }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Office' | translate }}</span>
<span class="flex-60">{{ accountTransferTemplateData.fromOffice.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.From Account' | translate }}</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.From Account' | translate }}</span>
<span class="flex-60"
>{{ accountTransferTemplateData.fromAccount.productName }}&nbsp;-&nbsp;#{{
accountTransferTemplateData.fromAccount.accountNo
}}</span
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.From Account Type' | translate }}</span>
<span fxFlex="60%">{{ accountTransferTemplateData.fromAccountType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.From Account Type' | translate }}</span>
<span class="flex-60">{{ accountTransferTemplateData.fromAccountType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Currency' | translate }}</span>
<span fxFlex="60%">{{ accountTransferTemplateData.currency.name }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Currency' | translate }}</span>
<span class="flex-60">{{ accountTransferTemplateData.currency.name }}</span>
</div>
</div>
<div *ngIf="interbank">
<div fxFlexFill>
<h3 class="mat-h3" fxFlex="40%" fxLayoutAlign="start center">
<div class="flex-fill">
<h3 class="mat-h3 flex-40 align-start-center">
{{ 'labels.heading.Transferred To' | translate }}
</h3>
<mat-form-field fxFlex="40%">
<mat-form-field class="flex-40">
<mat-label>{{ 'labels.inputs.Phone Number' | translate }}</mat-label>
<input
matInput
@@ -62,13 +62,7 @@
</mat-form-field>
</div>
<mat-card-actions
*ngIf="!interbankTransferForm"
fxLayout="row"
fxLayout.xs="column"
fxLayoutAlign="center"
fxLayoutGap="5px"
>
<mat-card-actions *ngIf="!interbankTransferForm" class="layout-row align-center gap-5px responsive-column">
<button type="button" mat-raised-button [routerLink]="['../..']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -88,8 +82,8 @@
<mat-divider [inset]="true"></mat-divider>
<form *ngIf="!interbank" [formGroup]="makeAccountTransferForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-form-field fxFlex="98%" (click)="transferDatePicker.open()">
<div class="layout-row-wrap gap-2px responsive-column">
<mat-form-field class="flex-98" (click)="transferDatePicker.open()">
<mat-label>{{ 'labels.inputs.Transaction Date' | translate }}</mat-label>
<input
matInput
@@ -107,7 +101,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Office' | translate }}</mat-label>
<mat-select required formControlName="toOfficeId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toOfficeType of toOfficeTypeData" [value]="toOfficeType.id">
@@ -120,7 +114,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Client' | translate }}</mat-label>
<input matInput formControlName="toClientId" [matAutocomplete]="clientsAutocomplete" />
<mat-error *ngIf="makeAccountTransferForm.controls.toClientId.hasError('required')">
@@ -135,7 +129,7 @@
</mat-option>
</mat-autocomplete>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Account Type' | translate }}</mat-label>
<mat-select required formControlName="toAccountType" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toAccountType of toAccountTypeData" [value]="toAccountType.id">
@@ -148,7 +142,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Account' | translate }}</mat-label>
<mat-select required formControlName="toAccountId" (selectionChange)="changeEvent()">
<mat-option *ngFor="let toAccount of toAccountData" [value]="toAccount.id">
@@ -161,7 +155,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input type="number" matInput required formControlName="transferAmount" />
<mat-error *ngIf="makeAccountTransferForm.controls.transferAmount.hasError('required')">
@@ -174,7 +168,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="98%">
<mat-form-field class="flex-98">
<mat-label>{{ 'labels.inputs.Description' | translate }}</mat-label>
<textarea
matInput
@@ -196,13 +190,7 @@
></mifosx-make-account-interbank-transfers>
</mat-card-content>
<mat-card-actions
*ngIf="!interbank === !interbankTransferForm"
fxLayout="row"
fxLayout.xs="column"
fxLayoutAlign="center"
fxLayoutGap="5px"
>
<mat-card-actions *ngIf="!interbankTransferForm" class="layout-row align-center gap-5px responsive-column">
<button type="button" mat-raised-button [routerLink]="['../..']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -15,7 +15,6 @@ import { AccountTransfersService } from '../account-transfers.service';
import { SettingsService } from 'app/settings/settings.service';
import { ClientsService } from 'app/clients/clients.service';
import { Dates } from 'app/core/utils/dates';
import { MatInput } from '@angular/material/input';
/** Environment Configuration */
import { environment } from 'environments/environment';
@@ -1,5 +1,5 @@
<div class="container">
<div fxLayoutAlign="end" class="container m-b-20" fxLayoutGap="2%">
<div class="container m-b-20 align-end gap-2px">
<span *ngIf="!viewAccountTransferData.reversed">
<button mat-raised-button color="warn" *mifosxHasPermission="'ADJUST_ACCOUNTTRANSFER'">
<fa-icon icon="undo" class="m-r-10"></fa-icon>{{ 'labels.buttons.Undo' | translate }}
@@ -9,16 +9,16 @@
<mat-card>
<mat-card-content>
<div fxLayout="row wrap" fxLayout.lt-md="column">
<div fxFlex="100%" [ngClass]="transactionColor()"></div>
<div class="layout-row-wrap responsive-column">
<div class="flex-100" [ngClass]="transactionColor()"></div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Transaction Details' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Transaction Details' | translate }}</h3>
<mat-divider [inset]="true"></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Transaction Amount' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Transaction Amount' | translate }}:</span>
<span class="flex-60"
>{{ viewAccountTransferData.currency.displaySymbol }}
{{ viewAccountTransferData.transferAmount | formatNumber }} ({{
viewAccountTransferData.currency.code
@@ -26,66 +26,66 @@
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Transaction Date' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.transferDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Transaction Date' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.transferDate | dateFormat }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Destination' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.transferDescription }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Destination' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.transferDescription }}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Transferred From' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Transferred From' | translate }}</h3>
<mat-divider [inset]="true"></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Office' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.fromOffice.name }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Office' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.fromOffice.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Client' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.fromClient.displayName }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Client' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.fromClient.displayName }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Account Type' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.fromAccountType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Account Type' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.fromAccountType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Account No' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.fromAccount.accountNo }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Account No' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.fromAccount.accountNo }}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Transferred To' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Transferred To' | translate }}</h3>
<mat-divider [inset]="true"></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Office' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.toOffice.name }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Office' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.toOffice.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Client' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Client' | translate }}:</span>
<span class="flex-60"
><a [href]="transferToClient(viewAccountTransferData.toClient)">
{{ viewAccountTransferData.toClient.displayName }}</a
>
</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Account Type' | translate }}:</span>
<span fxFlex="60%">{{ viewAccountTransferData.toAccountType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Account Type' | translate }}:</span>
<span class="flex-60">{{ viewAccountTransferData.toAccountType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Account No' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Account No' | translate }}:</span>
<span class="flex-60"
><a [href]="transferToAccount(viewAccountTransferData.toClient, viewAccountTransferData.toAccount)">
{{ viewAccountTransferData.toAccount.accountNo }}</a
>
@@ -94,7 +94,7 @@
</div>
</mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px">
<mat-card-actions class="layout-row align-center gap-5px responsive-column">
<button type="button" color="primary" mat-raised-button (click)="goBack()">
{{ 'labels.buttons.Back' | translate }}
</button>
@@ -1,4 +1,4 @@
<div fxLayout="row" fxLayoutAlign="end" fxLayoutGap="2%" fxLayout.lt-md="column" class="container m-b-20">
<div class="layout-row align-end gap-2px responsive-column container m-b-20">
<button mat-raised-button color="primary" [routerLink]="['../', 'edit']">
<fa-icon icon="edit" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Edit' | translate }}
@@ -16,111 +16,111 @@
<div class="container">
<mat-card>
<mat-card-content>
<div fxLayout="row wrap" fxLayout.lt-md="column">
<h2 class="mat-h2" fxFlexFill>{{ standingInstructionsData.name }}</h2>
<div class="layout-row-wrap responsive-column">
<h2 class="mat-h2 flex-fill">{{ standingInstructionsData.name }}</h2>
<mat-divider [inset]="true"></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Applicant' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.fromClient.displayName }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Applicant' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.fromClient.displayName }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Type' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.transferType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Type' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.transferType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Priority' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.priority.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Priority' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.priority.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Status' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.status.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Status' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.status.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.From Account Type' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.fromAccountType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.From Account Type' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.fromAccountType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.From Account' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.From Account' | translate }}:</span>
<span class="flex-60"
>{{ standingInstructionsData.fromAccount.productName }} -
{{ standingInstructionsData.fromAccount.accountNo }}</span
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Destination' | translate }}:</span>
<span fxFlex="60%">
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Destination' | translate }}:</span>
<span class="flex-60">
<span *ngIf="allowclientedit"> {{ 'labels.inputs.Within Bank' | translate }} </span>
<span *ngIf="!allowclientedit"> {{ 'labels.inputs.Own Account' | translate }} </span>
</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.To Office' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.toOffice.name }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.To Office' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.toOffice.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Beneficiary' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.toClient.displayName }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Beneficiary' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.toClient.displayName }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.To Account Type' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.toAccountType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.To Account Type' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.toAccountType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.To Account' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.To Account' | translate }}:</span>
<span class="flex-60"
>{{ standingInstructionsData.toAccount.productName }} -
{{ standingInstructionsData.toAccount.accountNo }}</span
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Standing Instruction Type' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.instructionType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Standing Instruction Type' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.instructionType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Amount' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.amount }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Amount' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.amount }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Validity' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Validity' | translate }}:</span>
<span class="flex-60"
>{{ standingInstructionsData.validFrom | dateFormat }} -
{{ standingInstructionsData.validTill | dateFormat }}</span
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Recurrence Type' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.recurrenceType.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Recurrence Type' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.recurrenceType.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interval' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.recurrenceInterval }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interval' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.recurrenceInterval }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Recurrence Frequency' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.recurrenceFrequency.value }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Recurrence Frequency' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.recurrenceFrequency.value }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.On Month Day' | translate }}:</span>
<span fxFlex="60%">{{ standingInstructionsData.recurrenceOnMonthDay | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.On Month Day' | translate }}:</span>
<span class="flex-60">{{ standingInstructionsData.recurrenceOnMonthDay | dateFormat }}</span>
</div>
</div>
</mat-card-content>