master-control 0.3.73 → 0.3.75

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.
@@ -1624,10 +1624,40 @@ class MultipleSelectComponent {
1624
1624
  onChange = () => { };
1625
1625
  onTouched = () => { };
1626
1626
  ngOnInit() {
1627
- // Initialize inputValue with a default or initial value if needed
1627
+ // Initialize empty arrays to ensure proper initialization
1628
+ if (!this.inputValue) {
1629
+ this.inputValue = [];
1630
+ }
1631
+ if (!this.selectedValues) {
1632
+ this.selectedValues = [];
1633
+ }
1634
+ if (!this.visibleChip) {
1635
+ this.visibleChip = [];
1636
+ }
1628
1637
  }
1629
1638
  writeValue(value) {
1630
- this.inputValue = value;
1639
+ console.log('Multiple select writeValue called with:', value); // Debug log
1640
+ if (value !== null && value !== undefined && Array.isArray(value)) {
1641
+ // Create new arrays to trigger change detection
1642
+ this.inputValue = [...value];
1643
+ this.selectedValues = [...value];
1644
+ // Calculate visible chips and remaining count
1645
+ const maxVisible = 2;
1646
+ this.visibleChip = this.selectedValues.slice(0, maxVisible);
1647
+ this.remainingCount = Math.max(0, this.selectedValues.length - maxVisible);
1648
+ console.log('Set values:', {
1649
+ inputValue: this.inputValue,
1650
+ selectedValues: this.selectedValues,
1651
+ visibleChip: this.visibleChip,
1652
+ remainingCount: this.remainingCount
1653
+ });
1654
+ }
1655
+ else {
1656
+ this.inputValue = [];
1657
+ this.selectedValues = [];
1658
+ this.visibleChip = [];
1659
+ this.remainingCount = 0;
1660
+ }
1631
1661
  }
1632
1662
  registerOnChange(fn) {
1633
1663
  this.onChange = fn;
@@ -6395,7 +6425,7 @@ class AnnuityPremiumCalculatorComponent {
6395
6425
  isMasterControl: false,
6396
6426
  controlType: 'amountTextbox',
6397
6427
  };
6398
- minimumAnnuityPayout = {
6428
+ minimumAnnuityPayoutObj = {
6399
6429
  controlStyle: {
6400
6430
  controlType: 'amountTextbox',
6401
6431
  borderColor: '#DADADA',
@@ -6796,31 +6826,29 @@ class AnnuityPremiumCalculatorComponent {
6796
6826
  ngOnChanges(changes) {
6797
6827
  if ((changes['premiumDetails']) && !this.masterService.checkIfValueIsEmpty(changes['premiumDetails'].currentValue)) {
6798
6828
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium)) {
6799
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['textValue'])) {
6800
- this.annuityPremium['textValue'] = this.premiumDetails()?.Premium['textValue'];
6801
- }
6829
+ // Create new object to trigger change detection
6830
+ this.annuityPremium = {
6831
+ textValue: this.premiumDetails()?.Premium['textValue'] || this.annuityPremium.textValue,
6832
+ selectValue: this.premiumDetails()?.Premium['selectValue'] || this.annuityPremium.selectValue
6833
+ };
6802
6834
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
6803
6835
  this.annuityPremiumObj['isDisable'] = this.premiumDetails()?.Premium['isDisable'];
6804
6836
  }
6805
6837
  if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
6806
6838
  this.annuityPremiumObj['configData']['isDisableDropdown'] = this.premiumDetails()?.Premium['isDisableDropdown'];
6807
6839
  }
6808
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.Premium['selectValue'])) {
6809
- this.annuityPremium['selectValue'] = this.premiumDetails()?.Premium['selectValue'];
6810
- }
6811
6840
  }
6812
6841
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity)) {
6813
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['textValue'])) {
6814
- this.minumumAnnuityPayout['textValue'] = this.premiumDetails()?.annuity['textValue'];
6815
- }
6816
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisable')) {
6817
- this.minimumAnnuityPayout['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
6818
- }
6819
- if (Object.hasOwn(this.premiumDetails()?.Premium, 'isDisableDropdown')) {
6820
- this.minimumAnnuityPayout['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
6842
+ // Create new object to trigger change detection
6843
+ this.minumumAnnuityPayout = {
6844
+ textValue: this.premiumDetails()?.annuity['textValue'] || this.minumumAnnuityPayout.textValue,
6845
+ selectValue: this.premiumDetails()?.annuity['selectValue'] || this.minumumAnnuityPayout.selectValue
6846
+ };
6847
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisable')) {
6848
+ this.minimumAnnuityPayoutObj['isDisable'] = this.premiumDetails()?.annuity['isDisable'];
6821
6849
  }
6822
- if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.annuity['selectValue'])) {
6823
- this.minumumAnnuityPayout['selectValue'] = this.premiumDetails()?.annuity['selectValue'];
6850
+ if (Object.hasOwn(this.premiumDetails()?.annuity, 'isDisableDropdown')) {
6851
+ this.minimumAnnuityPayoutObj['configData']['isDisableDropdown'] = this.premiumDetails()?.annuity['isDisableDropdown'];
6824
6852
  }
6825
6853
  }
