master-control 0.4.93 → 0.4.94
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/annuity-calculator-radio/annuity-calculator-radio.component.mjs +29 -8
- package/esm2022/lib/annuity-premium-calculator/annuity-premium-calculator.component.mjs +211 -10
- package/esm2022/lib/pay-get-card/pay-get-card.component.mjs +6 -6
- package/fesm2022/master-control.mjs +239 -20
- package/fesm2022/master-control.mjs.map +1 -1
- package/lib/annuity-calculator-radio/annuity-calculator-radio.component.d.ts +1 -1
- package/lib/annuity-premium-calculator/annuity-premium-calculator.component.d.ts +2 -0
- package/master-control-0.4.94.tgz +0 -0
- package/package.json +1 -1
- package/master-control-0.4.93.tgz +0 -0
|
@@ -3716,16 +3716,16 @@ class PayGetCardComponent {
|
|
|
3716
3716
|
years = '2030';
|
|
3717
3717
|
frequency = 'month';
|
|
3718
3718
|
payamountOptions = [
|
|
3719
|
-
{ amount: '₹62,000', percentage: 'Guaranteed' },
|
|
3720
|
-
{ amount: '₹66,000', percentage: 'Variable
|
|
3721
|
-
{ amount: '₹72,000', percentage: 'Total
|
|
3719
|
+
{ amount: '₹62,000', percentage: 'Guaranteed', frequency: '', variable: '' },
|
|
3720
|
+
{ amount: '₹66,000', percentage: 'Variable @', frequency: '', variable: '' },
|
|
3721
|
+
{ amount: '₹72,000', percentage: 'Total @', frequency: '', variable: '' }
|
|
3722
3722
|
];
|
|
3723
3723
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PayGetCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3724
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PayGetCardComponent, isStandalone: true, selector: "lib-pay-get-card", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, payAmount: { classPropertyName: "payAmount", publicName: "payAmount", isSignal: false, isRequired: false, transformFunction: null }, premiumAmount: { classPropertyName: "premiumAmount", publicName: "premiumAmount", isSignal: false, isRequired: false, transformFunction: null }, ptValue: { classPropertyName: "ptValue", publicName: "ptValue", isSignal: false, isRequired: false, transformFunction: null }, years: { classPropertyName: "years", publicName: "years", isSignal: false, isRequired: false, transformFunction: null }, frequency: { classPropertyName: "frequency", publicName: "frequency", isSignal: false, isRequired: false, transformFunction: null }, payamountOptions: { classPropertyName: "payamountOptions", publicName: "payamountOptions", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"d-flex justify-content-between pay-card\"\n [ngStyle]=\"{\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\n'--pay-card-bg-color': field()?.controlStyle?.background ,\n'--pay-card-width': field()?.controlStyle?.width ,\n }\"\n *ngIf=\"field() && field()?.isVisible\"\n>\n <div class=\"text-center mx-2\">\n <span class=\"bold-label\">{{ field()?.placeHolder || 'Pay' }}</span> <br />\n <div class=\"d-flex align-items-center justify-content-center\">\n <span class=\"grey-label\">{{payAmount}}</span>\n <span [appTooltipTemplate]=\"currentTooltip\" arrowPosition=\"left\" tooltipPosition=\"bottom\"\n *ngIf=\"field().configData?.infoimageUrl && field().configData?.tooltipText\">\n <img [src]=\"field().configData?.infoimageUrl\" class=\"toggle-benefit-img mx-1\" />\n </span>\n <ng-template #currentTooltip>\n <span [innerHTML]=\"field().configData?.tooltipText\"></span>\n </ng-template>\n </div>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.leftSubText\">{{field()?.configData?.leftSubText}}</span>\n </div>\n <div class=\"premium-card d-flex align-items-center justify-content-around\">\n <ng-container *ngFor=\"let option of payamountOptions; let i = index; let isLast = last\">\n <div class=\"value-card text-center\" *ngIf=\"field()?.configData?.isShowContent\">\n <span class=\"showcontent-amount\">{{option.amount}}</span>\n <div class=\"grey-button\">{{option.percentage}}</div>\n </div>\n\n <ng-container *ngIf=\"field()?.configData?.isShowContent && !isLast\">\n <span *ngIf=\"i !== payamountOptions.length - 2\" class=\"separator-icon\">+</span>\n <span *ngIf=\"i === payamountOptions.length - 2\" class=\"separator-icon\">=</span>\n </ng-container>\n </ng-container>\n\n <div class=\"d-flex flex-column text-center\" *ngIf=\"field()?.configData?.isShowLastPart\">\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\n <span class=\"grey-label\" *ngIf=\"field()?.configData?.isShowpayout\">for {{ptValue}} years</span>\n <span class=\"right-left-label\" *ngIf=\"field()?.configData?.isShowRightTextValue\">{{field()?.configData?.isShowRightTextValue}}</span>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.rightSubText\">{{field()?.configData?.rightSubText}}</span>\n </div>\n </div>\n</div>\n<div class=\"pay-get-card-digit-boss-banner\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.digitBossText\">\n <span class=\"pay-get-card-digit-boss-text\">{{field()?.configData?.digitBossText}}</span>\n</div>\n", styles: [".pay-card{max-width:var(--pay-card-width, 100%)!important;max-height:65px;border:1px solid #f5f5f5;border-radius:var(--pay-card-border-radius, 8px)!important;background-color:var(--pay-card-bg-color, #f5f5f5)!important;padding:2px 4px 10px 10px;border-color:var(--pay-card-border-color, #f5f5f5)!important;border-width:var(--pay-card-border-width, none)!important}.grey-label{font-size:12px;font-weight:700;color:#696969;display:block}.left-right-label{font-size:8px;font-weight:600;color:#696969;display:block}.bold-label{font-size:.875rem;font-weight:700;line-height:20px;color:#444}.light-label{font-size:12px;font-weight:400;line-height:16px;color:#000}.toggle-benefit-img{width:10px;height:10px}.premium-card{background:#fff;padding:6px 10px;height:54px;width:fit-content;border-radius:4px;text-align:center;display:flex;flex-direction:row;align-items:center;gap:8px}.showcontent-amount{font-weight:800;font-size:14px;color:#444;line-height:20px}.vertical-line{width:1px;height:20px;background-color:#ddd}.or-text{font-size:10px;font-weight:400;color:#8f8f8f;text-align:center;line-height:14px}.separator-container{display:flex;flex-direction:column;align-items:center}.separator-icon{font-size:12px;margin:0 8px;font-weight:700;color:#444}.grey-button{color:#696969;font-size:10px;font-weight:600;height:18px;min-width:50px;display:flex;align-items:center;line-height:14px}.pay-get-card-digit-boss-banner{background-color:#f5f5f5;margin-top:0;padding:6px 10px;max-width:var(--pay-card-width, 100%);border-radius:0 0 var(--pay-card-border-radius, 8px) var(--pay-card-border-radius, 8px)}.pay-get-card-digit-boss-text{font-size:12px;font-weight:600;color:#444;display:block;text-align:center}.value-card{display:flex;flex-direction:column;align-items:center;gap:4px}.value-card span{white-space:nowrap}.right-left-label{font-size:6px;font-weight:600;color:#696969;display:block}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: CustomizedTooltipDirective, selector: "[appTooltipTemplate]", inputs: ["appTooltipTemplate"] }] });
|
|
3724
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: PayGetCardComponent, isStandalone: true, selector: "lib-pay-get-card", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, payAmount: { classPropertyName: "payAmount", publicName: "payAmount", isSignal: false, isRequired: false, transformFunction: null }, premiumAmount: { classPropertyName: "premiumAmount", publicName: "premiumAmount", isSignal: false, isRequired: false, transformFunction: null }, ptValue: { classPropertyName: "ptValue", publicName: "ptValue", isSignal: false, isRequired: false, transformFunction: null }, years: { classPropertyName: "years", publicName: "years", isSignal: false, isRequired: false, transformFunction: null }, frequency: { classPropertyName: "frequency", publicName: "frequency", isSignal: false, isRequired: false, transformFunction: null }, payamountOptions: { classPropertyName: "payamountOptions", publicName: "payamountOptions", isSignal: false, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<div\n class=\"d-flex justify-content-between pay-card\"\n [ngStyle]=\"{\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\n'--pay-card-bg-color': field()?.controlStyle?.background ,\n'--pay-card-width': field()?.controlStyle?.width ,\n }\"\n *ngIf=\"field() && field()?.isVisible\"\n>\n <div class=\"text-center mx-2\">\n <span class=\"bold-label\">{{ field()?.placeHolder || 'Pay' }}</span> <br />\n <div class=\"d-flex align-items-center justify-content-center\">\n <span class=\"grey-label\">{{payAmount}}</span>\n <span [appTooltipTemplate]=\"currentTooltip\" arrowPosition=\"left\" tooltipPosition=\"bottom\"\n *ngIf=\"field().configData?.infoimageUrl && field().configData?.tooltipText\">\n <img [src]=\"field().configData?.infoimageUrl\" class=\"toggle-benefit-img mx-1\" />\n </span>\n <ng-template #currentTooltip>\n <span [innerHTML]=\"field().configData?.tooltipText\"></span>\n </ng-template>\n </div>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.leftSubText\">{{field()?.configData?.leftSubText}}</span>\n </div>\n <div class=\"premium-card d-flex align-items-center justify-content-around\">\n <ng-container *ngFor=\"let option of payamountOptions; let i = index; let isLast = last\">\n <div class=\"value-card text-center\" *ngIf=\"field()?.configData?.isShowContent\">\n <span class=\"showcontent-amount\">{{option.amount}}/ <span class=\"showcontent-frequency\">{{option.frequency}}</span></span>\n <div class=\"grey-button\">{{option.percentage}} {{option.variable}}</div>\n </div>\n\n <ng-container *ngIf=\"field()?.configData?.isShowContent && !isLast\">\n <span *ngIf=\"i !== payamountOptions.length - 2\" class=\"separator-icon\">+</span>\n <span *ngIf=\"i === payamountOptions.length - 2\" class=\"separator-icon\">=</span>\n </ng-container>\n </ng-container>\n\n <div class=\"d-flex flex-column text-center\" *ngIf=\"field()?.configData?.isShowLastPart\">\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\n <span class=\"grey-label\" *ngIf=\"field()?.configData?.isShowpayout\">for {{ptValue}} years</span>\n <span class=\"right-left-label\" *ngIf=\"field()?.configData?.isShowRightTextValue\">{{field()?.configData?.isShowRightTextValue}}</span>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.rightSubText\">{{field()?.configData?.rightSubText}}</span>\n </div>\n </div>\n</div>\n<div class=\"pay-get-card-digit-boss-banner\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.digitBossText\">\n <span class=\"pay-get-card-digit-boss-text\">{{field()?.configData?.digitBossText}}</span>\n</div>\n", styles: [".pay-card{max-width:var(--pay-card-width, 100%)!important;max-height:65px;border:1px solid #f5f5f5;border-radius:var(--pay-card-border-radius, 8px)!important;background-color:var(--pay-card-bg-color, #f5f5f5)!important;padding:2px 4px 10px 10px;border-color:var(--pay-card-border-color, #f5f5f5)!important;border-width:var(--pay-card-border-width, none)!important}.grey-label{font-size:12px;font-weight:700;color:#696969;display:block}.left-right-label{font-size:8px;font-weight:600;color:#696969;display:block}.bold-label{font-size:.875rem;font-weight:700;line-height:20px;color:#444}.light-label{font-size:12px;font-weight:400;line-height:16px;color:#000}.toggle-benefit-img{width:10px;height:10px}.premium-card{background:#fff;padding:6px 10px;height:54px;width:fit-content;border-radius:4px;text-align:center;display:flex;flex-direction:row;align-items:center;gap:8px}.showcontent-amount{font-weight:800;font-size:14px;color:#444;line-height:20px}.vertical-line{width:1px;height:20px;background-color:#ddd}.or-text{font-size:10px;font-weight:400;color:#8f8f8f;text-align:center;line-height:14px}.separator-container{display:flex;flex-direction:column;align-items:center}.separator-icon{font-size:12px;margin:0 8px;font-weight:700;color:#444}.grey-button{color:#696969;font-size:10px;font-weight:600;height:18px;min-width:50px;display:flex;align-items:center;line-height:14px}.pay-get-card-digit-boss-banner{background-color:#f5f5f5;margin-top:0;padding:6px 10px;max-width:var(--pay-card-width, 100%);border-radius:0 0 var(--pay-card-border-radius, 8px) var(--pay-card-border-radius, 8px)}.pay-get-card-digit-boss-text{font-size:12px;font-weight:600;color:#444;display:block;text-align:center}.value-card{display:flex;flex-direction:column;align-items:center;gap:4px}.value-card span{white-space:nowrap}.right-left-label{font-size:6px;font-weight:600;color:#696969;display:block}.showcontent-frequency{font-weight:400;font-size:6px;color:#444}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: CustomizedTooltipDirective, selector: "[appTooltipTemplate]", inputs: ["appTooltipTemplate"] }] });
|
|
3725
3725
|
}
|
|
3726
3726
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: PayGetCardComponent, decorators: [{
|
|
3727
3727
|
type: Component,
|
|
3728
|
-
args: [{ selector: 'lib-pay-get-card', standalone: true, imports: [CommonModule, CustomizedTooltipDirective], template: "<div\n class=\"d-flex justify-content-between pay-card\"\n [ngStyle]=\"{\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\n'--pay-card-bg-color': field()?.controlStyle?.background ,\n'--pay-card-width': field()?.controlStyle?.width ,\n }\"\n *ngIf=\"field() && field()?.isVisible\"\n>\n <div class=\"text-center mx-2\">\n <span class=\"bold-label\">{{ field()?.placeHolder || 'Pay' }}</span> <br />\n <div class=\"d-flex align-items-center justify-content-center\">\n <span class=\"grey-label\">{{payAmount}}</span>\n <span [appTooltipTemplate]=\"currentTooltip\" arrowPosition=\"left\" tooltipPosition=\"bottom\"\n *ngIf=\"field().configData?.infoimageUrl && field().configData?.tooltipText\">\n <img [src]=\"field().configData?.infoimageUrl\" class=\"toggle-benefit-img mx-1\" />\n </span>\n <ng-template #currentTooltip>\n <span [innerHTML]=\"field().configData?.tooltipText\"></span>\n </ng-template>\n </div>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.leftSubText\">{{field()?.configData?.leftSubText}}</span>\n </div>\n <div class=\"premium-card d-flex align-items-center justify-content-around\">\n <ng-container *ngFor=\"let option of payamountOptions; let i = index; let isLast = last\">\n <div class=\"value-card text-center\" *ngIf=\"field()?.configData?.isShowContent\">\n <span class=\"showcontent-amount\">{{option.amount}}</span>\n <div class=\"grey-button\">{{option.percentage}}</div>\n </div>\n\n <ng-container *ngIf=\"field()?.configData?.isShowContent && !isLast\">\n <span *ngIf=\"i !== payamountOptions.length - 2\" class=\"separator-icon\">+</span>\n <span *ngIf=\"i === payamountOptions.length - 2\" class=\"separator-icon\">=</span>\n </ng-container>\n </ng-container>\n\n <div class=\"d-flex flex-column text-center\" *ngIf=\"field()?.configData?.isShowLastPart\">\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\n <span class=\"grey-label\" *ngIf=\"field()?.configData?.isShowpayout\">for {{ptValue}} years</span>\n <span class=\"right-left-label\" *ngIf=\"field()?.configData?.isShowRightTextValue\">{{field()?.configData?.isShowRightTextValue}}</span>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.rightSubText\">{{field()?.configData?.rightSubText}}</span>\n </div>\n </div>\n</div>\n<div class=\"pay-get-card-digit-boss-banner\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.digitBossText\">\n <span class=\"pay-get-card-digit-boss-text\">{{field()?.configData?.digitBossText}}</span>\n</div>\n", styles: [".pay-card{max-width:var(--pay-card-width, 100%)!important;max-height:65px;border:1px solid #f5f5f5;border-radius:var(--pay-card-border-radius, 8px)!important;background-color:var(--pay-card-bg-color, #f5f5f5)!important;padding:2px 4px 10px 10px;border-color:var(--pay-card-border-color, #f5f5f5)!important;border-width:var(--pay-card-border-width, none)!important}.grey-label{font-size:12px;font-weight:700;color:#696969;display:block}.left-right-label{font-size:8px;font-weight:600;color:#696969;display:block}.bold-label{font-size:.875rem;font-weight:700;line-height:20px;color:#444}.light-label{font-size:12px;font-weight:400;line-height:16px;color:#000}.toggle-benefit-img{width:10px;height:10px}.premium-card{background:#fff;padding:6px 10px;height:54px;width:fit-content;border-radius:4px;text-align:center;display:flex;flex-direction:row;align-items:center;gap:8px}.showcontent-amount{font-weight:800;font-size:14px;color:#444;line-height:20px}.vertical-line{width:1px;height:20px;background-color:#ddd}.or-text{font-size:10px;font-weight:400;color:#8f8f8f;text-align:center;line-height:14px}.separator-container{display:flex;flex-direction:column;align-items:center}.separator-icon{font-size:12px;margin:0 8px;font-weight:700;color:#444}.grey-button{color:#696969;font-size:10px;font-weight:600;height:18px;min-width:50px;display:flex;align-items:center;line-height:14px}.pay-get-card-digit-boss-banner{background-color:#f5f5f5;margin-top:0;padding:6px 10px;max-width:var(--pay-card-width, 100%);border-radius:0 0 var(--pay-card-border-radius, 8px) var(--pay-card-border-radius, 8px)}.pay-get-card-digit-boss-text{font-size:12px;font-weight:600;color:#444;display:block;text-align:center}.value-card{display:flex;flex-direction:column;align-items:center;gap:4px}.value-card span{white-space:nowrap}.right-left-label{font-size:6px;font-weight:600;color:#696969;display:block}\n"] }]
|
|
3728
|
+
args: [{ selector: 'lib-pay-get-card', standalone: true, imports: [CommonModule, CustomizedTooltipDirective], template: "<div\n class=\"d-flex justify-content-between pay-card\"\n [ngStyle]=\"{\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\n'--pay-card-bg-color': field()?.controlStyle?.background ,\n'--pay-card-width': field()?.controlStyle?.width ,\n }\"\n *ngIf=\"field() && field()?.isVisible\"\n>\n <div class=\"text-center mx-2\">\n <span class=\"bold-label\">{{ field()?.placeHolder || 'Pay' }}</span> <br />\n <div class=\"d-flex align-items-center justify-content-center\">\n <span class=\"grey-label\">{{payAmount}}</span>\n <span [appTooltipTemplate]=\"currentTooltip\" arrowPosition=\"left\" tooltipPosition=\"bottom\"\n *ngIf=\"field().configData?.infoimageUrl && field().configData?.tooltipText\">\n <img [src]=\"field().configData?.infoimageUrl\" class=\"toggle-benefit-img mx-1\" />\n </span>\n <ng-template #currentTooltip>\n <span [innerHTML]=\"field().configData?.tooltipText\"></span>\n </ng-template>\n </div>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.leftSubText\">{{field()?.configData?.leftSubText}}</span>\n </div>\n <div class=\"premium-card d-flex align-items-center justify-content-around\">\n <ng-container *ngFor=\"let option of payamountOptions; let i = index; let isLast = last\">\n <div class=\"value-card text-center\" *ngIf=\"field()?.configData?.isShowContent\">\n <span class=\"showcontent-amount\">{{option.amount}}/ <span class=\"showcontent-frequency\">{{option.frequency}}</span></span>\n <div class=\"grey-button\">{{option.percentage}} {{option.variable}}</div>\n </div>\n\n <ng-container *ngIf=\"field()?.configData?.isShowContent && !isLast\">\n <span *ngIf=\"i !== payamountOptions.length - 2\" class=\"separator-icon\">+</span>\n <span *ngIf=\"i === payamountOptions.length - 2\" class=\"separator-icon\">=</span>\n </ng-container>\n </ng-container>\n\n <div class=\"d-flex flex-column text-center\" *ngIf=\"field()?.configData?.isShowLastPart\">\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\n <span class=\"grey-label\" *ngIf=\"field()?.configData?.isShowpayout\">for {{ptValue}} years</span>\n <span class=\"right-left-label\" *ngIf=\"field()?.configData?.isShowRightTextValue\">{{field()?.configData?.isShowRightTextValue}}</span>\n <span class=\"left-right-label\" *ngIf=\"field()?.configData?.rightSubText\">{{field()?.configData?.rightSubText}}</span>\n </div>\n </div>\n</div>\n<div class=\"pay-get-card-digit-boss-banner\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.digitBossText\">\n <span class=\"pay-get-card-digit-boss-text\">{{field()?.configData?.digitBossText}}</span>\n</div>\n", styles: [".pay-card{max-width:var(--pay-card-width, 100%)!important;max-height:65px;border:1px solid #f5f5f5;border-radius:var(--pay-card-border-radius, 8px)!important;background-color:var(--pay-card-bg-color, #f5f5f5)!important;padding:2px 4px 10px 10px;border-color:var(--pay-card-border-color, #f5f5f5)!important;border-width:var(--pay-card-border-width, none)!important}.grey-label{font-size:12px;font-weight:700;color:#696969;display:block}.left-right-label{font-size:8px;font-weight:600;color:#696969;display:block}.bold-label{font-size:.875rem;font-weight:700;line-height:20px;color:#444}.light-label{font-size:12px;font-weight:400;line-height:16px;color:#000}.toggle-benefit-img{width:10px;height:10px}.premium-card{background:#fff;padding:6px 10px;height:54px;width:fit-content;border-radius:4px;text-align:center;display:flex;flex-direction:row;align-items:center;gap:8px}.showcontent-amount{font-weight:800;font-size:14px;color:#444;line-height:20px}.vertical-line{width:1px;height:20px;background-color:#ddd}.or-text{font-size:10px;font-weight:400;color:#8f8f8f;text-align:center;line-height:14px}.separator-container{display:flex;flex-direction:column;align-items:center}.separator-icon{font-size:12px;margin:0 8px;font-weight:700;color:#444}.grey-button{color:#696969;font-size:10px;font-weight:600;height:18px;min-width:50px;display:flex;align-items:center;line-height:14px}.pay-get-card-digit-boss-banner{background-color:#f5f5f5;margin-top:0;padding:6px 10px;max-width:var(--pay-card-width, 100%);border-radius:0 0 var(--pay-card-border-radius, 8px) var(--pay-card-border-radius, 8px)}.pay-get-card-digit-boss-text{font-size:12px;font-weight:600;color:#444;display:block;text-align:center}.value-card{display:flex;flex-direction:column;align-items:center;gap:4px}.value-card span{white-space:nowrap}.right-left-label{font-size:6px;font-weight:600;color:#696969;display:block}.showcontent-frequency{font-weight:400;font-size:6px;color:#444}\n"] }]
|
|
3729
3729
|
}], propDecorators: { payAmount: [{
|
|
3730
3730
|
type: Input
|
|
3731
3731
|
}], premiumAmount: [{
|
|
@@ -7005,15 +7005,36 @@ class AnnuityCalculatorRadioComponent {
|
|
|
7005
7005
|
el;
|
|
7006
7006
|
constructor(el) {
|
|
7007
7007
|
this.el = el;
|
|
7008
|
+
effect(() => {
|
|
7009
|
+
const f = this.field();
|
|
7010
|
+
const selectVal = f?.configData?.selectValue;
|
|
7011
|
+
if (selectVal !== null && selectVal !== undefined && selectVal !== '') {
|
|
7012
|
+
// Pre-select the matching card
|
|
7013
|
+
const matchedCard = f?.configData?.cardsValue?.find((c) => c.value === selectVal);
|
|
7014
|
+
if (matchedCard) {
|
|
7015
|
+
this.value = selectVal;
|
|
7016
|
+
}
|
|
7017
|
+
const matchedOption = f?.options?.find((opt) => opt.value === selectVal);
|
|
7018
|
+
if (matchedOption) {
|
|
7019
|
+
this.inputValue = selectVal;
|
|
7020
|
+
setTimeout(() => this.updateArrowPosition(), 0);
|
|
7021
|
+
}
|
|
7022
|
+
}
|
|
7023
|
+
});
|
|
7008
7024
|
}
|
|
7009
|
-
|
|
7025
|
+
ngAfterViewInit() {
|
|
7010
7026
|
const f = this.field();
|
|
7011
|
-
|
|
7012
|
-
|
|
7027
|
+
const selectVal = f?.configData?.selectValue;
|
|
7028
|
+
if (selectVal !== null && selectVal !== undefined && selectVal !== '') {
|
|
7029
|
+
const matchedOption = f?.options?.find((opt) => opt.value === selectVal);
|
|
7013
7030
|
if (matchedOption) {
|
|
7014
|
-
this.inputValue =
|
|
7031
|
+
this.inputValue = selectVal;
|
|
7032
|
+
setTimeout(() => this.updateArrowPosition(), 0);
|
|
7015
7033
|
}
|
|
7016
7034
|
}
|
|
7035
|
+
else if (this.inputValue !== null && this.inputValue !== undefined) {
|
|
7036
|
+
setTimeout(() => this.updateArrowPosition(), 0);
|
|
7037
|
+
}
|
|
7017
7038
|
}
|
|
7018
7039
|
reactiveFormControlobject = input();
|
|
7019
7040
|
field = input.required();
|
|
@@ -7077,7 +7098,7 @@ class AnnuityCalculatorRadioComponent {
|
|
|
7077
7098
|
useExisting: forwardRef(() => AnnuityCalculatorRadioComponent),
|
|
7078
7099
|
multi: true
|
|
7079
7100
|
}
|
|
7080
|
-
], ngImport: i0, template: "\n\n<div class=\"acr-wrapper\">\n\n <!-- Top Header Label -->\n <div class=\"acr-sub-label\" *ngIf=\"field() && field()?.isVisible\">\n {{ field()?.label }}\n <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n </div>\n\n <!-- Radio Option Cards -->\n <div class=\"radio-btn-group1\" *ngIf=\"field()?.configData?.isShowRadioOption\">\n <div\n class=\"annuity-radio-card-gender\"\n *ngFor=\"let data of field()?.options\"\n [class.selected]=\"inputValue === data.value\"\n [class.disable-radio-btn]=\"field()?.isDisable || data.disabled === true || data.disabled === 'true'\"\n (click)=\"(data.disabled === true || data.disabled === 'true') ? null : toggleRadio(data.value, $event)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics.\n Parent projects can bind (change)=\"myHandler($event)\" on the host component. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"data.value\"\n [checked]=\"inputValue === data.value\"\n (growthRateChange)=\"toggleRadio(data.value, $event)\"\n />\n <span\n class=\"forRadioLabelAnnuityRadio\"\n [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color\n }\"\n >{{ data.label }}</span>\n </div>\n </div>\n\n <!-- Card Container -->\n <div class=\"acr-card-container\" *ngIf=\"field()?.configData?.isShowCard\">\n\n <div class=\"acr-card\">\n <div class=\"acr-sub-label\" *ngIf=\"field()?.configData?.subLabel\">\n {{ field()?.configData?.subLabel }}\n </div>\n\n <div class=\"acr-cards-row\">\n <div\n class=\"acr-card-option\"\n *ngFor=\"let card of field()?.configData?.cardsValue\"\n [class.selected]=\"value === card.value\"\n [class.disabled]=\"card.disabled\"\n (click)=\"selectCard(card)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"card.value\"\n [checked]=\"value === card.value\"\n (change)=\"selectCard(card)\"\n />\n <div class=\"acr-card-main-value\">\n <span class=\"acr-card-main-value\">{{ card.mainValue }}</span><span class=\"acr-card-main-value\"></span>\n </div>\n <div class=\"acr-card-sub-value\">\n <span class=\"acr-card-sub-value\">{{ card.subValue }}</span><span class=\"acr-card-sub-value\"></span>\n </div>\n <div class=\"acr-card-rate\">{{ card.growthRate }} Annuity Rate</div>\n <div class=\"acr-card-details\">\n <div class=\"acr-card-detail-row\">\n <span>Guaranteed </span>\n <span>:</span>\n <strong>{{ card.guaranteed }}</strong>\n </div>\n <div class=\"acr-card-detail-row\">\n <span>Variable </span>\n <span>:</span>\n <strong>{{ card.variable }}</strong>\n </div>\n </div>\n <div class=\"acr-card-type\">\n <button class=\"acr-card-type-btn\" [ngClass]=\"{\n 'btn-high': card.value === 'High',\n 'btn-medium': card.value === 'Medium',\n 'btn-low': card.value !== 'High' && card.value !== 'Medium'\n }\">{{ card.value }} variable</button>\n </div
|
|
7101
|
+
], ngImport: i0, template: "\n\n<div class=\"acr-wrapper\">\n\n <!-- Top Header Label -->\n <div class=\"acr-sub-label\" *ngIf=\"field() && field()?.isVisible\">\n {{ field()?.label }}\n <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n </div>\n\n <!-- Radio Option Cards -->\n <div class=\"radio-btn-group1\" *ngIf=\"field()?.configData?.isShowRadioOption\">\n <div\n class=\"annuity-radio-card-gender\"\n *ngFor=\"let data of field()?.options\"\n [class.selected]=\"inputValue === data.value\"\n [class.disable-radio-btn]=\"field()?.isDisable || data.disabled === true || data.disabled === 'true'\"\n (click)=\"(data.disabled === true || data.disabled === 'true') ? null : toggleRadio(data.value, $event)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics.\n Parent projects can bind (change)=\"myHandler($event)\" on the host component. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"data.value\"\n [checked]=\"inputValue === data.value\"\n (growthRateChange)=\"toggleRadio(data.value, $event)\"\n />\n <span\n class=\"forRadioLabelAnnuityRadio\"\n [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color\n }\"\n >{{ data.label }}</span>\n </div>\n </div>\n\n <!-- Card Container -->\n <div class=\"acr-card-container\" *ngIf=\"field()?.configData?.isShowCard\">\n\n <div class=\"acr-card\">\n <div class=\"acr-sub-label\" *ngIf=\"field()?.configData?.subLabel\">\n {{ field()?.configData?.subLabel }}\n </div>\n\n <div class=\"acr-cards-row col-md-3 col-sm-6 col-xs-12 col-lg-3\">\n <div\n class=\"acr-card-option\"\n *ngFor=\"let card of field()?.configData?.cardsValue\"\n [class.selected]=\"value === card.value\"\n [class.disabled]=\"card.disabled\"\n (click)=\"selectCard(card)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"card.value\"\n [checked]=\"value === card.value\"\n (change)=\"selectCard(card)\"\n />\n <div class=\"acr-card-main-value\">\n <span class=\"acr-card-main-value\">{{ card.mainValue }}</span><span class=\"acr-card-main-value\"></span>\n </div>\n <div class=\"acr-card-sub-value\">\n <span class=\"acr-card-sub-value\">{{ card.subValue }}</span><span class=\"acr-card-sub-value\"></span>\n </div>\n <div class=\"acr-card-rate\">{{ card.growthRate }} Annuity Rate</div>\n <div class=\"acr-card-details\">\n <div class=\"acr-card-detail-row\">\n <span>Guaranteed </span>\n <span>:</span>\n <strong>{{ card.guaranteed }}</strong>\n </div>\n <div class=\"acr-card-detail-row\">\n <span>Variable </span>\n <span>:</span>\n <strong>{{ card.variable }}</strong>\n </div>\n </div>\n <!-- <div class=\"acr-card-type\">\n <button class=\"acr-card-type-btn\" [ngClass]=\"{\n 'btn-high': card.value === 'High',\n 'btn-medium': card.value === 'Medium',\n 'btn-low': card.value !== 'High' && card.value !== 'Medium'\n }\">{{ card.value }} variable</button>\n </div> -->\n </div>\n </div>\n <!-- Note \u2014 full width, vertically aligned with radio group and card container -->\n <div class=\"acr-note\" *ngIf=\"field()?.configData?.infoMessage\">\n <strong>Note:</strong> {{ field()?.configData?.infoMessage }}\n </div>\n </div>\n </div><!-- /acr-card-container -->\n\n</div>\n", styles: [".acr-wrapper{font-family:mulish!important;width:100%;display:flex;flex-direction:column}.forRadioLabelAnnuityRadio{font-size:12px!important;font-weight:400!important;cursor:pointer;color:#444!important;min-width:25%!important;height:fit-content}.required-star{color:red;margin-left:2px}.radio-btn-group1{display:flex;gap:4px;flex-wrap:wrap;padding-right:10px;padding-left:10px;max-width:max-content;height:90px;max-height:100px!important;line-height:15px}.annuity-radio-card-gender{border:1px solid rgba(218,218,218,1);border-radius:4px;padding:6px 20px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:1;-webkit-user-select:none;user-select:none;position:relative;overflow:visible}.annuity-radio-card-gender.selected{border-color:#fb0;border-width:1.6px}.annuity-radio-card-gender.selected:after{content:\"\";position:absolute;bottom:-16px;left:50%;transform:translate(-50%);width:0;height:0;z-index:3}.annuity-radio-card-gender.selected:before{content:\"\";position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #fff;z-index:4}.annuity-radio-card-gender:hover:not(.disable-radio-btn){border-color:#ffd600}.disable-radio-btn{opacity:.55;pointer-events:none;background:#f5f5f5}.acr-card-container{position:relative;width:100%;padding-top:22px;box-sizing:border-box;padding-right:10px;padding-left:10px}.acr-card{background:#fff;border:1px solid rgba(218,218,218,1);border-radius:14px;padding:20px 18px 16px;width:100%;position:relative;overflow:visible;box-sizing:border-box}.acr-card:after{content:\"\";position:absolute;bottom:100%;left:var(--arrow-left, 40px);transform:translate(-50%);transition:left .2s ease;border-width:14px;border-style:solid;border-color:transparent transparent rgba(218,218,218,1) transparent;z-index:2}.acr-card:before{content:\"\";position:absolute;bottom:100%;left:var(--arrow-left, 40px);transform:translate(-50%);transition:left .2s ease;border-width:12px;border-style:solid;border-color:transparent transparent rgba(255,255,255,1) transparent;z-index:3}.acr-sub-label{font-size:10px;font-weight:700;color:#444;margin-bottom:10px;padding-right:10px;padding-left:10px}.acr-cards-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}.acr-card-option{background:#fff;border:2px solid #E0E0E0;border-radius:12px;flex:1 1 0;max-width:none;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;-webkit-user-select:none;user-select:none;position:relative;overflow:visible;flex:0 0 calc((100% - 28px) / 3);max-width:calc((100% - 28px) / 3);padding:18px 16px;min-width:0}.acr-card-option.selected{border-color:#ffd600;box-shadow:0 0 0 1px #ffd600}.acr-card-option:hover:not(.disabled){border-color:#ffd600}.acr-card-option.disabled{opacity:.5;pointer-events:none}.acr-card-main-value{font-size:16px;font-weight:700;color:#444;margin-bottom:3px;line-height:20px}.acr-card-main-sub-value{font-size:16px;font-weight:400;color:#444;margin-bottom:3px;line-height:20px}.acr-card-sub-value{font-size:10px;font-weight:700;color:#444;line-height:14px}.acr-card-sub-sub-value{font-size:10px;font-weight:400;color:#444;line-height:14px}.acr-card-rate{background:linear-gradient(to right,#fb0,#fff7df,#fb0);color:#444;font-weight:700;font-size:10px;line-height:14px;padding:4px;margin-bottom:10px;margin-top:6px;width:100%;height:22px;text-align:center;box-sizing:border-box}.acr-card-details{width:100%;margin-bottom:14px;background-color:#f5f5f5;padding-left:10px;padding-right:10px;display:grid;grid-template-columns:max-content auto 1fr;column-gap:4px}.acr-card-detail-row{display:contents;font-size:10px;color:#444}.acr-card-detail-row span{font-weight:400;font-size:8px;line-height:14px;color:#444}.acr-card-detail-row strong{font-weight:600;color:#444;font-size:8px;line-height:14px;text-align:right}.acr-card-type{position:absolute;bottom:-14px;left:0;right:0;display:flex;justify-content:center}.acr-card-type-btn{border:none;border-radius:20px;padding:5px 22px;font-size:13px;font-weight:600;cursor:pointer;outline:none}.btn-high{background:#00946f;color:#fff;font-weight:700;font-size:10px;line-height:14px}.btn-medium{background:#66ccb2;color:#444;font-weight:700;font-size:10px;line-height:14px}.btn-low{background:#cef0e8;color:#444;font-weight:700;font-size:10px;line-height:14px}.acr-note{background:#ececec;color:#222;font-size:12px;border-radius:4px;padding:4px 8px;line-height:16px;width:100%;box-sizing:border-box;margin-top:8px;font-weight:400}.acr-note strong{font-weight:700;font-size:12px;line-height:16px;color:#222}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: FormsModule }] });
|
|
7081
7102
|
}
|
|
7082
7103
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityCalculatorRadioComponent, decorators: [{
|
|
7083
7104
|
type: Component,
|
|
@@ -7088,7 +7109,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
7088
7109
|
useExisting: forwardRef(() => AnnuityCalculatorRadioComponent),
|
|
7089
7110
|
multi: true
|
|
7090
7111
|
}
|
|
7091
|
-
], template: "\n\n<div class=\"acr-wrapper\">\n\n <!-- Top Header Label -->\n <div class=\"acr-sub-label\" *ngIf=\"field() && field()?.isVisible\">\n {{ field()?.label }}\n <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n </div>\n\n <!-- Radio Option Cards -->\n <div class=\"radio-btn-group1\" *ngIf=\"field()?.configData?.isShowRadioOption\">\n <div\n class=\"annuity-radio-card-gender\"\n *ngFor=\"let data of field()?.options\"\n [class.selected]=\"inputValue === data.value\"\n [class.disable-radio-btn]=\"field()?.isDisable || data.disabled === true || data.disabled === 'true'\"\n (click)=\"(data.disabled === true || data.disabled === 'true') ? null : toggleRadio(data.value, $event)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics.\n Parent projects can bind (change)=\"myHandler($event)\" on the host component. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"data.value\"\n [checked]=\"inputValue === data.value\"\n (growthRateChange)=\"toggleRadio(data.value, $event)\"\n />\n <span\n class=\"forRadioLabelAnnuityRadio\"\n [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color\n }\"\n >{{ data.label }}</span>\n </div>\n </div>\n\n <!-- Card Container -->\n <div class=\"acr-card-container\" *ngIf=\"field()?.configData?.isShowCard\">\n\n <div class=\"acr-card\">\n <div class=\"acr-sub-label\" *ngIf=\"field()?.configData?.subLabel\">\n {{ field()?.configData?.subLabel }}\n </div>\n\n <div class=\"acr-cards-row\">\n <div\n class=\"acr-card-option\"\n *ngFor=\"let card of field()?.configData?.cardsValue\"\n [class.selected]=\"value === card.value\"\n [class.disabled]=\"card.disabled\"\n (click)=\"selectCard(card)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"card.value\"\n [checked]=\"value === card.value\"\n (change)=\"selectCard(card)\"\n />\n <div class=\"acr-card-main-value\">\n <span class=\"acr-card-main-value\">{{ card.mainValue }}</span><span class=\"acr-card-main-value\"></span>\n </div>\n <div class=\"acr-card-sub-value\">\n <span class=\"acr-card-sub-value\">{{ card.subValue }}</span><span class=\"acr-card-sub-value\"></span>\n </div>\n <div class=\"acr-card-rate\">{{ card.growthRate }} Annuity Rate</div>\n <div class=\"acr-card-details\">\n <div class=\"acr-card-detail-row\">\n <span>Guaranteed </span>\n <span>:</span>\n <strong>{{ card.guaranteed }}</strong>\n </div>\n <div class=\"acr-card-detail-row\">\n <span>Variable </span>\n <span>:</span>\n <strong>{{ card.variable }}</strong>\n </div>\n </div>\n <div class=\"acr-card-type\">\n <button class=\"acr-card-type-btn\" [ngClass]=\"{\n 'btn-high': card.value === 'High',\n 'btn-medium': card.value === 'Medium',\n 'btn-low': card.value !== 'High' && card.value !== 'Medium'\n }\">{{ card.value }} variable</button>\n </div
|
|
7112
|
+
], template: "\n\n<div class=\"acr-wrapper\">\n\n <!-- Top Header Label -->\n <div class=\"acr-sub-label\" *ngIf=\"field() && field()?.isVisible\">\n {{ field()?.label }}\n <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span>\n </div>\n\n <!-- Radio Option Cards -->\n <div class=\"radio-btn-group1\" *ngIf=\"field()?.configData?.isShowRadioOption\">\n <div\n class=\"annuity-radio-card-gender\"\n *ngFor=\"let data of field()?.options\"\n [class.selected]=\"inputValue === data.value\"\n [class.disable-radio-btn]=\"field()?.isDisable || data.disabled === true || data.disabled === 'true'\"\n (click)=\"(data.disabled === true || data.disabled === 'true') ? null : toggleRadio(data.value, $event)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics.\n Parent projects can bind (change)=\"myHandler($event)\" on the host component. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"data.value\"\n [checked]=\"inputValue === data.value\"\n (growthRateChange)=\"toggleRadio(data.value, $event)\"\n />\n <span\n class=\"forRadioLabelAnnuityRadio\"\n [ngStyle]=\"{\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\n '--radio-button-font-color': field()?.controlStyle?.color\n }\"\n >{{ data.label }}</span>\n </div>\n </div>\n\n <!-- Card Container -->\n <div class=\"acr-card-container\" *ngIf=\"field()?.configData?.isShowCard\">\n\n <div class=\"acr-card\">\n <div class=\"acr-sub-label\" *ngIf=\"field()?.configData?.subLabel\">\n {{ field()?.configData?.subLabel }}\n </div>\n\n <div class=\"acr-cards-row col-md-3 col-sm-6 col-xs-12 col-lg-3\">\n <div\n class=\"acr-card-option\"\n *ngFor=\"let card of field()?.configData?.cardsValue\"\n [class.selected]=\"value === card.value\"\n [class.disabled]=\"card.disabled\"\n (click)=\"selectCard(card)\"\n >\n <!-- Hidden native radio input \u2014 enables proper [id]/[name] binding for form semantics. -->\n <input\n type=\"radio\"\n style=\"position: absolute; opacity: 0; width: 0; height: 0; pointer-events: none;\"\n [id]=\"field()?.fieldName\"\n [name]=\"field()?.fieldName\"\n [value]=\"card.value\"\n [checked]=\"value === card.value\"\n (change)=\"selectCard(card)\"\n />\n <div class=\"acr-card-main-value\">\n <span class=\"acr-card-main-value\">{{ card.mainValue }}</span><span class=\"acr-card-main-value\"></span>\n </div>\n <div class=\"acr-card-sub-value\">\n <span class=\"acr-card-sub-value\">{{ card.subValue }}</span><span class=\"acr-card-sub-value\"></span>\n </div>\n <div class=\"acr-card-rate\">{{ card.growthRate }} Annuity Rate</div>\n <div class=\"acr-card-details\">\n <div class=\"acr-card-detail-row\">\n <span>Guaranteed </span>\n <span>:</span>\n <strong>{{ card.guaranteed }}</strong>\n </div>\n <div class=\"acr-card-detail-row\">\n <span>Variable </span>\n <span>:</span>\n <strong>{{ card.variable }}</strong>\n </div>\n </div>\n <!-- <div class=\"acr-card-type\">\n <button class=\"acr-card-type-btn\" [ngClass]=\"{\n 'btn-high': card.value === 'High',\n 'btn-medium': card.value === 'Medium',\n 'btn-low': card.value !== 'High' && card.value !== 'Medium'\n }\">{{ card.value }} variable</button>\n </div> -->\n </div>\n </div>\n <!-- Note \u2014 full width, vertically aligned with radio group and card container -->\n <div class=\"acr-note\" *ngIf=\"field()?.configData?.infoMessage\">\n <strong>Note:</strong> {{ field()?.configData?.infoMessage }}\n </div>\n </div>\n </div><!-- /acr-card-container -->\n\n</div>\n", styles: [".acr-wrapper{font-family:mulish!important;width:100%;display:flex;flex-direction:column}.forRadioLabelAnnuityRadio{font-size:12px!important;font-weight:400!important;cursor:pointer;color:#444!important;min-width:25%!important;height:fit-content}.required-star{color:red;margin-left:2px}.radio-btn-group1{display:flex;gap:4px;flex-wrap:wrap;padding-right:10px;padding-left:10px;max-width:max-content;height:90px;max-height:100px!important;line-height:15px}.annuity-radio-card-gender{border:1px solid rgba(218,218,218,1);border-radius:4px;padding:6px 20px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex:1;-webkit-user-select:none;user-select:none;position:relative;overflow:visible}.annuity-radio-card-gender.selected{border-color:#fb0;border-width:1.6px}.annuity-radio-card-gender.selected:after{content:\"\";position:absolute;bottom:-16px;left:50%;transform:translate(-50%);width:0;height:0;z-index:3}.annuity-radio-card-gender.selected:before{content:\"\";position:absolute;bottom:-12px;left:50%;transform:translate(-50%);width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid #fff;z-index:4}.annuity-radio-card-gender:hover:not(.disable-radio-btn){border-color:#ffd600}.disable-radio-btn{opacity:.55;pointer-events:none;background:#f5f5f5}.acr-card-container{position:relative;width:100%;padding-top:22px;box-sizing:border-box;padding-right:10px;padding-left:10px}.acr-card{background:#fff;border:1px solid rgba(218,218,218,1);border-radius:14px;padding:20px 18px 16px;width:100%;position:relative;overflow:visible;box-sizing:border-box}.acr-card:after{content:\"\";position:absolute;bottom:100%;left:var(--arrow-left, 40px);transform:translate(-50%);transition:left .2s ease;border-width:14px;border-style:solid;border-color:transparent transparent rgba(218,218,218,1) transparent;z-index:2}.acr-card:before{content:\"\";position:absolute;bottom:100%;left:var(--arrow-left, 40px);transform:translate(-50%);transition:left .2s ease;border-width:12px;border-style:solid;border-color:transparent transparent rgba(255,255,255,1) transparent;z-index:3}.acr-sub-label{font-size:10px;font-weight:700;color:#444;margin-bottom:10px;padding-right:10px;padding-left:10px}.acr-cards-row{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}.acr-card-option{background:#fff;border:2px solid #E0E0E0;border-radius:12px;flex:1 1 0;max-width:none;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;-webkit-user-select:none;user-select:none;position:relative;overflow:visible;flex:0 0 calc((100% - 28px) / 3);max-width:calc((100% - 28px) / 3);padding:18px 16px;min-width:0}.acr-card-option.selected{border-color:#ffd600;box-shadow:0 0 0 1px #ffd600}.acr-card-option:hover:not(.disabled){border-color:#ffd600}.acr-card-option.disabled{opacity:.5;pointer-events:none}.acr-card-main-value{font-size:16px;font-weight:700;color:#444;margin-bottom:3px;line-height:20px}.acr-card-main-sub-value{font-size:16px;font-weight:400;color:#444;margin-bottom:3px;line-height:20px}.acr-card-sub-value{font-size:10px;font-weight:700;color:#444;line-height:14px}.acr-card-sub-sub-value{font-size:10px;font-weight:400;color:#444;line-height:14px}.acr-card-rate{background:linear-gradient(to right,#fb0,#fff7df,#fb0);color:#444;font-weight:700;font-size:10px;line-height:14px;padding:4px;margin-bottom:10px;margin-top:6px;width:100%;height:22px;text-align:center;box-sizing:border-box}.acr-card-details{width:100%;margin-bottom:14px;background-color:#f5f5f5;padding-left:10px;padding-right:10px;display:grid;grid-template-columns:max-content auto 1fr;column-gap:4px}.acr-card-detail-row{display:contents;font-size:10px;color:#444}.acr-card-detail-row span{font-weight:400;font-size:8px;line-height:14px;color:#444}.acr-card-detail-row strong{font-weight:600;color:#444;font-size:8px;line-height:14px;text-align:right}.acr-card-type{position:absolute;bottom:-14px;left:0;right:0;display:flex;justify-content:center}.acr-card-type-btn{border:none;border-radius:20px;padding:5px 22px;font-size:13px;font-weight:600;cursor:pointer;outline:none}.btn-high{background:#00946f;color:#fff;font-weight:700;font-size:10px;line-height:14px}.btn-medium{background:#66ccb2;color:#444;font-weight:700;font-size:10px;line-height:14px}.btn-low{background:#cef0e8;color:#444;font-weight:700;font-size:10px;line-height:14px}.acr-note{background:#ececec;color:#222;font-size:12px;border-radius:4px;padding:4px 8px;line-height:16px;width:100%;box-sizing:border-box;margin-top:8px;font-weight:400}.acr-note strong{font-weight:700;font-size:12px;line-height:16px;color:#222}\n"] }]
|
|
7092
7113
|
}], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { change: [{
|
|
7093
7114
|
type: Output
|
|
7094
7115
|
}], growthRateChange: [{
|
|
@@ -7251,8 +7272,9 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
7251
7272
|
digitBossSwitch = {
|
|
7252
7273
|
isVisible: false,
|
|
7253
7274
|
isSwitchOn: false,
|
|
7254
|
-
|
|
7255
|
-
|
|
7275
|
+
icon: '',
|
|
7276
|
+
digitBossText: '',
|
|
7277
|
+
digitBossValue: ''
|
|
7256
7278
|
};
|
|
7257
7279
|
digitBossToggleConfig = {
|
|
7258
7280
|
controlType: 'toggle',
|
|
@@ -7425,7 +7447,7 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
7425
7447
|
cssClass: null,
|
|
7426
7448
|
},
|
|
7427
7449
|
fieldName: 'minimumGuaranteedAnnuityPayout',
|
|
7428
|
-
label: 'Annuity
|
|
7450
|
+
label: 'Annuity',
|
|
7429
7451
|
placeHolder: '',
|
|
7430
7452
|
metaId: 'ALL_DP_DP_CTRL_amountTextbox_minimumGuaranteedAnnuityPayout_V1',
|
|
7431
7453
|
isVisible: true,
|
|
@@ -8006,6 +8028,197 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8006
8028
|
"isMasterControl": true,
|
|
8007
8029
|
"controlType": "hrLine"
|
|
8008
8030
|
};
|
|
8031
|
+
annuitypayoutObj = {
|
|
8032
|
+
"controlType": "select",
|
|
8033
|
+
"fieldName": "annuityPayoutOption",
|
|
8034
|
+
"label": "Premium Payment Frequency",
|
|
8035
|
+
"placeHolder": "Select",
|
|
8036
|
+
"metaId": "ALL_COM_GEN_CTRL_select_annuityPayoutOption_V1",
|
|
8037
|
+
"isVisible": true,
|
|
8038
|
+
"isDisable": false,
|
|
8039
|
+
"validators": {
|
|
8040
|
+
"isRequired": true,
|
|
8041
|
+
"requiredMessage": "Please select Minimum Guaranteed Annuity Payout",
|
|
8042
|
+
"minLength": null,
|
|
8043
|
+
"minLengthMessage": null,
|
|
8044
|
+
"maxLength": null,
|
|
8045
|
+
"maxLengthMessage": null,
|
|
8046
|
+
"pattern": null,
|
|
8047
|
+
"patternMessage": ""
|
|
8048
|
+
},
|
|
8049
|
+
"options": [{
|
|
8050
|
+
value: 'Monthly',
|
|
8051
|
+
label: 'Monthly',
|
|
8052
|
+
},
|
|
8053
|
+
{
|
|
8054
|
+
value: 'One Time',
|
|
8055
|
+
label: 'One Time',
|
|
8056
|
+
},
|
|
8057
|
+
{
|
|
8058
|
+
value: 'Quarterly',
|
|
8059
|
+
label: 'Quarterly',
|
|
8060
|
+
},
|
|
8061
|
+
{
|
|
8062
|
+
value: 'Half Yearly',
|
|
8063
|
+
label: 'Half Yearly',
|
|
8064
|
+
},
|
|
8065
|
+
{
|
|
8066
|
+
value: 'Yearly',
|
|
8067
|
+
label: 'Yearly',
|
|
8068
|
+
},],
|
|
8069
|
+
"cssClass": " col-sm-12 col-md-3 col-lg-3 col-xl-3 mt-4 pr-0 pt-2",
|
|
8070
|
+
"value": null,
|
|
8071
|
+
"style": null,
|
|
8072
|
+
"imageUrl": null,
|
|
8073
|
+
"isShowLabel": true,
|
|
8074
|
+
"controlStyle": {
|
|
8075
|
+
"controlType": null,
|
|
8076
|
+
"borderColor": null,
|
|
8077
|
+
"borderWidth": "0.094rem",
|
|
8078
|
+
"borderRadius": null,
|
|
8079
|
+
"fontSize": "12px",
|
|
8080
|
+
"fontWeight": null,
|
|
8081
|
+
"fontFamily": null,
|
|
8082
|
+
"color": null,
|
|
8083
|
+
"background": null,
|
|
8084
|
+
"caretColor": null,
|
|
8085
|
+
"nudgeDisplayImage": null,
|
|
8086
|
+
"dropdownOptionBgColor": null,
|
|
8087
|
+
"dropdownOptionColor": null,
|
|
8088
|
+
"dropdownOptionFontWeight": null,
|
|
8089
|
+
"width": null,
|
|
8090
|
+
"focusBorderWidth": "0.094rem",
|
|
8091
|
+
"focusBorderColor": null,
|
|
8092
|
+
"focusBackground": null,
|
|
8093
|
+
"focusColor": null,
|
|
8094
|
+
"focusDropdownOptionBgColor": null,
|
|
8095
|
+
"focusDropdownOptionColor": null,
|
|
8096
|
+
"focusDropdownOptionFontWeight": null,
|
|
8097
|
+
"focusDropdownOptionBorderLeft": null,
|
|
8098
|
+
"focusDropdownOptionBorderRadius": null,
|
|
8099
|
+
"hoverBorderColor": null,
|
|
8100
|
+
"hoverBorderWidth": "0.094rem",
|
|
8101
|
+
"hoverColor": null,
|
|
8102
|
+
"disableColor": null,
|
|
8103
|
+
"disableBackground": null,
|
|
8104
|
+
"errorBorderColor": null,
|
|
8105
|
+
"errorBorderWidth": "0.094rem",
|
|
8106
|
+
"errorColor": null,
|
|
8107
|
+
"createdDate": null,
|
|
8108
|
+
"padding": null,
|
|
8109
|
+
"margin": null,
|
|
8110
|
+
"isMasterCss": null,
|
|
8111
|
+
"controlMetaId": "ALL_COM_GEN_CTRL_multipleSelect_sourceOfFundForPremium_V1",
|
|
8112
|
+
"borderStyle": null,
|
|
8113
|
+
"height": null,
|
|
8114
|
+
"minHeight": null,
|
|
8115
|
+
"maxHeight": null,
|
|
8116
|
+
"minWidth": null,
|
|
8117
|
+
"maxWidth": null,
|
|
8118
|
+
"cssClass": null
|
|
8119
|
+
},
|
|
8120
|
+
"columnIndex": 2,
|
|
8121
|
+
"configData": {
|
|
8122
|
+
"subText": "Discount available on some options"
|
|
8123
|
+
},
|
|
8124
|
+
"controlStyles": null
|
|
8125
|
+
};
|
|
8126
|
+
minimumAnnuityPayoutfrequencyObj = {
|
|
8127
|
+
"controlType": "select",
|
|
8128
|
+
"fieldName": "annuityPayoutFrequencyOption",
|
|
8129
|
+
"label": "Annuity Payout Frequency",
|
|
8130
|
+
"placeHolder": "Select",
|
|
8131
|
+
"metaId": "ALL_COM_GEN_CTRL_select_annuityPayoutFrequencyOption_V1",
|
|
8132
|
+
"isVisible": true,
|
|
8133
|
+
"isDisable": false,
|
|
8134
|
+
"validators": {
|
|
8135
|
+
"isRequired": true,
|
|
8136
|
+
"requiredMessage": "Please select Minimum Guaranteed Annuity Payout",
|
|
8137
|
+
"minLength": null,
|
|
8138
|
+
"minLengthMessage": null,
|
|
8139
|
+
"maxLength": null,
|
|
8140
|
+
"maxLengthMessage": null,
|
|
8141
|
+
"pattern": null,
|
|
8142
|
+
"patternMessage": ""
|
|
8143
|
+
},
|
|
8144
|
+
"options": [{
|
|
8145
|
+
value: 'Monthly',
|
|
8146
|
+
label: 'Monthly',
|
|
8147
|
+
},
|
|
8148
|
+
{
|
|
8149
|
+
value: 'One Time',
|
|
8150
|
+
label: 'One Time',
|
|
8151
|
+
},
|
|
8152
|
+
{
|
|
8153
|
+
value: 'Quarterly',
|
|
8154
|
+
label: 'Quarterly',
|
|
8155
|
+
},
|
|
8156
|
+
{
|
|
8157
|
+
value: 'Half Yearly',
|
|
8158
|
+
label: 'Half Yearly',
|
|
8159
|
+
},
|
|
8160
|
+
{
|
|
8161
|
+
value: 'Yearly',
|
|
8162
|
+
label: 'Yearly',
|
|
8163
|
+
},
|
|
8164
|
+
],
|
|
8165
|
+
"cssClass": " col-sm-12 col-md-3 col-lg-3 col-xl-3 mt-4 pr-0 pt-2",
|
|
8166
|
+
"value": null,
|
|
8167
|
+
"style": null,
|
|
8168
|
+
"imageUrl": null,
|
|
8169
|
+
"isShowLabel": true,
|
|
8170
|
+
"controlStyle": {
|
|
8171
|
+
"controlType": null,
|
|
8172
|
+
"borderColor": null,
|
|
8173
|
+
"borderWidth": "0.094rem",
|
|
8174
|
+
"borderRadius": null,
|
|
8175
|
+
"fontSize": "12px",
|
|
8176
|
+
"fontWeight": null,
|
|
8177
|
+
"fontFamily": null,
|
|
8178
|
+
"color": null,
|
|
8179
|
+
"background": null,
|
|
8180
|
+
"caretColor": null,
|
|
8181
|
+
"nudgeDisplayImage": null,
|
|
8182
|
+
"dropdownOptionBgColor": null,
|
|
8183
|
+
"dropdownOptionColor": null,
|
|
8184
|
+
"dropdownOptionFontWeight": null,
|
|
8185
|
+
"width": null,
|
|
8186
|
+
"focusBorderWidth": "0.094rem",
|
|
8187
|
+
"focusBorderColor": null,
|
|
8188
|
+
"focusBackground": null,
|
|
8189
|
+
"focusColor": null,
|
|
8190
|
+
"focusDropdownOptionBgColor": null,
|
|
8191
|
+
"focusDropdownOptionColor": null,
|
|
8192
|
+
"focusDropdownOptionFontWeight": null,
|
|
8193
|
+
"focusDropdownOptionBorderLeft": null,
|
|
8194
|
+
"focusDropdownOptionBorderRadius": null,
|
|
8195
|
+
"hoverBorderColor": null,
|
|
8196
|
+
"hoverBorderWidth": "0.094rem",
|
|
8197
|
+
"hoverColor": null,
|
|
8198
|
+
"disableColor": null,
|
|
8199
|
+
"disableBackground": null,
|
|
8200
|
+
"errorBorderColor": null,
|
|
8201
|
+
"errorBorderWidth": "0.094rem",
|
|
8202
|
+
"errorColor": null,
|
|
8203
|
+
"createdDate": null,
|
|
8204
|
+
"padding": null,
|
|
8205
|
+
"margin": null,
|
|
8206
|
+
"isMasterCss": null,
|
|
8207
|
+
"controlMetaId": "ALL_COM_GEN_CTRL_multipleSelect_sourceOfFundForPremium_V1",
|
|
8208
|
+
"borderStyle": null,
|
|
8209
|
+
"height": null,
|
|
8210
|
+
"minHeight": null,
|
|
8211
|
+
"maxHeight": null,
|
|
8212
|
+
"minWidth": null,
|
|
8213
|
+
"maxWidth": null,
|
|
8214
|
+
"cssClass": null
|
|
8215
|
+
},
|
|
8216
|
+
"columnIndex": 2,
|
|
8217
|
+
"configData": {
|
|
8218
|
+
"subText": "Discount available on some options"
|
|
8219
|
+
},
|
|
8220
|
+
"controlStyles": null
|
|
8221
|
+
};
|
|
8009
8222
|
constructor(masterService) {
|
|
8010
8223
|
this.masterService = masterService;
|
|
8011
8224
|
}
|
|
@@ -8040,7 +8253,7 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8040
8253
|
this.annuityPremiumObj['configData']['isDisableDropdown'] = this.premiumDetails()?.Premium['isDisableDropdown'];
|
|
8041
8254
|
}
|
|
8042
8255
|
if (Object.hasOwn(this.premiumDetails()?.Premium, 'options')) {
|
|
8043
|
-
this.
|
|
8256
|
+
this.annuitypayoutObj['options'] = this.premiumDetails()?.Premium['options'];
|
|
8044
8257
|
}
|
|
8045
8258
|
}
|
|
8046
8259
|
if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity)) {
|
|
@@ -8060,7 +8273,10 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8060
8273
|
this.minimumAnnuityPayoutObj['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
|
|
8061
8274
|
}
|
|
8062
8275
|
if (Object.hasOwn(this.premiumDetails()?.annuity, 'options')) {
|
|
8063
|
-
this.
|
|
8276
|
+
this.minimumAnnuityPayoutfrequencyObj['options'] = this.premiumDetails()?.annuity['options'];
|
|
8277
|
+
}
|
|
8278
|
+
if (Object.hasOwn(this.premiumDetails()?.annuity, 'isVisible')) {
|
|
8279
|
+
this.minimumAnnuityPayoutObj['isVisible'] = this.premiumDetails()?.annuity['isVisible'];
|
|
8064
8280
|
}
|
|
8065
8281
|
}
|
|
8066
8282
|
if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuityTableCalculator)) {
|
|
@@ -8164,7 +8380,7 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8164
8380
|
this.onGrowthRateOptionSelected.emit();
|
|
8165
8381
|
}
|
|
8166
8382
|
onAnnuityPremiumValueChange(value) {
|
|
8167
|
-
this.annuityPremium = value;
|
|
8383
|
+
this.annuityPremium['textValue'] = value;
|
|
8168
8384
|
this.validations.ispremiumEntry = false;
|
|
8169
8385
|
if (this.masterService.checkIfValueIsEmpty(this.annuityPremium['textValue'])) {
|
|
8170
8386
|
this.validations.ispremiumEntry = true;
|
|
@@ -8180,7 +8396,7 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8180
8396
|
}
|
|
8181
8397
|
}
|
|
8182
8398
|
onMinPremiumValueChange(value) {
|
|
8183
|
-
this.minumumAnnuityPayout = value;
|
|
8399
|
+
this.minumumAnnuityPayout['textValue'] = value;
|
|
8184
8400
|
this.onMinimumPremiumValueChange.emit(value);
|
|
8185
8401
|
//convert to words
|
|
8186
8402
|
if (!this.masterService.checkIfValueIsEmpty(this.minumumAnnuityPayout['textValue']) && !this.masterService.checkIfValueIsEmpty(this.minumumAnnuityPayout['selectValue'])) {
|
|
@@ -8229,11 +8445,14 @@ class AnnuityPremiumCalculatorComponent {
|
|
|
8229
8445
|
return str ? str + ' Only' : '';
|
|
8230
8446
|
}
|
|
8231
8447
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, deps: [{ token: MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
|
|
8232
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, triggerValidation: { classPropertyName: "triggerValidation", publicName: "triggerValidation", isSignal: false, isRequired: false, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange", onMinimumPremiumValueChange: "onMinimumPremiumValueChange", onAutioDebitValueChange: "onAutioDebitValueChange", onGuranteedAnnuityValueChange: "onGuranteedAnnuityValueChange", onDigitBossSwitchToggle: "onDigitBossSwitchToggle", onGrowthRateOptionSelected: "onGrowthRateOptionSelected" }, viewQueries: [{ propertyName: "annuityRadioRef", first: true, predicate: AnnuityCalculatorRadioComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\n <div class=\"row\">\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img\n src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's Your Premium to Annuity Calculator</h4>\n </div>\n <!-- <div class=\"row\"> -->\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\n <!-- <div class=\"custom-grid-template\">\n\n </div> -->\n\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\n </div>\n <!-- </div> -->\n <div class=\" col-12\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\n\">\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\n Please enter Premium amount\n </div>\n <div class=\"annuity-mat-hint\" *ngIf=\"annuityPremiumObj?.configData?.numbertoword\">{{annuityPremiumObj?.configData?.numbertoword}}</div>\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div>\n <div class=\"col-2 col-lg-2 d-flex justify-content-center align-items-center\"\n style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px); position: relative; height: auto; min-height: 100%;\">\n <!-- Top line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); top: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <!-- Bottom line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); bottom: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <lib-icon-button [field]=\"interchangeButtonObj\" />\n </div>\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" />\n <div class=\"annuity-mat-hint\" *ngIf=\"minimumAnnuityPayoutObj?.configData?.numbertoword\">{{minimumAnnuityPayoutObj?.configData?.numbertoword}}</div>\n <div class=\"minium-annuity mt-3\" *ngIf=\"guranteedannuityObj['isVisible']\">\n <div class=\"annuity-msg w-100 px-2 py-1\">\n Value based on assumed 10% annual growth of Nifty 50 index.\n </div>\n <div class=\"w-100 px-2 py-1\">\n <lib-radio [field]=\"guranteedannuityObj\" [(ngModel)]=\"selectedGuranteedAnnuity\"\n (ngModelChange)=\"onGuranteedAnnuityChange($event)\" />\n </div>\n <div class=\"annuity-msg-1 d-flex align-items-center flex-nowrap w-100 px-2 py-1\">\n <img src=\"https://cdn.godigit.com/digitPlusAssets/streamline_graph-arrow-increase-remix.png\"\n style=\"max-width: 24px;\" />\n <span>Potential for higher returns by lowering the minimum guaranteed annuity rate.</span>\n </div>\n </div>\n\n </div>\n </div>\n <!-- <div class=\"vertical-line\"></div> -->\n <!-- <div class=\"custom-grid-template\">\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div> -->\n\n </div>\n\n\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\n <div class=\"mx-4\">\n <div class=\"digit-boss-banner\" *ngIf=\"digitBossSwitch?.isVisible\">\n <lib-toggle [field]=\"digitBossToggleConfig\" [(ngModel)]=\"this.digitBossSwitch.isSwitchOn\" (ngModelChange)=\"onDigitBossSwitchChange($event)\"></lib-toggle>\n <div class=\"digit-boss-text\">\n {{this.digitBossSwitch?.prefixText}}\n <span class=\"highlight\">{{this.digitBossSwitch?.highlightText}}</span>\n {{this.digitBossSwitch?.subText}}\n <span class=\"arrow-icon\">\u2197</span>\n </div>\n </div>\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\n <div class=\"card mb-0 mt-2\"\n style=\"align-items: center;border:none;font-size: 8px;font-weight: 400;color:rgba(68, 68, 68, 1) \"\n >\n <div class=\"mx-4\" *ngIf=\"recalculateSubTextObj?.isVisible\"><img src=\"https://cdn.godigit.com/digitPlusAssets/Group+1010106336.png\"\n style=\"margin-left: 3px;\" />\n <span style=\"margin-left: 6px;\">Every time you make a change above, please click recalculate.</span>\n </div>\n </div>\n </div>\n <div\n style=\"display: flex;align-items: center;justify-content: center;border:none;font-size: 10px;font-weight: 700;height:32px;background-color: rgba(255, 250, 235, 1);gap: 8px;margin: 4px;\"\n *ngIf=\"annuityTableCalculator?.isVisible\">\n <img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" />\n Minimum Guaranteed Payout(A) + Variable Payout(B) = Total Payout(C)\n </div>\n <!-- annuity calculator table -->\n <div class=\"annuity-tables-main-container\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <div class=\"d-flex flex-row annuity-tables-container\">\n <!-- Table 1 -->\n <div class=\"annuity-calculator-table1\">\n <div class=\"table-header annuitytable1-header\">Minimum Guaranteed Annuity Payout(A)</div>\n <div class=\"table-body\">\n <div class=\"table-cell\"><span class=\"rupee-icon\">\u20B9</span><span\n style=\"font-size:12px; color: rgba(68, 68, 68, 1);\">\n <{{annuityTableCalculator.annuitycalculatorTable1val1}}>\n </span></div>\n <button class=\"annuitytable-button\">{{annuityTableCalculator.annuitycalculatorTable1val2}}</button>\n </div>\n </div>\n\n <div class=\"operator-symbol\">+</div>\n\n <!-- Table 2 -->\n <div class=\"annuity-calculator-table2\">\n <div class=\"table-header annuitytable1-header\">Assume growth of BenchMark index</div>\n <div class=\"table-body\">\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val1}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val2}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val3}}</div>\n </div>\n </div>\n\n <!-- Table 3 -->\n <div class=\"annuity-calculator-table3\">\n <div class=\"table-header annuitytable1-header\">1st Variable Annuity Payout(B)</div>\n <div class=\"table-body\">\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val1}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val2}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val3}}</div>\n </div>\n </div>\n\n <div class=\"operator-symbol\">=</div>\n\n <!-- Table 4 -->\n <div class=\"annuity-calculator-table4\">\n <div class=\"table-header annuitytable4-header\">1st TotalPayout/Frequency(C)</div>\n <div class=\"table-body\">\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val1}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val2}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val3}}</div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"annuity-calculator-paragraph\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <span class=\"annuity-calculator-paragraph1\">This is an assumed growth percentage for the index basis which the\n values in columns B and C are calculated.</span> Actual growth will depend on index performance and may affect\n your variable annuity payout and total annuity payout.\n </div>\n\n <div *ngIf=\"growthRateObj.isVisible\">\n <lib-annuity-calculator-radio\n [field]=\"growthRateObj\"\n [(ngModel)]=\"growthRateOption\"\n (change)=\"onGrowthRateRadioChange($event)\"\n (growthRateChange)=\"onGrowthRateCardChange($event)\" />\n </div>\n\n <div *ngIf=\"hrLineObj.isVisible\" class=\"generateSummary\">\n <lib-hr-line [field]=\"hrLineObj\" />\n </div>\n\n <div *ngIf=\"generateSummaryObj.isVisible\" class=\"generateSummary\">\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\n </div>\n </div>\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr;align-items:end}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}.annuity-msg{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e5f0fa;height:fit-content}.annuity-msg-1{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e6f7f3;height:fit-content;flex-wrap:nowrap!important}.annuity-tables-main-container{border:2px solid rgba(221,221,221,1);border-radius:8px;display:flex}.annuity-tables-container{display:flex;align-items:stretch;gap:0;width:100%}.annuity-calculator-table1,.annuity-calculator-table2,.annuity-calculator-table3,.annuity-calculator-table4{display:flex;flex-direction:column;height:100%;flex:1;color:#444;font-weight:400;font-size:10px}.annuity-calculator-table1{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table2{border-left:1px solid rgba(221,221,221,1);border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table3{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table4{border-left:1px solid rgba(221,221,221,1)}.table-header{padding:12px;font-size:10px;font-weight:700;text-align:center;border-bottom:1px solid rgba(221,221,221,1);height:60px;display:flex;align-items:center;justify-content:center;word-wrap:break-word;word-break:break-word;hyphens:auto}.annuitytable1-header{background-color:#ececec;color:#444}.annuitytable4-header{background-color:#fb03;color:#444}.table-body{display:flex;flex-direction:column;flex:1}.table-cell{padding:12px;text-align:center;font-size:16px;font-weight:600;flex:1;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px}.annuity-mat-hint{font-size:8px;text-align:start;font-weight:400;color:#444;letter-spacing:0px}.table-row{padding:12px;text-align:center;font-size:14px;font-weight:500;background-color:#fff;border-bottom:1px solid #999;flex:1;display:flex;align-items:center;justify-content:center}.table-row:last-child{border-bottom:none}.annuitytable4-bg{background-color:#e6f7f3!important;color:#444}.annuitytable-button{background-color:#ececec;border:none;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700;cursor:pointer;margin-top:0;width:auto;min-width:30%;max-width:90%;height:24px;display:block;margin-left:auto;margin-right:auto;position:relative;bottom:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rupee-icon{font-weight:700;margin-right:2px;font-size:12px;color:#444}.operator-symbol{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;padding:0 16px;color:#f90}.annuity-calculator-paragraph{padding:16px 8px 4px;font-size:10px;margin:0 0 20px auto;width:73%;font-weight:400;color:#444;background-color:#ebf1ff}.annuity-calculator-paragraph1{font-weight:700;font-size:10px}.minium-annuity{display:flex;flex-direction:column}@media (max-width: 991px) and (min-width: 768px){.table-header{padding:8px 4px;font-size:9px;line-height:1.1}}@media (max-width: 767px) and (min-width: 576px){.table-header{padding:10px 6px;font-size:9px}}@media (max-width: 575px){.table-header{padding:8px 4px;font-size:8px}}@media (max-width: 575px){.annuity-msg{font-size:10px;line-height:1;height:fit-content}}@media (max-width: 575px){.annuity-msg-1{font-size:10px;line-height:1;flex-wrap:nowrap!important;height:fit-content}.annuity-msg-1 .img{width:4px;height:4px}}@media (max-width: 991px) and (min-width: 768px){.annuity-msg,.annuity-msg-1{font-size:9px;line-height:1.1;height:fit-content}}@media (max-width: 767px) and (min-width: 576px){.annuity-msg,.annuity-msg-1{font-size:10px;line-height:1.1;height:fit-content}}.digit-boss-banner{background-color:#333;color:#fff;display:flex;align-items:center;padding:8px 16px;border-radius:4px;margin-bottom:16px;gap:8px;font-size:12px;min-height:16px;opacity:1;transform:rotate(0)}.digit-boss-banner ::ng-deep .toggle-background{margin-top:0!important;padding:0!important;background-color:transparent!important;border:none!important}.digit-boss-banner ::ng-deep .toggle_switch{margin-top:0!important;gap:0!important}.digit-boss-text{display:flex;align-items:center;gap:4px;white-space:nowrap}.highlight{color:#fb0;font-weight:700}.arrow-icon{color:#fb0;margin-left:4px;font-size:14px}.generateSummary{margin-right:.4rem;margin-left:.4rem}\n"], dependencies: [{ kind: "component", type: AnnuityCalculatorRadioComponent, selector: "lib-annuity-calculator-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change", "growthRateChange"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
8448
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: AnnuityPremiumCalculatorComponent, isStandalone: true, selector: "lib-annuity-premium-calculator", inputs: { field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null }, triggerValidation: { classPropertyName: "triggerValidation", publicName: "triggerValidation", isSignal: false, isRequired: false, transformFunction: null }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange", onMinimumPremiumValueChange: "onMinimumPremiumValueChange", onAutioDebitValueChange: "onAutioDebitValueChange", onGuranteedAnnuityValueChange: "onGuranteedAnnuityValueChange", onDigitBossSwitchToggle: "onDigitBossSwitchToggle", onGrowthRateOptionSelected: "onGrowthRateOptionSelected" }, viewQueries: [{ propertyName: "annuityRadioRef", first: true, predicate: AnnuityCalculatorRadioComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\n <div class=\"row\">\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img\n src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's Your Premium to Annuity Calculator</h4>\n </div>\n <!-- <div class=\"row\"> -->\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\n <!-- <div class=\"custom-grid-template\">\n\n </div> -->\n\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\n </div>\n <!-- </div> -->\n <div class=\" col-12\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\n\">\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-amount-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium['textValue']\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\n Please enter Premium amount\n </div>\n <div class=\"annuity-mat-hint\" *ngIf=\"annuityPremiumObj?.configData?.numbertoword\">{{annuityPremiumObj?.configData?.numbertoword}}</div>\n\n <lib-select [field]=\"annuitypayoutObj\" [(ngModel)]=\"annuityPremium['selectValue']\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div>\n <div class=\"col-2 col-lg-2 d-flex justify-content-center align-items-center\"\n style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px); position: relative; height: auto; min-height: 100%;\">\n <!-- Top line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); top: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <!-- Bottom line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); bottom: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <lib-icon-button [field]=\"interchangeButtonObj\" />\n </div>\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-amount-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout['textValue']\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" *ngIf=\"minimumAnnuityPayoutObj.isVisible;\"/>\n <div class=\"annuity-mat-hint\" *ngIf=\"minimumAnnuityPayoutObj.isVisible && minimumAnnuityPayoutObj?.configData?.numbertoword\">{{minimumAnnuityPayoutObj?.configData?.numbertoword}}</div>\n <lib-select [field]=\"minimumAnnuityPayoutfrequencyObj\" [(ngModel)]=\"minumumAnnuityPayout['selectValue']\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" />\n <div class=\"minium-annuity mt-3\" *ngIf=\"guranteedannuityObj['isVisible']\">\n <div class=\"annuity-msg w-100 px-2 py-1\">\n Value based on assumed 10% annual growth of Nifty 50 index.\n </div>\n <div class=\"w-100 px-2 py-1\">\n <lib-radio [field]=\"guranteedannuityObj\" [(ngModel)]=\"selectedGuranteedAnnuity\"\n (ngModelChange)=\"onGuranteedAnnuityChange($event)\" />\n </div>\n <div class=\"annuity-msg-1 d-flex align-items-center flex-nowrap w-100 px-2 py-1\">\n <img src=\"https://cdn.godigit.com/digitPlusAssets/streamline_graph-arrow-increase-remix.png\"\n style=\"max-width: 24px;\" />\n <span>Potential for higher returns by lowering the minimum guaranteed annuity rate.</span>\n </div>\n </div>\n\n </div>\n <!-- <ng-template #emptyRightCol>\n <div class=\"col-5 col-lg-5 p-0\"></div>\n </ng-template> -->\n </div>\n <!-- <div class=\"vertical-line\"></div> -->\n <!-- <div class=\"custom-grid-template\">\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div> -->\n\n </div>\n\n\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\n <div class=\"mx-4\">\n <div class=\"digit-boss-banner\" *ngIf=\"digitBossSwitch?.isVisible\">\n <lib-toggle [field]=\"digitBossToggleConfig\" [(ngModel)]=\"this.digitBossSwitch.isSwitchOn\" (ngModelChange)=\"onDigitBossSwitchChange($event)\"></lib-toggle>\n <div class=\"digit-boss-text\">\n {{this.digitBossSwitch?.prefixText}}\n <span class=\"highlight\">{{this.digitBossSwitch?.highlightText}}</span>\n {{this.digitBossSwitch?.subText}}\n <span class=\"arrow-icon\">\u2197</span>\n </div>\n </div>\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\n\n <!-- //digit boss updated design -->\n <div class=\"col-12 mt-3\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\" *ngIf=\"!minimumAnnuityPayoutObj.isVisible\">\n <div class=\"col-12 col-lg-12 d-flex flex-column justify-content-center p-0\">\n <div class=\"realistic-picture-card\">\n <div class=\"realistic-picture-header\">\n <img *ngIf=\"digitBossSwitch?.icon\" [src]=\"digitBossSwitch?.icon\" style=\"width:12px;height:12px;object-fit:contain;flex-shrink:0;\" />\n <span class=\"realistic-picture-label\">Realistic Picture:</span>\n </div>\n <span class=\"realistic-picture-text\">{{digitBossSwitch?.digitBossText}} <span class=\"realistic-picture-highlight\">{{digitBossSwitch?.digitBossValue}}</span></span>\n </div>\n </div>\n\n</div>\n\n <div class=\"card mb-0 mt-2\"\n style=\"align-items: center;border:none;font-size: 8px;font-weight: 400;color:rgba(68, 68, 68, 1) \"\n >\n <div class=\"mx-4\" *ngIf=\"recalculateSubTextObj?.isVisible\"><img src=\"https://cdn.godigit.com/digitPlusAssets/Group+1010106336.png\"\n style=\"margin-left: 3px;\" />\n <span style=\"margin-left: 6px;\">Every time you make a change above, please click recalculate.</span>\n </div>\n </div>\n </div>\n <div\n style=\"display: flex;align-items: center;justify-content: center;border:none;font-size: 10px;font-weight: 700;height:32px;background-color: rgba(255, 250, 235, 1);gap: 8px;margin: 4px;\"\n *ngIf=\"annuityTableCalculator?.isVisible\">\n <img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" />\n Minimum Guaranteed Payout(A) + Variable Payout(B) = Total Payout(C)\n </div>\n <!-- annuity calculator table -->\n <div class=\"annuity-tables-main-container\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <div class=\"d-flex flex-row annuity-tables-container\">\n <!-- Table 1 -->\n <div class=\"annuity-calculator-table1\">\n <div class=\"table-header annuitytable1-header\">Minimum Guaranteed Annuity Payout(A)</div>\n <div class=\"table-body\">\n <div class=\"table-cell\"><span class=\"rupee-icon\">\u20B9</span><span\n style=\"font-size:12px; color: rgba(68, 68, 68, 1);\">\n <{{annuityTableCalculator.annuitycalculatorTable1val1}}>\n </span></div>\n <button class=\"annuitytable-button\">{{annuityTableCalculator.annuitycalculatorTable1val2}}</button>\n </div>\n </div>\n\n <div class=\"operator-symbol\">+</div>\n\n <!-- Table 2 -->\n <div class=\"annuity-calculator-table2\">\n <div class=\"table-header annuitytable1-header\">Assume growth of BenchMark index</div>\n <div class=\"table-body\">\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val1}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val2}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val3}}</div>\n </div>\n </div>\n\n <!-- Table 3 -->\n <div class=\"annuity-calculator-table3\">\n <div class=\"table-header annuitytable1-header\">1st Variable Annuity Payout(B)</div>\n <div class=\"table-body\">\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val1}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val2}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val3}}</div>\n </div>\n </div>\n\n <div class=\"operator-symbol\">=</div>\n\n <!-- Table 4 -->\n <div class=\"annuity-calculator-table4\">\n <div class=\"table-header annuitytable4-header\">1st TotalPayout/Frequency(C)</div>\n <div class=\"table-body\">\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val1}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val2}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val3}}</div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"annuity-calculator-paragraph\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <span class=\"annuity-calculator-paragraph1\">This is an assumed growth percentage for the index basis which the\n values in columns B and C are calculated.</span> Actual growth will depend on index performance and may affect\n your variable annuity payout and total annuity payout.\n </div>\n\n <div *ngIf=\"growthRateObj.isVisible\">\n <lib-annuity-calculator-radio\n [field]=\"growthRateObj\"\n [(ngModel)]=\"growthRateOption\"\n (change)=\"onGrowthRateRadioChange($event)\"\n (growthRateChange)=\"onGrowthRateCardChange($event)\" />\n </div>\n\n <div *ngIf=\"hrLineObj.isVisible\" class=\"generateSummary\">\n <lib-hr-line [field]=\"hrLineObj\" />\n </div>\n\n <div *ngIf=\"generateSummaryObj.isVisible\" class=\"generateSummary\">\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\n </div>\n </div>\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr;align-items:end}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}.annuity-msg{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e5f0fa;height:fit-content}.annuity-msg-1{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e6f7f3;height:fit-content;flex-wrap:nowrap!important}.annuity-tables-main-container{border:2px solid rgba(221,221,221,1);border-radius:8px;display:flex}.annuity-tables-container{display:flex;align-items:stretch;gap:0;width:100%}.annuity-calculator-table1,.annuity-calculator-table2,.annuity-calculator-table3,.annuity-calculator-table4{display:flex;flex-direction:column;height:100%;flex:1;color:#444;font-weight:400;font-size:10px}.annuity-calculator-table1{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table2{border-left:1px solid rgba(221,221,221,1);border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table3{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table4{border-left:1px solid rgba(221,221,221,1)}.table-header{padding:12px;font-size:10px;font-weight:700;text-align:center;border-bottom:1px solid rgba(221,221,221,1);height:60px;display:flex;align-items:center;justify-content:center;word-wrap:break-word;word-break:break-word;hyphens:auto}.annuitytable1-header{background-color:#ececec;color:#444}.annuitytable4-header{background-color:#fb03;color:#444}.table-body{display:flex;flex-direction:column;flex:1}.table-cell{padding:12px;text-align:center;font-size:16px;font-weight:600;flex:1;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px}.annuity-mat-hint{font-size:8px;text-align:start;font-weight:400;color:#444;letter-spacing:0px}.table-row{padding:12px;text-align:center;font-size:14px;font-weight:500;background-color:#fff;border-bottom:1px solid #999;flex:1;display:flex;align-items:center;justify-content:center}.table-row:last-child{border-bottom:none}.annuitytable4-bg{background-color:#e6f7f3!important;color:#444}.annuitytable-button{background-color:#ececec;border:none;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700;cursor:pointer;margin-top:0;width:auto;min-width:30%;max-width:90%;height:24px;display:block;margin-left:auto;margin-right:auto;position:relative;bottom:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rupee-icon{font-weight:700;margin-right:2px;font-size:12px;color:#444}.operator-symbol{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;padding:0 16px;color:#f90}.annuity-calculator-paragraph{padding:16px 8px 4px;font-size:10px;margin:0 0 20px auto;width:73%;font-weight:400;color:#444;background-color:#ebf1ff}.annuity-calculator-paragraph1{font-weight:700;font-size:10px}.minium-annuity{display:flex;flex-direction:column}@media (max-width: 991px) and (min-width: 768px){.table-header{padding:8px 4px;font-size:9px;line-height:1.1}}@media (max-width: 767px) and (min-width: 576px){.table-header{padding:10px 6px;font-size:9px}}@media (max-width: 575px){.table-header{padding:8px 4px;font-size:8px}}@media (max-width: 575px){.annuity-msg{font-size:10px;line-height:1;height:fit-content}}@media (max-width: 575px){.annuity-msg-1{font-size:10px;line-height:1;flex-wrap:nowrap!important;height:fit-content}.annuity-msg-1 .img{width:4px;height:4px}}@media (max-width: 991px) and (min-width: 768px){.annuity-msg,.annuity-msg-1{font-size:9px;line-height:1.1;height:fit-content}}@media (max-width: 767px) and (min-width: 576px){.annuity-msg,.annuity-msg-1{font-size:10px;line-height:1.1;height:fit-content}}.digit-boss-banner{background-color:#333;color:#fff;display:flex;align-items:center;padding:8px 16px;border-radius:4px;margin-bottom:16px;gap:8px;font-size:12px;min-height:16px;opacity:1;transform:rotate(0)}.digit-boss-banner ::ng-deep .toggle-background{margin-top:0!important;padding:0!important;background-color:transparent!important;border:none!important}.digit-boss-banner ::ng-deep .toggle_switch{margin-top:0!important;gap:0!important}.digit-boss-text{display:flex;align-items:center;gap:4px;white-space:nowrap}.highlight{color:#fb0;font-weight:700}.arrow-icon{color:#fb0;margin-left:4px;font-size:14px}.generateSummary{margin-right:.4rem;margin-left:.4rem}.realistic-picture-card{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px;background-color:#cce0f5;border-radius:4px;padding:4px 6px;font-size:8px;color:#06c;line-height:1.5;box-sizing:border-box}.realistic-picture-header{display:flex;align-items:center;gap:4px}.realistic-picture-content{display:flex;flex-direction:column;gap:2px}.realistic-picture-label{font-weight:700;font-size:8px;line-height:8px;color:#06c}.realistic-picture-text{font-weight:600;font-size:10px;line-height:14px;color:#222}.realistic-picture-highlight{font-weight:800;font-size:10px;line-height:14px;color:#0048ad}\n"], dependencies: [{ kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange", "infoClick"] }, { kind: "component", type: AmountTextboxComponent, selector: "lib-amount-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: AnnuityCalculatorRadioComponent, selector: "lib-annuity-calculator-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change", "growthRateChange"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
8233
8449
|
}
|
|
8234
8450
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, decorators: [{
|
|
8235
8451
|
type: Component,
|
|
8236
8452
|
args: [{ selector: 'lib-annuity-premium-calculator', standalone: true, imports: [
|
|
8453
|
+
InfoComponent,
|
|
8454
|
+
SelectComponent,
|
|
8455
|
+
AmountTextboxComponent,
|
|
8237
8456
|
AnnuityCalculatorRadioComponent,
|
|
8238
8457
|
HrLineComponent,
|
|
8239
8458
|
ToggleComponent,
|
|
@@ -8243,7 +8462,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
8243
8462
|
RadioComponent,
|
|
8244
8463
|
CommonModule,
|
|
8245
8464
|
FormsModule
|
|
8246
|
-
], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\n <div class=\"row\">\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img\n src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's Your Premium to Annuity Calculator</h4>\n </div>\n <!-- <div class=\"row\"> -->\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\n <!-- <div class=\"custom-grid-template\">\n\n </div> -->\n\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\n </div>\n <!-- </div> -->\n <div class=\" col-12\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\n\">\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\n Please enter Premium amount\n </div>\n <div class=\"annuity-mat-hint\" *ngIf=\"annuityPremiumObj?.configData?.numbertoword\">{{annuityPremiumObj?.configData?.numbertoword}}</div>\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div>\n <div class=\"col-2 col-lg-2 d-flex justify-content-center align-items-center\"\n style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px); position: relative; height: auto; min-height: 100%;\">\n <!-- Top line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); top: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <!-- Bottom line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); bottom: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <lib-icon-button [field]=\"interchangeButtonObj\" />\n </div>\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" />\n <div class=\"annuity-mat-hint\" *ngIf=\"minimumAnnuityPayoutObj?.configData?.numbertoword\">{{minimumAnnuityPayoutObj?.configData?.numbertoword}}</div>\n <div class=\"minium-annuity mt-3\" *ngIf=\"guranteedannuityObj['isVisible']\">\n <div class=\"annuity-msg w-100 px-2 py-1\">\n Value based on assumed 10% annual growth of Nifty 50 index.\n </div>\n <div class=\"w-100 px-2 py-1\">\n <lib-radio [field]=\"guranteedannuityObj\" [(ngModel)]=\"selectedGuranteedAnnuity\"\n (ngModelChange)=\"onGuranteedAnnuityChange($event)\" />\n </div>\n <div class=\"annuity-msg-1 d-flex align-items-center flex-nowrap w-100 px-2 py-1\">\n <img src=\"https://cdn.godigit.com/digitPlusAssets/streamline_graph-arrow-increase-remix.png\"\n style=\"max-width: 24px;\" />\n <span>Potential for higher returns by lowering the minimum guaranteed annuity rate.</span>\n </div>\n </div>\n\n </div>\n </div>\n <!-- <div class=\"vertical-line\"></div> -->\n <!-- <div class=\"custom-grid-template\">\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div> -->\n\n </div>\n\n\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\n <div class=\"mx-4\">\n <div class=\"digit-boss-banner\" *ngIf=\"digitBossSwitch?.isVisible\">\n <lib-toggle [field]=\"digitBossToggleConfig\" [(ngModel)]=\"this.digitBossSwitch.isSwitchOn\" (ngModelChange)=\"onDigitBossSwitchChange($event)\"></lib-toggle>\n <div class=\"digit-boss-text\">\n {{this.digitBossSwitch?.prefixText}}\n <span class=\"highlight\">{{this.digitBossSwitch?.highlightText}}</span>\n {{this.digitBossSwitch?.subText}}\n <span class=\"arrow-icon\">\u2197</span>\n </div>\n </div>\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\n <div class=\"card mb-0 mt-2\"\n style=\"align-items: center;border:none;font-size: 8px;font-weight: 400;color:rgba(68, 68, 68, 1) \"\n >\n <div class=\"mx-4\" *ngIf=\"recalculateSubTextObj?.isVisible\"><img src=\"https://cdn.godigit.com/digitPlusAssets/Group+1010106336.png\"\n style=\"margin-left: 3px;\" />\n <span style=\"margin-left: 6px;\">Every time you make a change above, please click recalculate.</span>\n </div>\n </div>\n </div>\n <div\n style=\"display: flex;align-items: center;justify-content: center;border:none;font-size: 10px;font-weight: 700;height:32px;background-color: rgba(255, 250, 235, 1);gap: 8px;margin: 4px;\"\n *ngIf=\"annuityTableCalculator?.isVisible\">\n <img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" />\n Minimum Guaranteed Payout(A) + Variable Payout(B) = Total Payout(C)\n </div>\n <!-- annuity calculator table -->\n <div class=\"annuity-tables-main-container\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <div class=\"d-flex flex-row annuity-tables-container\">\n <!-- Table 1 -->\n <div class=\"annuity-calculator-table1\">\n <div class=\"table-header annuitytable1-header\">Minimum Guaranteed Annuity Payout(A)</div>\n <div class=\"table-body\">\n <div class=\"table-cell\"><span class=\"rupee-icon\">\u20B9</span><span\n style=\"font-size:12px; color: rgba(68, 68, 68, 1);\">\n <{{annuityTableCalculator.annuitycalculatorTable1val1}}>\n </span></div>\n <button class=\"annuitytable-button\">{{annuityTableCalculator.annuitycalculatorTable1val2}}</button>\n </div>\n </div>\n\n <div class=\"operator-symbol\">+</div>\n\n <!-- Table 2 -->\n <div class=\"annuity-calculator-table2\">\n <div class=\"table-header annuitytable1-header\">Assume growth of BenchMark index</div>\n <div class=\"table-body\">\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val1}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val2}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val3}}</div>\n </div>\n </div>\n\n <!-- Table 3 -->\n <div class=\"annuity-calculator-table3\">\n <div class=\"table-header annuitytable1-header\">1st Variable Annuity Payout(B)</div>\n <div class=\"table-body\">\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val1}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val2}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val3}}</div>\n </div>\n </div>\n\n <div class=\"operator-symbol\">=</div>\n\n <!-- Table 4 -->\n <div class=\"annuity-calculator-table4\">\n <div class=\"table-header annuitytable4-header\">1st TotalPayout/Frequency(C)</div>\n <div class=\"table-body\">\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val1}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val2}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val3}}</div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"annuity-calculator-paragraph\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <span class=\"annuity-calculator-paragraph1\">This is an assumed growth percentage for the index basis which the\n values in columns B and C are calculated.</span> Actual growth will depend on index performance and may affect\n your variable annuity payout and total annuity payout.\n </div>\n\n <div *ngIf=\"growthRateObj.isVisible\">\n <lib-annuity-calculator-radio\n [field]=\"growthRateObj\"\n [(ngModel)]=\"growthRateOption\"\n (change)=\"onGrowthRateRadioChange($event)\"\n (growthRateChange)=\"onGrowthRateCardChange($event)\" />\n </div>\n\n <div *ngIf=\"hrLineObj.isVisible\" class=\"generateSummary\">\n <lib-hr-line [field]=\"hrLineObj\" />\n </div>\n\n <div *ngIf=\"generateSummaryObj.isVisible\" class=\"generateSummary\">\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\n </div>\n </div>\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr;align-items:end}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}.annuity-msg{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e5f0fa;height:fit-content}.annuity-msg-1{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e6f7f3;height:fit-content;flex-wrap:nowrap!important}.annuity-tables-main-container{border:2px solid rgba(221,221,221,1);border-radius:8px;display:flex}.annuity-tables-container{display:flex;align-items:stretch;gap:0;width:100%}.annuity-calculator-table1,.annuity-calculator-table2,.annuity-calculator-table3,.annuity-calculator-table4{display:flex;flex-direction:column;height:100%;flex:1;color:#444;font-weight:400;font-size:10px}.annuity-calculator-table1{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table2{border-left:1px solid rgba(221,221,221,1);border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table3{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table4{border-left:1px solid rgba(221,221,221,1)}.table-header{padding:12px;font-size:10px;font-weight:700;text-align:center;border-bottom:1px solid rgba(221,221,221,1);height:60px;display:flex;align-items:center;justify-content:center;word-wrap:break-word;word-break:break-word;hyphens:auto}.annuitytable1-header{background-color:#ececec;color:#444}.annuitytable4-header{background-color:#fb03;color:#444}.table-body{display:flex;flex-direction:column;flex:1}.table-cell{padding:12px;text-align:center;font-size:16px;font-weight:600;flex:1;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px}.annuity-mat-hint{font-size:8px;text-align:start;font-weight:400;color:#444;letter-spacing:0px}.table-row{padding:12px;text-align:center;font-size:14px;font-weight:500;background-color:#fff;border-bottom:1px solid #999;flex:1;display:flex;align-items:center;justify-content:center}.table-row:last-child{border-bottom:none}.annuitytable4-bg{background-color:#e6f7f3!important;color:#444}.annuitytable-button{background-color:#ececec;border:none;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700;cursor:pointer;margin-top:0;width:auto;min-width:30%;max-width:90%;height:24px;display:block;margin-left:auto;margin-right:auto;position:relative;bottom:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rupee-icon{font-weight:700;margin-right:2px;font-size:12px;color:#444}.operator-symbol{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;padding:0 16px;color:#f90}.annuity-calculator-paragraph{padding:16px 8px 4px;font-size:10px;margin:0 0 20px auto;width:73%;font-weight:400;color:#444;background-color:#ebf1ff}.annuity-calculator-paragraph1{font-weight:700;font-size:10px}.minium-annuity{display:flex;flex-direction:column}@media (max-width: 991px) and (min-width: 768px){.table-header{padding:8px 4px;font-size:9px;line-height:1.1}}@media (max-width: 767px) and (min-width: 576px){.table-header{padding:10px 6px;font-size:9px}}@media (max-width: 575px){.table-header{padding:8px 4px;font-size:8px}}@media (max-width: 575px){.annuity-msg{font-size:10px;line-height:1;height:fit-content}}@media (max-width: 575px){.annuity-msg-1{font-size:10px;line-height:1;flex-wrap:nowrap!important;height:fit-content}.annuity-msg-1 .img{width:4px;height:4px}}@media (max-width: 991px) and (min-width: 768px){.annuity-msg,.annuity-msg-1{font-size:9px;line-height:1.1;height:fit-content}}@media (max-width: 767px) and (min-width: 576px){.annuity-msg,.annuity-msg-1{font-size:10px;line-height:1.1;height:fit-content}}.digit-boss-banner{background-color:#333;color:#fff;display:flex;align-items:center;padding:8px 16px;border-radius:4px;margin-bottom:16px;gap:8px;font-size:12px;min-height:16px;opacity:1;transform:rotate(0)}.digit-boss-banner ::ng-deep .toggle-background{margin-top:0!important;padding:0!important;background-color:transparent!important;border:none!important}.digit-boss-banner ::ng-deep .toggle_switch{margin-top:0!important;gap:0!important}.digit-boss-text{display:flex;align-items:center;gap:4px;white-space:nowrap}.highlight{color:#fb0;font-weight:700}.arrow-icon{color:#fb0;margin-left:4px;font-size:14px}.generateSummary{margin-right:.4rem;margin-left:.4rem}\n"] }]
|
|
8465
|
+
], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\n <div class=\"row\">\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img\n src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's Your Premium to Annuity Calculator</h4>\n </div>\n <!-- <div class=\"row\"> -->\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\n <!-- <div class=\"custom-grid-template\">\n\n </div> -->\n\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\n </div>\n <!-- </div> -->\n <div class=\" col-12\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\n\">\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-amount-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium['textValue']\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\n Please enter Premium amount\n </div>\n <div class=\"annuity-mat-hint\" *ngIf=\"annuityPremiumObj?.configData?.numbertoword\">{{annuityPremiumObj?.configData?.numbertoword}}</div>\n\n <lib-select [field]=\"annuitypayoutObj\" [(ngModel)]=\"annuityPremium['selectValue']\"\n (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div>\n <div class=\"col-2 col-lg-2 d-flex justify-content-center align-items-center\"\n style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px); position: relative; height: auto; min-height: 100%;\">\n <!-- Top line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); top: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <!-- Bottom line -->\n <div style=\"position: absolute; left: 50%; transform: translateX(-50%); width: 1px; height: calc(50% + 24px); bottom: -37px; background: rgba(221, 221, 221, 1); pointer-events: none;\"></div>\n <lib-icon-button [field]=\"interchangeButtonObj\" />\n </div>\n <div class=\"col-5 col-lg-5 d-flex flex-column p-0\">\n <lib-amount-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout['textValue']\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" *ngIf=\"minimumAnnuityPayoutObj.isVisible;\"/>\n <div class=\"annuity-mat-hint\" *ngIf=\"minimumAnnuityPayoutObj.isVisible && minimumAnnuityPayoutObj?.configData?.numbertoword\">{{minimumAnnuityPayoutObj?.configData?.numbertoword}}</div>\n <lib-select [field]=\"minimumAnnuityPayoutfrequencyObj\" [(ngModel)]=\"minumumAnnuityPayout['selectValue']\"\n (ngModelChange)=\"onMinPremiumValueChange($event)\" />\n <div class=\"minium-annuity mt-3\" *ngIf=\"guranteedannuityObj['isVisible']\">\n <div class=\"annuity-msg w-100 px-2 py-1\">\n Value based on assumed 10% annual growth of Nifty 50 index.\n </div>\n <div class=\"w-100 px-2 py-1\">\n <lib-radio [field]=\"guranteedannuityObj\" [(ngModel)]=\"selectedGuranteedAnnuity\"\n (ngModelChange)=\"onGuranteedAnnuityChange($event)\" />\n </div>\n <div class=\"annuity-msg-1 d-flex align-items-center flex-nowrap w-100 px-2 py-1\">\n <img src=\"https://cdn.godigit.com/digitPlusAssets/streamline_graph-arrow-increase-remix.png\"\n style=\"max-width: 24px;\" />\n <span>Potential for higher returns by lowering the minimum guaranteed annuity rate.</span>\n </div>\n </div>\n\n </div>\n <!-- <ng-template #emptyRightCol>\n <div class=\"col-5 col-lg-5 p-0\"></div>\n </ng-template> -->\n </div>\n <!-- <div class=\"vertical-line\"></div> -->\n <!-- <div class=\"custom-grid-template\">\n <div>\n <lib-toggle [field]=\"enableAutoDebitObj\" [(ngModel)]=\"isEnableAutoDebit\"\n (ngModelChange)=\"onEnableAutoDebitValueChange($event)\" />\n </div>\n </div> -->\n\n </div>\n\n\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\n <div class=\"mx-4\">\n <div class=\"digit-boss-banner\" *ngIf=\"digitBossSwitch?.isVisible\">\n <lib-toggle [field]=\"digitBossToggleConfig\" [(ngModel)]=\"this.digitBossSwitch.isSwitchOn\" (ngModelChange)=\"onDigitBossSwitchChange($event)\"></lib-toggle>\n <div class=\"digit-boss-text\">\n {{this.digitBossSwitch?.prefixText}}\n <span class=\"highlight\">{{this.digitBossSwitch?.highlightText}}</span>\n {{this.digitBossSwitch?.subText}}\n <span class=\"arrow-icon\">\u2197</span>\n </div>\n </div>\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\n\n <!-- //digit boss updated design -->\n <div class=\"col-12 mt-3\" style=\"\n justify-content: center;\n flex-direction: row;\n display: flex;\" *ngIf=\"!minimumAnnuityPayoutObj.isVisible\">\n <div class=\"col-12 col-lg-12 d-flex flex-column justify-content-center p-0\">\n <div class=\"realistic-picture-card\">\n <div class=\"realistic-picture-header\">\n <img *ngIf=\"digitBossSwitch?.icon\" [src]=\"digitBossSwitch?.icon\" style=\"width:12px;height:12px;object-fit:contain;flex-shrink:0;\" />\n <span class=\"realistic-picture-label\">Realistic Picture:</span>\n </div>\n <span class=\"realistic-picture-text\">{{digitBossSwitch?.digitBossText}} <span class=\"realistic-picture-highlight\">{{digitBossSwitch?.digitBossValue}}</span></span>\n </div>\n </div>\n\n</div>\n\n <div class=\"card mb-0 mt-2\"\n style=\"align-items: center;border:none;font-size: 8px;font-weight: 400;color:rgba(68, 68, 68, 1) \"\n >\n <div class=\"mx-4\" *ngIf=\"recalculateSubTextObj?.isVisible\"><img src=\"https://cdn.godigit.com/digitPlusAssets/Group+1010106336.png\"\n style=\"margin-left: 3px;\" />\n <span style=\"margin-left: 6px;\">Every time you make a change above, please click recalculate.</span>\n </div>\n </div>\n </div>\n <div\n style=\"display: flex;align-items: center;justify-content: center;border:none;font-size: 10px;font-weight: 700;height:32px;background-color: rgba(255, 250, 235, 1);gap: 8px;margin: 4px;\"\n *ngIf=\"annuityTableCalculator?.isVisible\">\n <img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" />\n Minimum Guaranteed Payout(A) + Variable Payout(B) = Total Payout(C)\n </div>\n <!-- annuity calculator table -->\n <div class=\"annuity-tables-main-container\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <div class=\"d-flex flex-row annuity-tables-container\">\n <!-- Table 1 -->\n <div class=\"annuity-calculator-table1\">\n <div class=\"table-header annuitytable1-header\">Minimum Guaranteed Annuity Payout(A)</div>\n <div class=\"table-body\">\n <div class=\"table-cell\"><span class=\"rupee-icon\">\u20B9</span><span\n style=\"font-size:12px; color: rgba(68, 68, 68, 1);\">\n <{{annuityTableCalculator.annuitycalculatorTable1val1}}>\n </span></div>\n <button class=\"annuitytable-button\">{{annuityTableCalculator.annuitycalculatorTable1val2}}</button>\n </div>\n </div>\n\n <div class=\"operator-symbol\">+</div>\n\n <!-- Table 2 -->\n <div class=\"annuity-calculator-table2\">\n <div class=\"table-header annuitytable1-header\">Assume growth of BenchMark index</div>\n <div class=\"table-body\">\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val1}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val2}}</div>\n <div class=\"table-row\">@{{annuityTableCalculator.annuitycalculatorTable2val3}}</div>\n </div>\n </div>\n\n <!-- Table 3 -->\n <div class=\"annuity-calculator-table3\">\n <div class=\"table-header annuitytable1-header\">1st Variable Annuity Payout(B)</div>\n <div class=\"table-body\">\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val1}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val2}}</div>\n <div class=\"table-row\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable3val3}}</div>\n </div>\n </div>\n\n <div class=\"operator-symbol\">=</div>\n\n <!-- Table 4 -->\n <div class=\"annuity-calculator-table4\">\n <div class=\"table-header annuitytable4-header\">1st TotalPayout/Frequency(C)</div>\n <div class=\"table-body\">\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val1}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val2}}</div>\n <div class=\"table-row annuitytable4-bg\"><span\n class=\"rupee-icon\">\u20B9</span>{{annuityTableCalculator.annuitycalculatorTable4val3}}</div>\n </div>\n </div>\n </div>\n </div>\n\n <div class=\"annuity-calculator-paragraph\" *ngIf=\"annuityTableCalculator?.isVisible\">\n <span class=\"annuity-calculator-paragraph1\">This is an assumed growth percentage for the index basis which the\n values in columns B and C are calculated.</span> Actual growth will depend on index performance and may affect\n your variable annuity payout and total annuity payout.\n </div>\n\n <div *ngIf=\"growthRateObj.isVisible\">\n <lib-annuity-calculator-radio\n [field]=\"growthRateObj\"\n [(ngModel)]=\"growthRateOption\"\n (change)=\"onGrowthRateRadioChange($event)\"\n (growthRateChange)=\"onGrowthRateCardChange($event)\" />\n </div>\n\n <div *ngIf=\"hrLineObj.isVisible\" class=\"generateSummary\">\n <lib-hr-line [field]=\"hrLineObj\" />\n </div>\n\n <div *ngIf=\"generateSummaryObj.isVisible\" class=\"generateSummary\">\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\n </div>\n </div>\n", styles: [".card-main-title{font-size:16px;font-family:Mulish!important;letter-spacing:0px!important;font-weight:800;line-height:24px;padding-bottom:16px}.col-5-5{flex:0 0 auto;max-width:44.16666667%}.custom-grid-template{display:grid;grid-template-columns:4fr .5fr 4fr;align-items:end}.vertical-line{border-left:2px solid #ccc;height:100px;margin:0 10px}.error-message{font-size:12px;font-weight:500;color:#e00;letter-spacing:0px}.annuity-msg{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e5f0fa;height:fit-content}.annuity-msg-1{padding:4px 6px;margin-top:8px;font-size:10px;font-weight:400;color:#444;background-color:#e6f7f3;height:fit-content;flex-wrap:nowrap!important}.annuity-tables-main-container{border:2px solid rgba(221,221,221,1);border-radius:8px;display:flex}.annuity-tables-container{display:flex;align-items:stretch;gap:0;width:100%}.annuity-calculator-table1,.annuity-calculator-table2,.annuity-calculator-table3,.annuity-calculator-table4{display:flex;flex-direction:column;height:100%;flex:1;color:#444;font-weight:400;font-size:10px}.annuity-calculator-table1{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table2{border-left:1px solid rgba(221,221,221,1);border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table3{border-right:1px solid rgba(221,221,221,1)}.annuity-calculator-table4{border-left:1px solid rgba(221,221,221,1)}.table-header{padding:12px;font-size:10px;font-weight:700;text-align:center;border-bottom:1px solid rgba(221,221,221,1);height:60px;display:flex;align-items:center;justify-content:center;word-wrap:break-word;word-break:break-word;hyphens:auto}.annuitytable1-header{background-color:#ececec;color:#444}.annuitytable4-header{background-color:#fb03;color:#444}.table-body{display:flex;flex-direction:column;flex:1}.table-cell{padding:12px;text-align:center;font-size:16px;font-weight:600;flex:1;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:4px}.annuity-mat-hint{font-size:8px;text-align:start;font-weight:400;color:#444;letter-spacing:0px}.table-row{padding:12px;text-align:center;font-size:14px;font-weight:500;background-color:#fff;border-bottom:1px solid #999;flex:1;display:flex;align-items:center;justify-content:center}.table-row:last-child{border-bottom:none}.annuitytable4-bg{background-color:#e6f7f3!important;color:#444}.annuitytable-button{background-color:#ececec;border:none;border-radius:4px;padding:2px 8px;font-size:10px;font-weight:700;cursor:pointer;margin-top:0;width:auto;min-width:30%;max-width:90%;height:24px;display:block;margin-left:auto;margin-right:auto;position:relative;bottom:40px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rupee-icon{font-weight:700;margin-right:2px;font-size:12px;color:#444}.operator-symbol{display:flex;align-items:center;justify-content:center;font-size:16px;font-weight:700;padding:0 16px;color:#f90}.annuity-calculator-paragraph{padding:16px 8px 4px;font-size:10px;margin:0 0 20px auto;width:73%;font-weight:400;color:#444;background-color:#ebf1ff}.annuity-calculator-paragraph1{font-weight:700;font-size:10px}.minium-annuity{display:flex;flex-direction:column}@media (max-width: 991px) and (min-width: 768px){.table-header{padding:8px 4px;font-size:9px;line-height:1.1}}@media (max-width: 767px) and (min-width: 576px){.table-header{padding:10px 6px;font-size:9px}}@media (max-width: 575px){.table-header{padding:8px 4px;font-size:8px}}@media (max-width: 575px){.annuity-msg{font-size:10px;line-height:1;height:fit-content}}@media (max-width: 575px){.annuity-msg-1{font-size:10px;line-height:1;flex-wrap:nowrap!important;height:fit-content}.annuity-msg-1 .img{width:4px;height:4px}}@media (max-width: 991px) and (min-width: 768px){.annuity-msg,.annuity-msg-1{font-size:9px;line-height:1.1;height:fit-content}}@media (max-width: 767px) and (min-width: 576px){.annuity-msg,.annuity-msg-1{font-size:10px;line-height:1.1;height:fit-content}}.digit-boss-banner{background-color:#333;color:#fff;display:flex;align-items:center;padding:8px 16px;border-radius:4px;margin-bottom:16px;gap:8px;font-size:12px;min-height:16px;opacity:1;transform:rotate(0)}.digit-boss-banner ::ng-deep .toggle-background{margin-top:0!important;padding:0!important;background-color:transparent!important;border:none!important}.digit-boss-banner ::ng-deep .toggle_switch{margin-top:0!important;gap:0!important}.digit-boss-text{display:flex;align-items:center;gap:4px;white-space:nowrap}.highlight{color:#fb0;font-weight:700}.arrow-icon{color:#fb0;margin-left:4px;font-size:14px}.generateSummary{margin-right:.4rem;margin-left:.4rem}.realistic-picture-card{display:flex;flex-direction:row;align-items:center;flex-wrap:wrap;gap:4px;background-color:#cce0f5;border-radius:4px;padding:4px 6px;font-size:8px;color:#06c;line-height:1.5;box-sizing:border-box}.realistic-picture-header{display:flex;align-items:center;gap:4px}.realistic-picture-content{display:flex;flex-direction:column;gap:2px}.realistic-picture-label{font-weight:700;font-size:8px;line-height:8px;color:#06c}.realistic-picture-text{font-weight:600;font-size:10px;line-height:14px;color:#222}.realistic-picture-highlight{font-weight:800;font-size:10px;line-height:14px;color:#0048ad}\n"] }]
|
|
8247
8466
|
}], ctorParameters: () => [{ type: MasterControlService }], propDecorators: { triggerValidation: [{
|
|
8248
8467
|
type: Input
|
|
8249
8468
|
}], annuityRadioRef: [{
|