master-control 0.2.19 → 0.2.21

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.
@@ -1 +1 @@
1
- {"version":3,"file":"master-control.mjs","sources":["../../../projects/master-control/src/lib/master-control.service.ts","../../../projects/master-control/src/lib/textbox/textbox.component.ts","../../../projects/master-control/src/lib/textbox/textbox.component.html","../../../projects/master-control/src/lib/button/button.component.ts","../../../projects/master-control/src/lib/button/button.component.html","../../../projects/master-control/src/lib/select/select.component.ts","../../../projects/master-control/src/lib/select/select.component.html","../../../projects/master-control/src/lib/radio/radio.component.ts","../../../projects/master-control/src/lib/radio/radio.component.html","../../../projects/master-control/src/lib/toggle/toggle.component.ts","../../../projects/master-control/src/lib/toggle/toggle.component.html","../../../projects/master-control/src/lib/upload/upload.component.ts","../../../projects/master-control/src/lib/upload/upload.component.html","../../../projects/master-control/src/lib/dob/dob.component.ts","../../../projects/master-control/src/lib/dob/dob.component.html","../../../projects/master-control/src/lib/mob-number/mob-number.component.ts","../../../projects/master-control/src/lib/mob-number/mob-number.component.html","../../../projects/master-control/src/lib/info/info.component.ts","../../../projects/master-control/src/lib/info/info.component.html","../../../projects/master-control/src/lib/checkbox/checkbox.component.ts","../../../projects/master-control/src/lib/checkbox/checkbox.component.html","../../../projects/master-control/src/lib/textarea/textarea.component.ts","../../../projects/master-control/src/lib/textarea/textarea.component.html","../../../projects/master-control/src/lib/tab/tab.component.ts","../../../projects/master-control/src/lib/tab/tab.component.html","../../../projects/master-control/src/lib/autocomplete/autocomplete.component.ts","../../../projects/master-control/src/lib/autocomplete/autocomplete.component.html","../../../projects/master-control/src/lib/multiple-select/multiple-select.component.ts","../../../projects/master-control/src/lib/multiple-select/multiple-select.component.html","../../../projects/master-control/src/lib/select-textbox/select-textbox.component.ts","../../../projects/master-control/src/lib/select-textbox/select-textbox.component.html","../../../projects/master-control/src/lib/otp-textbox/otp-textbox.component.ts","../../../projects/master-control/src/lib/otp-textbox/otp-textbox.component.html","../../../projects/master-control/src/lib/amount-textbox/amount-textbox.component.ts","../../../projects/master-control/src/lib/amount-textbox/amount-textbox.component.html","../../../projects/master-control/src/lib/suffix-textbox/suffix-textbox.component.ts","../../../projects/master-control/src/lib/suffix-textbox/suffix-textbox.component.html","../../../projects/master-control/src/lib/otp-mob-number/otp-mob-number.component.ts","../../../projects/master-control/src/lib/otp-mob-number/otp-mob-number.component.html","../../../projects/master-control/src/lib/tag-mob-number/tag-mob-number.component.ts","../../../projects/master-control/src/lib/tag-mob-number/tag-mob-number.component.html","../../../projects/master-control/src/lib/age-date/age-date.component.ts","../../../projects/master-control/src/lib/age-date/age-date.component.html","../../../projects/master-control/src/lib/addition-button/addition-button.component.ts","../../../projects/master-control/src/lib/addition-button/addition-button.component.html","../../../projects/master-control/src/lib/info-textbox/info-textbox.component.ts","../../../projects/master-control/src/lib/info-textbox/info-textbox.component.html","../../../projects/master-control/src/lib/textbox-with-image/textbox-with-image.component.ts","../../../projects/master-control/src/lib/textbox-with-image/textbox-with-image.component.html","../../../projects/master-control/src/lib/email-with-domain/email-with-domain.component.ts","../../../projects/master-control/src/lib/email-with-domain/email-with-domain.component.html","../../../projects/master-control/src/lib/image-upload/image-upload.component.ts","../../../projects/master-control/src/lib/image-upload/image-upload.component.html","../../../projects/master-control/src/lib/download-document/download-document.component.ts","../../../projects/master-control/src/lib/download-document/download-document.component.html","../../../projects/master-control/src/lib/add-document/add-document.component.ts","../../../projects/master-control/src/lib/add-document/add-document.component.html","../../../projects/master-control/src/lib/hyperlink/hyperlink.component.ts","../../../projects/master-control/src/lib/hyperlink/hyperlink.component.html","../../../projects/master-control/src/lib/textbox-with-underscore/textbox-with-underscore.component.ts","../../../projects/master-control/src/lib/textbox-with-underscore/textbox-with-underscore.component.html","../../../projects/master-control/src/lib/underscore-mob-number/underscore-mob-number.component.ts","../../../projects/master-control/src/lib/underscore-mob-number/underscore-mob-number.component.html","../../../projects/master-control/src/lib/icon-button/icon-button.component.ts","../../../projects/master-control/src/lib/icon-button/icon-button.component.html","../../../projects/master-control/src/lib/image/image.component.ts","../../../projects/master-control/src/lib/image/image.component.html","../../../projects/master-control/src/lib/stepper/stepper.component.ts","../../../projects/master-control/src/lib/stepper/stepper.component.html","../../../projects/master-control/src/lib/card/card.component.ts","../../../projects/master-control/src/lib/card/card.component.html","../../../projects/master-control/src/lib/hr-line/hr-line.component.ts","../../../projects/master-control/src/lib/hr-line/hr-line.component.html","../../../projects/master-control/src/lib/search-multi-select/search-multi-select.component.ts","../../../projects/master-control/src/lib/search-multi-select/search-multi-select.component.html","../../../projects/master-control/src/lib/subscript-textbox/subscript-textbox.component.ts","../../../projects/master-control/src/lib/subscript-textbox/subscript-textbox.component.html","../../../projects/master-control/src/lib/label/label.component.ts","../../../projects/master-control/src/lib/label/label.component.html","../../../projects/master-control/src/lib/sub-header/sub-header.component.ts","../../../projects/master-control/src/lib/sub-header/sub-header.component.html","../../../projects/master-control/src/lib/header/header.component.ts","../../../projects/master-control/src/lib/header/header.component.html","../../../projects/master-control/src/lib/table/table.component.ts","../../../projects/master-control/src/lib/table/table.component.html","../../../projects/master-control/src/lib/textbox-with-text/textbox-with-text.component.ts","../../../projects/master-control/src/lib/textbox-with-text/textbox-with-text.component.html","../../../projects/master-control/src/lib/discount/discount.component.ts","../../../projects/master-control/src/lib/discount/discount.component.html","../../../projects/master-control/src/lib/benefit-card/benefit-card.component.ts","../../../projects/master-control/src/lib/benefit-card/benefit-card.component.html","../../../projects/master-control/src/lib/loader/loader.component.ts","../../../projects/master-control/src/lib/loader/loader.component.html","../../../projects/master-control/src/lib/warning-snackbar/warning-snackbar.component.ts","../../../projects/master-control/src/lib/warning-snackbar/warning-snackbar.component.html","../../../projects/master-control/src/lib/success-snackbar/success-snackbar.component.ts","../../../projects/master-control/src/lib/success-snackbar/success-snackbar.component.html","../../../projects/master-control/src/lib/neutral-snackbar/neutral-snackbar.component.ts","../../../projects/master-control/src/lib/neutral-snackbar/neutral-snackbar.component.html","../../../projects/master-control/src/lib/error-snackbar/error-snackbar.component.ts","../../../projects/master-control/src/lib/error-snackbar/error-snackbar.component.html","../../../projects/master-control/src/lib/grey-label/grey-label.component.ts","../../../projects/master-control/src/lib/grey-label/grey-label.component.html","../../../projects/master-control/src/lib/iframe/iframe.component.ts","../../../projects/master-control/src/lib/iframe/iframe.component.html","../../../projects/master-control/src/lib/toggle-button/toggle-button.component.ts","../../../projects/master-control/src/lib/toggle-button/toggle-button.component.html","../../../projects/master-control/src/lib/pay-get-card/pay-get-card.component.ts","../../../projects/master-control/src/lib/pay-get-card/pay-get-card.component.html","../../../projects/master-control/src/lib/in-built-benefit/in-built-benefit.component.ts","../../../projects/master-control/src/lib/in-built-benefit/in-built-benefit.component.html","../../../projects/master-control/src/lib/other-benefits/other-benefits.component.ts","../../../projects/master-control/src/lib/other-benefits/other-benefits.component.html","../../../projects/master-control/src/lib/annuity-rate-logo/annuity-rate-logo.component.ts","../../../projects/master-control/src/lib/annuity-rate-logo/annuity-rate-logo.component.html","../../../projects/master-control/src/lib/discount-v2/discount-v2.component.ts","../../../projects/master-control/src/lib/discount-v2/discount-v2.component.html","../../../projects/master-control/src/lib/label-value-card/label-value-card.component.ts","../../../projects/master-control/src/lib/label-value-card/label-value-card.component.html","../../../projects/master-control/src/lib/medial-questions/medial-questions.component.ts","../../../projects/master-control/src/lib/medial-questions/medial-questions.component.html","../../../projects/master-control/src/lib/page-nudge/page-nudge.component.ts","../../../projects/master-control/src/lib/page-nudge/page-nudge.component.html","../../../projects/master-control/src/lib/progress-bar/progress-bar.component.ts","../../../projects/master-control/src/lib/progress-bar/progress-bar.component.html","../../../projects/master-control/src/lib/accordian/accordian.component.ts","../../../projects/master-control/src/lib/accordian/accordian.component.html","../../../projects/master-control/src/lib/master-control.component.ts","../../../projects/master-control/src/lib/master-control.component.html","../../../projects/master-control/src/public-api.ts","../../../projects/master-control/src/master-control.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterControlService {\r\n\r\n configData: any = {\r\n \"iframe\": {\r\n \"URLForIframe\": \"N\"\r\n },\r\n \"loader\": {\r\n \"imageURL\": \"\",\r\n \"imageAltText\": \"\",\r\n \"text\": \"\",\r\n \"imageCSS\": {\r\n \"width\": \"\",\r\n \"height\": \"\",\r\n \"borderRadius\": \"\",\r\n \"boxShadow\": \"\"\r\n },\r\n \"cardCSS\": {\r\n \"width\": \"100%\",\r\n \"height\": \"100%\",\r\n \"backgroundColor\": \"#ffffff\",\r\n \"borderRadius\": \"0px\",\r\n \"boxShadow\": \"0px 0px 0px 0px rgba(0, 0, 0, 0)\",\r\n \"alignItems\": \"center\"\r\n },\r\n \"textCSS\": {\r\n \"fontSize\": \"\",\r\n \"color\": \"\",\r\n \"textAlign\": \"\",\r\n \"fontWeight\": \"\"\r\n },\r\n \"loaderCSS\": {\r\n \"display\": \"flex\",\r\n \"justifyContent\": \"center\",\r\n \"alignItems\": \"center\",\r\n \"height\": \"60px\",\r\n \"gap\": \"8px\",\r\n \"dot\": {\r\n \"width\": \"16px\",\r\n \"height\": \"16px\",\r\n \"background\": \"#1976d2\",\r\n \"borderRadius\": \"50%\",\r\n \"display\": \"inline-block\",\r\n \"animation\": \"bounce 0.6s infinite alternate\"\r\n },\r\n \"dot2\": {\r\n \"animationDelay\": \"0.2s\"\r\n },\r\n \"dot3\": {\r\n \"animationDelay\": \"0.4s\"\r\n },\r\n \"@keyframes bounce\": {\r\n \"to\": {\r\n \"opacity\": 0.3,\r\n \"transform\": \"translateY(-16px)\"\r\n }\r\n }\r\n }\r\n },\r\n \"table\": {\r\n \"showCheckBox\": true,\r\n \"tableHeaders\": [],\r\n \"tdData\": [],\r\n \"showActions\": true,\r\n \"actionOptions\": [\r\n {\r\n \"matIconName\": \"edit\",\r\n \"displayTitle\": \"Edit\",\r\n \"toolTip\": \"Edit\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"info\",\r\n \"displayTitle\": \"Info\",\r\n \"toolTip\": \"Information\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"download\",\r\n \"displayTitle\": \"Download Documents\",\r\n \"toolTip\": \"Download Document\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"notifications_active\",\r\n \"displayTitle\": \"Send Reminder\",\r\n \"toolTip\": \"Send Reminder\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"link\",\r\n \"displayTitle\": \"Send Payment Link\",\r\n \"toolTip\": \"Payment Link\",\r\n \"isSelected\":true\r\n },\r\n\r\n ],\r\n \"userSelectedOptions\": {},\r\n \"showPagination\": \"Y\",\r\n \"rowlength\": 3,\r\n \"columnlength\": 4,\r\n },\r\n \"stepper\":{\r\n \"stepperData\":[\r\n {\r\n \"defaultId\":1,\r\n \"displayLabel\":\"stepper-1\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/check_circle.svg'\r\n },\r\n {\r\n \"defaultId\":2,\r\n \"displayLabel\":\"stepper-2\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/retail-life/check_circle_Endorsment.svg'\r\n },\r\n {\r\n \"defaultId\":3,\r\n \"displayLabel\":\"stepper-3\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/retail-life/Endorsement_pending.svg'\r\n }\r\n ]\r\n }\r\n }\r\n\r\n snackbars: any = [\r\n {\r\n \"type\": \"Error\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/alert-icon-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A error toast\",\r\n \"messageText\":\"Error message here\",\r\n 'toasterCSS':\"error-snackbar-card\"\r\n },{\r\n \"type\": \"Warning\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/nudge-icon-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A warning toast\",\r\n \"messageText\":\"Warning message here\",\r\n \"toasterCSS\":\"warning-snackbar-card\"\r\n },{\r\n \"type\": \"Success\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/success-info-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A success toast\",\r\n \"messageText\":\"Success message here\",\r\n \"toasterCSS\":\"success-snackbar-card\"\r\n },{\r\n \"type\": \"Neutral\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/neutral-star-lib-icon.svg\",\r\n \"imageCSS\": \"neutral-image\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"neutral-toaster-label\",\r\n \"messageCSS\": \"neutral-toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/retail-life/neutral-cross-lib-icon.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A neutral toast\",\r\n \"messageText\":\"Neutral message here\",\r\n \"toasterCSS\":\"neutral-snackbar-card\"\r\n }\r\n ];\r\n constructor() { }\r\n\r\n checkIfValueIsEmpty(value: any) {\r\n if (typeof value === 'string') {\r\n value = value.trim();\r\n }\r\n return (\r\n value === undefined ||\r\n value === null ||\r\n value === '' ||\r\n (value instanceof Array && value.length === 0) ||\r\n JSON.stringify(value) === '{}'\r\n );\r\n }\r\n\r\n saveTableFieldState(tableField: any, key: any = 'tableField') {\r\n localStorage.setItem(key, JSON.stringify(tableField));\r\n }\r\n\r\n restoreTableFieldState(key: any = 'tableField'): any | null {\r\n const data = localStorage.getItem(key);\r\n return data ? JSON.parse(data) : null;\r\n }\r\n}\r\n","import { Component, forwardRef, input } from '@angular/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule ,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './textbox.component.html',\r\n styleUrl: './textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\n@Component({\r\n selector: 'lib-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './button.component.html',\r\n styleUrl: './button.component.css'\r\n})\r\nexport class ButtonComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n}\r\n","<Button \r\nclass=\"button\"\r\n*ngIf=\"field() && field()?.isVisible\" \r\n[ngStyle]=\"\r\n{\r\n '--button-border-width': field()?.controlStyle?.borderWidth ,\r\n '--button-border-color': field()?.controlStyle?.borderColor ,\r\n '--button-border-style': field()?.controlStyle?.borderStyle ,\r\n '--button-width': field()?.controlStyle?.width ,\r\n '--button-font-size': field()?.controlStyle?.fontSize ,\r\n '--button-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--button-background': field()?.controlStyle?.background ,\r\n '--button-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--button-text-color': field()?.controlStyle?.color ,\r\n '--button-margin': field()?.controlStyle?.margin ,\r\n}\"\r\n>\r\n<span class=\"button-text\">\r\n<img *ngIf=\"field()?.imageUrl\" [src]='field().imageUrl'>\r\n<span>{{field()?.label}}</span>\r\n</span>\r\n</Button>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n MatAutocompleteModule,\r\n MatInputModule,\r\n FormsModule,\r\n MatOptionModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './select.component.html',\r\n styleUrl: './select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SelectComponent implements ControlValueAccessor {\r\n\r\nconstructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n}\r\n","<label\r\n class=\"field-lable info-label\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >\r\n <span>{{ field()?.label}}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></span>\r\n <span style=\"justify-content: end;\" *ngIf=\"field() && field()?.configData?.infoMessage\">\r\n <img class=\"mx-1\" src=\"https://cdn.godigit.com/retail-life/question-mark.svg\" alt=\"\">\r\n <u>{{field()?.configData?.infoMessage}} ></u>\r\n </span>\r\n </label>\r\n \r\n<mat-form-field\r\n appearance=\"outline\" \r\n class=\"input-full-width full-width w-100\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <mat-select\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-option *ngFor=\"let data of field()?.options\" [value]=\"data.value\">{{\r\n data.label\r\n }}</mat-option>\r\n </mat-select>\r\n }@else {\r\n <mat-select\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n >\r\n <mat-option *ngFor=\"let data of field()?.options\" [value]=\"data.value\">{{\r\n data.label\r\n }}</mat-option>\r\n </mat-select>\r\n }\r\n\r\n <!-- selectField.invalid && (selectField.dirty || selectField.touched) -->\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message mt-2\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, forwardRef, Input, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-radio',\r\n standalone: true,\r\n imports: [\r\n MatRadioModule,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './radio.component.html',\r\n styleUrl: './radio.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: RadioComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class RadioComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\r\n }\"> {{field()?.label}} <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span> </label>\r\n <mat-radio-group class=\"w-100\" *ngIf=\"field() && field()?.isVisible\"\r\n class=\"radio-btn-group radio-btn-gender\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [value]=\"inputValue\"\r\n >\r\n <div\r\n class=\"card radio-card-gender py-auto px-1\"\r\n *ngFor=\"let data of field()?.options\"\r\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable}\"\r\n [ngStyle]=\"{\r\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\r\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\r\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\r\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\r\n }\"\r\n >\r\n <mat-radio-button\r\n style=\"min-width: 72px; text-align: center;\"\r\n class=\"radioButtonGender\"\r\n (click)=\"onValueChange(data.value)\"\r\n [value]=\"data.value\"\r\n >\r\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\r\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\r\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\r\n '--radio-button-font-color': field()?.controlStyle?.color,\r\n }\">{{ data.label }}\r\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\r\n </span>\r\n </mat-radio-button>\r\n </div>\r\n </mat-radio-group>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.patternMessage}}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-toggle',\r\n standalone: true,\r\n imports: [CommonModule, ReactiveFormsModule],\r\n templateUrl: './toggle.component.html',\r\n styleUrl: './toggle.component.css'\r\n})\r\nexport class ToggleComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<div class=\"\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\r\n '--custom-toggle-bg-color': field()?.controlStyle?.background,\r\n '--custom-toggle-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-toggle-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-toggle-border-radius': field()?.controlStyle?.borderRadius,\r\n '--custom-toggle-width': field()?.controlStyle?.width,\r\n }\"\r\n [ngClass]=\"field()?.cssClass ? 'card toggle-background mt-2' + field()?.cssClass : 'card toggle-background mt-2'\"\r\n >\r\n <div class=\"toggle_switch mt-2\">\r\n <div *ngIf=\"field().configData?.leftLabel\" [ngStyle]=\"{\r\n '--custom-toggle-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-toggle-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-toggle-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-toggle-font-color': field()?.controlStyle?.color ,\r\n }\" class=\"toggle-text mb-2\">\r\n <div>{{field().configData?.leftLabel}}</div>\r\n </div>\r\n <div class=\"mt-1\">\r\n <label class=\"switch\">\r\n <input\r\n type=\"checkbox\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [disabled]=\"field()?.isDisable\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n </div>\r\n <div [ngStyle]=\"{\r\n '--custom-toggle-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-toggle-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-toggle-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-toggle-font-color': field()?.controlStyle?.color ,\r\n }\" class=\"toggle-text mb-2\">\r\n <div>{{field()?.label}}</div>\r\n <div style=\"font-size: 10px; font-weight: 400;\" *ngIf=\"field().configData?.subLabel\">{{field()?.configData?.subLabel}} <img alt=\"\" [src]=\"field()?.imageUrl\" *ngIf=\"field()?.imageUrl\" /> </div>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-upload',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './upload.component.html',\r\n styleUrl: './upload.component.css'\r\n})\r\nexport class UploadComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn\"\r\n (click)=\"fileInput.click()\"\r\n [ngClass]=\"field()?.label ? 'lightbackground' : 'successBackground'\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <ng-container *ngIf=\"field()?.label; else policyHolderPanFileNotEmpty\">\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Upload_documents.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.placeHolder }}</span>\r\n </span>\r\n </ng-container>\r\n <ng-template #policyHolderPanFileNotEmpty>\r\n <span class=\"mt-2 right-icon\">\r\n <span\r\n ><img [src]=\"field()?.imageUrl\" alt=\"\"\r\n /></span>\r\n <span title=\"uploaded file\">uploaded file</span>\r\n </span>\r\n <div class=\"mt-2 left-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/visibility-oui.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/delete-oui.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </ng-template>\r\n </button>\r\n <div class=\"upload-info\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.subText\">{{field()?.configData?.subText}}</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MomentDateAdapter, MomentDateModule } from '@angular/material-moment-adapter';\r\nimport { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\nexport const MY_DATE_FORMAT = {\r\n parse: {\r\n dateInput: [\r\n 'DD-MM-YYYY',\r\n 'MM/DD/YYYY',\r\n 'YYYY/MM/DD',\r\n 'DD/MM/YYYY',\r\n 'DD MMM YYYY',\r\n 'DD MMMM YYYY',\r\n 'DD-MMM-YYYY'\r\n ]\r\n },\r\n display: {\r\n dateInput: 'DD-MMM-YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'DD-MMM-YYYY',\r\n monthYearA11yLabel: 'MMMM YYYY'\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'lib-dob',\r\n standalone: true,\r\n imports: [MatInputModule, MatFormFieldModule, CommonModule, MatDatepickerModule, MomentDateModule, ReactiveFormsModule],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: DobComponent,\r\n multi: true\r\n },\r\n {\r\n provide: DateAdapter,\r\n useClass: MomentDateAdapter,\r\n deps: []\r\n },\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMAT }\r\n ],\r\n templateUrl: './dob.component.html',\r\n styleUrl: './dob.component.css',\r\n})\r\nexport class DobComponent implements ControlValueAccessor {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n constructor(public service : MasterControlService) {}\r\n\r\n dateDivisionFormat(event: any) {\r\n let evt = event.target;\r\n if (evt.value.length > 2 && !evt.value.substr(2, 1).includes('-')) {\r\n evt.value = [evt.value.slice(0, 2), '-', evt.value.slice(2)].join('');\r\n } else if (\r\n evt.value.length > 5 &&\r\n Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(5, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 5), '-', evt.value.slice(5)].join('');\r\n } else if (\r\n evt.value.length > 6 &&\r\n !Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(6, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 6), '-', evt.value.slice(6)].join('');\r\n }\r\n }\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(event : any): void {\r\n if (!this.service.checkIfValueIsEmpty(event.target.value)) {\r\n if (isNaN(Date.parse(event.target.value))) {\r\n event.target.value = '';\r\n }\r\n\r\n }\r\n this._unTouched();\r\n }\r\n\r\n}\r\n","<label\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n class=\"field-lable\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n '--custom-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-font-color': field()?.controlStyle?.color ,\r\n '--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n '--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n '--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n }\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"false\">\r\n <img\r\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\r\n style=\"width: 16px\"\r\n matDatepickerToggleIcon\r\n />\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-mob-number',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, MatSelectModule, MatOptionModule, ReactiveFormsModule],\r\n templateUrl: './mob-number.component.html',\r\n styleUrl: './mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: MobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MobNumberComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n CountryCode: any = '+91';\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n '--custom-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-font-color': field()?.controlStyle?.color ,\r\n '--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span *ngIf=\"false\"\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n \r\n <span matSuffix class=\"p-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/edit-icon.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-info',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './info.component.html',\r\n styleUrl: './info.component.css'\r\n})\r\nexport class InfoComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n}\r\n","<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n '--custom-info-bg-color': field()?.controlStyle?.background ,\r\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\r\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\r\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\r\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\r\n }\">\r\n <span>\r\n <img\r\n class=\"info-nudge-image mb-1\"\r\n [src]=\"field()?.controlStyle?.nudgeDisplayImage\"\r\n alt=\"\"\r\n />\r\n <span class=\"info-nudge-text\" [ngStyle]=\"{\r\n '--custom-info-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-info-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-info-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-info-font-color': field()?.controlStyle?.color ,\r\n }\">{{ field()?.label }}</span>\r\n </span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\n@Component({\r\n selector: 'lib-checkbox',\r\n standalone: true,\r\n imports: [CommonModule , MatCheckboxModule, ReactiveFormsModule],\r\n templateUrl: './checkbox.component.html',\r\n styleUrl: './checkbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: CheckboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n\r\n inputValue: any = null;\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onCheckboxChange(event: any): void {\r\n // const target = event.target as HTMLInputElement;\r\n this.inputValue = event.checked;\r\n this._onChange(this.inputValue);\r\n this._unTouched();\r\n const css = this.field()?.controlStyle;\r\n if (event.checked) {\r\n document.body.style.setProperty('--custom-checkbox-border-focus', css?.focusBorderColor || '#ffbb00');\r\n document.body.style.setProperty('--custom-checkbox-bg-color-focus', css?.focusBackground || '#ffbb00');\r\n document.body.style.setProperty('--custom-checkbox-border-radius-checkbox', css?.borderRadius || '4px');\r\n document.body.style.setProperty('--custom-font-size', css?.fontSize || '16px');\r\n document.body.style.setProperty('--custom-font-weight', css?.fontWeight || '400');\r\n document.body.style.setProperty('--custom-font-family', css?.fontFamily || 'Mulish');\r\n document.body.style.setProperty('--custom-font-color', css?.color || '#444');\r\n } else {\r\n document.body.style.setProperty('--custom-border-color-focus', css?.focusBorderColor || '#ddd');\r\n document.body.style.setProperty('--custom-bg-color-focus', css?.focusBackground || '#999');\r\n document.body.style.setProperty('--custom-border-radius-checkbox', css?.borderRadius || '4px');\r\n }\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<mat-checkbox *ngIf=\"field() && field()?.isVisible\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [checked]=\"inputValue\"\r\n (change)=\"onCheckboxChange($event)\"\r\n [ngStyle]=\"\r\n{\r\n '--checkbox-border-radius': field()?.controlStyle?.borderRadius,\r\n '--checkbox-bg-color': field()?.controlStyle?.background ,\r\n '--checkbox-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--checkbox-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--checkbox-font-size': field()?.controlStyle?.fontSize ,\r\n '--checkbox-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--checkbox-font-color': field()?.controlStyle?.color ,\r\n}\"\r\n>\r\n{{ field()?.label }}\r\n</mat-checkbox>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.isRequiredMessage}}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-textarea',\r\n standalone: true,\r\n imports: [CommonModule, ReactiveFormsModule],\r\n templateUrl: './textarea.component.html',\r\n styleUrl: './textarea.component.css'\r\n})\r\nexport class TextareaComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<textarea\r\n[ngStyle]=\"{\r\n '--custom-textarea-width': field()?.controlStyle?.width ,\r\n '--custom-textarea-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-textarea-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-textarea-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-textarea-border-width-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-textarea-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-textarea-caret-color': field()?.controlStyle?.caretColor ,\r\n '--custom-textarea-font-color': field()?.controlStyle?.color ,\r\n }\"\r\n*ngIf=\"field() && field()?.isVisible\"\r\n cols=\"40\"\r\n rows=\"3\"\r\n autocomplete=\"nope\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n></textarea>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, EventEmitter, input, Output } from '@angular/core';\r\nimport { MatTabChangeEvent, MatTabsModule } from '@angular/material/tabs';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-tab',\r\n standalone: true,\r\n imports: [MatTabsModule,CommonModule],\r\n templateUrl: './tab.component.html',\r\n styleUrl: './tab.component.css'\r\n})\r\nexport class TabComponent {\r\nfield : any = input.required<any>();\r\n@Output() selectedIndexChange = new EventEmitter<number>();\r\nselectedIndex = 0;\r\n\r\nconstructor(public masterService : MasterControlService){}\r\n\r\nngOnInit(){\r\n this.field().selectedIndex = this.selectedIndex;\r\n}\r\n onTabChange(event: number) {\r\n this.selectedIndex = event;\r\n this.field().selectedIndex = this.selectedIndex;\r\n}\r\n}\r\n","<mat-tab-group *ngIf=\"field() && field()?.isVisible\" class=\"vertical-tab-indicator\"\r\n[ngClass]=\"{'vertical-class': field()?.configData?.isVerticalTab && field()?.configData?.isVerticalTab === 'true'}\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n","import { Component, input } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatSelectChange } from '@angular/material/select';\r\n@Component({\r\n selector: 'lib-autocomplete',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n MatAutocompleteModule,\r\n MatOptionModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './autocomplete.component.html',\r\n styleUrl: './autocomplete.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AutocompleteComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AutocompleteComponent {\r\n constructor(public masterService : MasterControlService) {}\r\n field: any = input.required<any>();\r\n selectedOption: any = null;\r\n filteredOptions:any=[];\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n ngOnInit() {\r\n this.filteredOptions = this.field().options;\r\n }\r\n \r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n \r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n \r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n \r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n \r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n \r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n filterOptions() {\r\n if (!this.selectedOption) {\r\n this.filteredOptions = this.field().options;\r\n return;\r\n }\r\n const filterValue = this.selectedOption.toLowerCase();\r\n this.filteredOptions = this.field().options.filter((option:any) =>\r\n option.label.toLowerCase().includes(filterValue)\r\n );\r\n }\r\n\r\ndisplayFn(option: any) {\r\n return option ? option : '';\r\n}\r\n}\r\n"," <label *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [matAutocomplete]=\"auto\"\r\n (ngModelChange)=\"filterOptions()\"\r\n (focus)=\"filterOptions()\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [matAutocomplete]=\"auto\"\r\n (ngModelChange)=\"filterOptions()\"\r\n (focus)=\"filterOptions()\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [displayWith]=\"displayFn\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option.label\">\r\n {{ option.label }}\r\n </mat-option>\r\n</mat-autocomplete>\r\n <mat-error>\r\n {{ field().validators.requiredMessage }}\r\n </mat-error>\r\n </mat-form-field>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n </div>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-multiple-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './multiple-select.component.html',\r\n styleUrl: './multiple-select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: MultipleSelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MultipleSelectComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService) {}\r\n field: any = input.required<any>();\r\n selectedValues: any = [];\r\n visibleChip: any = [];\r\n remainingCount: any = 0;\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.visibleChip = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n this.onSelectionChange();\r\n }\r\n\r\n removeItem(item: any) {\r\n const maxVisible = 2;\r\n this.visibleChip = this.visibleChip.filter(\r\n (element: any) => element !== item\r\n );\r\n this.selectedValues = this.selectedValues.filter(\r\n (element: any) => element !== item\r\n );\r\n const found = this.field().options.find((i:any) => i.label === item);\r\n if (found) {\r\n found.value = false;\r\n }\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectionChange() {\r\n const maxVisible = 2;\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n appearance=\"outline\"\r\n class=\"input-full-width full-width w-100 multi-select\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [value]=\"inputValue\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-select-trigger>\r\n <!-- <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox> -->\r\n <mat-chip-grid>\r\n @for (option of inputValue; track option) {\r\n <mat-chip-row [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip-row>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-grid>\r\n </mat-select-trigger>\r\n @for (option of field()?.options; track option.label) {\r\n <mat-option [value]=\"option.value\">\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n }@else {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [value]=\"inputValue\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-grid>\r\n @for (option of inputValue; track option) {\r\n <mat-chip-row [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option.label }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip-row>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-grid>\r\n </mat-select-trigger>\r\n @for (option of field()?.options; track option.label) {\r\n <mat-option [value]=\"option\">\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-select-textbox',\r\n standalone: true,\r\n imports: [MatInputModule, MatSelectModule, MatFormFieldModule, CommonModule, MatInputModule, ReactiveFormsModule],\r\n templateUrl: './select-textbox.component.html',\r\n styleUrl: './select-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SelectTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SelectTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n <span matPrefix class=\"rupee-symbol\">₹</span>\r\n <!-- <span class=\"mx-3 right-amount-text\"> ₹ 3.50 L </span> -->\r\n <div matSuffix class=\"input-select\">\r\n <!-- <mat-form-field> -->\r\n <mat-select (openedChange)=\"onSelectOpened($event)\">\r\n <mat-option *ngFor=\"let options of field()?.options\" [value]=\"options.value\">\r\n {{ options.label }}\r\n </mat-option>\r\n </mat-select>\r\n <!-- </mat-form-field> -->\r\n </div>\r\n</mat-form-field>\r\n","import { Component, input } from '@angular/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-otp-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './otp-textbox.component.html',\r\n styleUrl: './otp-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: OtpTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class OtpTextboxComponent {\r\nconstructor(){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <div matSuffix class=\"get-otp mx-2\">\r\n <span class=\"mt-2\">Get OTP</span>\r\n </div>\r\n <div matSuffix class=\"verity-otp mx-2\" *ngIf=\"false\">\r\n <span class=\"mx-1\">Verify</span>\r\n </div>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n</mat-form-field>\r\n<div >\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let options of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{options.label}}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-amount-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './amount-textbox.component.html',\r\n styleUrl: './amount-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AmountTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AmountTextboxComponent {\r\n constructor(){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\"\r\n >{{ field().label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <span matPrefix class=\"rupee-symbol px-2\">₹</span>\r\n <span matSuffix class=\"me-2 right-amount-text\"> ₹ 3.50 L </span>\r\n </mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-suffix-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n MatCheckboxModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './suffix-textbox.component.html',\r\n styleUrl: './suffix-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SuffixTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SuffixTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n >\r\n <img class=\"ms-1\" [src]=\"field().configData?.labelIconUrl\" [title]=\"field().configData?.tooltipMessage\" />\r\n </label\r\n>\r\n<mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n@if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n <span matSuffix class=\"mx-3 right-input-text\" *ngIf=\"field().configData?.suffix\"> {{field().configData?.suffix}} </span>\r\n</mat-form-field>\r\n<div *ngIf=\"field().configData?.isShowTagAs\">\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let option of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{ option.label }}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n<div *ngIf=\"field().configData?.infoMessage\">\r\n <span class=\"below-input-text\">{{field().configData?.infoMessage}}</span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-otp-mob-number',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './otp-mob-number.component.html',\r\n styleUrl: './otp-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: OtpMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class OtpMobNumberComponent {\r\n CountryCode: any = '+91';\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n \r\n <div matSuffix class=\"get-otp mx-2\">\r\n <span class=\"mt-2\">Get OTP</span>\r\n </div>\r\n <div matSuffix class=\"verity-otp mx-2\" *ngIf=\"false\">\r\n <span class=\"mx-1\">Verify</span>\r\n </div>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<span class=\"success-text\" *ngIf=\"false\">Phone Number Verified</span>\r\n<span class=\"success-text\">\r\n <img src=\"https://cdn.godigit.com/retail-life/otp-circle-oui.svg\" alt=\"\" />\r\n OTP Sent\r\n</span>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-tag-mob-number',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatCheckboxModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './tag-mob-number.component.html',\r\n styleUrl: './tag-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TagMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TagMobNumberComponent {\r\n CountryCode: any = '+91';\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let option of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{ option.label }}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MomentDateModule } from '@angular/material-moment-adapter';\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-age-date',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatDatepickerModule,\r\n MomentDateModule,\r\n ReactiveFormsModule\r\n ],\r\n providers: [{ provide: MAT_DATE_FORMATS, useValue: {\r\n parse: {\r\n dateInput: [\r\n 'DD-MM-YYYY',\r\n 'MM/DD/YYYY',\r\n 'YYYY/MM/DD',\r\n 'DD/MM/YYYY',\r\n 'DD MMM YYYY',\r\n 'DD MMMM YYYY',\r\n 'DD-MMM-YYYY',\r\n ],\r\n },\r\n display: {\r\n dateInput: 'DD-MMM-YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'DD-MMM-YYYY',\r\n monthYearA11yLabel: 'MMMM YYYY',\r\n },\r\n }\r\n },\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AgeDateComponent,\r\n multi: true\r\n },\r\n],\r\n templateUrl: './age-date.component.html',\r\n styleUrl: './age-date.component.css',\r\n})\r\nexport class AgeDateComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n constructor(public service : MasterControlService) {}\r\n\r\n dateDivisionFormat(event: any) {\r\n let evt = event.target;\r\n if (evt.value.length > 2 && !evt.value.substr(2, 1).includes('-')) {\r\n evt.value = [evt.value.slice(0, 2), '-', evt.value.slice(2)].join('');\r\n } else if (\r\n evt.value.length > 5 &&\r\n Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(5, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 5), '-', evt.value.slice(5)].join('');\r\n } else if (\r\n evt.value.length > 6 &&\r\n !Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(6, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 6), '-', evt.value.slice(6)].join('');\r\n }\r\n }\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(event : any): void {\r\n if (!this.service.checkIfValueIsEmpty(event.target.value)) {\r\n if (isNaN(Date.parse(event.target.value))) {\r\n event.target.value = '';\r\n }\r\n\r\n }\r\n this._unTouched();\r\n }\r\n\r\n}\r\n","<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else{\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <span matSuffix class=\"right-date-text\">\r\n 33yrs\r\n </span>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"false\">\r\n <img\r\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\r\n style=\"width: 16px\"\r\n matDatepickerToggleIcon\r\n />\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-addition-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './addition-button.component.html',\r\n styleUrl: './addition-button.component.css'\r\n})\r\nexport class AdditionButtonComponent {\r\nfield: any = input.required<any>();\r\n}\r\n","<Button class=\"additional-button\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"\r\n{\r\n '--button-border': field()?.controlStyle?.borderWidth ,\r\n '--button-width': field()?.controlStyle?.width ,\r\n '--button-font-size': field()?.controlStyle?.fontSize ,\r\n '--button-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--button-background': field()?.controlStyle?.background ,\r\n '--button-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--button-text-color': field()?.controlStyle?.color ,\r\n}\">\r\n <span class=\"additional-button-text\">\r\n <img\r\n class=\"additional-button-img\"\r\n [src]=\"field()?.imageUrl\"\r\n />\r\n <span\r\n ><u>{{ field()?.label }}</u></span\r\n >\r\n </span>\r\n</Button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-info-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './info-textbox.component.html',\r\n styleUrl: './info-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: InfoTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class InfoTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable info-label\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}\r\n <!-- <span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n > -->\r\n <span style=\"justify-content: end;\">\r\n <img class=\"mx-1\" src=\"https://cdn.godigit.com/retail-life/question-mark.svg\" alt=\"\">\r\n <u>Where to find this? ></u></span>\r\n </label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n \r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-image',\r\n standalone: true,\r\n imports: [MatInputModule, MatFormFieldModule, CommonModule, FormsModule, ReactiveFormsModule],\r\n templateUrl: './textbox-with-image.component.html',\r\n styleUrl: './textbox-with-image.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithImageComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxWithImageComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n \r\n <span matSuffix class=\"mx-3\">\r\n <img *ngIf=\"field()?.imageUrl\" [src]='field().imageUrl' alt=\"\" />\r\n <!-- \"https://cdn.godigit.com/retail-life/location.svg\" -->\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-email-with-domain',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, FormsModule, ReactiveFormsModule],\r\n templateUrl: './email-with-domain.component.html',\r\n styleUrl: './email-with-domain.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: EmailWithDomainComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class EmailWithDomainComponent {\r\npincode: any = '';\r\n emailUser:any='';\r\n emailDomain:any='';\r\n\r\n field: any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n inputValue: any = null;\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n class=\"email-left-side\"\r\n [name]=\"field()?.fieldName + '_1'\"\r\n [id]=\"field()?.fieldName + '_1'\"\r\n [type]=\"field()?.controlType\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n class=\"email-left-side\"\r\n [name]=\"field()?.fieldName + '_1'\"\r\n [id]=\"field()?.fieldName + '_1'\"\r\n [type]=\"field()?.controlType\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <span class=\"email-between\">&#64;</span>\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName + '_2'\"\r\n [id]=\"field()?.fieldName + '_2'\"\r\n placeholder=\"domain.com\"\r\n class=\"email-right-side\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n />\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n </mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-image-upload',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './image-upload.component.html',\r\n styleUrl: './image-upload.component.css'\r\n})\r\nexport class ImageUploadComponent {\r\n field : any = input.required<any>();\r\n}\r\n","\r\n<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn\"\r\n (click)=\"fileInput.click()\"\r\n [ngClass]=\"field()?.label ? 'lightbackground' : 'successBackground'\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <ng-container *ngIf=\"field()?.label; else policyHolderPanFileNotEmpty\">\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Upload_Icon.svg\"\r\n alt=\"\"\r\n class=\"mb-1\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n </span>\r\n </ng-container>\r\n <ng-template #policyHolderPanFileNotEmpty>\r\n <span class=\"mt-2 right-icon\">\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/Tickmark.svg\" alt=\"\"\r\n /></span>\r\n <span title=\"uploaded file\">uploaded file</span>\r\n </span>\r\n <div class=\"mt-2 left-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/visibility-oui.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/delete-oui.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </ng-template>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-download-document',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './download-document.component.html',\r\n styleUrl: './download-document.component.css'\r\n})\r\nexport class DownloadDocumentComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn lightbackground\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Download_Icon.svg\"\r\n alt=\"\"\r\n class=\"mb-1\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n </span>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-add-document',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './add-document.component.html',\r\n styleUrl: './add-document.component.css'\r\n})\r\nexport class AddDocumentComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field().label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn add-document-btn\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--add-doc-border-color': field()?.controlStyle?.borderColor ,\r\n'--add-doc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--add-doc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--add-doc-background': field()?.controlStyle?.background \r\n}\"\r\n >\r\n <span class=\"add-icon\">\r\n <span\r\n ><img class=\"mb-1\" src=\"https://cdn.godigit.com/retail-life/add.svg\"></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n <span class=\"light-font\">(optional)</span>\r\n </span>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-hyperlink',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './hyperlink.component.html',\r\n styleUrl: './hyperlink.component.css'\r\n})\r\nexport class HyperlinkComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<u *ngIf=\"field() && field()?.isVisible\" class=\"hyperlink\" [ngStyle]=\"{\r\n'--hyperlink-font-color': field()?.controlStyle?.color,\r\n'--hyperlink-font-size': field()?.controlStyle?.fontSize,\r\n'--hyperlink-font-weight': field()?.controlStyle?.fontWeight\r\n}\">\r\n <a href=\"Hyper_link\" *ngIf=\"field()?.label && field()?.isShowLabel\">{{field()?.label}}</a></u\r\n>\r\n<img *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-underscore',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, ReactiveFormsModule],\r\n templateUrl: './textbox-with-underscore.component.html',\r\n styleUrl: './textbox-with-underscore.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithUnderscoreComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxWithUnderscoreComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n\r\n changeFormat(event: any) {\r\n let digits = event.target.value.replace(/[^0-9]/g, '').slice(0, this.field().validators.maxLength);\r\n let padded = digits.padEnd(this.field().validators.maxLength, '_');\r\n event.target.value = padded;\r\n\r\n setTimeout(() => {\r\n let pos = digits.length;\r\n if (pos > this.field().validators.maxLength) pos = this.field().validators.maxLength;\r\n event.target.setSelectionRange(pos, pos);\r\n });\r\n }\r\n getUnderscorePlaceholder() {\r\n return '_'.repeat(this.field().validators.maxLength);\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 hyphen-input\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-underscore-mob-number',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, MatSelectModule, MatOptionModule, ReactiveFormsModule],\r\n templateUrl: './underscore-mob-number.component.html',\r\n styleUrl: './underscore-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: UnderscoreMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class UnderscoreMobNumberComponent {\r\nCountryCode: any = '+91';\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n \r\n changeFormat(event: any) {\r\n let digits = event.target.value.replace(/[^0-9]/g, '').slice(0, this.field().validators.maxLength);\r\n let padded = digits.padEnd(this.field().validators.maxLength, '_');\r\n event.target.value = padded;\r\n\r\n setTimeout(() => {\r\n let pos = digits.length;\r\n if (pos > this.field().validators.maxLength) pos = this.field().validators.maxLength;\r\n event.target.setSelectionRange(pos, pos);\r\n });\r\n }\r\n getUnderscorePlaceholder() {\r\n return '_'.repeat(this.field().validators.maxLength);\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field hyphen-input\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n />\r\n }\r\n\r\n <span matSuffix class=\"p-3\">\r\n <img src=\"https://cdn.godigit.com/retail-life/edit-icon.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-icon-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './icon-button.component.html',\r\n styleUrl: './icon-button.component.css',\r\n})\r\nexport class IconButtonComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<Button \r\nclass=\"icon-button\"\r\n*ngIf=\"field() && field()?.isVisible\" \r\n[ngStyle]=\"\r\n{\r\n '--icon-button-border-width': field()?.controlStyle?.borderWidth ,\r\n '--icon-button-border-style': field()?.controlStyle?.borderStyle ,\r\n '--icon-button-border-color': field()?.controlStyle?.borderColor ,\r\n '--icon-button-width': field()?.controlStyle?.width ,\r\n '--icon-button-background': field()?.controlStyle?.background ,\r\n '--icon-button-border-radius': field()?.controlStyle?.borderRadius ,\r\n}\"\r\n>\r\n<span>\r\n<img src=\"https://cdn.godigit.com/retail-life/Download_Icon.svg\">\r\n</span>\r\n</Button>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-image',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './image.component.html',\r\n styleUrl: './image.component.css'\r\n})\r\nexport class ImageComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div>\r\n <img [src]=\"field()['imageUrl']\" class=\"image-width\" [ngStyle]=\"{'--image-width' : field()?.controlStyle?.width}\"/>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-stepper',\r\n standalone: true,\r\n imports: [MatStepperModule,CommonModule],\r\n templateUrl: './stepper.component.html',\r\n styleUrl: './stepper.component.css'\r\n})\r\nexport class StepperComponent {\r\nfield: any = input.required<any>();\r\nmasterStepper:any;\r\nconstructor(public masterSharedService:MasterControlService){}\r\nngOnInit(){\r\n this.field().editStepper = this.field().configData.stepperData ? this.field().configData.stepperData : this.masterSharedService?.configData?.stepper?.stepperData;\r\n}\r\n}\r\n","<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step>\r\n <ng-template matStepLabel>\r\n <img\r\n class=\"step-img\"\r\n [src]=\"steps.imgIconUrl\"\r\n alt=\"\"\r\n />\r\n <span class=\"step-label mx-2\">{{steps?.displayLabel}}</span>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './card.component.html',\r\n styleUrl: './card.component.css'\r\n})\r\nexport class CardComponent {\r\nfield: any = input.required<any>();\r\n}\r\n"," <div class=\"d-flex gap-5\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"endorsement-card\" [ngStyle]=\"{\r\n '--card-border-color': field()?.controlStyle?.borderColor ,\r\n '--card-border-width': field()?.controlStyle?.borderWidth ,\r\n '--card-border-style': field()?.controlStyle?.borderStyle ,\r\n '--card-border-radius': field()?.controlStyle?.borderRadius \r\n}\">\r\n <p class=\"m-0 card-label\" [ngStyle]=\"{\r\n '--card-font-size': field()?.controlStyle?.fontSize ,\r\n '--card-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--card-font-color': field()?.controlStyle?.color ,\r\n}\">Label</p>\r\n <hr class=\"m-0 hr-line mt-1\" />\r\n <div class=\"d-flex gap-2 mt-1\">\r\n <span>\r\n <img src=\"https://cdn.godigit.com/retail-life/Endorsement-add-ons.svg\" alt=\"\" />\r\n </span>\r\n <span>\r\n <p class=\"m-0 card-label\">Glow Plus Pure Term</p>\r\n <span class=\"below-card-text\">L1234694934</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-hr-line',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './hr-line.component.html',\r\n styleUrl: './hr-line.component.css'\r\n})\r\nexport class HrLineComponent {\r\nfield: any = input.required<any>();\r\n}\r\n","<div class=\"col-lg-12\">\r\n <hr class=\"master-hr-line\" [ngStyle]=\"{\r\n'--hr-line-border-width': field()?.controlStyle?.borderWidth,\r\n'--hr-line-border-color': field()?.controlStyle?.borderColor,\r\n'--hr-line-border-style': field()?.controlStyle?.borderStyle\r\n}\"/>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-search-multi-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n FormsModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './search-multi-select.component.html',\r\n styleUrl: './search-multi-select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SearchMultiSelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SearchMultiSelectComponent {\r\n field: any = input.required<any>();\r\n selectedValues: any = [];\r\n visibleChip: any = [];\r\n remainingCount: any = 0;\r\n searchText: any = '';\r\n filteredOptions: any = [];\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n ngOnInit() {\r\n this.filteredOptions = this.field().options;\r\n }\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n setDisabledState?(isDisabled: boolean): void {}\r\n\r\n removeItem(item: any) {\r\n const maxVisible = 2;\r\n this.visibleChip = this.visibleChip.filter(\r\n (element: any) => element !== item\r\n );\r\n this.selectedValues = this.selectedValues.filter(\r\n (element: any) => element !== item\r\n );\r\n const found = this.field().options.find((i: any) => i.label === item);\r\n if (found) {\r\n found.value = false;\r\n }\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectionChange() {\r\n const maxVisible = 2;\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n\r\n filterOptions() {\r\n if (!this.searchText) {\r\n this.filteredOptions = this.field().options;\r\n return;\r\n }\r\n const filterValue = this.searchText.toLowerCase();\r\n this.filteredOptions = this.field().options.filter((option: any) =>\r\n option.label.toLowerCase().includes(filterValue)\r\n );\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty(\r\n '--custom-select-option-background-color',\r\n css?.dropdownOptionBgColor || '#fff'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-color',\r\n css?.dropdownOptionColor || '#444'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-weight',\r\n css?.dropdownOptionFontWeight || '400'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-background-color-focus',\r\n css?.focusDropdownOptionBgColor || '#fff'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-color-focus',\r\n css?.focusDropdownOptionColor || '#444'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-weight-focus',\r\n css?.focusDropdownOptionFontWeight || '400'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-border-left-focus',\r\n css?.focusDropdownOptionBorderLeft || '#ffbb00'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-border-radius-focus',\r\n css?.focusDropdownOptionBorderRadius || '#ffbb00'\r\n );\r\n } else {\r\n document.body.style.removeProperty(\r\n '--custom-select-option-background-color'\r\n );\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty(\r\n '--custom-select-option-background-color-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-font-color-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-font-weight-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-border-left-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-border-radius-focus'\r\n );\r\n }\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n appearance=\"outline\"\r\n class=\"input-full-width full-width w-100 multi-select\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n<mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [(value)]=\"selectedValues\"\r\n (selectionChange)=\"onSelectionChange()\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox>\r\n </mat-select-trigger>\r\n <div class=\"select-container\">\r\n <mat-optgroup>\r\n <mat-form-field\r\n class=\"input-full-width full-width w-100 multiselect-search\"\r\n >\r\n <input\r\n matInput\r\n #search\r\n autocomplete=\"off\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"filterOptions()\"\r\n />\r\n </mat-form-field>\r\n </mat-optgroup>\r\n @for (option of filteredOptions; track option.label) {\r\n <mat-option [value]=\"option.label\" autoActiveFirstOption>\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </div>\r\n </mat-select>\r\n}@else {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [(value)]=\"selectedValues\"\r\n (selectionChange)=\"onSelectionChange()\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox>\r\n </mat-select-trigger>\r\n <div class=\"select-container\">\r\n <mat-optgroup>\r\n <mat-form-field\r\n class=\"input-full-width full-width w-100 multiselect-search\"\r\n >\r\n <input\r\n matInput\r\n #search\r\n autocomplete=\"off\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"filterOptions()\"\r\n />\r\n </mat-form-field>\r\n </mat-optgroup>\r\n @for (option of filteredOptions; track option.label) {\r\n <mat-option [value]=\"option.label\" autoActiveFirstOption>\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </div>\r\n </mat-select>\r\n}\r\n \r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-subscript-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule ,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './subscript-textbox.component.html',\r\n styleUrl: './subscript-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SubscriptTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SubscriptTextboxComponent {\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">Allowed range is 10 to 30 years</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'lib-label',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './label.component.html',\r\n styleUrl: './label.component.css'\r\n})\r\nexport class LabelComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n<span class=\"master-label\" [ngStyle]=\"{\r\n'--master-heading-font-color': field()?.controlStyle?.color,\r\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\r\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-sub-header',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './sub-header.component.html',\r\n styleUrl: './sub-header.component.css'\r\n})\r\nexport class SubHeaderComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"sub-heading\" [ngStyle]=\"{\r\n'--sub-heading-font-color': field()?.controlStyle?.color,\r\n'--sub-heading-font-size': field()?.controlStyle?.fontSize,\r\n'--sub-heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}\r\n<img [src]=\"field()?.imageUrl\" *ngIf=\"field()?.imageUrl\" alt=\"\">\r\n</span>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'lib-header',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './header.component.html',\r\n styleUrl: './header.component.css'\r\n})\r\nexport class HeaderComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"heading\" [ngStyle]=\"{\r\n'--heading-font-color': field()?.controlStyle?.color,\r\n'--heading-font-size': field()?.controlStyle?.fontSize,\r\n'--heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">\r\n {{field()?.label}}\r\n </span>\r\n</div>","import { Component, HostListener, input } from '@angular/core';\r\nimport { CommonModule, NgFor, NgIf } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { MatPaginatorModule, PageEvent } from '@angular/material/paginator';\r\n@Component({\r\n selector: 'lib-table',\r\n standalone: true,\r\n imports: [NgIf, NgFor, FormsModule, CommonModule, MatIconModule, MatTooltipModule,MatPaginatorModule],\r\n templateUrl: './table.component.html',\r\n styleUrl: './table.component.css'\r\n})\r\nexport class TableComponent {\r\n field: any = input.required<any>();\r\n readonly = input(false);\r\n showActionsPopup = false;\r\n popupPosition = { top: 0, left: 0 };\r\n selectedRow: any = 0;\r\n highlightedIndex = -1;\r\n paginationSize: any = 10;\r\n pageNumber: any = 0;\r\n pageSize: any = 10;\r\n constructor(public masterControlService : MasterControlService) { }\r\n\r\n ngOnInit() {\r\n this.setColumns();\r\n }\r\n trackByIndex(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n setColumns() {\r\n let checkConfigData = this.field().configData;\r\n if(Object.keys(checkConfigData).length > 0){\r\n this.masterControlService.configData.table = checkConfigData;\r\n }\r\n if (this.masterControlService.configData.table.rowlength > 0 && this.masterControlService.configData.table.columnlength > 0) {\r\n this.field().tableData = this.masterControlService.configData.table;\r\n for (let i = 0; i < this.masterControlService.configData.table.columnlength; i++) {\r\n if(Object.keys(checkConfigData).length <= 0){\r\n let headerObj = {\r\n \"columnName\": `${'Name - ' + i}`,\r\n \"isSortingNeeded\": \"Y\",\r\n \"toolTip\": `${'tooltip - ' + i}`\r\n }\r\n const exists = this.field().tableData.tableHeaders.some(\r\n (header: any) => header.columnName === headerObj.columnName\r\n );\r\n if (!exists && this.field().tableData.tableHeaders.length < this.masterControlService.configData.table.columnlength) {\r\n this.field().tableData.tableHeaders.push(headerObj);\r\n }\r\n }\r\n }\r\n this.field().tableData.tdData = Array(this.masterControlService.configData.table.rowlength).fill(null).map((_, rowIdx) =>\r\n Array(this.masterControlService.configData.table.columnlength).fill('').map((_, colIdx) => `Dummy Row ${rowIdx + 1}`)\r\n );\r\n\r\n this.masterControlService.saveTableFieldState(this.field());\r\n this.field().configData = this.field().tableData\r\n }\r\n }\r\n\r\n openActionsPopup(event: MouseEvent, rowIndex: number) {\r\n event.stopPropagation();\r\n this.selectedRow = rowIndex;\r\n this.showActionsPopup = true;\r\n this.highlightedIndex = 1;\r\n const rect = (event.target as HTMLElement).getBoundingClientRect();\r\n this.popupPosition = {\r\n top: rect.bottom + window.scrollY - 30,\r\n left: rect.left + window.scrollX - 280,\r\n };\r\n }\r\n\r\n closeActionsPopup() {\r\n this.showActionsPopup = false;\r\n this.selectedRow = 0;\r\n this.highlightedIndex = -1;\r\n }\r\n\r\n @HostListener('document:keydown.escape', ['$event'])\r\n onEscKey(event: KeyboardEvent) {\r\n this.closeActionsPopup();\r\n }\r\n\r\n pageChanged(event: PageEvent) {\r\n this.pageNumber = event.pageIndex;\r\n this.pageSize = event.pageSize;\r\n console.log(this.pageNumber, this.pageSize);\r\n }\r\n}\r\n","<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n <mat-paginator class=\"custom-paginator\"\r\n [length]=\"field()?.tableData?.tdData?.length\"\r\n [pageSize]=\"paginationSize\"\r\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\r\n (page)=\"pageChanged($event)\"\r\n aria-label=\"Select page\">\r\n </mat-paginator>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <div class=\"makeArrow\" [ngStyle]=\"{'left.px': popupPosition.left+25}\"></div>\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-text',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './textbox-with-text.component.html',\r\n styleUrl: './textbox-with-text.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithTextComponent,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TextboxWithTextComponent {\r\n inputValue: any = null;\r\n reactiveFormControlobject: any = input<any>();\r\n field: any = input.required<any>();\r\n\r\n _onChange: any = (inputValue: any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void {\r\n this.inputValue = obj;\r\n }\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n registerOnTouched(fn: any): void {\r\n this._unTouched = fn;\r\n }\r\n setDisabledState?(isDisabled: boolean): void {}\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">Allowed range is 10 to 30 years</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-discount',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './discount.component.html',\r\n styleUrl: './discount.component.css'\r\n})\r\nexport class DiscountComponent {\r\n field: any = input.required<any>();\r\n\r\n}\r\n","<p\r\n class=\"discount-label b2-bold px-1\"\r\n *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\"\r\n>\r\n {{ field()?.label }}\r\n</p>\r\n<div \r\nclass=\"discount-card\" \r\n*ngIf=\"field() && field()?.isVisible\"\r\n[ngStyle]=\"\r\n{\r\n '--discount-border-width': field()?.controlStyle?.borderWidth,\r\n '--discount-card-width': field()?.controlStyle?.width ,\r\n '--discount-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--discount-border-color': field()?.controlStyle?.borderColor ,\r\n}\"\r\n>\r\n <div class=\"d-flex justify-content-between\">\r\n <div>\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/discount-img-lib.svg\"\r\n alt=\"\"\r\n class=\"mx-1\"\r\n />\r\n <span class=\"h2-extrabold\">5% </span>\r\n <span class=\"b3-regular\">off</span>\r\n </div>\r\n <div>\r\n <button class=\"apply-btn\">\r\n <span class=\"my-1\">\r\n Apply\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/arrow_forward_lib.svg\"\r\n alt=\"\"\r\n />\r\n </span>\r\n </button>\r\n </div>\r\n <div *ngIf=\"false\">\r\n <button class=\"remove-btn\">\r\n <span> Remove x </span>\r\n </button>\r\n </div>\r\n </div>\r\n <div>\r\n <p class=\"b2-bold m-0\">Good Health Discount</p>\r\n <p class=\"b3-regular\">\r\n Get extra 5% discount for keeping a healthy lifestyle!\r\n </p>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-benefit-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './benefit-card.component.html',\r\n styleUrl: './benefit-card.component.css',\r\n})\r\nexport class BenefitCardComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div\r\n class=\"benefit-card\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"\r\n{\r\n '--benefit-border-width': field()?.controlStyle?.borderWidth,\r\n '--benefit-card-width': field()?.controlStyle?.width ,\r\n '--benefit-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--benefit-border-color': field()?.controlStyle?.borderColor ,\r\n}\"\r\n>\r\n <div class=\"d-flex justify-content-between\">\r\n <span class=\"b1-bold\" *ngIf=\"field()?.isShowLabel\">{{ field()?.label }}</span>\r\n <button class=\"add-card-button\">+ Add</button>\r\n <button class=\"remove-card-button\" *ngIf=\"false\">x Remove</button>\r\n </div>\r\n <div class=\"mt-2\">\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/tabler_wheelchair.png\"\r\n alt=\"\"\r\n />\r\n <span class=\"b3-regular mx-2\">Policy Continuance Benefit on Death</span>\r\n <img src=\"https://cdn.godigit.com/retail-life/info-button-lib.svg\" alt=\"\" />\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-loader',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './loader.component.html',\r\n styleUrl: './loader.component.css'\r\n})\r\nexport class LoaderComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div\r\n class=\"loader-overlay\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"field()?.configData?.loaderCSS\"\r\n>\r\n <div\r\n class=\"loader-card\"\r\n [ngStyle]=\"field()?.configData?.cardCSS\"\r\n >\r\n <ng-container *ngIf=\"field()?.configData?.imageURL; else defaultLoader\">\r\n <img\r\n [src]=\"field()?.configData?.imageURL\"\r\n [ngStyle]=\"field()?.configData?.imageCSS\"\r\n alt=\"Loader\"\r\n />\r\n <div\r\n class=\"loader-text\"\r\n [ngStyle]=\"field()?.configData?.textCSS\"\r\n >\r\n {{ field()?.configData?.text }}\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultLoader>\r\n <div class=\"loader\">\r\n <span></span>\r\n <span></span>\r\n <span></span>\r\n </div>\r\n <div\r\n class=\"loader-text\"\r\n [ngStyle]=\"field()?.configData?.textCSS\"\r\n >\r\n {{ field()?.configData?.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-warning-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './warning-snackbar.component.html',\r\n styleUrl: './warning-snackbar.component.css'\r\n})\r\nexport class WarningSnackbarComponent {\r\nfield : any = input.required<any>();\r\nwarningObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.warningObj = this.masterService.snackbars.find((item: any) => item.type === 'Warning');\r\n}\r\n}\r\n","<div [ngClass]=\"warningObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"warningObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"warningObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"warningObj.labelCSS\">{{warningObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"warningObj.messageCSS\">{{warningObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"warningObj.closeIconCSS\" [src]=\"warningObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-success-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './success-snackbar.component.html',\r\n styleUrl: './success-snackbar.component.css'\r\n})\r\nexport class SuccessSnackbarComponent {\r\nfield : any = input.required<any>();\r\nsuccessObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.successObj = this.masterService.snackbars.find((item: any) => item.type === 'Success');\r\n}\r\n}\r\n","<div [ngClass]=\"successObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"successObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"successObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"successObj.labelCSS\">{{successObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"successObj.messageCSS\">{{successObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"successObj.closeIconCSS\" [src]=\"successObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-neutral-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './neutral-snackbar.component.html',\r\n styleUrl: './neutral-snackbar.component.css'\r\n})\r\nexport class NeutralSnackbarComponent {\r\nfield : any = input.required<any>();\r\nneutralObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.neutralObj = this.masterService.snackbars.find((item: any) => item.type === 'Neutral');\r\n}\r\n}\r\n","<div [ngClass]=\"neutralObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"neutralObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"neutralObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"neutralObj.labelCSS\">{{neutralObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"neutralObj.messageCSS\">{{neutralObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"neutralObj.closeIconCSS\" [src]=\"neutralObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-error-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './error-snackbar.component.html',\r\n styleUrl: './error-snackbar.component.css'\r\n})\r\nexport class ErrorSnackbarComponent {\r\nfield : any = input.required<any>();\r\nerrorObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.errorObj = this.masterService.snackbars.find((item: any) => item.type === 'Error');\r\n}\r\n}\r\n","<div [ngClass]=\"errorObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"errorObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"errorObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"errorObj.labelCSS\">{{errorObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"errorObj.messageCSS\">{{errorObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"errorObj.closeIconCSS\" [src]=\"errorObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-grey-label',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './grey-label.component.html',\r\n styleUrl: './grey-label.component.css'\r\n})\r\nexport class GreyLabelComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"bold-label\" [ngStyle]=\"{\r\n'--master-bold-label-font-color': field()?.controlStyle?.color,\r\n'--master-bold-label-font-size': field()?.controlStyle?.fontSize,\r\n'--master-bold-label-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input, OnInit } from '@angular/core';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'lib-iframe',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './iframe.component.html',\r\n styleUrl: './iframe.component.css'\r\n})\r\nexport class IframeComponent implements OnInit {\r\n field: any = input.required<any>();\r\n safeUrl: SafeResourceUrl | null = null;\r\n\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n ngOnInit() {\r\n if (this.field() && this.field().imageUrl) {\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.field().imageUrl);\r\n }\r\n }\r\n\r\n getIframeUrl() {\r\n let iframeUrl : any = null;\r\n if (this.field() && this.field().imageUrl) {\r\n iframeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.field().imageUrl);\r\n }\r\n return iframeUrl;\r\n }\r\n\r\n}\r\n","<div *ngIf=\"field().imageUrl\">\r\n <iframe [id]=\"field().fieldName\" width=\"100%\" height=\"500px\" style=\"border: none \"></iframe>\r\n <!-- <object [data]=\"field().imageUrl\" width=\"600\" height=\"400\">\r\n <embed [src]=\"field().imageUrl\" width=\"600\" height=\"400\"/>\r\n Error: Embedded data could not be displayed.\r\n </object> -->\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\n\r\n@Component({\r\n selector: 'lib-toggle-button',\r\n standalone: true,\r\n imports: [MatButtonToggleModule, CommonModule],\r\n templateUrl: './toggle-button.component.html',\r\n styleUrl: './toggle-button.component.css'\r\n})\r\nexport class ToggleButtonComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<div style=\"position: relative\" [ngClass]=\"field()?.cssClass\">\r\n <mat-button-toggle-group\r\n [ngStyle]=\"{\r\n '--toggle-button-width': field()?.controlStyle?.width ,\r\n }\"\r\n name=\"fontStyle\"\r\n class=\"custom-mat-toggle\"\r\n aria-label=\"Font Style\"\r\n *ngIf=\"field() && field()?.isVisible && field()?.configData?.options\"\r\n >\r\n @for (data of field()?.configData?.options; track $index) {\r\n <mat-button-toggle [value]=\"data.value\"\r\n >{{ data.label }}\r\n <img\r\n *ngIf=\"data.imgUrl\"\r\n [src]=\"data.imgUrl\"\r\n alt=\"\"\r\n class=\"toggle-img mx-1\"\r\n />\r\n </mat-button-toggle>\r\n <div class=\"top-green-card\" *ngIf=\"data.toggleTopText\">\r\n <span class=\"second-box\">\r\n <img\r\n class=\"green-card-img\"\r\n *ngIf=\"data.topImage\"\r\n [src]=\"data.topImage\"\r\n alt=\"\"\r\n />\r\n <span>{{ data.toggleTopText }}</span>\r\n </span>\r\n </div>\r\n }\r\n </mat-button-toggle-group>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-pay-get-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './pay-get-card.component.html',\r\n styleUrl: './pay-get-card.component.css'\r\n})\r\nexport class PayGetCardComponent {\r\nfield: any = input.required<any>();\r\n @Input() payAmount: any = '₹6,00,000';\r\n @Input() premiumAmount: any= '₹10,000';\r\n @Input() ptValue: any= 5;\r\n @Input() years: any= '2030';\r\n @Input() frequency: any= 'month';\r\n}\r\n","<div\r\n class=\"d-flex justify-content-between pay-card\"\r\n [ngStyle]=\"{\r\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\r\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\r\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--pay-card-bg-color': field()?.controlStyle?.background ,\r\n'--pay-card-width': field()?.controlStyle?.width ,\r\n }\"\r\n>\r\n <div class=\"text-center mx-2\">\r\n <span class=\"bold-label\">Pay</span> <br />\r\n <span class=\"grey-label\">{{payAmount}}</span>\r\n </div>\r\n <div class=\"premium-card\">\r\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\r\n <br />\r\n <span class=\"grey-label\">for {{ptValue}} years (till {{years}})</span>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-in-built-benefit',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './in-built-benefit.component.html',\r\n styleUrl: './in-built-benefit.component.css',\r\n})\r\nexport class InBuiltBenefitComponent {\r\n field: any = input.required<any>();\r\n\r\n @Input() premiumAmount: any = '₹1,00,000';\r\n @Input() premiumAmountShort: any = '1L';\r\n}\r\n","<div class=\"d-flex in-built-card\"\r\n [ngStyle]=\"{\r\n'--inbuilt-card-border-color': field()?.controlStyle?.borderColor ,\r\n'--inbuilt-card-border-width': field()?.controlStyle?.borderWidth ,\r\n'--inbuilt-card-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--inbuilt-card-bg-color': field()?.controlStyle?.background ,\r\n'--inbuilt-card-width': field()?.controlStyle?.width ,\r\n }\"\r\n>\r\n <p class=\"w-100 top-box\">\r\n <span class=\"top-benefit-card\">In-built Benefit</span>\r\n </p>\r\n <div>\r\n <span class=\"premium-header\">Return of Premium</span> <br />\r\n <span class=\"benefit-text normal-text\"\r\n >Customer can get their premiums back on\r\n <b class=\"bold-text\"\r\n >diagnosis of Critical Illness (CI) or Total and Permanent Disability\r\n (TPD) before the age of 80.</b\r\n ></span\r\n >\r\n <br />\r\n <span class=\"premium\"\r\n ><b>{{ premiumAmount }}</b> ({{ premiumAmountShort }})</span\r\n >\r\n </div>\r\n <div class=\"m-auto\">\r\n <img *ngIf=\"field()?.imageUrl\" [src]=\"field().imageUrl\" alt=\"\" />\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-other-benefits',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './other-benefits.component.html',\r\n styleUrl: './other-benefits.component.css'\r\n})\r\nexport class OtherBenefitsComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div class=\"other-benefit-card d-flex gap-2\"\r\n [ngStyle]=\"{\r\n'--other-benefit-color-border-color': field()?.controlStyle?.borderColor ,\r\n'--other-benefit-color-border-width': field()?.controlStyle?.borderWidth ,\r\n'--other-benefit-color-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--other-benefit-color-bg-color': field()?.controlStyle?.background\r\n }\"\r\n>\r\n <p class=\"w-100 top-box\">\r\n <span class=\"top-benefit-card\">Other Benefit</span>\r\n </p>\r\n @for (data of field()?.configData?.otherBenefits; track $index) {\r\n <div class=\"sub-benefit-card\">\r\n <div class=\"d-flex gap-2\">\r\n <img [src]=\"data.imageUrl\" alt=\"\" />\r\n <span class=\"header-txt\">{{ data.headerText }}</span>\r\n </div>\r\n <span [innerHTML]=\"data.htmlInnerText\"></span>\r\n </div>\r\n }\r\n</div>\r\n","import { Component, input, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-annuity-rate-logo',\r\n standalone: true,\r\n imports: [],\r\n templateUrl: './annuity-rate-logo.component.html',\r\n styleUrl: './annuity-rate-logo.component.css'\r\n})\r\nexport class AnnuityRateLogoComponent {\r\nfield: any = input.required<any>();\r\n@Input() ratePercent: any = '7%';\r\n}\r\n","<div>\r\n <span class=\"annuity-box\">\r\n <span class=\"annuity-percent\">{{ ratePercent }}</span>\r\n <img src=\"https://cdn.godigit.com/retail-life/annuity-rate.svg\" alt=\"\" />\r\n </span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n@Component({\r\n selector: 'lib-discount-v2',\r\n standalone: true,\r\n imports: [MatIconModule , CommonModule],\r\n templateUrl: './discount-v2.component.html',\r\n styleUrl: './discount-v2.component.css'\r\n})\r\nexport class DiscountV2Component {\r\nfield: any = input.required<any>();\r\n}\r\n","<div class=\"px-3 py-2 discount-card-v2\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"\r\n{\r\n '--discount-design-border-width': field()?.controlStyle?.borderWidth,\r\n '--discount-design-border-color': field()?.controlStyle?.borderColor ,\r\n '--discount-design-border-style': field()?.controlStyle?.borderStyle ,\r\n '--discount-design-width': field()?.controlStyle?.width ,\r\n '--discount-design-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--discount-design-bg': field()?.controlStyle?.background ,\r\n}\">\r\n <div class=\"mb-2 discount-heading\" [ngStyle]=\"\r\n{\r\n '--discount-heading-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--discount-heading-font-size': field()?.controlStyle?.fontSize ,\r\n '--discount-heading-font-color': field()?.controlStyle?.color\r\n}\">{{field()?.label}}</div>\r\n <div>\r\n <button class=\"px-2 mt-1 discount-btn-remove\"><div>Remove</div> <mat-icon class=\"pt-1 remove-btn-cross\">close</mat-icon></button>\r\n </div>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-label-value-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './label-value-card.component.html',\r\n styleUrl: './label-value-card.component.css'\r\n})\r\nexport class LabelValueCardComponent {\r\nfield : any = input.required<any>();\r\n\r\nngOnInit(){}\r\n}\r\n","<div class=\"labelValueCard\">\r\n <div class=\"labelHead\">\r\n <span class=\"master-labelValue\" [ngStyle]=\"{\r\n '--master-heading-font-color': field()?.controlStyle?.color,\r\n '--master-heading-font-size': field()?.controlStyle?.fontSize,\r\n '--master-heading-font-weight': field()?.controlStyle?.fontWeight\r\n }\">{{field()?.label}}</span>\r\n </div>\r\n <div class=\"labelValue\">\r\n <span>{{field()?.placeHolder}}</span>\r\n </div>\r\n</div>","import { GoogleMapsModule } from '@angular/google-maps';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild, NgZone, AfterViewInit, input } from '@angular/core';\r\nimport questionsResponse from './questions.json'\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TextboxComponent } from '../textbox/textbox.component';\r\nimport { RadioComponent } from '../radio/radio.component';\r\nimport { CheckboxComponent } from '../checkbox/checkbox.component';\r\nimport { SelectComponent } from '../select/select.component';\r\nimport { DobComponent } from '../dob/dob.component';\r\nimport { UploadComponent } from '../upload/upload.component';\r\nimport { MultipleSelectComponent } from '../multiple-select/multiple-select.component';\r\n\r\n@Component({\r\n selector: 'lib-medial-questions',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, TextboxComponent, RadioComponent, CheckboxComponent, SelectComponent, DobComponent, UploadComponent, MultipleSelectComponent, GoogleMapsModule],\r\n templateUrl: './medial-questions.component.html',\r\n styleUrl: './medial-questions.component.css'\r\n})\r\nexport class MedialQuestionsComponent implements OnInit , AfterViewInit{\r\n @Input() medialQuestionResponse: any = questionsResponse;\r\n @ViewChild('addressInput') addressInput!: ElementRef<HTMLInputElement>;\r\n private autocomplete!: google.maps.places.Autocomplete;\r\n field : any = input.required<any>();\r\n questionList : any = [];\r\n currentCoordinates : any = {};\r\n personUwResponseObj : any = [];\r\n center: google.maps.LatLngLiteral = { lat: 40.73061, lng: -73.935242 };\r\n latitude: any;\r\n longitude: any;\r\n zoom:any;\r\n marker : any = {}\r\n\r\n personUwAnswers : any = {\r\n medicalQuestionsHeightUnit: 'FEET',\r\n };\r\n medQuestionObj : any = {};\r\n listOfDomainValuesForCheckBox : any = [];\r\n medicalQuestionsFeetList : any = [];\r\n medicalQuestionsInchesList : any = [];\r\n questionHeader: any = ['eia details', 'abha details', 'pep details'];\r\n medicalQuestionsHeightUnitTypes: any = [\r\n {\r\n label: 'Cm',\r\n value: 'CM'\r\n },\r\n {\r\n label: 'Feet',\r\n value: 'FEET'\r\n }\r\n ]\r\n showDropdown = false;\r\naddressSuggestions: any[] = [];\r\nhoveredIndex = -1;\r\nsearchTimeout: any;\r\n\r\n constructor( public ngZone: NgZone) {\r\n console.log('medialQuestionResponseeeeee', this.medialQuestionResponse);\r\n }\r\n\r\n ngOnInit() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.latitude = position.coords.latitude;\r\n this.longitude = position.coords.longitude;\r\n this.zoom = 15;\r\n this.currentCoordinates = {\r\n lat : this.latitude,\r\n lng : this.longitude,\r\n }\r\n this.center = {...this.currentCoordinates};\r\n });\r\n }\r\n this.preparePersonUwQuestionsObj();\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initializeAutocomplete();\r\n }\r\n\r\n private initializeAutocomplete(): void {\r\n this.autocomplete = new google.maps.places.Autocomplete(\r\n this.addressInput?.nativeElement,\r\n {\r\n types: ['address'],\r\n componentRestrictions: { country: 'IN' },\r\n fields: ['place_id', 'geometry', 'name', 'formatted_address']\r\n }\r\n );\r\n\r\n this.autocomplete.addListener('place_changed', () => {\r\n this.ngZone.run(() => {\r\n this.onPlaceSelected();\r\n });\r\n });\r\n }\r\n\r\n private onPlaceSelected(): void {\r\n const place = this.autocomplete.getPlace();\r\n\r\n if (!place.geometry || !place.geometry.location) {\r\n console.log('No details available for input: ', place.name);\r\n return;\r\n }\r\n\r\n const location = place.geometry.location;\r\n this.center = {\r\n lat: location.lat(),\r\n lng: location.lng()\r\n };\r\n this.currentCoordinates = this.center;\r\n\r\n if (place.geometry.viewport) {\r\n this.zoom = 15;\r\n } else {\r\n this.zoom = 13;\r\n }\r\n\r\n console.log('Selected place:', {\r\n name: place.name,\r\n address: place.formatted_address,\r\n coordinates: this.center\r\n });\r\n\r\n this.storeSelectedAddress(place);\r\n }\r\n\r\n\r\n private storeSelectedAddress(place: google.maps.places.PlaceResult): void {\r\n const addressData = {\r\n placeId: place.place_id,\r\n name: place.name,\r\n formattedAddress: place.formatted_address,\r\n coordinates: this.center\r\n };\r\n\r\n }\r\n\r\n searchAddress(address: string): void {\r\n const geocoder = new google.maps.Geocoder();\r\n\r\n geocoder.geocode({ address: address }, (results, status) => {\r\n if (status === 'OK' && results && results[0]) {\r\n const location = results[0].geometry.location;\r\n this.ngZone.run(() => {\r\n this.center = {\r\n lat: location.lat(),\r\n lng: location.lng()\r\n };\r\n this.currentCoordinates = this.center;\r\n this.zoom = 15;\r\n });\r\n } else {\r\n console.log('Geocode was not successful for the following reason: ' + status);\r\n }\r\n });\r\n }\r\n\r\n onAddressInputKeyup(event: any) {\r\n const query = event.target.value;\r\n\r\n // Clear previous timeout\r\n if (this.searchTimeout) {\r\n clearTimeout(this.searchTimeout);\r\n }\r\n\r\n // Handle arrow key navigation\r\n if (event.key === 'ArrowDown') {\r\n this.hoveredIndex = Math.min(this.hoveredIndex + 1, this.addressSuggestions.length - 1);\r\n return;\r\n } else if (event.key === 'ArrowUp') {\r\n this.hoveredIndex = Math.max(this.hoveredIndex - 1, -1);\r\n return;\r\n } else if (event.key === 'Enter') {\r\n if (this.hoveredIndex >= 0 && this.addressSuggestions[this.hoveredIndex]) {\r\n this.selectAddress(this.addressSuggestions[this.hoveredIndex]);\r\n }\r\n return;\r\n } else if (event.key === 'Escape') {\r\n this.showDropdown = false;\r\n return;\r\n }\r\n\r\n if (query.length < 2) {\r\n this.addressSuggestions = [];\r\n this.showDropdown = false;\r\n return;\r\n }\r\n\r\n this.searchTimeout = setTimeout(() => {\r\n this.searchAddresses(query);\r\n }, 300);\r\n}\r\n\r\nsearchAddresses(query: string) {\r\n // Replace this with your actual address search API call\r\n // For example, using Google Places API:\r\n\r\n const service = new google.maps.places.AutocompleteService();\r\n service.getPlacePredictions(\r\n {\r\n input: query,\r\n types: ['address']\r\n },\r\n (predictions, status) => {\r\n if (status === google.maps.places.PlacesServiceStatus.OK && predictions) {\r\n this.addressSuggestions = predictions.map(prediction => ({\r\n place_id: prediction.place_id,\r\n main_text: prediction.structured_formatting.main_text,\r\n secondary_text: prediction.structured_formatting.secondary_text,\r\n description: prediction.description\r\n }));\r\n this.showDropdown = true;\r\n this.hoveredIndex = -1;\r\n } else {\r\n this.addressSuggestions = [];\r\n this.showDropdown = false;\r\n }\r\n }\r\n );\r\n}\r\n\r\nselectAddress(suggestion: any) {\r\n const addressInput = document.querySelector('#addressInput') as HTMLInputElement;\r\n if (addressInput) {\r\n addressInput.value = suggestion.description;\r\n }\r\n\r\n const service = new google.maps.places.PlacesService(document.createElement('div'));\r\n service.getDetails(\r\n {\r\n placeId: suggestion.place_id,\r\n fields: ['geometry', 'formatted_address']\r\n },\r\n (place, status) => {\r\n if (status === google.maps.places.PlacesServiceStatus.OK && place) {\r\n const lat = place.geometry?.location?.lat();\r\n const lng = place.geometry?.location?.lng();\r\n\r\n if (lat !== undefined && lng !== undefined) {\r\n this.longitude = lng;\r\n this.latitude = lat;\r\n\r\n this.center = { lat, lng };\r\n this.currentCoordinates = this.center;\r\n }\r\n }\r\n }\r\n );\r\n\r\n this.showDropdown = false;\r\n this.addressSuggestions = [];\r\n}\r\n\r\nonInputBlur() {\r\n setTimeout(() => {\r\n this.showDropdown = false;\r\n }, 200);\r\n}\r\n\r\n preparePersonUwQuestionsObj() {\r\n this.questionList = [];\r\n let data : any = questionsResponse;\r\n this.listOfDomainValuesForCheckBox = [];\r\n\r\n\r\n if (!this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n let personUwIdArray: any = [];\r\n data['questionsResponse'].forEach((singleQuestionObj: any) => {\r\n personUwIdArray.push(singleQuestionObj['personUWId']);\r\n });\r\n\r\n if (!this.checkIfValueIsEmpty(data) && !this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n\r\n if (!this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n let distinctSteps: any = [];\r\n data['questionsResponse'].forEach((singlePersonObject: any) => {\r\n if (!this.checkIfValueIsEmpty(singlePersonObject['questionList'])) {\r\n singlePersonObject['questionList'].forEach((singleQuestion: any) => {\r\n singleQuestion['domainValues'] = data['domainValues'][singleQuestion['domainName']];\r\n\r\n singleQuestion['field'] = this.getField(singleQuestion);\r\n\r\n if (singleQuestion['cammundaQuestionCode'] === 'PAN') {\r\n singleQuestion['validations'] = '{\"Type\":\"AlphaNumeric\",\"MinValue\":\"10\",\"MaxValue\":\"10\",\"regexPattern\":\"/^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/\"}';\r\n }\r\n // if (singleQuestion['cammundaQuestionCode'] === 'FtcaCntcDetls') {\r\n // singleQuestion['validations'] = '{\"customValidation\":[{\"country\":\"IN\",\"MinValue\":\"10\",\"MaxValue\":\"10\",\"regexPattern\":\"((^[6-9]){1}([0-9]){9}$)\"},{\"country\":\"OTHER\",\"MinValue\":\"5\",\"MaxValue\":\"14\"}]}';\r\n // }\r\n if (\r\n singleQuestion['questionType'] === 'CHECKBOX' &&\r\n !this.checkIfValueIsEmpty(singleQuestion['questionRelation'])\r\n ) {\r\n singleQuestion['questionRelation'].forEach((singleQuestionRelationObj: any) => {\r\n let nextQuestionObject: any = singlePersonObject['questionList'].filter(\r\n (object: any) => object['questionId'] === singleQuestionRelationObj['nextQuestionId']\r\n );\r\n if (nextQuestionObject.length > 0) {\r\n nextQuestionObject[0]['answeredValue'] = singleQuestionRelationObj['parentQuestionValue'];\r\n }\r\n });\r\n }\r\n\r\n if (singleQuestion['questionType'] === 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(singleQuestion['domainName']) && !this.checkIfValueIsEmpty(data['domainValues'][singleQuestion['domainName']])) {\r\n data['domainValues'][singleQuestion['domainName']].forEach((singleDomainValue: any) => {\r\n if (!this.checkIfValueIsEmpty(singleDomainValue['domainInternalValue'])) {\r\n this.listOfDomainValuesForCheckBox.push(singleDomainValue['domainInternalValue']);\r\n }\r\n });\r\n }\r\n }\r\n\r\n if (!distinctSteps.includes(singleQuestion['step'])) {\r\n distinctSteps.push(singleQuestion['step']);\r\n }\r\n\r\n singleQuestion['isMedicalSubQuestion'] = false;\r\n });\r\n\r\n singlePersonObject['questionList'].forEach((question: any) => {\r\n question['isShowQuestionInUI'] = false;\r\n if (question['questionType'] === 'IMAGE TEXT') {\r\n question['questionText'] = question['questionText'].replaceAll('\\\\n', '<br>');\r\n }\r\n\r\n if (question['cammundaQuestionCode'] === 'QHTF') {\r\n this.medicalQuestionsFeetList = question['domainValues'];\r\n this.medQuestionObj['QHTF'] = question;\r\n this.medQuestionObj['QHTF']['field']['isShowLabel'] = false;\r\n\r\n }\r\n if (question['cammundaQuestionCode'] === 'QHTI') {\r\n this.medicalQuestionsInchesList = question['domainValues']\r\n this.medQuestionObj['QHTI'] = question;\r\n this.medQuestionObj['QHTI']['field']['isShowLabel'] = false;\r\n }\r\n\r\n if (question['questionType'] === 'DECLARATION') {\r\n\r\n if (question['cammundaQuestionCode'] === 'recvSftCopy') {\r\n // this.personUwAnswers[singlePersonObject['role']][] = false;\r\n question['domainValues'] = [];\r\n question['domainValues'].push({\r\n domainInternalValue: question['questionId'],\r\n domainUiValue: 'N'\r\n });\r\n }\r\n question['domainValues'] = [];\r\n question['domainValues'].push({\r\n domainInternalValue: question['questionId'],\r\n domainUiValue: 'Y'\r\n });\r\n }\r\n\r\n if (question['cammundaQuestionCode'] === 'hardCopyLang') {\r\n question['questionType'] = 'HARD COPY';\r\n }\r\n\r\n\r\n\r\n\r\n\r\n });\r\n\r\n singlePersonObject['questionList'].sort(\r\n (a: any, b: any) => a['step'] - b['step'] || a['displayOrder'] - b['displayOrder']\r\n );\r\n }\r\n\r\n\r\n let questionsListForLA: any = [];\r\n distinctSteps.forEach((steps: any) => {\r\n\r\n let filteredObj: any = singlePersonObject['questionList'].filter((singleQuestion: any) => singleQuestion['step'] === steps);\r\n let obj: any = {\r\n step: steps,\r\n personUWId: singlePersonObject['personUWId'].toString(),\r\n questions: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj : [],\r\n sectionName: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj[0]['title'] : '',\r\n isMedicalSubQuestion: false,\r\n showSection: true\r\n };\r\n if (!this.checkIfValueIsEmpty(filteredObj)) {\r\n // Hard Copy and Map question\r\n let filteredHardCopyQuestion: any = filteredObj.filter((singleQuestion: any) => singleQuestion['cammundaQuestionCode'] === 'recvSftCopy');\r\n if (!this.checkIfValueIsEmpty(filteredHardCopyQuestion)) {\r\n obj['questions'].push({\r\n questionType: \"MAP\",\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredHardCopyQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'Y'\r\n }\r\n })\r\n }\r\n\r\n // if NRI then passport upload is required\r\n let filteredNationalityQuestion: any = filteredObj.filter((singleQuestion: any) => singleQuestion['cammundaQuestionCode'] === 'Nationality');\r\n if (!this.checkIfValueIsEmpty(filteredNationalityQuestion)) {\r\n singlePersonObject['questionList'].push({\r\n questionType: \"PASSPORT_UPLOAD\",\r\n optionalQuestion: 'N',\r\n questionText: 'Passport Details ',\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredNationalityQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'forgnNational'\r\n }\r\n });\r\n obj['questions'].push({\r\n questionType: \"PASSPORT_UPLOAD\",\r\n optionalQuestion: 'N',\r\n questionText: 'Passport Details ',\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredNationalityQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'forgnNational'\r\n }\r\n });\r\n }\r\n }\r\n questionsListForLA.push(obj);\r\n });\r\n // let lifeAssuredObjectIndexInMaster: any = this.questionList.findIndex((singleObj: any) => singleObj['role'] === singlePersonObject['role']);\r\n // if (lifeAssuredObjectIndexInMaster !== this.numberMinusOne) {\r\n this.questionList = questionsListForLA;\r\n // }\r\n\r\n\r\n\r\n });\r\n this.personUwResponseObj = data['questionsResponse'];\r\n\r\n }\r\n }\r\n }\r\n\r\n this.removeSubQuestionValues();\r\n\r\n this.medQuestionObj['heightObjectTypes'] = {\r\n \"controlStyle\": {},\r\n \"fieldName\": null,\r\n \"label\": \"feet / inches\",\r\n \"placeHolder\": \"\",\r\n \"metaId\": \"\",\r\n \"isVisible\": true,\r\n \"isDisable\": false,\r\n \"validators\": {\r\n \"isRequired\": false,\r\n \"requiredMessage\": \"This field cannot be empty\",\r\n \"minLength\": null,\r\n \"minLengthMessage\": null,\r\n \"maxLength\": 150,\r\n \"maxLengthMessage\": null,\r\n \"pattern\": null,\r\n \"patternMessage\": \"\"\r\n },\r\n \"options\": [\r\n {\r\n \"label\": \"Cm\",\r\n \"value\": \"CM\"\r\n },\r\n {\r\n \"label\": \"Feet\",\r\n \"value\": \"FEET\"\r\n }\r\n ],\r\n \"cssClass\": null,\r\n \"value\": null,\r\n \"style\": null,\r\n \"imageUrl\": null,\r\n \"configData\": {},\r\n \"metaDataObj\": null,\r\n \"isShowLabel\": false,\r\n \"isMasterControl\": false,\r\n \"controlType\": \"select\"\r\n }\r\n\r\n }\r\n\r\n checkIfValueIsEmpty(value: any) {\r\n if (typeof value === 'string') {\r\n value = value.trim();\r\n\r\n }\r\n return (\r\n value === undefined ||\r\n value === null ||\r\n value === '' ||\r\n (value instanceof Array && value.length === 0) ||\r\n JSON.stringify(value) === '{}'\r\n );\r\n }\r\n\r\n getTitleCase(header: any): any {\r\n if (header) {\r\n if (this.questionHeader.includes(header.toLocaleLowerCase())) {\r\n let val = header.split(' ');\r\n return (\r\n val[0].toUpperCase() + ' ' + this.toTitleCase(val[1])\r\n );\r\n } else {\r\n if(header.toUpperCase() === 'FATCA DETAILS'){\r\n return header;\r\n }\r\n return this.toTitleCase(header);\r\n }\r\n }\r\n }\r\n\r\n toTitleCase(value: any) {\r\n if (!this.checkIfValueIsEmpty(value)) {\r\n return value.toString().replace(\r\n /\\w\\S*/g,\r\n (txt: any) => txt[0].toUpperCase() + txt.substr(1).toLowerCase()\r\n );\r\n }\r\n }\r\n\r\n getField(questionObj : any) {\r\n let optionsObj : any = [];\r\n if(questionObj['domainValues']) {\r\n questionObj['domainValues'].forEach((singleOptionValue : any) => {\r\n optionsObj.push({\r\n label : singleOptionValue['domainUiValue'],\r\n value : singleOptionValue['domainInternalValue'],\r\n })\r\n\r\n });\r\n }\r\n return {\r\n configData : this.field()?.configData,\r\n controlStyle: this.field()?.controlStyle,\r\n controlType: questionObj['questionType'] === 'FREE TEXT' ? 'text' : (questionObj['questionType'] === 'RADIO BUTTON' || questionObj['questionType'] === 'ADDMORE')? 'radio' : (questionObj['questionType'] === 'CHECKBOX' || questionObj['questionType'] === 'DECLARATION') ? 'checkbox' : questionObj['questionType'] === 'CALENDAR' ? 'date' : questionObj['questionType'] === 'DROPDOWN' ? 'select' : questionObj['questionType'] === 'DOCUPLOAD' ? 'file' : '',\r\n fieldName : questionObj['cammundaQuestionCode'],\r\n isDisable : false,\r\n label : questionObj['questionText'],\r\n placeHolder : questionObj['questionText'],\r\n validators : {\r\n isRequired : questionObj['optionalQuestion'] === 'N' ? true : false,\r\n },\r\n isVisible : true,\r\n options : optionsObj,\r\n isShowLabel : true,\r\n }\r\n }\r\n\r\n removeSubQuestionValues(question?: any) {\r\n if (!this.checkIfValueIsEmpty(this.questionList)) {\r\n this.questionList.forEach((singleSection: any) => {\r\n if (!this.checkIfValueIsEmpty(singleSection['questions'])) {\r\n singleSection['questions'].forEach((singleQuestion: any) => {\r\n if (!this.showQuestion(singleQuestion)) {\r\n singleQuestion['isShowQuestionInUI'] = false;\r\n // if (singleQuestion['questionType'] === 'CHECKBOX' && !this.checkIfValueIsEmpty(singleQuestion['domainValues'])) {\r\n // singleQuestion['domainValues'].forEach((domainValueObj: any) => {\r\n // if (!this.checkIfValueIsEmpty(this.personUwAnswers[domainValueObj['domainInternalValue']])) {\r\n // delete this.personUwAnswers[domainValueObj['domainInternalValue']];\r\n // }\r\n // });\r\n // }\r\n // if (singleQuestion['questionType'] !== 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']])) {\r\n delete this.personUwAnswers[singleQuestion['questionId']];\r\n }\r\n // }\r\n } else {\r\n singleQuestion['isShowQuestionInUI'] = true;\r\n }\r\n\r\n if (singleQuestion['questionType'] === 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(singleQuestion['domainValues'])) {\r\n let isNoneInDomainValues: any = singleQuestion['domainValues'].filter((singleObj: any) => singleObj['domainUiValue'].toUpperCase() === 'NONE');\r\n singleQuestion['domainValues'].forEach((singleDomainValue: any) => {\r\n if (!this.checkIfValueIsEmpty(isNoneInDomainValues) && !this.checkIfValueIsEmpty(this.personUwAnswers[isNoneInDomainValues[0]['domainInternalValue']]) && this.personUwAnswers[isNoneInDomainValues[0]['domainInternalValue']]) {\r\n // none is selected\r\n singleQuestion['domainValues'].forEach((singleDomainValue: any) => {\r\n // remove all selected checkbox questions\r\n if (singleDomainValue.domainUiValue.toUpperCase() !== 'NONE') {\r\n singleDomainValue.isDisabled = true;\r\n delete this.personUwAnswers[singleDomainValue['domainInternalValue']];\r\n }\r\n });\r\n } else {\r\n singleDomainValue.isDisabled = false;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n // let isSectionExistsInBlockedList: any = this.isBlockedQuestionsList.filter((singleBlockedObj: any) => singleBlockedObj['sectionTitle'].trim() === singleSection['sectionName'].trim());\r\n // singleSection['showSection'] = !this.checkIfValueIsEmpty(singleSection['questions'].filter((singleQuestion: any) => singleQuestion['isShowQuestionInUI']))\r\n // if (!this.checkIfValueIsEmpty(isSectionExistsInBlockedList)) {\r\n // if (isSectionExistsInBlockedList[0].isBlockedForCustomerFlow && !this.loadingAgentportal) {\r\n // singleSection['showSection'] = false;\r\n // let filteredIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePersonObj['role']);\r\n // singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][filteredIndex]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = singleSection['showSection'];\r\n // }\r\n // });\r\n // }\r\n // if ((isSectionExistsInBlockedList[0].isBlockedForAgentFlow || sessionStorage.getItem('agentChannel') === 'D20' || sessionStorage.getItem('agentChannel') === 'D05' || sessionStorage.getItem('agentChannel') === 'D06') && this.loadingAgentportal) {\r\n // singleSection['showSection'] = false;\r\n // let filteredIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePersonObj['role']);\r\n // singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][filteredIndex]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = singleSection['showSection'];\r\n // }\r\n // });\r\n // }\r\n // }\r\n let hiddenQuestions: any = this.questionList.filter((singleSectionObj: any) => !singleSectionObj['showSection']);\r\n if (this.checkIfValueIsEmpty(hiddenQuestions)) {\r\n hiddenQuestions.forEach((singleSection: any) => {\r\n singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n singleQuestionObjInSection['isShowQuestionInUI'] = false;\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][0]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = false;\r\n // }\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n this.questionList.sort((a: any, b: any) => a['step'] - b['step']);\r\n\r\n console.log('questions list', this.questionList);\r\n console.log('questions answers', this.personUwAnswers);\r\n\r\n }\r\n\r\n showQuestion(currentQuestion: any) {\r\n let showQuestion: any = false;\r\n let subQuestions: any = [];\r\n // let currentSectionIndex: any = questionsResponse['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === personRole)\r\n // let role = this.personUwResponseObj['questionsResponse'][currentSectionIndex]['role']\r\n\r\n this.personUwResponseObj[0].questionList.forEach((singleQuestion: any) => {\r\n let isSubQuestionObject: any = [];\r\n if (!this.checkIfValueIsEmpty(singleQuestion['questionRelation'])) {\r\n isSubQuestionObject = singleQuestion['questionRelation'].filter(\r\n (questionRelationObj: any) => questionRelationObj['nextQuestionId'] === currentQuestion['questionId']\r\n );\r\n }\r\n if (isSubQuestionObject.length > 0) {\r\n subQuestions.push(singleQuestion);\r\n isSubQuestionObject.forEach((singleSubQuestion: any) => {\r\n if (\r\n (singleQuestion['questionType'] !== 'CHECKBOX' &&\r\n (singleSubQuestion['parentQuestionValue'].toString()[0] !== '!' &&\r\n this.personUwAnswers[singleQuestion['questionId']] ===\r\n singleSubQuestion['parentQuestionValue'])) ||\r\n (singleSubQuestion['parentQuestionValue'].toString()[0] === '!' &&\r\n !this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']]) &&\r\n this.personUwAnswers[singleQuestion['questionId']] !==\r\n singleSubQuestion['parentQuestionValue'].toString().split('!')[\r\n 1\r\n ]) ||\r\n (singleQuestion['questionType'] === 'CHECKBOX' && !this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']]) &&\r\n this.personUwAnswers[singleQuestion['questionId']].filter((singleObj : any) => singleObj['value'] === singleSubQuestion['parentQuestionValue']).length > 0 )\r\n ) {\r\n showQuestion = true;\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (this.checkIfValueIsEmpty(subQuestions) && this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation'])) {\r\n showQuestion = true;\r\n }\r\n if (!this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation']) && !this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation']['parentQuestionId']) && !this.checkIfValueIsEmpty(this.personUwAnswers[currentQuestion['parentQuestionRelation']['parentQuestionId']]) && this.personUwAnswers[currentQuestion['parentQuestionRelation']['parentQuestionId']] === currentQuestion['parentQuestionRelation']['parentQuestionAnswer']) {\r\n showQuestion = true;\r\n }\r\n if (currentQuestion['questionType'] === 'NODISPLAY') {\r\n showQuestion = false;\r\n }\r\n return showQuestion;\r\n }\r\n}\r\n","\r\n<div *ngFor=\"let section of questionList\">\r\n <div\r\n *ngIf=\"\r\n !checkIfValueIsEmpty(section['questions']) &&\r\n section['showSection']\r\n \"\r\n class=\"card p-3 my-2\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <div *ngFor=\"let questions of section['questions']\">\r\n <!-- <div *ngIf=\"questions['questionType'] === 'IMAGE TEXT'\">\r\n <img [src]=\"questions['sampleS3Link']\" class=\"d-block mx-auto\" [alt]=\"questions['title']\">\r\n <h3 [innerHTML]=\"questions['questionText']\"></h3>\r\n </div> -->\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'FREE TEXT' &&\r\n questions['cammundaQuestionCode'] !== 'QHT' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <label class=\"card-topic d-block\"\r\n >{{ questions[\"questionText\"] }}\r\n <span\r\n *ngIf=\"\r\n questions.optionalQuestion === 'N'\r\n \"\r\n style=\"color: #ee0000\"\r\n >&#42;</span\r\n >\r\n </label>\r\n <div class=\"col-5 px-0\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'HEIGHTINPUT' &&\r\n questions['cammundaQuestionCode'] === 'QHTF' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <label class=\"card-topic d-block\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >&#42;</span\r\n >\r\n </label>\r\n <div\r\n class=\"col-auto px-0 my-0 py-0 heightinput\"\r\n\r\n >\r\n <div\r\n class=\"col-7 py-0 heightInputs\"\r\n style=\"transform: translate(6px, 3px);\"\r\n *ngIf=\"\r\n personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\r\n \"\r\n >\r\n <lib-textbox [field]=\"questions['field']\" />\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" />\r\n </div>\r\n <div\r\n class=\"py-0\"\r\n style=\"display: flex;\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-auto py-0 heightInputs px-1\">\r\n <lib-select [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-auto py-0 heightInputs px-1\">\r\n <lib-select [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-auto py-0 heightInputs px-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"row mt-0 pt-0\"\r\n *ngIf=\"\r\n questions['questionType'] === 'MAP' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n\r\n\r\n <div class=\"map-container\">\r\n <div class=\"address-search-container mb-3\">\r\n\r\n <div class=\"row mb-3\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label\">Longitude</label>\r\n <input \r\n type=\"number\" \r\n class=\"form-control\"\r\n [(ngModel)]=\"longitude\"\r\n placeholder=\"Enter longitude\"\r\n step=\"any\"\r\n readonly\r\n >\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label\">Latitude</label>\r\n <input \r\n type=\"number\" \r\n class=\"form-control\"\r\n [(ngModel)]=\"latitude\"\r\n placeholder=\"Enter latitude\"\r\n step=\"any\"\r\n readonly\r\n >\r\n </div>\r\n </div>\r\n\r\n <input \r\n #addressInput \r\n type=\"text\" \r\n class=\"form-control\"\r\n placeholder=\"Search for address\"\r\n (keyup)=\"onAddressInputKeyup($event)\"\r\n (focus)=\"showDropdown = true\"\r\n (blur)=\"onInputBlur()\"\r\n autocomplete=\"off\"\r\n >\r\n <div \r\n *ngIf=\"showDropdown && addressSuggestions.length > 0\" \r\n class=\"autocomplete-dropdown position-absolute w-100 mt-1\"\r\n style=\"z-index: 1000; max-height: 200px; overflow-y: auto; background: white; border: 1px solid #ccc; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);\"\r\n >\r\n <div \r\n *ngFor=\"let suggestion of addressSuggestions; let i = index\"\r\n class=\"dropdown-item p-2\"\r\n style=\"cursor: pointer; border-bottom: 1px solid #eee;\"\r\n (mousedown)=\"selectAddress(suggestion)\"\r\n (mouseenter)=\"hoveredIndex = i\"\r\n [class.bg-light]=\"hoveredIndex === i\"\r\n >\r\n <div class=\"fw-bold\">{{ suggestion.main_text }}</div>\r\n <small class=\"text-muted\">{{ suggestion.secondary_text }}</small>\r\n </div>\r\n </div>\r\n <small class=\"text-muted\">Start typing to search for addresses</small>\r\n </div>\r\n <google-map [center]=\"center\" [zoom]=\"zoom\">\r\n <map-marker [position]=\"currentCoordinates\"></map-marker>\r\n </google-map>\r\n </div>\r\n </div>\r\n\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n (questions['questionType'] === 'RADIO BUTTON' ||\r\n questions['questionType'] === 'ADDMORE') &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-radio [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'CHECKBOX' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-multiple-select [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DECLARATION' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-checkbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DROPDOWN' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'CALENDAR' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-dob [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <!-- <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'HEIGHTINPUT' &&\r\n questions['cammundaQuestionCode'] === 'QHTF' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n </div> -->\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" />\r\n </div>\r\n\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'PASSPORT_UPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <!-- pending -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-page-nudge',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './page-nudge.component.html',\r\n styleUrl: './page-nudge.component.css'\r\n})\r\nexport class PageNudgeComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div class=\"nudge-container\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n'--page-nudge-width': field()?.controlStyle?.borderColor ,\r\n'--page-nudge-height': field()?.controlStyle?.borderWidth ,\r\n'--page-nudge-bg': field()?.controlStyle?.borderRadius ,\r\n'--page-nudge-border-radius': field()?.controlStyle?.background ,\r\n'--page-nudge-border-width': field()?.controlStyle?.focusBorderColor ,\r\n'--page-nudge-border-color': field()?.controlStyle?.focusBorderWidth ,\r\n'--page-nudge-border-style': field()?.controlStyle?.focusBackground\r\n}\">\r\n {{ field()?.label }}\r\n <div class=\"page-fold\"></div>\r\n <div class=\"page-fold-below\"></div>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\r\n\r\n\r\n@Component({\r\n selector: 'lib-progress-bar',\r\n standalone: true,\r\n imports: [MatProgressBarModule , CommonModule],\r\n templateUrl: './progress-bar.component.html',\r\n styleUrl: './progress-bar.component.css'\r\n})\r\nexport class ProgressBarComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<mat-progress-bar mode=\"determinate\" [value]=\"field()?.value\" [ngStyle]=\"{\r\n'--progress-bar-background-color': field()?.controlStyle?.background ,\r\n'--progress-bar-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--progress-bar-border-color': field()?.controlStyle?.color ,\r\n'--progress-bar-width': field()?.controlStyle?.width ,\r\n'--progress-bar-height': field()?.controlStyle?.height ,\r\n}\"></mat-progress-bar>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\n\r\n@Component({\r\n selector: 'lib-accordian',\r\n standalone: true,\r\n imports: [MatExpansionModule , CommonModule],\r\n templateUrl: './accordian.component.html',\r\n styleUrl: './accordian.component.css'\r\n})\r\nexport class AccordianComponent {\r\n field : any = input.required<any>();\r\nonPanelOpened(): void {\r\n console.log('Panel opened');\r\n}\r\n\r\nonPanelClosed(): void {\r\n console.log('Panel closed');\r\n}\r\n\r\nonExpandedChange(isExpanded: boolean): void {\r\n console.log('Panel expansion changed:', isExpanded);\r\n if (isExpanded) {\r\n // Panel is now expanded\r\n } else {\r\n // Panel is now collapsed\r\n }\r\n}\r\n}\r\n","<mat-accordion \r\n [multi]=\"true\" \r\n [hideToggle]=\"false\"\r\n [displayMode]=\"'default'\"\r\n [togglePosition]=\"'after'\" [ngStyle]=\"{\r\n'--acc-font-color': field()?.controlStyle?.color ,\r\n'--acc-bg-color': field()?.controlStyle?.background ,\r\n'--acc-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--acc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--acc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--acc-border-color': field()?.controlStyle?.borderColor ,\r\n'--acc-font-size': field()?.controlStyle?.fontSize ,\r\n'--acc-font-weight': field()?.controlStyle?.fontWeight \r\n}\">\r\n \r\n <mat-expansion-panel \r\n [expanded]=\"false\"\r\n [disabled]=\"false\"\r\n [hideToggle]=\"false\"\r\n (opened)=\"onPanelOpened()\"\r\n (closed)=\"onPanelClosed()\"\r\n (expandedChange)=\"onExpandedChange($event)\">\r\n \r\n <mat-expansion-panel-header \r\n [collapsedHeight]=\"'48px'\"\r\n [expandedHeight]=\"'64px'\">\r\n \r\n <mat-panel-title>\r\n <span class=\"triangle-icon\" *ngIf=\"field()?.configData?.showLeftArrowIndicator && field()?.configData?.showLeftArrowIndicator === 'true'\"></span>\r\n {{ field()?.label}}\r\n </mat-panel-title>\r\n \r\n <mat-panel-description>\r\n <!-- This is a description of the panel -->\r\n </mat-panel-description>\r\n \r\n </mat-expansion-panel-header>\r\n \r\n <!-- Panel Content -->\r\n <div>\r\n {{ field()?.configData?.accordianContent}}\r\n </div>\r\n \r\n <!-- Action Buttons -->\r\n <!-- <mat-action-row>\r\n <button mat-button color=\"primary\">Save</button>\r\n <button mat-button color=\"warn\">Cancel</button>\r\n </mat-action-row> -->\r\n \r\n </mat-expansion-panel>\r\n</mat-accordion>","import { ButtonComponent } from './button/button.component';\r\nimport { Component, Input, input } from '@angular/core';\r\nimport { TextboxComponent } from './textbox/textbox.component';\r\nimport { SelectComponent } from './select/select.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { RadioComponent } from './radio/radio.component';\r\nimport { ToggleComponent } from './toggle/toggle.component';\r\nimport { UploadComponent } from './upload/upload.component';\r\nimport { DobComponent } from './dob/dob.component';\r\nimport { MobNumberComponent } from './mob-number/mob-number.component';\r\nimport { InfoComponent } from './info/info.component';\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\nimport { TextareaComponent } from './textarea/textarea.component';\r\nimport { TabComponent } from \"./tab/tab.component\";\r\nimport { AutocompleteComponent } from \"./autocomplete/autocomplete.component\";\r\nimport { MultipleSelectComponent } from \"./multiple-select/multiple-select.component\";\r\nimport { SelectTextboxComponent } from './select-textbox/select-textbox.component';\r\nimport { OtpTextboxComponent } from \"./otp-textbox/otp-textbox.component\";\r\nimport { AmountTextboxComponent } from \"./amount-textbox/amount-textbox.component\";\r\nimport { SuffixTextboxComponent } from \"./suffix-textbox/suffix-textbox.component\";\r\nimport { OtpMobNumberComponent } from \"./otp-mob-number/otp-mob-number.component\";\r\nimport { TagMobNumberComponent } from \"./tag-mob-number/tag-mob-number.component\";\r\nimport { AgeDateComponent } from \"./age-date/age-date.component\";\r\nimport { AdditionButtonComponent } from \"./addition-button/addition-button.component\";\r\nimport { InfoTextboxComponent } from \"./info-textbox/info-textbox.component\";\r\nimport { TextboxWithImageComponent } from \"./textbox-with-image/textbox-with-image.component\";\r\nimport { EmailWithDomainComponent } from \"./email-with-domain/email-with-domain.component\";\r\nimport { ImageUploadComponent } from \"./image-upload/image-upload.component\";\r\nimport { DownloadDocumentComponent } from \"./download-document/download-document.component\";\r\nimport { AddDocumentComponent } from \"./add-document/add-document.component\";\r\nimport { HyperlinkComponent } from \"./hyperlink/hyperlink.component\";\r\nimport { TextboxWithUnderscoreComponent } from \"./textbox-with-underscore/textbox-with-underscore.component\";\r\nimport { UnderscoreMobNumberComponent } from \"./underscore-mob-number/underscore-mob-number.component\";\r\nimport { IconButtonComponent } from \"./icon-button/icon-button.component\";\r\nimport { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ImageComponent } from './image/image.component';\r\nimport { StepperComponent } from \"./stepper/stepper.component\";\r\nimport { CardComponent } from \"./card/card.component\";\r\nimport { HrLineComponent } from \"./hr-line/hr-line.component\";\r\nimport { SearchMultiSelectComponent } from \"./search-multi-select/search-multi-select.component\";\r\nimport { SubscriptTextboxComponent } from \"./subscript-textbox/subscript-textbox.component\";\r\nimport { LabelComponent } from \"./label/label.component\";\r\nimport { SubHeaderComponent } from \"./sub-header/sub-header.component\";\r\nimport { HeaderComponent } from \"./header/header.component\";\r\nimport { TableComponent } from './table/table.component';\r\nimport { TextboxWithTextComponent } from \"./textbox-with-text/textbox-with-text.component\";\r\nimport { DiscountComponent } from \"./discount/discount.component\";\r\nimport { BenefitCardComponent } from \"./benefit-card/benefit-card.component\";\r\nimport { LoaderComponent } from './loader/loader.component';\r\nimport { WarningSnackbarComponent } from \"./warning-snackbar/warning-snackbar.component\";\r\nimport { SuccessSnackbarComponent } from \"./success-snackbar/success-snackbar.component\";\r\nimport { NeutralSnackbarComponent } from \"./neutral-snackbar/neutral-snackbar.component\";\r\nimport { ErrorSnackbarComponent } from \"./error-snackbar/error-snackbar.component\";\r\nimport { GreyLabelComponent } from \"./grey-label/grey-label.component\";\r\nimport { IframeComponent } from \"./iframe/iframe.component\";\r\nimport { ToggleButtonComponent } from \"./toggle-button/toggle-button.component\";\r\nimport { PayGetCardComponent } from \"./pay-get-card/pay-get-card.component\";\r\nimport { InBuiltBenefitComponent } from \"./in-built-benefit/in-built-benefit.component\";\r\nimport { OtherBenefitsComponent } from \"./other-benefits/other-benefits.component\";\r\nimport { AnnuityRateLogoComponent } from \"./annuity-rate-logo/annuity-rate-logo.component\";\r\nimport { DiscountV2Component } from './discount-v2/discount-v2.component';\r\nimport { LabelValueCardComponent } from './label-value-card/label-value-card.component';\r\nimport { MedialQuestionsComponent } from \"./medial-questions/medial-questions.component\";\r\nimport { PageNudgeComponent } from './page-nudge/page-nudge.component';\r\nimport { ProgressBarComponent } from \"./progress-bar/progress-bar.component\";\r\nimport { AccordianComponent } from \"./accordian/accordian.component\";\r\n\r\n@Component({\r\n selector: 'lib-master-control',\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n TextboxComponent,\r\n SelectComponent,\r\n RadioComponent,\r\n ToggleComponent,\r\n UploadComponent,\r\n DobComponent,\r\n MobNumberComponent,\r\n InfoComponent,\r\n CheckboxComponent,\r\n TextareaComponent,\r\n ButtonComponent,\r\n TabComponent,\r\n AutocompleteComponent,\r\n MultipleSelectComponent,\r\n SelectTextboxComponent,\r\n OtpTextboxComponent,\r\n AmountTextboxComponent,\r\n SuffixTextboxComponent,\r\n OtpMobNumberComponent,\r\n TagMobNumberComponent,\r\n AgeDateComponent,\r\n AdditionButtonComponent,\r\n InfoTextboxComponent,\r\n TextboxWithImageComponent,\r\n EmailWithDomainComponent,\r\n ImageUploadComponent,\r\n DownloadDocumentComponent,\r\n AddDocumentComponent,\r\n HyperlinkComponent,\r\n TextboxWithUnderscoreComponent,\r\n UnderscoreMobNumberComponent,\r\n IconButtonComponent,\r\n ReactiveFormsModule,\r\n ImageComponent,\r\n StepperComponent,\r\n CardComponent,\r\n HrLineComponent,\r\n SearchMultiSelectComponent,\r\n SubscriptTextboxComponent,\r\n LabelComponent,\r\n SubHeaderComponent,\r\n HeaderComponent,\r\n TextboxWithTextComponent,\r\n DiscountComponent,\r\n BenefitCardComponent,\r\n TableComponent,\r\n LoaderComponent,\r\n WarningSnackbarComponent,\r\n SuccessSnackbarComponent,\r\n NeutralSnackbarComponent,\r\n ErrorSnackbarComponent,\r\n GreyLabelComponent,\r\n IframeComponent,\r\n ToggleButtonComponent,\r\n PayGetCardComponent,\r\n InBuiltBenefitComponent,\r\n OtherBenefitsComponent,\r\n AnnuityRateLogoComponent,\r\n DiscountV2Component,\r\n LabelValueCardComponent,\r\n MedialQuestionsComponent,\r\n PageNudgeComponent,\r\n ProgressBarComponent,\r\n AccordianComponent\r\n],\r\n templateUrl: './master-control.component.html',\r\n styleUrls: ['./master-control.component.css']\r\n})\r\nexport class MasterControlComponent {\r\n field: any = input.required<any>();\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n constructor() {}\r\n}\r\n","@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n}\r\n","/*\r\n * Public API Surface of master-control\r\n */\r\n\r\nexport * from './lib/master-control.service';\r\nexport * from './lib/textbox/textbox.component';\r\nexport * from './lib/master-control.component';\r\nexport * from './lib/checkbox/checkbox.component';\r\nexport * from './lib/dob/dob.component';\r\nexport * from './lib/info/info.component';\r\nexport * from './lib/mob-number/mob-number.component';\r\nexport * from './lib/radio/radio.component';\r\nexport * from './lib/select/select.component';\r\nexport * from './lib/textarea/textarea.component';\r\nexport * from './lib/upload/upload.component';\r\nexport * from './lib/toggle/toggle.component';\r\nexport * from './lib/button/button.component';\r\nexport * from './lib/tab/tab.component';\r\nexport * from './lib/autocomplete/autocomplete.component';\r\nexport * from './lib/multiple-select/multiple-select.component';\r\nexport * from './lib/select-textbox/select-textbox.component';\r\nexport * from './lib/otp-textbox/otp-textbox.component';\r\nexport * from './lib/amount-textbox/amount-textbox.component';\r\nexport * from './lib/suffix-textbox/suffix-textbox.component';\r\nexport * from './lib/otp-mob-number/otp-mob-number.component';\r\nexport * from './lib/age-date/age-date.component';\r\nexport * from './lib/addition-button/addition-button.component';\r\nexport * from './lib/textbox-with-image/textbox-with-image.component';\r\nexport * from './lib/email-with-domain/email-with-domain.component';\r\nexport * from './lib/image-upload/image-upload.component';\r\nexport * from './lib/download-document/download-document.component';\r\nexport * from './lib/add-document/add-document.component';\r\nexport * from './lib/hyperlink/hyperlink.component';\r\nexport * from './lib/textbox-with-underscore/textbox-with-underscore.component';\r\nexport * from './lib/icon-button/icon-button.component';\r\nexport * from './lib/image/image.component';\r\nexport * from './lib/stepper/stepper.component';\r\nexport * from './lib/card/card.component';\r\nexport * from './lib/hr-line/hr-line.component';\r\nexport * from './lib/search-multi-select/search-multi-select.component';\r\nexport * from './lib/subscript-textbox/subscript-textbox.component';\r\nexport * from './lib/label/label.component';\r\nexport * from './lib/table/table.component';\r\nexport * from './lib/textbox-with-text/textbox-with-text.component';\r\nexport * from './lib/loader/loader.component';\r\nexport * from './lib/discount/discount.component';\r\nexport * from './lib/benefit-card/benefit-card.component';\r\nexport * from './lib/error-snackbar/error-snackbar.component';\r\nexport * from './lib/warning-snackbar/warning-snackbar.component';\r\nexport * from './lib/success-snackbar/success-snackbar.component';\r\nexport * from './lib/neutral-snackbar/neutral-snackbar.component';\r\nexport * from './lib/grey-label/grey-label.component';\r\nexport * from './lib/iframe/iframe.component';\r\nexport * from './lib/toggle-button/toggle-button.component';\r\nexport * from './lib/pay-get-card/pay-get-card.component';\r\nexport * from './lib/in-built-benefit/in-built-benefit.component';\r\nexport * from './lib/other-benefits/other-benefits.component';\r\nexport * from './lib/annuity-rate-logo/annuity-rate-logo.component';\r\nexport * from './lib/label-value-card/label-value-card.component';\r\nexport * from './lib/medial-questions/medial-questions.component';\r\nexport * from './lib/discount-v2/discount-v2.component';\r\nexport * from './lib/page-nudge/page-nudge.component';\r\nexport * from './lib/header/header.component';\r\nexport * from './lib/sub-header/sub-header.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.MasterControlService","i2","i3","i5","i4","i6","i7","i8","i1","questionsResponse"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}
1
+ {"version":3,"file":"master-control.mjs","sources":["../../../projects/master-control/src/lib/master-control.service.ts","../../../projects/master-control/src/lib/textbox/textbox.component.ts","../../../projects/master-control/src/lib/textbox/textbox.component.html","../../../projects/master-control/src/lib/button/button.component.ts","../../../projects/master-control/src/lib/button/button.component.html","../../../projects/master-control/src/lib/select/select.component.ts","../../../projects/master-control/src/lib/select/select.component.html","../../../projects/master-control/src/lib/radio/radio.component.ts","../../../projects/master-control/src/lib/radio/radio.component.html","../../../projects/master-control/src/lib/toggle/toggle.component.ts","../../../projects/master-control/src/lib/toggle/toggle.component.html","../../../projects/master-control/src/lib/upload/upload.component.ts","../../../projects/master-control/src/lib/upload/upload.component.html","../../../projects/master-control/src/lib/dob/dob.component.ts","../../../projects/master-control/src/lib/dob/dob.component.html","../../../projects/master-control/src/lib/mob-number/mob-number.component.ts","../../../projects/master-control/src/lib/mob-number/mob-number.component.html","../../../projects/master-control/src/lib/info/info.component.ts","../../../projects/master-control/src/lib/info/info.component.html","../../../projects/master-control/src/lib/checkbox/checkbox.component.ts","../../../projects/master-control/src/lib/checkbox/checkbox.component.html","../../../projects/master-control/src/lib/textarea/textarea.component.ts","../../../projects/master-control/src/lib/textarea/textarea.component.html","../../../projects/master-control/src/lib/tab/tab.component.ts","../../../projects/master-control/src/lib/tab/tab.component.html","../../../projects/master-control/src/lib/autocomplete/autocomplete.component.ts","../../../projects/master-control/src/lib/autocomplete/autocomplete.component.html","../../../projects/master-control/src/lib/multiple-select/multiple-select.component.ts","../../../projects/master-control/src/lib/multiple-select/multiple-select.component.html","../../../projects/master-control/src/lib/select-textbox/select-textbox.component.ts","../../../projects/master-control/src/lib/select-textbox/select-textbox.component.html","../../../projects/master-control/src/lib/otp-textbox/otp-textbox.component.ts","../../../projects/master-control/src/lib/otp-textbox/otp-textbox.component.html","../../../projects/master-control/src/lib/amount-textbox/amount-textbox.component.ts","../../../projects/master-control/src/lib/amount-textbox/amount-textbox.component.html","../../../projects/master-control/src/lib/suffix-textbox/suffix-textbox.component.ts","../../../projects/master-control/src/lib/suffix-textbox/suffix-textbox.component.html","../../../projects/master-control/src/lib/otp-mob-number/otp-mob-number.component.ts","../../../projects/master-control/src/lib/otp-mob-number/otp-mob-number.component.html","../../../projects/master-control/src/lib/tag-mob-number/tag-mob-number.component.ts","../../../projects/master-control/src/lib/tag-mob-number/tag-mob-number.component.html","../../../projects/master-control/src/lib/age-date/age-date.component.ts","../../../projects/master-control/src/lib/age-date/age-date.component.html","../../../projects/master-control/src/lib/addition-button/addition-button.component.ts","../../../projects/master-control/src/lib/addition-button/addition-button.component.html","../../../projects/master-control/src/lib/info-textbox/info-textbox.component.ts","../../../projects/master-control/src/lib/info-textbox/info-textbox.component.html","../../../projects/master-control/src/lib/textbox-with-image/textbox-with-image.component.ts","../../../projects/master-control/src/lib/textbox-with-image/textbox-with-image.component.html","../../../projects/master-control/src/lib/email-with-domain/email-with-domain.component.ts","../../../projects/master-control/src/lib/email-with-domain/email-with-domain.component.html","../../../projects/master-control/src/lib/image-upload/image-upload.component.ts","../../../projects/master-control/src/lib/image-upload/image-upload.component.html","../../../projects/master-control/src/lib/download-document/download-document.component.ts","../../../projects/master-control/src/lib/download-document/download-document.component.html","../../../projects/master-control/src/lib/add-document/add-document.component.ts","../../../projects/master-control/src/lib/add-document/add-document.component.html","../../../projects/master-control/src/lib/hyperlink/hyperlink.component.ts","../../../projects/master-control/src/lib/hyperlink/hyperlink.component.html","../../../projects/master-control/src/lib/textbox-with-underscore/textbox-with-underscore.component.ts","../../../projects/master-control/src/lib/textbox-with-underscore/textbox-with-underscore.component.html","../../../projects/master-control/src/lib/underscore-mob-number/underscore-mob-number.component.ts","../../../projects/master-control/src/lib/underscore-mob-number/underscore-mob-number.component.html","../../../projects/master-control/src/lib/icon-button/icon-button.component.ts","../../../projects/master-control/src/lib/icon-button/icon-button.component.html","../../../projects/master-control/src/lib/image/image.component.ts","../../../projects/master-control/src/lib/image/image.component.html","../../../projects/master-control/src/lib/stepper/stepper.component.ts","../../../projects/master-control/src/lib/stepper/stepper.component.html","../../../projects/master-control/src/lib/card/card.component.ts","../../../projects/master-control/src/lib/card/card.component.html","../../../projects/master-control/src/lib/hr-line/hr-line.component.ts","../../../projects/master-control/src/lib/hr-line/hr-line.component.html","../../../projects/master-control/src/lib/search-multi-select/search-multi-select.component.ts","../../../projects/master-control/src/lib/search-multi-select/search-multi-select.component.html","../../../projects/master-control/src/lib/subscript-textbox/subscript-textbox.component.ts","../../../projects/master-control/src/lib/subscript-textbox/subscript-textbox.component.html","../../../projects/master-control/src/lib/label/label.component.ts","../../../projects/master-control/src/lib/label/label.component.html","../../../projects/master-control/src/lib/sub-header/sub-header.component.ts","../../../projects/master-control/src/lib/sub-header/sub-header.component.html","../../../projects/master-control/src/lib/header/header.component.ts","../../../projects/master-control/src/lib/header/header.component.html","../../../projects/master-control/src/lib/table/table.component.ts","../../../projects/master-control/src/lib/table/table.component.html","../../../projects/master-control/src/lib/textbox-with-text/textbox-with-text.component.ts","../../../projects/master-control/src/lib/textbox-with-text/textbox-with-text.component.html","../../../projects/master-control/src/lib/discount/discount.component.ts","../../../projects/master-control/src/lib/discount/discount.component.html","../../../projects/master-control/src/lib/benefit-card/benefit-card.component.ts","../../../projects/master-control/src/lib/benefit-card/benefit-card.component.html","../../../projects/master-control/src/lib/loader/loader.component.ts","../../../projects/master-control/src/lib/loader/loader.component.html","../../../projects/master-control/src/lib/warning-snackbar/warning-snackbar.component.ts","../../../projects/master-control/src/lib/warning-snackbar/warning-snackbar.component.html","../../../projects/master-control/src/lib/success-snackbar/success-snackbar.component.ts","../../../projects/master-control/src/lib/success-snackbar/success-snackbar.component.html","../../../projects/master-control/src/lib/neutral-snackbar/neutral-snackbar.component.ts","../../../projects/master-control/src/lib/neutral-snackbar/neutral-snackbar.component.html","../../../projects/master-control/src/lib/error-snackbar/error-snackbar.component.ts","../../../projects/master-control/src/lib/error-snackbar/error-snackbar.component.html","../../../projects/master-control/src/lib/grey-label/grey-label.component.ts","../../../projects/master-control/src/lib/grey-label/grey-label.component.html","../../../projects/master-control/src/lib/iframe/iframe.component.ts","../../../projects/master-control/src/lib/iframe/iframe.component.html","../../../projects/master-control/src/lib/toggle-button/toggle-button.component.ts","../../../projects/master-control/src/lib/toggle-button/toggle-button.component.html","../../../projects/master-control/src/lib/pay-get-card/pay-get-card.component.ts","../../../projects/master-control/src/lib/pay-get-card/pay-get-card.component.html","../../../projects/master-control/src/lib/in-built-benefit/in-built-benefit.component.ts","../../../projects/master-control/src/lib/in-built-benefit/in-built-benefit.component.html","../../../projects/master-control/src/lib/other-benefits/other-benefits.component.ts","../../../projects/master-control/src/lib/other-benefits/other-benefits.component.html","../../../projects/master-control/src/lib/annuity-rate-logo/annuity-rate-logo.component.ts","../../../projects/master-control/src/lib/annuity-rate-logo/annuity-rate-logo.component.html","../../../projects/master-control/src/lib/discount-v2/discount-v2.component.ts","../../../projects/master-control/src/lib/discount-v2/discount-v2.component.html","../../../projects/master-control/src/lib/label-value-card/label-value-card.component.ts","../../../projects/master-control/src/lib/label-value-card/label-value-card.component.html","../../../projects/master-control/src/lib/medial-questions/medial-questions.component.ts","../../../projects/master-control/src/lib/medial-questions/medial-questions.component.html","../../../projects/master-control/src/lib/page-nudge/page-nudge.component.ts","../../../projects/master-control/src/lib/page-nudge/page-nudge.component.html","../../../projects/master-control/src/lib/progress-bar/progress-bar.component.ts","../../../projects/master-control/src/lib/progress-bar/progress-bar.component.html","../../../projects/master-control/src/lib/accordian/accordian.component.ts","../../../projects/master-control/src/lib/accordian/accordian.component.html","../../../projects/master-control/src/lib/master-control.component.ts","../../../projects/master-control/src/lib/master-control.component.html","../../../projects/master-control/src/public-api.ts","../../../projects/master-control/src/master-control.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class MasterControlService {\r\n\r\n configData: any = {\r\n \"iframe\": {\r\n \"URLForIframe\": \"N\"\r\n },\r\n \"loader\": {\r\n \"imageURL\": \"\",\r\n \"imageAltText\": \"\",\r\n \"text\": \"\",\r\n \"imageCSS\": {\r\n \"width\": \"\",\r\n \"height\": \"\",\r\n \"borderRadius\": \"\",\r\n \"boxShadow\": \"\"\r\n },\r\n \"cardCSS\": {\r\n \"width\": \"100%\",\r\n \"height\": \"100%\",\r\n \"backgroundColor\": \"#ffffff\",\r\n \"borderRadius\": \"0px\",\r\n \"boxShadow\": \"0px 0px 0px 0px rgba(0, 0, 0, 0)\",\r\n \"alignItems\": \"center\"\r\n },\r\n \"textCSS\": {\r\n \"fontSize\": \"\",\r\n \"color\": \"\",\r\n \"textAlign\": \"\",\r\n \"fontWeight\": \"\"\r\n },\r\n \"loaderCSS\": {\r\n \"display\": \"flex\",\r\n \"justifyContent\": \"center\",\r\n \"alignItems\": \"center\",\r\n \"height\": \"60px\",\r\n \"gap\": \"8px\",\r\n \"dot\": {\r\n \"width\": \"16px\",\r\n \"height\": \"16px\",\r\n \"background\": \"#1976d2\",\r\n \"borderRadius\": \"50%\",\r\n \"display\": \"inline-block\",\r\n \"animation\": \"bounce 0.6s infinite alternate\"\r\n },\r\n \"dot2\": {\r\n \"animationDelay\": \"0.2s\"\r\n },\r\n \"dot3\": {\r\n \"animationDelay\": \"0.4s\"\r\n },\r\n \"@keyframes bounce\": {\r\n \"to\": {\r\n \"opacity\": 0.3,\r\n \"transform\": \"translateY(-16px)\"\r\n }\r\n }\r\n }\r\n },\r\n \"table\": {\r\n \"showCheckBox\": true,\r\n \"tableHeaders\": [],\r\n \"tdData\": [],\r\n \"showActions\": true,\r\n \"actionOptions\": [\r\n {\r\n \"matIconName\": \"edit\",\r\n \"displayTitle\": \"Edit\",\r\n \"toolTip\": \"Edit\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"info\",\r\n \"displayTitle\": \"Info\",\r\n \"toolTip\": \"Information\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"download\",\r\n \"displayTitle\": \"Download Documents\",\r\n \"toolTip\": \"Download Document\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"notifications_active\",\r\n \"displayTitle\": \"Send Reminder\",\r\n \"toolTip\": \"Send Reminder\",\r\n \"isSelected\":true\r\n },\r\n {\r\n \"matIconName\": \"link\",\r\n \"displayTitle\": \"Send Payment Link\",\r\n \"toolTip\": \"Payment Link\",\r\n \"isSelected\":true\r\n },\r\n\r\n ],\r\n \"userSelectedOptions\": {},\r\n \"showPagination\": \"Y\",\r\n \"rowlength\": 3,\r\n \"columnlength\": 4,\r\n },\r\n \"stepper\":{\r\n \"stepperData\":[\r\n {\r\n \"defaultId\":1,\r\n \"displayLabel\":\"stepper-1\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/check_circle.svg'\r\n },\r\n {\r\n \"defaultId\":2,\r\n \"displayLabel\":\"stepper-2\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/retail-life/check_circle_Endorsment.svg'\r\n },\r\n {\r\n \"defaultId\":3,\r\n \"displayLabel\":\"stepper-3\",\r\n \"imgIconUrl\":'https://cdn.godigit.com/retail-life/Endorsement_pending.svg'\r\n }\r\n ]\r\n }\r\n }\r\n\r\n snackbars: any = [\r\n {\r\n \"type\": \"Error\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/alert-icon-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A error toast\",\r\n \"messageText\":\"Error message here\",\r\n 'toasterCSS':\"error-snackbar-card\"\r\n },{\r\n \"type\": \"Warning\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/nudge-icon-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A warning toast\",\r\n \"messageText\":\"Warning message here\",\r\n \"toasterCSS\":\"warning-snackbar-card\"\r\n },{\r\n \"type\": \"Success\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/success-info-lib.svg\",\r\n \"imageCSS\": \"toaster-img\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"toaster-label\",\r\n \"messageCSS\": \"toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/cross.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A success toast\",\r\n \"messageText\":\"Success message here\",\r\n \"toasterCSS\":\"success-snackbar-card\"\r\n },{\r\n \"type\": \"Neutral\",\r\n \"imageURL\": \"https://cdn.godigit.com/retail-life/neutral-star-lib-icon.svg\",\r\n \"imageCSS\": \"neutral-image\",\r\n \"isShowLabel\": true,\r\n \"labelCSS\": \"neutral-toaster-label\",\r\n \"messageCSS\": \"neutral-toaster-msg\",\r\n \"horizontalPosition\": \"\",\r\n \"verticalPosition\": \"\",\r\n \"duration\": 3000,\r\n \"closeIconImageURL\": \"https://cdn.godigit.com/retail-life/neutral-cross-lib-icon.svg\",\r\n \"closeIconCSS\": \"cross\",\r\n \"labelText\":\"A neutral toast\",\r\n \"messageText\":\"Neutral message here\",\r\n \"toasterCSS\":\"neutral-snackbar-card\"\r\n }\r\n ];\r\n constructor() { }\r\n\r\n checkIfValueIsEmpty(value: any) {\r\n if (typeof value === 'string') {\r\n value = value.trim();\r\n }\r\n return (\r\n value === undefined ||\r\n value === null ||\r\n value === '' ||\r\n (value instanceof Array && value.length === 0) ||\r\n JSON.stringify(value) === '{}'\r\n );\r\n }\r\n\r\n saveTableFieldState(tableField: any, key: any = 'tableField') {\r\n localStorage.setItem(key, JSON.stringify(tableField));\r\n }\r\n\r\n restoreTableFieldState(key: any = 'tableField'): any | null {\r\n const data = localStorage.getItem(key);\r\n return data ? JSON.parse(data) : null;\r\n }\r\n}\r\n","import { Component, forwardRef, input } from '@angular/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule ,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './textbox.component.html',\r\n styleUrl: './textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\n@Component({\r\n selector: 'lib-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './button.component.html',\r\n styleUrl: './button.component.css'\r\n})\r\nexport class ButtonComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n}\r\n","<Button \r\nclass=\"button\"\r\n*ngIf=\"field() && field()?.isVisible\" \r\n[ngStyle]=\"\r\n{\r\n '--button-border-width': field()?.controlStyle?.borderWidth ,\r\n '--button-border-color': field()?.controlStyle?.borderColor ,\r\n '--button-border-style': field()?.controlStyle?.borderStyle ,\r\n '--button-width': field()?.controlStyle?.width ,\r\n '--button-font-size': field()?.controlStyle?.fontSize ,\r\n '--button-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--button-background': field()?.controlStyle?.background ,\r\n '--button-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--button-text-color': field()?.controlStyle?.color ,\r\n '--button-margin': field()?.controlStyle?.margin ,\r\n}\"\r\n>\r\n<span class=\"button-text\">\r\n<img *ngIf=\"field()?.imageUrl\" [src]='field().imageUrl'>\r\n<span>{{field()?.label}}</span>\r\n</span>\r\n</Button>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n MatAutocompleteModule,\r\n MatInputModule,\r\n FormsModule,\r\n MatOptionModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './select.component.html',\r\n styleUrl: './select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SelectComponent implements ControlValueAccessor {\r\n\r\nconstructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n}\r\n","<label\r\n class=\"field-lable info-label\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >\r\n <span>{{ field()?.label}}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></span>\r\n <span style=\"justify-content: end;\" *ngIf=\"field() && field()?.configData?.infoMessage\">\r\n <img class=\"mx-1\" src=\"https://cdn.godigit.com/retail-life/question-mark.svg\" alt=\"\">\r\n <u>{{field()?.configData?.infoMessage}} ></u>\r\n </span>\r\n </label>\r\n \r\n<mat-form-field\r\n appearance=\"outline\" \r\n class=\"input-full-width full-width w-100\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <mat-select\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-option *ngFor=\"let data of field()?.options\" [value]=\"data.value\">{{\r\n data.label\r\n }}</mat-option>\r\n </mat-select>\r\n }@else {\r\n <mat-select\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n >\r\n <mat-option *ngFor=\"let data of field()?.options\" [value]=\"data.value\">{{\r\n data.label\r\n }}</mat-option>\r\n </mat-select>\r\n }\r\n\r\n <!-- selectField.invalid && (selectField.dirty || selectField.touched) -->\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message mt-2\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, forwardRef, Input, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatRadioModule } from '@angular/material/radio';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-radio',\r\n standalone: true,\r\n imports: [\r\n MatRadioModule,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './radio.component.html',\r\n styleUrl: './radio.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: RadioComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class RadioComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\r\n }\"> {{field()?.label}} <span class=\"error-message\" *ngIf=\"field()?.validators?.isRequired\">*</span> </label>\r\n <mat-radio-group class=\"w-100\" *ngIf=\"field() && field()?.isVisible\"\r\n class=\"radio-btn-group radio-btn-gender\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [value]=\"inputValue\"\r\n >\r\n <div\r\n class=\"card radio-card-gender py-auto px-1\"\r\n *ngFor=\"let data of field()?.options\"\r\n [ngClass]=\"{'disable-radio-btn': field()?.isDisable}\"\r\n [ngStyle]=\"{\r\n '--radio-button-border-color': inputValue === data.value ? field()?.controlStyle?.focusBorderColor : field()?.controlStyle?.borderColor,\r\n '--radio-button-background-color': inputValue === data.value ? field()?.controlStyle?.focusBackground : field()?.controlStyle?.background,\r\n '--radio-button-border-width': inputValue === data.value ? field()?.controlStyle?.focusBorderWidth : field()?.controlStyle?.borderWidth,\r\n '--radio-button-border-radius': inputValue === data.value ? field()?.controlStyle?.borderRadius : field()?.controlStyle?.borderRadius,\r\n }\"\r\n >\r\n <mat-radio-button\r\n style=\"min-width: 72px; text-align: center;\"\r\n class=\"radioButtonGender\"\r\n (click)=\"onValueChange(data.value)\"\r\n [value]=\"data.value\"\r\n >\r\n <span style=\"white-space: pre-line;\" class=\"forRadioLabel\" [ngStyle]=\"{\r\n '--radio-button-font-weight': field()?.controlStyle?.fontWeight,\r\n '--radio-button-font-size': field()?.controlStyle?.fontSize,\r\n '--radio-button-font-color': field()?.controlStyle?.color,\r\n }\">{{ data.label }}\r\n <img class=\"radio-btn-icon\" *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\r\n </span>\r\n </mat-radio-button>\r\n </div>\r\n </mat-radio-group>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.patternMessage}}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-toggle',\r\n standalone: true,\r\n imports: [CommonModule, ReactiveFormsModule],\r\n templateUrl: './toggle.component.html',\r\n styleUrl: './toggle.component.css'\r\n})\r\nexport class ToggleComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<div class=\"\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" [ngStyle]=\"{\r\n '--custom-toggle-bg-color': field()?.controlStyle?.background,\r\n '--custom-toggle-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-toggle-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-toggle-border-radius': field()?.controlStyle?.borderRadius,\r\n '--custom-toggle-width': field()?.controlStyle?.width,\r\n }\"\r\n [ngClass]=\"field()?.cssClass ? 'card toggle-background mt-2' + field()?.cssClass : 'card toggle-background mt-2'\"\r\n >\r\n <div class=\"toggle_switch mt-2\">\r\n <div *ngIf=\"field().configData?.leftLabel\" [ngStyle]=\"{\r\n '--custom-toggle-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-toggle-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-toggle-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-toggle-font-color': field()?.controlStyle?.color ,\r\n }\" class=\"toggle-text mb-2\">\r\n <div>{{field().configData?.leftLabel}}</div>\r\n </div>\r\n <div class=\"mt-1\">\r\n <label class=\"switch\">\r\n <input\r\n type=\"checkbox\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [disabled]=\"field()?.isDisable\"\r\n />\r\n <span class=\"slider round\"></span>\r\n </label>\r\n </div>\r\n <div [ngStyle]=\"{\r\n '--custom-toggle-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-toggle-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-toggle-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-toggle-font-color': field()?.controlStyle?.color ,\r\n }\" class=\"toggle-text mb-2\">\r\n <div>{{field()?.label}}</div>\r\n <div style=\"font-size: 10px; font-weight: 400;\" *ngIf=\"field().configData?.subLabel\">{{field()?.configData?.subLabel}} <img alt=\"\" [src]=\"field()?.imageUrl\" *ngIf=\"field()?.imageUrl\" /> </div>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-upload',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './upload.component.html',\r\n styleUrl: './upload.component.css'\r\n})\r\nexport class UploadComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn\"\r\n (click)=\"fileInput.click()\"\r\n [ngClass]=\"field()?.label ? 'lightbackground' : 'successBackground'\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <ng-container *ngIf=\"field()?.label; else policyHolderPanFileNotEmpty\">\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Upload_documents.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.placeHolder }}</span>\r\n </span>\r\n </ng-container>\r\n <ng-template #policyHolderPanFileNotEmpty>\r\n <span class=\"mt-2 right-icon\">\r\n <span\r\n ><img [src]=\"field()?.imageUrl\" alt=\"\"\r\n /></span>\r\n <span title=\"uploaded file\">uploaded file</span>\r\n </span>\r\n <div class=\"mt-2 left-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/visibility-oui.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/delete-oui.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </ng-template>\r\n </button>\r\n <div class=\"upload-info\" *ngIf=\"field() && field()?.isVisible && field()?.configData?.subText\">{{field()?.configData?.subText}}</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MomentDateAdapter, MomentDateModule } from '@angular/material-moment-adapter';\r\nimport { DateAdapter, MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\nexport const MY_DATE_FORMAT = {\r\n parse: {\r\n dateInput: [\r\n 'DD-MM-YYYY',\r\n 'MM/DD/YYYY',\r\n 'YYYY/MM/DD',\r\n 'DD/MM/YYYY',\r\n 'DD MMM YYYY',\r\n 'DD MMMM YYYY',\r\n 'DD-MMM-YYYY'\r\n ]\r\n },\r\n display: {\r\n dateInput: 'DD-MMM-YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'DD-MMM-YYYY',\r\n monthYearA11yLabel: 'MMMM YYYY'\r\n }\r\n};\r\n\r\n@Component({\r\n selector: 'lib-dob',\r\n standalone: true,\r\n imports: [MatInputModule, MatFormFieldModule, CommonModule, MatDatepickerModule, MomentDateModule, ReactiveFormsModule],\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: DobComponent,\r\n multi: true\r\n },\r\n {\r\n provide: DateAdapter,\r\n useClass: MomentDateAdapter,\r\n deps: []\r\n },\r\n { provide: MAT_DATE_FORMATS, useValue: MY_DATE_FORMAT }\r\n ],\r\n templateUrl: './dob.component.html',\r\n styleUrl: './dob.component.css',\r\n})\r\nexport class DobComponent implements ControlValueAccessor {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n constructor(public service : MasterControlService) {}\r\n\r\n dateDivisionFormat(event: any) {\r\n let evt = event.target;\r\n if (evt.value.length > 2 && !evt.value.substr(2, 1).includes('-')) {\r\n evt.value = [evt.value.slice(0, 2), '-', evt.value.slice(2)].join('');\r\n } else if (\r\n evt.value.length > 5 &&\r\n Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(5, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 5), '-', evt.value.slice(5)].join('');\r\n } else if (\r\n evt.value.length > 6 &&\r\n !Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(6, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 6), '-', evt.value.slice(6)].join('');\r\n }\r\n }\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(event : any): void {\r\n if (!this.service.checkIfValueIsEmpty(event.target.value)) {\r\n if (isNaN(Date.parse(event.target.value))) {\r\n event.target.value = '';\r\n }\r\n\r\n }\r\n this._unTouched();\r\n }\r\n\r\n}\r\n","<label\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n class=\"field-lable\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n '--custom-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-font-color': field()?.controlStyle?.color ,\r\n '--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n '--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n '--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n }\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"false\">\r\n <img\r\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\r\n style=\"width: 16px\"\r\n matDatepickerToggleIcon\r\n />\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-mob-number',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, MatSelectModule, MatOptionModule, ReactiveFormsModule],\r\n templateUrl: './mob-number.component.html',\r\n styleUrl: './mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: MobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MobNumberComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n CountryCode: any = '+91';\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n '--custom-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-font-color': field()?.controlStyle?.color ,\r\n '--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span *ngIf=\"false\"\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n \r\n <span matSuffix class=\"p-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/edit-icon.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-info',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './info.component.html',\r\n styleUrl: './info.component.css'\r\n})\r\nexport class InfoComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n}\r\n","<div class=\"info-background\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n '--custom-info-bg-color': field()?.controlStyle?.background ,\r\n '--custom-info-border-radius': field()?.controlStyle?.borderRadius,\r\n '--custom-info-border-width': field()?.controlStyle?.borderWidth,\r\n '--custom-info-border-color': field()?.controlStyle?.borderColor,\r\n '--custom-info-border-style': field()?.controlStyle?.borderStyle,\r\n }\">\r\n <span>\r\n <img\r\n class=\"info-nudge-image mb-1\"\r\n [src]=\"field()?.controlStyle?.nudgeDisplayImage\"\r\n alt=\"\"\r\n />\r\n <span class=\"info-nudge-text\" [ngStyle]=\"{\r\n '--custom-info-font-size': field()?.controlStyle?.fontSize ,\r\n '--custom-info-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--custom-info-font-family': field()?.controlStyle?.fontFamily ,\r\n '--custom-info-font-color': field()?.controlStyle?.color ,\r\n }\">{{ field()?.label }}</span>\r\n </span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n\r\n@Component({\r\n selector: 'lib-checkbox',\r\n standalone: true,\r\n imports: [CommonModule , MatCheckboxModule, ReactiveFormsModule],\r\n templateUrl: './checkbox.component.html',\r\n styleUrl: './checkbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: CheckboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService){}\r\n field: any = input.required<any>();\r\n\r\n inputValue: any = null;\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onCheckboxChange(event: any): void {\r\n // const target = event.target as HTMLInputElement;\r\n this.inputValue = event.checked;\r\n this._onChange(this.inputValue);\r\n this._unTouched();\r\n const css = this.field()?.controlStyle;\r\n if (event.checked) {\r\n document.body.style.setProperty('--custom-checkbox-border-focus', css?.focusBorderColor || '#ffbb00');\r\n document.body.style.setProperty('--custom-checkbox-bg-color-focus', css?.focusBackground || '#ffbb00');\r\n document.body.style.setProperty('--custom-checkbox-border-radius-checkbox', css?.borderRadius || '4px');\r\n document.body.style.setProperty('--custom-font-size', css?.fontSize || '16px');\r\n document.body.style.setProperty('--custom-font-weight', css?.fontWeight || '400');\r\n document.body.style.setProperty('--custom-font-family', css?.fontFamily || 'Mulish');\r\n document.body.style.setProperty('--custom-font-color', css?.color || '#444');\r\n } else {\r\n document.body.style.setProperty('--custom-border-color-focus', css?.focusBorderColor || '#ddd');\r\n document.body.style.setProperty('--custom-bg-color-focus', css?.focusBackground || '#999');\r\n document.body.style.setProperty('--custom-border-radius-checkbox', css?.borderRadius || '4px');\r\n }\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<mat-checkbox *ngIf=\"field() && field()?.isVisible\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [checked]=\"inputValue\"\r\n (change)=\"onCheckboxChange($event)\"\r\n [ngStyle]=\"\r\n{\r\n '--checkbox-border-radius': field()?.controlStyle?.borderRadius,\r\n '--checkbox-bg-color': field()?.controlStyle?.background ,\r\n '--checkbox-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--checkbox-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--checkbox-font-size': field()?.controlStyle?.fontSize ,\r\n '--checkbox-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--checkbox-font-color': field()?.controlStyle?.color ,\r\n}\"\r\n>\r\n{{ field()?.label }}\r\n</mat-checkbox>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.isRequiredMessage}}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-textarea',\r\n standalone: true,\r\n imports: [CommonModule, ReactiveFormsModule],\r\n templateUrl: './textarea.component.html',\r\n styleUrl: './textarea.component.css'\r\n})\r\nexport class TextareaComponent {\r\n constructor(public masterService : MasterControlService){}\r\n field : any = input.required<any>();\r\n}\r\n","<textarea\r\n[ngStyle]=\"{\r\n '--custom-textarea-width': field()?.controlStyle?.width ,\r\n '--custom-textarea-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-textarea-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-textarea-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-textarea-border-width-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-textarea-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-textarea-caret-color': field()?.controlStyle?.caretColor ,\r\n '--custom-textarea-font-color': field()?.controlStyle?.color ,\r\n }\"\r\n*ngIf=\"field() && field()?.isVisible\"\r\n cols=\"40\"\r\n rows=\"3\"\r\n autocomplete=\"nope\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n></textarea>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, EventEmitter, input, Output } from '@angular/core';\r\nimport { MatTabChangeEvent, MatTabsModule } from '@angular/material/tabs';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-tab',\r\n standalone: true,\r\n imports: [MatTabsModule,CommonModule],\r\n templateUrl: './tab.component.html',\r\n styleUrl: './tab.component.css'\r\n})\r\nexport class TabComponent {\r\nfield : any = input.required<any>();\r\n@Output() selectedIndexChange = new EventEmitter<number>();\r\nselectedIndex = 0;\r\n\r\nconstructor(public masterService : MasterControlService){}\r\n\r\nngOnInit(){\r\n this.field().selectedIndex = this.selectedIndex;\r\n}\r\n onTabChange(event: number) {\r\n this.selectedIndex = event;\r\n this.field().selectedIndex = this.selectedIndex;\r\n}\r\n}\r\n","<mat-tab-group *ngIf=\"field() && field()?.isVisible\" class=\"vertical-tab-indicator\"\r\n[ngClass]=\"{'vertical-class': field()?.configData?.isVerticalTab && field()?.configData?.isVerticalTab === 'true'}\"\r\n[ngStyle]=\"{\r\n '--tab-border-color': field()?.controlStyle?.borderColor ,\r\n '--tab-border-width': field()?.controlStyle?.borderWidth,\r\n '--tab-font-size': field()?.controlStyle?.fontSize,\r\n '--tab-font-weight': field()?.controlStyle?.fontWeight,\r\n '--tab-font-color': field()?.controlStyle?.color,\r\n }\"\r\n[(selectedIndex)]=\"selectedIndex\" (selectedIndexChange)=\"onTabChange($event)\">\r\n <mat-tab *ngFor=\"let data of field()?.options; let i = index\">\r\n <ng-template mat-tab-label>\r\n <img [src]=\"data.value\" alt=\"\" class=\"mx-2\">\r\n {{ data.label }}\r\n </ng-template>\r\n <ng-content select=\"tab[i]\"></ng-content>\r\n </mat-tab>\r\n</mat-tab-group>\r\n","import { Component, input } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatSelectChange } from '@angular/material/select';\r\n@Component({\r\n selector: 'lib-autocomplete',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n MatAutocompleteModule,\r\n MatOptionModule,\r\n FormsModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './autocomplete.component.html',\r\n styleUrl: './autocomplete.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AutocompleteComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AutocompleteComponent {\r\n constructor(public masterService : MasterControlService) {}\r\n field: any = input.required<any>();\r\n selectedOption: any = null;\r\n filteredOptions:any=[];\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n ngOnInit() {\r\n this.filteredOptions = this.field().options;\r\n }\r\n \r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n \r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n \r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n \r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n \r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n \r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n filterOptions() {\r\n if (!this.selectedOption) {\r\n this.filteredOptions = this.field().options;\r\n return;\r\n }\r\n const filterValue = this.selectedOption.toLowerCase();\r\n this.filteredOptions = this.field().options.filter((option:any) =>\r\n option.label.toLowerCase().includes(filterValue)\r\n );\r\n }\r\n\r\ndisplayFn(option: any) {\r\n return option ? option : '';\r\n}\r\n}\r\n"," <label *ngIf=\"field() && field()?.isVisible && field().isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [matAutocomplete]=\"auto\"\r\n (ngModelChange)=\"filterOptions()\"\r\n (focus)=\"filterOptions()\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n type=\"text\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [matAutocomplete]=\"auto\"\r\n (ngModelChange)=\"filterOptions()\"\r\n (focus)=\"filterOptions()\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <mat-autocomplete autoActiveFirstOption #auto=\"matAutocomplete\" [displayWith]=\"displayFn\">\r\n <mat-option *ngFor=\"let option of filteredOptions\" [value]=\"option.label\">\r\n {{ option.label }}\r\n </mat-option>\r\n</mat-autocomplete>\r\n <mat-error>\r\n {{ field().validators.requiredMessage }}\r\n </mat-error>\r\n </mat-form-field>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n </div>\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-multiple-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './multiple-select.component.html',\r\n styleUrl: './multiple-select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: MultipleSelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class MultipleSelectComponent implements ControlValueAccessor {\r\n constructor(public masterService : MasterControlService) {}\r\n field: any = input.required<any>();\r\n selectedValues: any = [];\r\n visibleChip: any = [];\r\n remainingCount: any = 0;\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n ngOnInit(): void {\r\n // Initialize inputValue with a default or initial value if needed\r\n }\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.visibleChip = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n this.onSelectionChange();\r\n }\r\n\r\n removeItem(item: any) {\r\n const maxVisible = 2;\r\n this.visibleChip = this.visibleChip.filter(\r\n (element: any) => element !== item\r\n );\r\n this.selectedValues = this.selectedValues.filter(\r\n (element: any) => element !== item\r\n );\r\n const found = this.field().options.find((i:any) => i.label === item);\r\n if (found) {\r\n found.value = false;\r\n }\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectionChange() {\r\n const maxVisible = 2;\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n appearance=\"outline\"\r\n class=\"input-full-width full-width w-100 multi-select\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [value]=\"inputValue\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-select-trigger>\r\n <!-- <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox> -->\r\n <mat-chip-grid>\r\n @for (option of inputValue; track option) {\r\n <mat-chip-row [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip-row>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-grid>\r\n </mat-select-trigger>\r\n @for (option of field()?.options; track option.label) {\r\n <mat-option [value]=\"option.value\">\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n }@else {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [value]=\"inputValue\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n (selectionChange)=\"selectionChanged($event)\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-grid>\r\n @for (option of inputValue; track option) {\r\n <mat-chip-row [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option.label }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip-row>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-grid>\r\n </mat-select-trigger>\r\n @for (option of field()?.options; track option.label) {\r\n <mat-option [value]=\"option\">\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </mat-select>\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-select-textbox',\r\n standalone: true,\r\n imports: [MatInputModule, MatSelectModule, MatFormFieldModule, CommonModule, MatInputModule, ReactiveFormsModule],\r\n templateUrl: './select-textbox.component.html',\r\n styleUrl: './select-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SelectTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SelectTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty('--custom-select-option-background-color', css?.dropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color', css?.dropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight', css?.dropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-background-color-focus', css?.focusDropdownOptionBgColor || '#fff');\r\n document.body.style.setProperty('--custom-select-option-font-color-focus', css?.focusDropdownOptionColor || '#444');\r\n document.body.style.setProperty('--custom-select-option-font-weight-focus', css?.focusDropdownOptionFontWeight || '400');\r\n document.body.style.setProperty('--custom-select-option-border-left-focus', css?.focusDropdownOptionBorderLeft || '#ffbb00');\r\n document.body.style.setProperty('--custom-select-option-border-radius-focus', css?.focusDropdownOptionBorderRadius || '#ffbb00');\r\n } else {\r\n document.body.style.removeProperty('--custom-select-option-background-color');\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty('--custom-select-option-background-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-color-focus');\r\n document.body.style.removeProperty('--custom-select-option-font-weight-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-left-focus');\r\n document.body.style.removeProperty('--custom-select-option-border-radius-focus');\r\n }\r\n}\r\n\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n <span matPrefix class=\"rupee-symbol\">₹</span>\r\n <!-- <span class=\"mx-3 right-amount-text\"> ₹ 3.50 L </span> -->\r\n <div matSuffix class=\"input-select\">\r\n <!-- <mat-form-field> -->\r\n <mat-select (openedChange)=\"onSelectOpened($event)\">\r\n <mat-option *ngFor=\"let options of field()?.options\" [value]=\"options.value\">\r\n {{ options.label }}\r\n </mat-option>\r\n </mat-select>\r\n <!-- </mat-form-field> -->\r\n </div>\r\n</mat-form-field>\r\n","import { Component, input } from '@angular/core';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CommonModule } from '@angular/common';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-otp-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatCheckboxModule,\r\n MatSelectModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './otp-textbox.component.html',\r\n styleUrl: './otp-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: OtpTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class OtpTextboxComponent {\r\nconstructor(){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <div matSuffix class=\"get-otp mx-2\">\r\n <span class=\"mt-2\">Get OTP</span>\r\n </div>\r\n <div matSuffix class=\"verity-otp mx-2\" *ngIf=\"false\">\r\n <span class=\"mx-1\">Verify</span>\r\n </div>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n</mat-form-field>\r\n<div >\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let options of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{options.label}}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-amount-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './amount-textbox.component.html',\r\n styleUrl: './amount-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AmountTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class AmountTextboxComponent {\r\n constructor(){}\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\"\r\n >{{ field().label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <span matPrefix class=\"rupee-symbol px-2\">₹</span>\r\n <span matSuffix class=\"me-2 right-amount-text\"> ₹ 3.50 L </span>\r\n </mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-suffix-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n MatCheckboxModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './suffix-textbox.component.html',\r\n styleUrl: './suffix-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SuffixTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SuffixTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n >\r\n <img class=\"ms-1\" [src]=\"field().configData?.labelIconUrl\" [title]=\"field().configData?.tooltipMessage\" />\r\n </label\r\n>\r\n<mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n@if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n <span matSuffix class=\"mx-3 right-input-text\" *ngIf=\"field().configData?.suffix\"> {{field().configData?.suffix}} </span>\r\n</mat-form-field>\r\n<div *ngIf=\"field().configData?.isShowTagAs\">\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let option of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{ option.label }}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n<div *ngIf=\"field().configData?.infoMessage\">\r\n <span class=\"below-input-text\">{{field().configData?.infoMessage}}</span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-otp-mob-number',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './otp-mob-number.component.html',\r\n styleUrl: './otp-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: OtpMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class OtpMobNumberComponent {\r\n CountryCode: any = '+91';\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n \r\n <div matSuffix class=\"get-otp mx-2\">\r\n <span class=\"mt-2\">Get OTP</span>\r\n </div>\r\n <div matSuffix class=\"verity-otp mx-2\" *ngIf=\"false\">\r\n <span class=\"mx-1\">Verify</span>\r\n </div>\r\n <span matSuffix class=\"mx-3\" *ngIf=\"false\">\r\n <img src=\"https://cdn.godigit.com/retail-life/check-circle-ou.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<span class=\"success-text\" *ngIf=\"false\">Phone Number Verified</span>\r\n<span class=\"success-text\">\r\n <img src=\"https://cdn.godigit.com/retail-life/otp-circle-oui.svg\" alt=\"\" />\r\n OTP Sent\r\n</span>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-tag-mob-number',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatCheckboxModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './tag-mob-number.component.html',\r\n styleUrl: './tag-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TagMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TagMobNumberComponent {\r\n CountryCode: any = '+91';\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n autocomplete=\"none\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"checkbox-tag\">Tag as:</span>\r\n <span *ngFor=\"let option of field()?.options\" class=\"checkbox\">\r\n <mat-checkbox class=\"optional-checkbox\">\r\n {{ option.label }}\r\n </mat-checkbox>\r\n </span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MomentDateModule } from '@angular/material-moment-adapter';\r\nimport { MAT_DATE_FORMATS } from '@angular/material/core';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-age-date',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatDatepickerModule,\r\n MomentDateModule,\r\n ReactiveFormsModule\r\n ],\r\n providers: [{ provide: MAT_DATE_FORMATS, useValue: {\r\n parse: {\r\n dateInput: [\r\n 'DD-MM-YYYY',\r\n 'MM/DD/YYYY',\r\n 'YYYY/MM/DD',\r\n 'DD/MM/YYYY',\r\n 'DD MMM YYYY',\r\n 'DD MMMM YYYY',\r\n 'DD-MMM-YYYY',\r\n ],\r\n },\r\n display: {\r\n dateInput: 'DD-MMM-YYYY',\r\n monthYearLabel: 'MMM YYYY',\r\n dateA11yLabel: 'DD-MMM-YYYY',\r\n monthYearA11yLabel: 'MMMM YYYY',\r\n },\r\n }\r\n },\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: AgeDateComponent,\r\n multi: true\r\n },\r\n],\r\n templateUrl: './age-date.component.html',\r\n styleUrl: './age-date.component.css',\r\n})\r\nexport class AgeDateComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n constructor(public service : MasterControlService) {}\r\n\r\n dateDivisionFormat(event: any) {\r\n let evt = event.target;\r\n if (evt.value.length > 2 && !evt.value.substr(2, 1).includes('-')) {\r\n evt.value = [evt.value.slice(0, 2), '-', evt.value.slice(2)].join('');\r\n } else if (\r\n evt.value.length > 5 &&\r\n Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(5, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 5), '-', evt.value.slice(5)].join('');\r\n } else if (\r\n evt.value.length > 6 &&\r\n !Number(evt.value.substr(3, 2)) &&\r\n !evt.value.substr(6, 1).includes('-')\r\n ) {\r\n evt.value = [evt.value.slice(0, 6), '-', evt.value.slice(6)].join('');\r\n }\r\n }\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(event : any): void {\r\n if (!this.service.checkIfValueIsEmpty(event.target.value)) {\r\n if (isNaN(Date.parse(event.target.value))) {\r\n event.target.value = '';\r\n }\r\n\r\n }\r\n this._unTouched();\r\n }\r\n\r\n}\r\n","<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else{\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n [matDatepicker]=\"picker\"\r\n (keyup)=\"dateDivisionFormat($event)\"\r\n [disabled]=\"field()?.isDisable\"\r\n (dateChange)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur($event)\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <span matSuffix class=\"right-date-text\">\r\n 33yrs\r\n </span>\r\n <mat-datepicker-toggle matSuffix [for]=\"picker\" *ngIf=\"false\">\r\n <img\r\n src=\"https://cdn.godigit.com/digitPlusAssets/retail-life-icon/svgicon/date_picker_icon.svg\"\r\n style=\"width: 16px\"\r\n matDatepickerToggleIcon\r\n />\r\n </mat-datepicker-toggle>\r\n <mat-datepicker #picker></mat-datepicker>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-addition-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './addition-button.component.html',\r\n styleUrl: './addition-button.component.css'\r\n})\r\nexport class AdditionButtonComponent {\r\nfield: any = input.required<any>();\r\n}\r\n","<Button class=\"additional-button\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"\r\n{\r\n '--button-border': field()?.controlStyle?.borderWidth ,\r\n '--button-width': field()?.controlStyle?.width ,\r\n '--button-font-size': field()?.controlStyle?.fontSize ,\r\n '--button-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--button-background': field()?.controlStyle?.background ,\r\n '--button-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--button-text-color': field()?.controlStyle?.color ,\r\n}\">\r\n <span class=\"additional-button-text\">\r\n <img\r\n class=\"additional-button-img\"\r\n [src]=\"field()?.imageUrl\"\r\n />\r\n <span\r\n ><u>{{ field()?.label }}</u></span\r\n >\r\n </span>\r\n</Button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-info-textbox',\r\n standalone: true,\r\n imports: [\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './info-textbox.component.html',\r\n styleUrl: './info-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: InfoTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class InfoTextboxComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable info-label\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}\r\n <!-- <span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n > -->\r\n <span style=\"justify-content: end;\">\r\n <img class=\"mx-1\" src=\"https://cdn.godigit.com/retail-life/question-mark.svg\" alt=\"\">\r\n <u>Where to find this? ></u></span>\r\n </label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n \r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-image',\r\n standalone: true,\r\n imports: [MatInputModule, MatFormFieldModule, CommonModule, FormsModule, ReactiveFormsModule],\r\n templateUrl: './textbox-with-image.component.html',\r\n styleUrl: './textbox-with-image.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithImageComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxWithImageComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n<input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n}@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n}\r\n \r\n <span matSuffix class=\"mx-3\">\r\n <img *ngIf=\"field()?.imageUrl\" [src]='field().imageUrl' alt=\"\" />\r\n <!-- \"https://cdn.godigit.com/retail-life/location.svg\" -->\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-email-with-domain',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, FormsModule, ReactiveFormsModule],\r\n templateUrl: './email-with-domain.component.html',\r\n styleUrl: './email-with-domain.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: EmailWithDomainComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class EmailWithDomainComponent {\r\npincode: any = '';\r\n emailUser:any='';\r\n emailDomain:any='';\r\n\r\n field: any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n inputValue: any = null;\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\" class=\"field-lable\">{{field()?.label}}<span style=\"color: red;\" *ngIf=\"field() && field()?.validators?.isRequired\">*</span></label>\r\n <mat-form-field class=\"w-100\" appearance=\"outline\" [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\">\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n class=\"email-left-side\"\r\n [name]=\"field()?.fieldName + '_1'\"\r\n [id]=\"field()?.fieldName + '_1'\"\r\n [type]=\"field()?.controlType\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n class=\"email-left-side\"\r\n [name]=\"field()?.fieldName + '_1'\"\r\n [id]=\"field()?.fieldName + '_1'\"\r\n [type]=\"field()?.controlType\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n <span class=\"email-between\">&#64;</span>\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [name]=\"field()?.fieldName + '_2'\"\r\n [id]=\"field()?.fieldName + '_2'\"\r\n placeholder=\"domain.com\"\r\n class=\"email-right-side\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [disabled]=\"field()?.isDisable\"\r\n />\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n </mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-image-upload',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './image-upload.component.html',\r\n styleUrl: './image-upload.component.css'\r\n})\r\nexport class ImageUploadComponent {\r\n field : any = input.required<any>();\r\n}\r\n","\r\n<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn\"\r\n (click)=\"fileInput.click()\"\r\n [ngClass]=\"field()?.label ? 'lightbackground' : 'successBackground'\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <ng-container *ngIf=\"field()?.label; else policyHolderPanFileNotEmpty\">\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Upload_Icon.svg\"\r\n alt=\"\"\r\n class=\"mb-1\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n </span>\r\n </ng-container>\r\n <ng-template #policyHolderPanFileNotEmpty>\r\n <span class=\"mt-2 right-icon\">\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/Tickmark.svg\" alt=\"\"\r\n /></span>\r\n <span title=\"uploaded file\">uploaded file</span>\r\n </span>\r\n <div class=\"mt-2 left-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/visibility-oui.svg\"\r\n alt=\"\"\r\n /></span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/delete-oui.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </ng-template>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-download-document',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './download-document.component.html',\r\n styleUrl: './download-document.component.css'\r\n})\r\nexport class DownloadDocumentComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable upload-label\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field()?.label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn lightbackground\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--upload-width': field()?.controlStyle?.width ,\r\n'--upload-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--upload-border-color': field()?.controlStyle?.borderColor ,\r\n'--upload-border-width': field()?.controlStyle?.borderWidth ,\r\n'--upload-border-style': field()?.controlStyle?.borderStyle ,\r\n'--upload-background-color': field()?.controlStyle?.background ,\r\n'--upload-focus-border-color': field()?.controlStyle?.focusBorderColor ,\r\n'--upload-focus-background-color': field()?.controlStyle?.focusBackground ,\r\n}\"\r\n >\r\n <span class=\"upload-icon\">\r\n <span\r\n ><img\r\n src=\"https://cdn.godigit.com/retail-life/Download_Icon.svg\"\r\n alt=\"\"\r\n class=\"mb-1\"\r\n /></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n </span>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'lib-add-document',\r\n standalone: true,\r\n imports: [\r\n CommonModule,\r\n FormsModule\r\n ],\r\n templateUrl: './add-document.component.html',\r\n styleUrl: './add-document.component.css'\r\n})\r\nexport class AddDocumentComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\">{{field().label}}</label>\r\n <input\r\n hidden\r\n [type]=\"field()?.controlType\"\r\n #fileInput\r\n (click)=\"(fileInput.value)\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n />\r\n <button\r\n type=\"button\"\r\n class=\"upload-btn add-document-btn\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--add-doc-border-color': field()?.controlStyle?.borderColor ,\r\n'--add-doc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--add-doc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--add-doc-background': field()?.controlStyle?.background \r\n}\"\r\n >\r\n <span class=\"add-icon\">\r\n <span\r\n ><img class=\"mb-1\" src=\"https://cdn.godigit.com/retail-life/add.svg\"></span>\r\n <span class=\"upload-text\" [ngStyle]=\"{\r\n'--upload-font-color': field()?.controlStyle?.color ,\r\n'--upload-font-size': field()?.controlStyle?.fontSize ,\r\n'--upload-font-weight': field()?.controlStyle?.fontWeight,\r\n'--upload-focus-font-color': field()?.controlStyle?.focusColor ,\r\n}\">{{ field()?.label }}</span>\r\n <span class=\"light-font\">(optional)</span>\r\n </span>\r\n </button>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-hyperlink',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './hyperlink.component.html',\r\n styleUrl: './hyperlink.component.css'\r\n})\r\nexport class HyperlinkComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<u *ngIf=\"field() && field()?.isVisible\" class=\"hyperlink\" [ngStyle]=\"{\r\n'--hyperlink-font-color': field()?.controlStyle?.color,\r\n'--hyperlink-font-size': field()?.controlStyle?.fontSize,\r\n'--hyperlink-font-weight': field()?.controlStyle?.fontWeight\r\n}\">\r\n <a href=\"Hyper_link\" *ngIf=\"field()?.label && field()?.isShowLabel\">{{field()?.label}}</a></u\r\n>\r\n<img *ngIf=\"field()?.imageUrl\" [src]=\"field()?.imageUrl\" alt=\"\">\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-underscore',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, ReactiveFormsModule],\r\n templateUrl: './textbox-with-underscore.component.html',\r\n styleUrl: './textbox-with-underscore.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithUnderscoreComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class TextboxWithUnderscoreComponent {\r\n field: any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n\r\n changeFormat(event: any) {\r\n let digits = event.target.value.replace(/[^0-9]/g, '').slice(0, this.field().validators.maxLength);\r\n let padded = digits.padEnd(this.field().validators.maxLength, '_');\r\n event.target.value = padded;\r\n\r\n setTimeout(() => {\r\n let pos = digits.length;\r\n if (pos > this.field().validators.maxLength) pos = this.field().validators.maxLength;\r\n event.target.setSelectionRange(pos, pos);\r\n });\r\n }\r\n getUnderscorePlaceholder() {\r\n return '_'.repeat(this.field().validators.maxLength);\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 hyphen-input\"\r\n appearance=\"outline\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatOptionModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-underscore-mob-number',\r\n standalone: true,\r\n imports: [CommonModule, MatInputModule, MatFormFieldModule, MatSelectModule, MatOptionModule, ReactiveFormsModule],\r\n templateUrl: './underscore-mob-number.component.html',\r\n styleUrl: './underscore-mob-number.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: UnderscoreMobNumberComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class UnderscoreMobNumberComponent {\r\nCountryCode: any = '+91';\r\n field : any = input.required<any>();\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n \r\n changeFormat(event: any) {\r\n let digits = event.target.value.replace(/[^0-9]/g, '').slice(0, this.field().validators.maxLength);\r\n let padded = digits.padEnd(this.field().validators.maxLength, '_');\r\n event.target.value = padded;\r\n\r\n setTimeout(() => {\r\n let pos = digits.length;\r\n if (pos > this.field().validators.maxLength) pos = this.field().validators.maxLength;\r\n event.target.setSelectionRange(pos, pos);\r\n });\r\n }\r\n getUnderscorePlaceholder() {\r\n return '_'.repeat(this.field().validators.maxLength);\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100 mobile-field hyphen-input\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n <div matTextPrefix class=\"prefix_alternate_mobile primary\">\r\n <div class=\"d-flex countryCode\">\r\n <span class=\"country_code_input\"> {{ CountryCode }} </span>\r\n <span\r\n ><img src=\"https://cdn.godigit.com/retail-life/down-arrow.svg\" alt=\"\"\r\n /></span>\r\n </div>\r\n </div>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [placeholder]=\"getUnderscorePlaceholder()\"\r\n (keyup)=\"changeFormat($event)\"\r\n />\r\n }\r\n\r\n <span matSuffix class=\"p-3\">\r\n <img src=\"https://cdn.godigit.com/retail-life/edit-icon.svg\" alt=\"\" />\r\n </span>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-icon-button',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './icon-button.component.html',\r\n styleUrl: './icon-button.component.css',\r\n})\r\nexport class IconButtonComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<Button \r\nclass=\"icon-button\"\r\n*ngIf=\"field() && field()?.isVisible\" \r\n[ngStyle]=\"\r\n{\r\n '--icon-button-border-width': field()?.controlStyle?.borderWidth ,\r\n '--icon-button-border-style': field()?.controlStyle?.borderStyle ,\r\n '--icon-button-border-color': field()?.controlStyle?.borderColor ,\r\n '--icon-button-width': field()?.controlStyle?.width ,\r\n '--icon-button-background': field()?.controlStyle?.background ,\r\n '--icon-button-border-radius': field()?.controlStyle?.borderRadius ,\r\n}\"\r\n>\r\n<span>\r\n<img src=\"https://cdn.godigit.com/retail-life/Download_Icon.svg\">\r\n</span>\r\n</Button>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-image',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './image.component.html',\r\n styleUrl: './image.component.css'\r\n})\r\nexport class ImageComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div>\r\n <img [src]=\"field()['imageUrl']\" class=\"image-width\" [ngStyle]=\"{'--image-width' : field()?.controlStyle?.width}\"/>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatStepperModule } from '@angular/material/stepper';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-stepper',\r\n standalone: true,\r\n imports: [MatStepperModule,CommonModule],\r\n templateUrl: './stepper.component.html',\r\n styleUrl: './stepper.component.css'\r\n})\r\nexport class StepperComponent {\r\nfield: any = input.required<any>();\r\nmasterStepper:any;\r\nconstructor(public masterSharedService:MasterControlService){}\r\nngOnInit(){\r\n this.field().editStepper = this.field().configData.stepperData ? this.field().configData.stepperData : this.masterSharedService?.configData?.stepper?.stepperData;\r\n}\r\n}\r\n","<div *ngIf=\"field() && field()?.isVisible\">\r\n <mat-stepper #stepperHeader>\r\n <ng-container *ngFor=\"let steps of field().editStepper; let i = index\">\r\n <mat-step>\r\n <ng-template matStepLabel>\r\n <img\r\n class=\"step-img\"\r\n [src]=\"steps.imgIconUrl\"\r\n alt=\"\"\r\n />\r\n <span class=\"step-label mx-2\">{{steps?.displayLabel}}</span>\r\n </ng-template>\r\n </mat-step>\r\n </ng-container>\r\n </mat-stepper>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './card.component.html',\r\n styleUrl: './card.component.css'\r\n})\r\nexport class CardComponent {\r\nfield: any = input.required<any>();\r\n}\r\n"," <div class=\"d-flex gap-5\" *ngIf=\"field() && field()?.isVisible\">\r\n <div class=\"endorsement-card\" [ngStyle]=\"{\r\n '--card-border-color': field()?.controlStyle?.borderColor ,\r\n '--card-border-width': field()?.controlStyle?.borderWidth ,\r\n '--card-border-style': field()?.controlStyle?.borderStyle ,\r\n '--card-border-radius': field()?.controlStyle?.borderRadius \r\n}\">\r\n <p class=\"m-0 card-label\" [ngStyle]=\"{\r\n '--card-font-size': field()?.controlStyle?.fontSize ,\r\n '--card-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--card-font-color': field()?.controlStyle?.color ,\r\n}\">Label</p>\r\n <hr class=\"m-0 hr-line mt-1\" />\r\n <div class=\"d-flex gap-2 mt-1\">\r\n <span>\r\n <img src=\"https://cdn.godigit.com/retail-life/Endorsement-add-ons.svg\" alt=\"\" />\r\n </span>\r\n <span>\r\n <p class=\"m-0 card-label\">Glow Plus Pure Term</p>\r\n <span class=\"below-card-text\">L1234694934</span>\r\n </span>\r\n </div>\r\n </div>\r\n </div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-hr-line',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './hr-line.component.html',\r\n styleUrl: './hr-line.component.css'\r\n})\r\nexport class HrLineComponent {\r\nfield: any = input.required<any>();\r\n}\r\n","<div class=\"col-lg-12\">\r\n <hr class=\"master-hr-line\" [ngStyle]=\"{\r\n'--hr-line-border-width': field()?.controlStyle?.borderWidth,\r\n'--hr-line-border-color': field()?.controlStyle?.borderColor,\r\n'--hr-line-border-style': field()?.controlStyle?.borderStyle\r\n}\"/>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { FormsModule, NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatChipsModule } from '@angular/material/chips';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatSelectChange, MatSelectModule } from '@angular/material/select';\r\n\r\n@Component({\r\n selector: 'lib-search-multi-select',\r\n standalone: true,\r\n imports: [\r\n MatSelectModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n MatChipsModule,\r\n MatIconModule,\r\n FormsModule,\r\n MatInputModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './search-multi-select.component.html',\r\n styleUrl: './search-multi-select.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SearchMultiSelectComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SearchMultiSelectComponent {\r\n field: any = input.required<any>();\r\n selectedValues: any = [];\r\n visibleChip: any = [];\r\n remainingCount: any = 0;\r\n searchText: any = '';\r\n filteredOptions: any = [];\r\n inputValue: any = null;\r\n reactiveFormControlobject : any = input<any>();\r\n ngOnInit() {\r\n this.filteredOptions = this.field().options;\r\n }\r\n\r\n onChange: any = () => {};\r\n onTouched: any = () => {};\r\n\r\n writeValue(value: any): void {\r\n this.inputValue = value;\r\n }\r\n\r\n registerOnChange(fn: any): void {\r\n this.onChange = fn;\r\n }\r\n\r\n registerOnTouched(fn: any): void {\r\n this.onTouched = fn;\r\n }\r\n\r\n onValueChange(newValue: any): void {\r\n this.inputValue = newValue;\r\n this.onChange(newValue);\r\n this.onTouched();\r\n }\r\n\r\n selectionChanged(event: MatSelectChange) {\r\n this.inputValue = event.value;\r\n this.onChange(event.value);\r\n this.onTouched();\r\n }\r\n setDisabledState?(isDisabled: boolean): void {}\r\n\r\n removeItem(item: any) {\r\n const maxVisible = 2;\r\n this.visibleChip = this.visibleChip.filter(\r\n (element: any) => element !== item\r\n );\r\n this.selectedValues = this.selectedValues.filter(\r\n (element: any) => element !== item\r\n );\r\n const found = this.field().options.find((i: any) => i.label === item);\r\n if (found) {\r\n found.value = false;\r\n }\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n onSelectionChange() {\r\n const maxVisible = 2;\r\n this.visibleChip = this.selectedValues.slice(0, maxVisible);\r\n this.remainingCount = this.selectedValues.length - maxVisible;\r\n }\r\n\r\n filterOptions() {\r\n if (!this.searchText) {\r\n this.filteredOptions = this.field().options;\r\n return;\r\n }\r\n const filterValue = this.searchText.toLowerCase();\r\n this.filteredOptions = this.field().options.filter((option: any) =>\r\n option.label.toLowerCase().includes(filterValue)\r\n );\r\n }\r\n\r\n onSelectOpened(opened: boolean) {\r\n const css = this.field()?.controlStyle;\r\n if (opened) {\r\n document.body.style.setProperty(\r\n '--custom-select-option-background-color',\r\n css?.dropdownOptionBgColor || '#fff'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-color',\r\n css?.dropdownOptionColor || '#444'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-weight',\r\n css?.dropdownOptionFontWeight || '400'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-background-color-focus',\r\n css?.focusDropdownOptionBgColor || '#fff'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-color-focus',\r\n css?.focusDropdownOptionColor || '#444'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-font-weight-focus',\r\n css?.focusDropdownOptionFontWeight || '400'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-border-left-focus',\r\n css?.focusDropdownOptionBorderLeft || '#ffbb00'\r\n );\r\n document.body.style.setProperty(\r\n '--custom-select-option-border-radius-focus',\r\n css?.focusDropdownOptionBorderRadius || '#ffbb00'\r\n );\r\n } else {\r\n document.body.style.removeProperty(\r\n '--custom-select-option-background-color'\r\n );\r\n document.body.style.removeProperty('--custom-select-option-font-color');\r\n document.body.style.removeProperty('--custom-select-option-font-weight');\r\n document.body.style.removeProperty(\r\n '--custom-select-option-background-color-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-font-color-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-font-weight-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-border-left-focus'\r\n );\r\n document.body.style.removeProperty(\r\n '--custom-select-option-border-radius-focus'\r\n );\r\n }\r\n }\r\n}\r\n","<label class=\"field-lable\" *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n appearance=\"outline\"\r\n class=\"input-full-width full-width w-100 multi-select\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n '--custom-border-color': field()?.controlStyle?.borderColor ,\r\n '--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n '--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--custom-bg-color': field()?.controlStyle?.background ,\r\n '--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n '--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n '--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n '--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n '--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n '--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n '--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n }\"\r\n>\r\n@if(reactiveFormControlobject()) {\r\n<mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [(value)]=\"selectedValues\"\r\n (selectionChange)=\"onSelectionChange()\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox>\r\n </mat-select-trigger>\r\n <div class=\"select-container\">\r\n <mat-optgroup>\r\n <mat-form-field\r\n class=\"input-full-width full-width w-100 multiselect-search\"\r\n >\r\n <input\r\n matInput\r\n #search\r\n autocomplete=\"off\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"filterOptions()\"\r\n />\r\n </mat-form-field>\r\n </mat-optgroup>\r\n @for (option of filteredOptions; track option.label) {\r\n <mat-option [value]=\"option.label\" autoActiveFirstOption>\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </div>\r\n </mat-select>\r\n}@else {\r\n <mat-select\r\n multiple\r\n [id]=\"field()?.fieldName\"\r\n [attr.name]=\"field()?.fieldName\"\r\n [(value)]=\"selectedValues\"\r\n (selectionChange)=\"onSelectionChange()\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [disabled]=\"field()?.isDisable\"\r\n (openedChange)=\"onSelectOpened($event)\"\r\n [value]=\"inputValue\"\r\n >\r\n <mat-select-trigger>\r\n <mat-chip-listbox>\r\n @for (option of visibleChip; track option) {\r\n <mat-chip [removable]=\"true\" (removed)=\"removeItem(option)\">\r\n {{ option }}\r\n <mat-icon matChipRemove>close</mat-icon>\r\n </mat-chip>\r\n }\r\n <mat-chip *ngIf=\"remainingCount > 0\"> +{{ remainingCount }} </mat-chip>\r\n </mat-chip-listbox>\r\n </mat-select-trigger>\r\n <div class=\"select-container\">\r\n <mat-optgroup>\r\n <mat-form-field\r\n class=\"input-full-width full-width w-100 multiselect-search\"\r\n >\r\n <input\r\n matInput\r\n #search\r\n autocomplete=\"off\"\r\n placeholder=\"Search\"\r\n [(ngModel)]=\"searchText\"\r\n (ngModelChange)=\"filterOptions()\"\r\n />\r\n </mat-form-field>\r\n </mat-optgroup>\r\n @for (option of filteredOptions; track option.label) {\r\n <mat-option [value]=\"option.label\" autoActiveFirstOption>\r\n {{ option.label }}\r\n </mat-option>\r\n }\r\n </div>\r\n </mat-select>\r\n}\r\n \r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.requiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-subscript-textbox',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule ,\r\n CommonModule,\r\n ReactiveFormsModule\r\n ],\r\n templateUrl: './subscript-textbox.component.html',\r\n styleUrl: './subscript-textbox.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: SubscriptTextboxComponent,\r\n multi: true\r\n }\r\n ]\r\n})\r\nexport class SubscriptTextboxComponent {\r\n inputValue: any = null;\r\n field : any = input.required<any>();\r\n reactiveFormControlobject : any = input<any>();\r\n\r\n _onChange: any = (inputValue:any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void{\r\n this.inputValue=obj;\r\n };\r\n registerOnChange(fn: any): void{\r\n this._onChange = fn;\r\n };\r\n registerOnTouched(fn: any): void{\r\n this._unTouched = fn;\r\n };\r\n setDisabledState?(isDisabled: boolean): void{};\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n />\r\n }\r\n\r\n <p class=\"years-text\" *ngIf=\"inputValue\">Years</p>\r\n <p class=\"textbox-subscript\">till 2026</p>\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">Allowed range is 10 to 30 years</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n\r\n@Component({\r\n selector: 'lib-label',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './label.component.html',\r\n styleUrl: './label.component.css'\r\n})\r\nexport class LabelComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n<span class=\"master-label\" [ngStyle]=\"{\r\n'--master-heading-font-color': field()?.controlStyle?.color,\r\n'--master-heading-font-size': field()?.controlStyle?.fontSize,\r\n'--master-heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-sub-header',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './sub-header.component.html',\r\n styleUrl: './sub-header.component.css'\r\n})\r\nexport class SubHeaderComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"sub-heading\" [ngStyle]=\"{\r\n'--sub-heading-font-color': field()?.controlStyle?.color,\r\n'--sub-heading-font-size': field()?.controlStyle?.fontSize,\r\n'--sub-heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}\r\n<img [src]=\"field()?.imageUrl\" *ngIf=\"field()?.imageUrl\" alt=\"\">\r\n</span>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'lib-header',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './header.component.html',\r\n styleUrl: './header.component.css'\r\n})\r\nexport class HeaderComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"heading\" [ngStyle]=\"{\r\n'--heading-font-color': field()?.controlStyle?.color,\r\n'--heading-font-size': field()?.controlStyle?.fontSize,\r\n'--heading-font-weight': field()?.controlStyle?.fontWeight\r\n}\">\r\n {{field()?.label}}\r\n </span>\r\n</div>","import { Component, HostListener, input } from '@angular/core';\r\nimport { CommonModule, NgFor, NgIf } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatTooltipModule } from '@angular/material/tooltip';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { MatPaginatorModule, PageEvent } from '@angular/material/paginator';\r\n@Component({\r\n selector: 'lib-table',\r\n standalone: true,\r\n imports: [NgIf, NgFor, FormsModule, CommonModule, MatIconModule, MatTooltipModule,MatPaginatorModule],\r\n templateUrl: './table.component.html',\r\n styleUrl: './table.component.css'\r\n})\r\nexport class TableComponent {\r\n field: any = input.required<any>();\r\n readonly = input(false);\r\n showActionsPopup = false;\r\n popupPosition = { top: 0, left: 0 };\r\n selectedRow: any = 0;\r\n highlightedIndex = -1;\r\n paginationSize: any = 10;\r\n pageNumber: any = 0;\r\n pageSize: any = 10;\r\n constructor(public masterControlService : MasterControlService) { }\r\n\r\n ngOnInit() {\r\n this.setColumns();\r\n }\r\n trackByIndex(index: any, item: any) {\r\n return index;\r\n }\r\n\r\n setColumns() {\r\n let checkConfigData = this.field().configData;\r\n if(Object.keys(checkConfigData).length > 0){\r\n this.masterControlService.configData.table = checkConfigData;\r\n }\r\n if (this.masterControlService.configData.table.rowlength > 0 && this.masterControlService.configData.table.columnlength > 0) {\r\n this.field().tableData = this.masterControlService.configData.table;\r\n for (let i = 0; i < this.masterControlService.configData.table.columnlength; i++) {\r\n if(Object.keys(checkConfigData).length <= 0){\r\n let headerObj = {\r\n \"columnName\": `${'Name - ' + i}`,\r\n \"isSortingNeeded\": \"Y\",\r\n \"toolTip\": `${'tooltip - ' + i}`\r\n }\r\n const exists = this.field().tableData.tableHeaders.some(\r\n (header: any) => header.columnName === headerObj.columnName\r\n );\r\n if (!exists && this.field().tableData.tableHeaders.length < this.masterControlService.configData.table.columnlength) {\r\n this.field().tableData.tableHeaders.push(headerObj);\r\n }\r\n }\r\n }\r\n this.field().tableData.tdData = Array(this.masterControlService.configData.table.rowlength).fill(null).map((_, rowIdx) =>\r\n Array(this.masterControlService.configData.table.columnlength).fill('').map((_, colIdx) => `Dummy Row ${rowIdx + 1}`)\r\n );\r\n\r\n this.masterControlService.saveTableFieldState(this.field());\r\n this.field().configData = this.field().tableData\r\n }\r\n }\r\n\r\n openActionsPopup(event: MouseEvent, rowIndex: number) {\r\n event.stopPropagation();\r\n this.selectedRow = rowIndex;\r\n this.showActionsPopup = true;\r\n this.highlightedIndex = 1;\r\n const rect = (event.target as HTMLElement).getBoundingClientRect();\r\n this.popupPosition = {\r\n top: rect.bottom + window.scrollY - 30,\r\n left: rect.left + window.scrollX - 280,\r\n };\r\n }\r\n\r\n closeActionsPopup() {\r\n this.showActionsPopup = false;\r\n this.selectedRow = 0;\r\n this.highlightedIndex = -1;\r\n }\r\n\r\n @HostListener('document:keydown.escape', ['$event'])\r\n onEscKey(event: KeyboardEvent) {\r\n this.closeActionsPopup();\r\n }\r\n\r\n pageChanged(event: PageEvent) {\r\n this.pageNumber = event.pageIndex;\r\n this.pageSize = event.pageSize;\r\n console.log(this.pageNumber, this.pageSize);\r\n }\r\n}\r\n","<div class=\"styled-table-container\">\r\n<table *ngIf=\"field()?.tableData?.columnlength && field()?.tableData?.rowlength\" class=\"styled-table\">\r\n <thead>\r\n <tr>\r\n <th *ngIf=\"field()?.tableData?.showCheckBox\"></th>\r\n <th *ngFor=\"let header of field().tableData?.tableHeaders; let i = index; trackBy: trackByIndex\">\r\n <ng-container *ngIf=\"!readonly(); else headerText\">{{header.columnName}}\r\n <!-- <input type=\"text\" [(ngModel)]=\"header.columnName\" (ngModelChange)=\"renameHeader(i, $event)\"\r\n [disabled]=\"readonly()\" class=\"custom_input\" [matTooltip]=\"header.toolTip\" matTooltipPosition=\"above\"> -->\r\n </ng-container>\r\n <ng-template #headerText>{{ header?.columnName }}</ng-template>\r\n </th>\r\n <th *ngIf=\"field()?.tableData?.showActions\">Action</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let row of field()?.tableData?.tdData;let rowIndex = index\">\r\n <td *ngIf=\"field()?.tableData?.showCheckBox\"><input type=\"checkbox\"></td>\r\n <td *ngFor=\"let cell of row\">{{ cell }}</td>\r\n <td *ngIf=\"field()?.tableData?.showActions\">\r\n <button class=\"action-btn\" (click)=\"openActionsPopup($event, rowIndex)\" [disabled]=\"readonly()\">\r\n <mat-icon>more_vert</mat-icon>\r\n </button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n <mat-paginator class=\"custom-paginator\"\r\n [length]=\"field()?.tableData?.tdData?.length\"\r\n [pageSize]=\"paginationSize\"\r\n [pageSizeOptions]=\"[5, 10, 25, 100]\"\r\n (page)=\"pageChanged($event)\"\r\n aria-label=\"Select page\">\r\n </mat-paginator>\r\n</div>\r\n\r\n<div *ngIf=\"showActionsPopup\" class=\"actions-popup-backdrop\" (click)=\"closeActionsPopup()\">\r\n <div class=\"actions-popup-menu\" [ngStyle]=\"{'top.px': popupPosition.top, 'left.px': popupPosition.left}\"\r\n (click)=\"$event.stopPropagation()\">\r\n <div class=\"makeArrow\" [ngStyle]=\"{'left.px': popupPosition.left+25}\"></div>\r\n <ul>\r\n <li *ngFor=\"let actionData of field().tableData?.userSelectedOptions[selectedRow]\" [matTooltip]=\"actionData?.displayTitle\"\r\n matTooltipPosition=\"above\">\r\n <mat-icon>{{actionData?.matIconName}}</mat-icon>\r\n {{actionData?.displayTitle}}\r\n </li>\r\n </ul>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { NG_VALUE_ACCESSOR, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\n@Component({\r\n selector: 'lib-textbox-with-text',\r\n standalone: true,\r\n imports: [\r\n MatInputModule,\r\n MatFormFieldModule,\r\n CommonModule,\r\n ReactiveFormsModule,\r\n ],\r\n templateUrl: './textbox-with-text.component.html',\r\n styleUrl: './textbox-with-text.component.css',\r\n providers: [\r\n {\r\n provide: NG_VALUE_ACCESSOR,\r\n useExisting: TextboxWithTextComponent,\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class TextboxWithTextComponent {\r\n inputValue: any = null;\r\n reactiveFormControlobject: any = input<any>();\r\n field: any = input.required<any>();\r\n\r\n _onChange: any = (inputValue: any) => {};\r\n _unTouched: any = () => {};\r\n\r\n writeValue(obj: any): void {\r\n this.inputValue = obj;\r\n }\r\n registerOnChange(fn: any): void {\r\n this._onChange = fn;\r\n }\r\n registerOnTouched(fn: any): void {\r\n this._unTouched = fn;\r\n }\r\n setDisabledState?(isDisabled: boolean): void {}\r\n\r\n onInputChange(event: any): void {\r\n this.inputValue = event.target.value;\r\n this._onChange(this.inputValue);\r\n }\r\n\r\n onInputBlur(): void {\r\n this._unTouched();\r\n }\r\n}\r\n","<label\r\n class=\"field-lable\"\r\n *ngIf=\"field() && field()?.isVisible && field().isShowLabel\"\r\n >{{ field()?.label\r\n }}<span style=\"color: red\" *ngIf=\"field() && field()?.validators?.isRequired\"\r\n >*</span\r\n ></label\r\n>\r\n<mat-form-field\r\n class=\"w-100\"\r\n appearance=\"outline\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"{\r\n'--custom-border-color': field()?.controlStyle?.borderColor ,\r\n'--custom-border-width': field()?.controlStyle?.borderWidth ,\r\n'--custom-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--custom-bg-color': field()?.controlStyle?.background ,\r\n'--custom-border-color-focus': field()?.controlStyle?.focusBorderColor ,\r\n'--custom-border-width-focus': field()?.controlStyle?.focusBorderWidth ,\r\n'--custom-bg-color-focus': field()?.controlStyle?.focusBackground ,\r\n'--custom-border-color-hover': field()?.controlStyle?.hoverBorderColor ,\r\n'--custom-border-width-hover': field()?.controlStyle?.hoverBorderWidth ,\r\n'--custom-border-color-error': field()?.controlStyle?.errorBorderColor ,\r\n'--custom-border-width-error': field()?.controlStyle?.errorBorderWidth ,\r\n'--custom-font-size': field()?.controlStyle?.fontSize ,\r\n'--custom-font-weight': field()?.controlStyle?.fontWeight ,\r\n'--custom-font-family': field()?.controlStyle?.fontFamily ,\r\n'--custom-font-color': field()?.controlStyle?.color ,\r\n'--custom-caret-color': field()?.controlStyle?.caretColor ,\r\n'--custom-font-color-disabled' : field()?.controlStyle?.disableColor ,\r\n'--custom-bg-color-disabled' : field()?.controlStyle?.disableBackground ,\r\n}\"\r\n>\r\n @if(reactiveFormControlobject()) {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }@else {\r\n <input\r\n matInput\r\n autocomplete=\"none\"\r\n [type]=\"field()?.controlType\"\r\n [name]=\"field()?.fieldName\"\r\n [id]=\"field()?.fieldName\"\r\n [placeholder]=\"field()?.placeHolder\"\r\n [maxLength]=\"field()?.validators?.maxLength\"\r\n [minLength]=\"field()?.validators?.minLength\"\r\n [disabled]=\"field()?.isDisable\"\r\n [required]=\"field()?.validators?.isRequired\"\r\n [pattern]=\"field()?.validators?.pattern\"\r\n (input)=\"onInputChange($event)\"\r\n (blur)=\"onInputBlur()\"\r\n [value]=\"inputValue\"\r\n [formControl]=\"reactiveFormControlobject()\"\r\n />\r\n }\r\n\r\n <mat-error *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}\r\n </mat-error>\r\n</mat-form-field>\r\n<div>\r\n <span class=\"below-input-text\">Allowed range is 10 to 30 years</span>\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.isRequiredMessage }}.\r\n</div>\r\n<div class=\"error-message\" *ngIf=\"false\">\r\n {{ field()?.validators?.patternMessage }}.\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-discount',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './discount.component.html',\r\n styleUrl: './discount.component.css'\r\n})\r\nexport class DiscountComponent {\r\n field: any = input.required<any>();\r\n\r\n}\r\n","<p\r\n class=\"discount-label b2-bold px-1\"\r\n *ngIf=\"field() && field()?.isVisible && field()?.isShowLabel\"\r\n>\r\n {{ field()?.label }}\r\n</p>\r\n<div \r\nclass=\"discount-card\" \r\n*ngIf=\"field() && field()?.isVisible\"\r\n[ngStyle]=\"\r\n{\r\n '--discount-border-width': field()?.controlStyle?.borderWidth,\r\n '--discount-card-width': field()?.controlStyle?.width ,\r\n '--discount-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--discount-border-color': field()?.controlStyle?.borderColor ,\r\n}\"\r\n>\r\n <div class=\"d-flex justify-content-between\">\r\n <div>\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/discount-img-lib.svg\"\r\n alt=\"\"\r\n class=\"mx-1\"\r\n />\r\n <span class=\"h2-extrabold\">5% </span>\r\n <span class=\"b3-regular\">off</span>\r\n </div>\r\n <div>\r\n <button class=\"apply-btn\">\r\n <span class=\"my-1\">\r\n Apply\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/arrow_forward_lib.svg\"\r\n alt=\"\"\r\n />\r\n </span>\r\n </button>\r\n </div>\r\n <div *ngIf=\"false\">\r\n <button class=\"remove-btn\">\r\n <span> Remove x </span>\r\n </button>\r\n </div>\r\n </div>\r\n <div>\r\n <p class=\"b2-bold m-0\">Good Health Discount</p>\r\n <p class=\"b3-regular\">\r\n Get extra 5% discount for keeping a healthy lifestyle!\r\n </p>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-benefit-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './benefit-card.component.html',\r\n styleUrl: './benefit-card.component.css',\r\n})\r\nexport class BenefitCardComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div\r\n class=\"benefit-card\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"\r\n{\r\n '--benefit-border-width': field()?.controlStyle?.borderWidth,\r\n '--benefit-card-width': field()?.controlStyle?.width ,\r\n '--benefit-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--benefit-border-color': field()?.controlStyle?.borderColor ,\r\n}\"\r\n>\r\n <div class=\"d-flex justify-content-between\">\r\n <span class=\"b1-bold\" *ngIf=\"field()?.isShowLabel\">{{ field()?.label }}</span>\r\n <button class=\"add-card-button\">+ Add</button>\r\n <button class=\"remove-card-button\" *ngIf=\"false\">x Remove</button>\r\n </div>\r\n <div class=\"mt-2\">\r\n <img\r\n src=\"https://cdn.godigit.com/retail-life/tabler_wheelchair.png\"\r\n alt=\"\"\r\n />\r\n <span class=\"b3-regular mx-2\">Policy Continuance Benefit on Death</span>\r\n <img src=\"https://cdn.godigit.com/retail-life/info-button-lib.svg\" alt=\"\" />\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input} from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-loader',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './loader.component.html',\r\n styleUrl: './loader.component.css'\r\n})\r\nexport class LoaderComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div\r\n class=\"loader-overlay\"\r\n *ngIf=\"field() && field()?.isVisible\"\r\n [ngStyle]=\"field()?.configData?.loaderCSS\"\r\n>\r\n <div\r\n class=\"loader-card\"\r\n [ngStyle]=\"field()?.configData?.cardCSS\"\r\n >\r\n <ng-container *ngIf=\"field()?.configData?.imageURL; else defaultLoader\">\r\n <img\r\n [src]=\"field()?.configData?.imageURL\"\r\n [ngStyle]=\"field()?.configData?.imageCSS\"\r\n alt=\"Loader\"\r\n />\r\n <div\r\n class=\"loader-text\"\r\n [ngStyle]=\"field()?.configData?.textCSS\"\r\n >\r\n {{ field()?.configData?.text }}\r\n </div>\r\n </ng-container>\r\n <ng-template #defaultLoader>\r\n <div class=\"loader\">\r\n <span></span>\r\n <span></span>\r\n <span></span>\r\n </div>\r\n <div\r\n class=\"loader-text\"\r\n [ngStyle]=\"field()?.configData?.textCSS\"\r\n >\r\n {{ field()?.configData?.text }}\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-warning-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './warning-snackbar.component.html',\r\n styleUrl: './warning-snackbar.component.css'\r\n})\r\nexport class WarningSnackbarComponent {\r\nfield : any = input.required<any>();\r\nwarningObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.warningObj = this.masterService.snackbars.find((item: any) => item.type === 'Warning');\r\n}\r\n}\r\n","<div [ngClass]=\"warningObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"warningObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"warningObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"warningObj.labelCSS\">{{warningObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"warningObj.messageCSS\">{{warningObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"warningObj.closeIconCSS\" [src]=\"warningObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-success-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './success-snackbar.component.html',\r\n styleUrl: './success-snackbar.component.css'\r\n})\r\nexport class SuccessSnackbarComponent {\r\nfield : any = input.required<any>();\r\nsuccessObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.successObj = this.masterService.snackbars.find((item: any) => item.type === 'Success');\r\n}\r\n}\r\n","<div [ngClass]=\"successObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"successObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"successObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"successObj.labelCSS\">{{successObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"successObj.messageCSS\">{{successObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"successObj.closeIconCSS\" [src]=\"successObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\n\r\n@Component({\r\n selector: 'lib-neutral-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './neutral-snackbar.component.html',\r\n styleUrl: './neutral-snackbar.component.css'\r\n})\r\nexport class NeutralSnackbarComponent {\r\nfield : any = input.required<any>();\r\nneutralObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.neutralObj = this.masterService.snackbars.find((item: any) => item.type === 'Neutral');\r\n}\r\n}\r\n","<div [ngClass]=\"neutralObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"neutralObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"neutralObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"neutralObj.labelCSS\">{{neutralObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"neutralObj.messageCSS\">{{neutralObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"neutralObj.closeIconCSS\" [src]=\"neutralObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>","import { Component, input } from '@angular/core';\r\nimport { MasterControlService } from '../master-control.service';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n selector: 'lib-error-snackbar',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './error-snackbar.component.html',\r\n styleUrl: './error-snackbar.component.css'\r\n})\r\nexport class ErrorSnackbarComponent {\r\nfield : any = input.required<any>();\r\nerrorObj:any;\r\n\r\nconstructor(public masterService : MasterControlService) {\r\n this.errorObj = this.masterService.snackbars.find((item: any) => item.type === 'Error');\r\n}\r\n}\r\n","<div [ngClass]=\"errorObj.toasterCSS\">\r\n <div class=\"d-flex justify-content-between\">\r\n <div class=\"d-flex gap-3\">\r\n <span>\r\n <img\r\n [src]=\"errorObj.imageURL\"\r\n alt=\"\"\r\n class=\"mt-1\"\r\n [ngClass]=\"errorObj.imageCSS\"\r\n />\r\n </span>\r\n <span class=\"mb-2\">\r\n <p class=\"mb-2\" [ngClass]=\"errorObj.labelCSS\">{{errorObj.labelText}}</p>\r\n <p class=\"m-0\" [ngClass]=\"errorObj.messageCSS\">{{errorObj.messageText}}</p>\r\n </span>\r\n </div>\r\n <div >\r\n <img class=\"cross\" [ngClass]=\"errorObj.closeIconCSS\" [src]=\"errorObj.closeIconImageURL\" alt=\"\">\r\n </div>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-grey-label',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './grey-label.component.html',\r\n styleUrl: './grey-label.component.css'\r\n})\r\nexport class GreyLabelComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<div>\r\n <span class=\"bold-label\" [ngStyle]=\"{\r\n'--master-bold-label-font-color': field()?.controlStyle?.color,\r\n'--master-bold-label-font-size': field()?.controlStyle?.fontSize,\r\n'--master-bold-label-font-weight': field()?.controlStyle?.fontWeight\r\n}\">{{field()?.label}}</span>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input, OnInit } from '@angular/core';\r\nimport { DomSanitizer, SafeResourceUrl } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'lib-iframe',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './iframe.component.html',\r\n styleUrl: './iframe.component.css'\r\n})\r\nexport class IframeComponent implements OnInit {\r\n field: any = input.required<any>();\r\n safeUrl: SafeResourceUrl | null = null;\r\n\r\n constructor(private sanitizer: DomSanitizer) {}\r\n\r\n ngOnInit() {\r\n if (this.field() && this.field().imageUrl) {\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.field().imageUrl);\r\n }\r\n }\r\n\r\n getIframeUrl() {\r\n let iframeUrl : any = null;\r\n if (this.field() && this.field().imageUrl) {\r\n iframeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(this.field().imageUrl);\r\n }\r\n return iframeUrl;\r\n }\r\n\r\n}\r\n","<div *ngIf=\"field().imageUrl\">\r\n <iframe [id]=\"field().fieldName\" width=\"100%\" height=\"500px\" style=\"border: none \"></iframe>\r\n <!-- <object [data]=\"field().imageUrl\" width=\"600\" height=\"400\">\r\n <embed [src]=\"field().imageUrl\" width=\"600\" height=\"400\"/>\r\n Error: Embedded data could not be displayed.\r\n </object> -->\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatButtonToggleModule } from '@angular/material/button-toggle';\r\n\r\n@Component({\r\n selector: 'lib-toggle-button',\r\n standalone: true,\r\n imports: [MatButtonToggleModule, CommonModule],\r\n templateUrl: './toggle-button.component.html',\r\n styleUrl: './toggle-button.component.css'\r\n})\r\nexport class ToggleButtonComponent {\r\n field : any = input.required<any>();\r\n}\r\n","<div style=\"position: relative\" [ngClass]=\"field()?.cssClass\">\r\n <mat-button-toggle-group\r\n [ngStyle]=\"{\r\n '--toggle-button-width': field()?.controlStyle?.width ,\r\n }\"\r\n name=\"fontStyle\"\r\n class=\"custom-mat-toggle\"\r\n aria-label=\"Font Style\"\r\n *ngIf=\"field() && field()?.isVisible && field()?.configData?.options\"\r\n >\r\n @for (data of field()?.configData?.options; track $index) {\r\n <mat-button-toggle [value]=\"data.value\"\r\n >{{ data.label }}\r\n <img\r\n *ngIf=\"data.imgUrl\"\r\n [src]=\"data.imgUrl\"\r\n alt=\"\"\r\n class=\"toggle-img mx-1\"\r\n />\r\n </mat-button-toggle>\r\n <div class=\"top-green-card\" *ngIf=\"data.toggleTopText\">\r\n <span class=\"second-box\">\r\n <img\r\n class=\"green-card-img\"\r\n *ngIf=\"data.topImage\"\r\n [src]=\"data.topImage\"\r\n alt=\"\"\r\n />\r\n <span>{{ data.toggleTopText }}</span>\r\n </span>\r\n </div>\r\n }\r\n </mat-button-toggle-group>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-pay-get-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './pay-get-card.component.html',\r\n styleUrl: './pay-get-card.component.css'\r\n})\r\nexport class PayGetCardComponent {\r\nfield: any = input.required<any>();\r\n @Input() payAmount: any = '₹6,00,000';\r\n @Input() premiumAmount: any= '₹10,000';\r\n @Input() ptValue: any= 5;\r\n @Input() years: any= '2030';\r\n @Input() frequency: any= 'month';\r\n}\r\n","<div\r\n class=\"d-flex justify-content-between pay-card\"\r\n [ngStyle]=\"{\r\n'--pay-card-border-color': field()?.controlStyle?.borderColor ,\r\n'--pay-card-border-width': field()?.controlStyle?.borderWidth ,\r\n'--pay-card-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--pay-card-bg-color': field()?.controlStyle?.background ,\r\n'--pay-card-width': field()?.controlStyle?.width ,\r\n }\"\r\n>\r\n <div class=\"text-center mx-2\">\r\n <span class=\"bold-label\">Pay</span> <br />\r\n <span class=\"grey-label\">{{payAmount}}</span>\r\n </div>\r\n <div class=\"premium-card\">\r\n <span class=\"light-label\"><b class=\"bold-label\">{{premiumAmount}}</b>/ {{frequency}}</span>\r\n <br />\r\n <span class=\"grey-label\">for {{ptValue}} years (till {{years}})</span>\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-in-built-benefit',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './in-built-benefit.component.html',\r\n styleUrl: './in-built-benefit.component.css',\r\n})\r\nexport class InBuiltBenefitComponent {\r\n field: any = input.required<any>();\r\n\r\n @Input() premiumAmount: any = '₹1,00,000';\r\n @Input() premiumAmountShort: any = '1L';\r\n}\r\n","<div class=\"d-flex in-built-card\"\r\n [ngStyle]=\"{\r\n'--inbuilt-card-border-color': field()?.controlStyle?.borderColor ,\r\n'--inbuilt-card-border-width': field()?.controlStyle?.borderWidth ,\r\n'--inbuilt-card-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--inbuilt-card-bg-color': field()?.controlStyle?.background ,\r\n'--inbuilt-card-width': field()?.controlStyle?.width ,\r\n }\"\r\n>\r\n <p class=\"w-100 top-box\">\r\n <span class=\"top-benefit-card\">In-built Benefit</span>\r\n </p>\r\n <div>\r\n <span class=\"premium-header\">Return of Premium</span> <br />\r\n <span class=\"benefit-text normal-text\"\r\n >Customer can get their premiums back on\r\n <b class=\"bold-text\"\r\n >diagnosis of Critical Illness (CI) or Total and Permanent Disability\r\n (TPD) before the age of 80.</b\r\n ></span\r\n >\r\n <br />\r\n <span class=\"premium\"\r\n ><b>{{ premiumAmount }}</b> ({{ premiumAmountShort }})</span\r\n >\r\n </div>\r\n <div class=\"m-auto\">\r\n <img *ngIf=\"field()?.imageUrl\" [src]=\"field().imageUrl\" alt=\"\" />\r\n </div>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-other-benefits',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './other-benefits.component.html',\r\n styleUrl: './other-benefits.component.css'\r\n})\r\nexport class OtherBenefitsComponent {\r\n field: any = input.required<any>();\r\n}\r\n","<div class=\"other-benefit-card d-flex gap-2\"\r\n [ngStyle]=\"{\r\n'--other-benefit-color-border-color': field()?.controlStyle?.borderColor ,\r\n'--other-benefit-color-border-width': field()?.controlStyle?.borderWidth ,\r\n'--other-benefit-color-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--other-benefit-color-bg-color': field()?.controlStyle?.background\r\n }\"\r\n>\r\n <p class=\"w-100 top-box\">\r\n <span class=\"top-benefit-card\">Other Benefit</span>\r\n </p>\r\n @for (data of field()?.configData?.otherBenefits; track $index) {\r\n <div class=\"sub-benefit-card\">\r\n <div class=\"d-flex gap-2\">\r\n <img [src]=\"data.imageUrl\" alt=\"\" />\r\n <span class=\"header-txt\">{{ data.headerText }}</span>\r\n </div>\r\n <span [innerHTML]=\"data.htmlInnerText\"></span>\r\n </div>\r\n }\r\n</div>\r\n","import { Component, input, Input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-annuity-rate-logo',\r\n standalone: true,\r\n imports: [],\r\n templateUrl: './annuity-rate-logo.component.html',\r\n styleUrl: './annuity-rate-logo.component.css'\r\n})\r\nexport class AnnuityRateLogoComponent {\r\nfield: any = input.required<any>();\r\n@Input() ratePercent: any = '7%';\r\n}\r\n","<div>\r\n <span class=\"annuity-box\">\r\n <span class=\"annuity-percent\">{{ ratePercent }}</span>\r\n <img src=\"https://cdn.godigit.com/retail-life/annuity-rate.svg\" alt=\"\" />\r\n </span>\r\n</div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatIconModule } from '@angular/material/icon';\r\n\r\n@Component({\r\n selector: 'lib-discount-v2',\r\n standalone: true,\r\n imports: [MatIconModule , CommonModule],\r\n templateUrl: './discount-v2.component.html',\r\n styleUrl: './discount-v2.component.css'\r\n})\r\nexport class DiscountV2Component {\r\nfield: any = input.required<any>();\r\n}\r\n","<div class=\"px-3 py-2 discount-card-v2\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"\r\n{\r\n '--discount-design-border-width': field()?.controlStyle?.borderWidth,\r\n '--discount-design-border-color': field()?.controlStyle?.borderColor ,\r\n '--discount-design-border-style': field()?.controlStyle?.borderStyle ,\r\n '--discount-design-width': field()?.controlStyle?.width ,\r\n '--discount-design-border-radius': field()?.controlStyle?.borderRadius ,\r\n '--discount-design-bg': field()?.controlStyle?.background ,\r\n}\">\r\n <div class=\"mb-2 discount-heading\" [ngStyle]=\"\r\n{\r\n '--discount-heading-font-weight': field()?.controlStyle?.fontWeight ,\r\n '--discount-heading-font-size': field()?.controlStyle?.fontSize ,\r\n '--discount-heading-font-color': field()?.controlStyle?.color\r\n}\">{{field()?.label}}</div>\r\n <div>\r\n <button class=\"px-2 mt-1 discount-btn-remove\"><div>Remove</div> <mat-icon class=\"pt-1 remove-btn-cross\">close</mat-icon></button>\r\n </div>\r\n</div>\r\n\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-label-value-card',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './label-value-card.component.html',\r\n styleUrl: './label-value-card.component.css'\r\n})\r\nexport class LabelValueCardComponent {\r\nfield : any = input.required<any>();\r\n\r\nngOnInit(){}\r\n}\r\n","<div class=\"labelValueCard\">\r\n <div class=\"labelHead\">\r\n <span class=\"master-labelValue\" [ngStyle]=\"{\r\n '--master-heading-font-color': field()?.controlStyle?.color,\r\n '--master-heading-font-size': field()?.controlStyle?.fontSize,\r\n '--master-heading-font-weight': field()?.controlStyle?.fontWeight\r\n }\">{{field()?.label}}</span>\r\n </div>\r\n <div class=\"labelValue\">\r\n <span>{{field()?.placeHolder}}</span>\r\n </div>\r\n</div>","import { GoogleMapsModule } from '@angular/google-maps';\r\nimport { Component, ElementRef, Input, OnInit, ViewChild, NgZone, AfterViewInit, input } from '@angular/core';\r\nimport questionsResponse from './questions.json'\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { TextboxComponent } from '../textbox/textbox.component';\r\nimport { RadioComponent } from '../radio/radio.component';\r\nimport { CheckboxComponent } from '../checkbox/checkbox.component';\r\nimport { SelectComponent } from '../select/select.component';\r\nimport { DobComponent } from '../dob/dob.component';\r\nimport { UploadComponent } from '../upload/upload.component';\r\nimport { MultipleSelectComponent } from '../multiple-select/multiple-select.component';\r\n\r\n@Component({\r\n selector: 'lib-medial-questions',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, ReactiveFormsModule, TextboxComponent, RadioComponent, CheckboxComponent, SelectComponent, DobComponent, UploadComponent, MultipleSelectComponent, GoogleMapsModule],\r\n templateUrl: './medial-questions.component.html',\r\n styleUrl: './medial-questions.component.css'\r\n})\r\nexport class MedialQuestionsComponent implements OnInit , AfterViewInit{\r\n @Input() medialQuestionResponse: any = questionsResponse;\r\n @ViewChild('addressInput') addressInput!: ElementRef<HTMLInputElement>;\r\n private autocomplete!: google.maps.places.Autocomplete;\r\n field : any = input.required<any>();\r\n questionList : any = [];\r\n currentCoordinates : any = {};\r\n personUwResponseObj : any = [];\r\n center: google.maps.LatLngLiteral = { lat: 40.73061, lng: -73.935242 };\r\n latitude: any;\r\n longitude: any;\r\n zoom:any;\r\n marker : any = {}\r\n\r\n personUwAnswers : any = {\r\n medicalQuestionsHeightUnit: 'FEET',\r\n };\r\n medQuestionObj : any = {};\r\n listOfDomainValuesForCheckBox : any = [];\r\n medicalQuestionsFeetList : any = [];\r\n medicalQuestionsInchesList : any = [];\r\n questionHeader: any = ['eia details', 'abha details', 'pep details'];\r\n medicalQuestionsHeightUnitTypes: any = [\r\n {\r\n label: 'Cm',\r\n value: 'CM'\r\n },\r\n {\r\n label: 'Feet',\r\n value: 'FEET'\r\n }\r\n ]\r\n showDropdown = false;\r\naddressSuggestions: any[] = [];\r\nhoveredIndex = -1;\r\nsearchTimeout: any;\r\n\r\n constructor( public ngZone: NgZone) {\r\n console.log('medialQuestionResponseeeeee', this.medialQuestionResponse);\r\n }\r\n\r\n ngOnInit() {\r\n if ('geolocation' in navigator) {\r\n navigator.geolocation.getCurrentPosition((position) => {\r\n this.latitude = position.coords.latitude;\r\n this.longitude = position.coords.longitude;\r\n this.zoom = 15;\r\n this.currentCoordinates = {\r\n lat : this.latitude,\r\n lng : this.longitude,\r\n }\r\n this.center = {...this.currentCoordinates};\r\n });\r\n }\r\n this.preparePersonUwQuestionsObj();\r\n\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initializeAutocomplete();\r\n }\r\n\r\n private initializeAutocomplete(): void {\r\n this.autocomplete = new google.maps.places.Autocomplete(\r\n this.addressInput?.nativeElement,\r\n {\r\n types: ['address'],\r\n componentRestrictions: { country: 'IN' },\r\n fields: ['place_id', 'geometry', 'name', 'formatted_address']\r\n }\r\n );\r\n\r\n this.autocomplete.addListener('place_changed', () => {\r\n this.ngZone.run(() => {\r\n this.onPlaceSelected();\r\n });\r\n });\r\n }\r\n\r\n private onPlaceSelected(): void {\r\n const place = this.autocomplete.getPlace();\r\n\r\n if (!place.geometry || !place.geometry.location) {\r\n console.log('No details available for input: ', place.name);\r\n return;\r\n }\r\n\r\n const location = place.geometry.location;\r\n this.center = {\r\n lat: location.lat(),\r\n lng: location.lng()\r\n };\r\n this.currentCoordinates = this.center;\r\n\r\n if (place.geometry.viewport) {\r\n this.zoom = 15;\r\n } else {\r\n this.zoom = 13;\r\n }\r\n\r\n console.log('Selected place:', {\r\n name: place.name,\r\n address: place.formatted_address,\r\n coordinates: this.center\r\n });\r\n\r\n this.storeSelectedAddress(place);\r\n }\r\n\r\n\r\n private storeSelectedAddress(place: google.maps.places.PlaceResult): void {\r\n const addressData = {\r\n placeId: place.place_id,\r\n name: place.name,\r\n formattedAddress: place.formatted_address,\r\n coordinates: this.center\r\n };\r\n\r\n }\r\n\r\n searchAddress(address: string): void {\r\n const geocoder = new google.maps.Geocoder();\r\n\r\n geocoder.geocode({ address: address }, (results, status) => {\r\n if (status === 'OK' && results && results[0]) {\r\n const location = results[0].geometry.location;\r\n this.ngZone.run(() => {\r\n this.center = {\r\n lat: location.lat(),\r\n lng: location.lng()\r\n };\r\n this.currentCoordinates = this.center;\r\n this.zoom = 15;\r\n });\r\n } else {\r\n console.log('Geocode was not successful for the following reason: ' + status);\r\n }\r\n });\r\n }\r\n\r\n onAddressInputKeyup(event: any) {\r\n const query = event.target.value;\r\n\r\n // Clear previous timeout\r\n if (this.searchTimeout) {\r\n clearTimeout(this.searchTimeout);\r\n }\r\n\r\n // Handle arrow key navigation\r\n if (event.key === 'ArrowDown') {\r\n this.hoveredIndex = Math.min(this.hoveredIndex + 1, this.addressSuggestions.length - 1);\r\n return;\r\n } else if (event.key === 'ArrowUp') {\r\n this.hoveredIndex = Math.max(this.hoveredIndex - 1, -1);\r\n return;\r\n } else if (event.key === 'Enter') {\r\n if (this.hoveredIndex >= 0 && this.addressSuggestions[this.hoveredIndex]) {\r\n this.selectAddress(this.addressSuggestions[this.hoveredIndex]);\r\n }\r\n return;\r\n } else if (event.key === 'Escape') {\r\n this.showDropdown = false;\r\n return;\r\n }\r\n\r\n if (query.length < 2) {\r\n this.addressSuggestions = [];\r\n this.showDropdown = false;\r\n return;\r\n }\r\n\r\n this.searchTimeout = setTimeout(() => {\r\n this.searchAddresses(query);\r\n }, 300);\r\n}\r\n\r\nsearchAddresses(query: string) {\r\n // Replace this with your actual address search API call\r\n // For example, using Google Places API:\r\n\r\n const service = new google.maps.places.AutocompleteService();\r\n service.getPlacePredictions(\r\n {\r\n input: query,\r\n types: ['address']\r\n },\r\n (predictions, status) => {\r\n if (status === google.maps.places.PlacesServiceStatus.OK && predictions) {\r\n this.addressSuggestions = predictions.map(prediction => ({\r\n place_id: prediction.place_id,\r\n main_text: prediction.structured_formatting.main_text,\r\n secondary_text: prediction.structured_formatting.secondary_text,\r\n description: prediction.description\r\n }));\r\n this.showDropdown = true;\r\n this.hoveredIndex = -1;\r\n } else {\r\n this.addressSuggestions = [];\r\n this.showDropdown = false;\r\n }\r\n }\r\n );\r\n}\r\n\r\nselectAddress(suggestion: any) {\r\n const addressInput = document.querySelector('#addressInput') as HTMLInputElement;\r\n if (addressInput) {\r\n addressInput.value = suggestion.description;\r\n }\r\n\r\n const service = new google.maps.places.PlacesService(document.createElement('div'));\r\n service.getDetails(\r\n {\r\n placeId: suggestion.place_id,\r\n fields: ['geometry', 'formatted_address']\r\n },\r\n (place, status) => {\r\n if (status === google.maps.places.PlacesServiceStatus.OK && place) {\r\n const lat = place.geometry?.location?.lat();\r\n const lng = place.geometry?.location?.lng();\r\n\r\n if (lat !== undefined && lng !== undefined) {\r\n this.longitude = lng;\r\n this.latitude = lat;\r\n\r\n this.center = { lat, lng };\r\n this.currentCoordinates = this.center;\r\n }\r\n }\r\n }\r\n );\r\n\r\n this.showDropdown = false;\r\n this.addressSuggestions = [];\r\n}\r\n\r\nonInputBlur() {\r\n setTimeout(() => {\r\n this.showDropdown = false;\r\n }, 200);\r\n}\r\n\r\n preparePersonUwQuestionsObj() {\r\n this.questionList = [];\r\n let data : any = questionsResponse;\r\n this.listOfDomainValuesForCheckBox = [];\r\n\r\n\r\n if (!this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n let personUwIdArray: any = [];\r\n data['questionsResponse'].forEach((singleQuestionObj: any) => {\r\n personUwIdArray.push(singleQuestionObj['personUWId']);\r\n });\r\n\r\n if (!this.checkIfValueIsEmpty(data) && !this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n\r\n if (!this.checkIfValueIsEmpty(data['questionsResponse'])) {\r\n let distinctSteps: any = [];\r\n data['questionsResponse'].forEach((singlePersonObject: any) => {\r\n if (!this.checkIfValueIsEmpty(singlePersonObject['questionList'])) {\r\n singlePersonObject['questionList'].forEach((singleQuestion: any) => {\r\n singleQuestion['domainValues'] = data['domainValues'][singleQuestion['domainName']];\r\n\r\n singleQuestion['field'] = this.getField(singleQuestion);\r\n\r\n if (singleQuestion['cammundaQuestionCode'] === 'PAN') {\r\n singleQuestion['validations'] = '{\"Type\":\"AlphaNumeric\",\"MinValue\":\"10\",\"MaxValue\":\"10\",\"regexPattern\":\"/^([a-zA-Z]){5}([0-9]){4}([a-zA-Z]){1}?$/\"}';\r\n }\r\n // if (singleQuestion['cammundaQuestionCode'] === 'FtcaCntcDetls') {\r\n // singleQuestion['validations'] = '{\"customValidation\":[{\"country\":\"IN\",\"MinValue\":\"10\",\"MaxValue\":\"10\",\"regexPattern\":\"((^[6-9]){1}([0-9]){9}$)\"},{\"country\":\"OTHER\",\"MinValue\":\"5\",\"MaxValue\":\"14\"}]}';\r\n // }\r\n if (\r\n singleQuestion['questionType'] === 'CHECKBOX' &&\r\n !this.checkIfValueIsEmpty(singleQuestion['questionRelation'])\r\n ) {\r\n singleQuestion['questionRelation'].forEach((singleQuestionRelationObj: any) => {\r\n let nextQuestionObject: any = singlePersonObject['questionList'].filter(\r\n (object: any) => object['questionId'] === singleQuestionRelationObj['nextQuestionId']\r\n );\r\n if (nextQuestionObject.length > 0) {\r\n nextQuestionObject[0]['answeredValue'] = singleQuestionRelationObj['parentQuestionValue'];\r\n }\r\n });\r\n }\r\n\r\n if (singleQuestion['questionType'] === 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(singleQuestion['domainName']) && !this.checkIfValueIsEmpty(data['domainValues'][singleQuestion['domainName']])) {\r\n data['domainValues'][singleQuestion['domainName']].forEach((singleDomainValue: any) => {\r\n if (!this.checkIfValueIsEmpty(singleDomainValue['domainInternalValue'])) {\r\n this.listOfDomainValuesForCheckBox.push(singleDomainValue['domainInternalValue']);\r\n }\r\n });\r\n }\r\n }\r\n\r\n if (!distinctSteps.includes(singleQuestion['step'])) {\r\n distinctSteps.push(singleQuestion['step']);\r\n }\r\n\r\n singleQuestion['isMedicalSubQuestion'] = false;\r\n });\r\n\r\n singlePersonObject['questionList'].forEach((question: any) => {\r\n question['isShowQuestionInUI'] = false;\r\n if (question['questionType'] === 'IMAGE TEXT') {\r\n question['questionText'] = question['questionText'].replaceAll('\\\\n', '<br>');\r\n }\r\n\r\n if (question['cammundaQuestionCode'] === 'QHTF') {\r\n this.medicalQuestionsFeetList = question['domainValues'];\r\n this.medQuestionObj['QHTF'] = question;\r\n this.medQuestionObj['QHTF']['field']['isShowLabel'] = false;\r\n\r\n }\r\n if (question['cammundaQuestionCode'] === 'QHTI') {\r\n this.medicalQuestionsInchesList = question['domainValues']\r\n this.medQuestionObj['QHTI'] = question;\r\n this.medQuestionObj['QHTI']['field']['isShowLabel'] = false;\r\n }\r\n\r\n if (question['questionType'] === 'DECLARATION') {\r\n\r\n if (question['cammundaQuestionCode'] === 'recvSftCopy') {\r\n // this.personUwAnswers[singlePersonObject['role']][] = false;\r\n question['domainValues'] = [];\r\n question['domainValues'].push({\r\n domainInternalValue: question['questionId'],\r\n domainUiValue: 'N'\r\n });\r\n }\r\n question['domainValues'] = [];\r\n question['domainValues'].push({\r\n domainInternalValue: question['questionId'],\r\n domainUiValue: 'Y'\r\n });\r\n }\r\n\r\n if (question['cammundaQuestionCode'] === 'hardCopyLang') {\r\n question['questionType'] = 'HARD COPY';\r\n }\r\n\r\n\r\n\r\n\r\n\r\n });\r\n\r\n singlePersonObject['questionList'].sort(\r\n (a: any, b: any) => a['step'] - b['step'] || a['displayOrder'] - b['displayOrder']\r\n );\r\n }\r\n\r\n\r\n let questionsListForLA: any = [];\r\n distinctSteps.forEach((steps: any) => {\r\n\r\n let filteredObj: any = singlePersonObject['questionList'].filter((singleQuestion: any) => singleQuestion['step'] === steps);\r\n let obj: any = {\r\n step: steps,\r\n personUWId: singlePersonObject['personUWId'].toString(),\r\n questions: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj : [],\r\n sectionName: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj[0]['title'] : '',\r\n isMedicalSubQuestion: false,\r\n showSection: true\r\n };\r\n if (!this.checkIfValueIsEmpty(filteredObj)) {\r\n // Hard Copy and Map question\r\n let filteredHardCopyQuestion: any = filteredObj.filter((singleQuestion: any) => singleQuestion['cammundaQuestionCode'] === 'recvSftCopy');\r\n if (!this.checkIfValueIsEmpty(filteredHardCopyQuestion)) {\r\n obj['questions'].push({\r\n questionType: \"MAP\",\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredHardCopyQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'Y'\r\n }\r\n })\r\n }\r\n\r\n // if NRI then passport upload is required\r\n let filteredNationalityQuestion: any = filteredObj.filter((singleQuestion: any) => singleQuestion['cammundaQuestionCode'] === 'Nationality');\r\n if (!this.checkIfValueIsEmpty(filteredNationalityQuestion)) {\r\n singlePersonObject['questionList'].push({\r\n questionType: \"PASSPORT_UPLOAD\",\r\n optionalQuestion: 'N',\r\n questionText: 'Passport Details ',\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredNationalityQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'forgnNational'\r\n }\r\n });\r\n obj['questions'].push({\r\n questionType: \"PASSPORT_UPLOAD\",\r\n optionalQuestion: 'N',\r\n questionText: 'Passport Details ',\r\n isShowQuestionInUI: true,\r\n parentQuestionRelation: {\r\n parentQuestionId: filteredNationalityQuestion[0]['questionId'],\r\n parentQuestionAnswer: 'forgnNational'\r\n }\r\n });\r\n }\r\n }\r\n questionsListForLA.push(obj);\r\n });\r\n // let lifeAssuredObjectIndexInMaster: any = this.questionList.findIndex((singleObj: any) => singleObj['role'] === singlePersonObject['role']);\r\n // if (lifeAssuredObjectIndexInMaster !== this.numberMinusOne) {\r\n this.questionList = questionsListForLA;\r\n // }\r\n\r\n\r\n\r\n });\r\n this.personUwResponseObj = data['questionsResponse'];\r\n\r\n }\r\n }\r\n }\r\n\r\n this.removeSubQuestionValues();\r\n\r\n this.medQuestionObj['heightObjectTypes'] = {\r\n \"controlStyle\": {},\r\n \"fieldName\": null,\r\n \"label\": \"feet / inches\",\r\n \"placeHolder\": \"\",\r\n \"metaId\": \"\",\r\n \"isVisible\": true,\r\n \"isDisable\": false,\r\n \"validators\": {\r\n \"isRequired\": false,\r\n \"requiredMessage\": \"This field cannot be empty\",\r\n \"minLength\": null,\r\n \"minLengthMessage\": null,\r\n \"maxLength\": 150,\r\n \"maxLengthMessage\": null,\r\n \"pattern\": null,\r\n \"patternMessage\": \"\"\r\n },\r\n \"options\": [\r\n {\r\n \"label\": \"Cm\",\r\n \"value\": \"CM\"\r\n },\r\n {\r\n \"label\": \"Feet\",\r\n \"value\": \"FEET\"\r\n }\r\n ],\r\n \"cssClass\": null,\r\n \"value\": null,\r\n \"style\": null,\r\n \"imageUrl\": null,\r\n \"configData\": {},\r\n \"metaDataObj\": null,\r\n \"isShowLabel\": false,\r\n \"isMasterControl\": false,\r\n \"controlType\": \"select\"\r\n }\r\n\r\n }\r\n\r\n checkIfValueIsEmpty(value: any) {\r\n if (typeof value === 'string') {\r\n value = value.trim();\r\n\r\n }\r\n return (\r\n value === undefined ||\r\n value === null ||\r\n value === '' ||\r\n (value instanceof Array && value.length === 0) ||\r\n JSON.stringify(value) === '{}'\r\n );\r\n }\r\n\r\n getTitleCase(header: any): any {\r\n if (header) {\r\n if (this.questionHeader.includes(header.toLocaleLowerCase())) {\r\n let val = header.split(' ');\r\n return (\r\n val[0].toUpperCase() + ' ' + this.toTitleCase(val[1])\r\n );\r\n } else {\r\n if(header.toUpperCase() === 'FATCA DETAILS'){\r\n return header;\r\n }\r\n return this.toTitleCase(header);\r\n }\r\n }\r\n }\r\n\r\n toTitleCase(value: any) {\r\n if (!this.checkIfValueIsEmpty(value)) {\r\n return value.toString().replace(\r\n /\\w\\S*/g,\r\n (txt: any) => txt[0].toUpperCase() + txt.substr(1).toLowerCase()\r\n );\r\n }\r\n }\r\n\r\n getField(questionObj : any) {\r\n let optionsObj : any = [];\r\n if(questionObj['domainValues']) {\r\n questionObj['domainValues'].forEach((singleOptionValue : any) => {\r\n optionsObj.push({\r\n label : singleOptionValue['domainUiValue'],\r\n value : singleOptionValue['domainInternalValue'],\r\n })\r\n\r\n });\r\n }\r\n return {\r\n configData : this.field()?.configData,\r\n controlStyle: this.field()?.controlStyle,\r\n controlType: questionObj['questionType'] === 'FREE TEXT' ? 'text' : (questionObj['questionType'] === 'RADIO BUTTON' || questionObj['questionType'] === 'ADDMORE')? 'radio' : (questionObj['questionType'] === 'CHECKBOX' || questionObj['questionType'] === 'DECLARATION') ? 'checkbox' : questionObj['questionType'] === 'CALENDAR' ? 'date' : questionObj['questionType'] === 'DROPDOWN' ? 'select' : questionObj['questionType'] === 'DOCUPLOAD' ? 'file' : '',\r\n fieldName : questionObj['cammundaQuestionCode'],\r\n isDisable : false,\r\n label : questionObj['questionText'],\r\n placeHolder : questionObj['questionText'],\r\n validators : {\r\n isRequired : questionObj['optionalQuestion'] === 'N' ? true : false,\r\n },\r\n isVisible : true,\r\n options : optionsObj,\r\n isShowLabel : true,\r\n }\r\n }\r\n\r\n removeSubQuestionValues(question?: any) {\r\n if (!this.checkIfValueIsEmpty(this.questionList)) {\r\n this.questionList.forEach((singleSection: any) => {\r\n if (!this.checkIfValueIsEmpty(singleSection['questions'])) {\r\n singleSection['questions'].forEach((singleQuestion: any) => {\r\n if (!this.showQuestion(singleQuestion)) {\r\n singleQuestion['isShowQuestionInUI'] = false;\r\n // if (singleQuestion['questionType'] === 'CHECKBOX' && !this.checkIfValueIsEmpty(singleQuestion['domainValues'])) {\r\n // singleQuestion['domainValues'].forEach((domainValueObj: any) => {\r\n // if (!this.checkIfValueIsEmpty(this.personUwAnswers[domainValueObj['domainInternalValue']])) {\r\n // delete this.personUwAnswers[domainValueObj['domainInternalValue']];\r\n // }\r\n // });\r\n // }\r\n // if (singleQuestion['questionType'] !== 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']])) {\r\n delete this.personUwAnswers[singleQuestion['questionId']];\r\n }\r\n // }\r\n } else {\r\n singleQuestion['isShowQuestionInUI'] = true;\r\n }\r\n\r\n if (singleQuestion['questionType'] === 'CHECKBOX') {\r\n if (!this.checkIfValueIsEmpty(singleQuestion['domainValues'])) {\r\n let isNoneInDomainValues: any = singleQuestion['domainValues'].filter((singleObj: any) => singleObj['domainUiValue'].toUpperCase() === 'NONE');\r\n singleQuestion['domainValues'].forEach((singleDomainValue: any) => {\r\n if (!this.checkIfValueIsEmpty(isNoneInDomainValues) && !this.checkIfValueIsEmpty(this.personUwAnswers[isNoneInDomainValues[0]['domainInternalValue']]) && this.personUwAnswers[isNoneInDomainValues[0]['domainInternalValue']]) {\r\n // none is selected\r\n singleQuestion['domainValues'].forEach((singleDomainValue: any) => {\r\n // remove all selected checkbox questions\r\n if (singleDomainValue.domainUiValue.toUpperCase() !== 'NONE') {\r\n singleDomainValue.isDisabled = true;\r\n delete this.personUwAnswers[singleDomainValue['domainInternalValue']];\r\n }\r\n });\r\n } else {\r\n singleDomainValue.isDisabled = false;\r\n }\r\n });\r\n }\r\n }\r\n });\r\n }\r\n // let isSectionExistsInBlockedList: any = this.isBlockedQuestionsList.filter((singleBlockedObj: any) => singleBlockedObj['sectionTitle'].trim() === singleSection['sectionName'].trim());\r\n // singleSection['showSection'] = !this.checkIfValueIsEmpty(singleSection['questions'].filter((singleQuestion: any) => singleQuestion['isShowQuestionInUI']))\r\n // if (!this.checkIfValueIsEmpty(isSectionExistsInBlockedList)) {\r\n // if (isSectionExistsInBlockedList[0].isBlockedForCustomerFlow && !this.loadingAgentportal) {\r\n // singleSection['showSection'] = false;\r\n // let filteredIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePersonObj['role']);\r\n // singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][filteredIndex]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = singleSection['showSection'];\r\n // }\r\n // });\r\n // }\r\n // if ((isSectionExistsInBlockedList[0].isBlockedForAgentFlow || sessionStorage.getItem('agentChannel') === 'D20' || sessionStorage.getItem('agentChannel') === 'D05' || sessionStorage.getItem('agentChannel') === 'D06') && this.loadingAgentportal) {\r\n // singleSection['showSection'] = false;\r\n // let filteredIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePersonObj['role']);\r\n // singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][filteredIndex]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = singleSection['showSection'];\r\n // }\r\n // });\r\n // }\r\n // }\r\n let hiddenQuestions: any = this.questionList.filter((singleSectionObj: any) => !singleSectionObj['showSection']);\r\n if (this.checkIfValueIsEmpty(hiddenQuestions)) {\r\n hiddenQuestions.forEach((singleSection: any) => {\r\n singleSection['questions'].forEach((singleQuestionObjInSection: any) => {\r\n singleQuestionObjInSection['isShowQuestionInUI'] = false;\r\n // let filteredQuestion: any = this.personUwResponseObj['questionsResponse'][0]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === singleQuestionObjInSection['questionId']);\r\n // if (!this.checkIfValueIsEmpty(filteredQuestion)) {\r\n // filteredQuestion[0]['isShowQuestionInUI'] = false;\r\n // }\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n this.questionList.sort((a: any, b: any) => a['step'] - b['step']);\r\n\r\n console.log('questions list', this.questionList);\r\n console.log('questions answers', this.personUwAnswers);\r\n\r\n }\r\n\r\n showQuestion(currentQuestion: any) {\r\n let showQuestion: any = false;\r\n let subQuestions: any = [];\r\n // let currentSectionIndex: any = questionsResponse['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === personRole)\r\n // let role = this.personUwResponseObj['questionsResponse'][currentSectionIndex]['role']\r\n\r\n this.personUwResponseObj[0].questionList.forEach((singleQuestion: any) => {\r\n let isSubQuestionObject: any = [];\r\n if (!this.checkIfValueIsEmpty(singleQuestion['questionRelation'])) {\r\n isSubQuestionObject = singleQuestion['questionRelation'].filter(\r\n (questionRelationObj: any) => questionRelationObj['nextQuestionId'] === currentQuestion['questionId']\r\n );\r\n }\r\n if (isSubQuestionObject.length > 0) {\r\n subQuestions.push(singleQuestion);\r\n isSubQuestionObject.forEach((singleSubQuestion: any) => {\r\n if (\r\n (singleQuestion['questionType'] !== 'CHECKBOX' &&\r\n (singleSubQuestion['parentQuestionValue'].toString()[0] !== '!' &&\r\n this.personUwAnswers[singleQuestion['questionId']] ===\r\n singleSubQuestion['parentQuestionValue'])) ||\r\n (singleSubQuestion['parentQuestionValue'].toString()[0] === '!' &&\r\n !this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']]) &&\r\n this.personUwAnswers[singleQuestion['questionId']] !==\r\n singleSubQuestion['parentQuestionValue'].toString().split('!')[\r\n 1\r\n ]) ||\r\n (singleQuestion['questionType'] === 'CHECKBOX' && !this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']]) &&\r\n this.personUwAnswers[singleQuestion['questionId']].filter((singleObj : any) => singleObj['value'] === singleSubQuestion['parentQuestionValue']).length > 0 )\r\n ) {\r\n showQuestion = true;\r\n }\r\n });\r\n }\r\n });\r\n\r\n if (this.checkIfValueIsEmpty(subQuestions) && this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation'])) {\r\n showQuestion = true;\r\n }\r\n if (!this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation']) && !this.checkIfValueIsEmpty(currentQuestion['parentQuestionRelation']['parentQuestionId']) && !this.checkIfValueIsEmpty(this.personUwAnswers[currentQuestion['parentQuestionRelation']['parentQuestionId']]) && this.personUwAnswers[currentQuestion['parentQuestionRelation']['parentQuestionId']] === currentQuestion['parentQuestionRelation']['parentQuestionAnswer']) {\r\n showQuestion = true;\r\n }\r\n if (currentQuestion['questionType'] === 'NODISPLAY') {\r\n showQuestion = false;\r\n }\r\n return showQuestion;\r\n }\r\n}\r\n","\r\n<div *ngFor=\"let section of questionList\">\r\n <div\r\n *ngIf=\"\r\n !checkIfValueIsEmpty(section['questions']) &&\r\n section['showSection']\r\n \"\r\n class=\"card p-3 my-2\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <div *ngFor=\"let questions of section['questions']\">\r\n <!-- <div *ngIf=\"questions['questionType'] === 'IMAGE TEXT'\">\r\n <img [src]=\"questions['sampleS3Link']\" class=\"d-block mx-auto\" [alt]=\"questions['title']\">\r\n <h3 [innerHTML]=\"questions['questionText']\"></h3>\r\n </div> -->\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'FREE TEXT' &&\r\n questions['cammundaQuestionCode'] !== 'QHT' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <label class=\"card-topic d-block\"\r\n >{{ questions[\"questionText\"] }}\r\n <span\r\n *ngIf=\"\r\n questions.optionalQuestion === 'N'\r\n \"\r\n style=\"color: #ee0000\"\r\n >&#42;</span\r\n >\r\n </label>\r\n <div class=\"col-5 px-0\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'HEIGHTINPUT' &&\r\n questions['cammundaQuestionCode'] === 'QHTF' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <label class=\"card-topic d-block\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >&#42;</span\r\n >\r\n </label>\r\n <div\r\n class=\"col-auto px-0 my-0 py-0 heightinput\"\r\n\r\n >\r\n <div\r\n class=\"col-7 py-0 heightInputs\"\r\n style=\"transform: translate(6px, 3px);\"\r\n *ngIf=\"\r\n personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\r\n \"\r\n >\r\n <lib-textbox [field]=\"questions['field']\" />\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" />\r\n </div>\r\n <div\r\n class=\"py-0\"\r\n style=\"display: flex;\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-auto py-0 heightInputs px-1\">\r\n <lib-select [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-auto py-0 heightInputs px-1\">\r\n <lib-select [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-auto py-0 heightInputs px-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div\r\n class=\"row mt-0 pt-0\"\r\n *ngIf=\"\r\n questions['questionType'] === 'MAP' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n\r\n\r\n <div class=\"map-container\">\r\n <div class=\"address-search-container mb-3\">\r\n\r\n <div class=\"row mb-3\">\r\n <div class=\"col-6\">\r\n <label class=\"form-label\">Longitude</label>\r\n <input \r\n type=\"number\" \r\n class=\"form-control\"\r\n [(ngModel)]=\"longitude\"\r\n placeholder=\"Enter longitude\"\r\n step=\"any\"\r\n readonly\r\n >\r\n </div>\r\n <div class=\"col-6\">\r\n <label class=\"form-label\">Latitude</label>\r\n <input \r\n type=\"number\" \r\n class=\"form-control\"\r\n [(ngModel)]=\"latitude\"\r\n placeholder=\"Enter latitude\"\r\n step=\"any\"\r\n readonly\r\n >\r\n </div>\r\n </div>\r\n\r\n <input \r\n #addressInput \r\n type=\"text\" \r\n class=\"form-control\"\r\n placeholder=\"Search for address\"\r\n (keyup)=\"onAddressInputKeyup($event)\"\r\n (focus)=\"showDropdown = true\"\r\n (blur)=\"onInputBlur()\"\r\n autocomplete=\"off\"\r\n >\r\n <div \r\n *ngIf=\"showDropdown && addressSuggestions.length > 0\" \r\n class=\"autocomplete-dropdown position-absolute w-100 mt-1\"\r\n style=\"z-index: 1000; max-height: 200px; overflow-y: auto; background: white; border: 1px solid #ccc; border-radius: 4px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);\"\r\n >\r\n <div \r\n *ngFor=\"let suggestion of addressSuggestions; let i = index\"\r\n class=\"dropdown-item p-2\"\r\n style=\"cursor: pointer; border-bottom: 1px solid #eee;\"\r\n (mousedown)=\"selectAddress(suggestion)\"\r\n (mouseenter)=\"hoveredIndex = i\"\r\n [class.bg-light]=\"hoveredIndex === i\"\r\n >\r\n <div class=\"fw-bold\">{{ suggestion.main_text }}</div>\r\n <small class=\"text-muted\">{{ suggestion.secondary_text }}</small>\r\n </div>\r\n </div>\r\n <small class=\"text-muted\">Start typing to search for addresses</small>\r\n </div>\r\n <google-map [center]=\"center\" [zoom]=\"zoom\">\r\n <map-marker [position]=\"currentCoordinates\"></map-marker>\r\n </google-map>\r\n </div>\r\n </div>\r\n\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n (questions['questionType'] === 'RADIO BUTTON' ||\r\n questions['questionType'] === 'ADDMORE') &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-radio [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'CHECKBOX' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-multiple-select [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DECLARATION' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-checkbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DROPDOWN' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'CALENDAR' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-dob [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <!-- <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'HEIGHTINPUT' &&\r\n questions['cammundaQuestionCode'] === 'QHTF' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n </div> -->\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" />\r\n </div>\r\n\r\n\r\n <div\r\n class=\"\"\r\n *ngIf=\"\r\n questions['questionType'] === 'PASSPORT_UPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <!-- pending -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-page-nudge',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './page-nudge.component.html',\r\n styleUrl: './page-nudge.component.css'\r\n})\r\nexport class PageNudgeComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<div class=\"nudge-container\" *ngIf=\"field() && field()?.isVisible\" [ngStyle]=\"{\r\n'--page-nudge-width': field()?.controlStyle?.borderColor ,\r\n'--page-nudge-height': field()?.controlStyle?.borderWidth ,\r\n'--page-nudge-bg': field()?.controlStyle?.borderRadius ,\r\n'--page-nudge-border-radius': field()?.controlStyle?.background ,\r\n'--page-nudge-border-width': field()?.controlStyle?.focusBorderColor ,\r\n'--page-nudge-border-color': field()?.controlStyle?.focusBorderWidth ,\r\n'--page-nudge-border-style': field()?.controlStyle?.focusBackground\r\n}\">\r\n {{ field()?.label }}\r\n <div class=\"page-fold\"></div>\r\n <div class=\"page-fold-below\"></div>\r\n</div>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport {MatProgressBarModule} from '@angular/material/progress-bar';\r\n\r\n\r\n@Component({\r\n selector: 'lib-progress-bar',\r\n standalone: true,\r\n imports: [MatProgressBarModule , CommonModule],\r\n templateUrl: './progress-bar.component.html',\r\n styleUrl: './progress-bar.component.css'\r\n})\r\nexport class ProgressBarComponent {\r\nfield : any = input.required<any>();\r\n}\r\n","<mat-progress-bar mode=\"determinate\" [value]=\"field()?.value\" [ngStyle]=\"{\r\n'--progress-bar-background-color': field()?.controlStyle?.background ,\r\n'--progress-bar-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--progress-bar-border-color': field()?.controlStyle?.color ,\r\n'--progress-bar-width': field()?.controlStyle?.width ,\r\n'--progress-bar-height': field()?.controlStyle?.height ,\r\n}\"></mat-progress-bar>","import { CommonModule } from '@angular/common';\r\nimport { Component, input } from '@angular/core';\r\nimport { MatExpansionModule } from '@angular/material/expansion';\r\n\r\n@Component({\r\n selector: 'lib-accordian',\r\n standalone: true,\r\n imports: [MatExpansionModule , CommonModule],\r\n templateUrl: './accordian.component.html',\r\n styleUrl: './accordian.component.css'\r\n})\r\nexport class AccordianComponent {\r\n field : any = input.required<any>();\r\nonPanelOpened(): void {\r\n console.log('Panel opened');\r\n}\r\n\r\nonPanelClosed(): void {\r\n console.log('Panel closed');\r\n}\r\n\r\nonExpandedChange(isExpanded: boolean): void {\r\n console.log('Panel expansion changed:', isExpanded);\r\n if (isExpanded) {\r\n // Panel is now expanded\r\n } else {\r\n // Panel is now collapsed\r\n }\r\n}\r\n}\r\n","<mat-accordion \r\n [multi]=\"true\" \r\n [hideToggle]=\"false\"\r\n [displayMode]=\"'default'\"\r\n [togglePosition]=\"'after'\" [ngStyle]=\"{\r\n'--acc-font-color': field()?.controlStyle?.color ,\r\n'--acc-bg-color': field()?.controlStyle?.background ,\r\n'--acc-border-radius': field()?.controlStyle?.borderRadius ,\r\n'--acc-border-width': field()?.controlStyle?.borderWidth ,\r\n'--acc-border-style': field()?.controlStyle?.borderStyle ,\r\n'--acc-border-color': field()?.controlStyle?.borderColor ,\r\n'--acc-font-size': field()?.controlStyle?.fontSize ,\r\n'--acc-font-weight': field()?.controlStyle?.fontWeight \r\n}\">\r\n \r\n <mat-expansion-panel \r\n [expanded]=\"false\"\r\n [disabled]=\"false\"\r\n [hideToggle]=\"false\"\r\n (opened)=\"onPanelOpened()\"\r\n (closed)=\"onPanelClosed()\"\r\n (expandedChange)=\"onExpandedChange($event)\">\r\n \r\n <mat-expansion-panel-header \r\n [collapsedHeight]=\"'48px'\"\r\n [expandedHeight]=\"'64px'\">\r\n \r\n <mat-panel-title>\r\n <span class=\"triangle-icon\" *ngIf=\"field()?.configData?.showLeftArrowIndicator && field()?.configData?.showLeftArrowIndicator === 'true'\"></span>\r\n {{ field()?.label}}\r\n </mat-panel-title>\r\n \r\n <mat-panel-description>\r\n <!-- This is a description of the panel -->\r\n </mat-panel-description>\r\n \r\n </mat-expansion-panel-header>\r\n \r\n <!-- Panel Content -->\r\n <div>\r\n {{ field()?.configData?.accordianContent}}\r\n </div>\r\n \r\n <!-- Action Buttons -->\r\n <!-- <mat-action-row>\r\n <button mat-button color=\"primary\">Save</button>\r\n <button mat-button color=\"warn\">Cancel</button>\r\n </mat-action-row> -->\r\n \r\n </mat-expansion-panel>\r\n</mat-accordion>","import { ButtonComponent } from './button/button.component';\r\nimport { Component, Input, input } from '@angular/core';\r\nimport { TextboxComponent } from './textbox/textbox.component';\r\nimport { SelectComponent } from './select/select.component';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\r\nimport { RadioComponent } from './radio/radio.component';\r\nimport { ToggleComponent } from './toggle/toggle.component';\r\nimport { UploadComponent } from './upload/upload.component';\r\nimport { DobComponent } from './dob/dob.component';\r\nimport { MobNumberComponent } from './mob-number/mob-number.component';\r\nimport { InfoComponent } from './info/info.component';\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\nimport { TextareaComponent } from './textarea/textarea.component';\r\nimport { TabComponent } from \"./tab/tab.component\";\r\nimport { AutocompleteComponent } from \"./autocomplete/autocomplete.component\";\r\nimport { MultipleSelectComponent } from \"./multiple-select/multiple-select.component\";\r\nimport { SelectTextboxComponent } from './select-textbox/select-textbox.component';\r\nimport { OtpTextboxComponent } from \"./otp-textbox/otp-textbox.component\";\r\nimport { AmountTextboxComponent } from \"./amount-textbox/amount-textbox.component\";\r\nimport { SuffixTextboxComponent } from \"./suffix-textbox/suffix-textbox.component\";\r\nimport { OtpMobNumberComponent } from \"./otp-mob-number/otp-mob-number.component\";\r\nimport { TagMobNumberComponent } from \"./tag-mob-number/tag-mob-number.component\";\r\nimport { AgeDateComponent } from \"./age-date/age-date.component\";\r\nimport { AdditionButtonComponent } from \"./addition-button/addition-button.component\";\r\nimport { InfoTextboxComponent } from \"./info-textbox/info-textbox.component\";\r\nimport { TextboxWithImageComponent } from \"./textbox-with-image/textbox-with-image.component\";\r\nimport { EmailWithDomainComponent } from \"./email-with-domain/email-with-domain.component\";\r\nimport { ImageUploadComponent } from \"./image-upload/image-upload.component\";\r\nimport { DownloadDocumentComponent } from \"./download-document/download-document.component\";\r\nimport { AddDocumentComponent } from \"./add-document/add-document.component\";\r\nimport { HyperlinkComponent } from \"./hyperlink/hyperlink.component\";\r\nimport { TextboxWithUnderscoreComponent } from \"./textbox-with-underscore/textbox-with-underscore.component\";\r\nimport { UnderscoreMobNumberComponent } from \"./underscore-mob-number/underscore-mob-number.component\";\r\nimport { IconButtonComponent } from \"./icon-button/icon-button.component\";\r\nimport { FormGroup, FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { ImageComponent } from './image/image.component';\r\nimport { StepperComponent } from \"./stepper/stepper.component\";\r\nimport { CardComponent } from \"./card/card.component\";\r\nimport { HrLineComponent } from \"./hr-line/hr-line.component\";\r\nimport { SearchMultiSelectComponent } from \"./search-multi-select/search-multi-select.component\";\r\nimport { SubscriptTextboxComponent } from \"./subscript-textbox/subscript-textbox.component\";\r\nimport { LabelComponent } from \"./label/label.component\";\r\nimport { SubHeaderComponent } from \"./sub-header/sub-header.component\";\r\nimport { HeaderComponent } from \"./header/header.component\";\r\nimport { TableComponent } from './table/table.component';\r\nimport { TextboxWithTextComponent } from \"./textbox-with-text/textbox-with-text.component\";\r\nimport { DiscountComponent } from \"./discount/discount.component\";\r\nimport { BenefitCardComponent } from \"./benefit-card/benefit-card.component\";\r\nimport { LoaderComponent } from './loader/loader.component';\r\nimport { WarningSnackbarComponent } from \"./warning-snackbar/warning-snackbar.component\";\r\nimport { SuccessSnackbarComponent } from \"./success-snackbar/success-snackbar.component\";\r\nimport { NeutralSnackbarComponent } from \"./neutral-snackbar/neutral-snackbar.component\";\r\nimport { ErrorSnackbarComponent } from \"./error-snackbar/error-snackbar.component\";\r\nimport { GreyLabelComponent } from \"./grey-label/grey-label.component\";\r\nimport { IframeComponent } from \"./iframe/iframe.component\";\r\nimport { ToggleButtonComponent } from \"./toggle-button/toggle-button.component\";\r\nimport { PayGetCardComponent } from \"./pay-get-card/pay-get-card.component\";\r\nimport { InBuiltBenefitComponent } from \"./in-built-benefit/in-built-benefit.component\";\r\nimport { OtherBenefitsComponent } from \"./other-benefits/other-benefits.component\";\r\nimport { AnnuityRateLogoComponent } from \"./annuity-rate-logo/annuity-rate-logo.component\";\r\nimport { DiscountV2Component } from './discount-v2/discount-v2.component';\r\nimport { LabelValueCardComponent } from './label-value-card/label-value-card.component';\r\nimport { MedialQuestionsComponent } from \"./medial-questions/medial-questions.component\";\r\nimport { PageNudgeComponent } from './page-nudge/page-nudge.component';\r\nimport { ProgressBarComponent } from \"./progress-bar/progress-bar.component\";\r\nimport { AccordianComponent } from \"./accordian/accordian.component\";\r\n\r\n@Component({\r\n selector: 'lib-master-control',\r\n standalone: true,\r\n imports: [\r\n FormsModule,\r\n TextboxComponent,\r\n SelectComponent,\r\n RadioComponent,\r\n ToggleComponent,\r\n UploadComponent,\r\n DobComponent,\r\n MobNumberComponent,\r\n InfoComponent,\r\n CheckboxComponent,\r\n TextareaComponent,\r\n ButtonComponent,\r\n TabComponent,\r\n AutocompleteComponent,\r\n MultipleSelectComponent,\r\n SelectTextboxComponent,\r\n OtpTextboxComponent,\r\n AmountTextboxComponent,\r\n SuffixTextboxComponent,\r\n OtpMobNumberComponent,\r\n TagMobNumberComponent,\r\n AgeDateComponent,\r\n AdditionButtonComponent,\r\n InfoTextboxComponent,\r\n TextboxWithImageComponent,\r\n EmailWithDomainComponent,\r\n ImageUploadComponent,\r\n DownloadDocumentComponent,\r\n AddDocumentComponent,\r\n HyperlinkComponent,\r\n TextboxWithUnderscoreComponent,\r\n UnderscoreMobNumberComponent,\r\n IconButtonComponent,\r\n ReactiveFormsModule,\r\n ImageComponent,\r\n StepperComponent,\r\n CardComponent,\r\n HrLineComponent,\r\n SearchMultiSelectComponent,\r\n SubscriptTextboxComponent,\r\n LabelComponent,\r\n SubHeaderComponent,\r\n HeaderComponent,\r\n TextboxWithTextComponent,\r\n DiscountComponent,\r\n BenefitCardComponent,\r\n TableComponent,\r\n LoaderComponent,\r\n WarningSnackbarComponent,\r\n SuccessSnackbarComponent,\r\n NeutralSnackbarComponent,\r\n ErrorSnackbarComponent,\r\n GreyLabelComponent,\r\n IframeComponent,\r\n ToggleButtonComponent,\r\n PayGetCardComponent,\r\n InBuiltBenefitComponent,\r\n OtherBenefitsComponent,\r\n AnnuityRateLogoComponent,\r\n DiscountV2Component,\r\n LabelValueCardComponent,\r\n MedialQuestionsComponent,\r\n PageNudgeComponent,\r\n ProgressBarComponent,\r\n AccordianComponent\r\n],\r\n templateUrl: './master-control.component.html',\r\n styleUrls: ['./master-control.component.css']\r\n})\r\nexport class MasterControlComponent {\r\n field: any = input.required<any>();\r\n @Input() formGroup: FormGroup = new FormGroup({});\r\n constructor() {}\r\n}\r\n","@switch (field()?.controlType) {\r\n @case('text') {\r\n <lib-textbox [field]=\"field()\"></lib-textbox>\r\n }\r\n @case('select') {\r\n <lib-select [field]=\"field()\"/>\r\n }\r\n\r\n @case('radio') {\r\n <lib-radio [field]=\"field()\" />\r\n }\r\n\r\n @case('toggle') {\r\n <lib-toggle [field]=\"field()\" />\r\n }\r\n\r\n @case('file') {\r\n <lib-upload [field]=\"field()\" />\r\n }\r\n\r\n @case('date') {\r\n <lib-dob [field]=\"field()\" />\r\n }\r\n\r\n @case('mobileNumber') {\r\n <lib-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case('info') {\r\n <lib-info [field]=\"field()\" />\r\n }\r\n\r\n @case('checkbox') {\r\n <lib-checkbox [field]=\"field()\" />\r\n }\r\n\r\n @case('textarea') {\r\n <lib-textarea [field]=\"field()\" />\r\n }\r\n\r\n @case ('button') {\r\n <lib-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('tab') {\r\n <lib-tab [field]=\"field()\" />\r\n }\r\n\r\n @case ('autocomplete') {\r\n <lib-autocomplete [field]=\"field()\" />\r\n }\r\n\r\n @case ('multipleSelect') {\r\n <lib-multiple-select [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithSelect') {\r\n <lib-select-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpTextbox') {\r\n <lib-otp-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('amountTextbox') {\r\n <lib-amount-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('suffixTextbox') {\r\n <lib-suffix-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('otpMobNumber') {\r\n <lib-otp-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('tagMobNumber') {\r\n <lib-tag-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('dateWithAge') {\r\n <lib-age-date [field]=\"field()\" />\r\n }\r\n\r\n @case ('additionButton') {\r\n <lib-addition-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('infoTextbox') {\r\n <lib-info-textbox [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithImage') {\r\n <lib-textbox-with-image [field]=\"field()\" />\r\n }\r\n\r\n @case ('emailWithDomain') {\r\n <lib-email-with-domain [field]=\"field()\" />\r\n }\r\n\r\n @case ('imageUpload') {\r\n <lib-image-upload [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadDocument') {\r\n <lib-download-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('addDocument') {\r\n <lib-add-document [field]=\"field()\" />\r\n }\r\n\r\n @case ('hyperlink') {\r\n <lib-hyperlink [field]=\"field()\" />\r\n }\r\n\r\n @case ('textboxWithUnderscore') {\r\n <lib-textbox-with-underscore [field]=\"field()\" />\r\n }\r\n\r\n @case ('underscoreMobNumber') {\r\n <lib-underscore-mob-number [field]=\"field()\" />\r\n }\r\n\r\n @case ('downloadIconButton') {\r\n <lib-icon-button [field]=\"field()\" />\r\n }\r\n\r\n @case ('image') {\r\n <lib-image [field]=\"field()\" />\r\n }\r\n @case ('stepper') {\r\n <lib-stepper [field]=\"field()\" />\r\n }\r\n @case ('card') {\r\n <lib-card [field]=\"field()\" />\r\n }\r\n @case ('hrLine') {\r\n <lib-hr-line [field]=\"field()\" />\r\n }\r\n @case ('searchMultiSelect') {\r\n <lib-search-multi-select [field]=\"field()\" />\r\n }\r\n @case ('subscriptTextbox') {\r\n <lib-subscript-textbox [field]=\"field()\" />\r\n }\r\n @case ('label') {\r\n <lib-label [field]=\"field()\" />\r\n }\r\n @case ('subHeading') {\r\n <lib-sub-header [field]=\"field()\" />\r\n }\r\n @case ('heading') {\r\n <lib-header [field]=\"field()\" />\r\n }\r\n @case ('table') {\r\n <lib-table [field]=\"field()\" />\r\n }\r\n @case ('textboxWithText') {\r\n <lib-textbox-with-text [field]=\"field()\" />\r\n }\r\n @case ('loader') {\r\n <lib-loader [field]=\"field()\" />\r\n }\r\n @case ('discount') {\r\n <lib-discount [field]=\"field()\" />\r\n }\r\n @case ('optionalBenefitCard') {\r\n <lib-benefit-card [field]=\"field()\" />\r\n }\r\n @case ('errorSnackbar') {\r\n <lib-error-snackbar [field]=\"field()\" />\r\n }\r\n @case ('warningSnackbar') {\r\n <lib-warning-snackbar [field]=\"field()\" />\r\n }\r\n @case ('successSnackbar') {\r\n <lib-success-snackbar [field]=\"field()\" />\r\n }\r\n @case ('neutralSnackbar') {\r\n <lib-neutral-snackbar [field]=\"field()\" />\r\n }\r\n @case ('boldLabel') {\r\n <lib-grey-label [field]=\"field()\" />\r\n }\r\n @case ('iframe') {\r\n <lib-iframe [field]=\"field()\" />\r\n }\r\n @case ('toggleButton') {\r\n <lib-toggle-button [field]=\"field()\" />\r\n }\r\n @case ('payGetCard') {\r\n <lib-pay-get-card [field]=\"field()\" />\r\n }\r\n @case ('inBuiltBenefit') {\r\n <lib-in-built-benefit [field]=\"field()\" />\r\n }\r\n @case ('otherBenefit') {\r\n <lib-other-benefits [field]=\"field()\" />\r\n }\r\n @case ('annuityRateLogo') {\r\n <lib-annuity-rate-logo [field]=\"field()\" />\r\n }\r\n @case ('discountAnnuity') {\r\n <lib-discount-v2 [field]=\"field()\" />\r\n }\r\n @case ('labelValue'){\r\n <lib-label-value-card [field]=\"field()\" />\r\n }\r\n @case ('medicalQuestions'){\r\n <lib-medial-questions [field]=\"field()\" />\r\n }\r\n @case ('nudge'){\r\n <lib-page-nudge [field]=\"field()\"/>\r\n }\r\n @case ('progressBar'){\r\n <lib-progress-bar [field]=\"field()\"/>\r\n }\r\n @case ('accordian'){\r\n <lib-accordian [field]=\"field()\"/>\r\n }\r\n}\r\n","/*\r\n * Public API Surface of master-control\r\n */\r\n\r\nexport * from './lib/master-control.service';\r\nexport * from './lib/textbox/textbox.component';\r\nexport * from './lib/master-control.component';\r\nexport * from './lib/checkbox/checkbox.component';\r\nexport * from './lib/dob/dob.component';\r\nexport * from './lib/info/info.component';\r\nexport * from './lib/mob-number/mob-number.component';\r\nexport * from './lib/radio/radio.component';\r\nexport * from './lib/select/select.component';\r\nexport * from './lib/textarea/textarea.component';\r\nexport * from './lib/upload/upload.component';\r\nexport * from './lib/toggle/toggle.component';\r\nexport * from './lib/button/button.component';\r\nexport * from './lib/tab/tab.component';\r\nexport * from './lib/autocomplete/autocomplete.component';\r\nexport * from './lib/multiple-select/multiple-select.component';\r\nexport * from './lib/select-textbox/select-textbox.component';\r\nexport * from './lib/otp-textbox/otp-textbox.component';\r\nexport * from './lib/amount-textbox/amount-textbox.component';\r\nexport * from './lib/suffix-textbox/suffix-textbox.component';\r\nexport * from './lib/otp-mob-number/otp-mob-number.component';\r\nexport * from './lib/age-date/age-date.component';\r\nexport * from './lib/addition-button/addition-button.component';\r\nexport * from './lib/textbox-with-image/textbox-with-image.component';\r\nexport * from './lib/email-with-domain/email-with-domain.component';\r\nexport * from './lib/image-upload/image-upload.component';\r\nexport * from './lib/download-document/download-document.component';\r\nexport * from './lib/add-document/add-document.component';\r\nexport * from './lib/hyperlink/hyperlink.component';\r\nexport * from './lib/textbox-with-underscore/textbox-with-underscore.component';\r\nexport * from './lib/icon-button/icon-button.component';\r\nexport * from './lib/image/image.component';\r\nexport * from './lib/stepper/stepper.component';\r\nexport * from './lib/card/card.component';\r\nexport * from './lib/hr-line/hr-line.component';\r\nexport * from './lib/search-multi-select/search-multi-select.component';\r\nexport * from './lib/subscript-textbox/subscript-textbox.component';\r\nexport * from './lib/label/label.component';\r\nexport * from './lib/table/table.component';\r\nexport * from './lib/textbox-with-text/textbox-with-text.component';\r\nexport * from './lib/loader/loader.component';\r\nexport * from './lib/discount/discount.component';\r\nexport * from './lib/benefit-card/benefit-card.component';\r\nexport * from './lib/error-snackbar/error-snackbar.component';\r\nexport * from './lib/warning-snackbar/warning-snackbar.component';\r\nexport * from './lib/success-snackbar/success-snackbar.component';\r\nexport * from './lib/neutral-snackbar/neutral-snackbar.component';\r\nexport * from './lib/grey-label/grey-label.component';\r\nexport * from './lib/iframe/iframe.component';\r\nexport * from './lib/toggle-button/toggle-button.component';\r\nexport * from './lib/pay-get-card/pay-get-card.component';\r\nexport * from './lib/in-built-benefit/in-built-benefit.component';\r\nexport * from './lib/other-benefits/other-benefits.component';\r\nexport * from './lib/annuity-rate-logo/annuity-rate-logo.component';\r\nexport * from './lib/label-value-card/label-value-card.component';\r\nexport * from './lib/medial-questions/medial-questions.component';\r\nexport * from './lib/discount-v2/discount-v2.component';\r\nexport * from './lib/page-nudge/page-nudge.component';\r\nexport * from './lib/header/header.component';\r\nexport * from './lib/sub-header/sub-header.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.MasterControlService","i2","i3","i5","i4","i6","i7","i8","i1","questionsResponse"],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;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"}