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.
Files changed (100) hide show
  1. package/README.md +191 -0
  2. package/bundles/commons-assessment.umd.js +3968 -0
  3. package/bundles/commons-assessment.umd.js.map +1 -0
  4. package/commons-assessment.d.ts +5 -0
  5. package/esm2015/commons-assessment.js +5 -0
  6. package/esm2015/lib/commons-assessment.module.js +28 -0
  7. package/esm2015/lib/configuration.js +4 -0
  8. package/esm2015/lib/modules/assessment-maker/assessment-maker.component.js +409 -0
  9. package/esm2015/lib/modules/assessment-maker/assessment-maker.module.js +52 -0
  10. package/esm2015/lib/modules/assessment-maker/components/add-edit-section-introduction/add-edit-section-introduction.component.js +55 -0
  11. package/esm2015/lib/modules/assessment-maker/components/assessment-builder/assessment-builder.component.js +551 -0
  12. package/esm2015/lib/modules/assessment-maker/components/question-details/question-details.component.js +75 -0
  13. package/esm2015/lib/modules/assessment-maker/services/assessment-builder.service.js +150 -0
  14. package/esm2015/lib/modules/assessment-maker/services/assessment-maker.service.js +55 -0
  15. package/esm2015/lib/modules/assessment-taker/assessment-taker.component.js +618 -0
  16. package/esm2015/lib/modules/assessment-taker/assessment-taker.module.js +70 -0
  17. package/esm2015/lib/modules/assessment-taker/components/question-type-editor/question-type-editor.component.js +70 -0
  18. package/esm2015/lib/modules/assessment-taker/components/question-type-file-upload/question-type-file-upload.component.js +153 -0
  19. package/esm2015/lib/modules/assessment-taker/components/question-type-long/question-type-long.component.js +74 -0
  20. package/esm2015/lib/modules/assessment-taker/components/question-type-multiselect/question-type-multiselect.component.js +105 -0
  21. package/esm2015/lib/modules/assessment-taker/components/question-type-number/question-type-number.component.js +47 -0
  22. package/esm2015/lib/modules/assessment-taker/components/question-type-objective/question-type-objective.component.js +91 -0
  23. package/esm2015/lib/modules/assessment-taker/components/question-type-preference/question-type-preference.component.js +105 -0
  24. package/esm2015/lib/modules/assessment-taker/components/question-type-short/question-type-short.component.js +98 -0
  25. package/esm2015/lib/modules/assessment-taker/components/section-instructions/section-instructions.component.js +61 -0
  26. package/esm2015/lib/modules/assessment-taker/services/assessment-taker.service.js +58 -0
  27. package/esm2015/lib/modules/assessment-taker/services/response-builder.service.js +202 -0
  28. package/esm2015/lib/shared/components/text-editor/text-editor.component.js +119 -0
  29. package/esm2015/lib/shared/controllers.js +21 -0
  30. package/esm2015/lib/shared/interfaces/assessment.interface.js +2 -0
  31. package/esm2015/lib/shared/interfaces/question-paper.interface.js +2 -0
  32. package/esm2015/lib/shared/interfaces/question.interface.js +2 -0
  33. package/esm2015/lib/shared/material-modules.js +74 -0
  34. package/esm2015/lib/shared/pipes/order-by.pipe.js +25 -0
  35. package/esm2015/lib/shared/shared.module.js +48 -0
  36. package/esm2015/lib/shared/utils.js +16 -0
  37. package/esm2015/public-api.js +13 -0
  38. package/fesm2015/commons-assessment.js +3278 -0
  39. package/fesm2015/commons-assessment.js.map +1 -0
  40. package/lib/commons-assessment.module.d.ts +10 -0
  41. package/lib/configuration.d.ts +5 -0
  42. package/lib/modules/assessment-maker/assessment-maker.component.d.ts +64 -0
  43. package/lib/modules/assessment-maker/assessment-maker.module.d.ts +14 -0
  44. package/lib/modules/assessment-maker/components/add-edit-section-introduction/add-edit-section-introduction.component.d.ts +24 -0
  45. package/lib/modules/assessment-maker/components/assessment-builder/assessment-builder.component.d.ts +70 -0
  46. package/lib/modules/assessment-maker/components/question-details/question-details.component.d.ts +36 -0
  47. package/lib/modules/assessment-maker/services/assessment-builder.service.d.ts +43 -0
  48. package/lib/modules/assessment-maker/services/assessment-maker.service.d.ts +22 -0
  49. package/lib/modules/assessment-taker/assessment-taker.component.d.ts +81 -0
  50. package/lib/modules/assessment-taker/assessment-taker.module.d.ts +20 -0
  51. package/lib/modules/assessment-taker/components/question-type-editor/question-type-editor.component.d.ts +22 -0
  52. package/lib/modules/assessment-taker/components/question-type-file-upload/question-type-file-upload.component.d.ts +38 -0
  53. package/lib/modules/assessment-taker/components/question-type-long/question-type-long.component.d.ts +23 -0
  54. package/lib/modules/assessment-taker/components/question-type-multiselect/question-type-multiselect.component.d.ts +25 -0
  55. package/lib/modules/assessment-taker/components/question-type-number/question-type-number.component.d.ts +13 -0
  56. package/lib/modules/assessment-taker/components/question-type-objective/question-type-objective.component.d.ts +23 -0
  57. package/lib/modules/assessment-taker/components/question-type-preference/question-type-preference.component.d.ts +25 -0
  58. package/lib/modules/assessment-taker/components/question-type-short/question-type-short.component.d.ts +25 -0
  59. package/lib/modules/assessment-taker/components/section-instructions/section-instructions.component.d.ts +24 -0
  60. package/lib/modules/assessment-taker/services/assessment-taker.service.d.ts +20 -0
  61. package/lib/modules/assessment-taker/services/response-builder.service.d.ts +16 -0
  62. package/lib/shared/components/text-editor/text-editor.component.d.ts +24 -0
  63. package/lib/shared/controllers.d.ts +19 -0
  64. package/lib/shared/interfaces/assessment.interface.d.ts +133 -0
  65. package/lib/shared/interfaces/question-paper.interface.d.ts +73 -0
  66. package/lib/shared/interfaces/question.interface.d.ts +82 -0
  67. package/lib/shared/material-modules.d.ts +18 -0
  68. package/lib/shared/pipes/order-by.pipe.d.ts +7 -0
  69. package/lib/shared/shared.module.d.ts +12 -0
  70. package/lib/shared/utils.d.ts +2 -0
  71. package/package.json +22 -0
  72. package/public-api.d.ts +9 -0
  73. package/src/lib/assets/images/action-dots.svg +5 -0
  74. package/src/lib/assets/images/add-section.svg +4 -0
  75. package/src/lib/assets/images/arrow-down-black.svg +3 -0
  76. package/src/lib/assets/images/arrow-ramp-left.svg +3 -0
  77. package/src/lib/assets/images/close.svg +3 -0
  78. package/src/lib/assets/images/copy.svg +3 -0
  79. package/src/lib/assets/images/delete.svg +1 -0
  80. package/src/lib/assets/images/drag-drop.svg +8 -0
  81. package/src/lib/assets/images/file.svg +5 -0
  82. package/src/lib/assets/images/go-back.svg +3 -0
  83. package/src/lib/assets/images/info.svg +3 -0
  84. package/src/lib/assets/images/jpeg.svg +5 -0
  85. package/src/lib/assets/images/jpg.svg +5 -0
  86. package/src/lib/assets/images/keyboard.svg +3 -0
  87. package/src/lib/assets/images/no-questions.svg +14 -0
  88. package/src/lib/assets/images/pdf.svg +5 -0
  89. package/src/lib/assets/images/pencil.svg +3 -0
  90. package/src/lib/assets/images/plus-primary.svg +3 -0
  91. package/src/lib/assets/images/png.svg +5 -0
  92. package/src/lib/assets/images/svg.svg +5 -0
  93. package/src/lib/assets/json/imageConfig.json +22 -0
  94. package/src/lib/assets/json/labelConfig.json +96 -0
  95. package/src/lib/assets/json/question-builder-rules.json +97 -0
  96. package/src/lib/assets/json/questionTypes.json +50 -0
  97. package/src/lib/assets/theme/_theme.global.scss +63 -0
  98. package/src/lib/assets/theme/_theme.scss +568 -0
  99. package/src/lib/assets/theme/styles.global.scss +191 -0
  100. package/src/lib/assets/theme/styles.scss +63 -0
