commons-assessment 12.0.0
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/README.md +191 -0
- package/bundles/commons-assessment.umd.js +3968 -0
- package/bundles/commons-assessment.umd.js.map +1 -0
- package/commons-assessment.d.ts +5 -0
- package/esm2015/commons-assessment.js +5 -0
- package/esm2015/lib/commons-assessment.module.js +28 -0
- package/esm2015/lib/configuration.js +4 -0
- package/esm2015/lib/modules/assessment-maker/assessment-maker.component.js +409 -0
- package/esm2015/lib/modules/assessment-maker/assessment-maker.module.js +52 -0
- package/esm2015/lib/modules/assessment-maker/components/add-edit-section-introduction/add-edit-section-introduction.component.js +55 -0
- package/esm2015/lib/modules/assessment-maker/components/assessment-builder/assessment-builder.component.js +551 -0
- package/esm2015/lib/modules/assessment-maker/components/question-details/question-details.component.js +75 -0
- package/esm2015/lib/modules/assessment-maker/services/assessment-builder.service.js +150 -0
- package/esm2015/lib/modules/assessment-maker/services/assessment-maker.service.js +55 -0
- package/esm2015/lib/modules/assessment-taker/assessment-taker.component.js +618 -0
- package/esm2015/lib/modules/assessment-taker/assessment-taker.module.js +70 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-editor/question-type-editor.component.js +70 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-file-upload/question-type-file-upload.component.js +153 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-long/question-type-long.component.js +74 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-multiselect/question-type-multiselect.component.js +105 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-number/question-type-number.component.js +47 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-objective/question-type-objective.component.js +91 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-preference/question-type-preference.component.js +105 -0
- package/esm2015/lib/modules/assessment-taker/components/question-type-short/question-type-short.component.js +98 -0
- package/esm2015/lib/modules/assessment-taker/components/section-instructions/section-instructions.component.js +61 -0
- package/esm2015/lib/modules/assessment-taker/services/assessment-taker.service.js +58 -0
- package/esm2015/lib/modules/assessment-taker/services/response-builder.service.js +202 -0
- package/esm2015/lib/shared/components/text-editor/text-editor.component.js +119 -0
- package/esm2015/lib/shared/controllers.js +21 -0
- package/esm2015/lib/shared/interfaces/assessment.interface.js +2 -0
- package/esm2015/lib/shared/interfaces/question-paper.interface.js +2 -0
- package/esm2015/lib/shared/interfaces/question.interface.js +2 -0
- package/esm2015/lib/shared/material-modules.js +74 -0
- package/esm2015/lib/shared/pipes/order-by.pipe.js +25 -0
- package/esm2015/lib/shared/shared.module.js +48 -0
- package/esm2015/lib/shared/utils.js +16 -0
- package/esm2015/public-api.js +13 -0
- package/fesm2015/commons-assessment.js +3278 -0
- package/fesm2015/commons-assessment.js.map +1 -0
- package/lib/commons-assessment.module.d.ts +10 -0
- package/lib/configuration.d.ts +5 -0
- package/lib/modules/assessment-maker/assessment-maker.component.d.ts +64 -0
- package/lib/modules/assessment-maker/assessment-maker.module.d.ts +14 -0
- package/lib/modules/assessment-maker/components/add-edit-section-introduction/add-edit-section-introduction.component.d.ts +24 -0
- package/lib/modules/assessment-maker/components/assessment-builder/assessment-builder.component.d.ts +70 -0
- package/lib/modules/assessment-maker/components/question-details/question-details.component.d.ts +36 -0
- package/lib/modules/assessment-maker/services/assessment-builder.service.d.ts +43 -0
- package/lib/modules/assessment-maker/services/assessment-maker.service.d.ts +22 -0
- package/lib/modules/assessment-taker/assessment-taker.component.d.ts +81 -0
- package/lib/modules/assessment-taker/assessment-taker.module.d.ts +20 -0
- package/lib/modules/assessment-taker/components/question-type-editor/question-type-editor.component.d.ts +22 -0
- package/lib/modules/assessment-taker/components/question-type-file-upload/question-type-file-upload.component.d.ts +38 -0
- package/lib/modules/assessment-taker/components/question-type-long/question-type-long.component.d.ts +23 -0
- package/lib/modules/assessment-taker/components/question-type-multiselect/question-type-multiselect.component.d.ts +25 -0
- package/lib/modules/assessment-taker/components/question-type-number/question-type-number.component.d.ts +13 -0
- package/lib/modules/assessment-taker/components/question-type-objective/question-type-objective.component.d.ts +23 -0
- package/lib/modules/assessment-taker/components/question-type-preference/question-type-preference.component.d.ts +25 -0
- package/lib/modules/assessment-taker/components/question-type-short/question-type-short.component.d.ts +25 -0
- package/lib/modules/assessment-taker/components/section-instructions/section-instructions.component.d.ts +24 -0
- package/lib/modules/assessment-taker/services/assessment-taker.service.d.ts +20 -0
- package/lib/modules/assessment-taker/services/response-builder.service.d.ts +16 -0
- package/lib/shared/components/text-editor/text-editor.component.d.ts +24 -0
- package/lib/shared/controllers.d.ts +19 -0
- package/lib/shared/interfaces/assessment.interface.d.ts +133 -0
- package/lib/shared/interfaces/question-paper.interface.d.ts +73 -0
- package/lib/shared/interfaces/question.interface.d.ts +82 -0
- package/lib/shared/material-modules.d.ts +18 -0
- package/lib/shared/pipes/order-by.pipe.d.ts +7 -0
- package/lib/shared/shared.module.d.ts +12 -0
- package/lib/shared/utils.d.ts +2 -0
- package/package.json +22 -0
- package/public-api.d.ts +9 -0
- package/src/lib/assets/images/action-dots.svg +5 -0
- package/src/lib/assets/images/add-section.svg +4 -0
- package/src/lib/assets/images/arrow-down-black.svg +3 -0
- package/src/lib/assets/images/arrow-ramp-left.svg +3 -0
- package/src/lib/assets/images/close.svg +3 -0
- package/src/lib/assets/images/copy.svg +3 -0
- package/src/lib/assets/images/delete.svg +1 -0
- package/src/lib/assets/images/drag-drop.svg +8 -0
- package/src/lib/assets/images/file.svg +5 -0
- package/src/lib/assets/images/go-back.svg +3 -0
- package/src/lib/assets/images/info.svg +3 -0
- package/src/lib/assets/images/jpeg.svg +5 -0
- package/src/lib/assets/images/jpg.svg +5 -0
- package/src/lib/assets/images/keyboard.svg +3 -0
- package/src/lib/assets/images/no-questions.svg +14 -0
- package/src/lib/assets/images/pdf.svg +5 -0
- package/src/lib/assets/images/pencil.svg +3 -0
- package/src/lib/assets/images/plus-primary.svg +3 -0
- package/src/lib/assets/images/png.svg +5 -0
- package/src/lib/assets/images/svg.svg +5 -0
- package/src/lib/assets/json/imageConfig.json +22 -0
- package/src/lib/assets/json/labelConfig.json +96 -0
- package/src/lib/assets/json/question-builder-rules.json +97 -0
- package/src/lib/assets/json/questionTypes.json +50 -0
- package/src/lib/assets/theme/_theme.global.scss +63 -0
- package/src/lib/assets/theme/_theme.scss +568 -0
- package/src/lib/assets/theme/styles.global.scss +191 -0
- package/src/lib/assets/theme/styles.scss +63 -0
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { Component, Optional, Self, Input } from '@angular/core';
|
|
2
|
+
import { FormControl } from '@angular/forms';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "@angular/forms";
|
|
5
|
+
import * as i2 from "@angular/common";
|
|
6
|
+
export class QuestionTypeShortComponent {
|
|
7
|
+
constructor(ngControl) {
|
|
8
|
+
this.ngControl = ngControl;
|
|
9
|
+
this.previewMode = false;
|
|
10
|
+
this.labelConfig = {};
|
|
11
|
+
this.formControl = new FormControl('');
|
|
12
|
+
this.onTouched = () => { };
|
|
13
|
+
if (this.ngControl != null) {
|
|
14
|
+
this.ngControl.valueAccessor = this;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
checkFormControlValid() {
|
|
18
|
+
var _a, _b, _c, _d;
|
|
19
|
+
if (((_b = (_a = this.ngControl) === null || _a === void 0 ? void 0 : _a.control) === null || _b === void 0 ? void 0 : _b.touched) && ((_d = (_c = this.ngControl) === null || _c === void 0 ? void 0 : _c.control) === null || _d === void 0 ? void 0 : _d.invalid)) {
|
|
20
|
+
return 'assessment-input-border-invalid';
|
|
21
|
+
}
|
|
22
|
+
return '';
|
|
23
|
+
}
|
|
24
|
+
writeValue(value) {
|
|
25
|
+
if (value !== undefined && value !== null) {
|
|
26
|
+
this.formControl.setValue(value, { emitEvent: false });
|
|
27
|
+
}
|
|
28
|
+
else {
|
|
29
|
+
this.formControl.setValue('', { emitEvent: false });
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
registerOnChange(fn) {
|
|
33
|
+
this.formControl.valueChanges.subscribe((val) => fn(val));
|
|
34
|
+
}
|
|
35
|
+
registerOnTouched(fn) {
|
|
36
|
+
this.onTouched = fn;
|
|
37
|
+
}
|
|
38
|
+
setDisabledState(isDisabled) {
|
|
39
|
+
if (isDisabled) {
|
|
40
|
+
this.formControl.disable({ emitEvent: false });
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
this.formControl.enable({ emitEvent: false });
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
get maxCharCount() {
|
|
47
|
+
var _a, _b;
|
|
48
|
+
const config = (_b = (_a = this.question) === null || _a === void 0 ? void 0 : _a.questionConfigs) === null || _b === void 0 ? void 0 : _b.find(c => c.configKey === 'maxCharacterCount');
|
|
49
|
+
return config ? Number(config.configValue) : 0;
|
|
50
|
+
}
|
|
51
|
+
get inputType() {
|
|
52
|
+
var _a, _b;
|
|
53
|
+
switch ((_b = (_a = this.question) === null || _a === void 0 ? void 0 : _a.questionType) === null || _b === void 0 ? void 0 : _b.code) {
|
|
54
|
+
case 'QUESTION_TYPE.NUMBER':
|
|
55
|
+
return 'number';
|
|
56
|
+
case 'QUESTION_TYPE.EMAIL':
|
|
57
|
+
return 'email';
|
|
58
|
+
case 'QUESTION_TYPE.CONTACT_NUMBER':
|
|
59
|
+
return 'tel';
|
|
60
|
+
case 'QUESTION_TYPE.URL':
|
|
61
|
+
return 'url';
|
|
62
|
+
default:
|
|
63
|
+
return 'text';
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
restrictNumberOnly(event) {
|
|
67
|
+
var _a, _b, _c, _d;
|
|
68
|
+
if (((_b = (_a = this.question) === null || _a === void 0 ? void 0 : _a.questionType) === null || _b === void 0 ? void 0 : _b.code) === 'QUESTION_TYPE.NUMBER' || ((_d = (_c = this.question) === null || _c === void 0 ? void 0 : _c.questionType) === null || _d === void 0 ? void 0 : _d.code) === 'QUESTION_TYPE.CONTACT_NUMBER') {
|
|
69
|
+
const allowedKeys = ['Backspace', 'ArrowLeft', 'ArrowRight', 'Tab', 'Delete'];
|
|
70
|
+
if (!/^[0-9]$/.test(event.key) && !allowedKeys.includes(event.key)) {
|
|
71
|
+
event.preventDefault();
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
QuestionTypeShortComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionTypeShortComponent, deps: [{ token: i1.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
77
|
+
QuestionTypeShortComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionTypeShortComponent, selector: "lib-question-type-short", inputs: { required: "required", question: "question", previewMode: "previewMode", labelConfig: "labelConfig" }, ngImport: i0, template: "<input *ngIf=\"!previewMode else previewModeTemplate\" [type]=\"inputType\" [ngClass]=\"checkFormControlValid()\"\r\n [id]=\"question.id\" [formControl]=\"formControl\"\r\n class=\"col-12 assessment-text-regular-13 assessment-input-border-one assessment-border-radius-two assessment-input-padding outline-0 assessment-bg-grey-one\"\r\n [placeholder]=\"labelConfig['COMMONS_ASSESSMENT.PLACEHOLDER.ANSWER']\" [required]=\"required\" (blur)=\"onTouched()\"\r\n [attr.maxlength]=\"maxCharCount || null\" (keydown)=\"restrictNumberOnly($event)\">\r\n\r\n<ng-template #previewModeTemplate>\r\n <span class=\"assessment-text-regular-13 assessment-text-grey-nine\">{{ formControl.value }}</span>\r\n</ng-template>", styles: [".assessment-text-grey-ten{color:var(--assessment-grey-ten)!important}.assessment-bg-grey-ten{background-color:var(--assessment-grey-ten)!important}.assessment-text-grey-nine{color:var(--assessment-grey-nine)!important}.assessment-bg-grey-nine{background-color:var(--assessment-grey-nine)!important}.assessment-text-grey-eight{color:var(--assessment-grey-eight)!important}.assessment-bg-grey-eight{background-color:var(--assessment-grey-eight)!important}.assessment-text-grey-seven{color:var(--assessment-grey-seven)!important}.assessment-bg-grey-seven{background-color:var(--assessment-grey-seven)!important}.assessment-text-grey-six{color:var(--assessment-grey-six)!important}.assessment-bg-grey-six{background-color:var(--assessment-grey-six)!important}.assessment-text-grey-five{color:var(--assessment-grey-five)!important}.assessment-bg-grey-five{background-color:var(--assessment-grey-five)!important}.assessment-text-grey-four{color:var(--assessment-grey-four)!important}.assessment-bg-grey-four{background-color:var(--assessment-grey-four)!important}.assessment-text-grey-three{color:var(--assessment-grey-three)!important}.assessment-bg-grey-three{background-color:var(--assessment-grey-three)!important}.assessment-text-grey-two{color:var(--assessment-grey-two)!important}.assessment-bg-grey-two{background-color:var(--assessment-grey-two)!important}.assessment-text-grey-one{color:var(--assessment-grey-one)!important}.assessment-bg-grey-one{background-color:var(--assessment-grey-one)!important}.assessment-text-white{color:var(--assessment-white)!important}.assessment-bg-white{background-color:var(--assessment-white)!important}.assessment-text-black{color:var(--assessment-black)!important}.assessment-bg-black{background-color:var(--assessment-black)!important}.assessment-text-danger{color:var(--assessment-danger)!important}.assessment-bg-danger{background-color:var(--assessment-danger)!important}.assessment-text-primary-one{color:var(--assessment-primary-one)!important}.assessment-bg-primary-one{background-color:var(--assessment-primary-one)!important}.assessment-text-primary-four{color:var(--assessment-primary-four)!important}.assessment-bg-primary-four{background-color:var(--assessment-primary-four)!important}.assessment-text-palette-EDF3FD{color:var(--assessment-palette-EDF3FD)!important}.assessment-bg-palette-EDF3FD{background-color:var(--assessment-palette-EDF3FD)!important}.assessment-text-palette-C8DAF9{color:var(--assessment-palette-C8DAF9)!important}.assessment-bg-palette-C8DAF9{background-color:var(--assessment-palette-C8DAF9)!important}.assessment-text-palette-ADC9F6{color:var(--assessment-palette-ADC9F6)!important}.assessment-bg-palette-ADC9F6{background-color:var(--assessment-palette-ADC9F6)!important}.assessment-text-palette-FEF9F1{color:var(--assessment-palette-FEF9F1)!important}.assessment-bg-palette-FEF9F1{background-color:var(--assessment-palette-FEF9F1)!important}.assessment-text-palette-F9DAA6{color:var(--assessment-palette-F9DAA6)!important}.assessment-bg-palette-F9DAA6{background-color:var(--assessment-palette-F9DAA6)!important}.assessment-text-palette-E8F7F0{color:var(--assessment-palette-E8F7F0)!important}.assessment-bg-palette-E8F7F0{background-color:var(--assessment-palette-E8F7F0)!important}.assessment-text-palette-B7E7CF{color:var(--assessment-palette-B7E7CF)!important}.assessment-bg-palette-B7E7CF{background-color:var(--assessment-palette-B7E7CF)!important}.assessment-box-shadow-one{box-shadow:var(--assessment-box-shadow-one)!important}.assessment-border-radius-one{border-radius:var(--assessment-border-radius-one)!important}.assessment-border-radius-two{border-radius:var(--assessment-border-radius-two)!important}.assessment-border-radius-three{border-radius:var(--assessment-border-radius-three)!important}.assessment-border-radius-four{border-radius:var(--assessment-border-radius-four)!important}.assessment-border-radius-five{border-radius:var(--assessment-border-radius-five)!important}.assessment-border-radius-six{border-radius:var(--assessment-border-radius-six)!important}.assessment-input-border-one{border:var(--assessment-input-border-one)!important}.assessment-input-border-invalid{border:var(--assessment-input-border-invalid)!important}.assessment-input-focus-border{border:var(--assessment-input-focus-border)!important}.assessment-border-two{border:var(--assessment-border-two)!important}.assessment-card-border{border:var(--assessment-card-border)!important}.assessment-tooltip-border{border:var(--assessment-tooltip-border)!important}.assessment-box-shadow-tooltip{box-shadow:var(--assessment-box-shadow-tooltip)!important}.assessment-button-padding{padding:var(--assessment-button-padding)!important}.assessment-button-padding-large{padding:var(--assessment-button-padding-large)!important}.assessment-input-padding{padding:var(--assessment-input-padding)!important}.assessment-text-font-family{color:var(--assessment-font-family)!important}.assessment-bg-font-family{background-color:var(--assessment-font-family)!important}.assessment-text-regular-12{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-bold-12{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-semibold-12{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-semibold-11{font-weight:600;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-medium-11{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-regular-11{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-medium-12{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-regular-13{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-bold-13{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-semibold-13{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-medium-13{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-regular-14{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-bold-14{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-medium-14{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw)!important;line-height:calc(1.2rem + .2vw)!important}.assessment-text-semibold-14{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-semibold-10{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.55rem + .1vw);line-height:calc(1rem + .1vw)}.assessment-text-regular-10{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.55rem + .1vw)!important;line-height:calc(1rem + .1vw)}.assessment-text-regular-15{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.85rem + .1vw);line-height:calc(1.4rem + .1vw)}.assessment-text-medium-15{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-semibold-15{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-bold-15{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-regular-16{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-semibold-16{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-bold-16{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-medium-16{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-regular-20{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-bold-20{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-semibold-20{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-medium-20{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-medium-18{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .1vw)!important}.assessment-text-regular-18{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .3vw)!important}.assessment-text-bold-18{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw);line-height:calc(1.5rem + .1vw)}.assessment-text-semibold-18{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .1vw)!important}.assessment-text-bold-34{overflow-wrap:break-word;font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(2rem + .15vw);line-height:calc(2.5rem + .15vw)}.assessment-text-medium-34{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(2rem + .15vw);line-height:calc(2.5rem + .15vw)}.assessment-text-bold-32{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.3rem + .75vw);line-height:calc(1.625rem + .5vw)}.assessment-text-bold-22{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-regular-22{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-semibold-22{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-medium-22{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-bold-24{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-regular-24{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-semibold-24{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-medium-24{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.8rem + .75vw);line-height:calc(1.2rem + .75vw)}.assessment-text-regular-26{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-medium-26{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-bold-26{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-semibold-26{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-regular-28{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-medium-28{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-semibold-28{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw);letter-spacing:1}.assessment-text-bold-28{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-regular-30{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .4vw)}.assessment-text-medium-30{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-bold-30{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .4vw);line-height:calc(2rem + .4vw)}.assessment-text-semibold-30{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .4vw);line-height:calc(1.5rem + .4vw);letter-spacing:.5}.assessment-text-bold-36{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(2rem + .25vw);line-height:calc(2.5rem + .3vw)}.assessment-text-semibold-36{font-weight:600;font-family:var(--assessment-font-family);font-size:calc(2rem + .25vw);line-height:calc(2.5rem + .3vw)}@media (min-height: 100vw) and (orientation: portrait){.assessment-text-bold-34{font-size:calc(1.8rem + .15vh);line-height:calc(2.2rem + .15vh)}.assessment-text-bold-32{font-size:calc(1.3rem + 1vh);line-height:calc(1.5rem + 1vh)}.assessment-text-semibold-30{font-size:calc(1.5rem + .4vh);line-height:calc(1.8rem + .4vh)}.assessment-text-medium-24{line-height:2.188rem}.assessment-text-medium-24,.assessment-text-regular-24,.assessment-text-semibold-24,.assessment-text-bold-24,.assessment-text-light-24{font-size:calc(1.3rem + .5vh);line-height:calc(1.8rem + .5vh)}.assessment-text-medium-18,.assessment-text-regular-18,.assessment-text-bold-18,.assessment-text-semibold-18,.assessment-text-light-18{font-size:calc(1rem + .1vh)!important;line-height:calc(1.6rem + .1vh)!important}.assessment-text-light-16,.assessment-text-bold-16{font-size:calc(.9rem + .3vh)!important;line-height:calc(1.2rem + .3vh)!important}.assessment-text-medium-16,.assessment-text-semibold-16,.assessment-text-regular-16{font-size:calc(.9rem + .2vh)!important;line-height:calc(1.4rem + .2vh)!important}.assessment-text-regular-15,.assessment-text-semibold-15,.assessment-text-bold-15,.assessment-text-light-15{font-size:calc(.8rem + .2vh);line-height:calc(1.27rem + .2vh)}.assessment-text-medium-15{font-size:calc(.8rem + .2vh);line-height:calc(1.27rem + .2vh)}.assessment-text-medium-12,.assessment-text-regular-12,.assessment-text-semibold-12,.assessment-text-bold-12,.assessment-text-medium-upper-12,.assessment-text-light-12{font-size:calc(.5rem + .4vh);line-height:calc(.8rem + .4vh)}.assessment-text-medium-14,.assessment-text-regular-14,.assessment-text-light-14,.assessment-text-medium-upper-14,.assessment-text-semibold-14,.assessment-text-bold-14{font-size:calc(.8rem + .1vh)!important;line-height:calc(1.2rem + .2vh)!important}.assessment-text-regular-13,.assessment-text-medium-13,.assessment-text-semibold-13,.assessment-text-bold-13,.assessment-text-light-13{font-size:calc(.7rem + .2vh)!important;line-height:calc(1rem + .3vh)!important}.assessment-text-regular-11,.assessment-text-medium-11,.assessment-text-semibold-11,.assessment-text-bold-11,.assessment-text-light-11{font-size:calc(.5rem + .2vh)!important;line-height:calc(.8rem + .2vh)!important}}.assessment-btn-primary{background-color:var(--assessment-primary-one);color:var(--assessment-white);border:.064rem solid var(--assessment-primary-one);border-radius:var(--assessment-border-radius-two)}.assessment-btn-primary-transparent{background-color:var(--assessment-white);color:var(--assessment-primary-one);border-radius:var(--assessment-border-radius-two);border:.064rem solid var(--assessment-primary-one)}.assessment-zoom-animation{transition:transform .2s ease;transform:translateZ(0);text-rendering:optimizeLegibility}.assessment-zoom-animation:hover{transform:scale(1.03)}.assessment-zoom-animation:active{transform:scale(1)}.assessment-zoom-animation:disabled{transform:none!important}.change-direction{transform:rotate(180deg);transition:.3s ease-out}.change-direction-reverse{transform:rotate(0);transition:.3s ease-out}.outline-0{outline:none}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.action-icon{width:1.2rem}.mat-menu-item{height:inherit}\n"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i1.FormControlDirective, selector: "[formControl]", inputs: ["disabled", "formControl", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i1.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }] });
|
|
78
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionTypeShortComponent, decorators: [{
|
|
79
|
+
type: Component,
|
|
80
|
+
args: [{
|
|
81
|
+
selector: 'lib-question-type-short',
|
|
82
|
+
templateUrl: './question-type-short.component.html',
|
|
83
|
+
styleUrls: ['./question-type-short.component.scss']
|
|
84
|
+
}]
|
|
85
|
+
}], ctorParameters: function () { return [{ type: i1.NgControl, decorators: [{
|
|
86
|
+
type: Optional
|
|
87
|
+
}, {
|
|
88
|
+
type: Self
|
|
89
|
+
}] }]; }, propDecorators: { required: [{
|
|
90
|
+
type: Input
|
|
91
|
+
}], question: [{
|
|
92
|
+
type: Input
|
|
93
|
+
}], previewMode: [{
|
|
94
|
+
type: Input
|
|
95
|
+
}], labelConfig: [{
|
|
96
|
+
type: Input
|
|
97
|
+
}] } });
|
|
98
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tdHlwZS1zaG9ydC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zLWFzc2Vzc21lbnQvc3JjL2xpYi9tb2R1bGVzL2Fzc2Vzc21lbnQtdGFrZXIvY29tcG9uZW50cy9xdWVzdGlvbi10eXBlLXNob3J0L3F1ZXN0aW9uLXR5cGUtc2hvcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LXRha2VyL2NvbXBvbmVudHMvcXVlc3Rpb24tdHlwZS1zaG9ydC9xdWVzdGlvbi10eXBlLXNob3J0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakUsT0FBTyxFQUF3QixXQUFXLEVBQWEsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQVE5RSxNQUFNLE9BQU8sMEJBQTBCO0lBU3JDLFlBQXVDLFNBQW9CO1FBQXBCLGNBQVMsR0FBVCxTQUFTLENBQVc7UUFObEQsZ0JBQVcsR0FBWSxLQUFLLENBQUM7UUFDN0IsZ0JBQVcsR0FBOEIsRUFBRSxDQUFDO1FBQzlDLGdCQUFXLEdBQWdCLElBQUksV0FBVyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRXRELGNBQVMsR0FBRyxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFHcEIsSUFBSSxJQUFJLENBQUMsU0FBUyxJQUFJLElBQUksRUFBRTtZQUMxQixJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBRUQscUJBQXFCOztRQUNuQixJQUFJLENBQUEsTUFBQSxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFF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QkFBMEI7a0JBTHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLHlCQUF5QjtvQkFDbkMsV0FBVyxFQUFFLHNDQUFzQztvQkFDbkQsU0FBUyxFQUFFLENBQUMsc0NBQXNDLENBQUM7aUJBQ3BEOzswQkFVYyxRQUFROzswQkFBSSxJQUFJOzRDQVJwQixRQUFRO3NCQUFoQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPcHRpb25hbCwgU2VsZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1Db250cm9sLCBOZ0NvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFzc2Vzc21lbnRRdWVzdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2VzL3F1ZXN0aW9uLmludGVyZmFjZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2xpYi1xdWVzdGlvbi10eXBlLXNob3J0JyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tdHlwZS1zaG9ydC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcXVlc3Rpb24tdHlwZS1zaG9ydC5jb21wb25lbnQuc2NzcyddXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBRdWVzdGlvblR5cGVTaG9ydENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yIHtcclxuICBASW5wdXQoKSByZXF1aXJlZDogYW55O1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uITogQXNzZXNzbWVudFF1ZXN0aW9uO1xyXG4gIEBJbnB1dCgpIHByZXZpZXdNb2RlOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQElucHV0KCkgbGFiZWxDb25maWc6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcclxuICBwdWJsaWMgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sID0gbmV3IEZvcm1Db250cm9sKCcnKTtcclxuXHJcbiAgb25Ub3VjaGVkID0gKCkgPT4geyB9O1xyXG5cclxuICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2VsZigpIHB1YmxpYyBuZ0NvbnRyb2w6IE5nQ29udHJvbCkge1xyXG4gICAgaWYgKHRoaXMubmdDb250cm9sICE9IG51bGwpIHtcclxuICAgICAgdGhpcy5uZ0NvbnRyb2wudmFsdWVBY2Nlc3NvciA9IHRoaXM7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja0Zvcm1Db250cm9sVmFsaWQoKSB7XHJcbiAgICBpZiAodGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w/LnRvdWNoZWQgJiYgdGhpcy5uZ0NvbnRyb2w/LmNvbnRyb2w/LmludmFsaWQpIHtcclxuICAgICAgcmV0dXJuICdhc3Nlc3NtZW50LWlucHV0LWJvcmRlci1pbnZhbGlkJztcclxuICAgIH1cclxuICAgIHJldHVybiAnJztcclxuICB9XHJcblxyXG4gIHdyaXRlVmFsdWUodmFsdWU6IGFueSkge1xyXG4gICAgaWYgKHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IG51bGwpIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSh2YWx1ZSwgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgfSBlbHNlIHtcclxuICAgICAgdGhpcy5mb3JtQ29udHJvbC5zZXRWYWx1ZSgnJywgeyBlbWl0RXZlbnQ6IGZhbHNlIH0pO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVnaXN0ZXJPbkNoYW5nZShmbjogRnVuY3Rpb24pIHtcclxuICAgIHRoaXMuZm9ybUNvbnRyb2wudmFsdWVDaGFuZ2VzLnN1YnNjcmliZSgodmFsKSA9PiBmbih2YWwpKTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBGdW5jdGlvbikge1xyXG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbiBhcyBhbnk7XHJcbiAgfVxyXG5cclxuICBzZXREaXNhYmxlZFN0YXRlKGlzRGlzYWJsZWQ6IGJvb2xlYW4pIHtcclxuICAgIGlmIChpc0Rpc2FibGVkKSB7XHJcbiAgICAgIHRoaXMuZm9ybUNvbnRyb2wuZGlzYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmZvcm1Db250cm9sLmVuYWJsZSh7IGVtaXRFdmVudDogZmFsc2UgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBnZXQgbWF4Q2hhckNvdW50KCk6IG51bWJlciB7XHJcbiAgICBjb25zdCBjb25maWcgPSB0aGlzLnF1ZXN0aW9uPy5xdWVzdGlvbkNvbmZpZ3M/LmZpbmQoYyA9PiBjLmNvbmZpZ0tleSA9PT0gJ21heENoYXJhY3RlckNvdW50Jyk7XHJcbiAgICByZXR1cm4gY29uZmlnID8gTnVtYmVyKGNvbmZpZy5jb25maWdWYWx1ZSkgOiAwO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlucHV0VHlwZSgpOiBzdHJpbmcge1xyXG4gICAgc3dpdGNoICh0aGlzLnF1ZXN0aW9uPy5xdWVzdGlvblR5cGU/LmNvZGUpIHtcclxuICAgICAgY2FzZSAnUVVFU1RJT05fVFlQRS5OVU1CRVInOlxyXG4gICAgICAgIHJldHVybiAnbnVtYmVyJztcclxuICAgICAgY2FzZSAnUVVFU1RJT05fVFlQRS5FTUFJTCc6XHJcbiAgICAgICAgcmV0dXJuICdlbWFpbCc7XHJcbiAgICAgIGNhc2UgJ1FVRVNUSU9OX1RZUEUuQ09OVEFDVF9OVU1CRVInOlxyXG4gICAgICAgIHJldHVybiAndGVsJztcclxuICAgICAgY2FzZSAnUVVFU1RJT05fVFlQRS5VUkwnOlxyXG4gICAgICAgIHJldHVybiAndXJsJztcclxuICAgICAgZGVmYXVsdDpcclxuICAgICAgICByZXR1cm4gJ3RleHQnO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcmVzdHJpY3ROdW1iZXJPbmx5KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XHJcbiAgICBpZiAodGhpcy5xdWVzdGlvbj8ucXVlc3Rpb25UeXBlPy5jb2RlID09PSAnUVVFU1RJT05fVFlQRS5OVU1CRVInIHx8IHRoaXMucXVlc3Rpb24/LnF1ZXN0aW9uVHlwZT8uY29kZSA9PT0gJ1FVRVNUSU9OX1RZUEUuQ09OVEFDVF9OVU1CRVInKSB7XHJcbiAgICAgIGNvbnN0IGFsbG93ZWRLZXlzID0gWydCYWNrc3BhY2UnLCAnQXJyb3dMZWZ0JywgJ0Fycm93UmlnaHQnLCAnVGFiJywgJ0RlbGV0ZSddO1xyXG4gICAgICBpZiAoIS9eWzAtOV0kLy50ZXN0KGV2ZW50LmtleSkgJiYgIWFsbG93ZWRLZXlzLmluY2x1ZGVzKGV2ZW50LmtleSkpIHtcclxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiIsIjxpbnB1dCAqbmdJZj1cIiFwcmV2aWV3TW9kZSBlbHNlIHByZXZpZXdNb2RlVGVtcGxhdGVcIiBbdHlwZV09XCJpbnB1dFR5cGVcIiBbbmdDbGFzc109XCJjaGVja0Zvcm1Db250cm9sVmFsaWQoKVwiXHJcbiAgW2lkXT1cInF1ZXN0aW9uLmlkXCIgW2Zvcm1Db250cm9sXT1cImZvcm1Db250cm9sXCJcclxuICBjbGFzcz1cImNvbC0xMiBhc3Nlc3NtZW50LXRleHQtcmVndWxhci0xMyBhc3Nlc3NtZW50LWlucHV0LWJvcmRlci1vbmUgYXNzZXNzbWVudC1ib3JkZXItcmFkaXVzLXR3byBhc3Nlc3NtZW50LWlucHV0LXBhZGRpbmcgb3V0bGluZS0wIGFzc2Vzc21lbnQtYmctZ3JleS1vbmVcIlxyXG4gIFtwbGFjZWhvbGRlcl09XCJsYWJlbENvbmZpZ1snQ09NTU9OU19BU1NFU1NNRU5ULlBMQUNFSE9MREVSLkFOU1dFUiddXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgKGJsdXIpPVwib25Ub3VjaGVkKClcIlxyXG4gIFthdHRyLm1heGxlbmd0aF09XCJtYXhDaGFyQ291bnQgfHwgbnVsbFwiIChrZXlkb3duKT1cInJlc3RyaWN0TnVtYmVyT25seSgkZXZlbnQpXCI+XHJcblxyXG48bmctdGVtcGxhdGUgI3ByZXZpZXdNb2RlVGVtcGxhdGU+XHJcbiAgPHNwYW4gY2xhc3M9XCJhc3Nlc3NtZW50LXRleHQtcmVndWxhci0xMyBhc3Nlc3NtZW50LXRleHQtZ3JleS1uaW5lXCI+e3sgZm9ybUNvbnRyb2wudmFsdWUgfX08L3NwYW4+XHJcbjwvbmctdGVtcGxhdGU+Il19
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Component, Inject } from '@angular/core';
|
|
2
|
+
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
+
import { deepClone } from '../../../../shared/utils';
|
|
4
|
+
import * as i0 from "@angular/core";
|
|
5
|
+
import * as i1 from "@angular/material/dialog";
|
|
6
|
+
import * as i2 from "@angular/platform-browser";
|
|
7
|
+
import * as i3 from "@angular/common";
|
|
8
|
+
export class SectionInstructionsComponent {
|
|
9
|
+
constructor(dialogRef, dialogData, sanitizer) {
|
|
10
|
+
this.dialogRef = dialogRef;
|
|
11
|
+
this.dialogData = dialogData;
|
|
12
|
+
this.sanitizer = sanitizer;
|
|
13
|
+
this.imageConfig = {};
|
|
14
|
+
this.labelConfig = {};
|
|
15
|
+
this.sectionDetails = null;
|
|
16
|
+
}
|
|
17
|
+
ngOnInit() {
|
|
18
|
+
var _a, _b, _c;
|
|
19
|
+
this.imageConfig = ((_a = this.dialogData) === null || _a === void 0 ? void 0 : _a.imageConfig) || {};
|
|
20
|
+
this.labelConfig = ((_b = this.dialogData) === null || _b === void 0 ? void 0 : _b.labelConfig) || {};
|
|
21
|
+
this.sectionDetails = deepClone((_c = this.dialogData) === null || _c === void 0 ? void 0 : _c.sectionDetails);
|
|
22
|
+
}
|
|
23
|
+
addYoutubeIframeSrc(videoUrl) {
|
|
24
|
+
const videoId = this.getVideoId(videoUrl);
|
|
25
|
+
const youtubeUrl = `https://www.youtube.com/embed/${videoId}`;
|
|
26
|
+
return this.sanitizer.bypassSecurityTrustResourceUrl(youtubeUrl);
|
|
27
|
+
}
|
|
28
|
+
getVideoId(videoUrl) {
|
|
29
|
+
let pattern = null;
|
|
30
|
+
if (videoUrl.includes('youtube.com')) {
|
|
31
|
+
pattern = /(?:\?v=|&v=|youtu\.be\/|\/embed\/|\/\d\/|\/vi\/|\/v\/|https?:\/\/(?:www\.)?youtube\.com\/(?:v\/|embed\/|watch\?(?:\S+&)?v=|watch\?(?:\S+&)?vi=|\S+\/))([a-zA-Z0-9_-]{11})/;
|
|
32
|
+
}
|
|
33
|
+
else if (videoUrl.includes('youtu.be')) {
|
|
34
|
+
pattern = /youtu\.be\/([a-zA-Z0-9_-]{11})/;
|
|
35
|
+
}
|
|
36
|
+
if (pattern) {
|
|
37
|
+
const match = videoUrl.match(pattern);
|
|
38
|
+
if (match && match[1]) {
|
|
39
|
+
return match[1];
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
imageErrorHandler(event, filePath) {
|
|
45
|
+
event.target.src = filePath;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
SectionInstructionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SectionInstructionsComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }, { token: i2.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component });
|
|
49
|
+
SectionInstructionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SectionInstructionsComponent, selector: "lib-section-instructions", ngImport: i0, template: "<div class=\"col-12\">\r\n <header class=\"p-3 d-flex align-items-center justify-content-between col-12 assessment-bg-grey-one\">\r\n <p class=\"mb-0 assessment-text-semibold-18\">\r\n {{labelConfig['COMMONS_ASSESSMENT.LABEL.INSTRUCTIONS']}}\r\n </p>\r\n <img mat-dialog-close [src]=\"imageConfig['COMMONS_ASSESSMENT.ICON.CLOSE']\" class=\"cursor-pointer\"\r\n (error)=\"imageErrorHandler($event, 'assets/commons-assessment/images/close.svg')\" />\r\n </header>\r\n\r\n <div class=\"col-12 px-md-4 px-3 my-4\">\r\n <p *ngIf=\"sectionDetails?.qpsDesc?.[0]?.text\" class=\"assessment-text-medium-14 assessment-grey-ten mb-0\"\r\n [innerHtml]=\"sectionDetails?.qpsDesc?.[0]?.text\"></p>\r\n <div class=\"mt-3 col-12\" *ngIf=\"sectionDetails?.mediaUrl\">\r\n <ng-container *ngTemplateOutlet=\"VideoTemplate; context:{videoUrl:sectionDetails?.mediaUrl}\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <footer class=\"mt-auto p-3 d-flex align-items-center justify-content-end gap-3 col-12 border-top\">\r\n <button mat-dialog-close\r\n class=\"assessment-text-white assessment-bg-grey-ten assessment-border-radius-two border-0 assessment-zoom-animation assessment-button-padding-large assessment-text-medium-13\">\r\n {{labelConfig['COMMONS_ASSESSMENT.LABEL.GOT_IT']}}\r\n </button>\r\n </footer>\r\n</div>\r\n\r\n<!-- video preview -->\r\n<ng-template let-videoUrl=\"videoUrl\" #VideoTemplate>\r\n <div class=\"assessment-border-radius-two overflow-hidden col-md-10 col-12 mx-auto\">\r\n <video *ngIf=\"videoUrl?.includes('.mp4') else youtubeVideo\" width=\"400\" controls class=\"mw-100 d-block mx-auto\">\r\n <source [src]=\"videoUrl\" type=\"video/mp4\">\r\n </video>\r\n <ng-template #youtubeVideo>\r\n <div class=\"youtube-video position-relative h-100\">\r\n <iframe [src]=\"addYoutubeIframeSrc(videoUrl)\" title=\"YouTube video player\" frameborder=\"0\"\r\n allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\"\r\n allowfullscreen class=\"position-absolute top-0 start-0 w-100 h-100 d-block\">\r\n </iframe>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</ng-template>", styles: [".assessment-text-grey-ten{color:var(--assessment-grey-ten)!important}.assessment-bg-grey-ten{background-color:var(--assessment-grey-ten)!important}.assessment-text-grey-nine{color:var(--assessment-grey-nine)!important}.assessment-bg-grey-nine{background-color:var(--assessment-grey-nine)!important}.assessment-text-grey-eight{color:var(--assessment-grey-eight)!important}.assessment-bg-grey-eight{background-color:var(--assessment-grey-eight)!important}.assessment-text-grey-seven{color:var(--assessment-grey-seven)!important}.assessment-bg-grey-seven{background-color:var(--assessment-grey-seven)!important}.assessment-text-grey-six{color:var(--assessment-grey-six)!important}.assessment-bg-grey-six{background-color:var(--assessment-grey-six)!important}.assessment-text-grey-five{color:var(--assessment-grey-five)!important}.assessment-bg-grey-five{background-color:var(--assessment-grey-five)!important}.assessment-text-grey-four{color:var(--assessment-grey-four)!important}.assessment-bg-grey-four{background-color:var(--assessment-grey-four)!important}.assessment-text-grey-three{color:var(--assessment-grey-three)!important}.assessment-bg-grey-three{background-color:var(--assessment-grey-three)!important}.assessment-text-grey-two{color:var(--assessment-grey-two)!important}.assessment-bg-grey-two{background-color:var(--assessment-grey-two)!important}.assessment-text-grey-one{color:var(--assessment-grey-one)!important}.assessment-bg-grey-one{background-color:var(--assessment-grey-one)!important}.assessment-text-white{color:var(--assessment-white)!important}.assessment-bg-white{background-color:var(--assessment-white)!important}.assessment-text-black{color:var(--assessment-black)!important}.assessment-bg-black{background-color:var(--assessment-black)!important}.assessment-text-danger{color:var(--assessment-danger)!important}.assessment-bg-danger{background-color:var(--assessment-danger)!important}.assessment-text-primary-one{color:var(--assessment-primary-one)!important}.assessment-bg-primary-one{background-color:var(--assessment-primary-one)!important}.assessment-text-primary-four{color:var(--assessment-primary-four)!important}.assessment-bg-primary-four{background-color:var(--assessment-primary-four)!important}.assessment-text-palette-EDF3FD{color:var(--assessment-palette-EDF3FD)!important}.assessment-bg-palette-EDF3FD{background-color:var(--assessment-palette-EDF3FD)!important}.assessment-text-palette-C8DAF9{color:var(--assessment-palette-C8DAF9)!important}.assessment-bg-palette-C8DAF9{background-color:var(--assessment-palette-C8DAF9)!important}.assessment-text-palette-ADC9F6{color:var(--assessment-palette-ADC9F6)!important}.assessment-bg-palette-ADC9F6{background-color:var(--assessment-palette-ADC9F6)!important}.assessment-text-palette-FEF9F1{color:var(--assessment-palette-FEF9F1)!important}.assessment-bg-palette-FEF9F1{background-color:var(--assessment-palette-FEF9F1)!important}.assessment-text-palette-F9DAA6{color:var(--assessment-palette-F9DAA6)!important}.assessment-bg-palette-F9DAA6{background-color:var(--assessment-palette-F9DAA6)!important}.assessment-text-palette-E8F7F0{color:var(--assessment-palette-E8F7F0)!important}.assessment-bg-palette-E8F7F0{background-color:var(--assessment-palette-E8F7F0)!important}.assessment-text-palette-B7E7CF{color:var(--assessment-palette-B7E7CF)!important}.assessment-bg-palette-B7E7CF{background-color:var(--assessment-palette-B7E7CF)!important}.assessment-box-shadow-one{box-shadow:var(--assessment-box-shadow-one)!important}.assessment-border-radius-one{border-radius:var(--assessment-border-radius-one)!important}.assessment-border-radius-two{border-radius:var(--assessment-border-radius-two)!important}.assessment-border-radius-three{border-radius:var(--assessment-border-radius-three)!important}.assessment-border-radius-four{border-radius:var(--assessment-border-radius-four)!important}.assessment-border-radius-five{border-radius:var(--assessment-border-radius-five)!important}.assessment-border-radius-six{border-radius:var(--assessment-border-radius-six)!important}.assessment-input-border-one{border:var(--assessment-input-border-one)!important}.assessment-input-border-invalid{border:var(--assessment-input-border-invalid)!important}.assessment-input-focus-border{border:var(--assessment-input-focus-border)!important}.assessment-border-two{border:var(--assessment-border-two)!important}.assessment-card-border{border:var(--assessment-card-border)!important}.assessment-tooltip-border{border:var(--assessment-tooltip-border)!important}.assessment-box-shadow-tooltip{box-shadow:var(--assessment-box-shadow-tooltip)!important}.assessment-button-padding{padding:var(--assessment-button-padding)!important}.assessment-button-padding-large{padding:var(--assessment-button-padding-large)!important}.assessment-input-padding{padding:var(--assessment-input-padding)!important}.assessment-text-font-family{color:var(--assessment-font-family)!important}.assessment-bg-font-family{background-color:var(--assessment-font-family)!important}.assessment-text-regular-12{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-bold-12{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-semibold-12{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-semibold-11{font-weight:600;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-medium-11{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-regular-11{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.48rem + .25vw);line-height:calc(.8rem + .25vw)}.assessment-text-medium-12{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.48rem + .3vw);line-height:calc(.9rem + .3vw)}.assessment-text-regular-13{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-bold-13{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-semibold-13{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-medium-13{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.64rem + .2vw)!important;line-height:calc(.9rem + .2vw)!important}.assessment-text-regular-14{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-bold-14{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-medium-14{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw)!important;line-height:calc(1.2rem + .2vw)!important}.assessment-text-semibold-14{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.7rem + .2vw);line-height:calc(1.2rem + .2vw)}.assessment-text-semibold-10{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.55rem + .1vw);line-height:calc(1rem + .1vw)}.assessment-text-regular-10{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.55rem + .1vw)!important;line-height:calc(1rem + .1vw)}.assessment-text-regular-15{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.85rem + .1vw);line-height:calc(1.4rem + .1vw)}.assessment-text-medium-15{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-semibold-15{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-bold-15{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.85rem + .1vw);line-height:calc(1.25rem + .1vw)}.assessment-text-regular-16{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-semibold-16{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-bold-16{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-medium-16{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(.77rem + .25vw);line-height:calc(1.25rem + .2vw)}.assessment-text-regular-20{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-bold-20{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-semibold-20{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-medium-20{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .3vw);line-height:calc(1.2rem + .3vw)}.assessment-text-medium-18{font-weight:500;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .1vw)!important}.assessment-text-regular-18{font-weight:400;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .3vw)!important}.assessment-text-bold-18{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw);line-height:calc(1.5rem + .1vw)}.assessment-text-semibold-18{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .125vw)!important;line-height:calc(1.5rem + .1vw)!important}.assessment-text-bold-34{overflow-wrap:break-word;font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(2rem + .15vw);line-height:calc(2.5rem + .15vw)}.assessment-text-medium-34{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(2rem + .15vw);line-height:calc(2.5rem + .15vw)}.assessment-text-bold-32{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.3rem + .75vw);line-height:calc(1.625rem + .5vw)}.assessment-text-bold-22{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-regular-22{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-semibold-22{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-medium-22{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-bold-24{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-regular-24{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-semibold-24{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(.8rem + .75vw);line-height:calc(.9rem + .75vw)}.assessment-text-medium-24{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(.8rem + .75vw);line-height:calc(1.2rem + .75vw)}.assessment-text-regular-26{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-medium-26{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-bold-26{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-semibold-26{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .1vw);line-height:calc(1.8rem + .1vw)}.assessment-text-regular-28{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-medium-28{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-semibold-28{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw);letter-spacing:1}.assessment-text-bold-28{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.55rem + .2vw);line-height:calc(2rem + .2vw)}.assessment-text-regular-30{font-weight:400;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .4vw)}.assessment-text-medium-30{font-weight:500;font-family:var(--assessment-font-family);font-size:calc(1.5rem + .4vw);line-height:calc(1.5rem + .4vw)}.assessment-text-bold-30{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .4vw);line-height:calc(2rem + .4vw)}.assessment-text-semibold-30{font-weight:600;font-family:var(--assessment-font-family)!important;font-size:calc(1.5rem + .4vw);line-height:calc(1.5rem + .4vw);letter-spacing:.5}.assessment-text-bold-36{font-weight:700;font-family:var(--assessment-font-family)!important;font-size:calc(2rem + .25vw);line-height:calc(2.5rem + .3vw)}.assessment-text-semibold-36{font-weight:600;font-family:var(--assessment-font-family);font-size:calc(2rem + .25vw);line-height:calc(2.5rem + .3vw)}@media (min-height: 100vw) and (orientation: portrait){.assessment-text-bold-34{font-size:calc(1.8rem + .15vh);line-height:calc(2.2rem + .15vh)}.assessment-text-bold-32{font-size:calc(1.3rem + 1vh);line-height:calc(1.5rem + 1vh)}.assessment-text-semibold-30{font-size:calc(1.5rem + .4vh);line-height:calc(1.8rem + .4vh)}.assessment-text-medium-24{line-height:2.188rem}.assessment-text-medium-24,.assessment-text-regular-24,.assessment-text-semibold-24,.assessment-text-bold-24,.assessment-text-light-24{font-size:calc(1.3rem + .5vh);line-height:calc(1.8rem + .5vh)}.assessment-text-medium-18,.assessment-text-regular-18,.assessment-text-bold-18,.assessment-text-semibold-18,.assessment-text-light-18{font-size:calc(1rem + .1vh)!important;line-height:calc(1.6rem + .1vh)!important}.assessment-text-light-16,.assessment-text-bold-16{font-size:calc(.9rem + .3vh)!important;line-height:calc(1.2rem + .3vh)!important}.assessment-text-medium-16,.assessment-text-semibold-16,.assessment-text-regular-16{font-size:calc(.9rem + .2vh)!important;line-height:calc(1.4rem + .2vh)!important}.assessment-text-regular-15,.assessment-text-semibold-15,.assessment-text-bold-15,.assessment-text-light-15{font-size:calc(.8rem + .2vh);line-height:calc(1.27rem + .2vh)}.assessment-text-medium-15{font-size:calc(.8rem + .2vh);line-height:calc(1.27rem + .2vh)}.assessment-text-medium-12,.assessment-text-regular-12,.assessment-text-semibold-12,.assessment-text-bold-12,.assessment-text-medium-upper-12,.assessment-text-light-12{font-size:calc(.5rem + .4vh);line-height:calc(.8rem + .4vh)}.assessment-text-medium-14,.assessment-text-regular-14,.assessment-text-light-14,.assessment-text-medium-upper-14,.assessment-text-semibold-14,.assessment-text-bold-14{font-size:calc(.8rem + .1vh)!important;line-height:calc(1.2rem + .2vh)!important}.assessment-text-regular-13,.assessment-text-medium-13,.assessment-text-semibold-13,.assessment-text-bold-13,.assessment-text-light-13{font-size:calc(.7rem + .2vh)!important;line-height:calc(1rem + .3vh)!important}.assessment-text-regular-11,.assessment-text-medium-11,.assessment-text-semibold-11,.assessment-text-bold-11,.assessment-text-light-11{font-size:calc(.5rem + .2vh)!important;line-height:calc(.8rem + .2vh)!important}}.assessment-btn-primary{background-color:var(--assessment-primary-one);color:var(--assessment-white);border:.064rem solid var(--assessment-primary-one);border-radius:var(--assessment-border-radius-two)}.assessment-btn-primary-transparent{background-color:var(--assessment-white);color:var(--assessment-primary-one);border-radius:var(--assessment-border-radius-two);border:.064rem solid var(--assessment-primary-one)}.assessment-zoom-animation{transition:transform .2s ease;transform:translateZ(0);text-rendering:optimizeLegibility}.assessment-zoom-animation:hover{transform:scale(1.03)}.assessment-zoom-animation:active{transform:scale(1)}.assessment-zoom-animation:disabled{transform:none!important}.change-direction{transform:rotate(180deg);transition:.3s ease-out}.change-direction-reverse{transform:rotate(0);transition:.3s ease-out}.outline-0{outline:none}.cursor-grab{cursor:grab}.cursor-pointer{cursor:pointer}.action-icon{width:1.2rem}.mat-menu-item{height:inherit}.youtube-video{aspect-ratio:16/9}\n"], directives: [{ type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }, { type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SectionInstructionsComponent, decorators: [{
|
|
51
|
+
type: Component,
|
|
52
|
+
args: [{
|
|
53
|
+
selector: 'lib-section-instructions',
|
|
54
|
+
templateUrl: './section-instructions.component.html',
|
|
55
|
+
styleUrls: ['./section-instructions.component.scss']
|
|
56
|
+
}]
|
|
57
|
+
}], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
58
|
+
type: Inject,
|
|
59
|
+
args: [MAT_DIALOG_DATA]
|
|
60
|
+
}] }, { type: i2.DomSanitizer }]; } });
|
|
61
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VjdGlvbi1pbnN0cnVjdGlvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LXRha2VyL2NvbXBvbmVudHMvc2VjdGlvbi1pbnN0cnVjdGlvbnMvc2VjdGlvbi1pbnN0cnVjdGlvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LXRha2VyL2NvbXBvbmVudHMvc2VjdGlvbi1pbnN0cnVjdGlvbnMvc2VjdGlvbi1pbnN0cnVjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDMUQsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUV6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7Ozs7O0FBUXJELE1BQU0sT0FBTyw0QkFBNEI7SUFLdkMsWUFDUyxTQUFxRCxFQUM1QixVQUFlLEVBQ3ZDLFNBQXVCO1FBRnhCLGNBQVMsR0FBVCxTQUFTLENBQTRDO1FBQzVCLGVBQVUsR0FBVixVQUFVLENBQUs7UUFDdkMsY0FBUyxHQUFULFNBQVMsQ0FBYztRQVBqQyxnQkFBVyxHQUE4QixFQUFFLENBQUM7UUFDNUMsZ0JBQVcsR0FBOEIsRUFBRSxDQUFDO1FBQzVDLG1CQUFjLEdBQWdDLElBQUksQ0FBQztJQU0vQyxDQUFDO0lBRUwsUUFBUTs7UUFDTixJQUFJLENBQUMsV0FBVyxHQUFHLENBQUEsTUFBQSxJQUFJLENBQUMsVUFBVSwwQ0FBRSxXQUFXLEtBQUksRUFBRSxDQUFDO1FBQ3RELElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQSxNQUFBLElBQUksQ0FBQyxVQUFVLDBDQUFFLFdBQVcsS0FBSSxFQUFFLENBQUM7UUFDdEQsSUFBSSxDQUFDLGNBQWMsR0FBRyxTQUFTLENBQUMsTUFBQSxJQUFJLENBQUMsVUFBVSwwQ0FBRSxjQUFjLENBQUMsQ0FBQztJQUNuRSxDQUFDO0lBRUQsbUJBQW1CLENBQUMsUUFBZ0I7UUFDbEMsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUMxQyxNQUFNLFVBQVUsR0FBRyxpQ0FBaUMsT0FBTyxFQUFFLENBQUM7UUFDOUQsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLDhCQUE4QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRCxVQUFVLENBQUMsUUFBZ0I7UUFDekIsSUFBSSxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ25CLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxhQUFhLENBQUMsRUFBRTtZQUNwQyxPQUFPLEdBQUcsMktBQTJLLENBQUM7U0FDdkw7YUFBTSxJQUFJLFFBQVEsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDeEMsT0FBTyxHQUFHLGdDQUFnQyxDQUFDO1NBQzVDO1FBQ0QsSUFBSSxPQUFPLEVBQUU7WUFDWCxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ3RDLElBQUksS0FBSyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRTtnQkFDckIsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDakI7U0FDRjtRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQVUsRUFBRSxRQUFnQjtRQUM1QyxLQUFLLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxRQUFRLENBQUM7SUFDOUIsQ0FBQzs7MEhBekNVLDRCQUE0Qiw4Q0FPN0IsZUFBZTs4R0FQZCw0QkFBNEIsZ0VDWHpDLG8yRUF3Q2M7NEZEN0JELDRCQUE0QjtrQkFMeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxXQUFXLEVBQUUsdUNBQXVDO29CQUNwRCxTQUFTLEVBQUUsQ0FBQyx1Q0FBdUMsQ0FBQztpQkFDckQ7OzBCQVFJLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgTUFUX0RJQUxPR19EQVRBLCBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5pbXBvcnQgeyBEb21TYW5pdGl6ZXIgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcclxuaW1wb3J0IHsgZGVlcENsb25lIH0gZnJvbSAnLi4vLi4vLi4vLi4vc2hhcmVkL3V0aWxzJztcclxuaW1wb3J0IHsgUXVlc3Rpb25QYXBlclNlY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9xdWVzdGlvbi1wYXBlci5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItc2VjdGlvbi1pbnN0cnVjdGlvbnMnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9zZWN0aW9uLWluc3RydWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vc2VjdGlvbi1pbnN0cnVjdGlvbnMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VjdGlvbkluc3RydWN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgaW1hZ2VDb25maWc6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcclxuICBsYWJlbENvbmZpZzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xyXG4gIHNlY3Rpb25EZXRhaWxzOiBRdWVzdGlvblBhcGVyU2VjdGlvbiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHB1YmxpYyBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxTZWN0aW9uSW5zdHJ1Y3Rpb25zQ29tcG9uZW50PixcclxuICAgIEBJbmplY3QoTUFUX0RJQUxPR19EQVRBKSBwdWJsaWMgZGlhbG9nRGF0YTogYW55LFxyXG4gICAgcHJpdmF0ZSBzYW5pdGl6ZXI6IERvbVNhbml0aXplclxyXG4gICkgeyB9XHJcblxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5pbWFnZUNvbmZpZyA9IHRoaXMuZGlhbG9nRGF0YT8uaW1hZ2VDb25maWcgfHwge307XHJcbiAgICB0aGlzLmxhYmVsQ29uZmlnID0gdGhpcy5kaWFsb2dEYXRhPy5sYWJlbENvbmZpZyB8fCB7fTtcclxuICAgIHRoaXMuc2VjdGlvbkRldGFpbHMgPSBkZWVwQ2xvbmUodGhpcy5kaWFsb2dEYXRhPy5zZWN0aW9uRGV0YWlscyk7XHJcbiAgfVxyXG5cclxuICBhZGRZb3V0dWJlSWZyYW1lU3JjKHZpZGVvVXJsOiBzdHJpbmcpIHtcclxuICAgIGNvbnN0IHZpZGVvSWQgPSB0aGlzLmdldFZpZGVvSWQodmlkZW9VcmwpO1xyXG4gICAgY29uc3QgeW91dHViZVVybCA9IGBodHRwczovL3d3dy55b3V0dWJlLmNvbS9lbWJlZC8ke3ZpZGVvSWR9YDtcclxuICAgIHJldHVybiB0aGlzLnNhbml0aXplci5ieXBhc3NTZWN1cml0eVRydXN0UmVzb3VyY2VVcmwoeW91dHViZVVybCk7XHJcbiAgfVxyXG5cclxuICBnZXRWaWRlb0lkKHZpZGVvVXJsOiBzdHJpbmcpIHtcclxuICAgIGxldCBwYXR0ZXJuID0gbnVsbDtcclxuICAgIGlmICh2aWRlb1VybC5pbmNsdWRlcygneW91dHViZS5jb20nKSkge1xyXG4gICAgICBwYXR0ZXJuID0gLyg/OlxcP3Y9fCZ2PXx5b3V0dVxcLmJlXFwvfFxcL2VtYmVkXFwvfFxcL1xcZFxcL3xcXC92aVxcL3xcXC92XFwvfGh0dHBzPzpcXC9cXC8oPzp3d3dcXC4pP3lvdXR1YmVcXC5jb21cXC8oPzp2XFwvfGVtYmVkXFwvfHdhdGNoXFw/KD86XFxTKyYpP3Y9fHdhdGNoXFw/KD86XFxTKyYpP3ZpPXxcXFMrXFwvKSkoW2EtekEtWjAtOV8tXXsxMX0pLztcclxuICAgIH0gZWxzZSBpZiAodmlkZW9VcmwuaW5jbHVkZXMoJ3lvdXR1LmJlJykpIHtcclxuICAgICAgcGF0dGVybiA9IC95b3V0dVxcLmJlXFwvKFthLXpBLVowLTlfLV17MTF9KS87XHJcbiAgICB9XHJcbiAgICBpZiAocGF0dGVybikge1xyXG4gICAgICBjb25zdCBtYXRjaCA9IHZpZGVvVXJsLm1hdGNoKHBhdHRlcm4pO1xyXG4gICAgICBpZiAobWF0Y2ggJiYgbWF0Y2hbMV0pIHtcclxuICAgICAgICByZXR1cm4gbWF0Y2hbMV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBudWxsO1xyXG4gIH1cclxuXHJcbiAgaW1hZ2VFcnJvckhhbmRsZXIoZXZlbnQ6IGFueSwgZmlsZVBhdGg6IHN0cmluZykge1xyXG4gICAgZXZlbnQudGFyZ2V0LnNyYyA9IGZpbGVQYXRoO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICA8aGVhZGVyIGNsYXNzPVwicC0zIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWJldHdlZW4gY29sLTEyIGFzc2Vzc21lbnQtYmctZ3JleS1vbmVcIj5cclxuICAgICAgICA8cCBjbGFzcz1cIm1iLTAgYXNzZXNzbWVudC10ZXh0LXNlbWlib2xkLTE4XCI+XHJcbiAgICAgICAgICAgIHt7bGFiZWxDb25maWdbJ0NPTU1PTlNfQVNTRVNTTUVOVC5MQUJFTC5JTlNUUlVDVElPTlMnXX19XHJcbiAgICAgICAgPC9wPlxyXG4gICAgICAgIDxpbWcgbWF0LWRpYWxvZy1jbG9zZSBbc3JjXT1cImltYWdlQ29uZmlnWydDT01NT05TX0FTU0VTU01FTlQuSUNPTi5DTE9TRSddXCIgY2xhc3M9XCJjdXJzb3ItcG9pbnRlclwiXHJcbiAgICAgICAgICAgIChlcnJvcik9XCJpbWFnZUVycm9ySGFuZGxlcigkZXZlbnQsICdhc3NldHMvY29tbW9ucy1hc3Nlc3NtZW50L2ltYWdlcy9jbG9zZS5zdmcnKVwiIC8+XHJcbiAgICA8L2hlYWRlcj5cclxuXHJcbiAgICA8ZGl2IGNsYXNzPVwiY29sLTEyIHB4LW1kLTQgcHgtMyBteS00XCI+XHJcbiAgICAgICAgPHAgKm5nSWY9XCJzZWN0aW9uRGV0YWlscz8ucXBzRGVzYz8uWzBdPy50ZXh0XCIgY2xhc3M9XCJhc3Nlc3NtZW50LXRleHQtbWVkaXVtLTE0IGFzc2Vzc21lbnQtZ3JleS10ZW4gbWItMFwiXHJcbiAgICAgICAgICAgIFtpbm5lckh0bWxdPVwic2VjdGlvbkRldGFpbHM/LnFwc0Rlc2M/LlswXT8udGV4dFwiPjwvcD5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMyBjb2wtMTJcIiAqbmdJZj1cInNlY3Rpb25EZXRhaWxzPy5tZWRpYVVybFwiPlxyXG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiVmlkZW9UZW1wbGF0ZTsgY29udGV4dDp7dmlkZW9Vcmw6c2VjdGlvbkRldGFpbHM/Lm1lZGlhVXJsfVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPGZvb3RlciBjbGFzcz1cIm10LWF1dG8gcC0zIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIganVzdGlmeS1jb250ZW50LWVuZCBnYXAtMyBjb2wtMTIgYm9yZGVyLXRvcFwiPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWRpYWxvZy1jbG9zZVxyXG4gICAgICAgICAgICBjbGFzcz1cImFzc2Vzc21lbnQtdGV4dC13aGl0ZSBhc3Nlc3NtZW50LWJnLWdyZXktdGVuIGFzc2Vzc21lbnQtYm9yZGVyLXJhZGl1cy10d28gYm9yZGVyLTAgYXNzZXNzbWVudC16b29tLWFuaW1hdGlvbiBhc3Nlc3NtZW50LWJ1dHRvbi1wYWRkaW5nLWxhcmdlIGFzc2Vzc21lbnQtdGV4dC1tZWRpdW0tMTNcIj5cclxuICAgICAgICAgICAge3tsYWJlbENvbmZpZ1snQ09NTU9OU19BU1NFU1NNRU5ULkxBQkVMLkdPVF9JVCddfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZm9vdGVyPlxyXG48L2Rpdj5cclxuXHJcbjwhLS0gdmlkZW8gcHJldmlldyAgLS0+XHJcbjxuZy10ZW1wbGF0ZSBsZXQtdmlkZW9Vcmw9XCJ2aWRlb1VybFwiICNWaWRlb1RlbXBsYXRlPlxyXG4gICAgPGRpdiBjbGFzcz1cImFzc2Vzc21lbnQtYm9yZGVyLXJhZGl1cy10d28gb3ZlcmZsb3ctaGlkZGVuIGNvbC1tZC0xMCBjb2wtMTIgbXgtYXV0b1wiPlxyXG4gICAgICAgIDx2aWRlbyAqbmdJZj1cInZpZGVvVXJsPy5pbmNsdWRlcygnLm1wNCcpIGVsc2UgeW91dHViZVZpZGVvXCIgd2lkdGg9XCI0MDBcIiBjb250cm9scyBjbGFzcz1cIm13LTEwMCBkLWJsb2NrIG14LWF1dG9cIj5cclxuICAgICAgICAgICAgPHNvdXJjZSBbc3JjXT1cInZpZGVvVXJsXCIgdHlwZT1cInZpZGVvL21wNFwiPlxyXG4gICAgICAgIDwvdmlkZW8+XHJcbiAgICAgICAgPG5nLXRlbXBsYXRlICN5b3V0dWJlVmlkZW8+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ5b3V0dWJlLXZpZGVvIHBvc2l0aW9uLXJlbGF0aXZlIGgtMTAwXCI+XHJcbiAgICAgICAgICAgICAgICA8aWZyYW1lIFtzcmNdPVwiYWRkWW91dHViZUlmcmFtZVNyYyh2aWRlb1VybClcIiB0aXRsZT1cIllvdVR1YmUgdmlkZW8gcGxheWVyXCIgZnJhbWVib3JkZXI9XCIwXCJcclxuICAgICAgICAgICAgICAgICAgICBhbGxvdz1cImFjY2VsZXJvbWV0ZXI7IGF1dG9wbGF5OyBjbGlwYm9hcmQtd3JpdGU7IGVuY3J5cHRlZC1tZWRpYTsgZ3lyb3Njb3BlOyBwaWN0dXJlLWluLXBpY3R1cmU7IHdlYi1zaGFyZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgYWxsb3dmdWxsc2NyZWVuIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdG9wLTAgc3RhcnQtMCB3LTEwMCBoLTEwMCBkLWJsb2NrXCI+XHJcbiAgICAgICAgICAgICAgICA8L2lmcmFtZT5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuICAgIDwvZGl2PlxyXG48L25nLXRlbXBsYXRlPiJdfQ==
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
|
2
|
+
import { Inject, Injectable } from '@angular/core';
|
|
3
|
+
import { LIBRARY_CONFIG } from '../../../configuration';
|
|
4
|
+
import * as controllers from '../../../shared/controllers';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
import * as i1 from "@angular/common/http";
|
|
7
|
+
export class AssessmentTakerService {
|
|
8
|
+
constructor(config, http) {
|
|
9
|
+
this.config = config;
|
|
10
|
+
this.http = http;
|
|
11
|
+
}
|
|
12
|
+
createParams(params) {
|
|
13
|
+
let param = new HttpParams();
|
|
14
|
+
for (const key of Object.keys(params)) {
|
|
15
|
+
param = param.set(key, params[key]);
|
|
16
|
+
}
|
|
17
|
+
return param;
|
|
18
|
+
}
|
|
19
|
+
getConfigJSON(fileName) {
|
|
20
|
+
return this.http.get(`/assets/commons-assessment/${fileName}.json`);
|
|
21
|
+
}
|
|
22
|
+
getAssessmentContextById(assessmentId) {
|
|
23
|
+
return this.http.get(this.config.baseURL + controllers.assessmentTakerController.getAssessmentContextById.replace('$AssessmentId', assessmentId.toString()));
|
|
24
|
+
}
|
|
25
|
+
getAssessmentQuestionPaper(instanceId) {
|
|
26
|
+
return this.http.get(this.config.baseURL + controllers.assessmentTakerController.getAssessmentQuestionPaper + this.createParams({ instanceId }));
|
|
27
|
+
}
|
|
28
|
+
getAssessmentQuestions(instanceId, questionIds) {
|
|
29
|
+
return this.http.get(this.config.baseURL + controllers.assessmentTakerController.getAssessmentQuestions + this.createParams({ instanceId, questionIds }));
|
|
30
|
+
}
|
|
31
|
+
getChildQuestionsWithIdList(instanceId, questionIds) {
|
|
32
|
+
return this.http.get(this.config.baseURL + controllers.assessmentTakerController.getChildQuestionsWithIdList + this.createParams({ instanceId, questionIds }));
|
|
33
|
+
}
|
|
34
|
+
uploadAttachment(fileUploadPayload, params) {
|
|
35
|
+
return this.http.post(this.config.baseURL + controllers.assessmentTakerController.uploadAttachment + this.createParams(params), fileUploadPayload);
|
|
36
|
+
}
|
|
37
|
+
submitAssessment(payload) {
|
|
38
|
+
return this.http.post(this.config.baseURL + controllers.assessmentTakerController.submitAssessment, payload);
|
|
39
|
+
}
|
|
40
|
+
patchAssessment(payload) {
|
|
41
|
+
return this.http.patch(this.config.baseURL + controllers.assessmentTakerController.submitAssessment, payload);
|
|
42
|
+
}
|
|
43
|
+
getAnswersByAiaId(aiaId) {
|
|
44
|
+
return this.http.get(this.config.baseURL + controllers.assessmentTakerController.getAnswersByAiaId + aiaId);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
AssessmentTakerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentTakerService, deps: [{ token: LIBRARY_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
48
|
+
AssessmentTakerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentTakerService, providedIn: 'root' });
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentTakerService, decorators: [{
|
|
50
|
+
type: Injectable,
|
|
51
|
+
args: [{
|
|
52
|
+
providedIn: 'root'
|
|
53
|
+
}]
|
|
54
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
55
|
+
type: Inject,
|
|
56
|
+
args: [LIBRARY_CONFIG]
|
|
57
|
+
}] }, { type: i1.HttpClient }]; } });
|
|
58
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXNzbWVudC10YWtlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LXRha2VyL3NlcnZpY2VzL2Fzc2Vzc21lbnQtdGFrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWMsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUQsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLGNBQWMsRUFBaUIsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RSxPQUFPLEtBQUssV0FBVyxNQUFNLDZCQUE2QixDQUFDOzs7QUFLM0QsTUFBTSxPQUFPLHNCQUFzQjtJQUVqQyxZQUNrQyxNQUFxQixFQUM3QyxJQUFnQjtRQURRLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDN0MsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUN0QixDQUFDO0lBRUwsWUFBWSxDQUFDLE1BQVc7UUFDdEIsSUFBSSxLQUFLLEdBQUcsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUM3QixLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckMsS0FBSyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1NBQ3JDO1FBQ0QsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsYUFBYSxDQUFDLFFBQWdCO1FBQzVCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsOEJBQThCLFFBQVEsT0FBTyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVELHdCQUF3QixDQUFDLFlBQW9CO1FBQzNDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxlQUFlLEVBQUUsWUFBWSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUMvSixDQUFDO0lBRUQsMEJBQTBCLENBQUMsVUFBa0I7UUFDM0MsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMseUJBQXlCLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuSixDQUFDO0lBRUQsc0JBQXNCLENBQUMsVUFBZSxFQUFFLFdBQWdCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLHNCQUFzQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzVKLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxVQUFlLEVBQUUsV0FBZ0I7UUFDM0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMseUJBQXlCLENBQUMsMkJBQTJCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFLFVBQVUsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDakssQ0FBQztJQUVELGdCQUFnQixDQUFDLGlCQUEyQixFQUFFLE1BQVc7UUFDdkQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JKLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxPQUFZO1FBQzNCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQy9HLENBQUM7SUFFRCxlQUFlLENBQUMsT0FBWTtRQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUNoSCxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBVTtRQUMxQixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsQ0FBQTtJQUM3RyxDQUFDOztvSEFqRFUsc0JBQXNCLGtCQUd2QixjQUFjO3dIQUhiLHNCQUFzQixjQUZyQixNQUFNOzRGQUVQLHNCQUFzQjtrQkFIbEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQUlJLE1BQU07MkJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBQYXJhbXMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XHJcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBMSUJSQVJZX0NPTkZJRywgTGlicmFyeUNvbmZpZyB9IGZyb20gJy4uLy4uLy4uL2NvbmZpZ3VyYXRpb24nO1xyXG5pbXBvcnQgKiBhcyBjb250cm9sbGVycyBmcm9tICcuLi8uLi8uLi9zaGFyZWQvY29udHJvbGxlcnMnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNzZXNzbWVudFRha2VyU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChMSUJSQVJZX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IExpYnJhcnlDb25maWcsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHsgfVxyXG5cclxuICBjcmVhdGVQYXJhbXMocGFyYW1zOiBhbnkpOiBIdHRwUGFyYW1zIHtcclxuICAgIGxldCBwYXJhbSA9IG5ldyBIdHRwUGFyYW1zKCk7XHJcbiAgICBmb3IgKGNvbnN0IGtleSBvZiBPYmplY3Qua2V5cyhwYXJhbXMpKSB7XHJcbiAgICAgIHBhcmFtID0gcGFyYW0uc2V0KGtleSwgcGFyYW1zW2tleV0pO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHBhcmFtO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uZmlnSlNPTihmaWxlTmFtZTogc3RyaW5nKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldChgL2Fzc2V0cy9jb21tb25zLWFzc2Vzc21lbnQvJHtmaWxlTmFtZX0uanNvbmApO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXNzZXNzbWVudENvbnRleHRCeUlkKGFzc2Vzc21lbnRJZDogbnVtYmVyKSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudFRha2VyQ29udHJvbGxlci5nZXRBc3Nlc3NtZW50Q29udGV4dEJ5SWQucmVwbGFjZSgnJEFzc2Vzc21lbnRJZCcsIGFzc2Vzc21lbnRJZC50b1N0cmluZygpKSk7XHJcbiAgfVxyXG5cclxuICBnZXRBc3Nlc3NtZW50UXVlc3Rpb25QYXBlcihpbnN0YW5jZUlkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuY29uZmlnLmJhc2VVUkwgKyBjb250cm9sbGVycy5hc3Nlc3NtZW50VGFrZXJDb250cm9sbGVyLmdldEFzc2Vzc21lbnRRdWVzdGlvblBhcGVyICsgdGhpcy5jcmVhdGVQYXJhbXMoeyBpbnN0YW5jZUlkIH0pKTtcclxuICB9XHJcblxyXG4gIGdldEFzc2Vzc21lbnRRdWVzdGlvbnMoaW5zdGFuY2VJZDogYW55LCBxdWVzdGlvbklkczogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudFRha2VyQ29udHJvbGxlci5nZXRBc3Nlc3NtZW50UXVlc3Rpb25zICsgdGhpcy5jcmVhdGVQYXJhbXMoeyBpbnN0YW5jZUlkLCBxdWVzdGlvbklkcyB9KSk7XHJcbiAgfVxyXG5cclxuICBnZXRDaGlsZFF1ZXN0aW9uc1dpdGhJZExpc3QoaW5zdGFuY2VJZDogYW55LCBxdWVzdGlvbklkczogYW55KSB7XHJcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudFRha2VyQ29udHJvbGxlci5nZXRDaGlsZFF1ZXN0aW9uc1dpdGhJZExpc3QgKyB0aGlzLmNyZWF0ZVBhcmFtcyh7IGluc3RhbmNlSWQsIHF1ZXN0aW9uSWRzIH0pKTtcclxuICB9XHJcblxyXG4gIHVwbG9hZEF0dGFjaG1lbnQoZmlsZVVwbG9hZFBheWxvYWQ6IEZvcm1EYXRhLCBwYXJhbXM6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuY29uZmlnLmJhc2VVUkwgKyBjb250cm9sbGVycy5hc3Nlc3NtZW50VGFrZXJDb250cm9sbGVyLnVwbG9hZEF0dGFjaG1lbnQgKyB0aGlzLmNyZWF0ZVBhcmFtcyhwYXJhbXMpLCBmaWxlVXBsb2FkUGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBzdWJtaXRBc3Nlc3NtZW50KHBheWxvYWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wb3N0KHRoaXMuY29uZmlnLmJhc2VVUkwgKyBjb250cm9sbGVycy5hc3Nlc3NtZW50VGFrZXJDb250cm9sbGVyLnN1Ym1pdEFzc2Vzc21lbnQsIHBheWxvYWQpO1xyXG4gIH1cclxuXHJcbiAgcGF0Y2hBc3Nlc3NtZW50KHBheWxvYWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudFRha2VyQ29udHJvbGxlci5zdWJtaXRBc3Nlc3NtZW50LCBwYXlsb2FkKTtcclxuICB9XHJcblxyXG4gIGdldEFuc3dlcnNCeUFpYUlkKGFpYUlkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuY29uZmlnLmJhc2VVUkwgKyBjb250cm9sbGVycy5hc3Nlc3NtZW50VGFrZXJDb250cm9sbGVyLmdldEFuc3dlcnNCeUFpYUlkICsgYWlhSWQpXHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
import { Injectable } from '@angular/core';
|
|
2
|
+
import { deepClone } from '../../../shared/utils';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
export class ResponseBuilderService {
|
|
5
|
+
constructor() { }
|
|
6
|
+
buildResponsePayload(assesseeResponse, assessmentData, sectionFormGroups, questionBank, tenant) {
|
|
7
|
+
var _a;
|
|
8
|
+
const requestPayload = deepClone(assesseeResponse);
|
|
9
|
+
requestPayload.aiadefaultResponseList = [];
|
|
10
|
+
(_a = assessmentData === null || assessmentData === void 0 ? void 0 : assessmentData.questionPaperSectionList) === null || _a === void 0 ? void 0 : _a.forEach((section) => {
|
|
11
|
+
var _a;
|
|
12
|
+
const sectionFormGroupWrapper = sectionFormGroups.find((s) => s.sectionId === section.id);
|
|
13
|
+
if (sectionFormGroupWrapper) {
|
|
14
|
+
const formGroup = sectionFormGroupWrapper.formGroup;
|
|
15
|
+
(_a = section.sectionQuestionsList) === null || _a === void 0 ? void 0 : _a.forEach((sectionQuestion) => {
|
|
16
|
+
var _a, _b, _c, _d, _e;
|
|
17
|
+
const ques = questionBank[(sectionQuestion === null || sectionQuestion === void 0 ? void 0 : sectionQuestion.questionId) || -1];
|
|
18
|
+
if (!ques)
|
|
19
|
+
return;
|
|
20
|
+
const quesResObj = this.getQuestionResponseObj(formGroup, ques === null || ques === void 0 ? void 0 : ques.id, questionBank);
|
|
21
|
+
const questionResponseObj = quesResObj.questionResponseObj;
|
|
22
|
+
if (questionResponseObj) {
|
|
23
|
+
let reqObj = Object.assign({}, questionResponseObj);
|
|
24
|
+
delete reqObj.defaultOption;
|
|
25
|
+
const existingAns = (_a = assesseeResponse.aiadefaultResponseList) === null || _a === void 0 ? void 0 : _a.find((a) => { var _a; return ((_a = a.sectionQuestion) === null || _a === void 0 ? void 0 : _a.questionId) === sectionQuestion.questionId && !a.childQuestionId; });
|
|
26
|
+
this.mergeExistingIds(reqObj, existingAns);
|
|
27
|
+
(_b = requestPayload.aiadefaultResponseList) === null || _b === void 0 ? void 0 : _b.push(Object.assign(Object.assign({}, reqObj), { id: (existingAns === null || existingAns === void 0 ? void 0 : existingAns.id) || 0, isActive: true, sectionQuestion,
|
|
28
|
+
tenant, marks: ((_c = formGroup.get(`${ques.id}_marks`)) === null || _c === void 0 ? void 0 : _c.value) != null ? Number((_d = formGroup.get(`${ques.id}_marks`)) === null || _d === void 0 ? void 0 : _d.value) : null }));
|
|
29
|
+
if ((_e = quesResObj.childQuesResObj) === null || _e === void 0 ? void 0 : _e.length) {
|
|
30
|
+
quesResObj.childQuesResObj.forEach((childData) => {
|
|
31
|
+
var _a, _b, _c, _d;
|
|
32
|
+
const childObj = childData === null || childData === void 0 ? void 0 : childData.questionResponseObj;
|
|
33
|
+
const childDetails = childData === null || childData === void 0 ? void 0 : childData.childQuestionDetails;
|
|
34
|
+
if (!childObj || !childDetails)
|
|
35
|
+
return;
|
|
36
|
+
let specificChildReqObj = Object.assign({}, childObj);
|
|
37
|
+
delete specificChildReqObj.defaultOption;
|
|
38
|
+
const existingChildAns = (_a = assesseeResponse.aiadefaultResponseList) === null || _a === void 0 ? void 0 : _a.find((a) => a.childQuestionId === childDetails.id &&
|
|
39
|
+
a.childQuestionParentQuestionId === sectionQuestion.questionId);
|
|
40
|
+
this.mergeExistingIds(specificChildReqObj, existingChildAns);
|
|
41
|
+
(_b = requestPayload.aiadefaultResponseList) === null || _b === void 0 ? void 0 : _b.push(Object.assign(Object.assign({ childQuestionId: childDetails.id, childQuestionParentQuestionId: sectionQuestion.questionId, childDefaultOptionId: childData.parentOptionId }, specificChildReqObj), { id: (existingChildAns === null || existingChildAns === void 0 ? void 0 : existingChildAns.id) || 0, isActive: true, sectionQuestion,
|
|
42
|
+
tenant, marks: ((_c = formGroup.get(`${childDetails.id}_marks`)) === null || _c === void 0 ? void 0 : _c.value) != null ? Number((_d = formGroup.get(`${childDetails.id}_marks`)) === null || _d === void 0 ? void 0 : _d.value) : null }));
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
});
|
|
49
|
+
return requestPayload;
|
|
50
|
+
}
|
|
51
|
+
mergeExistingIds(newAns, existingAns) {
|
|
52
|
+
if (!existingAns)
|
|
53
|
+
return;
|
|
54
|
+
if (newAns.drsubjectiveresponseList && existingAns.drsubjectiveresponseList) {
|
|
55
|
+
newAns.drsubjectiveresponseList.forEach((nItem, idx) => {
|
|
56
|
+
if (existingAns.drsubjectiveresponseList[idx]) {
|
|
57
|
+
nItem.id = existingAns.drsubjectiveresponseList[idx].id;
|
|
58
|
+
}
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
if (newAns.drobjectiveresponseList && existingAns.drobjectiveresponseList) {
|
|
62
|
+
newAns.drobjectiveresponseList.forEach((nItem, idx) => {
|
|
63
|
+
const existingItem = existingAns.drobjectiveresponseList.find((eItem) => { var _a, _b, _c, _d; return ((_b = (_a = eItem.defaultOption) === null || _a === void 0 ? void 0 : _a.options) === null || _b === void 0 ? void 0 : _b.id) === ((_d = (_c = nItem.defaultOption) === null || _c === void 0 ? void 0 : _c.options) === null || _d === void 0 ? void 0 : _d.id); });
|
|
64
|
+
if (existingItem) {
|
|
65
|
+
nItem.id = existingItem.id;
|
|
66
|
+
}
|
|
67
|
+
else if (existingAns.drobjectiveresponseList[idx]) {
|
|
68
|
+
nItem.id = existingAns.drobjectiveresponseList[idx].id;
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
getQuestionResponseObj(formGroup, quesId = -1, questionBank) {
|
|
74
|
+
var _a;
|
|
75
|
+
const questionDetails = questionBank[quesId];
|
|
76
|
+
if (!questionDetails)
|
|
77
|
+
return { questionResponseObj: null, childQuesResObj: [] };
|
|
78
|
+
let questionResponseObj = {};
|
|
79
|
+
let childQuesResObj = [];
|
|
80
|
+
const rawValues = (formGroup === null || formGroup === void 0 ? void 0 : formGroup.getRawValue) ? formGroup.getRawValue() : ((formGroup === null || formGroup === void 0 ? void 0 : formGroup.value) || {});
|
|
81
|
+
const val = rawValues[quesId];
|
|
82
|
+
if (!val) {
|
|
83
|
+
return { questionResponseObj: null, childQuesResObj: [] };
|
|
84
|
+
}
|
|
85
|
+
const qType = (_a = questionDetails.questionType) === null || _a === void 0 ? void 0 : _a.code;
|
|
86
|
+
if (qType === 'QUESTION_TYPE.OBJECTIVE') {
|
|
87
|
+
const defaultOptions = questionDetails.defaultOptionsList || [];
|
|
88
|
+
const selectedOption = defaultOptions.find((i) => i.options.id === val.id);
|
|
89
|
+
if (selectedOption) {
|
|
90
|
+
questionResponseObj = {
|
|
91
|
+
optionId: selectedOption.options,
|
|
92
|
+
defaultOption: selectedOption
|
|
93
|
+
};
|
|
94
|
+
if (selectedOption.remarksRequired) {
|
|
95
|
+
const remarksVal = rawValues[`${quesId}_remarks_${selectedOption.id}`];
|
|
96
|
+
if (remarksVal) {
|
|
97
|
+
questionResponseObj.remarks = remarksVal;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
const childQuesIds = selectedOption.childQuestionList || [];
|
|
101
|
+
childQuesIds.forEach((childId) => {
|
|
102
|
+
var _a;
|
|
103
|
+
const childResponse = this.getQuestionResponseObj(formGroup, childId, questionBank);
|
|
104
|
+
if (childResponse === null || childResponse === void 0 ? void 0 : childResponse.questionResponseObj) {
|
|
105
|
+
childQuesResObj.push({
|
|
106
|
+
questionResponseObj: childResponse.questionResponseObj,
|
|
107
|
+
childQuestionDetails: questionBank[childId],
|
|
108
|
+
parentOptionId: selectedOption.options.id
|
|
109
|
+
});
|
|
110
|
+
if ((_a = childResponse.childQuesResObj) === null || _a === void 0 ? void 0 : _a.length) {
|
|
111
|
+
childQuesResObj = childQuesResObj.concat(childResponse.childQuesResObj);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
questionResponseObj = null;
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
else if (qType === 'QUESTION_TYPE.MULTI_SELECT' || qType === 'QUESTION_TYPE.PREFERENCE') {
|
|
121
|
+
const defaultOptions = questionDetails.defaultOptionsList || [];
|
|
122
|
+
const drobjectiveresponseList = [];
|
|
123
|
+
let valArray = Array.isArray(val) ? val : [val];
|
|
124
|
+
valArray.forEach((opt, index) => {
|
|
125
|
+
const selectedOption = defaultOptions.find((i) => { var _a; return ((_a = i.options) === null || _a === void 0 ? void 0 : _a.id) === opt.id; });
|
|
126
|
+
if (selectedOption) {
|
|
127
|
+
const obj = {
|
|
128
|
+
id: 0,
|
|
129
|
+
defaultOption: selectedOption
|
|
130
|
+
};
|
|
131
|
+
if (qType === 'QUESTION_TYPE.PREFERENCE') {
|
|
132
|
+
obj.orderNo = index + 1;
|
|
133
|
+
}
|
|
134
|
+
if (selectedOption.remarksRequired) {
|
|
135
|
+
const remarksVal = rawValues[`${quesId}_remarks_${selectedOption.id}`];
|
|
136
|
+
if (remarksVal) {
|
|
137
|
+
obj.remarks = remarksVal;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
drobjectiveresponseList.push(obj);
|
|
141
|
+
const childQuesIds = selectedOption.childQuestionList || [];
|
|
142
|
+
childQuesIds.forEach((childId) => {
|
|
143
|
+
var _a;
|
|
144
|
+
const childResponse = this.getQuestionResponseObj(formGroup, childId, questionBank);
|
|
145
|
+
if (childResponse === null || childResponse === void 0 ? void 0 : childResponse.questionResponseObj) {
|
|
146
|
+
childQuesResObj.push({
|
|
147
|
+
questionResponseObj: childResponse.questionResponseObj,
|
|
148
|
+
childQuestionDetails: questionBank[childId],
|
|
149
|
+
parentOptionId: selectedOption.options.id
|
|
150
|
+
});
|
|
151
|
+
if ((_a = childResponse.childQuesResObj) === null || _a === void 0 ? void 0 : _a.length) {
|
|
152
|
+
childQuesResObj = childQuesResObj.concat(childResponse.childQuesResObj);
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
if (drobjectiveresponseList.length > 0) {
|
|
159
|
+
questionResponseObj = { drobjectiveresponseList };
|
|
160
|
+
}
|
|
161
|
+
else {
|
|
162
|
+
questionResponseObj = null;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
else if (qType === 'QUESTION_TYPE.FILE_UPLOAD') {
|
|
166
|
+
const drsubjectiveresponseList = [];
|
|
167
|
+
let valArray = Array.isArray(val) ? val : [val];
|
|
168
|
+
valArray.forEach((opt) => {
|
|
169
|
+
drsubjectiveresponseList.push({
|
|
170
|
+
id: 0,
|
|
171
|
+
responseText: opt === null || opt === void 0 ? void 0 : opt.id
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
if (drsubjectiveresponseList.length > 0) {
|
|
175
|
+
questionResponseObj = { drsubjectiveresponseList };
|
|
176
|
+
}
|
|
177
|
+
else {
|
|
178
|
+
questionResponseObj = null;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
else {
|
|
182
|
+
questionResponseObj = {
|
|
183
|
+
drsubjectiveresponseList: [
|
|
184
|
+
{
|
|
185
|
+
id: 0,
|
|
186
|
+
responseText: val
|
|
187
|
+
}
|
|
188
|
+
]
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
return { questionResponseObj, childQuesResObj };
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
ResponseBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ResponseBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
195
|
+
ResponseBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ResponseBuilderService, providedIn: 'root' });
|
|
196
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ResponseBuilderService, decorators: [{
|
|
197
|
+
type: Injectable,
|
|
198
|
+
args: [{
|
|
199
|
+
providedIn: 'root'
|
|
200
|
+
}]
|
|
201
|
+
}], ctorParameters: function () { return []; } });
|
|
202
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzcG9uc2UtYnVpbGRlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LXRha2VyL3NlcnZpY2VzL3Jlc3BvbnNlLWJ1aWxkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFRbEQsTUFBTSxPQUFPLHNCQUFzQjtJQUUvQixnQkFBZ0IsQ0FBQztJQUVqQixvQkFBb0IsQ0FDaEIsZ0JBQThDLEVBQzlDLGNBQXVDLEVBQ3ZDLGlCQUFnRSxFQUNoRSxZQUFnRCxFQUNoRCxNQUFjOztRQUVkLE1BQU0sY0FBYyxHQUFHLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ25ELGNBQWMsQ0FBQyxzQkFBc0IsR0FBRyxFQUFFLENBQUM7UUFFM0MsTUFBQSxjQUFjLGFBQWQsY0FBYyx1QkFBZCxjQUFjLENBQUUsd0JBQXdCLDBDQUFFLE9BQU8sQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFOztZQUMvRCxNQUFNLHVCQUF1QixHQUFHLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFNBQVMsS0FBSyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDL0YsSUFBSSx1QkFBdUIsRUFBRTtnQkFDekIsTUFBTSxTQUFTLEdBQUcsdUJBQXVCLENBQUMsU0FBUyxDQUFDO2dCQUVwRCxNQUFBLE9BQU8sQ0FBQyxvQkFBb0IsMENBQUUsT0FBTyxDQUFDLENBQUMsZUFBZ0MsRUFBRSxFQUFFOztvQkFDdkUsTUFBTSxJQUFJLEdBQUcsWUFBWSxDQUFDLENBQUEsZUFBZSxhQUFmLGVBQWUsdUJBQWYs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bmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IGRlZXBDbG9uZSB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC91dGlscyc7XHJcbmltcG9ydCB7IEFzc2Vzc21lbnRRdWVzdGlvblBhcGVyLCBTZWN0aW9uUXVlc3Rpb24gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9xdWVzdGlvbi1wYXBlci5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBBc3Nlc3NtZW50SW5zdGFuY2VBc3Nlc3NlRFRPIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2ludGVyZmFjZXMvYXNzZXNzbWVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBBc3Nlc3NtZW50UXVlc3Rpb24gfSBmcm9tICcuLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9xdWVzdGlvbi5pbnRlcmZhY2UnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gICAgcHJvdmlkZWRJbjogJ3Jvb3QnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXNwb25zZUJ1aWxkZXJTZXJ2aWNlIHtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpIHsgfVxyXG5cclxuICAgIGJ1aWxkUmVzcG9uc2VQYXlsb2FkKFxyXG4gICAgICAgIGFzc2Vzc2VlUmVzcG9uc2U6IEFzc2Vzc21lbnRJbnN0YW5jZUFzc2Vzc2VEVE8sXHJcbiAgICAgICAgYXNzZXNzbWVudERhdGE6IEFzc2Vzc21lbnRRdWVzdGlvblBhcGVyLFxyXG4gICAgICAgIHNlY3Rpb25Gb3JtR3JvdXBzOiB7IHNlY3Rpb25JZDogbnVtYmVyOyBmb3JtR3JvdXA6IEZvcm1Hcm91cCB9W10sXHJcbiAgICAgICAgcXVlc3Rpb25CYW5rOiBSZWNvcmQ8bnVtYmVyLCBBc3Nlc3NtZW50UXVlc3Rpb24+LFxyXG4gICAgICAgIHRlbmFudDogbnVtYmVyXHJcbiAgICApIHtcclxuICAgICAgICBjb25zdCByZXF1ZXN0UGF5bG9hZCA9IGRlZXBDbG9uZShhc3Nlc3NlZVJlc3BvbnNlKTtcclxuICAgICAgICByZXF1ZXN0UGF5bG9hZC5haWFkZWZhdWx0UmVzcG9uc2VMaXN0ID0gW107XHJcblxyXG4gICAgICAgIGFzc2Vzc21lbnREYXRhPy5xdWVzdGlvblBhcGVyU2VjdGlvbkxpc3Q/LmZvckVhY2goKHNlY3Rpb246IGFueSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBzZWN0aW9uRm9ybUdyb3VwV3JhcHBlciA9IHNlY3Rpb25Gb3JtR3JvdXBzLmZpbmQoKHM6IGFueSkgPT4gcy5zZWN0aW9uSWQgPT09IHNlY3Rpb24uaWQpO1xyXG4gICAgICAgICAgICBpZiAoc2VjdGlvbkZvcm1Hcm91cFdyYXBwZXIpIHtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1Hcm91cCA9IHNlY3Rpb25Gb3JtR3JvdXBXcmFwcGVyLmZvcm1Hcm91cDtcclxuXHJcbiAgICAgICAgICAgICAgICBzZWN0aW9uLnNlY3Rpb25RdWVzdGlvbnNMaXN0Py5mb3JFYWNoKChzZWN0aW9uUXVlc3Rpb246IFNlY3Rpb25RdWVzdGlvbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHF1ZXMgPSBxdWVzdGlvbkJhbmtbc2VjdGlvblF1ZXN0aW9uPy5xdWVzdGlvbklkIHx8IC0xXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoIXF1ZXMpIHJldHVybjtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcXVlc1Jlc09iaiA9IHRoaXMuZ2V0UXVlc3Rpb25SZXNwb25zZU9iaihmb3JtR3JvdXAsIHF1ZXM/LmlkLCBxdWVzdGlvbkJhbmspO1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHF1ZXN0aW9uUmVzcG9uc2VPYmogPSBxdWVzUmVzT2JqLnF1ZXN0aW9uUmVzcG9uc2VPYmo7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChxdWVzdGlvblJlc3BvbnNlT2JqKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXFPYmogPSBPYmplY3QuYXNzaWduKHt9LCBxdWVzdGlvblJlc3BvbnNlT2JqKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgZGVsZXRlIHJlcU9iai5kZWZhdWx0T3B0aW9uO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdBbnMgPSBhc3Nlc3NlZVJlc3BvbnNlLmFpYWRlZmF1bHRSZXNwb25zZUxpc3Q/LmZpbmQoKGE6IGFueSkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEuc2VjdGlvblF1ZXN0aW9uPy5xdWVzdGlvbklkID09PSBzZWN0aW9uUXVlc3Rpb24ucXVlc3Rpb25JZCAmJiAhYS5jaGlsZFF1ZXN0aW9uSWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWVyZ2VFeGlzdGluZ0lkcyhyZXFPYmosIGV4aXN0aW5nQW5zKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlcXVlc3RQYXlsb2FkLmFpYWRlZmF1bHRSZXNwb25zZUxpc3Q/LnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4ucmVxT2JqLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IGV4aXN0aW5nQW5zPy5pZCB8fCAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaXNBY3RpdmU6IHRydWUsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzZWN0aW9uUXVlc3Rpb24sXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYXJrczogZm9ybUdyb3VwLmdldChgJHtxdWVzLmlkfV9tYXJrc2ApPy52YWx1ZSAhPSBudWxsID8gTnVtYmVyKGZvcm1Hcm91cC5nZXQoYCR7cXVlcy5pZH1fbWFya3NgKT8udmFsdWUpIDogbnVsbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChxdWVzUmVzT2JqLmNoaWxkUXVlc1Jlc09iaj8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzUmVzT2JqLmNoaWxkUXVlc1Jlc09iai5mb3JFYWNoKChjaGlsZERhdGE6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoaWxkT2JqID0gY2hpbGREYXRhPy5xdWVzdGlvblJlc3BvbnNlT2JqO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoaWxkRGV0YWlscyA9IGNoaWxkRGF0YT8uY2hpbGRRdWVzdGlvbkRldGFpbHM7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFjaGlsZE9iaiB8fCAhY2hpbGREZXRhaWxzKSByZXR1cm47XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBzcGVjaWZpY0NoaWxkUmVxT2JqID0gT2JqZWN0LmFzc2lnbih7fSwgY2hpbGRPYmopO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRlbGV0ZSBzcGVjaWZpY0NoaWxkUmVxT2JqLmRlZmF1bHRPcHRpb247XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGV4aXN0aW5nQ2hpbGRBbnMgPSBhc3Nlc3NlZVJlc3BvbnNlLmFpYWRlZmF1bHRSZXNwb25zZUxpc3Q/LmZpbmQoKGE6IGFueSkgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYS5jaGlsZFF1ZXN0aW9uSWQgPT09IGNoaWxkRGV0YWlscy5pZCAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLmNoaWxkUXVlc3Rpb25QYXJlbnRRdWVzdGlvbklkID09PSBzZWN0aW9uUXVlc3Rpb24ucXVlc3Rpb25JZFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICk7XHJcblxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMubWVyZ2VFeGlzdGluZ0lkcyhzcGVjaWZpY0NoaWxkUmVxT2JqLCBleGlzdGluZ0NoaWxkQW5zKTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVxdWVzdFBheWxvYWQuYWlhZGVmYXVsdFJlc3BvbnNlTGlzdD8ucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkUXVlc3Rpb25JZDogY2hpbGREZXRhaWxzLmlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXN0aW9uUGFyZW50UXVlc3Rpb25JZDogc2VjdGlvblF1ZXN0aW9uLnF1ZXN0aW9uSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNoaWxkRGVmYXVsdE9wdGlvbklkOiBjaGlsZERhdGEucGFyZW50T3B0aW9uSWQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLnNwZWNpZmljQ2hpbGRSZXFPYmosXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBleGlzdGluZ0NoaWxkQW5zPy5pZCB8fCAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc0FjdGl2ZTogdHJ1ZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VjdGlvblF1ZXN0aW9uLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZW5hbnQsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcmtzOiBmb3JtR3JvdXAuZ2V0KGAke2NoaWxkRGV0YWlscy5pZH1fbWFya3NgKT8udmFsdWUgIT0gbnVsbCA/IE51bWJlcihmb3JtR3JvdXAuZ2V0KGAke2NoaWxkRGV0YWlscy5pZH1fbWFya3NgKT8udmFsdWUpIDogbnVsbFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG5cclxuICAgICAgICByZXR1cm4gcmVxdWVzdFBheWxvYWQ7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBtZXJnZUV4aXN0aW5nSWRzKG5ld0FuczogYW55LCBleGlzdGluZ0FuczogYW55KSB7XHJcbiAgICAgICAgaWYgKCFleGlzdGluZ0FucykgcmV0dXJuO1xyXG5cclxuICAgICAgICBpZiAobmV3QW5zLmRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdCAmJiBleGlzdGluZ0Fucy5kcnN1YmplY3RpdmVyZXNwb25zZUxpc3QpIHtcclxuICAgICAgICAgICAgbmV3QW5zLmRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdC5mb3JFYWNoKChuSXRlbTogYW55LCBpZHg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nQW5zLmRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdFtpZHhdKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgbkl0ZW0uaWQgPSBleGlzdGluZ0Fucy5kcnN1YmplY3RpdmVyZXNwb25zZUxpc3RbaWR4XS5pZDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChuZXdBbnMuZHJvYmplY3RpdmVyZXNwb25zZUxpc3QgJiYgZXhpc3RpbmdBbnMuZHJvYmplY3RpdmVyZXNwb25zZUxpc3QpIHtcclxuICAgICAgICAgICAgbmV3QW5zLmRyb2JqZWN0aXZlcmVzcG9uc2VMaXN0LmZvckVhY2goKG5JdGVtOiBhbnksIGlkeDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ0l0ZW0gPSBleGlzdGluZ0Fucy5kcm9iamVjdGl2ZXJlc3BvbnNlTGlzdC5maW5kKChlSXRlbTogYW55KSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIGVJdGVtLmRlZmF1bHRPcHRpb24/Lm9wdGlvbnM/LmlkID09PSBuSXRlbS5kZWZhdWx0T3B0aW9uPy5vcHRpb25zPy5pZFxyXG4gICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ0l0ZW0pIHtcclxuICAgICAgICAgICAgICAgICAgICBuSXRlbS5pZCA9IGV4aXN0aW5nSXRlbS5pZDtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoZXhpc3RpbmdBbnMuZHJvYmplY3RpdmVyZXNwb25zZUxpc3RbaWR4XSkge1xyXG4gICAgICAgICAgICAgICAgICAgIG5JdGVtLmlkID0gZXhpc3RpbmdBbnMuZHJvYmplY3RpdmVyZXNwb25zZUxpc3RbaWR4XS5pZDtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0UXVlc3Rpb25SZXNwb25zZU9iaihmb3JtR3JvdXA6IGFueSwgcXVlc0lkOiBudW1iZXIgPSAtMSwgcXVlc3Rpb25CYW5rOiBhbnkpOiBhbnkge1xyXG4gICAgICAgIGNvbnN0IHF1ZXN0aW9uRGV0YWlscyA9IHF1ZXN0aW9uQmFua1txdWVzSWRdO1xyXG4gICAgICAgIGlmICghcXVlc3Rpb25EZXRhaWxzKSByZXR1cm4geyBxdWVzdGlvblJlc3BvbnNlT2JqOiBudWxsLCBjaGlsZFF1ZXNSZXNPYmo6IFtdIH07XHJcblxyXG4gICAgICAgIGxldCBxdWVzdGlvblJlc3BvbnNlT2JqOiBhbnkgPSB7fTtcclxuICAgICAgICBsZXQgY2hpbGRRdWVzUmVzT2JqOiBhbnkgPSBbXTtcclxuICAgICAgICBjb25zdCByYXdWYWx1ZXMgPSBmb3JtR3JvdXA/LmdldFJhd1ZhbHVlID8gZm9ybUdyb3VwLmdldFJhd1ZhbHVlKCkgOiAoZm9ybUdyb3VwPy52YWx1ZSB8fCB7fSk7XHJcbiAgICAgICAgY29uc3QgdmFsID0gcmF3VmFsdWVzW3F1ZXNJZF07XHJcblxyXG4gICAgICAgIGlmICghdmFsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiB7IHF1ZXN0aW9uUmVzcG9uc2VPYmo6IG51bGwsIGNoaWxkUXVlc1Jlc09iajogW10gfTtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIGNvbnN0IHFUeXBlID0gcXVlc3Rpb25EZXRhaWxzLnF1ZXN0aW9uVHlwZT8uY29kZTtcclxuXHJcbiAgICAgICAgaWYgKHFUeXBlID09PSAnUVVFU1RJT05fVFlQRS5PQkpFQ1RJVkUnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRlZmF1bHRPcHRpb25zID0gcXVlc3Rpb25EZXRhaWxzLmRlZmF1bHRPcHRpb25zTGlzdCB8fCBbXTtcclxuICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBkZWZhdWx0T3B0aW9ucy5maW5kKChpOiBhbnkpID0+IGkub3B0aW9ucy5pZCA9PT0gdmFsLmlkKTtcclxuXHJcbiAgICAgICAgICAgIGlmIChzZWxlY3RlZE9wdGlvbikge1xyXG4gICAgICAgICAgICAgICAgcXVlc3Rpb25SZXNwb25zZU9iaiA9IHtcclxuICAgICAgICAgICAgICAgICAgICBvcHRpb25JZDogc2VsZWN0ZWRPcHRpb24ub3B0aW9ucyxcclxuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0T3B0aW9uOiBzZWxlY3RlZE9wdGlvblxyXG4gICAgICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24ucmVtYXJrc1JlcXVpcmVkKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVtYXJrc1ZhbCA9IHJhd1ZhbHVlc1tgJHtxdWVzSWR9X3JlbWFya3NfJHtzZWxlY3RlZE9wdGlvbi5pZH1gXTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAocmVtYXJrc1ZhbCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvblJlc3BvbnNlT2JqLnJlbWFya3MgPSByZW1hcmtzVmFsO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFF1ZXNJZHMgPSBzZWxlY3RlZE9wdGlvbi5jaGlsZFF1ZXN0aW9uTGlzdCB8fCBbXTtcclxuICAgICAgICAgICAgICAgIGNoaWxkUXVlc0lkcy5mb3JFYWNoKChjaGlsZElkOiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFJlc3BvbnNlID0gdGhpcy5nZXRRdWVzdGlvblJlc3BvbnNlT2JqKGZvcm1Hcm91cCwgY2hpbGRJZCwgcXVlc3Rpb25CYW5rKTtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGRSZXNwb25zZT8ucXVlc3Rpb25SZXNwb25zZU9iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXNSZXNPYmoucHVzaCh7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBxdWVzdGlvblJlc3BvbnNlT2JqOiBjaGlsZFJlc3BvbnNlLnF1ZXN0aW9uUmVzcG9uc2VPYmosXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXN0aW9uRGV0YWlsczogcXVlc3Rpb25CYW5rW2NoaWxkSWRdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50T3B0aW9uSWQ6IHNlbGVjdGVkT3B0aW9uLm9wdGlvbnMuaWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFJlc3BvbnNlLmNoaWxkUXVlc1Jlc09iaj8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXNSZXNPYmogPSBjaGlsZFF1ZXNSZXNPYmouY29uY2F0KGNoaWxkUmVzcG9uc2UuY2hpbGRRdWVzUmVzT2JqKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgcXVlc3Rpb25SZXNwb25zZU9iaiA9IG51bGw7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9IGVsc2UgaWYgKHFUeXBlID09PSAnUVVFU1RJT05fVFlQRS5NVUxUSV9TRUxFQ1QnIHx8IHFUeXBlID09PSAnUVVFU1RJT05fVFlQRS5QUkVGRVJFTkNFJykge1xyXG4gICAgICAgICAgICBjb25zdCBkZWZhdWx0T3B0aW9ucyA9IHF1ZXN0aW9uRGV0YWlscy5kZWZhdWx0T3B0aW9uc0xpc3QgfHwgW107XHJcbiAgICAgICAgICAgIGNvbnN0IGRyb2JqZWN0aXZlcmVzcG9uc2VMaXN0OiBhbnlbXSA9IFtdO1xyXG5cclxuICAgICAgICAgICAgbGV0IHZhbEFycmF5ID0gQXJyYXkuaXNBcnJheSh2YWwpID8gdmFsIDogW3ZhbF07XHJcblxyXG4gICAgICAgICAgICB2YWxBcnJheS5mb3JFYWNoKChvcHQ6IGFueSwgaW5kZXg6IG51bWJlcikgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc2VsZWN0ZWRPcHRpb24gPSBkZWZhdWx0T3B0aW9ucy5maW5kKChpOiBhbnkpID0+IGkub3B0aW9ucz8uaWQgPT09IG9wdC5pZCk7XHJcbiAgICAgICAgICAgICAgICBpZiAoc2VsZWN0ZWRPcHRpb24pIHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBvYmo6IGFueSA9IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlZmF1bHRPcHRpb246IHNlbGVjdGVkT3B0aW9uXHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuXHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHFUeXBlID09PSAnUVVFU1RJT05fVFlQRS5QUkVGRVJFTkNFJykge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBvYmoub3JkZXJObyA9IGluZGV4ICsgMTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcblxyXG4gICAgICAgICAgICAgICAgICAgIGlmIChzZWxlY3RlZE9wdGlvbi5yZW1hcmtzUmVxdWlyZWQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcmVtYXJrc1ZhbCA9IHJhd1ZhbHVlc1tgJHtxdWVzSWR9X3JlbWFya3NfJHtzZWxlY3RlZE9wdGlvbi5pZH1gXTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJlbWFya3NWYWwpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9iai5yZW1hcmtzID0gcmVtYXJrc1ZhbDtcclxuICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgICAgICAgICAgZHJvYmplY3RpdmVyZXNwb25zZUxpc3QucHVzaChvYmopO1xyXG5cclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBjaGlsZFF1ZXNJZHMgPSBzZWxlY3RlZE9wdGlvbi5jaGlsZFF1ZXN0aW9uTGlzdCB8fCBbXTtcclxuICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXNJZHMuZm9yRWFjaCgoY2hpbGRJZDogbnVtYmVyKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNoaWxkUmVzcG9uc2UgPSB0aGlzLmdldFF1ZXN0aW9uUmVzcG9uc2VPYmooZm9ybUdyb3VwLCBjaGlsZElkLCBxdWVzdGlvbkJhbmspO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoY2hpbGRSZXNwb25zZT8ucXVlc3Rpb25SZXNwb25zZU9iaikge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRRdWVzUmVzT2JqLnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHF1ZXN0aW9uUmVzcG9uc2VPYmo6IGNoaWxkUmVzcG9uc2UucXVlc3Rpb25SZXNwb25zZU9iaixcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXN0aW9uRGV0YWlsczogcXVlc3Rpb25CYW5rW2NoaWxkSWRdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudE9wdGlvbklkOiBzZWxlY3RlZE9wdGlvbi5vcHRpb25zLmlkXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChjaGlsZFJlc3BvbnNlLmNoaWxkUXVlc1Jlc09iaj8ubGVuZ3RoKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRRdWVzUmVzT2JqID0gY2hpbGRRdWVzUmVzT2JqLmNvbmNhdChjaGlsZFJlc3BvbnNlLmNoaWxkUXVlc1Jlc09iaik7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSk7XHJcblxyXG4gICAgICAgICAgICBpZiAoZHJvYmplY3RpdmVyZXNwb25zZUxpc3QubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgcXVlc3Rpb25SZXNwb25zZU9iaiA9IHsgZHJvYmplY3RpdmVyZXNwb25zZUxpc3QgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHF1ZXN0aW9uUmVzcG9uc2VPYmogPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIGlmIChxVHlwZSA9PT0gJ1FVRVNUSU9OX1RZUEUuRklMRV9VUExPQUQnKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdDogYW55W10gPSBbXTtcclxuXHJcbiAgICAgICAgICAgIGxldCB2YWxBcnJheSA9IEFycmF5LmlzQXJyYXkodmFsKSA/IHZhbCA6IFt2YWxdO1xyXG4gICAgICAgICAgICB2YWxBcnJheS5mb3JFYWNoKChvcHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgZHJzdWJqZWN0aXZlcmVzcG9uc2VMaXN0LnB1c2goe1xyXG4gICAgICAgICAgICAgICAgICAgIGlkOiAwLFxyXG4gICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVGV4dDogb3B0Py5pZFxyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgaWYgKGRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdC5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICBxdWVzdGlvblJlc3BvbnNlT2JqID0geyBkcnN1YmplY3RpdmVyZXNwb25zZUxpc3QgfTtcclxuICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgIHF1ZXN0aW9uUmVzcG9uc2VPYmogPSBudWxsO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgcXVlc3Rpb25SZXNwb25zZU9iaiA9IHtcclxuICAgICAgICAgICAgICAgIGRyc3ViamVjdGl2ZXJlc3BvbnNlTGlzdDogW1xyXG4gICAgICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlc3BvbnNlVGV4dDogdmFsXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgXVxyXG4gICAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgcmV0dXJuIHsgcXVlc3Rpb25SZXNwb25zZU9iaiwgY2hpbGRRdWVzUmVzT2JqIH07XHJcbiAgICB9XHJcbn1cclxuIl19
|