feat: add Current Account module, DIP verification, charges integration, and translations

- Current Account module with full CRUD, transactions, charges, hold/release, block/unblock
- Current Products management under Products module
- DIP mobile number verification with real API call to /lookup/check
- Sanctions verification dialog
- Charges support for Current Account (chargeAppliesTo=5) in create/edit
- Fixed permissions from SAVINGSACCOUNT to CURRENTACCOUNT across all current account components
- Added all missing translation keys for Current Account in en-US.json

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Aditya
2026-03-17 18:23:37 +05:30
co-authored by Claude Opus 4.6
parent 73aa69ee02
commit 0a32d7135e
210 changed files with 15048 additions and 155 deletions
@@ -220,6 +220,39 @@
</mat-checkbox>
}
<div class="sanctions-verify-section flex-98">
@if (!sanctionsVerified && !sanctionsBlocked) {
<button
mat-raised-button
color="primary"
type="button"
class="verify-client-btn"
[disabled]="!createClientForm.get('firstname')?.value && !createClientForm.get('fullname')?.value"
(click)="verifySanctions()"
>
<fa-icon icon="shield-alt" class="mr-05"></fa-icon>
Verify Client
</button>
}
@if (sanctionsVerified) {
<div class="sanctions-result">
<fa-icon icon="check-circle" class="text-success"></fa-icon>
<span class="text-success">Client verified — No match found in sanctions list.</span>
</div>
}
@if (sanctionsBlocked) {
<div class="sanctions-blocked">
<fa-icon icon="exclamation-triangle" class="text-danger"></fa-icon>
<span class="text-danger">
<strong>SANCTIONS MATCH FOUND</strong> — Client cannot be onboarded. Account opening is blocked.
</span>
<button mat-stroked-button color="warn" type="button" class="recheck-btn" (click)="verifySanctions()">
Re-check
</button>
</div>
}
</div>
<mat-divider class="flex-98"></mat-divider>
<div class="dip-info flex-98">
@@ -356,7 +389,7 @@
<fa-icon icon="arrow-left" class="m-r-10"></fa-icon>
{{ 'labels.buttons.Previous' | translate }}
</button>
<button mat-raised-button matStepperNext>
<button mat-raised-button matStepperNext [disabled]="sanctionsBlocked">
{{ 'labels.buttons.Next' | translate }}
<fa-icon icon="arrow-right" class="m-l-10"></fa-icon>
</button>