master-control 0.3.80 → 0.3.81
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/medial-questions/medial-questions.component.mjs +252 -172
- package/esm2022/lib/radio/radio.component.mjs +3 -3
- package/fesm2022/master-control.mjs +253 -173
- package/fesm2022/master-control.mjs.map +1 -1
- package/lib/medial-questions/medial-questions.component.d.ts +4 -1
- package/master-control-0.3.81.tgz +0 -0
- package/package.json +1 -1
- package/master-control-0.3.80.tgz +0 -0
|
@@ -772,7 +772,7 @@ class RadioComponent {
|
|
|
772
772
|
useExisting: RadioComponent,
|
|
773
773
|
multi: true
|
|
774
774
|
}
|
|
775
|
-
], ngImport: i0, template: "<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 @if(reactiveFormControlobject()) {\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 [formControl]=\"reactiveFormControlobject()\"\r\n (change)=\"onRadioGroupChange($event)\"\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 || reactiveFormControlobject?.disabled}\"\r\n (click)=\"toggleRadio(data.value, $event)\"\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 [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 }@else {\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 (change)=\"onRadioGroupChange($event)\"\r\n >\r\n <div\r\n class=\"card radio-card-gender py-auto px-1\"\r\n
|
|
775
|
+
], ngImport: i0, template: "<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 @if(reactiveFormControlobject()) {\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 [formControl]=\"reactiveFormControlobject()\"\r\n (change)=\"onRadioGroupChange($event)\"\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 || reactiveFormControlobject?.disabled}\"\r\n (click)=\"toggleRadio(data.value, $event)\"\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; padding: 0px 16px;\"\r\n class=\"radioButtonGender\"\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 }@else {\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 (change)=\"onRadioGroupChange($event)\"\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 (click)=\"toggleRadio(data.value, $event)\"\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; padding: 0px 16px;\"\r\n class=\"radioButtonGender\"\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 }\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.patternMessage}}.\r\n</div>\r\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:pre-wrap!important}.error-message{color:red}.radio-btn-group{display:flex;align-items:center;gap:1rem;align-self:stretch}::ng-deep .radio-btn-gender .mdc-form-field .mdc-radio{display:none!important}.radio-card-gender{box-shadow:none;border-color:var(--radio-button-border-color,#DADADA);border-width:var(--radio-button-border-width, 1px solid);background:var(--radio-button-background-color, #FFFFFF);display:flex;align-items:center;cursor:pointer;width:max-content!important;border-radius:var(--radio-button-border-radius, 6px)}::ng-deep .radioButtonGender .mdc-form-field .mdc-radio{display:none!important}.forRadioLabel{font-size:var(--radio-button-font-size, 12px)!important;font-weight:var(--radio-button-font-weight, 400);cursor:pointer;color:var(--radio-button-font-color, #444444)}.radio-btn-icon{margin-top:-2px;margin-left:4px}.selected-radio-btn{border:1px solid #ffbb00!important}.disable-radio-btn{background:#f5f5f5;pointer-events:none;cursor:none}\n"], dependencies: [{ kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i2$2.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i2$2.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "ngmodule", type: FormsModule }] });
|
|
776
776
|
}
|
|
777
777
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: RadioComponent, decorators: [{
|
|
778
778
|
type: Component,
|
|
@@ -787,7 +787,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
787
787
|
useExisting: RadioComponent,
|
|
788
788
|
multi: true
|
|
789
789
|
}
|
|
790
|
-
], template: "<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 @if(reactiveFormControlobject()) {\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 [formControl]=\"reactiveFormControlobject()\"\r\n (change)=\"onRadioGroupChange($event)\"\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 || reactiveFormControlobject?.disabled}\"\r\n (click)=\"toggleRadio(data.value, $event)\"\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 [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 }@else {\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 (change)=\"onRadioGroupChange($event)\"\r\n >\r\n <div\r\n class=\"card radio-card-gender py-auto px-1\"\r\n
|
|
790
|
+
], template: "<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 @if(reactiveFormControlobject()) {\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 [formControl]=\"reactiveFormControlobject()\"\r\n (change)=\"onRadioGroupChange($event)\"\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 || reactiveFormControlobject?.disabled}\"\r\n (click)=\"toggleRadio(data.value, $event)\"\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; padding: 0px 16px;\"\r\n class=\"radioButtonGender\"\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 }@else {\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 (change)=\"onRadioGroupChange($event)\"\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 (click)=\"toggleRadio(data.value, $event)\"\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; padding: 0px 16px;\"\r\n class=\"radioButtonGender\"\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 }\r\n <div class=\"error-message\" *ngIf=\"false\">\r\n {{field()?.validators?.patternMessage}}.\r\n</div>\r\n", styles: [".radio-selection-border{border:1px solid #ffbb00!important;background:#fffaeb!important}*{font-family:mulish!important}.field-lable{font-size:12px!important;font-weight:700!important;color:#444!important;margin-bottom:0!important;white-space:pre-wrap!important}.error-message{color:red}.radio-btn-group{display:flex;align-items:center;gap:1rem;align-self:stretch}::ng-deep .radio-btn-gender .mdc-form-field .mdc-radio{display:none!important}.radio-card-gender{box-shadow:none;border-color:var(--radio-button-border-color,#DADADA);border-width:var(--radio-button-border-width, 1px solid);background:var(--radio-button-background-color, #FFFFFF);display:flex;align-items:center;cursor:pointer;width:max-content!important;border-radius:var(--radio-button-border-radius, 6px)}::ng-deep .radioButtonGender .mdc-form-field .mdc-radio{display:none!important}.forRadioLabel{font-size:var(--radio-button-font-size, 12px)!important;font-weight:var(--radio-button-font-weight, 400);cursor:pointer;color:var(--radio-button-font-color, #444444)}.radio-btn-icon{margin-top:-2px;margin-left:4px}.selected-radio-btn{border:1px solid #ffbb00!important}.disable-radio-btn{background:#f5f5f5;pointer-events:none;cursor:none}\n"] }]
|
|
791
791
|
}], ctorParameters: () => [{ type: MasterControlService }], propDecorators: { change: [{
|
|
792
792
|
type: Output
|
|
793
793
|
}] } });
|
|
@@ -3506,6 +3506,7 @@ class MedialQuestionsComponent {
|
|
|
3506
3506
|
medialQuestionResponse = input();
|
|
3507
3507
|
personUWOpenQuoteResponse = input();
|
|
3508
3508
|
personUwId = "";
|
|
3509
|
+
isMedicalSubQuestionsAvailable = null;
|
|
3509
3510
|
medicalSubQuestionsResponse = {};
|
|
3510
3511
|
addressInput;
|
|
3511
3512
|
autocomplete;
|
|
@@ -3825,6 +3826,31 @@ class MedialQuestionsComponent {
|
|
|
3825
3826
|
this.showDropdown = false;
|
|
3826
3827
|
}, 200);
|
|
3827
3828
|
}
|
|
3829
|
+
findMedicalQuestionsInOpenQuote(arrayOfObj) {
|
|
3830
|
+
if (arrayOfObj['cammundaQuestionCode'] === 'MediCndtn' || arrayOfObj['cammundaQuestionCode'] === 'LifeMediCndtn') {
|
|
3831
|
+
this.isMedicalSubQuestionsAvailable = arrayOfObj;
|
|
3832
|
+
}
|
|
3833
|
+
if (this.checkIfValueIsEmpty(this.isMedicalSubQuestionsAvailable) && !this.checkIfValueIsEmpty(arrayOfObj['personUWActivityResponseEntity'])) {
|
|
3834
|
+
arrayOfObj['personUWActivityResponseEntity'].forEach((singleSubArray) => {
|
|
3835
|
+
this.findMedicalQuestionsInOpenQuote(singleSubArray);
|
|
3836
|
+
});
|
|
3837
|
+
}
|
|
3838
|
+
}
|
|
3839
|
+
mapAnswersForOpenQuote() {
|
|
3840
|
+
if (!this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]?.questionList) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]?.questionList[0]?.personUWdetailsList)) {
|
|
3841
|
+
let arrayOfKeys = Object.keys(this.personUWOpenQuoteResponse()[0]?.questionList[0]?.personUWdetailsList);
|
|
3842
|
+
arrayOfKeys.forEach((singleKey, singleKeyLength) => {
|
|
3843
|
+
if (!this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]['questionList'][0]['personUWdetailsList'][singleKey])) {
|
|
3844
|
+
this.personUWOpenQuoteResponse()[0]['questionList'][0]['personUWdetailsList'][singleKey].forEach((singleAnswerObj, singleAnswerObjLength) => {
|
|
3845
|
+
this.updatePersonUwAnswers(singleAnswerObj);
|
|
3846
|
+
if (singleKeyLength === (arrayOfKeys.length - 1) && singleAnswerObjLength === (this.personUWOpenQuoteResponse()[0]['questionList'][0]['personUWdetailsList'][singleKey].length - 1)) {
|
|
3847
|
+
this.removeSubQuestionValues();
|
|
3848
|
+
}
|
|
3849
|
+
});
|
|
3850
|
+
}
|
|
3851
|
+
});
|
|
3852
|
+
}
|
|
3853
|
+
}
|
|
3828
3854
|
preparePersonUwQuestionsObj() {
|
|
3829
3855
|
this.questionList = [];
|
|
3830
3856
|
let data = this.medialQuestionResponse();
|
|
@@ -4124,143 +4150,199 @@ class MedialQuestionsComponent {
|
|
|
4124
4150
|
this.personUwResponseObj = data['questionsResponse'];
|
|
4125
4151
|
}
|
|
4126
4152
|
}
|
|
4127
|
-
if (!this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse())) {
|
|
4153
|
+
if (!this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]?.questionList) && !this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]?.questionList[0]?.personUWdetailsList)) {
|
|
4128
4154
|
let isSubQuestionExists = false;
|
|
4129
|
-
this.
|
|
4130
|
-
|
|
4131
|
-
|
|
4132
|
-
|
|
4133
|
-
|
|
4134
|
-
|
|
4135
|
-
|
|
4136
|
-
// this.personUwAnswers[answerObj.questionId] = answerObj.answer // for answers other than checkbox
|
|
4137
|
-
let filteredQuestion = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].filter((singleQuestion) => singleQuestion['questionId'] === answerObj['questionId']);
|
|
4138
|
-
if (!this.checkIfValueIsEmpty(filteredQuestion) && filteredQuestion[0]['questionType'] === 'CHECKBOX') {
|
|
4139
|
-
this.personUwAnswers[answerObj.questionId] = [];
|
|
4140
|
-
let listOfOptionsSelected = answerObj.answer.split(',');
|
|
4141
|
-
listOfOptionsSelected.forEach((singleElement) => {
|
|
4142
|
-
if (!this.checkIfValueIsEmpty(filteredQuestion) && !this.checkIfValueIsEmpty(filteredQuestion[0]) && !this.checkIfValueIsEmpty(filteredQuestion[0]['domainValues'])) {
|
|
4143
|
-
let filteredDomainValueObj = filteredQuestion[0]['domainValues'].filter((singleObj) => singleObj['domainInternalValue'] === singleElement);
|
|
4144
|
-
if (!this.checkIfValueIsEmpty(filteredDomainValueObj)) {
|
|
4145
|
-
this.personUwAnswers[answerObj.questionId].push({
|
|
4146
|
-
label: filteredDomainValueObj[0]['domainUiValue'],
|
|
4147
|
-
value: filteredDomainValueObj[0]['domainInternalValue']
|
|
4148
|
-
});
|
|
4149
|
-
}
|
|
4150
|
-
}
|
|
4151
|
-
});
|
|
4152
|
-
// this.personUwAnswers[answerObj.questionId] = answerObj.answer.split(',');
|
|
4153
|
-
}
|
|
4154
|
-
else {
|
|
4155
|
-
this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4156
|
-
}
|
|
4157
|
-
if (answerObj['cammundaQuestionCode'] === 'QHT') {
|
|
4158
|
-
this.personUwAnswers['medicalQuestionsHeightInput'] = answerObj['answer'];
|
|
4159
|
-
}
|
|
4160
|
-
if (answerObj['cammundaQuestionCode'] === 'QHTF') {
|
|
4161
|
-
let feetAnswer = answerObj['answer'].split('.');
|
|
4162
|
-
if (!this.checkIfValueIsEmpty(answerObj['answer']) && answerObj['answer'].includes('.')) {
|
|
4163
|
-
this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4164
|
-
this.personUwAnswers['medicalQuestionsInchesInput'] = feetAnswer[1];
|
|
4165
|
-
}
|
|
4166
|
-
else {
|
|
4167
|
-
this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4168
|
-
this.personUwAnswers['medicalQuestionsInchesInput'] = '0';
|
|
4169
|
-
}
|
|
4170
|
-
}
|
|
4171
|
-
// this.medialQuestionResponse()['questionsResponse'][0]['questionList'].forEach((singleQuestionResponse: any) => {
|
|
4172
|
-
// if (singleQuestionResponse['questionId'] === answerObj['questionId'] && singleQuestionResponse['questionType'] === 'DECLARATION') {
|
|
4173
|
-
// this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4174
|
-
// }
|
|
4175
|
-
// });
|
|
4176
|
-
// let laIndex: any = this.medialQuestionResponse()['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePerson['role']);
|
|
4177
|
-
// if (!this.checkIfValueIsEmpty(filteredQuestion) && filteredQuestion[0]['questionType'] === 'DECLARATION') {
|
|
4178
|
-
// this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4179
|
-
// }
|
|
4180
|
-
if (answerObj['cammundaQuestionCode'] === 'LifeMediCndtn' || answerObj['cammundaQuestionCode'] === 'MediCndtn') {
|
|
4181
|
-
isSubQuestionExists = true;
|
|
4182
|
-
// {
|
|
4183
|
-
// "urlParamForDisease": "mdeicalHistory",
|
|
4184
|
-
// "apiUrl": "https://preprod-directportallife.godigit.com/DirectPortalLife/life/fetchSubQuestions",
|
|
4185
|
-
// "urlParamForPersonUwId": "personUWID",
|
|
4186
|
-
// "tokenCookieParam": "v3Token",
|
|
4187
|
-
// "isSendToken": false
|
|
4188
|
-
// }
|
|
4189
|
-
this.masterService.getSubQuestions(this.field()?.configData, answerObj['answer'], answerObj['personUWId']).subscribe((subQuestionResponse) => {
|
|
4190
|
-
// this.loaderService.display(false);
|
|
4191
|
-
let distinctSteps = [];
|
|
4192
|
-
if (!this.checkIfValueIsEmpty(subQuestionResponse)) {
|
|
4193
|
-
subQuestionResponse.forEach((subQuestion) => {
|
|
4194
|
-
subQuestion['isMedicalSubQuestion'] = true;
|
|
4195
|
-
subQuestion['isShowQuestionInUI'] = false;
|
|
4196
|
-
if (!this.checkIfValueIsEmpty(subQuestion['questionRelation']) &&
|
|
4197
|
-
!Array.isArray(subQuestion['questionRelation'])) {
|
|
4198
|
-
subQuestion['questionRelation'] = [subQuestion['questionRelation']];
|
|
4199
|
-
}
|
|
4200
|
-
if (subQuestion['questionType'] === 'CHECKBOX' &&
|
|
4201
|
-
!this.checkIfValueIsEmpty(subQuestion['questionRelation'])) {
|
|
4202
|
-
subQuestion['questionRelation'].forEach((singleQuestionRelationObj) => {
|
|
4203
|
-
let nextQuestionObject = subQuestionResponse.filter((object) => object['questionId'] === singleQuestionRelationObj['nextQuestionId']);
|
|
4204
|
-
if (nextQuestionObject.length > 0) {
|
|
4205
|
-
nextQuestionObject[0]['answeredValue'] = singleQuestionRelationObj['parentQuestionValue'];
|
|
4206
|
-
}
|
|
4207
|
-
});
|
|
4208
|
-
}
|
|
4209
|
-
subQuestion['domainValues'] = this.medialQuestionResponse()['domainValues'][subQuestion['domainName']];
|
|
4210
|
-
// if (!this.checkIfValueIsEmpty(subQuestion['domainValues'])) {
|
|
4211
|
-
// subQuestion['domainValues'].forEach((subDomain: any) => {
|
|
4212
|
-
// this.subMedicalQuestionsDomainInternalValuesList.push(subDomain['domainInternalValue']);
|
|
4213
|
-
// });
|
|
4214
|
-
// }
|
|
4215
|
-
if (!distinctSteps.includes(subQuestion['clusterId'])) {
|
|
4216
|
-
distinctSteps.push(subQuestion['clusterId']);
|
|
4217
|
-
}
|
|
4218
|
-
});
|
|
4219
|
-
subQuestionResponse.sort((a, b) => a['step'] - b['step'] || a['displayOrder'] - b['displayOrder']);
|
|
4220
|
-
distinctSteps.forEach((steps, ind) => {
|
|
4221
|
-
let filteredObj = subQuestionResponse.filter((singleQuestion) => singleQuestion['clusterId'] === steps);
|
|
4222
|
-
let obj = {
|
|
4223
|
-
step: 1000 + ind,
|
|
4224
|
-
questions: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj : [],
|
|
4225
|
-
sectionName: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj[0]['title'] : '',
|
|
4226
|
-
isMedicalSubQuestion: true,
|
|
4227
|
-
showSection: true,
|
|
4228
|
-
personUWId: answerObj['personUWId'].toString(),
|
|
4229
|
-
};
|
|
4230
|
-
// let LaIndex: any = this.personUwMasterObj.findIndex(
|
|
4231
|
-
// (single: any) => single['role'] === singlePerson['role']
|
|
4232
|
-
// );
|
|
4233
|
-
this.questionList.push(obj);
|
|
4234
|
-
});
|
|
4235
|
-
this.medicalSubQuestionsResponse = subQuestionResponse;
|
|
4236
|
-
// let laIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePerson['role']);
|
|
4237
|
-
this.medialQuestionResponse()['questionsResponse'][0]['questionList'] = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].concat(this.medicalSubQuestionsResponse);
|
|
4238
|
-
}
|
|
4239
|
-
this.removeSubQuestionValues();
|
|
4240
|
-
// this.disableConfirmationButton = false;
|
|
4241
|
-
}, (err) => {
|
|
4242
|
-
// this.disableConfirmationButton = true;
|
|
4243
|
-
// this.loaderService.display(false);
|
|
4244
|
-
});
|
|
4245
|
-
}
|
|
4246
|
-
// else {
|
|
4247
|
-
// this.loaderService.display(false);
|
|
4248
|
-
// }
|
|
4249
|
-
if (typeof answerObj.answer === 'string' && answerObj.answer !== 'Y' && answerObj.answer !== 'N') {
|
|
4250
|
-
// if (answerObj.answer.includes(',')) {
|
|
4251
|
-
// answerObj.answer.split(',').forEach((answer: any) => {
|
|
4252
|
-
// this.personUwAnswers[answer] = true;
|
|
4253
|
-
// });
|
|
4254
|
-
// }
|
|
4255
|
-
// this.personUwAnswers[answerObj.answer] = true;
|
|
4256
|
-
}
|
|
4257
|
-
this.updatePersonUwAnswers(answerObj, singlePerson['role']);
|
|
4258
|
-
});
|
|
4259
|
-
}
|
|
4260
|
-
});
|
|
4261
|
-
}
|
|
4155
|
+
this.isMedicalSubQuestionsAvailable = null;
|
|
4156
|
+
let arrayOfKeys = Object.keys(this.personUWOpenQuoteResponse()[0]?.questionList[0]?.personUWdetailsList);
|
|
4157
|
+
arrayOfKeys.forEach((singleKey) => {
|
|
4158
|
+
if (!this.checkIfValueIsEmpty(this.personUWOpenQuoteResponse()[0]['questionList'][0]['personUWdetailsList'][singleKey])) {
|
|
4159
|
+
this.personUWOpenQuoteResponse()[0]['questionList'][0]['personUWdetailsList'][singleKey].forEach((singleAnswerObj) => {
|
|
4160
|
+
this.findMedicalQuestionsInOpenQuote(singleAnswerObj);
|
|
4161
|
+
});
|
|
4262
4162
|
}
|
|
4263
4163
|
});
|
|
4164
|
+
if (!this.checkIfValueIsEmpty(this.isMedicalSubQuestionsAvailable)) {
|
|
4165
|
+
this.masterService.getSubQuestions(this.field()?.configData, this.isMedicalSubQuestionsAvailable['answer'], this.isMedicalSubQuestionsAvailable['personUWId']).subscribe((subQuestionResponse) => {
|
|
4166
|
+
let distinctSteps = [];
|
|
4167
|
+
subQuestionResponse.forEach((subQuestion) => {
|
|
4168
|
+
subQuestion['domainValues'] = this.medialQuestionResponse()['domainValues'][subQuestion['domainName']];
|
|
4169
|
+
subQuestion['field'] = this.getField(subQuestion);
|
|
4170
|
+
if (!distinctSteps.includes(subQuestion['clusterId'])) {
|
|
4171
|
+
distinctSteps.push(subQuestion['clusterId']);
|
|
4172
|
+
}
|
|
4173
|
+
});
|
|
4174
|
+
subQuestionResponse.sort((a, b) => a['step'] - b['step'] || a['displayOrder'] - b['displayOrder']);
|
|
4175
|
+
distinctSteps.forEach((steps, ind) => {
|
|
4176
|
+
let filteredObj = subQuestionResponse.filter((singleQuestion) => singleQuestion['clusterId'] === steps);
|
|
4177
|
+
let obj = {
|
|
4178
|
+
step: 1000 + ind,
|
|
4179
|
+
questions: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj : [],
|
|
4180
|
+
sectionName: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj[0]['title'] : '',
|
|
4181
|
+
isMedicalSubQuestion: true,
|
|
4182
|
+
showSection: true,
|
|
4183
|
+
personUWId: this.isMedicalSubQuestionsAvailable['personUWId'].toString(),
|
|
4184
|
+
};
|
|
4185
|
+
// let LaIndex: any = this.personUwMasterObj.findIndex(
|
|
4186
|
+
// (single: any) => single['role'] === singlePerson['role']
|
|
4187
|
+
// );
|
|
4188
|
+
this.questionList.push(obj);
|
|
4189
|
+
});
|
|
4190
|
+
this.medicalSubQuestionsResponse = subQuestionResponse;
|
|
4191
|
+
// let laIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePerson['role']);
|
|
4192
|
+
this.medialQuestionResponse()['questionsResponse'][0]['questionList'] = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].concat(this.medicalSubQuestionsResponse);
|
|
4193
|
+
this.mapAnswersForOpenQuote();
|
|
4194
|
+
}, (err) => {
|
|
4195
|
+
this.mapAnswersForOpenQuote();
|
|
4196
|
+
});
|
|
4197
|
+
}
|
|
4198
|
+
else {
|
|
4199
|
+
this.mapAnswersForOpenQuote();
|
|
4200
|
+
}
|
|
4201
|
+
// this.personUWOpenQuoteResponse().forEach((singlePerson: any) => {
|
|
4202
|
+
// if (!this.checkIfValueIsEmpty(singlePerson['questionList']) && !this.checkIfValueIsEmpty(singlePerson['questionList'][0])) {
|
|
4203
|
+
// let arrayOfKeys = Object.keys(singlePerson['questionList'][0]['personUWdetailsList']);
|
|
4204
|
+
// if (arrayOfKeys.length > 0) {
|
|
4205
|
+
// arrayOfKeys.forEach((singleKey) => {
|
|
4206
|
+
// if (!this.checkIfValueIsEmpty(singlePerson['questionList'][0]['personUWdetailsList'][singleKey])) {
|
|
4207
|
+
// singlePerson['questionList'][0]['personUWdetailsList'][singleKey].forEach((answerObj: any) => {
|
|
4208
|
+
// this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4209
|
+
// let filteredQuestion: any = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].filter((singleQuestion: any) => singleQuestion['questionId'] === answerObj['questionId']);
|
|
4210
|
+
// if (!this.checkIfValueIsEmpty(filteredQuestion) && filteredQuestion[0]['questionType'] === 'CHECKBOX') {
|
|
4211
|
+
// // this.personUwAnswers[answerObj.questionId] = [];
|
|
4212
|
+
// // let listOfOptionsSelected : any = answerObj.answer.split(',');
|
|
4213
|
+
// // listOfOptionsSelected.forEach((singleElement : any) => {
|
|
4214
|
+
// // if(!this.checkIfValueIsEmpty(filteredQuestion) && !this.checkIfValueIsEmpty(filteredQuestion[0]) && !this.checkIfValueIsEmpty(filteredQuestion[0]['domainValues'])) {
|
|
4215
|
+
// // let filteredDomainValueObj : any = filteredQuestion[0]['domainValues'].filter((singleObj : any) => singleObj['domainInternalValue'] === singleElement);
|
|
4216
|
+
// // if(!this.checkIfValueIsEmpty(filteredDomainValueObj)) {
|
|
4217
|
+
// // this.personUwAnswers[answerObj.questionId].push({
|
|
4218
|
+
// // label : filteredDomainValueObj[0]['domainUiValue'],
|
|
4219
|
+
// // value : filteredDomainValueObj[0]['domainInternalValue']
|
|
4220
|
+
// // });
|
|
4221
|
+
// // }
|
|
4222
|
+
// // }
|
|
4223
|
+
// // });
|
|
4224
|
+
// this.personUwAnswers[answerObj.questionId] = answerObj.answer.split(',');
|
|
4225
|
+
// } else {
|
|
4226
|
+
// this.personUwAnswers[answerObj.questionId] = answerObj.answer
|
|
4227
|
+
// }
|
|
4228
|
+
// if (answerObj['cammundaQuestionCode'] === 'QHT') {
|
|
4229
|
+
// this.personUwAnswers['medicalQuestionsHeightInput'] = answerObj['answer'];
|
|
4230
|
+
// }
|
|
4231
|
+
// if (answerObj['cammundaQuestionCode'] === 'QHTF') {
|
|
4232
|
+
// let feetAnswer = answerObj['answer'].split('.');
|
|
4233
|
+
// if (!this.checkIfValueIsEmpty(answerObj['answer']) && answerObj['answer'].includes('.')) {
|
|
4234
|
+
// this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4235
|
+
// this.personUwAnswers['medicalQuestionsInchesInput'] = feetAnswer[1];
|
|
4236
|
+
// } else {
|
|
4237
|
+
// this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4238
|
+
// this.personUwAnswers['medicalQuestionsInchesInput'] = '0';
|
|
4239
|
+
// }
|
|
4240
|
+
// }
|
|
4241
|
+
// // this.medialQuestionResponse()['questionsResponse'][0]['questionList'].forEach((singleQuestionResponse: any) => {
|
|
4242
|
+
// // if (singleQuestionResponse['questionId'] === answerObj['questionId'] && singleQuestionResponse['questionType'] === 'DECLARATION') {
|
|
4243
|
+
// // this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4244
|
+
// // }
|
|
4245
|
+
// // });
|
|
4246
|
+
// // let laIndex: any = this.medialQuestionResponse()['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePerson['role']);
|
|
4247
|
+
// // if (!this.checkIfValueIsEmpty(filteredQuestion) && filteredQuestion[0]['questionType'] === 'DECLARATION') {
|
|
4248
|
+
// // this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4249
|
+
// // }
|
|
4250
|
+
// if (answerObj['cammundaQuestionCode'] === 'LifeMediCndtn' || answerObj['cammundaQuestionCode'] === 'MediCndtn') {
|
|
4251
|
+
// isSubQuestionExists = true;
|
|
4252
|
+
// // {
|
|
4253
|
+
// // "urlParamForDisease": "mdeicalHistory",
|
|
4254
|
+
// // "apiUrl": "https://preprod-directportallife.godigit.com/DirectPortalLife/life/fetchSubQuestions",
|
|
4255
|
+
// // "urlParamForPersonUwId": "personUWID",
|
|
4256
|
+
// // "tokenCookieParam": "v3Token",
|
|
4257
|
+
// // "isSendToken": false
|
|
4258
|
+
// // }
|
|
4259
|
+
// this.masterService.getSubQuestions(this.field()?.configData, answerObj['answer'], answerObj['personUWId']).subscribe(
|
|
4260
|
+
// (subQuestionResponse: any) => {
|
|
4261
|
+
// // this.loaderService.display(false);
|
|
4262
|
+
// let distinctSteps: any = [];
|
|
4263
|
+
// if (!this.checkIfValueIsEmpty(subQuestionResponse)) {
|
|
4264
|
+
// subQuestionResponse.forEach((subQuestion: any) => {
|
|
4265
|
+
// subQuestion['isMedicalSubQuestion'] = true;
|
|
4266
|
+
// subQuestion['isShowQuestionInUI'] = false;
|
|
4267
|
+
// if (
|
|
4268
|
+
// !this.checkIfValueIsEmpty(subQuestion['questionRelation']) &&
|
|
4269
|
+
// !Array.isArray(subQuestion['questionRelation'])
|
|
4270
|
+
// ) {
|
|
4271
|
+
// subQuestion['questionRelation'] = [subQuestion['questionRelation']];
|
|
4272
|
+
// }
|
|
4273
|
+
// if (
|
|
4274
|
+
// subQuestion['questionType'] === 'CHECKBOX' &&
|
|
4275
|
+
// !this.checkIfValueIsEmpty(subQuestion['questionRelation'])
|
|
4276
|
+
// ) {
|
|
4277
|
+
// subQuestion['questionRelation'].forEach((singleQuestionRelationObj: any) => {
|
|
4278
|
+
// let nextQuestionObject: any = subQuestionResponse.filter(
|
|
4279
|
+
// (object: any) => object['questionId'] === singleQuestionRelationObj['nextQuestionId']
|
|
4280
|
+
// );
|
|
4281
|
+
// if (nextQuestionObject.length > 0) {
|
|
4282
|
+
// nextQuestionObject[0]['answeredValue'] = singleQuestionRelationObj['parentQuestionValue'];
|
|
4283
|
+
// }
|
|
4284
|
+
// });
|
|
4285
|
+
// }
|
|
4286
|
+
// subQuestion['domainValues'] = this.medialQuestionResponse()['domainValues'][
|
|
4287
|
+
// subQuestion['domainName']
|
|
4288
|
+
// ];
|
|
4289
|
+
// subQuestion['field'] = this.getField(subQuestion);
|
|
4290
|
+
// // if (!this.checkIfValueIsEmpty(subQuestion['domainValues'])) {
|
|
4291
|
+
// // subQuestion['domainValues'].forEach((subDomain: any) => {
|
|
4292
|
+
// // this.subMedicalQuestionsDomainInternalValuesList.push(subDomain['domainInternalValue']);
|
|
4293
|
+
// // });
|
|
4294
|
+
// // }
|
|
4295
|
+
// if (!distinctSteps.includes(subQuestion['clusterId'])) {
|
|
4296
|
+
// distinctSteps.push(subQuestion['clusterId']);
|
|
4297
|
+
// }
|
|
4298
|
+
// });
|
|
4299
|
+
// subQuestionResponse.sort((a: any, b: any) => a['step'] - b['step'] || a['displayOrder'] - b['displayOrder']);
|
|
4300
|
+
// distinctSteps.forEach((steps: any, ind: any) => {
|
|
4301
|
+
// let filteredObj: any = subQuestionResponse.filter((singleQuestion: any) => singleQuestion['clusterId'] === steps);
|
|
4302
|
+
// let obj: any = {
|
|
4303
|
+
// step: 1000 + ind,
|
|
4304
|
+
// questions: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj : [],
|
|
4305
|
+
// sectionName: !this.checkIfValueIsEmpty(filteredObj) ? filteredObj[0]['title'] : '',
|
|
4306
|
+
// isMedicalSubQuestion: true,
|
|
4307
|
+
// showSection: true,
|
|
4308
|
+
// personUWId: answerObj['personUWId'].toString(),
|
|
4309
|
+
// };
|
|
4310
|
+
// // let LaIndex: any = this.personUwMasterObj.findIndex(
|
|
4311
|
+
// // (single: any) => single['role'] === singlePerson['role']
|
|
4312
|
+
// // );
|
|
4313
|
+
// this.questionList.push(obj);
|
|
4314
|
+
// })
|
|
4315
|
+
// this.medicalSubQuestionsResponse = subQuestionResponse;
|
|
4316
|
+
// // let laIndex: any = this.personUwResponseObj['questionsResponse'].findIndex((singlePersonObj: any) => singlePersonObj['role'] === singlePerson['role']);
|
|
4317
|
+
// this.medialQuestionResponse()['questionsResponse'][0]['questionList'] = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].concat(this.medicalSubQuestionsResponse);
|
|
4318
|
+
// }
|
|
4319
|
+
// this.removeSubQuestionValues();
|
|
4320
|
+
// // this.disableConfirmationButton = false;
|
|
4321
|
+
// },
|
|
4322
|
+
// (err: any) => {
|
|
4323
|
+
// // this.disableConfirmationButton = true;
|
|
4324
|
+
// // this.loaderService.display(false);
|
|
4325
|
+
// }
|
|
4326
|
+
// );
|
|
4327
|
+
// }
|
|
4328
|
+
// // else {
|
|
4329
|
+
// // this.loaderService.display(false);
|
|
4330
|
+
// // }
|
|
4331
|
+
// if (typeof answerObj.answer === 'string' && answerObj.answer !== 'Y' && answerObj.answer !== 'N') {
|
|
4332
|
+
// // if (answerObj.answer.includes(',')) {
|
|
4333
|
+
// // answerObj.answer.split(',').forEach((answer: any) => {
|
|
4334
|
+
// // this.personUwAnswers[answer] = true;
|
|
4335
|
+
// // });
|
|
4336
|
+
// // }
|
|
4337
|
+
// // this.personUwAnswers[answerObj.answer] = true;
|
|
4338
|
+
// }
|
|
4339
|
+
// this. updatePersonUwAnswers(answerObj);
|
|
4340
|
+
// });
|
|
4341
|
+
// }
|
|
4342
|
+
// });
|
|
4343
|
+
// }
|
|
4344
|
+
// }
|
|
4345
|
+
// });
|
|
4264
4346
|
}
|
|
4265
4347
|
}
|
|
4266
4348
|
this.removeSubQuestionValues();
|
|
@@ -4348,40 +4430,33 @@ class MedialQuestionsComponent {
|
|
|
4348
4430
|
controlType: 'select',
|
|
4349
4431
|
};
|
|
4350
4432
|
}
|
|
4351
|
-
updatePersonUwAnswers(answerObj
|
|
4352
|
-
|
|
4353
|
-
|
|
4354
|
-
|
|
4355
|
-
|
|
4356
|
-
|
|
4357
|
-
|
|
4358
|
-
|
|
4433
|
+
updatePersonUwAnswers(answerObj) {
|
|
4434
|
+
if (answerObj['cammundaQuestionCode'] === 'QHT') {
|
|
4435
|
+
this.personUwAnswers['medicalQuestionsHeightInput'] = answerObj['answer'];
|
|
4436
|
+
}
|
|
4437
|
+
if (answerObj['cammundaQuestionCode'] === 'QHTF') {
|
|
4438
|
+
let feetAnswer = answerObj['answer'].split('.');
|
|
4439
|
+
if (!this.checkIfValueIsEmpty(answerObj['answer']) && answerObj['answer'].includes('.')) {
|
|
4440
|
+
this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4441
|
+
this.personUwAnswers['medicalQuestionsInchesInput'] = feetAnswer[1];
|
|
4442
|
+
}
|
|
4443
|
+
else {
|
|
4444
|
+
this.personUwAnswers['medicalQuestionFeetInput'] = feetAnswer[0];
|
|
4445
|
+
this.personUwAnswers['medicalQuestionsInchesInput'] = '0';
|
|
4446
|
+
}
|
|
4447
|
+
}
|
|
4448
|
+
let filteredQuestion = this.medialQuestionResponse()['questionsResponse'][0]['questionList'].filter((singleQuestion) => singleQuestion['questionId'] === answerObj['questionId']);
|
|
4449
|
+
if (!this.checkIfValueIsEmpty(filteredQuestion) && !this.checkIfValueIsEmpty(filteredQuestion[0])) {
|
|
4450
|
+
if (filteredQuestion[0]['questionType'] === 'CHECKBOX') {
|
|
4451
|
+
this.personUwAnswers[answerObj.questionId] = answerObj.answer.split(',');
|
|
4452
|
+
}
|
|
4453
|
+
else {
|
|
4454
|
+
this.personUwAnswers[answerObj.questionId] = answerObj.answer;
|
|
4455
|
+
}
|
|
4456
|
+
}
|
|
4359
4457
|
if (!this.checkIfValueIsEmpty(answerObj.personUWActivityResponseEntity)) {
|
|
4360
4458
|
answerObj.personUWActivityResponseEntity.forEach((subquestion) => {
|
|
4361
|
-
|
|
4362
|
-
if (!this.checkIfValueIsEmpty(filteredQuestion) && !this.checkIfValueIsEmpty(filteredQuestion[0])) {
|
|
4363
|
-
if (filteredQuestion[0]['questionType'] === 'CHECKBOX') {
|
|
4364
|
-
this.personUwAnswers[subquestion.questionId] = [];
|
|
4365
|
-
let listOfOptionsSelected = !Array.isArray(subquestion.answer) ? subquestion.answer.split(',') : subquestion.answer;
|
|
4366
|
-
listOfOptionsSelected.forEach((singleElement) => {
|
|
4367
|
-
if (!this.checkIfValueIsEmpty(filteredQuestion[0]['domainValues'])) {
|
|
4368
|
-
let filteredDomainValueObj = filteredQuestion[0]['domainValues'].filter((singleObj) => singleObj['domainInternalValue'] === singleElement);
|
|
4369
|
-
if (!this.checkIfValueIsEmpty(filteredDomainValueObj)) {
|
|
4370
|
-
this.personUwAnswers[subquestion.questionId].push({
|
|
4371
|
-
label: filteredDomainValueObj[0]['domainUiValue'],
|
|
4372
|
-
value: filteredDomainValueObj[0]['domainInternalValue']
|
|
4373
|
-
});
|
|
4374
|
-
}
|
|
4375
|
-
}
|
|
4376
|
-
});
|
|
4377
|
-
}
|
|
4378
|
-
else {
|
|
4379
|
-
this.personUwAnswers[subquestion.questionId] = subquestion.answer;
|
|
4380
|
-
}
|
|
4381
|
-
}
|
|
4382
|
-
if (!this.checkIfValueIsEmpty(subquestion)) {
|
|
4383
|
-
this.updatePersonUwAnswers(subquestion, role);
|
|
4384
|
-
}
|
|
4459
|
+
this.updatePersonUwAnswers(subquestion);
|
|
4385
4460
|
});
|
|
4386
4461
|
this.saveQuestionDetails();
|
|
4387
4462
|
}
|
|
@@ -4534,7 +4609,7 @@ class MedialQuestionsComponent {
|
|
|
4534
4609
|
pattern,
|
|
4535
4610
|
patternMessage,
|
|
4536
4611
|
},
|
|
4537
|
-
cssClass: "",
|
|
4612
|
+
cssClass: "mb-2",
|
|
4538
4613
|
isVisible: true,
|
|
4539
4614
|
options: optionsObj,
|
|
4540
4615
|
isShowLabel: true,
|
|
@@ -4650,8 +4725,13 @@ class MedialQuestionsComponent {
|
|
|
4650
4725
|
.split('!')[1]) ||
|
|
4651
4726
|
(singleQuestion['questionType'] === 'CHECKBOX' &&
|
|
4652
4727
|
!this.checkIfValueIsEmpty(this.personUwAnswers[singleQuestion['questionId']]) &&
|
|
4653
|
-
this.personUwAnswers[singleQuestion['questionId']]?.
|
|
4654
|
-
|
|
4728
|
+
this.personUwAnswers[singleQuestion['questionId']]?.includes(singleSubQuestion['parentQuestionValue'])
|
|
4729
|
+
// this.personUwAnswers[singleQuestion['questionId']]?.filter(
|
|
4730
|
+
// (singleObj: any) =>
|
|
4731
|
+
// singleObj ===
|
|
4732
|
+
// singleSubQuestion['parentQuestionValue']
|
|
4733
|
+
// ).length > 0
|
|
4734
|
+
)) {
|
|
4655
4735
|
showQuestion = true;
|
|
4656
4736
|
}
|
|
4657
4737
|
});
|
|
@@ -5767,7 +5847,7 @@ class MedialQuestionsComponent {
|
|
|
5767
5847
|
this.removeSubQuestionValues();
|
|
5768
5848
|
}
|
|
5769
5849
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MedialQuestionsComponent, deps: [{ token: i0.NgZone }, { token: MasterService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5770
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: MedialQuestionsComponent, isStandalone: true, selector: "lib-medial-questions", inputs: { medialQuestionResponse: { classPropertyName: "medialQuestionResponse", publicName: "medialQuestionResponse", isSignal: true, isRequired: false, transformFunction: null }, personUWOpenQuoteResponse: { classPropertyName: "personUWOpenQuoteResponse", publicName: "personUWOpenQuoteResponse", isSignal: true, isRequired: false, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "addressInput", first: true, predicate: ["addressInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\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 mb-4\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title bold-label\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <lib-hr-line [field]=\"horizontalLineObj\" />\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=\"field-lable 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 >*</span\r\n >\r\n </label> -->\r\n <div class=\"col-12 px-0 my-1\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" (blur)=\"removeSubQuestionValues()\" />\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 field-lable\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >*</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 class=\"row col-12 my-1\" *ngIf=\"personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\">\r\n <div class=\"col-7 py-0 heightInputs\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHT']['field']\" />\r\n </div>\r\n <div class=\"col-5\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\r\n </div>\r\n </div>\r\n <div\r\n class=\"row\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionFeetInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsInchesInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-4 py-0 my-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\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 card-topic\">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 card-topic\">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 *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=\"my-1\"\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)=\"valueChangeForMultiselect(questions)\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\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=\"my-1\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\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=\"my-1\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" (filePreview)=\"onDocumentFilePreview($event)\" />\r\n <lib-file-preview\r\n *ngIf=\"previewFile\"\r\n [field]=\"questions['field']\"\r\n [file]=\"previewFile\"\r\n (closed)=\"closeFilePreview()\">\r\n </lib-file-preview>\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", styles: [".map-container{width:100%;position:relative}.address-search-container{position:relative}.address-search-container input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.address-search-container input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.pac-container{z-index:10000!important;border-radius:4px;border:1px solid #ddd;box-shadow:0 2px 6px #0000004d}.pac-item{padding:10px;border-bottom:1px solid #eee;cursor:pointer}.pac-item:hover{background-color:#f5f5f5}.selected-address{padding:8px;background-color:#f8f9fa;border-radius:4px;border-left:3px solid #28a745}.map-container ::ng-deep google-map>div{height:400px!important;width:auto!important}.medicalQues{font-size:12px;font-style:normal;font-weight:400;line-height:normal}.heightinput{border:2px solid #fb0;padding:10px;border-radius:4px;width:fit-content}.heightInputs{display:flex;align-items:center;gap:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange", "infoClick"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "valueChange", "dateSelected", "invalidDate"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["documentUploaderField", "field", "reactiveFormControlobject"], outputs: ["filesChanged", "fileRemoved", "filePreview"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "ngmodule", type: GoogleMapsModule }, { kind: "component", type: i4$4.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapId", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "directive", type: i4$4.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged", "markerInitialized"], exportAs: ["mapMarker"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: FilePreviewComponent, selector: "lib-file-preview", inputs: ["field", "file"], outputs: ["closed"] }] });
|
|
5850
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.13", type: MedialQuestionsComponent, isStandalone: true, selector: "lib-medial-questions", inputs: { medialQuestionResponse: { classPropertyName: "medialQuestionResponse", publicName: "medialQuestionResponse", isSignal: true, isRequired: false, transformFunction: null }, personUWOpenQuoteResponse: { classPropertyName: "personUWOpenQuoteResponse", publicName: "personUWOpenQuoteResponse", isSignal: true, isRequired: false, transformFunction: null }, field: { classPropertyName: "field", publicName: "field", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "addressInput", first: true, predicate: ["addressInput"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "\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 mb-4\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title bold-label\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <lib-hr-line [field]=\"horizontalLineObj\" />\r\n <div *ngFor=\"let questions of section['questions']\" class=\"row\">\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 [ngClass]=\"questions?.field?.cssClass\"\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=\"field-lable 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 >*</span\r\n >\r\n </label> -->\r\n <div class=\"col-12 px-0 my-1\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" (blur)=\"removeSubQuestionValues()\" />\r\n </div>\r\n </div>\r\n\r\n <div\r\n [ngClass]=\"questions?.field?.cssClass\"\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 field-lable\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >*</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 class=\"row col-12 my-1\" *ngIf=\"personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\">\r\n <div class=\"col-7 py-0 heightInputs\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHT']['field']\" />\r\n </div>\r\n <div class=\"col-5\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\r\n </div>\r\n </div>\r\n <div\r\n class=\"row\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionFeetInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsInchesInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-4 py-0 my-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\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 card-topic\">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 card-topic\">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 [ngClass]=\"questions?.field?.cssClass\"\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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)=\"valueChangeForMultiselect(questions)\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" (filePreview)=\"onDocumentFilePreview($event)\" />\r\n <lib-file-preview\r\n *ngIf=\"previewFile\"\r\n [field]=\"questions['field']\"\r\n [file]=\"previewFile\"\r\n (closed)=\"closeFilePreview()\">\r\n </lib-file-preview>\r\n </div>\r\n\r\n\r\n <div\r\n [ngClass]=\"questions?.field?.cssClass\"\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", styles: [".map-container{width:100%;position:relative}.address-search-container{position:relative}.address-search-container input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.address-search-container input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.pac-container{z-index:10000!important;border-radius:4px;border:1px solid #ddd;box-shadow:0 2px 6px #0000004d}.pac-item{padding:10px;border-bottom:1px solid #eee;cursor:pointer}.pac-item:hover{background-color:#f5f5f5}.selected-address{padding:8px;background-color:#f8f9fa;border-radius:4px;border-left:3px solid #28a745}.map-container ::ng-deep google-map>div{height:400px!important;width:auto!important}.medicalQues{font-size:12px;font-style:normal;font-weight:400;line-height:normal}.heightinput{border:2px solid #fb0;padding:10px;border-radius:4px;width:fit-content}.heightInputs{display:flex;align-items:center;gap:10px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: TextboxComponent, selector: "lib-textbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur"] }, { kind: "component", type: RadioComponent, selector: "lib-radio", inputs: ["reactiveFormControlobject", "field"], outputs: ["change"] }, { kind: "component", type: CheckboxComponent, selector: "lib-checkbox", inputs: ["field", "reactiveFormControlobject"], outputs: ["change"] }, { kind: "component", type: SelectComponent, selector: "lib-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange", "infoClick"] }, { kind: "component", type: DobComponent, selector: "lib-dob", inputs: ["field", "reactiveFormControlobject"], outputs: ["blur", "valueChange", "dateSelected", "invalidDate"] }, { kind: "component", type: UploadComponent, selector: "lib-upload", inputs: ["documentUploaderField", "field", "reactiveFormControlobject"], outputs: ["filesChanged", "fileRemoved", "filePreview"] }, { kind: "component", type: MultipleSelectComponent, selector: "lib-multiple-select", inputs: ["field", "reactiveFormControlobject"], outputs: ["selectionChange"] }, { kind: "ngmodule", type: GoogleMapsModule }, { kind: "component", type: i4$4.GoogleMap, selector: "google-map", inputs: ["height", "width", "mapId", "mapTypeId", "center", "zoom", "options"], outputs: ["mapInitialized", "authFailure", "boundsChanged", "centerChanged", "mapClick", "mapDblclick", "mapDrag", "mapDragend", "mapDragstart", "headingChanged", "idle", "maptypeidChanged", "mapMousemove", "mapMouseout", "mapMouseover", "projectionChanged", "mapRightclick", "tilesloaded", "tiltChanged", "zoomChanged"], exportAs: ["googleMap"] }, { kind: "directive", type: i4$4.MapMarker, selector: "map-marker", inputs: ["title", "position", "label", "clickable", "options", "icon", "visible"], outputs: ["animationChanged", "mapClick", "clickableChanged", "cursorChanged", "mapDblclick", "mapDrag", "mapDragend", "draggableChanged", "mapDragstart", "flatChanged", "iconChanged", "mapMousedown", "mapMouseout", "mapMouseover", "mapMouseup", "positionChanged", "mapRightclick", "shapeChanged", "titleChanged", "visibleChanged", "zindexChanged", "markerInitialized"], exportAs: ["mapMarker"] }, { kind: "component", type: HrLineComponent, selector: "lib-hr-line", inputs: ["field"] }, { kind: "component", type: FilePreviewComponent, selector: "lib-file-preview", inputs: ["field", "file"], outputs: ["closed"] }] });
|
|
5771
5851
|
}
|
|
5772
5852
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: MedialQuestionsComponent, decorators: [{
|
|
5773
5853
|
type: Component,
|
|
@@ -5785,7 +5865,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
5785
5865
|
GoogleMapsModule,
|
|
5786
5866
|
HrLineComponent,
|
|
5787
5867
|
FilePreviewComponent
|
|
5788
|
-
], template: "\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 mb-4\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title bold-label\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <lib-hr-line [field]=\"horizontalLineObj\" />\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=\"field-lable 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 >*</span\r\n >\r\n </label> -->\r\n <div class=\"col-12 px-0 my-1\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" (blur)=\"removeSubQuestionValues()\" />\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 field-lable\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >*</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 class=\"row col-12 my-1\" *ngIf=\"personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\">\r\n <div class=\"col-7 py-0 heightInputs\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHT']['field']\" />\r\n </div>\r\n <div class=\"col-5\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\r\n </div>\r\n </div>\r\n <div\r\n class=\"row\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionFeetInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsInchesInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-4 py-0 my-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\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 card-topic\">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 card-topic\">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 *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=\"my-1\"\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)=\"valueChangeForMultiselect(questions)\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\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=\"my-1\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\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=\"my-1\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" (filePreview)=\"onDocumentFilePreview($event)\" />\r\n <lib-file-preview\r\n *ngIf=\"previewFile\"\r\n [field]=\"questions['field']\"\r\n [file]=\"previewFile\"\r\n (closed)=\"closeFilePreview()\">\r\n </lib-file-preview>\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", styles: [".map-container{width:100%;position:relative}.address-search-container{position:relative}.address-search-container input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.address-search-container input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.pac-container{z-index:10000!important;border-radius:4px;border:1px solid #ddd;box-shadow:0 2px 6px #0000004d}.pac-item{padding:10px;border-bottom:1px solid #eee;cursor:pointer}.pac-item:hover{background-color:#f5f5f5}.selected-address{padding:8px;background-color:#f8f9fa;border-radius:4px;border-left:3px solid #28a745}.map-container ::ng-deep google-map>div{height:400px!important;width:auto!important}.medicalQues{font-size:12px;font-style:normal;font-weight:400;line-height:normal}.heightinput{border:2px solid #fb0;padding:10px;border-radius:4px;width:fit-content}.heightInputs{display:flex;align-items:center;gap:10px}\n"] }]
|
|
5868
|
+
], template: "\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 mb-4\"\r\n id=\"personUwMedicalQuestions\"\r\n >\r\n <h6 class=\"page-title bold-label\">\r\n {{ getTitleCase(section[\"sectionName\"]) }}\r\n </h6>\r\n <lib-hr-line [field]=\"horizontalLineObj\" />\r\n <div *ngFor=\"let questions of section['questions']\" class=\"row\">\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 [ngClass]=\"questions?.field?.cssClass\"\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=\"field-lable 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 >*</span\r\n >\r\n </label> -->\r\n <div class=\"col-12 px-0 my-1\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers[questions.questionId]\" [field]=\"questions['field']\" (blur)=\"removeSubQuestionValues()\" />\r\n </div>\r\n </div>\r\n\r\n <div\r\n [ngClass]=\"questions?.field?.cssClass\"\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 field-lable\"\r\n >Height\r\n <span\r\n style=\"color: #ee0000\"\r\n >*</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 class=\"row col-12 my-1\" *ngIf=\"personUwAnswers['medicalQuestionsHeightUnit'] === 'CM'\">\r\n <div class=\"col-7 py-0 heightInputs\">\r\n <lib-textbox [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHT']['field']\" />\r\n </div>\r\n <div class=\"col-5\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\r\n </div>\r\n </div>\r\n <div\r\n class=\"row\"\r\n *ngIf=\"\r\n personUwAnswers[\r\n 'medicalQuestionsHeightUnit'\r\n ] === 'FEET'\r\n \"\r\n >\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionFeetInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTF']['field']\" />\r\n </div>\r\n <div class=\"col-4 py-0 my-1\">\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsInchesInput']\" (ngModelChange)=\"removeSubQuestionValues()\" [field]=\"medQuestionObj['QHTI']['field']\" />\r\n </div>\r\n <div\r\n class=\"col-4 py-0 my-1\"\r\n >\r\n <lib-select [(ngModel)]=\"personUwAnswers['medicalQuestionsHeightUnit']\" [field]=\"medQuestionObj['heightObjectTypes']\" (ngModelChange)=\"checkAndUpdateHeightUnit()\" />\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 card-topic\">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 card-topic\">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 [ngClass]=\"questions?.field?.cssClass\"\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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)=\"valueChangeForMultiselect(questions)\" [field]=\"questions['field']\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\r\n </div>\r\n\r\n <div\r\n class=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\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']\" (ngModelChange)=\"removeSubQuestionValues()\" />\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=\"my-1\"\r\n [ngClass]=\"questions?.field?.cssClass\"\r\n *ngIf=\"\r\n questions['questionType'] === 'DOCUPLOAD' &&\r\n questions['isShowQuestionInUI']\r\n \"\r\n >\r\n <lib-upload [field]=\"questions['field']\" (filePreview)=\"onDocumentFilePreview($event)\" />\r\n <lib-file-preview\r\n *ngIf=\"previewFile\"\r\n [field]=\"questions['field']\"\r\n [file]=\"previewFile\"\r\n (closed)=\"closeFilePreview()\">\r\n </lib-file-preview>\r\n </div>\r\n\r\n\r\n <div\r\n [ngClass]=\"questions?.field?.cssClass\"\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", styles: [".map-container{width:100%;position:relative}.address-search-container{position:relative}.address-search-container input{width:100%;padding:10px;border:1px solid #ddd;border-radius:4px;box-sizing:border-box}.address-search-container input:focus{outline:none;border-color:#4285f4;box-shadow:0 0 0 2px #4285f433}.pac-container{z-index:10000!important;border-radius:4px;border:1px solid #ddd;box-shadow:0 2px 6px #0000004d}.pac-item{padding:10px;border-bottom:1px solid #eee;cursor:pointer}.pac-item:hover{background-color:#f5f5f5}.selected-address{padding:8px;background-color:#f8f9fa;border-radius:4px;border-left:3px solid #28a745}.map-container ::ng-deep google-map>div{height:400px!important;width:auto!important}.medicalQues{font-size:12px;font-style:normal;font-weight:400;line-height:normal}.heightinput{border:2px solid #fb0;padding:10px;border-radius:4px;width:fit-content}.heightInputs{display:flex;align-items:center;gap:10px}\n"] }]
|
|
5789
5869
|
}], ctorParameters: () => [{ type: i0.NgZone }, { type: MasterService }], propDecorators: { addressInput: [{
|
|
5790
5870
|
type: ViewChild,
|
|
5791
5871
|
args: ['addressInput']
|