fix: nominee share & joint ownership validation across all account types

- Block 0% nominee share in all steppers (Savings, FD, RD, Current) —
  Add button disabled via isValid, addNominee() guards < 1, nominee-form
  error condition fixed for value=0
- Joint ownership: default primary share 50%, enforce min 1% on blur,
  max 100% on input with DOM clamp via $event, auto-redistribute
  co-holders proportionally when primary share changes,
  isJointOwnershipValid guards each holder >= 1
- Pending/Rejected account tabs: normalize date format to 22 May 2026
  for both array and string date values from API

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Jaanu423
2026-05-23 14:05:00 +05:30
co-authored by Claude Sonnet 4.6
parent df96be9a0e
commit ad6f629c3f
25 changed files with 337 additions and 35 deletions
@@ -123,7 +123,12 @@
<button type="button" class="nom-cancel-btn" (click)="showNomineeForm = false; nomineeError = ''">
Cancel
</button>
<button type="button" class="nom-confirm-btn" (click)="addNominee()">
<button
type="button"
class="nom-confirm-btn"
[disabled]="!nomineeFormComp?.isValid"
(click)="addNominee()"
>
<i class="fas fa-plus"></i> Add
</button>
</div>
@@ -83,6 +83,10 @@ export class CurrentAccountCurrencyStepComponent implements OnChanges {
return;
}
}
if (!data.percentageShare || data.percentageShare < 1) {
this.nomineeError = 'Share must be at least 1%.';
return;
}
const newTotal = this.totalShare + (+data.percentageShare || 0);
if (newTotal > 100) {
this.nomineeError = `Total share cannot exceed 100%. Remaining: ${this.remainingShare}%`;