@@ -0,0 +1,75 @@
1
+ import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/material/menu";
4
+ import * as i2 from "@angular/material/expansion";
5
+ import * as i3 from "@angular/common";
6
+ import * as i4 from "../../../../shared/pipes/order-by.pipe";
7
+ export class QuestionDetailsComponent {
8
+ constructor() {
9
+ this.labelConfig = {};
10
+ this.imageConfig = {};
11
+ this.editQuestion = new EventEmitter();
12
+ this.duplicateQuestion = new EventEmitter();
13
+ this.deleteParentQuestion = new EventEmitter();
14
+ this.deleteChildQuestion = new EventEmitter();
15
+ this.expanded = false;
16
+ this.showToggle = false;
17
+ }
18
+ ngAfterViewInit() {
19
+ setTimeout(() => this.checkOverflow());
20
+ }
21
+ toggleText() {
22
+ this.expanded = !this.expanded;
23
+ if (!this.expanded) {
24
+ setTimeout(() => this.checkOverflow());
25
+ }
26
+ }
27
+ checkOverflow() {
28
+ const el = this.questionText.nativeElement;
29
+ this.showToggle = el.scrollHeight > el.clientHeight;
30
+ }
31
+ capitalizeFirst(text) {
32
+ if (!text)
33
+ return '';
34
+ return text.toLowerCase().split(' ').map(word => word.charAt(0).toUpperCase() + word.slice(1)).join(' ');
35
+ }
36
+ imageErrorHandler(event, filePath) {
37
+ event.target.src = filePath;
38
+ }
39
+ childQuestionPresent(question) {
40
+ var _a;
41
+ return (_a = question === null || question === void 0 ? void 0 : question.defaultOptionsList) === null || _a === void 0 ? void 0 : _a.some(option => (option === null || option === void 0 ? void 0 : option.childQuestionList) && option.childQuestionList.length > 0);
42
+ }
43
+ }
44
+ QuestionDetailsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDetailsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
45
+ QuestionDetailsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDetailsComponent, selector: "lib-question-details", inputs: { sectionQuestion: "sectionQuestion", question: "question", questionBank: "questionBank", labelConfig: "labelConfig", imageConfig: "imageConfig" }, outputs: { editQuestion: "editQuestion", duplicateQuestion: "duplicateQuestion", deleteParentQuestion: "deleteParentQuestion", deleteChildQuestion: "deleteChildQuestion" }, viewQueries: [{ propertyName: "questionText", first: true, predicate: ["questionText"], descendants: true }], ngImport: i0, template: "<div class=\"d-flex align-items-center justify-content-between mb-3\">\r\n <div class=\"d-flex flex-wrap gap-2\">\r\n <span\r\n class=\"assessment-border-radius-two p-2 assessment-bg-palette-FEF9F1 assessment-text-medium-12 border-palette-F9DAA6\">\r\n {{capitalizeFirst(question?.questionType?.labels?.[0]?.text)}}\r\n </span>\r\n <span *ngIf=\"question?.weight\"\r\n class=\"assessment-border-radius-two p-2 assessment-bg-palette-EDF3FD assessment-text-medium-12 border-palette-C8DAF9\">\r\n {{question?.weight}} {{labelConfig['COMMONS_ASSESSMENT.LABEL.MARKS']}}\r\n </span>\r\n <span *ngIf=\"question?.isMandatory\"\r\n class=\"assessment-border-radius-two p-2 assessment-bg-palette-E8F7F0 assessment-text-medium-12 border-palette-B7E7CF\">\r\n {{labelConfig['COMMONS_ASSESSMENT.LABEL.MANDATORY']}}\r\n </span>\r\n </div>\r\n <button [matMenuTriggerFor]=\"questionsMenu\" (click)=\"$event.stopPropagation()\" class=\"border-0 bg-transparent py-2\">\r\n <img [src]=\"imageConfig['COMMONS_ASSESSMENT.ICON.ACTION_DOTS']\"\r\n (error)=\"imageErrorHandler($event, 'assets/commons-assessment/images/action-dots.svg')\" />\r\n </button>\r\n <mat-menu #questionsMenu=\"matMenu\" class=\"mat-menu assessment-border-radius-two assessment-border-grey-four-1\">\r\n <button (click)=\"duplicateQuestion.emit(sectionQuestion)\" mat-menu-item class=\"py-2 assessment-text-semibold-12\">\r\n {{labelConfig['COMMONS_ASSESSMENT.LABEL.DUPLICATE']}}\r\n </button>\r\n <button (click)=\"deleteParentQuestion.emit(sectionQuestion)\" mat-menu-item\r\n class=\"py-2 assessment-text-semibold-12 assessment-text-danger\">\r\n {{labelConfig['COMMONS_ASSESSMENT.LABEL.DELETE']}}\r\n </button>\r\n </mat-menu>\r\n</div>\r\n<div class=\"col-12\">\r\n <div #questionText class=\"assessment-text-medium-15 question-text cursor-pointer\" [class.collapsed]=\"!expanded\"\r\n (click)=\"$event.stopPropagation(); editQuestion.emit({questionId: sectionQuestion?.questionId, isChildQuestion: false})\"\r\n [innerHTML]=\"question?.questionText?.[0]?.text\">\r\n </div>\r\n\r\n <span *ngIf=\"showToggle\" class=\"assessment-text-semibold-15 assessment-text-primary-one cursor-pointer\"\r\n (click)=\"$event.stopPropagation(); expanded = !expanded\">\r\n {{ labelConfig[expanded ? 'COMMONS_ASSESSMENT.LABEL.READ_LESS' : 'COMMONS_ASSESSMENT.LABEL.READ_MORE'] }}\r\n </span>\r\n</div>\r\n\r\n<!-- Child Questions -->\r\n<ng-container *ngIf=\"question?.defaultOptionsList?.length\">\r\n <div class=\"mt-4 col-12\">\r\n <div *ngFor=\"let option of question?.defaultOptionsList | orderBy\" class=\"my-3 d-flex align-items-start gap-2\">\r\n <div class=\"rounded-circle custom-padding border-grey-ten-2\"></div>\r\n <span class=\"assessment-text-medium-13\">{{option.options?.optionName?.[0]?.text}}</span>\r\n </div>\r\n </div>\r\n\r\n <mat-accordion *ngIf=\"childQuestionPresent(question)\">\r\n <mat-expansion-panel (click)=\"$event.stopPropagation()\" class=\"bg-transparent mt-4 col-12\">\r\n <mat-expansion-panel-header class=\"p-0 bg-transparent pe-1\">\r\n <div class=\"d-flex align-items-center gap-2 flex-grow-1 pe-2\">\r\n <span class=\"assessment-text-semibold-12 assessment-text-grey-eight\">{{labelConfig['COMMONS_ASSESSMENT.LABEL.CHILD_QUESTIONS']}}</span>\r\n <div class=\"flex-grow-1 border-bottom\"></div>\r\n </div>\r\n </mat-expansion-panel-header>\r\n <ng-container *ngFor=\"let option of question?.defaultOptionsList | orderBy\">\r\n <div *ngIf=\"option.childQuestionList?.length\" class=\"mt-3\">\r\n <p class=\"assessment-text-primary-one assessment-text-semibold-14 mb-0\">\r\n {{option.options?.optionName?.[0]?.text}}</p>\r\n <div class=\"position-relative overflow-hidden\">\r\n <div *ngFor=\"let childQuestionId of option.childQuestionList\"\r\n class=\"assessment-child-node position-relative mt-3 ms-md-4 ms-3\">\r\n <div *ngIf=\"questionBank[childQuestionId] as childQuestion\"\r\n class=\"d-flex align-items-start justify-content-between gap-3 ps-1\">\r\n <div (click)=\"$event.stopPropagation(); editQuestion.emit({questionId: childQuestionId, isChildQuestion: true})\"\r\n [innerHTML]=\"childQuestion?.questionText?.[0]?.text\"\r\n class=\"flex-grow-1 assessment-text-regular-13 question-text collapsed cursor-pointer\">\r\n </div>\r\n <span\r\n class=\"assessment-text-medium-12 assessment-text-grey-eight d-md-inline d-none text-nowrap\">\r\n {{capitalizeFirst(childQuestion?.questionType?.labels?.[0]?.text)}}\r\n </span>\r\n <img (click)=\"$event.stopPropagation(); deleteChildQuestion.emit({option: option, childQuestionId: childQuestionId})\"\r\n [src]=\"imageConfig['COMMONS_ASSESSMENT.ICON.DELETE']\"\r\n class=\"action-icon d-md-inline d-none cursor-pointer\" />\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n</ng-container>", 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}.border-palette-F9DAA6{border:.064em solid var(--assessment-palette-F9DAA6)}.border-palette-C8DAF9{border:.064em solid var(--assessment-palette-C8DAF9)}.border-palette-B7E7CF{border:.064em solid var(--assessment-palette-B7E7CF)}.border-grey-ten-2{border:.12rem solid var(--assessment-grey-ten)}.custom-padding{padding:.4rem}.assessment-child-node:before{content:\"\";position:absolute;bottom:calc(100% - .7rem);top:-100vh;border-left:.064em solid var(--assessment-grey-five);border-bottom:.064em solid var(--assessment-grey-five);border-bottom-left-radius:.75rem;z-index:0;left:-1.5rem;width:1.5rem}@media screen and (max-width: 767px){.assessment-child-node:before{left:-1rem;width:1rem}}.question-text{word-break:break-word}.question-text.collapsed{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}\n"], components: [{ type: i1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: i2.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i2.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["tabIndex", "expandedHeight", "collapsedHeight"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2.MatAccordion, selector: "mat-accordion", inputs: ["multi", "displayMode", "togglePosition", "hideToggle"], exportAs: ["matAccordion"] }], pipes: { "orderBy": i4.OrderByPipe } });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDetailsComponent, decorators: [{
47
+ type: Component,
48
+ args: [{
49
+ selector: 'lib-question-details',
50
+ templateUrl: './question-details.component.html',
51
+ styleUrls: ['./question-details.component.scss']
52
+ }]
53
+ }], propDecorators: { sectionQuestion: [{
54
+ type: Input
55
+ }], question: [{
56
+ type: Input
57
+ }], questionBank: [{
58
+ type: Input
59
+ }], labelConfig: [{
60
+ type: Input
61
+ }], imageConfig: [{
62
+ type: Input
63
+ }], editQuestion: [{
64
+ type: Output
65
+ }], duplicateQuestion: [{
66
+ type: Output
67
+ }], deleteParentQuestion: [{
68
+ type: Output
69
+ }], deleteChildQuestion: [{
70
+ type: Output
71
+ }], questionText: [{
72
+ type: ViewChild,
73
+ args: ['questionText']
74
+ }] } });
75
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tZGV0YWlscy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zLWFzc2Vzc21lbnQvc3JjL2xpYi9tb2R1bGVzL2Fzc2Vzc21lbnQtbWFrZXIvY29tcG9uZW50cy9xdWVzdGlvbi1kZXRhaWxzL3F1ZXN0aW9uLWRldGFpbHMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LW1ha2VyL2NvbXBvbmVudHMvcXVlc3Rpb24tZGV0YWlscy9xdWVzdGlvbi1kZXRhaWxzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7O0FBUzdHLE1BQU0sT0FBTyx3QkFBd0I7SUFMckM7UUFTVyxnQkFBVyxHQUE4QixFQUFFLENBQUM7UUFDNUMsZ0JBQVcsR0FBOEIsRUFBRSxDQUFDO1FBRTNDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQWlELENBQUM7UUFDakYsc0JBQWlCLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFDeEQseUJBQW9CLEdBQUcsSUFBSSxZQUFZLEVBQW1CLENBQUM7UUFDM0Qsd0JBQW1CLEdBQUcsSUFBSSxZQUFZLEVBQTRDLENBQUM7UUFFN0YsYUFBUSxHQUFHLEtBQUssQ0FBQztRQUNqQixlQUFVLEdBQUcsS0FBSyxDQUFDO0tBa0NwQjtJQS9CQyxlQUFlO1FBQ2IsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFFBQVEsR0FBRyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7UUFFL0IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDbEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1NBQ3hDO0lBQ0gsQ0FBQztJQUVELGFBQWE7UUFDWCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLGFBQWEsQ0FBQztRQUMzQyxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQyxZQUFZLEdBQUcsRUFBRSxDQUFDLFlBQVksQ0FBQztJQUN0RCxDQUFDO0lBRUQsZUFBZSxDQUFDLElBQXdCO1FBQ3RDLElBQUksQ0FBQyxJQUFJO1lBQUUsT0FBTyxFQUFFLENBQUM7UUFDckIsT0FBTyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUMzRyxDQUFDO0lBRUQsaUJBQWlCLENBQUMsS0FBVSxFQUFFLFFBQWdCO1FBQzVDLEtBQUssQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLFFBQVEsQ0FBQztJQUM5QixDQUFDO0lBRUQsb0JBQW9CLENBQUMsUUFBNEI7O1FBQy9DLE9BQU8sTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsa0JBQWtCLDBDQUFFLElBQUksQ0FDdkMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxpQkFBaUIsS0FBSSxNQUFNLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FDM0UsQ0FBQztJQUNKLENBQUM7O3NIQTlDVSx3QkFBd0I7MEdBQXhCLHdCQUF3QixtZkNUckMsdXRMQXFGZTs0RkQ1RUYsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxzQkFBc0I7b0JBQ2hDLFdBQVcsRUFBRSxtQ0FBbUM7b0JBQ2hELFNBQVMsRUFBRSxDQUFDLG1DQUFtQyxDQUFDO2lCQUNqRDs4QkFFVSxlQUFlO3NCQUF2QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBRUksWUFBWTtzQkFBckIsTUFBTTtnQkFDRyxpQkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csb0JBQW9CO3NCQUE3QixNQUFNO2dCQUNHLG1CQUFtQjtzQkFBNUIsTUFBTTtnQkFJb0IsWUFBWTtzQkFBdEMsU0FBUzt1QkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBBc3Nlc3NtZW50UXVlc3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9xdWVzdGlvbi5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBTZWN0aW9uUXVlc3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9zaGFyZWQvaW50ZXJmYWNlcy9xdWVzdGlvbi1wYXBlci5pbnRlcmZhY2UnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdsaWItcXVlc3Rpb24tZGV0YWlscycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3F1ZXN0aW9uLWRldGFpbHMuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3F1ZXN0aW9uLWRldGFpbHMuY29tcG9uZW50LnNjc3MnXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25EZXRhaWxzQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XHJcbiAgQElucHV0KCkgc2VjdGlvblF1ZXN0aW9uITogU2VjdGlvblF1ZXN0aW9uO1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uITogQXNzZXNzbWVudFF1ZXN0aW9uO1xyXG4gIEBJbnB1dCgpIHF1ZXN0aW9uQmFuayE6IFJlY29yZDxudW1iZXIsIEFzc2Vzc21lbnRRdWVzdGlvbj47XHJcbiAgQElucHV0KCkgbGFiZWxDb25maWc6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcclxuICBASW5wdXQoKSBpbWFnZUNvbmZpZzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfSA9IHt9O1xyXG5cclxuICBAT3V0cHV0KCkgZWRpdFF1ZXN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjx7IHF1ZXN0aW9uSWQ6IGFueSwgaXNDaGlsZFF1ZXN0aW9uOiBib29sZWFuIH0+KCk7XHJcbiAgQE91dHB1dCgpIGR1cGxpY2F0ZVF1ZXN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxTZWN0aW9uUXVlc3Rpb24+KCk7XHJcbiAgQE91dHB1dCgpIGRlbGV0ZVBhcmVudFF1ZXN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxTZWN0aW9uUXVlc3Rpb24+KCk7XHJcbiAgQE91dHB1dCgpIGRlbGV0ZUNoaWxkUXVlc3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPHsgb3B0aW9uOiBhbnksIGNoaWxkUXVlc3Rpb25JZDogbnVtYmVyIH0+KCk7XHJcblxyXG4gIGV4cGFuZGVkID0gZmFsc2U7XHJcbiAgc2hvd1RvZ2dsZSA9IGZhbHNlO1xyXG4gIEBWaWV3Q2hpbGQoJ3F1ZXN0aW9uVGV4dCcpIHF1ZXN0aW9uVGV4dCE6IEVsZW1lbnRSZWY7XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5jaGVja092ZXJmbG93KCkpO1xyXG4gIH1cclxuXHJcbiAgdG9nZ2xlVGV4dCgpIHtcclxuICAgIHRoaXMuZXhwYW5kZWQgPSAhdGhpcy5leHBhbmRlZDtcclxuXHJcbiAgICBpZiAoIXRoaXMuZXhwYW5kZWQpIHtcclxuICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLmNoZWNrT3ZlcmZsb3coKSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjaGVja092ZXJmbG93KCkge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLnF1ZXN0aW9uVGV4dC5uYXRpdmVFbGVtZW50O1xyXG4gICAgdGhpcy5zaG93VG9nZ2xlID0gZWwuc2Nyb2xsSGVpZ2h0ID4gZWwuY2xpZW50SGVpZ2h0O1xyXG4gIH1cclxuXHJcbiAgY2FwaXRhbGl6ZUZpcnN0KHRleHQ6IHN0cmluZyB8IHVuZGVmaW5lZCk6IHN0cmluZyB7XHJcbiAgICBpZiAoIXRleHQpIHJldHVybiAnJztcclxuICAgIHJldHVybiB0ZXh0LnRvTG93ZXJDYXNlKCkuc3BsaXQoJyAnKS5tYXAod29yZCA9PiB3b3JkLmNoYXJBdCgwKS50b1VwcGVyQ2FzZSgpICsgd29yZC5zbGljZSgxKSkuam9pbignICcpO1xyXG4gIH1cclxuXHJcbiAgaW1hZ2VFcnJvckhhbmRsZXIoZXZlbnQ6IGFueSwgZmlsZVBhdGg6IHN0cmluZykge1xyXG4gICAgZXZlbnQudGFyZ2V0LnNyYyA9IGZpbGVQYXRoO1xyXG4gIH1cclxuXHJcbiAgY2hpbGRRdWVzdGlvblByZXNlbnQocXVlc3Rpb246IEFzc2Vzc21lbnRRdWVzdGlvbikge1xyXG4gICAgcmV0dXJuIHF1ZXN0aW9uPy5kZWZhdWx0T3B0aW9uc0xpc3Q/LnNvbWUoXHJcbiAgICAgIG9wdGlvbiA9PiBvcHRpb24/LmNoaWxkUXVlc3Rpb25MaXN0ICYmIG9wdGlvbi5jaGlsZFF1ZXN0aW9uTGlzdC5sZW5ndGggPiAwXHJcbiAgICApO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBtYi0zXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtd3JhcCBnYXAtMlwiPlxyXG4gICAgICAgIDxzcGFuXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYXNzZXNzbWVudC1ib3JkZXItcmFkaXVzLXR3byBwLTIgYXNzZXNzbWVudC1iZy1wYWxldHRlLUZFRjlGMSBhc3Nlc3NtZW50LXRleHQtbWVkaXVtLTEyIGJvcmRlci1wYWxldHRlLUY5REFBNlwiPlxyXG4gICAgICAgICAgICB7e2NhcGl0YWxpemVGaXJzdChxdWVzdGlvbj8ucXVlc3Rpb25UeXBlPy5sYWJlbHM/LlswXT8udGV4dCl9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInF1ZXN0aW9uPy53ZWlnaHRcIlxyXG4gICAgICAgICAgICBjbGFzcz1cImFzc2Vzc21lbnQtYm9yZGVyLXJhZGl1cy10d28gcC0yIGFzc2Vzc21lbnQtYmctcGFsZXR0ZS1FREYzRkQgYXNzZXNzbWVudC10ZXh0LW1lZGl1bS0xMiBib3JkZXItcGFsZXR0ZS1DOERBRjlcIj5cclxuICAgICAgICAgICAge3txdWVzdGlvbj8ud2VpZ2h0fX0ge3tsYWJlbENvbmZpZ1snQ09NTU9OU19BU1NFU1NNRU5ULkxBQkVMLk1BUktTJ119fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cInF1ZXN0aW9uPy5pc01hbmRhdG9yeVwiXHJcbiAgICAgICAgICAgIGNsYXNzPVwiYXNzZXNzbWVudC1ib3JkZXItcmFkaXVzLXR3byBwLTIgYXNzZXNzbWVudC1iZy1wYWxldHRlLUU4RjdGMCBhc3Nlc3NtZW50LXRleHQtbWVkaXVtLTEyIGJvcmRlci1wYWxldHRlLUI3RTdDRlwiPlxyXG4gICAgICAgICAgICB7e2xhYmVsQ29uZmlnWydDT01NT05TX0FTU0VTU01FTlQuTEFCRUwuTUFOREFUT1JZJ119fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgIDwvZGl2PlxyXG4gICAgPGJ1dHRvbiBbbWF0TWVudVRyaWdnZXJGb3JdPVwicXVlc3Rpb25zTWVudVwiIChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIiBjbGFzcz1cImJvcmRlci0wIGJnLXRyYW5zcGFyZW50IHB5LTJcIj5cclxuICAgICAgICA8aW1nIFtzcmNdPVwiaW1hZ2VDb25maWdbJ0NPTU1PTlNfQVNTRVNTTUVOVC5JQ09OLkFDVElPTl9ET1RTJ11cIlxyXG4gICAgICAgICAgICAoZXJyb3IpPVwiaW1hZ2VFcnJvckhhbmRsZXIoJGV2ZW50LCAnYXNzZXRzL2NvbW1vbnMtYXNzZXNzbWVudC9pbWFnZXMvYWN0aW9uLWRvdHMuc3ZnJylcIiAvPlxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8bWF0LW1lbnUgI3F1ZXN0aW9uc01lbnU9XCJtYXRNZW51XCIgY2xhc3M9XCJtYXQtbWVudSBhc3Nlc3NtZW50LWJvcmRlci1yYWRpdXMtdHdvIGFzc2Vzc21lbnQtYm9yZGVyLWdyZXktZm91ci0xXCI+XHJcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZHVwbGljYXRlUXVlc3Rpb24uZW1pdChzZWN0aW9uUXVlc3Rpb24pXCIgbWF0LW1lbnUtaXRlbSBjbGFzcz1cInB5LTIgYXNzZXNzbWVudC10ZXh0LXNlbWlib2xkLTEyXCI+XHJcbiAgICAgICAgICAgIHt7bGFiZWxDb25maWdbJ0NPTU1PTlNfQVNTRVNTTUVOVC5MQUJFTC5EVVBMSUNBVEUnXX19XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiZGVsZXRlUGFyZW50UXVlc3Rpb24uZW1pdChzZWN0aW9uUXVlc3Rpb24pXCIgbWF0LW1lbnUtaXRlbVxyXG4gICAgICAgICAgICBjbGFzcz1cInB5LTIgYXNzZXNzbWVudC10ZXh0LXNlbWlib2xkLTEyIGFzc2Vzc21lbnQtdGV4dC1kYW5nZXJcIj5cclxuICAgICAgICAgICAge3tsYWJlbENvbmZpZ1snQ09NTU9OU19BU1NFU1NNRU5ULkxBQkVMLkRFTEVURSddfX1cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvbWF0LW1lbnU+XHJcbjwvZGl2PlxyXG48ZGl2IGNsYXNzPVwiY29sLTEyXCI+XHJcbiAgICA8ZGl2ICNxdWVzdGlvblRleHQgY2xhc3M9XCJhc3Nlc3NtZW50LXRleHQtbWVkaXVtLTE1IHF1ZXN0aW9uLXRleHQgY3Vyc29yLXBvaW50ZXJcIiBbY2xhc3MuY29sbGFwc2VkXT1cIiFleHBhbmRlZFwiXHJcbiAgICAgICAgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgZWRpdFF1ZXN0aW9uLmVtaXQoe3F1ZXN0aW9uSWQ6IHNlY3Rpb25RdWVzdGlvbj8ucXVlc3Rpb25JZCwgaXNDaGlsZFF1ZXN0aW9uOiBmYWxzZX0pXCJcclxuICAgICAgICBbaW5uZXJIVE1MXT1cInF1ZXN0aW9uPy5xdWVzdGlvblRleHQ/LlswXT8udGV4dFwiPlxyXG4gICAgPC9kaXY+XHJcblxyXG4gICAgPHNwYW4gKm5nSWY9XCJzaG93VG9nZ2xlXCIgY2xhc3M9XCJhc3Nlc3NtZW50LXRleHQtc2VtaWJvbGQtMTUgYXNzZXNzbWVudC10ZXh0LXByaW1hcnktb25lIGN1cnNvci1wb2ludGVyXCJcclxuICAgICAgICAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBleHBhbmRlZCA9ICFleHBhbmRlZFwiPlxyXG4gICAgICAgIHt7IGxhYmVsQ29uZmlnW2V4cGFuZGVkID8gJ0NPTU1PTlNfQVNTRVNTTUVOVC5MQUJFTC5SRUFEX0xFU1MnIDogJ0NPTU1PTlNfQVNTRVNTTUVOVC5MQUJFTC5SRUFEX01PUkUnXSB9fVxyXG4gICAgPC9zcGFuPlxyXG48L2Rpdj5cclxuXHJcbjwhLS0gQ2hpbGQgUXVlc3Rpb25zIC0tPlxyXG48bmctY29udGFpbmVyICpuZ0lmPVwicXVlc3Rpb24/LmRlZmF1bHRPcHRpb25zTGlzdD8ubGVuZ3RoXCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwibXQtNCBjb2wtMTJcIj5cclxuICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBvcHRpb24gb2YgcXVlc3Rpb24/LmRlZmF1bHRPcHRpb25zTGlzdCB8IG9yZGVyQnlcIiBjbGFzcz1cIm15LTMgZC1mbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGdhcC0yXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJyb3VuZGVkLWNpcmNsZSBjdXN0b20tcGFkZGluZyBib3JkZXItZ3JleS10ZW4tMlwiPjwvZGl2PlxyXG4gICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFzc2Vzc21lbnQtdGV4dC1tZWRpdW0tMTNcIj57e29wdGlvbi5vcHRpb25zPy5vcHRpb25OYW1lPy5bMF0/LnRleHR9fTwvc3Bhbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgIDwvZGl2PlxyXG5cclxuICAgIDxtYXQtYWNjb3JkaW9uICpuZ0lmPVwiY2hpbGRRdWVzdGlvblByZXNlbnQocXVlc3Rpb24pXCI+XHJcbiAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKVwiIGNsYXNzPVwiYmctdHJhbnNwYXJlbnQgbXQtNCBjb2wtMTJcIj5cclxuICAgICAgICAgICAgPG1hdC1leHBhbnNpb24tcGFuZWwtaGVhZGVyIGNsYXNzPVwicC0wIGJnLXRyYW5zcGFyZW50IHBlLTFcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0yIGZsZXgtZ3Jvdy0xIHBlLTJcIj5cclxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImFzc2Vzc21lbnQtdGV4dC1zZW1pYm9sZC0xMiBhc3Nlc3NtZW50LXRleHQtZ3JleS1laWdodFwiPnt7bGFiZWxDb25maWdbJ0NPTU1PTlNfQVNTRVNTTUVOVC5MQUJFTC5DSElMRF9RVUVTVElPTlMnXX19PC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWdyb3ctMSBib3JkZXItYm90dG9tXCI+PC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9tYXQtZXhwYW5zaW9uLXBhbmVsLWhlYWRlcj5cclxuICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgb3B0aW9uIG9mIHF1ZXN0aW9uPy5kZWZhdWx0T3B0aW9uc0xpc3QgfCBvcmRlckJ5XCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwib3B0aW9uLmNoaWxkUXVlc3Rpb25MaXN0Py5sZW5ndGhcIiBjbGFzcz1cIm10LTNcIj5cclxuICAgICAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImFzc2Vzc21lbnQtdGV4dC1wcmltYXJ5LW9uZSBhc3Nlc3NtZW50LXRleHQtc2VtaWJvbGQtMTQgbWItMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICB7e29wdGlvbi5vcHRpb25zPy5vcHRpb25OYW1lPy5bMF0/LnRleHR9fTwvcD5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tcmVsYXRpdmUgb3ZlcmZsb3ctaGlkZGVuXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGNoaWxkUXVlc3Rpb25JZCBvZiBvcHRpb24uY2hpbGRRdWVzdGlvbkxpc3RcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhc3Nlc3NtZW50LWNoaWxkLW5vZGUgcG9zaXRpb24tcmVsYXRpdmUgbXQtMyBtcy1tZC00IG1zLTNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJxdWVzdGlvbkJhbmtbY2hpbGRRdWVzdGlvbklkXSBhcyBjaGlsZFF1ZXN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBnYXAtMyBwcy0xXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpOyBlZGl0UXVlc3Rpb24uZW1pdCh7cXVlc3Rpb25JZDogY2hpbGRRdWVzdGlvbklkLCBpc0NoaWxkUXVlc3Rpb246IHRydWV9KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtpbm5lckhUTUxdPVwiY2hpbGRRdWVzdGlvbj8ucXVlc3Rpb25UZXh0Py5bMF0/LnRleHRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZsZXgtZ3Jvdy0xIGFzc2Vzc21lbnQtdGV4dC1yZWd1bGFyLTEzIHF1ZXN0aW9uLXRleHQgY29sbGFwc2VkIGN1cnNvci1wb2ludGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhc3Nlc3NtZW50LXRleHQtbWVkaXVtLTEyIGFzc2Vzc21lbnQtdGV4dC1ncmV5LWVpZ2h0IGQtbWQtaW5saW5lIGQtbm9uZSB0ZXh0LW5vd3JhcFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7e2NhcGl0YWxpemVGaXJzdChjaGlsZFF1ZXN0aW9uPy5xdWVzdGlvblR5cGU/LmxhYmVscz8uWzBdPy50ZXh0KX19XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgKGNsaWNrKT1cIiRldmVudC5zdG9wUHJvcGFnYXRpb24oKTsgZGVsZXRlQ2hpbGRRdWVzdGlvbi5lbWl0KHtvcHRpb246IG9wdGlvbiwgY2hpbGRRdWVzdGlvbklkOiBjaGlsZFF1ZXN0aW9uSWR9KVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzcmNdPVwiaW1hZ2VDb25maWdbJ0NPTU1PTlNfQVNTRVNTTUVOVC5JQ09OLkRFTEVURSddXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhY3Rpb24taWNvbiBkLW1kLWlubGluZSBkLW5vbmUgY3Vyc29yLXBvaW50ZXJcIiAvPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvbWF0LWV4cGFuc2lvbi1wYW5lbD5cclxuICAgIDwvbWF0LWFjY29yZGlvbj5cclxuPC9uZy1jb250YWluZXI+Il19
@@ -0,0 +1,150 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class AssessmentBuilderService {
4
+ constructor() {
5
+ this.defaultAssessmentDTO = {};
6
+ }
7
+ setDefaultAssessmentDTO(value) {
8
+ this.defaultAssessmentDTO = value;
9
+ }
10
+ setQuestionDTO(formData, existingQuestion = {}) {
11
+ var _a, _b, _c, _d, _e, _f, _g;
12
+ const existingConfigsMap = ((existingQuestion === null || existingQuestion === void 0 ? void 0 : existingQuestion.questionConfigs) || [])
13
+ .reduce((acc, config) => {
14
+ acc[config.configKey] = config;
15
+ return acc;
16
+ }, {});
17
+ const questionConfigs = [
18
+ { configKey: 'minCharacterCount', configValue: formData.minCharacterCount ? String(formData.minCharacterCount) : null },
19
+ { configKey: 'maxCharacterCount', configValue: formData.maxCharacterCount ? String(formData.maxCharacterCount) : null },
20
+ { configKey: 'minimumNumberOfOption', configValue: formData.minimumNumberOfOption ? String(formData.minimumNumberOfOption) : null },
21
+ { configKey: 'maximumNumberOfOption', configValue: formData.maximumNumberOfOption ? String(formData.maximumNumberOfOption) : null },
22
+ { configKey: 'maxFileSize', configValue: formData.maxFileSize ? String(formData.maxFileSize) : null },
23
+ { configKey: 'maxNoOfFiles', configValue: formData.maxNoOfFiles ? String(formData.maxNoOfFiles) : null },
24
+ // { configKey: 'visibility', configValue: formData.visibility ? 'true' : 'false' }
25
+ ].map(config => {
26
+ var _a;
27
+ return (Object.assign({ id: ((_a = existingConfigsMap[config.configKey]) === null || _a === void 0 ? void 0 : _a.id) || 0 }, config));
28
+ }).filter(Boolean);
29
+ return Object.assign(Object.assign(Object.assign({}, existingQuestion), { questionText: [{
30
+ id: ((_b = (_a = existingQuestion === null || existingQuestion === void 0 ? void 0 : existingQuestion.questionText) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.id) || 0,
31
+ language: { code: 'ENG' },
32
+ text: formData.questionText || ''
33
+ }], questionType: { code: formData.questionType || '' }, questionSubtype: { code: formData.questionSubtype || ((_c = formData.questionType) === null || _c === void 0 ? void 0 : _c.replace('QUESTION_TYPE', 'QUESTION_SUB_TYPE')) || '' }, isMandatory: formData.isMandatory || false, weight: Number(formData.totalMarks || 0), hintText: formData.hintText || null, mediaUrl: formData.questionMedia || null, responseValidation: formData.customRegex || null, questionConfigs, defaultOptionsList: (() => {
34
+ const existingOptions = (existingQuestion === null || existingQuestion === void 0 ? void 0 : existingQuestion.defaultOptionsList) || [];
35
+ const formOptions = formData.options || [];
36
+ // 1. Process items from formData (new and updated)
37
+ const processedOptions = formOptions.map((opt, index) => {
38
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
39
+ const existingOpt = existingOptions.find(eo => eo.id === opt.id && eo.id !== 0) || {};
40
+ return Object.assign(Object.assign(Object.assign({}, existingOpt), { id: opt.id || 0, uuid: existingOpt.uuid || opt.uuid, orderNo: index + 1, weight: Number(opt.weight || 0), remarksRequired: opt.remarksRequired || false, isActive: opt.isActive !== false, options: Object.assign(Object.assign(Object.assign({}, (existingOpt.options || {})), { id: ((_a = opt === null || opt === void 0 ? void 0 : opt.options) === null || _a === void 0 ? void 0 : _a.id) || ((_b = existingOpt.options) === null || _b === void 0 ? void 0 : _b.id) || 0, optionName: [{
41
+ id: ((_e = (_d = (_c = existingOpt.options) === null || _c === void 0 ? void 0 : _c.optionName) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.id) || 0,
42
+ language: { code: 'ENG' },
43
+ text: opt.optionLabel || ''
44
+ }] }), (((_f = this.defaultAssessmentDTO) === null || _f === void 0 ? void 0 : _f.tenant) && { tenant: (_g = this.defaultAssessmentDTO) === null || _g === void 0 ? void 0 : _g.tenant })), childQuestionList: opt.childQuestionList || existingOpt.childQuestionList || [] }), (((_h = this.defaultAssessmentDTO) === null || _h === void 0 ? void 0 : _h.tenant) && { tenant: (_j = this.defaultAssessmentDTO) === null || _j === void 0 ? void 0 : _j.tenant }));
45
+ });
46
+ // 2. Identify existing options that are NOT in formData (removed by user) and mark them inactive
47
+ const formOptionIds = new Set(processedOptions.map((o) => o.id).filter((id) => id !== 0));
48
+ const removedOptions = existingOptions.filter(eo => eo.id && !formOptionIds.has(eo.id)).map(eo => (Object.assign(Object.assign({}, eo), { isActive: false })));
49
+ return [...processedOptions, ...removedOptions];
50
+ })() }), (!(existingQuestion === null || existingQuestion === void 0 ? void 0 : existingQuestion.id) && Object.assign(Object.assign({ id: 0 }, (((_d = this.defaultAssessmentDTO) === null || _d === void 0 ? void 0 : _d.domain) && { domain: (_e = this.defaultAssessmentDTO) === null || _e === void 0 ? void 0 : _e.domain })), (((_f = this.defaultAssessmentDTO) === null || _f === void 0 ? void 0 : _f.tenant) && { tenant: (_g = this.defaultAssessmentDTO) === null || _g === void 0 ? void 0 : _g.tenant }))));
51
+ }
52
+ getQuestionDTO(questionData) {
53
+ var _a, _b, _c, _d;
54
+ const getConfig = (key) => { var _a, _b; return (_b = (_a = questionData.questionConfigs) === null || _a === void 0 ? void 0 : _a.find(c => c.configKey === key)) === null || _b === void 0 ? void 0 : _b.configValue; };
55
+ return {
56
+ id: questionData.id,
57
+ questionText: ((_b = (_a = questionData.questionText) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.text) || '',
58
+ questionType: ((_c = questionData.questionType) === null || _c === void 0 ? void 0 : _c.code) || '',
59
+ isMandatory: questionData.isMandatory || false,
60
+ totalMarks: questionData.weight || 0,
61
+ hintText: questionData.hintText || '',
62
+ questionMedia: questionData.mediaUrl || '',
63
+ minCharacterCount: getConfig('minCharacterCount') ? Number(getConfig('minCharacterCount')) : null,
64
+ maxCharacterCount: getConfig('maxCharacterCount') ? Number(getConfig('maxCharacterCount')) : null,
65
+ minimumNumberOfOption: getConfig('minimumNumberOfOption') ? Number(getConfig('minimumNumberOfOption')) : null,
66
+ maximumNumberOfOption: getConfig('maximumNumberOfOption') ? Number(getConfig('maximumNumberOfOption')) : null,
67
+ maxFileSize: getConfig('maxFileSize') ? Number(getConfig('maxFileSize')) : null,
68
+ maxNoOfFiles: getConfig('maxNoOfFiles') ? Number(getConfig('maxNoOfFiles')) : null,
69
+ // visibility: getConfig('visibility') === 'true',
70
+ customRegex: questionData === null || questionData === void 0 ? void 0 : questionData.responseValidation,
71
+ options: ((_d = questionData.defaultOptionsList) === null || _d === void 0 ? void 0 : _d.map(opt => {
72
+ var _a, _b, _c;
73
+ return ({
74
+ id: opt.id,
75
+ uuid: opt.uuid,
76
+ optionLabel: ((_c = (_b = (_a = opt.options) === null || _a === void 0 ? void 0 : _a.optionName) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.text) || '',
77
+ weight: opt.weight || 0,
78
+ remarksRequired: opt.remarksRequired || false,
79
+ isActive: opt.isActive !== false,
80
+ childQuestionList: opt.childQuestionList || [],
81
+ });
82
+ })) || [],
83
+ childQuestions: (questionData === null || questionData === void 0 ? void 0 : questionData.childQuestions) || []
84
+ };
85
+ }
86
+ createNewSection(sequence) {
87
+ var _a, _b;
88
+ return Object.assign({ id: 0, qpsName: [{
89
+ id: 0,
90
+ language: { code: 'ENG' },
91
+ text: `Section ${sequence}`
92
+ }], orderNo: sequence, sectionQuestionsList: [], totalMarks: 0, totalQuestions: 0 }, (((_a = this.defaultAssessmentDTO) === null || _a === void 0 ? void 0 : _a.tenant) && { tenant: (_b = this.defaultAssessmentDTO) === null || _b === void 0 ? void 0 : _b.tenant }));
93
+ }
94
+ generateSectionQuestion(question, sectionQuestion = {}) {
95
+ var _a, _b;
96
+ return Object.assign({ id: (sectionQuestion === null || sectionQuestion === void 0 ? void 0 : sectionQuestion.id) || 0, question, isMandatory: question === null || question === void 0 ? void 0 : question.isMandatory }, (!(sectionQuestion === null || sectionQuestion === void 0 ? void 0 : sectionQuestion.id) && ((_a = this.defaultAssessmentDTO) === null || _a === void 0 ? void 0 : _a.tenant) && { tenant: (_b = this.defaultAssessmentDTO) === null || _b === void 0 ? void 0 : _b.tenant }));
97
+ }
98
+ generateQuestionPaperDTO(questionPaper, questionBank) {
99
+ var _a, _b, _c;
100
+ if (!questionPaper)
101
+ return questionPaper;
102
+ if (!(questionPaper === null || questionPaper === void 0 ? void 0 : questionPaper.id) && ((_a = this.defaultAssessmentDTO) === null || _a === void 0 ? void 0 : _a.tenant)) {
103
+ questionPaper.tenant = (_b = this.defaultAssessmentDTO) === null || _b === void 0 ? void 0 : _b.tenant;
104
+ }
105
+ (_c = questionPaper.questionPaperSectionList) === null || _c === void 0 ? void 0 : _c.forEach((section, sIndex) => {
106
+ var _a;
107
+ section.orderNo = sIndex + 1;
108
+ let sectionMarks = 0;
109
+ let sectionQuestionsCount = 0;
110
+ (_a = section.sectionQuestionsList) === null || _a === void 0 ? void 0 : _a.forEach((q, qIndex) => {
111
+ q.orderNo = qIndex + 1;
112
+ const question = (q === null || q === void 0 ? void 0 : q.question) || questionBank[(q === null || q === void 0 ? void 0 : q.questionId) || -1];
113
+ if (question && q.isActive !== false) {
114
+ sectionMarks += Number(question.weight) || 0;
115
+ sectionQuestionsCount++;
116
+ }
117
+ });
118
+ section.totalMarks = sectionMarks;
119
+ section.totalQuestions = sectionQuestionsCount;
120
+ });
121
+ return questionPaper;
122
+ }
123
+ generateAssessmentDTO(assessmentId, questionPaper) {
124
+ var _a;
125
+ return Object.assign({ id: assessmentId, totallMarks: ((_a = questionPaper === null || questionPaper === void 0 ? void 0 : questionPaper.questionPaperSectionList) === null || _a === void 0 ? void 0 : _a.filter((section) => section.isActive !== false).reduce((acc, section) => acc + (section.totalMarks || 0), 0)) || 0 }, (!assessmentId && Object.assign({}, this.defaultAssessmentDTO)));
126
+ }
127
+ generateAssessmentInstanceDTO(assessmentId) {
128
+ var _a, _b;
129
+ let d = new Date();
130
+ let year = d.getFullYear();
131
+ let month = d.getMonth();
132
+ let day = d.getDate();
133
+ let endDate = new Date(year + 20, month, day);
134
+ return {
135
+ id: 0,
136
+ endDate: endDate,
137
+ startDate: new Date(),
138
+ assessment: Object.assign({ id: assessmentId }, (((_a = this.defaultAssessmentDTO) === null || _a === void 0 ? void 0 : _a.tenant) && { tenant: (_b = this.defaultAssessmentDTO) === null || _b === void 0 ? void 0 : _b.tenant }))
139
+ };
140
+ }
141
+ }
142
+ AssessmentBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
143
+ AssessmentBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentBuilderService, providedIn: 'root' });
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentBuilderService, decorators: [{
145
+ type: Injectable,
146
+ args: [{
147
+ providedIn: 'root'
148
+ }]
149
+ }], ctorParameters: function () { return []; } });
150
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXNzbWVudC1idWlsZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21tb25zLWFzc2Vzc21lbnQvc3JjL2xpYi9tb2R1bGVzL2Fzc2Vzc21lbnQtbWFrZXIvc2VydmljZXMvYXNzZXNzbWVudC1idWlsZGVyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFRM0MsTUFBTSxPQUFPLHdCQUF3QjtJQVFqQztRQU5RLHlCQUFvQixHQUFlLEVBQUUsQ0FBQztJQU05QixDQUFDO0lBSmpCLHVCQUF1QixDQUFDLEtBQWlCO1FBQ3JDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDdEMsQ0FBQztJQUlELGNBQWMsQ0FBQyxRQUFhLEVBQUUsbUJBQThDLEVBQUU7O1FBRTFFLE1BQU0sa0JBQWtCLEdBQUcsQ0FBQyxDQUFBLGdCQUFnQixhQUFoQixnQkFBZ0IsdUJBQWhCLGdCQUFnQixDQUFFLGVBQWUsS0FBSSxFQUFFLENBQUM7YUFDL0QsTUFBTSxDQUFDLENBQUMsR0FBUSxFQUFFLE1BQVcsRUFBRSxFQUFFO1lBQzlCLEdBQUcsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEdBQUcsTUFBTSxDQUFDO1lBQy9CLE9BQU8sR0FBRyxDQUFDO1FBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBRVgsTUFBTSxlQUFlLEdBQUc7WUFDcEIsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUU7WUFDdkgsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQyxpQkFBaUIsQ0FB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TUFBTSxFQUFFLENBQUMsQ0FDMUY7U0FDSixDQUFBO0lBQ0wsQ0FBQzs7c0hBM01RLHdCQUF3QjswSEFBeEIsd0JBQXdCLGNBRnJCLE1BQU07NEZBRVQsd0JBQXdCO2tCQUhwQyxVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQXNzZXNzbWVudCwgQXNzZXNzbWVudEluc3RhbmNlIH0gZnJvbSAnLi4vLi4vLi4vc2hhcmVkL2ludGVyZmFjZXMvYXNzZXNzbWVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQgeyBRdWVzdGlvblBhcGVyU2VjdGlvbiwgU2VjdGlvblF1ZXN0aW9uLCBBc3Nlc3NtZW50UXVlc3Rpb25QYXBlciB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2VzL3F1ZXN0aW9uLXBhcGVyLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEFzc2Vzc21lbnRRdWVzdGlvbiB9IGZyb20gJy4uLy4uLy4uL3NoYXJlZC9pbnRlcmZhY2VzL3F1ZXN0aW9uLmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgICBwcm92aWRlZEluOiAncm9vdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEFzc2Vzc21lbnRCdWlsZGVyU2VydmljZSB7XHJcblxyXG4gICAgcHJpdmF0ZSBkZWZhdWx0QXNzZXNzbWVudERUTzogQXNzZXNzbWVudCA9IHt9O1xyXG5cclxuICAgIHNldERlZmF1bHRBc3Nlc3NtZW50RFRPKHZhbHVlOiBBc3Nlc3NtZW50KSB7XHJcbiAgICAgICAgdGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTyA9IHZhbHVlO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKCkgeyB9XHJcblxyXG4gICAgc2V0UXVlc3Rpb25EVE8oZm9ybURhdGE6IGFueSwgZXhpc3RpbmdRdWVzdGlvbjogQXNzZXNzbWVudFF1ZXN0aW9uIHwgbnVsbCA9IHt9KTogQXNzZXNzbWVudFF1ZXN0aW9uIHtcclxuXHJcbiAgICAgICAgY29uc3QgZXhpc3RpbmdDb25maWdzTWFwID0gKGV4aXN0aW5nUXVlc3Rpb24/LnF1ZXN0aW9uQ29uZmlncyB8fCBbXSlcclxuICAgICAgICAgICAgLnJlZHVjZSgoYWNjOiBhbnksIGNvbmZpZzogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBhY2NbY29uZmlnLmNvbmZpZ0tleV0gPSBjb25maWc7XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gYWNjO1xyXG4gICAgICAgICAgICB9LCB7fSk7XHJcblxyXG4gICAgICAgIGNvbnN0IHF1ZXN0aW9uQ29uZmlncyA9IFtcclxuICAgICAgICAgICAgeyBjb25maWdLZXk6ICdtaW5DaGFyYWN0ZXJDb3VudCcsIGNvbmZpZ1ZhbHVlOiBmb3JtRGF0YS5taW5DaGFyYWN0ZXJDb3VudCA/IFN0cmluZyhmb3JtRGF0YS5taW5DaGFyYWN0ZXJDb3VudCkgOiBudWxsIH0sXHJcbiAgICAgICAgICAgIHsgY29uZmlnS2V5OiAnbWF4Q2hhcmFjdGVyQ291bnQnLCBjb25maWdWYWx1ZTogZm9ybURhdGEubWF4Q2hhcmFjdGVyQ291bnQgPyBTdHJpbmcoZm9ybURhdGEubWF4Q2hhcmFjdGVyQ291bnQpIDogbnVsbCB9LFxyXG4gICAgICAgICAgICB7IGNvbmZpZ0tleTogJ21pbmltdW1OdW1iZXJPZk9wdGlvbicsIGNvbmZpZ1ZhbHVlOiBmb3JtRGF0YS5taW5pbXVtTnVtYmVyT2ZPcHRpb24gPyBTdHJpbmcoZm9ybURhdGEubWluaW11bU51bWJlck9mT3B0aW9uKSA6IG51bGwgfSxcclxuICAgICAgICAgICAgeyBjb25maWdLZXk6ICdtYXhpbXVtTnVtYmVyT2ZPcHRpb24nLCBjb25maWdWYWx1ZTogZm9ybURhdGEubWF4aW11bU51bWJlck9mT3B0aW9uID8gU3RyaW5nKGZvcm1EYXRhLm1heGltdW1OdW1iZXJPZk9wdGlvbikgOiBudWxsIH0sXHJcbiAgICAgICAgICAgIHsgY29uZmlnS2V5OiAnbWF4RmlsZVNpemUnLCBjb25maWdWYWx1ZTogZm9ybURhdGEubWF4RmlsZVNpemUgPyBTdHJpbmcoZm9ybURhdGEubWF4RmlsZVNpemUpIDogbnVsbCB9LFxyXG4gICAgICAgICAgICB7IGNvbmZpZ0tleTogJ21heE5vT2ZGaWxlcycsIGNvbmZpZ1ZhbHVlOiBmb3JtRGF0YS5tYXhOb09mRmlsZXMgPyBTdHJpbmcoZm9ybURhdGEubWF4Tm9PZkZpbGVzKSA6IG51bGwgfSxcclxuICAgICAgICAgICAgLy8geyBjb25maWdLZXk6ICd2aXNpYmlsaXR5JywgY29uZmlnVmFsdWU6IGZvcm1EYXRhLnZpc2liaWxpdHkgPyAndHJ1ZScgOiAnZmFsc2UnIH1cclxuICAgICAgICBdLm1hcChjb25maWcgPT4gKHtcclxuICAgICAgICAgICAgaWQ6IGV4aXN0aW5nQ29uZmlnc01hcFtjb25maWcuY29uZmlnS2V5XT8uaWQgfHwgMCxcclxuICAgICAgICAgICAgLi4uY29uZmlnLFxyXG4gICAgICAgIH0pKS5maWx0ZXIoQm9vbGVhbik7XHJcblxyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIC4uLmV4aXN0aW5nUXVlc3Rpb24sXHJcbiAgICAgICAgICAgIHF1ZXN0aW9uVGV4dDogW3tcclxuICAgICAgICAgICAgICAgIGlkOiBleGlzdGluZ1F1ZXN0aW9uPy5xdWVzdGlvblRleHQ/LlswXT8uaWQgfHwgMCxcclxuICAgICAgICAgICAgICAgIGxhbmd1YWdlOiB7IGNvZGU6ICdFTkcnIH0sXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBmb3JtRGF0YS5xdWVzdGlvblRleHQgfHwgJydcclxuICAgICAgICAgICAgfV0sXHJcbiAgICAgICAgICAgIHF1ZXN0aW9uVHlwZTogeyBjb2RlOiBmb3JtRGF0YS5xdWVzdGlvblR5cGUgfHwgJycgfSxcclxuICAgICAgICAgICAgcXVlc3Rpb25TdWJ0eXBlOiB7IGNvZGU6IGZvcm1EYXRhLnF1ZXN0aW9uU3VidHlwZSB8fCBmb3JtRGF0YS5xdWVzdGlvblR5cGU/LnJlcGxhY2UoJ1FVRVNUSU9OX1RZUEUnLCAnUVVFU1RJT05fU1VCX1RZUEUnKSB8fCAnJyB9LFxyXG4gICAgICAgICAgICBpc01hbmRhdG9yeTogZm9ybURhdGEuaXNNYW5kYXRvcnkgfHwgZmFsc2UsXHJcbiAgICAgICAgICAgIHdlaWdodDogTnVtYmVyKGZvcm1EYXRhLnRvdGFsTWFya3MgfHwgMCksXHJcbiAgICAgICAgICAgIGhpbnRUZXh0OiBmb3JtRGF0YS5oaW50VGV4dCB8fCBudWxsLFxyXG4gICAgICAgICAgICBtZWRpYVVybDogZm9ybURhdGEucXVlc3Rpb25NZWRpYSB8fCBudWxsLFxyXG4gICAgICAgICAgICByZXNwb25zZVZhbGlkYXRpb246IGZvcm1EYXRhLmN1c3RvbVJlZ2V4IHx8IG51bGwsXHJcbiAgICAgICAgICAgIHF1ZXN0aW9uQ29uZmlncyxcclxuICAgICAgICAgICAgZGVmYXVsdE9wdGlvbnNMaXN0OiAoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZXhpc3RpbmdPcHRpb25zID0gZXhpc3RpbmdRdWVzdGlvbj8uZGVmYXVsdE9wdGlvbnNMaXN0IHx8IFtdO1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZm9ybU9wdGlvbnMgPSBmb3JtRGF0YS5vcHRpb25zIHx8IFtdO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIDEuIFByb2Nlc3MgaXRlbXMgZnJvbSBmb3JtRGF0YSAobmV3IGFuZCB1cGRhdGVkKVxyXG4gICAgICAgICAgICAgICAgY29uc3QgcHJvY2Vzc2VkT3B0aW9ucyA9IGZvcm1PcHRpb25zLm1hcCgob3B0OiBhbnksIGluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCBleGlzdGluZ09wdCA9IGV4aXN0aW5nT3B0aW9ucy5maW5kKGVvID0+IGVvLmlkID09PSBvcHQuaWQgJiYgZW8uaWQgIT09IDApIHx8IHt9O1xyXG5cclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi5leGlzdGluZ09wdCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWQ6IG9wdC5pZCB8fCAwLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB1dWlkOiBleGlzdGluZ09wdC51dWlkIHx8IG9wdC51dWlkLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBvcmRlck5vOiBpbmRleCArIDEsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHdlaWdodDogTnVtYmVyKG9wdC53ZWlnaHQgfHwgMCksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbWFya3NSZXF1aXJlZDogb3B0LnJlbWFya3NSZXF1aXJlZCB8fCBmYWxzZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgaXNBY3RpdmU6IG9wdC5pc0FjdGl2ZSAhPT0gZmFsc2UsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIC4uLihleGlzdGluZ09wdC5vcHRpb25zIHx8IHt9KSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBvcHQ/Lm9wdGlvbnM/LmlkIHx8IGV4aXN0aW5nT3B0Lm9wdGlvbnM/LmlkIHx8IDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25OYW1lOiBbe1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlkOiBleGlzdGluZ09wdC5vcHRpb25zPy5vcHRpb25OYW1lPy5bMF0/LmlkIHx8IDAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFuZ3VhZ2U6IHsgY29kZTogJ0VORycgfSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0ZXh0OiBvcHQub3B0aW9uTGFiZWwgfHwgJydcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1dLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLi4uKHRoaXMuZGVmYXVsdEFzc2Vzc21lbnREVE8/LnRlbmFudCAmJiB7IHRlbmFudDogdGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50IH0pLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBjaGlsZFF1ZXN0aW9uTGlzdDogb3B0LmNoaWxkUXVlc3Rpb25MaXN0IHx8IGV4aXN0aW5nT3B0LmNoaWxkUXVlc3Rpb25MaXN0IHx8IFtdLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICAuLi4odGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50ICYmIHsgdGVuYW50OiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQgfSksXHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIH0pO1xyXG5cclxuICAgICAgICAgICAgICAgIC8vIDIuIElkZW50aWZ5IGV4aXN0aW5nIG9wdGlvbnMgdGhhdCBhcmUgTk9UIGluIGZvcm1EYXRhIChyZW1vdmVkIGJ5IHVzZXIpIGFuZCBtYXJrIHRoZW0gaW5hY3RpdmVcclxuICAgICAgICAgICAgICAgIGNvbnN0IGZvcm1PcHRpb25JZHMgPSBuZXcgU2V0KHByb2Nlc3NlZE9wdGlvbnMubWFwKChvOiBhbnkpID0+IG8uaWQpLmZpbHRlcigoaWQ6IG51bWJlcikgPT4gaWQgIT09IDApKTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHJlbW92ZWRPcHRpb25zID0gZXhpc3RpbmdPcHRpb25zLmZpbHRlcihlbyA9PiBlby5pZCAmJiAhZm9ybU9wdGlvbklkcy5oYXMoZW8uaWQpKS5tYXAoZW8gPT4gKHsgLi4uZW8sIGlzQWN0aXZlOiBmYWxzZSB9KSk7XHJcblxyXG4gICAgICAgICAgICAgICAgcmV0dXJuIFsuLi5wcm9jZXNzZWRPcHRpb25zLCAuLi5yZW1vdmVkT3B0aW9uc107XHJcbiAgICAgICAgICAgIH0pKCksXHJcbiAgICAgICAgICAgIC4uLighZXhpc3RpbmdRdWVzdGlvbj8uaWQgJiYge1xyXG4gICAgICAgICAgICAgICAgaWQ6IDAsXHJcbiAgICAgICAgICAgICAgICAuLi4odGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8uZG9tYWluICYmIHsgZG9tYWluOiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy5kb21haW4gfSksXHJcbiAgICAgICAgICAgICAgICAuLi4odGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50ICYmIHsgdGVuYW50OiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQgfSksXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBnZXRRdWVzdGlvbkRUTyhxdWVzdGlvbkRhdGE6IEFzc2Vzc21lbnRRdWVzdGlvbikge1xyXG4gICAgICAgIGNvbnN0IGdldENvbmZpZyA9IChrZXk6IHN0cmluZykgPT4gcXVlc3Rpb25EYXRhLnF1ZXN0aW9uQ29uZmlncz8uZmluZChjID0+IGMuY29uZmlnS2V5ID09PSBrZXkpPy5jb25maWdWYWx1ZTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWQ6IHF1ZXN0aW9uRGF0YS5pZCxcclxuICAgICAgICAgICAgcXVlc3Rpb25UZXh0OiBxdWVzdGlvbkRhdGEucXVlc3Rpb25UZXh0Py5bMF0/LnRleHQgfHwgJycsXHJcbiAgICAgICAgICAgIHF1ZXN0aW9uVHlwZTogcXVlc3Rpb25EYXRhLnF1ZXN0aW9uVHlwZT8uY29kZSB8fCAnJyxcclxuICAgICAgICAgICAgaXNNYW5kYXRvcnk6IHF1ZXN0aW9uRGF0YS5pc01hbmRhdG9yeSB8fCBmYWxzZSxcclxuICAgICAgICAgICAgdG90YWxNYXJrczogcXVlc3Rpb25EYXRhLndlaWdodCB8fCAwLFxyXG4gICAgICAgICAgICBoaW50VGV4dDogcXVlc3Rpb25EYXRhLmhpbnRUZXh0IHx8ICcnLFxyXG4gICAgICAgICAgICBxdWVzdGlvbk1lZGlhOiBxdWVzdGlvbkRhdGEubWVkaWFVcmwgfHwgJycsXHJcbiAgICAgICAgICAgIG1pbkNoYXJhY3RlckNvdW50OiBnZXRDb25maWcoJ21pbkNoYXJhY3RlckNvdW50JykgPyBOdW1iZXIoZ2V0Q29uZmlnKCdtaW5DaGFyYWN0ZXJDb3VudCcpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIG1heENoYXJhY3RlckNvdW50OiBnZXRDb25maWcoJ21heENoYXJhY3RlckNvdW50JykgPyBOdW1iZXIoZ2V0Q29uZmlnKCdtYXhDaGFyYWN0ZXJDb3VudCcpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIG1pbmltdW1OdW1iZXJPZk9wdGlvbjogZ2V0Q29uZmlnKCdtaW5pbXVtTnVtYmVyT2ZPcHRpb24nKSA/IE51bWJlcihnZXRDb25maWcoJ21pbmltdW1OdW1iZXJPZk9wdGlvbicpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIG1heGltdW1OdW1iZXJPZk9wdGlvbjogZ2V0Q29uZmlnKCdtYXhpbXVtTnVtYmVyT2ZPcHRpb24nKSA/IE51bWJlcihnZXRDb25maWcoJ21heGltdW1OdW1iZXJPZk9wdGlvbicpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIG1heEZpbGVTaXplOiBnZXRDb25maWcoJ21heEZpbGVTaXplJykgPyBOdW1iZXIoZ2V0Q29uZmlnKCdtYXhGaWxlU2l6ZScpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIG1heE5vT2ZGaWxlczogZ2V0Q29uZmlnKCdtYXhOb09mRmlsZXMnKSA/IE51bWJlcihnZXRDb25maWcoJ21heE5vT2ZGaWxlcycpKSA6IG51bGwsXHJcbiAgICAgICAgICAgIC8vIHZpc2liaWxpdHk6IGdldENvbmZpZygndmlzaWJpbGl0eScpID09PSAndHJ1ZScsXHJcbiAgICAgICAgICAgIGN1c3RvbVJlZ2V4OiBxdWVzdGlvbkRhdGE/LnJlc3BvbnNlVmFsaWRhdGlvbixcclxuICAgICAgICAgICAgb3B0aW9uczogcXVlc3Rpb25EYXRhLmRlZmF1bHRPcHRpb25zTGlzdD8ubWFwKG9wdCA9PiAoe1xyXG4gICAgICAgICAgICAgICAgaWQ6IG9wdC5pZCxcclxuICAgICAgICAgICAgICAgIHV1aWQ6IG9wdC51dWlkLFxyXG4gICAgICAgICAgICAgICAgb3B0aW9uTGFiZWw6IG9wdC5vcHRpb25zPy5vcHRpb25OYW1lPy5bMF0/LnRleHQgfHwgJycsXHJcbiAgICAgICAgICAgICAgICB3ZWlnaHQ6IG9wdC53ZWlnaHQgfHwgMCxcclxuICAgICAgICAgICAgICAgIHJlbWFya3NSZXF1aXJlZDogb3B0LnJlbWFya3NSZXF1aXJlZCB8fCBmYWxzZSxcclxuICAgICAgICAgICAgICAgIGlzQWN0aXZlOiBvcHQuaXNBY3RpdmUgIT09IGZhbHNlLFxyXG4gICAgICAgICAgICAgICAgY2hpbGRRdWVzdGlvbkxpc3Q6IG9wdC5jaGlsZFF1ZXN0aW9uTGlzdCB8fCBbXSxcclxuICAgICAgICAgICAgfSkpIHx8IFtdLFxyXG4gICAgICAgICAgICBjaGlsZFF1ZXN0aW9uczogcXVlc3Rpb25EYXRhPy5jaGlsZFF1ZXN0aW9ucyB8fCBbXVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBjcmVhdGVOZXdTZWN0aW9uKHNlcXVlbmNlOiBudW1iZXIpOiBRdWVzdGlvblBhcGVyU2VjdGlvbiB7XHJcbiAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgaWQ6IDAsXHJcbiAgICAgICAgICAgIHFwc05hbWU6IFt7XHJcbiAgICAgICAgICAgICAgICBpZDogMCxcclxuICAgICAgICAgICAgICAgIGxhbmd1YWdlOiB7IGNvZGU6ICdFTkcnIH0sXHJcbiAgICAgICAgICAgICAgICB0ZXh0OiBgU2VjdGlvbiAke3NlcXVlbmNlfWBcclxuICAgICAgICAgICAgfV0sXHJcbiAgICAgICAgICAgIG9yZGVyTm86IHNlcXVlbmNlLFxyXG4gICAgICAgICAgICBzZWN0aW9uUXVlc3Rpb25zTGlzdDogW10sXHJcbiAgICAgICAgICAgIHRvdGFsTWFya3M6IDAsXHJcbiAgICAgICAgICAgIHRvdGFsUXVlc3Rpb25zOiAwLFxyXG4gICAgICAgICAgICAuLi4odGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50ICYmIHsgdGVuYW50OiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQgfSksXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGdlbmVyYXRlU2VjdGlvblF1ZXN0aW9uKHF1ZXN0aW9uOiBBc3Nlc3NtZW50UXVlc3Rpb24sIHNlY3Rpb25RdWVzdGlvbjogU2VjdGlvblF1ZXN0aW9uID0ge30pOiBTZWN0aW9uUXVlc3Rpb24ge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkOiBzZWN0aW9uUXVlc3Rpb24/LmlkIHx8IDAsXHJcbiAgICAgICAgICAgIHF1ZXN0aW9uLFxyXG4gICAgICAgICAgICBpc01hbmRhdG9yeTogcXVlc3Rpb24/LmlzTWFuZGF0b3J5LFxyXG4gICAgICAgICAgICAuLi4oIXNlY3Rpb25RdWVzdGlvbj8uaWQgJiYgdGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50ICYmIHsgdGVuYW50OiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQgfSlcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2VuZXJhdGVRdWVzdGlvblBhcGVyRFRPKHF1ZXN0aW9uUGFwZXI6IEFzc2Vzc21lbnRRdWVzdGlvblBhcGVyLCBxdWVzdGlvbkJhbms6IFJlY29yZDxudW1iZXIsIEFzc2Vzc21lbnRRdWVzdGlvbj4pOiBBc3Nlc3NtZW50UXVlc3Rpb25QYXBlciB7XHJcbiAgICAgICAgaWYgKCFxdWVzdGlvblBhcGVyKSByZXR1cm4gcXVlc3Rpb25QYXBlcjtcclxuXHJcbiAgICAgICAgaWYgKCFxdWVzdGlvblBhcGVyPy5pZCAmJiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQpIHtcclxuICAgICAgICAgICAgcXVlc3Rpb25QYXBlci50ZW5hbnQgPSB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQ7XHJcbiAgICAgICAgfVxyXG5cclxuXHJcbiAgICAgICAgcXVlc3Rpb25QYXBlci5xdWVzdGlvblBhcGVyU2VjdGlvbkxpc3Q/LmZvckVhY2goKHNlY3Rpb246IGFueSwgc0luZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgc2VjdGlvbi5vcmRlck5vID0gc0luZGV4ICsgMTtcclxuXHJcbiAgICAgICAgICAgIGxldCBzZWN0aW9uTWFya3MgPSAwO1xyXG4gICAgICAgICAgICBsZXQgc2VjdGlvblF1ZXN0aW9uc0NvdW50ID0gMDtcclxuXHJcbiAgICAgICAgICAgIHNlY3Rpb24uc2VjdGlvblF1ZXN0aW9uc0xpc3Q/LmZvckVhY2goKHE6IFNlY3Rpb25RdWVzdGlvbiwgcUluZGV4OiBudW1iZXIpID0+IHtcclxuICAgICAgICAgICAgICAgIHEub3JkZXJObyA9IHFJbmRleCArIDE7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBxdWVzdGlvbiA9IHE/LnF1ZXN0aW9uIHx8IHF1ZXN0aW9uQmFua1txPy5xdWVzdGlvbklkIHx8IC0xXTtcclxuICAgICAgICAgICAgICAgIGlmIChxdWVzdGlvbiAmJiBxLmlzQWN0aXZlICE9PSBmYWxzZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHNlY3Rpb25NYXJrcyArPSBOdW1iZXIocXVlc3Rpb24ud2VpZ2h0KSB8fCAwO1xyXG4gICAgICAgICAgICAgICAgICAgIHNlY3Rpb25RdWVzdGlvbnNDb3VudCsrO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgICAgIHNlY3Rpb24udG90YWxNYXJrcyA9IHNlY3Rpb25NYXJrcztcclxuICAgICAgICAgICAgc2VjdGlvbi50b3RhbFF1ZXN0aW9ucyA9IHNlY3Rpb25RdWVzdGlvbnNDb3VudDtcclxuICAgICAgICB9KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIHF1ZXN0aW9uUGFwZXI7XHJcbiAgICB9XHJcblxyXG4gICAgZ2VuZXJhdGVBc3Nlc3NtZW50RFRPKGFzc2Vzc21lbnRJZDogbnVtYmVyLCBxdWVzdGlvblBhcGVyOiBBc3Nlc3NtZW50UXVlc3Rpb25QYXBlcik6IEFzc2Vzc21lbnQge1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkOiBhc3Nlc3NtZW50SWQsXHJcbiAgICAgICAgICAgIHRvdGFsbE1hcmtzOiBxdWVzdGlvblBhcGVyPy5xdWVzdGlvblBhcGVyU2VjdGlvbkxpc3Q/LmZpbHRlcigoc2VjdGlvbjogYW55KSA9PiBzZWN0aW9uLmlzQWN0aXZlICE9PSBmYWxzZSkucmVkdWNlKChhY2M6IG51bWJlciwgc2VjdGlvbjogYW55KSA9PiBhY2MgKyAoc2VjdGlvbi50b3RhbE1hcmtzIHx8IDApLCAwKSB8fCAwLFxyXG4gICAgICAgICAgICAuLi4oIWFzc2Vzc21lbnRJZCAmJiB7XHJcbiAgICAgICAgICAgICAgICAuLi50aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPXHJcbiAgICAgICAgICAgIH0pXHJcbiAgICAgICAgfTtcclxuICAgIH1cclxuXHJcbiAgICBnZW5lcmF0ZUFzc2Vzc21lbnRJbnN0YW5jZURUTyhhc3Nlc3NtZW50SWQ6IG51bWJlcik6IEFzc2Vzc21lbnRJbnN0YW5jZSB7XHJcbiAgICAgICAgbGV0IGQgPSBuZXcgRGF0ZSgpO1xyXG4gICAgICAgIGxldCB5ZWFyID0gZC5nZXRGdWxsWWVhcigpO1xyXG4gICAgICAgIGxldCBtb250aCA9IGQuZ2V0TW9udGgoKTtcclxuICAgICAgICBsZXQgZGF5ID0gZC5nZXREYXRlKCk7XHJcbiAgICAgICAgbGV0IGVuZERhdGUgPSBuZXcgRGF0ZSh5ZWFyICsgMjAsIG1vbnRoLCBkYXkpO1xyXG4gICAgICAgIHJldHVybiB7XHJcbiAgICAgICAgICAgIGlkOiAwLFxyXG4gICAgICAgICAgICBlbmREYXRlOiBlbmREYXRlLFxyXG4gICAgICAgICAgICBzdGFydERhdGU6IG5ldyBEYXRlKCksXHJcbiAgICAgICAgICAgIGFzc2Vzc21lbnQ6IHtcclxuICAgICAgICAgICAgICAgIGlkOiBhc3Nlc3NtZW50SWQsXHJcbiAgICAgICAgICAgICAgICAuLi4odGhpcy5kZWZhdWx0QXNzZXNzbWVudERUTz8udGVuYW50ICYmIHsgdGVuYW50OiB0aGlzLmRlZmF1bHRBc3Nlc3NtZW50RFRPPy50ZW5hbnQgfSlcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufSJdfQ==
@@ -0,0 +1,55 @@
1
+ import { Inject, Injectable } from '@angular/core';
2
+ import { LIBRARY_CONFIG } from '../../../configuration';
3
+ import * as controllers from '../../../shared/controllers';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "@angular/common/http";
6
+ export class AssessmentMakerService {
7
+ constructor(config, http) {
8
+ this.config = config;
9
+ this.http = http;
10
+ }
11
+ getConfigJSON(fileName) {
12
+ return this.http.get(`/assets/commons-assessment/${fileName}.json`);
13
+ }
14
+ createAssessmentAndQuestionPaper(payload) {
15
+ return this.http.post(this.config.baseURL + controllers.assessmentMakerController.assessmentAndQuestionPaper, payload);
16
+ }
17
+ patchAssessmentAndQuestionPaper(payload) {
18
+ return this.http.patch(this.config.baseURL + controllers.assessmentMakerController.assessmentAndQuestionPaper, payload);
19
+ }
20
+ createQuestion(payload) {
21
+ return this.http.post(this.config.baseURL + controllers.assessmentMakerController.createQuestion, payload);
22
+ }
23
+ patchQuestion(payload) {
24
+ return this.http.patch(this.config.baseURL + controllers.assessmentMakerController.patchQuestion, payload);
25
+ }
26
+ getQuestionsByIds(params) {
27
+ return this.http.get(this.config.baseURL + controllers.assessmentMakerController.getQuestionsByIds, { params });
28
+ }
29
+ getAssessmentContext(assessmentId) {
30
+ return this.http.get(this.config.baseURL + controllers.assessmentMakerController.getAssessmentContext.replace('$AssessmentId', assessmentId.toString()));
31
+ }
32
+ duplicateSection(questionPaperId, sectionId) {
33
+ var _a, _b;
34
+ return this.http.patch(this.config.baseURL + ((_b = (_a = controllers.assessmentMakerController.duplicateSection) === null || _a === void 0 ? void 0 : _a.replace('$AssessmentQuestionPaperId', questionPaperId === null || questionPaperId === void 0 ? void 0 : questionPaperId.toString())) === null || _b === void 0 ? void 0 : _b.replace('$SectionId', sectionId === null || sectionId === void 0 ? void 0 : sectionId.toString())), {});
35
+ }
36
+ duplicateQuestion(sectionId, sectionQuestionId) {
37
+ var _a, _b;
38
+ return this.http.patch(this.config.baseURL + ((_b = (_a = controllers.assessmentMakerController.duplicateQuestion) === null || _a === void 0 ? void 0 : _a.replace('$SectionId', sectionId === null || sectionId === void 0 ? void 0 : sectionId.toString())) === null || _b === void 0 ? void 0 : _b.replace('$SectionQuestionId', sectionQuestionId === null || sectionQuestionId === void 0 ? void 0 : sectionQuestionId.toString())), {});
39
+ }
40
+ createAssessmentInstance(payload) {
41
+ return this.http.post(this.config.baseURL + controllers.assessmentMakerController.createAssessmentInstance, payload);
42
+ }
43
+ }
44
+ AssessmentMakerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentMakerService, deps: [{ token: LIBRARY_CONFIG }, { token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
45
+ AssessmentMakerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentMakerService, providedIn: 'root' });
46
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AssessmentMakerService, decorators: [{
47
+ type: Injectable,
48
+ args: [{
49
+ providedIn: 'root'
50
+ }]
51
+ }], ctorParameters: function () { return [{ type: undefined, decorators: [{
52
+ type: Inject,
53
+ args: [LIBRARY_CONFIG]
54
+ }] }, { type: i1.HttpClient }]; } });
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzZXNzbWVudC1tYWtlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tbW9ucy1hc3Nlc3NtZW50L3NyYy9saWIvbW9kdWxlcy9hc3Nlc3NtZW50LW1ha2VyL3NlcnZpY2VzL2Fzc2Vzc21lbnQtbWFrZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsY0FBYyxFQUFpQixNQUFNLHdCQUF3QixDQUFDO0FBQ3ZFLE9BQU8sS0FBSyxXQUFXLE1BQU0sNkJBQTZCLENBQUM7OztBQU0zRCxNQUFNLE9BQU8sc0JBQXNCO0lBRWpDLFlBQ2tDLE1BQXFCLEVBQzdDLElBQWdCO1FBRFEsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUM3QyxTQUFJLEdBQUosSUFBSSxDQUFZO0lBQ3RCLENBQUM7SUFFTCxhQUFhLENBQUMsUUFBZ0I7UUFDNUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyw4QkFBOEIsUUFBUSxPQUFPLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsZ0NBQWdDLENBQUMsT0FBWTtRQUMzQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQywwQkFBMEIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6SCxDQUFDO0lBRUQsK0JBQStCLENBQUMsT0FBWTtRQUMxQyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQywwQkFBMEIsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUMxSCxDQUFDO0lBRUQsY0FBYyxDQUFDLE9BQVk7UUFDekIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMseUJBQXlCLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzdHLENBQUM7SUFFRCxhQUFhLENBQUMsT0FBWTtRQUN4QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxHQUFHLFdBQVcsQ0FBQyx5QkFBeUIsQ0FBQyxhQUFhLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDN0csQ0FBQztJQUVELGlCQUFpQixDQUFDLE1BQWlDO1FBQ2pELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLGlCQUFpQixFQUFFLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUNsSCxDQUFDO0lBRUQsb0JBQW9CLENBQUMsWUFBb0I7UUFDdkMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMseUJBQXlCLENBQUMsb0JBQW9CLENBQUMsT0FBTyxDQUFDLGVBQWUsRUFBRSxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzNKLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxlQUF1QixFQUFFLFNBQWlCOztRQUN6RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFHLE1BQUEsTUFBQSxXQUFXLENBQUMseUJBQXlCLENBQUMsZ0JBQWdCLDBDQUFFLE9BQU8sQ0FBQyw0QkFBNEIsRUFBRSxlQUFlLGFBQWYsZUFBZSx1QkFBZixlQUFlLENBQUUsUUFBUSxFQUFFLENBQUMsMENBQUUsT0FBTyxDQUFDLFlBQVksRUFBRSxTQUFTLGFBQVQsU0FBUyx1QkFBVCxTQUFTLENBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzdOLENBQUM7SUFFRCxpQkFBaUIsQ0FBQyxTQUFpQixFQUFFLGlCQUF5Qjs7UUFDNUQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sSUFBRyxNQUFBLE1BQUEsV0FBVyxDQUFDLHlCQUF5QixDQUFDLGlCQUFpQiwwQ0FBRSxPQUFPLENBQUMsWUFBWSxFQUFFLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRSxRQUFRLEVBQUUsQ0FBQywwQ0FBRSxPQUFPLENBQUMsb0JBQW9CLEVBQUUsaUJBQWlCLGFBQWpCLGlCQUFpQix1QkFBakIsaUJBQWlCLENBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3hOLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxPQUFZO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsV0FBVyxDQUFDLHlCQUF5QixDQUFDLHdCQUF3QixFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZILENBQUM7O29IQTdDVSxzQkFBc0Isa0JBR3ZCLGNBQWM7d0hBSGIsc0JBQXNCLGNBRnJCLE1BQU07NEZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBSUksTUFBTTsyQkFBQyxjQUFjIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0IHsgSW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IExJQlJBUllfQ09ORklHLCBMaWJyYXJ5Q29uZmlnIH0gZnJvbSAnLi4vLi4vLi4vY29uZmlndXJhdGlvbic7XHJcbmltcG9ydCAqIGFzIGNvbnRyb2xsZXJzIGZyb20gJy4uLy4uLy4uL3NoYXJlZC9jb250cm9sbGVycyc7XHJcblxyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290J1xyXG59KVxyXG5leHBvcnQgY2xhc3MgQXNzZXNzbWVudE1ha2VyU2VydmljZSB7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgQEluamVjdChMSUJSQVJZX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IExpYnJhcnlDb25maWcsXHJcbiAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnRcclxuICApIHsgfVxyXG5cclxuICBnZXRDb25maWdKU09OKGZpbGVOYW1lOiBzdHJpbmcpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KGAvYXNzZXRzL2NvbW1vbnMtYXNzZXNzbWVudC8ke2ZpbGVOYW1lfS5qc29uYCk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVBc3Nlc3NtZW50QW5kUXVlc3Rpb25QYXBlcihwYXlsb2FkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudE1ha2VyQ29udHJvbGxlci5hc3Nlc3NtZW50QW5kUXVlc3Rpb25QYXBlciwgcGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBwYXRjaEFzc2Vzc21lbnRBbmRRdWVzdGlvblBhcGVyKHBheWxvYWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudE1ha2VyQ29udHJvbGxlci5hc3Nlc3NtZW50QW5kUXVlc3Rpb25QYXBlciwgcGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBjcmVhdGVRdWVzdGlvbihwYXlsb2FkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudE1ha2VyQ29udHJvbGxlci5jcmVhdGVRdWVzdGlvbiwgcGF5bG9hZCk7XHJcbiAgfVxyXG5cclxuICBwYXRjaFF1ZXN0aW9uKHBheWxvYWQ6IGFueSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudE1ha2VyQ29udHJvbGxlci5wYXRjaFF1ZXN0aW9uLCBwYXlsb2FkKTtcclxuICB9XHJcblxyXG4gIGdldFF1ZXN0aW9uc0J5SWRzKHBhcmFtczogeyBxdWVzdGlvbklkczogbnVtYmVyW10gfSkge1xyXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQodGhpcy5jb25maWcuYmFzZVVSTCArIGNvbnRyb2xsZXJzLmFzc2Vzc21lbnRNYWtlckNvbnRyb2xsZXIuZ2V0UXVlc3Rpb25zQnlJZHMsIHsgcGFyYW1zIH0pO1xyXG4gIH1cclxuXHJcbiAgZ2V0QXNzZXNzbWVudENvbnRleHQoYXNzZXNzbWVudElkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHRoaXMuY29uZmlnLmJhc2VVUkwgKyBjb250cm9sbGVycy5hc3Nlc3NtZW50TWFrZXJDb250cm9sbGVyLmdldEFzc2Vzc21lbnRDb250ZXh0LnJlcGxhY2UoJyRBc3Nlc3NtZW50SWQnLCBhc3Nlc3NtZW50SWQudG9TdHJpbmcoKSkpO1xyXG4gIH1cclxuXHJcbiAgZHVwbGljYXRlU2VjdGlvbihxdWVzdGlvblBhcGVySWQ6IG51bWJlciwgc2VjdGlvbklkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2godGhpcy5jb25maWcuYmFzZVVSTCArIGNvbnRyb2xsZXJzLmFzc2Vzc21lbnRNYWtlckNvbnRyb2xsZXIuZHVwbGljYXRlU2VjdGlvbj8ucmVwbGFjZSgnJEFzc2Vzc21lbnRRdWVzdGlvblBhcGVySWQnLCBxdWVzdGlvblBhcGVySWQ/LnRvU3RyaW5nKCkpPy5yZXBsYWNlKCckU2VjdGlvbklkJywgc2VjdGlvbklkPy50b1N0cmluZygpKSwge30pO1xyXG4gIH1cclxuXHJcbiAgZHVwbGljYXRlUXVlc3Rpb24oc2VjdGlvbklkOiBudW1iZXIsIHNlY3Rpb25RdWVzdGlvbklkOiBudW1iZXIpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucGF0Y2godGhpcy5jb25maWcuYmFzZVVSTCArIGNvbnRyb2xsZXJzLmFzc2Vzc21lbnRNYWtlckNvbnRyb2xsZXIuZHVwbGljYXRlUXVlc3Rpb24/LnJlcGxhY2UoJyRTZWN0aW9uSWQnLCBzZWN0aW9uSWQ/LnRvU3RyaW5nKCkpPy5yZXBsYWNlKCckU2VjdGlvblF1ZXN0aW9uSWQnLCBzZWN0aW9uUXVlc3Rpb25JZD8udG9TdHJpbmcoKSksIHt9KTtcclxuICB9XHJcblxyXG4gIGNyZWF0ZUFzc2Vzc21lbnRJbnN0YW5jZShwYXlsb2FkOiBhbnkpIHtcclxuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh0aGlzLmNvbmZpZy5iYXNlVVJMICsgY29udHJvbGxlcnMuYXNzZXNzbWVudE1ha2VyQ29udHJvbGxlci5jcmVhdGVBc3Nlc3NtZW50SW5zdGFuY2UsIHBheWxvYWQpO1xyXG4gIH1cclxufVxyXG4iXX0=