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 { FixedDepositsService } from '../fixed-deposits.service';
* Fixed Deposits Account Actions data resolver.
*/
@Injectable()
export class FixedDepositsAccountActionsResolver implements Resolve<Object> {
export class FixedDepositsAccountActionsResolver {
/**
* @param {SavingsService} SavingsService Savings service.
* @param {FixedDepositsService} fixedDepositsService Fixed Deposits 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 { FixedDepositsService } from '../fixed-deposits.service';
* Fixed Deposits Account Template resolver.
*/
@Injectable()
export class FixedDepositsAccountAndTemplateResolver implements Resolve<Object> {
export class FixedDepositsAccountAndTemplateResolver {
/**
* @param {FixedDepositsService} fixedDepositsService Fixed Deposits 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 { FixedDepositsService } from '../fixed-deposits.service';
* Fixed Deposits Account Template resolver.
*/
@Injectable()
export class FixedDepositsAccountTemplateResolver implements Resolve<Object> {
export class FixedDepositsAccountTemplateResolver {
/**
* @param {FixedDepositsService} fixedDepositsService Fixed Deposits 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 { FixedDepositsService } from '../fixed-deposits.service';
* Fixed Deposits Account Transaction data resolver.
*/
@Injectable()
export class FixedDepositsAccountTransactionResolver implements Resolve<Object> {
export class FixedDepositsAccountTransactionResolver {
/**
* @param {FixedDepositsService} fixedDepositsService 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 { FixedDepositsService } from 'app/deposits/fixed-deposits/fixed-deposits
* Fixed Deposits Account data resolver.
*/
@Injectable()
export class FixedDepositsAccountViewResolver implements Resolve<Object> {
export class FixedDepositsAccountViewResolver {
/**
* @param {FixedDepositsService} fixedDepositsService Fixed Deposits service.
*/
@@ -1,5 +1,5 @@
<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.Charge' | translate }}</mat-label>
<mat-select #charge>
<mat-option *ngFor="let charge of chargeData" [value]="charge">
@@ -8,7 +8,7 @@
</mat-select>
</mat-form-field>
<div fxFlex="48%" fxFlexAlign="center">
<div class="flex-48 align-center">
<button type="button" mat-raised-button color="primary" (click)="addCharge(charge)" [disabled]="!charge.value">
<fa-icon icon="plus" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Add' | translate }}
@@ -16,8 +16,7 @@
</div>
<table
fxFlex="98%"
class="mat-elevation-z1"
class="flex-98 mat-elevation-z1"
mat-table
[dataSource]="chargesDataSource"
[hidden]="chargesDataSource.length === 0"
@@ -120,7 +119,7 @@
</table>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,6 +1,6 @@
<form [formGroup]="fixedDepositAccountDetailsForm">
<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.Product Name' | translate }}</mat-label>
<mat-select formControlName="productId" required>
<mat-option *ngFor="let product of productData" [value]="product.id">
@@ -13,7 +13,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="submittedOnDatePicker.open()" *ngIf="isProductSelected">
<mat-form-field class="flex-48" (click)="submittedOnDatePicker.open()" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.Submitted On' | translate }}</mat-label>
<input
matInput
@@ -31,7 +31,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" *ngIf="isProductSelected">
<mat-form-field class="flex-48" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.Field Officer' | translate }}</mat-label>
<mat-select formControlName="fieldOfficerId">
<mat-option *ngFor="let officer of fieldOfficerData" [value]="officer.id">
@@ -40,13 +40,13 @@
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="48%" *ngIf="isProductSelected">
<mat-form-field class="flex-48" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.External id' | translate }}</mat-label>
<input matInput formControlName="externalId" matTooltip="{{ 'tooltips.Provides an external id' | translate }}" />
</mat-form-field>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious disabled>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,27 +1,27 @@
<div fxLayout="column" fxLayoutGap="2%">
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.name">
<span fxFlex="40%">{{ 'labels.inputs.name' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.accountChart.name }}</span>
<div class="layout-column gap-2px">
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.name">
<span class="flex-40">{{ 'labels.inputs.name' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate.accountChart.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.endDate">
<span fxFlex="40%">{{ 'labels.inputs.End Date' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.endDate">
<span class="flex-40">{{ 'labels.inputs.End Date' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.description">
<span fxFlex="40%">{{ 'labels.inputs.Description' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.description }}</span>
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.description">
<span class="flex-40">{{ 'labels.inputs.Description' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.description }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span class="flex-60">{{
fixedDepositsAccountProductTemplate?.accountChart.isPrimaryGroupingByAmount ? 'Yes' : 'No'
}}</span>
</div>
@@ -76,19 +76,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="incentives layout-row-wrap flex-fill"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="flex-fill mat-elevation-z1"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives.length"
@@ -149,7 +146,7 @@
</table>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,68 +1,65 @@
<div fxLayout="row wrap" fxLayout.lt-md="column">
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Details' | translate }}</h3>
<div class="layout-row-wrap responsive-column">
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Details' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Product' | translate }}</span>
<span fxFlex="60%">{{
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Product' | translate }}</span>
<span class="flex-60">{{
fixedDepositAccountData.productId | find: fixedDepositsAccountTemplate.productOptions : 'id' : 'name'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Submitted On' | translate }}</span>
<span fxFlex="60%">{{ fixedDepositAccountData.submittedOnDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Submitted On' | translate }}</span>
<span class="flex-60">{{ fixedDepositAccountData.submittedOnDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositAccountData.externalId">
<span fxFlex="40%">{{ 'labels.inputs.External Id' | translate }}</span>
<span fxFlex="60%">{{ fixedDepositAccountData.externalId }}</span>
<div class="flex-fill" *ngIf="fixedDepositAccountData.externalId">
<span class="flex-40">{{ 'labels.inputs.External Id' | translate }}</span>
<span class="flex-60">{{ fixedDepositAccountData.externalId }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Field Officer' | translate }}</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Field Officer' | translate }}</span>
<span class="flex-60">{{
(fixedDepositAccountData.fieldOfficerId
| find: fixedDepositsAccountProductTemplate.fieldOfficerOptions : 'id' : 'displayName') || 'Unassigned'
| translateKey: 'inputs'
}}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Currency' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Currency' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Currency' | translate }}</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.currency.code }}</span>
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Currency' | translate }}</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate.currency.code }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Currency Multiple' | translate }}</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.currency.inMultiplesOf }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Currency Multiple' | translate }}</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate.currency.inMultiplesOf }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Decimal Places' | translate }}</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.currency.decimalPlaces }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Decimal Places' | translate }}</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate.currency.decimalPlaces }}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Terms' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Terms' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Fixed Deposit Amount' | translate }}:</span>
<span fxFlex="60%">{{
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Fixed Deposit Amount' | translate }}:</span>
<span class="flex-60">{{
fixedDepositAccountData.depositAmount
| currency: fixedDepositsAccountProductTemplate.currency.code : 'symbol-narrow' : '1.2-2'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Deposit Period' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Deposit Period' | translate }}:</span>
<span class="flex-60"
>{{ fixedDepositAccountData.depositPeriod }}
{{
fixedDepositAccountData.depositPeriodFrequencyId
@@ -72,49 +69,48 @@
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Compounding Period' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Compounding Period' | translate }}:</span>
<span class="flex-60">{{
fixedDepositAccountData.interestCompoundingPeriodType
| find: fixedDepositsAccountProductTemplate.interestCompoundingPeriodTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Posting Period' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Posting Period' | translate }}:</span>
<span class="flex-60">{{
fixedDepositAccountData.interestPostingPeriodType
| find: fixedDepositsAccountProductTemplate.interestPostingPeriodTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Calculated using' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Calculated using' | translate }}:</span>
<span class="flex-60">{{
fixedDepositAccountData.interestCalculationType
| find: fixedDepositsAccountProductTemplate.interestCalculationTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Days in Year' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Days in Year' | translate }}:</span>
<span class="flex-60">{{
fixedDepositAccountData.interestCalculationDaysInYearType
| find: fixedDepositsAccountProductTemplate.interestCalculationDaysInYearTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Settings' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Settings' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill *ngIf="fixedDepositAccountData.lockinPeriodFrequency">
<span fxFlex="40%">{{ 'labels.inputs.Lock-in Period' | translate }}:</span>
<span fxFlex="60%"
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill" *ngIf="fixedDepositAccountData.lockinPeriodFrequency">
<span class="flex-40">{{ 'labels.inputs.Lock-in Period' | translate }}:</span>
<span class="flex-60"
>{{ fixedDepositAccountData.lockinPeriodFrequency }}
{{
fixedDepositAccountData.lockinPeriodFrequencyType
@@ -124,60 +120,60 @@
>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate.minDepositTerm">
<span fxFlex="40%">{{ 'labels.inputs.Minimum Deposit Term' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate.minDepositTerm">
<span class="flex-40">{{ 'labels.inputs.Minimum Deposit Term' | translate }}:</span>
<span class="flex-60"
>{{ fixedDepositsAccountProductTemplate.minDepositTerm }}
{{ fixedDepositsAccountProductTemplate.minDepositTermType?.value | translateKey: 'catalogs' }}</span
>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate.inMultiplesOfDepositTerm">
<span fxFlex="40%">{{ 'labels.inputs.In Multiples Of' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate.inMultiplesOfDepositTerm">
<span class="flex-40">{{ 'labels.inputs.In Multiples Of' | translate }}:</span>
<span class="flex-60"
>{{ fixedDepositsAccountProductTemplate.inMultiplesOfDepositTerm }}
{{ fixedDepositsAccountProductTemplate.inMultiplesOfDepositTermType?.value | translateKey: 'catalogs' }}</span
>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate.maxDepositTerm">
<span fxFlex="40%">{{ 'labels.inputs.Maximum Deposit Term' | translate }}</span>
<span fxFlex="60%"
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate.maxDepositTerm">
<span class="flex-40">{{ 'labels.inputs.Maximum Deposit Term' | translate }}</span>
<span class="flex-60"
>{{ fixedDepositsAccountProductTemplate.maxDepositTerm }}
{{ fixedDepositsAccountProductTemplate.maxDepositTermType?.value | translateKey: 'catalogs' }}</span
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Transfer Interest to Savings Account' | translate }}?</span>
<span fxFlex="60%">{{ fixedDepositAccountData.transferInterestToSavings | yesNo }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Transfer Interest to Savings Account' | translate }}?</span>
<span class="flex-60">{{ fixedDepositAccountData.transferInterestToSavings | yesNo }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositAccountData.transferInterestToSavings">
<span fxFlex="40%">{{ 'labels.inputs.Linked Savings Account' | translate }}</span>
<span fxFlex="60%">{{
<div class="flex-fill" *ngIf="fixedDepositAccountData.transferInterestToSavings">
<span class="flex-40">{{ 'labels.inputs.Linked Savings Account' | translate }}</span>
<span class="flex-60">{{
fixedDepositAccountData.linkAccountId
| find: fixedDepositsAccountProductTemplate.savingsAccounts : 'id' : 'accountNo'
}}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositAccountData.maturityInstructionId">
<span fxFlex="40%">{{ 'labels.inputs.Maturity Instructions' | translate }}</span>
<span fxFlex="60%">{{
<div class="flex-fill" *ngIf="fixedDepositAccountData.maturityInstructionId">
<span class="flex-40">{{ 'labels.inputs.Maturity Instructions' | translate }}</span>
<span class="flex-60">{{
fixedDepositAccountData.maturityInstructionId
| find: fixedDepositsAccountProductTemplate.maturityInstructionOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Apply Penal Interest (less)' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate.preClosurePenalApplicable | yesNo }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Apply Penal Interest (less)' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate.preClosurePenalApplicable | yesNo }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate.preClosurePenalApplicable">
<span fxFlex="40%">{{ 'labels.inputs.Penal Interest' | translate }} (%):</span>
<span fxFlex="60%">{{
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate.preClosurePenalApplicable">
<span class="flex-40">{{ 'labels.inputs.Penal Interest' | translate }} (%):</span>
<span class="flex-60">{{
fixedDepositsAccountProductTemplate.preClosurePenalInterest +
'% (' +
fixedDepositsAccountProductTemplate.preClosurePenalInterestOnType?.id +
@@ -185,39 +181,38 @@
}}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate.withHoldTax">
<span fxFlex="40%">{{ 'labels.inputs.Withhold Tax is Applicable' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositAccountData.withHoldTax | yesNo }}</span>
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate.withHoldTax">
<span class="flex-40">{{ 'labels.inputs.Withhold Tax is Applicable' | translate }}:</span>
<span class="flex-60">{{ fixedDepositAccountData.withHoldTax | yesNo }}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Interest Rate Chart' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Interest Rate Chart' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div class="margin-b" fxFlexFill fxLayout="column">
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.name">
<span fxFlex="40%">{{ 'labels.inputs.name' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.name }}</span>
<mat-divider class="flex-fill"></mat-divider>
<div class="margin-b layout-column flex-fill">
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.name">
<span class="flex-40">{{ 'labels.inputs.name' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.endDate">
<span fxFlex="40%">{{ 'labels.inputs.End Date' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.endDate">
<span class="flex-40">{{ 'labels.inputs.End Date' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="fixedDepositsAccountProductTemplate?.accountChart.description">
<span fxFlex="40%">{{ 'labels.inputs.Description' | translate }}:</span>
<span fxFlex="60%">{{ fixedDepositsAccountProductTemplate?.accountChart.description }}</span>
<div class="flex-fill" *ngIf="fixedDepositsAccountProductTemplate?.accountChart.description">
<span class="flex-40">{{ 'labels.inputs.Description' | translate }}:</span>
<span class="flex-60">{{ fixedDepositsAccountProductTemplate?.accountChart.description }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span class="flex-60">{{
fixedDepositsAccountProductTemplate?.accountChart.isPrimaryGroupingByAmount | yesNo
}}</span>
</div>
@@ -276,19 +271,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="layout-row-wrap flex-fill incentives"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="flex-fill mat-elevation-z1"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives.length"
@@ -349,12 +341,11 @@
</table>
</div>
<div fxFlexFill *ngIf="fixedDepositAccountData.charges.length" fxLayout="row wrap" fxLayout.lt-md="column">
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Charges' | translate }}</h3>
<div *ngIf="fixedDepositAccountData.charges.length" class="layout-row-wrap responsive-column flex-fill">
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Charges' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<table fxFlexFill class="mat-elevation-z1" mat-table [dataSource]="fixedDepositAccountData.charges">
<mat-divider class="flex-fill"></mat-divider>
<table class="flex-fill mat-elevation-z1" mat-table [dataSource]="fixedDepositAccountData.charges">
<ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.name' | translate }}</th>
<td mat-cell *matCellDef="let charge">
@@ -422,7 +413,7 @@
</div>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,13 +1,13 @@
<form [formGroup]="fixedDepositAccountSettingsForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Lock-in Period' | translate }}</h4>
<div class="layout-row-wrap gap-2px responsive-column">
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Lock-in Period' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="lockinPeriodFrequency" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="lockinPeriodFrequencyType">
<mat-option
@@ -19,9 +19,9 @@
</mat-select>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Minimum Deposit Term' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Minimum Deposit Term' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="minDepositTerm" required />
<mat-error>
@@ -30,7 +30,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency Type' | translate }}</mat-label>
<mat-select formControlName="minDepositTermTypeId" required>
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -43,14 +43,14 @@
</mat-error>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.And thereafter, in Multiples of' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.And thereafter, in Multiples of' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="inMultiplesOfDepositTerm" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="inMultiplesOfDepositTermTypeId">
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -59,14 +59,14 @@
</mat-select>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Maximum Deposit Term' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Maximum Deposit Term' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="maxDepositTerm" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="maxDepositTermTypeId">
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -75,15 +75,15 @@
</mat-select>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<h3 fxFlex="23%" class="mat-h3">{{ 'labels.heading.Interest Transfer' | translate }}</h3>
<h3 class="mat-h3 flex-23">{{ 'labels.heading.Interest Transfer' | translate }}</h3>
<mat-checkbox fxFlex="32%" labelPosition="before" formControlName="transferInterestToSavings" class="margin-b">
<mat-checkbox class="flex-32 margin-b" labelPosition="before" formControlName="transferInterestToSavings">
{{ 'labels.inputs.Transfer Interest to Linked Savings Account' | translate }}?
</mat-checkbox>
<mat-form-field fxFlex="48%" *ngIf="fixedDepositAccountSettingsForm.contains('linkAccountId')" class="margin-b">
<mat-form-field *ngIf="fixedDepositAccountSettingsForm.contains('linkAccountId')" class="margin-b flex-48">
<mat-label>{{ 'labels.inputs.Linked Savings Account' | translate }}</mat-label>
<mat-select formControlName="linkAccountId" required>
<mat-option *ngFor="let account of savingsAccountsData" [value]="account.id">
@@ -96,9 +96,9 @@
</mat-error>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Maturity Instructions' | translate }}</mat-label>
<mat-select formControlName="maturityInstructionId">
<mat-option *ngFor="let maturityInstruction of maturityInstructionOptions" [value]="maturityInstruction.id">
@@ -107,11 +107,7 @@
</mat-select>
</mat-form-field>
<mat-form-field
fxFlex="48%"
*ngIf="fixedDepositAccountSettingsForm.contains('transferToSavingsId')"
class="margin-b"
>
<mat-form-field class="flex-48 margin-b" *ngIf="fixedDepositAccountSettingsForm.contains('transferToSavingsId')">
<mat-label>{{ 'labels.inputs.Transfer to savings account' | translate }}</mat-label>
<mat-select formControlName="transferToSavingsId" required>
<mat-option *ngFor="let account of savingsAccountsData" [value]="account.id">
@@ -124,20 +120,20 @@
</mat-error>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<h4 fxFlex="23%" class="mat-h4">{{ 'labels.heading.For Pre-mature closure' | translate }}</h4>
<h4 class="mat-h4 flex-23">{{ 'labels.heading.For Pre-mature closure' | translate }}</h4>
<mat-checkbox fxFlex="73%" labelPosition="before" formControlName="preClosurePenalApplicable" class="margin-v">
<mat-checkbox class="flex-73 margin-v" labelPosition="before" formControlName="preClosurePenalApplicable">
{{ 'labels.inputs.Apply Penal Interest (less)' | translate }}
</mat-checkbox>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Penal Interest' | translate }} (%)</mat-label>
<input type="number" matInput formControlName="preClosurePenalInterest" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Period' | translate }}</mat-label>
<mat-select formControlName="preClosurePenalInterestOnTypeId">
<mat-option
@@ -150,20 +146,20 @@
</mat-form-field>
<ng-container *ngIf="fixedDepositAccountSettingsForm.controls.withHoldTax">
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<mat-checkbox fxFlex="48%" labelPosition="before" formControlName="withHoldTax" class="margin-p">
<mat-checkbox labelPosition="before" formControlName="withHoldTax" class="margin-p flex-48">
{{ 'labels.inputs.Is Withhold Tax Applicable' | translate }}?
</mat-checkbox>
<mat-form-field fxFlex="48%" *ngIf="fixedDepositAccountSettingsForm.controls.taxGroupId" class="p-b-25">
<mat-form-field *ngIf="fixedDepositAccountSettingsForm.controls.taxGroupId" class="p-b-25 flex-48">
<mat-label>{{ 'labels.inputs.Tax Group' | translate }}</mat-label>
<input matInput formControlName="taxGroupId" />
</mat-form-field>
</ng-container>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,18 +1,18 @@
<form [formGroup]="fixedDepositAccountTermsForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<div class="layout-row-wrap gap-2px responsive-column">
<mifosx-input-amount
[currency]="currency"
[isRequired]="true"
*ngIf="currency"
fxFlex="48%"
class="flex-48"
[inputFormControl]="fixedDepositAccountTermsForm.controls.depositAmount"
[inputLabel]="'Deposit Amount'"
>
</mifosx-input-amount>
<span fxFlex="48%" fxHide.lt-md></span>
<span class="flex-48 hide-lt-md"></span>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Deposit Period' | translate }}</mat-label>
<input type="number" matInput formControlName="depositPeriod" required />
<mat-error>
@@ -21,7 +21,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Deposit Period Type' | translate }}</mat-label>
<mat-select formControlName="depositPeriodFrequencyId" required>
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -34,9 +34,9 @@
</mat-error>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interest Compounding Period' | translate }}</mat-label>
<mat-select formControlName="interestCompoundingPeriodType" required>
<mat-option
@@ -52,7 +52,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interest Posting Period' | translate }}</mat-label>
<mat-select formControlName="interestPostingPeriodType" required>
<mat-option
@@ -68,7 +68,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interest Calculated using' | translate }}</mat-label>
<mat-select formControlName="interestCalculationType" required>
<mat-option
@@ -84,7 +84,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Days in Year' | translate }}</mat-label>
<mat-select formControlName="interestCalculationDaysInYearType" required>
<mat-option
@@ -101,7 +101,7 @@
</mat-form-field>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,5 +1,5 @@
<div class="tab-container mat-typography">
<div fxLayout="row" fxLayoutAlign="start">
<div class="layout-row align-start">
<div class="m-b-10">
<h3>{{ 'labels.heading.All Charges' | translate }}</h3>
</div>
@@ -1,5 +1,5 @@
<mat-card class="account-card">
<mat-card-header fxLayout="column" class="header">
<mat-card-header class="header layout-column">
<mat-card-title-group class="header-title-group">
<div class="profile-image-container">
<div>
@@ -14,7 +14,7 @@
<div class="mat-typography account-card-title">
<mat-card-title>
<div fxFlex="60%">
<div class="flex-60">
<h3>
<i
class="fa fa-stop"
@@ -40,15 +40,14 @@
*ngIf="
!fixedDepositsAccountData.status.rejected && !fixedDepositsAccountData.status.submittedAndPendingApproval
"
fxFlex="30%"
fxLayout="column"
class="layout-column flex-30"
>
<h3 fxFlex="100%">{{ 'labels.heading.Account Overview' | translate }}</h3>
<table class="account-overview" fxFlex="100%">
<h3 class="flex-100">{{ 'labels.heading.Account Overview' | translate }}</h3>
<table class="account-overview flex-100">
<tbody>
<tr>
<td fxFlex="70%">{{ 'labels.inputs.Current Balance' | translate }}</td>
<td fxFlex="30%" class="r-amount">
<td class="flex-70">{{ 'labels.inputs.Current Balance' | translate }}</td>
<td class="r-amount flex-30">
{{
fixedDepositsAccountData.summary.accountBalance
| currency: currency.code : 'symbol-narrow' : '1.2-2'
@@ -56,8 +55,8 @@
</td>
</tr>
<tr>
<td fxFlex="70%">{{ 'labels.inputs.Deposit Amount' | translate }}</td>
<td fxFlex="30%" class="r-amount">
<td class="flex-70">{{ 'labels.inputs.Deposit Amount' | translate }}</td>
<td class="r-amount flex-30">
{{ fixedDepositsAccountData.depositAmount | currency: currency.code : 'symbol-narrow' : '1.2-2' }}
</td>
</tr>
@@ -65,9 +64,8 @@
</table>
</div>
<span fxFlex="auto"></span>
<div fxFlex="5%">
<span class="flex-auto"></span>
<div class="flex-5">
<button
mat-icon-button
[matMenuTriggerFor]="accountMenu"
@@ -102,7 +100,7 @@
</mat-card-header>
<mat-card-content class="content">
<nav mat-tab-nav-bar class="navigation-tabs">
<nav mat-tab-nav-bar class="navigation-tabs" [tabPanel]="tabPanel">
<a
mat-tab-link
[routerLink]="['./general']"
@@ -165,6 +163,8 @@
</ng-container>
</nav>
<router-outlet></router-outlet>
<mat-tab-nav-panel #tabPanel>
<router-outlet></router-outlet>
</mat-tab-nav-panel>
</mat-card-content>
</mat-card>
@@ -1,5 +1,5 @@
<div class="fixed-deposits-account-tables" fxLayout="row" fxLayoutGap="2%">
<div fxFlex="49%" fxLayout="column" fxLayoutGap="4%">
<div class="fixed-deposits-account-tables layout-row gap-2percent">
<div class="flex-49 layout-column gap-4percent">
<div>
<h4 class="table-headers">{{ 'labels.heading.Fixed Deposit Details' | translate }}</h4>
<table>
@@ -104,7 +104,7 @@
</div>
</div>
<div fxFlex="49%">
<div class="flex-49">
<div
*ngIf="
!fixedDepositsAccountData.status.rejected && !fixedDepositsAccountData.status.submittedAndPendingApproval;
@@ -1,5 +1,5 @@
<div class="tab-container mat-typography">
<div fxLayoutAlign="start">
<div class="align-start-center">
<div class="m-b-20">
<h3>{{ 'labels.heading.All Interest Rates' | translate }}</h3>
</div>
@@ -60,19 +60,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="layout-row-wrap flex-fill incentives"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="flex-fill mat-elevation-z1"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives?.length"
@@ -1,10 +1,10 @@
<div class="tab-container mat-typography">
<div class="mat-elevation-z1 m-b-25">
<div fxLayout="row" fxLayoutAlign="start">
<div class="layout-row align-start">
<div class="m-b-20">
<h3>{{ 'labels.heading.All Transactions' | translate }}</h3>
</div>
<div class="action-button m-b-20" fxLayout="row" fxLayoutGap="20px" *ngIf="checkStatus()">
<div class="action-button m-b-20 layout-row gap-20px" *ngIf="checkStatus()">
<mat-checkbox [formControl]="hideReversedParam" (click)="hideReversed()" class="accruals">
{{ 'labels.inputs.Hide Reversed' | translate }}</mat-checkbox
>
@@ -1,4 +1,4 @@
<div fxLayoutAlign="end" class="container m-b-20" fxLayoutGap="2%">
<div class="container m-b-20 align-end-center gap-2percent">
<span *ngIf="allowUndo()">
<button
mat-raised-button
@@ -13,54 +13,54 @@
<div class="container">
<mat-card>
<mat-card-content>
<div fxLayout="row wrap" class="content">
<div fxFlex="100%" [ngClass]="transactionColor()"></div>
<div class="layout-row-wrap">
<div class="flex-100" [ngClass]="transactionColor()"></div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Transaction Id' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.id }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Type' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.transactionType.value }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Transaction Date' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.date | dateFormat }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Currency' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.currency.displayLabel }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Amount' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.amount | currency: transactionData.currency.code : 'symbol-narrow' : '1.2-2' }}
</div>
<div fxFlex="50%" *ngIf="transactionData.note" class="mat-body-strong">
<div class="flex-50 mat-body-strong" *ngIf="transactionData.note">
{{ 'labels.inputs.Note' | translate }}
</div>
<div fxFlex="50%" *ngIf="transactionData.note">
<div class="flex-50" *ngIf="transactionData.note">
{{ transactionData.note }}
</div>
@@ -71,7 +71,7 @@
</mifosx-transaction-payment-detail>
</div>
<div fxLayout="row" fxLayoutAlign="center" fxLayoutGap="2%" fxLayout.lt-md="column">
<div class="layout-row layout-align-center gap-2percent column-on-mobile">
<button type="button" mat-raised-button color="primary" [routerLink]="['../']">
{{ 'labels.buttons.Back' | translate }}
</button>
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="activateFixedDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<mat-form-field fxFlex (click)="activatedOnDatePicker.open()">
<mat-form-field class="flex-fill" (click)="activatedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Activated On Date' | translate }}</mat-label>
<input
matInput
@@ -21,7 +21,7 @@
</mat-form-field>
</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,7 +2,7 @@
<mat-card>
<form [formGroup]="fixedDepositsChargeForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field>
<mat-label>{{ 'labels.inputs.Charge' | translate }}</mat-label>
<mat-select required formControlName="chargeId">
@@ -16,7 +16,7 @@
</mat-error>
</mat-form-field>
<div *ngIf="chargeDetails" fxLayout="column">
<div *ngIf="chargeDetails" class="layout-column">
<mat-form-field>
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input type="number" required matInput formControlName="amount" />
@@ -93,7 +93,7 @@
</div>
</div>
<mat-card-actions fxLayoutGap="5px" fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center">
<mat-card-actions class="layout-row layout-xs-column layout-align-center gap-5px">
<button type="button" mat-raised-button [routerLink]="['../../']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="approveFixedDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="approvedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Approved On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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,7 +2,7 @@
<mat-card>
<form [formGroup]="closeOnMaturityAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="closedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Closed On Date' | translate }}</mat-label>
<input
@@ -64,7 +64,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>
@@ -5,7 +5,7 @@
</h2>
<form [formGroup]="accountTransactionForm" (ngSubmit)="submit()">
<mat-card-content fxLayout="column">
<mat-card-content class="layout-column">
<mat-form-field (click)="dueDatePicker.open()">
<mat-label>{{ 'labels.inputs.Transaction Date' | translate }}</mat-label>
<input
@@ -41,8 +41,8 @@
</mat-select>
</mat-form-field>
<div fxFlexFill>
<span fxFlex="75%" class="expandcollapsebutton m-l-10 m-t-40" (click)="addPaymentDetails()">
<div class="flex-fill">
<span class="expandcollapsebutton m-l-10 m-t-40 flex-75" (click)="addPaymentDetails()">
<mat-slide-toggle>
<div [className]="addPaymentDetailsFlag ? 'enabled' : 'disabled'">
<span class="m-l-10">{{ 'labels.inputs.Show Payment Details' | translate }}</span>
@@ -81,7 +81,7 @@
<textarea formControlName="note" matInput cdkTextareaAutosize cdkAutosizeMinRows="2"></textarea>
</mat-form-field>
<mat-card-actions fxLayoutGap="5px" fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center">
<mat-card-actions class="layout-row layout-xs-column layout-align-center gap-5px">
<button type="button" mat-raised-button [routerLink]="['../../transactions']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="prematureCloseAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="closedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Premature Close Date' | translate }}</mat-label>
<input
@@ -64,7 +64,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,7 +2,7 @@
<mat-card>
<form [formGroup]="rejectFixedDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="rejectedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Rejected On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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,13 +2,13 @@
<mat-card>
<form [formGroup]="undoApprovalFixedDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<mat-form-field fxFlex>
<mat-form-field class="flex-fill">
<mat-label>{{ 'labels.inputs.Note' | translate }}</mat-label>
<textarea matInput formControlName="note" cdkTextareaAutosize cdkAutosizeMinRows="2"></textarea>
</mat-form-field>
</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,7 +2,7 @@
<mat-card>
<form [formGroup]="withdrawFixedDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="withdrawnOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Withdrawn On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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>
@@ -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 { RecurringDepositsService } from '../recurring-deposits.service';
* Recurring Deposits Account Actions data resolver.
*/
@Injectable()
export class RecurringDepositsAccountActionsResolver implements Resolve<Object> {
export class RecurringDepositsAccountActionsResolver {
/**
* @param {SavingsService} SavingsService Savings service.
* @param {RecurringDepositsService} recurringDepositsService Recurring Deposits 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 { RecurringDepositsService } from '../recurring-deposits.service';
* Recurring Deposits Account Template resolver.
*/
@Injectable()
export class RecurringDepositsAccountAndTemplateResolver implements Resolve<Object> {
export class RecurringDepositsAccountAndTemplateResolver {
/**
* @param {RecurringDepositsService} recurringDepositsService Recurring Deposits 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 { RecurringDepositsService } from '../recurring-deposits.service';
* Recurring Deposits Account Transaction Template data resolver.
*/
@Injectable()
export class RecurringDepositsAccountTransactionTemplateResolver implements Resolve<Object> {
export class RecurringDepositsAccountTransactionTemplateResolver {
/**
* @param {RecurringDepositsService} recurringDepositsService Recurring Deposits 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 { RecurringDepositsService } from '../recurring-deposits.service';
* Recurring Deposits Account Transaction data resolver.
*/
@Injectable()
export class RecurringDepositsAccountTransactionResolver implements Resolve<Object> {
export class RecurringDepositsAccountTransactionResolver {
/**
* @param {RecurringDepositsService} recurringDepositsService Recurring Deposits 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 { RecurringDepositsService } from '../recurring-deposits.service';
* RecurringDeposits Account data resolver.
*/
@Injectable()
export class RecurringDepositsAccountDataResolver implements Resolve<Object> {
export class RecurringDepositsAccountDataResolver {
/**
* @param {RecurringDepositsService} RecurringDepositsService RecurringDeposits 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 { RecurringDepositsService } from '../recurring-deposits.service';
* Savings Account Template resolver.
*/
@Injectable()
export class RecurringDepositsAccountTemplateResolver implements Resolve<Object> {
export class RecurringDepositsAccountTemplateResolver {
/**
* @param {recurringDepositsService} RecurringDepositsService 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 { RecurringDepositsService } from '../recurring-deposits.service';
* RecurringDeposits Account data resolver.
*/
@Injectable()
export class RecurringDepositsAccountViewResolver implements Resolve<Object> {
export class RecurringDepositsAccountViewResolver {
/**
* @param {RecurringDepositsService} RecurringDepositsService RecurringDeposits service.
*/
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="activateRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<mat-form-field fxFlex (click)="activatedOnDatePicker.open()">
<mat-form-field class="flex-fill" (click)="activatedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Activated On Date' | translate }}</mat-label>
<input
matInput
@@ -21,7 +21,7 @@
</mat-form-field>
</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,7 +2,7 @@
<mat-card>
<form [formGroup]="recurringDepositsChargeForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field>
<mat-label>{{ 'labels.inputs.Charge' | translate }}</mat-label>
<mat-select required formControlName="chargeId">
@@ -16,7 +16,7 @@
</mat-error>
</mat-form-field>
<div *ngIf="chargeDetails" fxLayout="column">
<div *ngIf="chargeDetails" class="layout-column">
<mat-form-field>
<mat-label>{{ 'labels.inputs.Amount' | translate }}</mat-label>
<input type="number" required matInput formControlName="amount" />
@@ -93,7 +93,7 @@
</div>
</div>
<mat-card-actions fxLayoutGap="5px" fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center">
<mat-card-actions class="layout-row layout-xs-column layout-align-center gap-5px">
<button type="button" mat-raised-button [routerLink]="['../../']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="approveRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="approvedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Approved On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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,8 +2,8 @@
<mat-card>
<form [formGroup]="closeRecurringDepositForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<h3 class="mat-h3" fxFlexFill>{{ title }}</h3>
<div class="layout-column">
<h3 class="mat-h3 flex-fill">{{ title }}</h3>
<mat-form-field (click)="closedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Closed On' | translate }}</mat-label>
@@ -61,9 +61,9 @@
</mat-error>
</mat-form-field>
<div fxFlexFill>
<span fxFlex="25%">{{ 'labels.inputs.Show Payment Details' | translate }}</span>
<span fxFlex="75%" class="expandcollapsebutton" (click)="toggleDisplay()">
<div class="flex-fill">
<span class="flex-25"> {{ 'labels.inputs.Show Payment Details' | translate }}</span>
<span class="expandcollapsebutton flex-75" (click)="toggleDisplay()">
<button mat-raised-button color="primary" *ngIf="showPaymentDetails">
<i class="fa fa-minus"></i>
</button>
@@ -107,7 +107,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]="['../general']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -6,7 +6,7 @@
<form [formGroup]="depositRecurringDepositForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="transactionDatePicker.open()">
<mat-label>{{ 'labels.inputs.Transaction Date' | translate }}</mat-label>
<input
@@ -46,8 +46,8 @@
</mat-error>
</mat-form-field>
<div fxFlexFill>
<span fxFlex="75%" class="expandcollapsebutton m-l-10 m-t-40" (click)="addPaymentDetails()">
<div class="flex-fill">
<span class="expandcollapsebutton m-l-10 m-t-40 flex-75" (click)="addPaymentDetails()">
<mat-slide-toggle>
<div [className]="showPaymentDetails ? 'enabled' : 'disabled'">
<span class="m-l-10">{{ 'labels.inputs.Show Payment Details' | translate }}</span>
@@ -90,7 +90,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]="['../../general']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -2,7 +2,7 @@
<mat-card>
<form [formGroup]="prematureCloseRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="closedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Closed On' | translate }}</mat-label>
<input
@@ -23,7 +23,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,7 +2,7 @@
<mat-card>
<form [formGroup]="rejectRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="rejectedOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Rejected On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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,13 +2,13 @@
<mat-card>
<form [formGroup]="undoApprovalRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<mat-form-field fxFlex>
<mat-form-field class="flex-fill">
<mat-label>{{ 'labels.inputs.Note' | translate }}</mat-label>
<textarea matInput formControlName="note" cdkTextareaAutosize cdkAutosizeMinRows="2"></textarea>
</mat-form-field>
</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,7 +2,7 @@
<mat-card>
<form [formGroup]="withdrawRecurringDepositsAccountForm" (ngSubmit)="submit()">
<mat-card-content>
<div fxLayout="column">
<div class="layout-column">
<mat-form-field (click)="withdrawnOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Withdrawn On Date' | translate }}</mat-label>
<input
@@ -28,7 +28,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>
@@ -1,5 +1,5 @@
<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.Charge' | translate }}</mat-label>
<mat-select #charge>
<mat-option *ngFor="let charge of chargeData" [value]="charge">
@@ -8,7 +8,7 @@
</mat-select>
</mat-form-field>
<div fxFlex="48%" fxFlexAlign="center">
<div class="flex-48 align-center">
<button type="button" mat-raised-button color="primary" (click)="addCharge(charge)" [disabled]="!charge.value">
<fa-icon icon="plus" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Add' | translate }}
@@ -16,8 +16,7 @@
</div>
<table
fxFlex="98%"
class="mat-elevation-z1"
class="flex-98 mat-elevation-z1"
mat-table
[dataSource]="chargesDataSource"
[hidden]="chargesDataSource.length === 0"
@@ -120,7 +119,7 @@
</table>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,6 +1,6 @@
<form [formGroup]="recurringDepositAccountDetailsForm">
<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.Product Name' | translate }}</mat-label>
<mat-select formControlName="productId" required>
<mat-option *ngFor="let product of productData" [value]="product.id">
@@ -13,7 +13,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" (click)="submittedOnDatePicker.open()" *ngIf="isProductSelected">
<mat-form-field class="flex-48" (click)="submittedOnDatePicker.open()" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.Submitted On' | translate }}</mat-label>
<input
matInput
@@ -31,7 +31,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%" *ngIf="isProductSelected">
<mat-form-field class="flex-48" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.Field Officer' | translate }}</mat-label>
<mat-select formControlName="fieldOfficerId">
<mat-option *ngFor="let officer of fieldOfficerData" [value]="officer.id">
@@ -40,13 +40,13 @@
</mat-select>
</mat-form-field>
<mat-form-field fxFlex="48%" *ngIf="isProductSelected">
<mat-form-field class="flex-48" *ngIf="isProductSelected">
<mat-label>{{ 'labels.inputs.External id' | translate }}</mat-label>
<input matInput formControlName="externalId" matTooltip="{{ 'tooltips.Provides an external id' | translate }}" />
</mat-form-field>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious disabled>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,27 +1,27 @@
<div fxLayout="column" fxLayoutGap="2%">
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.name">
<span fxFlex="40%">{{ 'labels.inputs.name' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate.accountChart.name }}</span>
<div class="layout-column gap-2px">
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.name">
<span class="flex-40">{{ 'labels.inputs.name' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate.accountChart.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.endDate">
<span fxFlex="40%">{{ 'labels.inputs.End Date' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.endDate">
<span class="flex-40">{{ 'labels.inputs.End Date' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.description">
<span fxFlex="40%">{{ 'labels.inputs.Description' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.description }}</span>
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.description">
<span class="flex-40">{{ 'labels.inputs.Description' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.description }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span class="flex-60">{{
recurringDepositsAccountProductTemplate?.accountChart.isPrimaryGroupingByAmount | yesNo
}}</span>
</div>
@@ -80,19 +80,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="incentives flex-fill layout-row flex-wrap"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="mat-elevation-z1 flex-fill"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives.length"
@@ -153,7 +150,7 @@
</table>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,93 +1,89 @@
<div fxLayout="row wrap" fxLayout.lt-md="column">
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Details' | translate }}</h3>
<div class="layout-row-wrap responsive-column">
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Details' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Product' | translate }}</span>
<span fxFlex="60%">{{
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Product' | translate }}</span>
<span class="flex-60">{{
recurringDepositAccountData.productId | find: recurringDepositsAccountTemplate.productOptions : 'id' : 'name'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Submitted On' | translate }}</span>
<span fxFlex="60%">{{ recurringDepositAccountData.submittedOnDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Submitted On' | translate }}</span>
<span class="flex-60">{{ recurringDepositAccountData.submittedOnDate | dateFormat }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Field Officer' | translate }}</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Field Officer' | translate }}</span>
<span class="flex-60">{{
recurringDepositAccountData.fieldOfficerId
| find: recurringDepositsAccountProductTemplate.fieldOfficerOptions : 'id' : 'displayName'
}}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Currency' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Currency' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Currency' | translate }}</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate.currency.code }}</span>
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Currency' | translate }}</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate.currency.code }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Decimal Places' | translate }}</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate.currency.decimalPlaces }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Decimal Places' | translate }}</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate.currency.decimalPlaces }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Currency In Multiples Of' | translate }}</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate.currency.inMultiplesOf }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Currency In Multiples Of' | translate }}</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate.currency.inMultiplesOf }}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Terms' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Compounding Period' | translate }}:</span>
<span fxFlex="60%">{{
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Terms' | translate }}</h3>
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Compounding Period' | translate }}:</span>
<span class="flex-60">{{
recurringDepositAccountData.interestCompoundingPeriodType
| find: recurringDepositsAccountProductTemplate.interestCompoundingPeriodTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Posting Period' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Posting Period' | translate }}:</span>
<span class="flex-60">{{
recurringDepositAccountData.interestPostingPeriodType
| find: recurringDepositsAccountProductTemplate.interestPostingPeriodTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Interest Calculated using' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Interest Calculated using' | translate }}:</span>
<span class="flex-60">{{
recurringDepositAccountData.interestCalculationType
| find: recurringDepositsAccountProductTemplate.interestCalculationTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Days in Year' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Days in Year' | translate }}:</span>
<span class="flex-60">{{
recurringDepositAccountData.interestCalculationDaysInYearType
| find: recurringDepositsAccountProductTemplate.interestCalculationDaysInYearTypeOptions : 'id' : 'value'
| translateKey: 'catalogs'
}}</span>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Settings' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Settings' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div fxFlexFill *ngIf="recurringDepositAccountData.lockinPeriodFrequency">
<span fxFlex="40%">{{ 'labels.inputs.Lock-in Period' | translate }}:</span>
<span fxFlex="60%"
<mat-divider class="flex-fill"></mat-divider>
<div class="flex-fill" *ngIf="recurringDepositAccountData.lockinPeriodFrequency">
<span class="flex-40">{{ 'labels.inputs.Lock-in Period' | translate }}:</span>
<span class="flex-60"
>{{ recurringDepositAccountData.lockinPeriodFrequency }}
{{
recurringDepositAccountData.lockinPeriodFrequencyType
@@ -97,14 +93,14 @@
>
</div>
<div fxFlexFill *ngIf="recurringDepositAccountData.mandatoryRecommendedDepositAmount">
<span fxFlex="40%">{{ 'labels.inputs.Recurring Deposit Amount' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositAccountData.mandatoryRecommendedDepositAmount | formatNumber }}</span>
<div class="flex-fill" *ngIf="recurringDepositAccountData.mandatoryRecommendedDepositAmount">
<span class="flex-40">{{ 'labels.inputs.Recurring Deposit Amount' | translate }}:</span>
<span class="flex-60">{{ recurringDepositAccountData.mandatoryRecommendedDepositAmount | formatNumber }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Deposit Period' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Deposit Period' | translate }}:</span>
<span class="flex-60"
>{{ recurringDepositAccountData.depositPeriod }}
{{
recurringDepositAccountData.depositPeriodFrequencyId
@@ -114,20 +110,20 @@
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Deposit Frequency Same as Group/Center meeting' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate.isCalendarInherited | yesNo }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Deposit Frequency Same as Group/Center meeting' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate.isCalendarInherited | yesNo }}</span>
</div>
<ng-container *ngIf="!recurringDepositsAccountProductTemplate.isCalendarInherited">
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Deposit Start Date' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositAccountData.expectedFirstDepositOnDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Deposit Start Date' | translate }}:</span>
<span class="flex-60">{{ recurringDepositAccountData.expectedFirstDepositOnDate | dateFormat }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Deposit Frequency' | translate }}:</span>
<span *ngIf="recurringDepositAccountData.recurringFrequency" fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Deposit Frequency' | translate }}:</span>
<span *ngIf="recurringDepositAccountData.recurringFrequency" class="flex-60"
>{{ recurringDepositAccountData.recurringFrequency }}
{{
recurringDepositAccountData.recurringFrequencyType
@@ -138,9 +134,9 @@
</div>
</ng-container>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Minimum Deposit Term' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Minimum Deposit Term' | translate }}:</span>
<span class="flex-60"
>{{
recurringDepositsAccountProductTemplate.minDepositTerm
? recurringDepositsAccountProductTemplate.minDepositTerm
@@ -155,9 +151,9 @@
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.In Multiples Of' | translate }}:</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.In Multiples Of' | translate }}:</span>
<span class="flex-60"
>{{
recurringDepositsAccountProductTemplate.inMultiplesOfDepositTerm
? recurringDepositsAccountProductTemplate.inMultiplesOfDepositTerm
@@ -172,9 +168,9 @@
>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Maximum Deposit Term' | translate }}</span>
<span fxFlex="60%"
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Maximum Deposit Term' | translate }}</span>
<span class="flex-60"
>{{
recurringDepositsAccountProductTemplate.maxDepositTerm
? recurringDepositsAccountProductTemplate.maxDepositTerm
@@ -189,34 +185,33 @@
>
</div>
<h3 class="mat-h3" fxFlexFill>{{ 'labels.inputs.Interest Rate Chart' | translate }}</h3>
<h3 class="mat-h3 flex-fill">{{ 'labels.inputs.Interest Rate Chart' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<div class="margin-b" fxFlexFill fxLayout="column">
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.name">
<span fxFlex="40%">{{ 'labels.inputs.name' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.name }}</span>
<mat-divider class="flex-fill"></mat-divider>
<div class="margin-b layout-column flex-fill">
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.name">
<span class="flex-40">{{ 'labels.inputs.name' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.name }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Valid from Date' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.fromDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.endDate">
<span fxFlex="40%">{{ 'labels.inputs.End Date' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.endDate">
<span class="flex-40">{{ 'labels.inputs.End Date' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.endDate | dateFormat }}</span>
</div>
<div fxFlexFill *ngIf="recurringDepositsAccountProductTemplate?.accountChart.description">
<span fxFlex="40%">{{ 'labels.inputs.Description' | translate }}:</span>
<span fxFlex="60%">{{ recurringDepositsAccountProductTemplate?.accountChart.description }}</span>
<div class="flex-fill" *ngIf="recurringDepositsAccountProductTemplate?.accountChart.description">
<span class="flex-40">{{ 'labels.inputs.Description' | translate }}:</span>
<span class="flex-60">{{ recurringDepositsAccountProductTemplate?.accountChart.description }}</span>
</div>
<div fxFlexFill>
<span fxFlex="40%">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span fxFlex="60%">{{
<div class="flex-fill">
<span class="flex-40">{{ 'labels.inputs.Primary Grouping by Amount' | translate }}:</span>
<span class="flex-60">{{
recurringDepositsAccountProductTemplate?.accountChart.isPrimaryGroupingByAmount | yesNo
}}</span>
</div>
@@ -275,19 +270,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="layout-row-wrap flex-fill incentives"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="flex-fill mat-elevation-z1"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives.length"
@@ -348,12 +340,11 @@
</table>
</div>
<div fxFlexFill *ngIf="recurringDepositAccountData.charges.length" fxLayout="row wrap" fxLayout.lt-md="column">
<h3 class="mat-h3" fxFlexFill>{{ 'labels.heading.Charges' | translate }}</h3>
<div *ngIf="recurringDepositAccountData.charges.length" class="layout-row-wrap responsive-column flex-fill">
<h3 class="mat-h3 flex-fill">{{ 'labels.heading.Charges' | translate }}</h3>
<mat-divider fxFlexFill></mat-divider>
<table fxFlexFill class="mat-elevation-z1" mat-table [dataSource]="recurringDepositAccountData.charges">
<mat-divider class="flex-fill"></mat-divider>
<table class="flex-fill mat-elevation-z1" mat-table [dataSource]="recurringDepositAccountData.charges">
<ng-container matColumnDef="name">
<th mat-header-cell *matHeaderCellDef>{{ 'labels.inputs.name' | translate }}</th>
<td mat-cell *matCellDef="let charge">
@@ -421,7 +412,7 @@
</div>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row responsive-column align-center gap-2px margin-t">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,30 +1,25 @@
<form [formGroup]="recurringDepositAccountSettingsForm">
<div fxLayout="row wrap" fxLayoutGap="2%" fxLayout.lt-md="column">
<mat-checkbox fxFlex="48%" labelPosition="before" formControlName="isMandatoryDeposit" class="margin-v">
<div class="layout-row-wrap gap-2px responsive-column">
<mat-checkbox labelPosition="before" formControlName="isMandatoryDeposit" class="margin-v flex-48">
{{ 'labels.inputs.Is Mandatory Deposit' | translate }}?
</mat-checkbox>
<mat-checkbox
fxFlex="48%"
labelPosition="before"
formControlName="adjustAdvanceTowardsFuturePayments"
class="margin-v"
>
<mat-checkbox class="flex-48 margin-v" labelPosition="before" formControlName="adjustAdvanceTowardsFuturePayments">
{{ 'labels.inputs.Adjust advance payments toward future installments' | translate }}?
</mat-checkbox>
<mat-checkbox fxFlex="48%" labelPosition="before" formControlName="allowWithdrawal" class="margin-v">
<mat-checkbox labelPosition="before" formControlName="allowWithdrawal" class="margin-v flex-48">
{{ 'labels.inputs.Allow Withdrawals' | translate }}?
</mat-checkbox>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Lock-in Period' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Lock-in Period' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="lockinPeriodFrequency" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="lockinPeriodFrequencyType">
<mat-option
@@ -36,9 +31,9 @@
</mat-select>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Recurring Deposit Details' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Recurring Deposit Details' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Recurring Deposit Amount' | translate }}</mat-label>
<input type="number" matInput formControlName="mandatoryRecommendedDepositAmount" required />
<mat-error>
@@ -47,14 +42,14 @@
</mat-error>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Deposit Period' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Deposit Period' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Deposit Period' | translate }}</mat-label>
<input type="number" matInput formControlName="depositPeriod" required />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="depositPeriodFrequencyId" required>
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -63,12 +58,12 @@
</mat-select>
</mat-form-field>
<mat-checkbox fxFlex="48%" labelPosition="before" formControlName="isCalendarInherited" class="margin-v">
<mat-checkbox labelPosition="before" formControlName="isCalendarInherited" class="margin-v flex-48">
{{ 'labels.inputs.Deposit Frequency Same as Group/Center meeting' | translate }}
</mat-checkbox>
<ng-container *ngIf="!recurringDepositAccountSettingsForm.value.isCalendarInherited">
<mat-form-field fxFlex="48%" (click)="expectedFirstDepositOnDatePicker.open()">
<mat-form-field class="flex-48" (click)="expectedFirstDepositOnDatePicker.open()">
<mat-label>{{ 'labels.inputs.Deposit Start Date' | translate }}</mat-label>
<input
matInput
@@ -82,9 +77,9 @@
<mat-datepicker #expectedFirstDepositOnDatePicker></mat-datepicker>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Deposit Frequency' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Deposit Frequency' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Deposit Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="recurringFrequency" required />
<mat-error>
@@ -93,7 +88,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="recurringFrequencyType" required>
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -107,11 +102,11 @@
</mat-form-field>
</ng-container>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Minimum Deposit Term' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Minimum Deposit Term' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="minDepositTerm" required />
<mat-error>
@@ -120,7 +115,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency Type' | translate }}</mat-label>
<mat-select formControlName="minDepositTermTypeId" required>
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -133,14 +128,14 @@
</mat-error>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.And thereafter, in Multiples of' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.And thereafter, in Multiples of' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="inMultiplesOfDepositTerm" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="inMultiplesOfDepositTermTypeId">
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -149,14 +144,14 @@
</mat-select>
</mat-form-field>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Maximum Deposit Term' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Maximum Deposit Term' | translate }}</h4>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Frequency' | translate }}</mat-label>
<input type="number" matInput formControlName="maxDepositTerm" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Type' | translate }}</mat-label>
<mat-select formControlName="maxDepositTermTypeId">
<mat-option *ngFor="let periodFrequencyType of periodFrequencyTypeData" [value]="periodFrequencyType.id">
@@ -165,20 +160,20 @@
</mat-select>
</mat-form-field>
<mat-divider fxFlex="98%"></mat-divider>
<mat-divider class="flex-98"></mat-divider>
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.For Pre-mature closure' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.For Pre-mature closure' | translate }}</h4>
<mat-checkbox fxFlex="73%" labelPosition="before" formControlName="preClosurePenalApplicable" class="margin-v">
<mat-checkbox class="flex-73 margin-v" labelPosition="before" formControlName="preClosurePenalApplicable">
{{ 'labels.inputs.Apply Penal Interest (less)' | translate }}
</mat-checkbox>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Penal Interest' | translate }} (%)</mat-label>
<input type="number" matInput formControlName="preClosurePenalInterest" />
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Period' | translate }}</mat-label>
<mat-select formControlName="preClosurePenalInterestOnTypeId">
<mat-option
@@ -190,28 +185,28 @@
</mat-select>
</mat-form-field>
<!-- <mat-divider fxFlex="98%"></mat-divider> -->
<!-- <mat-divider class="flex-98"></mat-divider> -->
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Minimum Balance For Interest Calculation' | translate }}</mat-label>
<input type="number" matInput formControlName="minBalanceForInterestCalculation" />
</mat-form-field>
<ng-container *ngIf="taxGroup">
<h4 fxFlex="98%" class="mat-h4">{{ 'labels.heading.Tax Group' | translate }}</h4>
<h4 class="mat-h4 flex-98">{{ 'labels.heading.Tax Group' | translate }}</h4>
<mat-checkbox fxFlex="48%" labelPosition="before" formControlName="withHoldTax" class="margin-v">
<mat-checkbox labelPosition="before" formControlName="withHoldTax" class="margin-v flex-48">
{{ 'labels.inputs.Is Withhold Tax Applicable' | translate }}?
</mat-checkbox>
<mat-form-field fxFlex="48%" *ngIf="recurringDepositAccountSettingsForm.controls.taxGroupId">
<mat-form-field class="flex-48" *ngIf="recurringDepositAccountSettingsForm.controls.taxGroupId">
<mat-label>{{ 'labels.inputs.Tax Group' | translate }}</mat-label>
<input type="text" matInput formControlName="taxGroupId" />
</mat-form-field>
</ng-container>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,6 +1,6 @@
<form [formGroup]="recurringDepositAccountTermsForm">
<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.Interest Compounding Period' | translate }}</mat-label>
<mat-select formControlName="interestCompoundingPeriodType" required>
<mat-option
@@ -16,7 +16,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interest Posting Period' | translate }}</mat-label>
<mat-select formControlName="interestPostingPeriodType" required>
<mat-option
@@ -32,7 +32,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Interest Calculated using' | translate }}</mat-label>
<mat-select formControlName="interestCalculationType" required>
<mat-option
@@ -48,7 +48,7 @@
</mat-error>
</mat-form-field>
<mat-form-field fxFlex="48%">
<mat-form-field class="flex-48">
<mat-label>{{ 'labels.inputs.Days in Year' | translate }}</mat-label>
<mat-select formControlName="interestCalculationDaysInYearType" required>
<mat-option
@@ -65,7 +65,7 @@
</mat-form-field>
</div>
<div fxLayout="row" class="margin-t" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="2%">
<div class="layout-row align-center gap-2percent margin-t responsive-column">
<button mat-raised-button matStepperPrevious>
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
@@ -1,5 +1,5 @@
<div class="tab-container mat-typography">
<div fxLayout="row" fxLayoutAlign="start">
<div class="layout-row align-start">
<div class="m-b-10">
<h3>{{ 'labels.heading.All Charges' | translate }}</h3>
</div>
@@ -1,6 +1,6 @@
<div class="recurring-deposits-account-tables" fxLayout="row" fxLayoutGap="2%">
<div class="recurring-deposits-account-tables layout-row gap-2percent">
<div
fxFlex="49%"
class="flex-49"
*ngIf="
!recurringDepositsAccountData.status.rejected && !recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -78,7 +78,7 @@
</div>
<div
fxFlex="49%"
class="flex-49"
*ngIf="
!recurringDepositsAccountData.status.rejected && !recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -149,7 +149,7 @@
</div>
<div
fxFlex="49%"
class="flex-49"
*ngIf="
recurringDepositsAccountData.status.rejected || recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -261,7 +261,7 @@
</div>
<div
fxFlex="49%"
class="flex-49"
*ngIf="
recurringDepositsAccountData.status.rejected || recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -336,9 +336,9 @@
</div>
</div>
<div class="recurring-deposits-account-tables" fxLayout="row" fxLayoutGap="2%">
<div class="recurring-deposits-account-tables layout-row gap-2percent">
<div
fxFlex="49%"
class="flex-49"
*ngIf="
!recurringDepositsAccountData.status.rejected && !recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -392,7 +392,7 @@
</div>
<div
fxFlex="49%"
class="flex-49"
*ngIf="
recurringDepositsAccountData.status.rejected || recurringDepositsAccountData.status.submittedAndPendingApproval
"
@@ -1,5 +1,5 @@
<div class="tab-container mat-typography">
<div fxLayoutAlign="start">
<div class="align-start">
<div class="m-b-20">
<h3>{{ 'labels.heading.All Interest Rates' | translate }}</h3>
</div>
@@ -60,19 +60,16 @@
[attr.colspan]="chartSlabsDisplayedColumns.length"
>
<div
fxLayout="row wrap"
fxFlexFill
class="incentives"
class="layout-row-wrap flex-fill incentives"
[@expandChartSlab]="chartSlabIndex === expandChartSlabIndex ? 'expanded' : 'collapsed'"
>
<mat-card fxLayout="row wrap" fxFlexFill>
<h4 class="m-b-10" fxFlex="13%">
<mat-card class="layout-row-wrap flex-fill">
<h4 class="m-b-10 flex-13">
{{ 'labels.heading.Incentives' | translate }}
</h4>
<table
fxFlexFill
class="mat-elevation-z1"
class="flex-fill mat-elevation-z1"
mat-table
[dataSource]="chartSlab.incentives"
*ngIf="chartSlab.incentives?.length"
@@ -1,5 +1,5 @@
<mat-card class="account-card">
<mat-card-header fxLayout="column" class="header">
<mat-card-header class="header layout-column">
<mat-card-title-group class="header-title-group">
<div class="profile-image-container">
<div>
@@ -14,7 +14,7 @@
<div class="mat-typography account-card-title">
<mat-card-title>
<div fxFlex="60%">
<div class="flex-60">
<h3>
<i
class="fa fa-stop"
@@ -70,9 +70,8 @@
</table>
</div>
<span fxFlex="auto"></span>
<div fxFlex="5%">
<span class="flex-auto"></span>
<div class="flex-5">
<button
mat-icon-button
[matMenuTriggerFor]="accountMenu"
@@ -109,7 +108,7 @@
</mat-card-header>
<mat-card-content class="content">
<nav mat-tab-nav-bar class="navigation-tabs">
<nav mat-tab-nav-bar class="navigation-tabs" [tabPanel]="tabPanel">
<a
mat-tab-link
[routerLink]="['./general']"
@@ -172,7 +171,8 @@
</a>
</ng-container>
</nav>
<router-outlet></router-outlet>
<mat-tab-nav-panel #tabPanel>
<router-outlet></router-outlet>
</mat-tab-nav-panel>
</mat-card-content>
</mat-card>
@@ -1,7 +1,7 @@
<div class="container">
<mat-card>
<form [formGroup]="editTransactionForm" (ngSubmit)="submit()">
<mat-card-content fxLayout="column">
<mat-card-content class="layout-column">
<mat-form-field (click)="dueDatePicker.open()">
<mat-label>{{ 'labels.inputs.Transaction Date' | translate }}</mat-label>
<input
@@ -37,8 +37,8 @@
</mat-select>
</mat-form-field>
<div fxFlexFill>
<span fxFlex="75%" class="expandcollapsebutton m-l-10 m-t-40" (click)="addPaymentDetails()">
<div class="flex-fill">
<span class="expandcollapsebutton m-l-10 m-t-40 flex-75" (click)="addPaymentDetails()">
<mat-slide-toggle>
<div [className]="addPaymentDetailsFlag ? 'enabled' : 'disabled'">
<span class="m-l-10">{{ 'labels.inputs.Show Payment Details' | translate }}</span>
@@ -72,7 +72,7 @@
<input formControlName="bankNumber" matInput />
</mat-form-field>
<mat-card-actions fxLayoutGap="5px" fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center">
<mat-card-actions class="layout-row layout-xs-column layout-align-center gap-5px">
<button type="button" mat-raised-button [routerLink]="['../']">
{{ 'labels.buttons.Cancel' | translate }}
</button>
@@ -1,10 +1,10 @@
<div class="tab-container mat-typography">
<div class="mat-elevation-z1 m-b-25">
<div fxLayout="row" fxLayoutAlign="start">
<div class="layout-row align-start">
<div class="m-b-20">
<h3>{{ 'labels.heading.All Transactions' | translate }}</h3>
</div>
<div class="action-button m-b-20" fxLayout="row" fxLayoutGap="20px" *ngIf="checkStatus()">
<div class="action-button m-b-20 layout-row gap-20px" *ngIf="checkStatus()">
<mat-checkbox [formControl]="hideReversedParam" (click)="hideReversed()" class="accruals">
{{ 'labels.inputs.Hide Reversed' | translate }}</mat-checkbox
>
@@ -1,4 +1,4 @@
<div fxLayoutAlign="end" class="container m-b-20" fxLayoutGap="2%" *ngIf="!transactionData.reversed">
<div class="container m-b-20 align-end gap-2percent" *ngIf="!transactionData.reversed">
<span *mifosxHasPermission="'ADJUSTTRANSACTION_SAVINGSACCOUNT'">
<button
mat-raised-button
@@ -22,54 +22,55 @@
<div class="container">
<mat-card>
<mat-card-content>
<div fxLayout="row wrap" class="content">
<div fxFlex="100%" [ngClass]="transactionColor()"></div>
<div class="layout-row-wrap">
<div class="flex-100" [ngClass]="transactionColor()"></div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Transaction Id' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.id }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Type' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.transactionType.value }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Transaction Date' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.date | dateFormat }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Currency' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.currency.displayLabel }}
</div>
<div fxFlex="50%" class="mat-body-strong">
<div class="flex-50 mat-body-strong">
{{ 'labels.inputs.Amount' | translate }}
</div>
<div fxFlex="50%">
<div class="flex-50">
{{ transactionData.amount | currency: transactionData.currency.code : 'symbol-narrow' : '1.2-2' }}
</div>
<div fxFlex="50%" *ngIf="transactionData.note" class="mat-body-strong">
<div class="flex-50 mat-body-strong" *ngIf="transactionData.note">
{{ 'labels.inputs.Note' | translate }}
</div>
<div fxFlex="50%" *ngIf="transactionData.note">
<div class="flex-50">
*ngIf="transactionData.note">
{{ transactionData.note }}
</div>
@@ -81,7 +82,7 @@
</div>
</mat-card-content>
<mat-card-actions fxLayout="row" fxLayout.xs="column" fxLayoutAlign="center" fxLayoutGap="5px" class="m-b-20">
<mat-card-actions class="layout-row layout-xs-column layout-align-center gap-5px m-b-20">
<button type="button" color="primary" mat-raised-button (click)="goBack()">
{{ 'labels.buttons.Back' | translate }}
</button>