6826
6854
  if (!this.masterService.checkIfValueIsEmpty(this.premiumDetails()?.calculateAnnuity)) {
@@ -6872,7 +6900,7 @@ class AnnuityPremiumCalculatorComponent {
6872
6900
  }
6873
6901
  }
6874
6902
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, deps: [{ token: MasterControlService }], target: i0.ɵɵFactoryTarget.Component });
6875
- 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 }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\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}.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}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.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"] }] });
6903
+ 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 }, premiumDetails: { classPropertyName: "premiumDetails", publicName: "premiumDetails", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCalcualteButtonClick: "onCalcualteButtonClick", onGenerateSummaryClick: "onGenerateSummaryClick", onAnnuityPremiumChange: "onAnnuityPremiumChange" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\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}.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}\n"], dependencies: [{ kind: "component", type: ToggleComponent, selector: "lib-toggle", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectTextboxComponent, selector: "lib-select-textbox", inputs: ["field", "reactiveFormControlobject"] }, { kind: "component", type: ButtonComponent, selector: "lib-button", inputs: ["field"] }, { kind: "component", type: IconButtonComponent, selector: "lib-icon-button", inputs: ["field"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$1.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"] }] });
6876
6904
  }
6877
6905
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AnnuityPremiumCalculatorComponent, decorators: [{
6878
6906
  type: Component,
@@ -6883,7 +6911,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
6883
6911
  IconButtonComponent,
6884
6912
  CommonModule,
6885
6913
  FormsModule
6886
- ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayout\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\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}.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}\n"] }]
6914
+ ], template: "<div class=\"card px-3\" style=\"padding: 16px;\">\r\n <div class=\"row\">\r\n <h4 class=\"card-main-title\"><span style=\"margin-right: 12px;\"><img src=\"https://cdn.godigit.com/retail-life/calculator.svg\" alt=\"annuity calculator\"></span>Here's your Premium to Annuity Calculator</h4>\r\n </div>\r\n <!-- <div class=\"row\"> -->\r\n <div class=\"card pb-4 px-4\" style=\"border-bottom-left-radius: 0px; border-bottom-right-radius: 0px;\">\r\n <!-- <div class=\"custom-grid-template\">\r\n\r\n </div> -->\r\n\r\n <div class=\"row mx-auto\" style=\"transform: translate(0px, -58%);\">\r\n <lib-toggle class=\"col-auto\" [field]=\"annuityPremiumToggleObj\" />\r\n </div>\r\n <!-- </div> -->\r\n <div class=\"custom-grid-template\">\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"annuityPremiumObj\" [(ngModel)]=\"annuityPremium\" (ngModelChange)=\"onAnnuityPremiumValueChange($event)\" />\r\n <div class=\"error-message\" *ngIf=\"validations.ispremiumEntry\">\r\n Enter Premium\r\n </div>\r\n </div>\r\n <div class=\"mt-3 d-flex justify-content-center align-items-center\" style=\"display: flex; align-items: flex-end; transform: translate(0px, 6px);\">\r\n <lib-icon-button [field]=\"interchangeButtonObj\" />\r\n </div>\r\n <div class=\"d-flex flex-column\">\r\n <lib-select-textbox [field]=\"minimumAnnuityPayoutObj\" [(ngModel)]=\"minumumAnnuityPayout\" />\r\n </div>\r\n </div>\r\n <!-- <div class=\"vertical-line\"></div> -->\r\n <div class=\"custom-grid-template\">\r\n <div>\r\n <lib-toggle [field]=\"enableAutoDebitObj\" />\r\n </div>\r\n </div>\r\n\r\n </div>\r\n\r\n\r\n <div class=\"card py-3 mb-4 border-top-0\" style=\"border-top-left-radius: 0px; border-top-right-radius: 0px;\">\r\n <div class=\"mx-4\">\r\n <lib-button [field]=\"recalculateButton\" (click)=\"calculateButtonClicked()\" />\r\n </div>\r\n </div>\r\n\r\n <div>\r\n <lib-button [field]=\"generateSummaryObj\" (click)=\"generateSummaryClicked()\" />\r\n </div>\r\n</div>\r\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}.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}\n"] }]
6887
6915
  }], ctorParameters: () => [{ type: MasterControlService }], propDecorators: { onCalcualteButtonClick: [{
6888
6916
  type: Output
6889
6917
  }], onGenerateSummaryClick: [{