@deeksha2309/sunbird-collection-editor 8.0.7 → 8.0.8
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/deeksha2309-sunbird-collection-editor.d.ts.map +1 -0
- package/esm2022/deeksha2309-sunbird-collection-editor.mjs +5 -0
- package/esm2022/lib/collection-editor-library.module.mjs +30 -6
- package/esm2022/lib/components/answer/answer.component.mjs +6 -3
- package/esm2022/lib/components/app-loader/app-loader.component.mjs +30 -0
- package/esm2022/lib/components/asset-browser/asset-browser.component.mjs +30 -12
- package/esm2022/lib/components/assign-page-number/assign-page-number.component.mjs +1 -1
- package/esm2022/lib/components/bulk-upload/bulk-upload.component.mjs +447 -0
- package/esm2022/lib/components/ckeditor-tool/ckeditor-tool.component.mjs +30 -12
- package/esm2022/lib/components/collection-icon/collection-icon.component.mjs +3 -3
- package/esm2022/lib/components/csv-upload/csv-upload.component.mjs +2 -2
- package/esm2022/lib/components/editor/editor.component.mjs +143 -64
- package/esm2022/lib/components/fancy-tree/fancy-tree.component.mjs +91 -9
- package/esm2022/lib/components/header/header.component.mjs +27 -9
- package/esm2022/lib/components/library/library.component.mjs +4 -4
- package/esm2022/lib/components/library-list/library-list.component.mjs +4 -4
- package/esm2022/lib/components/library-player/library-player.component.mjs +4 -4
- package/esm2022/lib/components/meta-form/meta-form.component.mjs +10 -18
- package/esm2022/lib/components/options/options.component.mjs +40 -27
- package/esm2022/lib/components/progress-status/progress-status.component.mjs +1 -1
- package/esm2022/lib/components/publish-checklist/publish-checklist.component.mjs +6 -3
- package/esm2022/lib/components/question/question.component.mjs +185 -77
- package/esm2022/lib/components/question-option-sub-menu/question-option-sub-menu.component.mjs +36 -0
- package/esm2022/lib/components/quml-player/quml-player.component.mjs +2 -2
- package/esm2022/lib/components/qumlplayer-page/qumlplayer-page.component.mjs +3 -3
- package/esm2022/lib/components/relational-metadata/relational-metadata.component.mjs +80 -0
- package/esm2022/lib/components/resource-reorder/resource-reorder.component.mjs +3 -3
- package/esm2022/lib/components/slider/slider.component.mjs +46 -0
- package/esm2022/lib/components/template/template.component.mjs +3 -3
- package/esm2022/lib/components/translations/translations.component.mjs +132 -0
- package/esm2022/lib/directives/date-format/date-format.pipe.mjs +34 -0
- package/esm2022/lib/interfaces/CreationContext.mjs +2 -0
- package/esm2022/lib/interfaces/editor.mjs +1 -1
- package/esm2022/lib/interfaces/loader.mjs +2 -0
- package/esm2022/lib/pipes/interpolate.pipe.mjs +17 -0
- package/esm2022/lib/pipes/sanitize-html.pipe.mjs +6 -8
- package/esm2022/lib/services/bulk-job/bulk-job.service.mjs +67 -0
- package/esm2022/lib/services/config/category.config.json +1 -0
- package/esm2022/lib/services/config/editor.config.json +29 -2
- package/esm2022/lib/services/config/label.config.json +16 -3
- package/esm2022/lib/services/config/player.config.json +3 -0
- package/esm2022/lib/services/config/url.config.json +17 -1
- package/esm2022/lib/services/editor/editor.service.mjs +64 -26
- package/esm2022/lib/services/question/question.service.mjs +27 -35
- package/esm2022/lib/services/tree/tree.service.mjs +20 -5
- package/fesm2022/{project-sunbird-sunbird-collection-editor.mjs → deeksha2309-sunbird-collection-editor.mjs} +1779 -483
- package/fesm2022/deeksha2309-sunbird-collection-editor.mjs.map +1 -0
- package/index.d.ts +2 -2
- package/lib/collection-editor-library.module.d.ts +51 -43
- package/lib/collection-editor-library.module.d.ts.map +1 -1
- package/lib/components/answer/answer.component.d.ts +2 -1
- package/lib/components/answer/answer.component.d.ts.map +1 -1
- package/lib/components/app-loader/app-loader.component.d.ts +18 -0
- package/lib/components/app-loader/app-loader.component.d.ts.map +1 -0
- package/lib/components/asset-browser/asset-browser.component.d.ts.map +1 -1
- package/lib/components/bulk-upload/bulk-upload.component.d.ts +71 -0
- package/lib/components/bulk-upload/bulk-upload.component.d.ts.map +1 -0
- package/lib/components/ckeditor-tool/ckeditor-tool.component.d.ts +1 -1
- package/lib/components/ckeditor-tool/ckeditor-tool.component.d.ts.map +1 -1
- package/lib/components/editor/editor.component.d.ts +11 -7
- package/lib/components/editor/editor.component.d.ts.map +1 -1
- package/lib/components/fancy-tree/fancy-tree.component.d.ts +11 -3
- package/lib/components/fancy-tree/fancy-tree.component.d.ts.map +1 -1
- package/lib/components/header/header.component.d.ts +6 -2
- package/lib/components/header/header.component.d.ts.map +1 -1
- package/lib/components/library/library.component.d.ts +1 -1
- package/lib/components/library/library.component.d.ts.map +1 -1
- package/lib/components/meta-form/meta-form.component.d.ts +3 -4
- package/lib/components/meta-form/meta-form.component.d.ts.map +1 -1
- package/lib/components/options/options.component.d.ts +15 -7
- package/lib/components/options/options.component.d.ts.map +1 -1
- package/lib/components/publish-checklist/publish-checklist.component.d.ts +2 -1
- package/lib/components/publish-checklist/publish-checklist.component.d.ts.map +1 -1
- package/lib/components/question/question.component.d.ts +21 -28
- package/lib/components/question/question.component.d.ts.map +1 -1
- package/lib/components/question-option-sub-menu/question-option-sub-menu.component.d.ts +27 -0
- package/lib/components/question-option-sub-menu/question-option-sub-menu.component.d.ts.map +1 -0
- package/lib/components/relational-metadata/relational-metadata.component.d.ts +25 -0
- package/lib/components/relational-metadata/relational-metadata.component.d.ts.map +1 -0
- package/lib/components/slider/slider.component.d.ts +25 -0
- package/lib/components/slider/slider.component.d.ts.map +1 -0
- package/lib/components/translations/translations.component.d.ts +70 -0
- package/lib/components/translations/translations.component.d.ts.map +1 -0
- package/lib/directives/date-format/date-format.pipe.d.ts +20 -0
- package/lib/directives/date-format/date-format.pipe.d.ts.map +1 -0
- package/lib/interfaces/CreationContext.d.ts +11 -0
- package/lib/interfaces/CreationContext.d.ts.map +1 -0
- package/lib/interfaces/editor.d.ts +10 -5
- package/lib/interfaces/editor.d.ts.map +1 -1
- package/lib/interfaces/loader.d.ts +11 -0
- package/lib/interfaces/loader.d.ts.map +1 -0
- package/lib/pipes/interpolate.pipe.d.ts +8 -0
- package/lib/pipes/interpolate.pipe.d.ts.map +1 -0
- package/lib/pipes/sanitize-html.pipe.d.ts +4 -4
- package/lib/pipes/sanitize-html.pipe.d.ts.map +1 -1
- package/lib/services/bulk-job/bulk-job.service.d.ts +17 -0
- package/lib/services/bulk-job/bulk-job.service.d.ts.map +1 -0
- package/lib/services/editor/editor.service.d.ts +7 -4
- package/lib/services/editor/editor.service.d.ts.map +1 -1
- package/lib/services/question/question.service.d.ts +2 -2
- package/lib/services/question/question.service.d.ts.map +1 -1
- package/lib/services/tree/tree.service.d.ts +3 -1
- package/lib/services/tree/tree.service.d.ts.map +1 -1
- package/package.json +5 -5
- package/esm2022/project-sunbird-sunbird-collection-editor.mjs +0 -5
- package/fesm2022/project-sunbird-sunbird-collection-editor.mjs.map +0 -1
- package/project-sunbird-sunbird-collection-editor.d.ts.map +0 -1
package/esm2022/lib/components/question-option-sub-menu/question-option-sub-menu.component.mjs
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as i0 from "@angular/core";
|
|
3
|
+
import * as i1 from "../../services/editor/editor.service";
|
|
4
|
+
import * as i2 from "@angular/common";
|
|
5
|
+
export class SubMenuEvent {
|
|
6
|
+
}
|
|
7
|
+
export class QuestionOptionSubMenuComponent {
|
|
8
|
+
constructor(editorService) {
|
|
9
|
+
this.editorService = editorService;
|
|
10
|
+
this.onChange = new EventEmitter();
|
|
11
|
+
}
|
|
12
|
+
onMenuClick(index) {
|
|
13
|
+
const selectedMenu = this.subMenus[index];
|
|
14
|
+
selectedMenu.enabled = !selectedMenu.enabled;
|
|
15
|
+
if (selectedMenu.enabled && selectedMenu.type !== 'input' && Array.isArray(selectedMenu.value)) {
|
|
16
|
+
this.onChange.emit({ index, value: undefined });
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
onValueChange(event, index) {
|
|
20
|
+
if (this.subMenus[index].type === 'input') {
|
|
21
|
+
this.subMenus[index].value = event.target.value;
|
|
22
|
+
}
|
|
23
|
+
this.onChange.emit({ index, value: event.target.value });
|
|
24
|
+
}
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QuestionOptionSubMenuComponent, deps: [{ token: i1.EditorService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: QuestionOptionSubMenuComponent, selector: "lib-question-option-sub-menu", inputs: { subMenus: "subMenus" }, outputs: { onChange: "onChange" }, ngImport: i0, template: "<div class=\"d-flex\" *ngIf=\"editorService.editorMode === 'edit'\">\n <div class=\"mr-30 my-10\" *ngFor=\"let menu of subMenus; let i = index\">\n <div *ngIf=\"menu?.show\" (click)=\"onMenuClick(i)\">\n <button class=\"sb-btn sb-btn-outline-primary sb-btn-xs sb-left-icon-btn text-inherit b-0 bg-none no-hover pl-0\">\n <i class=\"plus circle icon fs-1-286 pull-left mr-0\"></i><span class=\"sb-line-height-24\">{{ menu?.name }}</span>\n </button>\n </div>\n </div>\n</div>\n<div>\n <div\n *ngFor=\"let menu of subMenus; let index = index\"\n [ngClass]=\"{ 'd-none': !(menu?.enabled && menu?.type === 'input') }\"\n >\n <label for=\"\">{{ menu?.label }}</label>\n <div class=\"d-flex sb-w-85\">\n <input\n (change)=\"onValueChange($event, index)\"\n class=\"sb-textbox false w-100 my-10\"\n [placeholder]=\"menu.value || menu.name\"\n type=\"text\" \n [disabled]=\"(editorService.editorMode !== 'edit') ? true : false\"\n />\n <button *ngIf=\"editorService.editorMode === 'edit'\"\n class=\"b-0 bg-none no-hover sb-btn sb-btn-dashed-gray\"\n (click)=\"menu.enabled = !menu.enabled; menu.value = ''\"\n >\n <i class=\"icon close\"></i>\n </button>\n </div>\n </div>\n</div>\n", styles: ["label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
|
|
27
|
+
}
|
|
28
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QuestionOptionSubMenuComponent, decorators: [{
|
|
29
|
+
type: Component,
|
|
30
|
+
args: [{ selector: 'lib-question-option-sub-menu', template: "<div class=\"d-flex\" *ngIf=\"editorService.editorMode === 'edit'\">\n <div class=\"mr-30 my-10\" *ngFor=\"let menu of subMenus; let i = index\">\n <div *ngIf=\"menu?.show\" (click)=\"onMenuClick(i)\">\n <button class=\"sb-btn sb-btn-outline-primary sb-btn-xs sb-left-icon-btn text-inherit b-0 bg-none no-hover pl-0\">\n <i class=\"plus circle icon fs-1-286 pull-left mr-0\"></i><span class=\"sb-line-height-24\">{{ menu?.name }}</span>\n </button>\n </div>\n </div>\n</div>\n<div>\n <div\n *ngFor=\"let menu of subMenus; let index = index\"\n [ngClass]=\"{ 'd-none': !(menu?.enabled && menu?.type === 'input') }\"\n >\n <label for=\"\">{{ menu?.label }}</label>\n <div class=\"d-flex sb-w-85\">\n <input\n (change)=\"onValueChange($event, index)\"\n class=\"sb-textbox false w-100 my-10\"\n [placeholder]=\"menu.value || menu.name\"\n type=\"text\" \n [disabled]=\"(editorService.editorMode !== 'edit') ? true : false\"\n />\n <button *ngIf=\"editorService.editorMode === 'edit'\"\n class=\"b-0 bg-none no-hover sb-btn sb-btn-dashed-gray\"\n (click)=\"menu.enabled = !menu.enabled; menu.value = ''\"\n >\n <i class=\"icon close\"></i>\n </button>\n </div>\n </div>\n</div>\n", styles: ["label{font-size:12px!important;margin-bottom:.5rem!important;color:#121213e0;font-weight:600}\n"] }]
|
|
31
|
+
}], ctorParameters: function () { return [{ type: i1.EditorService }]; }, propDecorators: { subMenus: [{
|
|
32
|
+
type: Input
|
|
33
|
+
}], onChange: [{
|
|
34
|
+
type: Output
|
|
35
|
+
}] } });
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tb3B0aW9uLXN1Yi1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbGxlY3Rpb24tZWRpdG9yLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL3F1ZXN0aW9uLW9wdGlvbi1zdWItbWVudS9xdWVzdGlvbi1vcHRpb24tc3ViLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcXVlc3Rpb24tb3B0aW9uLXN1Yi1tZW51L3F1ZXN0aW9uLW9wdGlvbi1zdWItbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7O0FBR3ZFLE1BQU0sT0FBTyxZQUFZO0NBR3hCO0FBZUQsTUFBTSxPQUFPLDhCQUE4QjtJQUl6QyxZQUFtQixhQUE0QjtRQUE1QixrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUY5QixhQUFRLEdBQStCLElBQUksWUFBWSxFQUFnQixDQUFDO0lBSXpGLENBQUM7SUFFRCxXQUFXLENBQUMsS0FBSztRQUNmLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsWUFBWSxDQUFDLE9BQU8sR0FBRyxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUM7UUFDN0MsSUFBSSxZQUFZLENBQUMsT0FBTyxJQUFJLFlBQVksQ0FBQyxJQUFJLEtBQUssT0FBTyxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQzlGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUMsQ0FBQyxDQUFDO1NBQy9DO0lBQ0gsQ0FBQztJQUVELGFBQWEsQ0FBQyxLQUFLLEVBQUUsS0FBSztRQUN4QixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxLQUFLLE9BQU8sRUFBRTtZQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO1NBQUU7UUFDL0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFDLENBQUMsQ0FBQztJQUMxRCxDQUFDOytHQW5CVSw4QkFBOEI7bUdBQTlCLDhCQUE4Qix5SUNyQjNDLHF4Q0FnQ0E7OzRGRFhhLDhCQUE4QjtrQkFMMUMsU0FBUzsrQkFDRSw4QkFBOEI7b0dBSy9CLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ1csUUFBUTtzQkFBeEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWRpdG9yL2VkaXRvci5zZXJ2aWNlJztcblxuZXhwb3J0IGNsYXNzIFN1Yk1lbnVFdmVudCB7XG4gIGluZGV4OiBudW1iZXI7XG4gIHZhbHVlOiBhbnk7XG59XG5leHBvcnQgaW50ZXJmYWNlIFN1Yk1lbnUge1xuICBpZDogc3RyaW5nO1xuICBuYW1lOiBzdHJpbmc7XG4gIGxhYmVsOiBzdHJpbmc7XG4gIHZhbHVlOiBzdHJpbmd8YW55W107XG4gIGVuYWJsZWQ6IGJvb2xlYW47XG4gIHR5cGU6IHN0cmluZztcbiAgc2hvdzogYm9vbGVhbjtcbn1cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1xdWVzdGlvbi1vcHRpb24tc3ViLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vcXVlc3Rpb24tb3B0aW9uLXN1Yi1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcXVlc3Rpb24tb3B0aW9uLXN1Yi1tZW51LmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25PcHRpb25TdWJNZW51Q29tcG9uZW50IHtcbiAgQElucHV0KCkgc3ViTWVudXM6IFN1Yk1lbnVbXTtcbiAgQE91dHB1dCgpIHB1YmxpYyBvbkNoYW5nZTogRXZlbnRFbWl0dGVyPFN1Yk1lbnVFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPFN1Yk1lbnVFdmVudD4oKTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSl7XG5cbiAgfVxuIFxuICBvbk1lbnVDbGljayhpbmRleCkge1xuICAgIGNvbnN0IHNlbGVjdGVkTWVudSA9IHRoaXMuc3ViTWVudXNbaW5kZXhdO1xuICAgIHNlbGVjdGVkTWVudS5lbmFibGVkID0gIXNlbGVjdGVkTWVudS5lbmFibGVkO1xuICAgIGlmIChzZWxlY3RlZE1lbnUuZW5hYmxlZCAmJiBzZWxlY3RlZE1lbnUudHlwZSAhPT0gJ2lucHV0JyAmJiBBcnJheS5pc0FycmF5KHNlbGVjdGVkTWVudS52YWx1ZSkpIHtcbiAgICAgIHRoaXMub25DaGFuZ2UuZW1pdCh7aW5kZXgsIHZhbHVlOiB1bmRlZmluZWR9KTtcbiAgICB9XG4gIH1cblxuICBvblZhbHVlQ2hhbmdlKGV2ZW50LCBpbmRleCkge1xuICAgIGlmICh0aGlzLnN1Yk1lbnVzW2luZGV4XS50eXBlID09PSAnaW5wdXQnKSB7IHRoaXMuc3ViTWVudXNbaW5kZXhdLnZhbHVlID0gZXZlbnQudGFyZ2V0LnZhbHVlOyB9XG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KHsgaW5kZXgsIHZhbHVlOiBldmVudC50YXJnZXQudmFsdWV9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImQtZmxleFwiICpuZ0lmPVwiZWRpdG9yU2VydmljZS5lZGl0b3JNb2RlID09PSAnZWRpdCdcIj5cbiAgPGRpdiBjbGFzcz1cIm1yLTMwIG15LTEwXCIgKm5nRm9yPVwibGV0IG1lbnUgb2Ygc3ViTWVudXM7IGxldCBpID0gaW5kZXhcIj5cbiAgICA8ZGl2ICpuZ0lmPVwibWVudT8uc2hvd1wiIChjbGljayk9XCJvbk1lbnVDbGljayhpKVwiPlxuICAgICAgPGJ1dHRvbiBjbGFzcz1cInNiLWJ0biBzYi1idG4tb3V0bGluZS1wcmltYXJ5IHNiLWJ0bi14cyBzYi1sZWZ0LWljb24tYnRuIHRleHQtaW5oZXJpdCBiLTAgYmctbm9uZSBuby1ob3ZlciBwbC0wXCI+XG4gICAgICAgIDxpIGNsYXNzPVwicGx1cyBjaXJjbGUgaWNvbiBmcy0xLTI4NiBwdWxsLWxlZnQgbXItMFwiPjwvaT48c3BhbiBjbGFzcz1cInNiLWxpbmUtaGVpZ2h0LTI0XCI+e3sgbWVudT8ubmFtZSB9fTwvc3Bhbj5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuPGRpdj5cbiAgPGRpdlxuICAgICpuZ0Zvcj1cImxldCBtZW51IG9mIHN1Yk1lbnVzOyBsZXQgaW5kZXggPSBpbmRleFwiXG4gICAgW25nQ2xhc3NdPVwieyAnZC1ub25lJzogIShtZW51Py5lbmFibGVkICYmIG1lbnU/LnR5cGUgPT09ICdpbnB1dCcpIH1cIlxuICA+XG4gICAgPGxhYmVsIGZvcj1cIlwiPnt7IG1lbnU/LmxhYmVsIH19PC9sYWJlbD5cbiAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IHNiLXctODVcIj5cbiAgICAgIDxpbnB1dFxuICAgICAgICAoY2hhbmdlKT1cIm9uVmFsdWVDaGFuZ2UoJGV2ZW50LCBpbmRleClcIlxuICAgICAgICBjbGFzcz1cInNiLXRleHRib3ggZmFsc2Ugdy0xMDAgbXktMTBcIlxuICAgICAgICBbcGxhY2Vob2xkZXJdPVwibWVudS52YWx1ZSB8fCBtZW51Lm5hbWVcIlxuICAgICAgICB0eXBlPVwidGV4dFwiIFxuICAgICAgICBbZGlzYWJsZWRdPVwiKGVkaXRvclNlcnZpY2UuZWRpdG9yTW9kZSAhPT0gJ2VkaXQnKSA/IHRydWUgOiBmYWxzZVwiXG4gICAgICAvPlxuICAgICAgPGJ1dHRvbiAqbmdJZj1cImVkaXRvclNlcnZpY2UuZWRpdG9yTW9kZSA9PT0gJ2VkaXQnXCJcbiAgICAgICAgY2xhc3M9XCJiLTAgYmctbm9uZSBuby1ob3ZlciBzYi1idG4gc2ItYnRuLWRhc2hlZC1ncmF5XCJcbiAgICAgICAgKGNsaWNrKT1cIm1lbnUuZW5hYmxlZCA9ICFtZW51LmVuYWJsZWQ7IG1lbnUudmFsdWUgPSAnJ1wiXG4gICAgICA+XG4gICAgICAgIDxpIGNsYXNzPVwiaWNvbiBjbG9zZVwiPjwvaT5cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
|
|
@@ -35,7 +35,7 @@ export class QumlPlayerComponent {
|
|
|
35
35
|
let childNodes = this.qumlPlayerConfig.metadata.childNodes;
|
|
36
36
|
childNodes = _.filter(childNodes, (identifier) => !_.endsWith(identifier, '.img'));
|
|
37
37
|
this.qumlPlayerConfig.metadata.childNodes = childNodes;
|
|
38
|
-
const allQuestions = this.editorService.getContentChildrens();
|
|
38
|
+
const allQuestions = _.get(this.qumlPlayerConfig, 'config.objectType') === 'Question' ? [] : this.editorService.getContentChildrens();
|
|
39
39
|
this.qumlPlayerConfig.metadata.maxQuestions = this.qumlPlayerConfig.metadata.maxQuestions || allQuestions.length;
|
|
40
40
|
if (this.isSingleQuestionPreview) {
|
|
41
41
|
this.qumlPlayerConfig.context.threshold = 1;
|
|
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
70
70
|
}], toolbarEmitter: [{
|
|
71
71
|
type: Output
|
|
72
72
|
}] } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVtbC1wbGF5ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcXVtbC1wbGF5ZXIvcXVtbC1wbGF5ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcXVtbC1wbGF5ZXIvcXVtbC1wbGF5ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFXLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUNsRyxPQUFPLEtBQUssQ0FBQyxNQUFNLFdBQVcsQ0FBQzs7Ozs7OztBQVUvQixNQUFNLE9BQU8sbUJBQW1CO0lBTzlCLFlBQW9CLGFBQTRCLEVBQVUsYUFBNEIsRUFDN0UsYUFBNEI7UUFEakIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBVSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUM3RSxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUw1Qiw0QkFBdUIsR0FBRyxLQUFLLENBQUM7UUFDekMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsbUJBQWMsR0FBRyxLQUFLLENBQUM7UUFDTixtQkFBYyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO0lBRTlCLENBQUM7SUFFM0MsUUFBUTtRQUNOLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztRQUNsQixJQUFHLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsY0FBYyxDQUFDLEVBQUM7WUFDMUUsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUE7U0FDM0I7SUFDSCxD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U0FBUzsrQkFDRSxpQkFBaUIsaUJBR1osaUJBQWlCLENBQUMsSUFBSTs0SkFJNUIsb0JBQW9CO3NCQUE1QixLQUFLO2dCQUNHLHVCQUF1QjtzQkFBL0IsS0FBSztnQkFHVyxjQUFjO3NCQUE5QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQgLCBPdXRwdXQsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCAqIGFzIF8gZnJvbSAnbG9kYXNoLWVzJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgUGxheWVyU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3BsYXllci9wbGF5ZXIuc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWRpdG9yL2VkaXRvci5zZXJ2aWNlJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi1xdW1sLXBsYXllcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9xdW1sLXBsYXllci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3F1bWwtcGxheWVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFF1bWxQbGF5ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBxdW1sUGxheWVyQ29uZmlnOiBhbnk7XG4gIEBJbnB1dCgpIHF1ZXN0aW9uU2V0SGllcmFyY2h5OiBhbnk7XG4gIEBJbnB1dCgpIGlzU2luZ2xlUXVlc3Rpb25QcmV2aWV3ID0gZmFsc2U7XG4gIHNob3dQcmV2aWV3ID0gZmFsc2U7XG4gIHNob3dWaWV3QnV0dG9uID0gZmFsc2U7XG4gIEBPdXRwdXQoKSBwdWJsaWMgdG9vbGJhckVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsIHByaXZhdGUgcGxheWVyU2VydmljZTogUGxheWVyU2VydmljZSxcbiAgICBwdWJsaWMgZWRpdG9yU2VydmljZTogRWRpdG9yU2VydmljZSApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdGlhbGl6ZSgpO1xuICAgIGlmKCFfLmlzVW5kZWZpbmVkKHRoaXMuZWRpdG9yU2VydmljZT8uZWRpdG9yQ29uZmlnPy5jb25maWc/LnJlbmRlclRheG9ub215KSl7XG4gICAgICB0aGlzLnNob3dWaWV3QnV0dG9uID0gdHJ1ZVxuICAgIH1cbiAgfVxuXG4gIGluaXRpYWxpemUoKSB7XG4gICAgdGhpcy5zZXRRdW1sUGxheWVyRGF0YSgpO1xuICAgIHRoaXMuc2hvd1ByZXZpZXcgPSB0cnVlO1xuICB9XG5cbiAgc2V0UXVtbFBsYXllckRhdGEoKSB7XG4gICAgY29uc3QgcGxheWVyQ29uZmlnID0gXy5jbG9uZURlZXAodGhpcy5wbGF5ZXJTZXJ2aWNlLmdldFF1bWxQbGF5ZXJDb25maWcoKSk7XG4gICAgdGhpcy5xdW1sUGxheWVyQ29uZmlnID0gcGxheWVyQ29uZmlnO1xuICAgIHRoaXMucXVtbFBsYXllckNvbmZpZy5jb250ZXh0LnRocmVzaG9sZCA9IF8uZ2V0KHRoaXMuY29uZmlnU2VydmljZSwgJ3BsYXllckNvbmZpZy50aHJlc2hvbGQnKTtcbiAgICB0aGlzLnF1bWxQbGF5ZXJDb25maWcubWV0YWRhdGEgPSBfLmNsb25lRGVlcCh0aGlzLnF1ZXN0aW9uU2V0SGllcmFyY2h5KTtcbiAgICBpZiAodGhpcy5xdW1sUGxheWVyQ29uZmlnLm1ldGFkYXRhKSB7XG4gICAgICBsZXQgY2hpbGROb2RlcyA9IHRoaXMucXVtbFBsYXllckNvbmZpZy5tZXRhZGF0YS5jaGlsZE5vZGVzO1xuICAgICAgY2hpbGROb2RlcyA9IF8uZmlsdGVyKGNoaWxkTm9kZXMsIChpZGVudGlmaWVyKSA9PiAhXy5lbmRzV2l0aChpZGVudGlmaWVyLCAnLmltZycpKTtcbiAgICAgIHRoaXMucXVtbFBsYXllckNvbmZpZy5tZXRhZGF0YS5jaGlsZE5vZGVzID0gY2hpbGROb2RlcztcbiAgICAgIGNvbnN0IGFsbFF1ZXN0aW9ucyA9IF8uZ2V0KHRoaXMucXVtbFBsYXllckNvbmZpZywgJ2NvbmZpZy5vYmplY3RUeXBlJykgPT09ICdRdWVzdGlvbicgPyBbXSA6IHRoaXMuZWRpdG9yU2VydmljZS5nZXRDb250ZW50Q2hpbGRyZW5zKCk7XG4gICAgICB0aGlzLnF1bWxQbGF5ZXJDb25maWcubWV0YWRhdGEubWF4UXVlc3Rpb25zID0gdGhpcy5xdW1sUGxheWVyQ29uZmlnLm1ldGFkYXRhLm1heFF1ZXN0aW9ucyB8fCBhbGxRdWVzdGlvbnMubGVuZ3RoO1xuICAgICAgaWYgKHRoaXMuaXNTaW5nbGVRdWVzdGlvblByZXZpZXcpIHtcbiAgICAgICAgdGhpcy5xdW1sUGxheWVyQ29uZmlnLmNvbnRleHQudGhyZXNob2xkID0gMTtcbiAgICAgICAgdGhpcy5xdW1sUGxheWVyQ29uZmlnLm1ldGFkYXRhLm1heFF1ZXN0aW9ucyA9IDE7XG4gICAgICAgIHRoaXMucXVtbFBsYXllckNvbmZpZy5tZXRhZGF0YS5zaG93U3RhcnRQYWdlID0gJ05vJztcbiAgICAgICAgdGhpcy5xdW1sUGxheWVyQ29uZmlnLm1ldGFkYXRhLnNob3dUaW1lciA9ICdObyc7XG4gICAgICAgIHRoaXMucXVtbFBsYXllckNvbmZpZy5tZXRhZGF0YS5yZXF1aXJlc1N1Ym1pdCA9ICdObyc7XG4gICAgICAgIHRoaXMucXVtbFBsYXllckNvbmZpZy5jb25maWcuc2hvd0xlZ2VuZCA9IGZhbHNlO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zb2xlLmxvZygncXVtbFBsYXllckNvbmZpZzo6ICcsIHRoaXMucXVtbFBsYXllckNvbmZpZyk7XG4gIH1cblxuICBnZXRQbGF5ZXJFdmVudHMoZXZlbnQpIHtcbiAgICBjb25zb2xlLmxvZygnZ2V0IHBsYXllciBldmVudHMnLCBKU09OLnN0cmluZ2lmeShldmVudCkpO1xuICB9XG5cbiAgZ2V0VGVsZW1ldHJ5RXZlbnRzKGV2ZW50KSB7XG4gICAgY29uc29sZS5sb2coJ2V2ZW50IGlzIGZvciB0ZWxlbWV0cnknLCBKU09OLnN0cmluZ2lmeShldmVudCkpO1xuICB9XG5cbiAgcmV2aWV3UXVlc3Rpb24oKXtcbiAgICB0aGlzLnRvb2xiYXJFbWl0dGVyLmVtaXQoe30pO1xuICB9XG5cbn1cbiIsIiA8ZGl2IGNsYXNzPVwiYXNwZWN0cmF0aW9cIiBkYXRhLXJhdGlvPVwiMTY6OVwiPlxuICAgICA8ZGl2IGNsYXNzPVwiY29udGVudC1wbGF5ZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInctMTAwIGgtMTAwXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRlbnRWaWV3ZXJJZnJhbWVTaGFkb3dcIiAqbmdJZj1cIiFzaG93Vmlld0J1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgICA8cXVtbC1tYWluLXBsYXllciAqbmdJZj1cInNob3dQcmV2aWV3XCIgW3BsYXllckNvbmZpZ109XCJxdW1sUGxheWVyQ29uZmlnXCIgKHBsYXllckV2ZW50KT1cImdldFBsYXllckV2ZW50cygkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICh0ZWxlbWV0cnlFdmVudCk9XCJnZXRUZWxlbWV0cnlFdmVudHMoJGV2ZW50KVwiPjwvcXVtbC1tYWluLXBsYXllcj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibXQtMjVcIiAqbmdJZj1cIihlZGl0b3JTZXJ2aWNlPy5lZGl0b3JNb2RlICE9PSAnZWRpdCcgJiYgc2hvd1ZpZXdCdXR0b24pXCI+XG4gICAgICAgICAgICAgICAgICAgIDxoNT5DbGljayBvbiBWaWV3IGRldGFpbHMgdG8gdmlldyB0aGUgcXVlc3Rpb24gZGV0YWlscy48L2g1PlxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwidWkgIGJ0bi1hbGlnblwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInVpIHR3ZWx2ZSBjb2x1bW4gZ3JpZCBtLTBcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmluZSB3aWRlIGNvbHVtbiBwLTAgdGV4dC1sZWZ0XCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIGNsYXNzPVwic2ItYnRuIHNiLWJ0bi1ub3JtYWwgc2ItYnRuLXByaW1hcnkgbXItMTVcIiAoY2xpY2spPVwicmV2aWV3UXVlc3Rpb24oKTtcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFZpZXcgRGV0YWlsczwvYnV0dG9uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuPC9kaXY+Il19
|
|
@@ -69,11 +69,11 @@ export class QumlplayerPageComponent {
|
|
|
69
69
|
this.toolbarEmitter.emit({ button: 'reviewContent' });
|
|
70
70
|
}
|
|
71
71
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QumlplayerPageComponent, deps: [{ token: i1.EditorTelemetryService }, { token: i2.ConfigService }, { token: i3.EditorService }, { token: i4.TreeService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
72
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: QumlplayerPageComponent, selector: "lib-qumlplayer-page", inputs: { questionMetaData: "questionMetaData", questionSetHierarchy: "questionSetHierarchy" }, outputs: { toolbarEmitter: "toolbarEmitter" }, usesOnChanges: true, ngImport: i0, template: "<div>\n <div [ngClass]=\"{'potrait-mode': showPotrait}\">\n <div class=\"b-1-100 br-2 mt-5\" *ngIf=\"showPlayerPreview\">\n <lib-quml-player [questionSetHierarchy]=\"hierarchy\" [isSingleQuestionPreview]=\"true\" (toolbarEmitter)=\"reviewQuestion()\"></lib-quml-player>\n </div>\n </div>\n<div class=\"ui mt-20\" *ngIf=\"(editorService.editorMode === 'edit')\">\n <div class=\"ui twelve column grid m-0\">\n <div class=\"nine wide column p-0 text-left\">\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-primary\" (click)=\"editQuestion();\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('edit','click','launch', telemetryService.telemetryPageId)\">\n <i class=\"icon edit\"></i>Edit</button>\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-outline-primary
|
|
72
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: QumlplayerPageComponent, selector: "lib-qumlplayer-page", inputs: { questionMetaData: "questionMetaData", questionSetHierarchy: "questionSetHierarchy" }, outputs: { toolbarEmitter: "toolbarEmitter" }, usesOnChanges: true, ngImport: i0, template: "<div>\n <div [ngClass]=\"{'potrait-mode': showPotrait}\">\n <div class=\"b-1-100 br-2 mt-5\" *ngIf=\"showPlayerPreview\">\n <lib-quml-player [questionSetHierarchy]=\"hierarchy\" [isSingleQuestionPreview]=\"true\" (toolbarEmitter)=\"reviewQuestion()\"></lib-quml-player>\n </div>\n </div>\n<div class=\"ui mt-20\" *ngIf=\"(editorService.editorMode === 'edit')\">\n <div class=\"ui twelve column grid m-0\">\n <div class=\"nine wide column p-0 text-left\">\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-primary mr-15\"*ngIf=\"(questionMetaData?.status != 'Live' &&\n questionMetaData?.status !='Approved')\" (click)=\"editQuestion();\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('edit','click','launch', telemetryService.telemetryPageId)\">\n <i class=\"icon edit\"></i>Edit</button>\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-outline-primary\"\n (click)=\"removeQuestion()\"><i class=\"icon trash sb-color-primary\" aria-hidden=\"true\" libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('delete','click','launch', telemetryService.telemetryPageId)\"></i>{{configService.labelConfig?.button_labels?.delete_btn_label}}</button>\n </div>\n <div class=\"three wide column p-0 text-right\">\n <span>\n <button type=\"button\" (click)=\"switchToLandscapeMode();\" class=\"btn-none\">\n <i class=\"tv icon sb-color-primary fs-1-143\" [ngClass]=\"{'opacity-icon': showPotrait}\"></i>\n </button>\n <span class=\"fs-1-16 font-weight-normal sb-color-gray-100\">|</span>\n <button type=\"button\" (click)=\"switchToPotraitMode();\" class=\"w-10 btn-none\">\n <i class=\"mobile alternate icon sb-color-primary fs-1-3\" [ngClass]=\"{'opacity-icon': !showPotrait}\"></i>\n </button>\n </span>\n </div>\n </div>\n</div>\n\n<hr class=\"my-20\">\n<div class=\"ui grid text-font\">\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.name}}</label>\n <div class=\"fs-0-92 text-capitalize break-word\">{{questionMetaData?.name}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.board}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.board}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.medium}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.medium}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.grade}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.gradeLevel}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.subject}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.subject}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.attributions}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.attributions}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.author}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.author}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.audience}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.audience}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.copyRight}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.copyright}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.licensedBy}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.license}}</div>\n </div>\n </div>\n <div class=\"four wide column\" *ngIf=\"questionMetaData?.qType === 'MCQ'\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.marks}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData.maxScore? questionMetaData.maxScore : 1}}</div>\n </div>\n </div>\n</div>", styles: [".btn-none{background:none!important;border:none!important;padding:0!important;cursor:pointer}.opacity-icon{opacity:.45!important}\n"], dependencies: [{ kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i6.TelemetryInteractDirective, selector: "[libTelemetryInteract]", inputs: ["telemetryInteractEdata"] }, { kind: "component", type: i7.QumlPlayerComponent, selector: "lib-quml-player", inputs: ["questionSetHierarchy", "isSingleQuestionPreview"], outputs: ["toolbarEmitter"] }], encapsulation: i0.ViewEncapsulation.None }); }
|
|
73
73
|
}
|
|
74
74
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: QumlplayerPageComponent, decorators: [{
|
|
75
75
|
type: Component,
|
|
76
|
-
args: [{ selector: 'lib-qumlplayer-page', encapsulation: ViewEncapsulation.None, template: "<div>\n <div [ngClass]=\"{'potrait-mode': showPotrait}\">\n <div class=\"b-1-100 br-2 mt-5\" *ngIf=\"showPlayerPreview\">\n <lib-quml-player [questionSetHierarchy]=\"hierarchy\" [isSingleQuestionPreview]=\"true\" (toolbarEmitter)=\"reviewQuestion()\"></lib-quml-player>\n </div>\n </div>\n<div class=\"ui mt-20\" *ngIf=\"(editorService.editorMode === 'edit')\">\n <div class=\"ui twelve column grid m-0\">\n <div class=\"nine wide column p-0 text-left\">\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-primary\" (click)=\"editQuestion();\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('edit','click','launch', telemetryService.telemetryPageId)\">\n <i class=\"icon edit\"></i>Edit</button>\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-outline-primary
|
|
76
|
+
args: [{ selector: 'lib-qumlplayer-page', encapsulation: ViewEncapsulation.None, template: "<div>\n <div [ngClass]=\"{'potrait-mode': showPotrait}\">\n <div class=\"b-1-100 br-2 mt-5\" *ngIf=\"showPlayerPreview\">\n <lib-quml-player [questionSetHierarchy]=\"hierarchy\" [isSingleQuestionPreview]=\"true\" (toolbarEmitter)=\"reviewQuestion()\"></lib-quml-player>\n </div>\n </div>\n<div class=\"ui mt-20\" *ngIf=\"(editorService.editorMode === 'edit')\">\n <div class=\"ui twelve column grid m-0\">\n <div class=\"nine wide column p-0 text-left\">\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-primary mr-15\"*ngIf=\"(questionMetaData?.status != 'Live' &&\n questionMetaData?.status !='Approved')\" (click)=\"editQuestion();\"\n libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('edit','click','launch', telemetryService.telemetryPageId)\">\n <i class=\"icon edit\"></i>Edit</button>\n <button type=\"button\" class=\"sb-btn sb-btn-normal sb-btn-outline-primary\"\n (click)=\"removeQuestion()\"><i class=\"icon trash sb-color-primary\" aria-hidden=\"true\" libTelemetryInteract\n [telemetryInteractEdata]=\"telemetryService.getTelemetryInteractEdata('delete','click','launch', telemetryService.telemetryPageId)\"></i>{{configService.labelConfig?.button_labels?.delete_btn_label}}</button>\n </div>\n <div class=\"three wide column p-0 text-right\">\n <span>\n <button type=\"button\" (click)=\"switchToLandscapeMode();\" class=\"btn-none\">\n <i class=\"tv icon sb-color-primary fs-1-143\" [ngClass]=\"{'opacity-icon': showPotrait}\"></i>\n </button>\n <span class=\"fs-1-16 font-weight-normal sb-color-gray-100\">|</span>\n <button type=\"button\" (click)=\"switchToPotraitMode();\" class=\"w-10 btn-none\">\n <i class=\"mobile alternate icon sb-color-primary fs-1-3\" [ngClass]=\"{'opacity-icon': !showPotrait}\"></i>\n </button>\n </span>\n </div>\n </div>\n</div>\n\n<hr class=\"my-20\">\n<div class=\"ui grid text-font\">\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.name}}</label>\n <div class=\"fs-0-92 text-capitalize break-word\">{{questionMetaData?.name}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.board}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.board}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.medium}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.medium}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.grade}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.gradeLevel}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.subject}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.subject}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.attributions}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.attributions}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.author}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.author}}</div>\n </div>\n </div>\n <div class=\"four wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.audience}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.audience}}</div>\n </div>\n </div>\n <div class=\"three wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.copyRight}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.copyright}}</div>\n </div>\n </div>\n <div class=\"five wide column\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.licensedBy}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData?.license}}</div>\n </div>\n </div>\n <div class=\"four wide column\" *ngIf=\"questionMetaData?.qType === 'MCQ'\">\n <div class=\"sb-field-group\">\n <label class=\"sb-color-gray-100\">{{configService.labelConfig?.lbl?.marks}}</label>\n <div class=\"fs-0-92 text-capitalize\">{{questionMetaData.maxScore? questionMetaData.maxScore : 1}}</div>\n </div>\n </div>\n</div>", styles: [".btn-none{background:none!important;border:none!important;padding:0!important;cursor:pointer}.opacity-icon{opacity:.45!important}\n"] }]
|
|
77
77
|
}], ctorParameters: function () { return [{ type: i1.EditorTelemetryService }, { type: i2.ConfigService }, { type: i3.EditorService }, { type: i4.TreeService }]; }, propDecorators: { questionMetaData: [{
|
|
78
78
|
type: Input
|
|
79
79
|
}], questionSetHierarchy: [{
|
|
@@ -81,4 +81,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
81
81
|
}], toolbarEmitter: [{
|
|
82
82
|
type: Output
|
|
83
83
|
}] } });
|
|
84
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVtbHBsYXllci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbGxlY3Rpb24tZWRpdG9yLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL3F1bWxwbGF5ZXItcGFnZS9xdW1scGxheWVyLXBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcXVtbHBsYXllci1wYWdlL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEtBQUssQ0FBQyxNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7O0FBVy9CLE1BQU0sT0FBTyx1QkFBdUI7SUFVbEMsWUFBbUIsZ0JBQXdDLEVBQVMsYUFBNEIsRUFBUyxhQUE0QixFQUNqSCxXQUF3QjtRQUR6QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO1FBQVMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNqSCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVAzQixtQkFBYyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXhFLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFHLEtBQUssQ0FBQztJQUk0QixDQUFDO0lBRWpELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsR0FB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bkMsU0FBUzsrQkFDRSxxQkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUk7K0xBSTVCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ1csY0FBYztzQkFBOUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgRWRpdG9yVGVsZW1ldHJ5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RlbGVtZXRyeS90ZWxlbWV0cnkuc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWRpdG9yL2VkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cmVlL3RyZWUuc2VydmljZSc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItcXVtbHBsYXllci1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFF1bWxwbGF5ZXJQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcXVtbFBsYXllckNvbmZpZzogYW55O1xuICBASW5wdXQoKSBxdWVzdGlvbk1ldGFEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHF1ZXN0aW9uU2V0SGllcmFyY2h5OiBhbnk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgdG9vbGJhckVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBwcmV2UXVlc3Rpb25JZDogc3RyaW5nO1xuICBzaG93UGxheWVyUHJldmlldyA9IGZhbHNlO1xuICBzaG93UG90cmFpdCA9IGZhbHNlO1xuICBoaWVyYXJjaHk6IGFueTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVsZW1ldHJ5U2VydmljZTogRWRpdG9yVGVsZW1ldHJ5U2VydmljZSwgcHVibGljIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsIHB1YmxpYyBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIHRyZWVTZXJ2aWNlOiBUcmVlU2VydmljZSkgeyB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5pbml0UXVtbFBsYXllcigpO1xuICB9XG5cbiAgaW5pdFF1bWxQbGF5ZXIoKSB7XG4gICAgdGhpcy5zaG93UGxheWVyUHJldmlldyA9IGZhbHNlO1xuICAgIHRoaXMucXVlc3Rpb25NZXRhRGF0YSA9IF8uZ2V0KHRoaXMucXVlc3Rpb25NZXRhRGF0YSwgJ2RhdGEubWV0YWRhdGEnKTtcbiAgICBjb25zdCBuZXdRdWVzdGlvbklkID0gXy5nZXQodGhpcy5xdWVzdGlvbk1ldGFEYXRhLCAnaWRlbnRpZmllcicpO1xuICAgIGlmIChuZXdRdWVzdGlvbklkICYmIHRoaXMucHJldlF1ZXN0aW9uSWQgIT09IG5ld1F1ZXN0aW9uSWQpIHtcbiAgICAgIHRoaXMuaGllcmFyY2h5ID0gXy5jbG9uZURlZXAodGhpcy5xdWVzdGlvblNldEhpZXJhcmNoeSk7XG4gICAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnRyZWVTZXJ2aWNlLmdldE5vZGVCeUlkKG5ld1F1ZXN0aW9uSWQpO1xuICAgICAgdGhpcy5oaWVyYXJjaHkuY2hpbGRyZW4gPSBfLmNhc3RBcnJheShfLmdldChzZWxlY3RlZE5vZGUsICdkYXRhLm1ldGFkYXRhJykpO1xuICAgICAgdGhpcy5oaWVyYXJjaHkuY2hpbGROb2RlcyA9IFtuZXdRdWVzdGlvbklkXTtcbiAgICAgIHRoaXMuaGllcmFyY2h5LnNodWZmbGUgPSBzZWxlY3RlZE5vZGUucGFyZW50LmRhdGEubWV0YWRhdGEuc2h1ZmZsZTtcbiAgICAgIGlmIChzZWxlY3RlZE5vZGUucGFyZW50LmRhdGEubWV0YWRhdGEuc2h1ZmZsZSA9PT0gdHJ1ZSkge1xuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tc3RyaW5nLWxpdGVyYWxcbiAgICAgICAgdGhpcy5oaWVyYXJjaHlbJ21heFNjb3JlJ10gPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMucXVlc3Rpb25NZXRhRGF0YS5xVHlwZSA9PT0gJ1NBJykge1xuICAgICAgICAgIHRoaXMuaGllcmFyY2h5ID0gXy5vbWl0KHRoaXMuaGllcmFyY2h5LCAnbWF4U2NvcmUnKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnF1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmUpIHtcbiAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tc3RyaW5nLWxpdGVyYWxcbiAgICAgICAgICB0aGlzLmhpZXJhcmNoeVsnbWF4U2NvcmUnXSA9IHRoaXMucXVlc3Rpb25NZXRhRGF0YS5tYXhTY29yZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy50cmVlU2VydmljZS5nZXRQYXJlbnQoKT8uZGF0YT8ubWV0YWRhdGE7XG4gICAgICB0aGlzLmhpZXJhcmNoeS5zaG93U29sdXRpb25zID0gcGFyZW50Py5zaG93U29sdXRpb25zIHx8IFwiTm9cIjtcbiAgICAgIHRoaXMuaGllcmFyY2h5LnNob3dGZWVkYmFjayA9IHBhcmVudD8uc2hvd0ZlZWRiYWNrIHx8IFwiTm9cIjtcbiAgICAgIHRoaXMucHJldlF1ZXN0aW9uSWQgPSBuZXdRdWVzdGlvbklkO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2hvd1BsYXllclByZXZpZXcgPSB0cnVlO1xuICAgICAgfSwgMCk7XG4gICAgfVxuICB9XG5cbiAgc3dpdGNoVG9Qb3RyYWl0TW9kZSgpIHtcbiAgICB0aGlzLnNob3dQb3RyYWl0ID0gdHJ1ZTtcbiAgfVxuICBzd2l0Y2hUb0xhbmRzY2FwZU1vZGUoKSB7XG4gICAgdGhpcy5zaG93UG90cmFpdCA9IGZhbHNlO1xuICB9XG5cbiAgcmVtb3ZlUXVlc3Rpb24oKSB7XG4gICAgdGhpcy50b29sYmFyRW1pdHRlci5lbWl0KHtidXR0b246ICdyZW1vdmVDb250ZW50J30pO1xuICB9XG5cbiAgZWRpdFF1ZXN0aW9uKCkge1xuICAgIHRoaXMudG9vbGJhckVtaXR0ZXIuZW1pdCh7YnV0dG9uIDogJ2VkaXRDb250ZW50J30pO1xuICB9XG5cbiAgcmV2aWV3UXVlc3Rpb24oKXtcbiAgICB0aGlzLnRvb2xiYXJFbWl0dGVyLmVtaXQoe2J1dHRvbiA6ICdyZXZpZXdDb250ZW50J30pO1xuICB9XG5cbn1cbiIsIjxkaXY+XG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J3BvdHJhaXQtbW9kZSc6IHNob3dQb3RyYWl0fVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYi0xLTEwMCBici0yIG10LTVcIiAqbmdJZj1cInNob3dQbGF5ZXJQcmV2aWV3XCI+XG4gICAgICAgICAgICA8bGliLXF1bWwtcGxheWVyIFtxdWVzdGlvblNldEhpZXJhcmNoeV09XCJoaWVyYXJjaHlcIiBbaXNTaW5nbGVRdWVzdGlvblByZXZpZXddPVwidHJ1ZVwiICh0b29sYmFyRW1pdHRlcik9XCJyZXZpZXdRdWVzdGlvbigpXCI+PC9saWItcXVtbC1wbGF5ZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPGRpdiBjbGFzcz1cInVpIG10LTIwXCIgKm5nSWY9XCIoZWRpdG9yU2VydmljZS5lZGl0b3JNb2RlID09PSAnZWRpdCcpXCI+XG4gICAgPGRpdiBjbGFzcz1cInVpIHR3ZWx2ZSBjb2x1bW4gZ3JpZCBtLTBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5pbmUgd2lkZSBjb2x1bW4gcC0wIHRleHQtbGVmdFwiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzYi1idG4gc2ItYnRuLW5vcm1hbCBzYi1idG4tcHJpbWFyeVwiIChjbGljayk9XCJlZGl0UXVlc3Rpb24oKTtcIlxuICAgICAgICAgICAgICAgIGxpYlRlbGVtZXRyeUludGVyYWN0XG4gICAgICAgICAgICAgICAgW3RlbGVtZXRyeUludGVyYWN0RWRhdGFdPVwidGVsZW1ldHJ5U2VydmljZS5nZXRUZWxlbWV0cnlJbnRlcmFjdEVkYXRhKCdlZGl0JywnY2xpY2snLCdsYXVuY2gnLCB0ZWxlbWV0cnlTZXJ2aWNlLnRlbGVtZXRyeVBhZ2VJZClcIj5cbiAgICAgICAgICAgICAgICA8aSBjbGFzcz1cImljb24gZWRpdFwiPjwvaT5FZGl0PC9idXR0b24+XG4gICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInNiLWJ0biBzYi1idG4tbm9ybWFsIHNiLWJ0bi1vdXRsaW5lLXByaW1hcnkgbXgtMTVcIlxuICAgICAgICAgICAgICAgIChjbGljayk9XCJyZW1vdmVRdWVzdGlvbigpXCI+PGkgY2xhc3M9XCJpY29uIHRyYXNoIHNiLWNvbG9yLXByaW1hcnlcIiBhcmlhLWhpZGRlbj1cInRydWVcIiBsaWJUZWxlbWV0cnlJbnRlcmFjdFxuICAgICAgICAgICAgICAgICAgICBbdGVsZW1ldHJ5SW50ZXJhY3RFZGF0YV09XCJ0ZWxlbWV0cnlTZXJ2aWNlLmdldFRlbGVtZXRyeUludGVyYWN0RWRhdGEoJ2RlbGV0ZScsJ2NsaWNrJywnbGF1bmNoJywgdGVsZW1ldHJ5U2VydmljZS50ZWxlbWV0cnlQYWdlSWQpXCI+PC9pPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8uYnV0dG9uX2xhYmVscz8uZGVsZXRlX2J0bl9sYWJlbH19PC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwidGhyZWUgd2lkZSBjb2x1bW4gcC0wIHRleHQtcmlnaHRcIj5cbiAgICAgICAgICAgIDxzcGFuPlxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzd2l0Y2hUb0xhbmRzY2FwZU1vZGUoKTtcIiBjbGFzcz1cImJ0bi1ub25lXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwidHYgaWNvbiBzYi1jb2xvci1wcmltYXJ5IGZzLTEtMTQzXCIgW25nQ2xhc3NdPVwieydvcGFjaXR5LWljb24nOiBzaG93UG90cmFpdH1cIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmcy0xLTE2IGZvbnQtd2VpZ2h0LW5vcm1hbCBzYi1jb2xvci1ncmF5LTEwMFwiPnw8L3NwYW4+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cInN3aXRjaFRvUG90cmFpdE1vZGUoKTtcIiBjbGFzcz1cInctMTAgYnRuLW5vbmVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJtb2JpbGUgYWx0ZXJuYXRlIGljb24gc2ItY29sb3ItcHJpbWFyeSBmcy0xLTNcIiBbbmdDbGFzc109XCJ7J29wYWNpdHktaWNvbic6ICFzaG93UG90cmFpdH1cIj48L2k+XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxociBjbGFzcz1cIm15LTIwXCI+XG48ZGl2IGNsYXNzPVwidWkgZ3JpZCB0ZXh0LWZvbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiZml2ZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/Lm5hbWV9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/Lm5hbWV9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZm91ciB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmJvYXJkfX08L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTAtOTIgdGV4dC1jYXBpdGFsaXplXCI+e3txdWVzdGlvbk1ldGFEYXRhPy5ib2FyZH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0aHJlZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/Lm1lZGl1bX19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8ubWVkaXVtfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpdmUgd2lkZSBjb2x1bW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiLWZpZWxkLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzYi1jb2xvci1ncmF5LTEwMFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5ncmFkZX19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uZ3JhZGVMZXZlbH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmb3VyIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uc3ViamVjdH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uc3ViamVjdH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0aHJlZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmF0dHJpYnV0aW9uc319PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uYXR0cmlidXRpb25zfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpdmUgd2lkZSBjb2x1bW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiLWZpZWxkLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzYi1jb2xvci1ncmF5LTEwMFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5hdXRob3J9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmF1dGhvcn19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmb3VyIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uYXVkaWVuY2V9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmF1ZGllbmNlfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRocmVlIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uY29weVJpZ2h0fX08L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTAtOTIgdGV4dC1jYXBpdGFsaXplXCI+e3txdWVzdGlvbk1ldGFEYXRhPy5jb3B5cmlnaHR9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZml2ZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmxpY2Vuc2VkQnl9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmxpY2Vuc2V9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZm91ciB3aWRlIGNvbHVtblwiICpuZ0lmPVwicXVlc3Rpb25NZXRhRGF0YT8ucVR5cGUgPT09ICdNQ1EnXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8ubWFya3N9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmU/IHF1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmUgOiAxfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
84
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVtbHBsYXllci1wYWdlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbGxlY3Rpb24tZWRpdG9yLWxpYnJhcnkvc3JjL2xpYi9jb21wb25lbnRzL3F1bWxwbGF5ZXItcGFnZS9xdW1scGxheWVyLXBhZ2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcXVtbHBsYXllci1wYWdlL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQXFCLE1BQU0sRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUM1RyxPQUFPLEtBQUssQ0FBQyxNQUFNLFdBQVcsQ0FBQzs7Ozs7Ozs7O0FBVy9CLE1BQU0sT0FBTyx1QkFBdUI7SUFVbEMsWUFBbUIsZ0JBQXdDLEVBQVMsYUFBNEIsRUFBUyxhQUE0QixFQUNqSCxXQUF3QjtRQUR6QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQXdCO1FBQVMsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFBUyxrQkFBYSxHQUFiLGFBQWEsQ0FBZTtRQUNqSCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQVAzQixtQkFBYyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXhFLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQUMxQixnQkFBVyxHQUFHLEtBQUssQ0FBQztJQUk0QixDQUFDO0lBRWpELFdBQVc7UUFDVCxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVELGNBQWM7UUFDWixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1FBQy9CLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxDQUFDLENBQUMsR0FB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bkMsU0FBUzsrQkFDRSxxQkFBcUIsaUJBR2hCLGlCQUFpQixDQUFDLElBQUk7K0xBSTVCLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ1csY0FBYztzQkFBOUIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgRWRpdG9yVGVsZW1ldHJ5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RlbGVtZXRyeS90ZWxlbWV0cnkuc2VydmljZSc7XG5pbXBvcnQgeyBFZGl0b3JTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvZWRpdG9yL2VkaXRvci5zZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy9jb25maWcvY29uZmlnLnNlcnZpY2UnO1xuaW1wb3J0IHsgVHJlZVNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90cmVlL3RyZWUuc2VydmljZSc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItcXVtbHBsYXllci1wYWdlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3F1bWxwbGF5ZXItcGFnZS5jb21wb25lbnQuc2NzcyddLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lXG59KVxuZXhwb3J0IGNsYXNzIFF1bWxwbGF5ZXJQYWdlQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzIHtcbiAgcXVtbFBsYXllckNvbmZpZzogYW55O1xuICBASW5wdXQoKSBxdWVzdGlvbk1ldGFEYXRhOiBhbnk7XG4gIEBJbnB1dCgpIHF1ZXN0aW9uU2V0SGllcmFyY2h5OiBhbnk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgdG9vbGJhckVtaXR0ZXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBwcmV2UXVlc3Rpb25JZDogc3RyaW5nO1xuICBzaG93UGxheWVyUHJldmlldyA9IGZhbHNlO1xuICBzaG93UG90cmFpdCA9IGZhbHNlO1xuICBoaWVyYXJjaHk6IGFueTtcblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVsZW1ldHJ5U2VydmljZTogRWRpdG9yVGVsZW1ldHJ5U2VydmljZSwgcHVibGljIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsIHB1YmxpYyBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlLFxuICAgICAgICAgICAgICBwcml2YXRlIHRyZWVTZXJ2aWNlOiBUcmVlU2VydmljZSkgeyB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgdGhpcy5pbml0UXVtbFBsYXllcigpO1xuICB9XG5cbiAgaW5pdFF1bWxQbGF5ZXIoKSB7XG4gICAgdGhpcy5zaG93UGxheWVyUHJldmlldyA9IGZhbHNlO1xuICAgIHRoaXMucXVlc3Rpb25NZXRhRGF0YSA9IF8uZ2V0KHRoaXMucXVlc3Rpb25NZXRhRGF0YSwgJ2RhdGEubWV0YWRhdGEnKTtcbiAgICBjb25zdCBuZXdRdWVzdGlvbklkID0gXy5nZXQodGhpcy5xdWVzdGlvbk1ldGFEYXRhLCAnaWRlbnRpZmllcicpO1xuICAgIGlmIChuZXdRdWVzdGlvbklkICYmIHRoaXMucHJldlF1ZXN0aW9uSWQgIT09IG5ld1F1ZXN0aW9uSWQpIHtcbiAgICAgIHRoaXMuaGllcmFyY2h5ID0gXy5jbG9uZURlZXAodGhpcy5xdWVzdGlvblNldEhpZXJhcmNoeSk7XG4gICAgICBjb25zdCBzZWxlY3RlZE5vZGUgPSB0aGlzLnRyZWVTZXJ2aWNlLmdldE5vZGVCeUlkKG5ld1F1ZXN0aW9uSWQpO1xuICAgICAgdGhpcy5oaWVyYXJjaHkuY2hpbGRyZW4gPSBfLmNhc3RBcnJheShfLmdldChzZWxlY3RlZE5vZGUsICdkYXRhLm1ldGFkYXRhJykpO1xuICAgICAgdGhpcy5oaWVyYXJjaHkuY2hpbGROb2RlcyA9IFtuZXdRdWVzdGlvbklkXTtcbiAgICAgIHRoaXMuaGllcmFyY2h5LnNodWZmbGUgPSBzZWxlY3RlZE5vZGUucGFyZW50LmRhdGEubWV0YWRhdGEuc2h1ZmZsZTtcbiAgICAgIGlmIChzZWxlY3RlZE5vZGUucGFyZW50LmRhdGEubWV0YWRhdGEuc2h1ZmZsZSA9PT0gdHJ1ZSkge1xuICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tc3RyaW5nLWxpdGVyYWxcbiAgICAgICAgdGhpcy5oaWVyYXJjaHlbJ21heFNjb3JlJ10gPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaWYgKHRoaXMucXVlc3Rpb25NZXRhRGF0YS5xVHlwZSA9PT0gJ1NBJykge1xuICAgICAgICAgIHRoaXMuaGllcmFyY2h5ID0gXy5vbWl0KHRoaXMuaGllcmFyY2h5LCAnbWF4U2NvcmUnKTtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLnF1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmUpIHtcbiAgICAgICAgICAvLyB0c2xpbnQ6ZGlzYWJsZS1uZXh0LWxpbmU6bm8tc3RyaW5nLWxpdGVyYWxcbiAgICAgICAgICB0aGlzLmhpZXJhcmNoeVsnbWF4U2NvcmUnXSA9IHRoaXMucXVlc3Rpb25NZXRhRGF0YS5tYXhTY29yZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgY29uc3QgcGFyZW50ID0gdGhpcy50cmVlU2VydmljZS5nZXRQYXJlbnQoKT8uZGF0YT8ubWV0YWRhdGE7XG4gICAgICB0aGlzLmhpZXJhcmNoeS5zaG93U29sdXRpb25zID0gcGFyZW50Py5zaG93U29sdXRpb25zIHx8IFwiTm9cIjtcbiAgICAgIHRoaXMuaGllcmFyY2h5LnNob3dGZWVkYmFjayA9IHBhcmVudD8uc2hvd0ZlZWRiYWNrIHx8IFwiTm9cIjtcbiAgICAgIHRoaXMucHJldlF1ZXN0aW9uSWQgPSBuZXdRdWVzdGlvbklkO1xuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuc2hvd1BsYXllclByZXZpZXcgPSB0cnVlO1xuICAgICAgfSwgMCk7XG4gICAgfVxuICB9XG5cbiAgc3dpdGNoVG9Qb3RyYWl0TW9kZSgpIHtcbiAgICB0aGlzLnNob3dQb3RyYWl0ID0gdHJ1ZTtcbiAgfVxuICBzd2l0Y2hUb0xhbmRzY2FwZU1vZGUoKSB7XG4gICAgdGhpcy5zaG93UG90cmFpdCA9IGZhbHNlO1xuICB9XG5cbiAgcmVtb3ZlUXVlc3Rpb24oKSB7XG4gICAgdGhpcy50b29sYmFyRW1pdHRlci5lbWl0KHtidXR0b246ICdyZW1vdmVDb250ZW50J30pO1xuICB9XG5cbiAgZWRpdFF1ZXN0aW9uKCkge1xuICAgIHRoaXMudG9vbGJhckVtaXR0ZXIuZW1pdCh7YnV0dG9uIDogJ2VkaXRDb250ZW50J30pO1xuICB9XG5cbiAgcmV2aWV3UXVlc3Rpb24oKXtcbiAgICB0aGlzLnRvb2xiYXJFbWl0dGVyLmVtaXQoe2J1dHRvbiA6ICdyZXZpZXdDb250ZW50J30pO1xuICB9XG5cbn1cbiIsIjxkaXY+XG4gICAgPGRpdiBbbmdDbGFzc109XCJ7J3BvdHJhaXQtbW9kZSc6IHNob3dQb3RyYWl0fVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYi0xLTEwMCBici0yIG10LTVcIiAqbmdJZj1cInNob3dQbGF5ZXJQcmV2aWV3XCI+XG4gICAgICAgICAgICA8bGliLXF1bWwtcGxheWVyIFtxdWVzdGlvblNldEhpZXJhcmNoeV09XCJoaWVyYXJjaHlcIiBbaXNTaW5nbGVRdWVzdGlvblByZXZpZXddPVwidHJ1ZVwiICh0b29sYmFyRW1pdHRlcik9XCJyZXZpZXdRdWVzdGlvbigpXCI+PC9saWItcXVtbC1wbGF5ZXI+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPGRpdiBjbGFzcz1cInVpIG10LTIwXCIgKm5nSWY9XCIoZWRpdG9yU2VydmljZS5lZGl0b3JNb2RlID09PSAnZWRpdCcpXCI+XG4gICAgPGRpdiBjbGFzcz1cInVpIHR3ZWx2ZSBjb2x1bW4gZ3JpZCBtLTBcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm5pbmUgd2lkZSBjb2x1bW4gcC0wIHRleHQtbGVmdFwiPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzYi1idG4gc2ItYnRuLW5vcm1hbCBzYi1idG4tcHJpbWFyeSBtci0xNVwiKm5nSWY9XCIocXVlc3Rpb25NZXRhRGF0YT8uc3RhdHVzICE9ICdMaXZlJyAmJlxuICAgICAgICAgICAgcXVlc3Rpb25NZXRhRGF0YT8uc3RhdHVzICE9J0FwcHJvdmVkJylcIiAoY2xpY2spPVwiZWRpdFF1ZXN0aW9uKCk7XCJcbiAgICAgICAgICAgICAgICBsaWJUZWxlbWV0cnlJbnRlcmFjdFxuICAgICAgICAgICAgICAgIFt0ZWxlbWV0cnlJbnRlcmFjdEVkYXRhXT1cInRlbGVtZXRyeVNlcnZpY2UuZ2V0VGVsZW1ldHJ5SW50ZXJhY3RFZGF0YSgnZWRpdCcsJ2NsaWNrJywnbGF1bmNoJywgdGVsZW1ldHJ5U2VydmljZS50ZWxlbWV0cnlQYWdlSWQpXCI+XG4gICAgICAgICAgICAgICAgPGkgY2xhc3M9XCJpY29uIGVkaXRcIj48L2k+RWRpdDwvYnV0dG9uPlxuICAgICAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJzYi1idG4gc2ItYnRuLW5vcm1hbCBzYi1idG4tb3V0bGluZS1wcmltYXJ5XCJcbiAgICAgICAgICAgICAgICAoY2xpY2spPVwicmVtb3ZlUXVlc3Rpb24oKVwiPjxpIGNsYXNzPVwiaWNvbiB0cmFzaCBzYi1jb2xvci1wcmltYXJ5XCIgYXJpYS1oaWRkZW49XCJ0cnVlXCIgbGliVGVsZW1ldHJ5SW50ZXJhY3RcbiAgICAgICAgICAgICAgICAgICAgW3RlbGVtZXRyeUludGVyYWN0RWRhdGFdPVwidGVsZW1ldHJ5U2VydmljZS5nZXRUZWxlbWV0cnlJbnRlcmFjdEVkYXRhKCdkZWxldGUnLCdjbGljaycsJ2xhdW5jaCcsIHRlbGVtZXRyeVNlcnZpY2UudGVsZW1ldHJ5UGFnZUlkKVwiPjwvaT57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmJ1dHRvbl9sYWJlbHM/LmRlbGV0ZV9idG5fbGFiZWx9fTwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInRocmVlIHdpZGUgY29sdW1uIHAtMCB0ZXh0LXJpZ2h0XCI+XG4gICAgICAgICAgICA8c3Bhbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwic3dpdGNoVG9MYW5kc2NhcGVNb2RlKCk7XCIgY2xhc3M9XCJidG4tbm9uZVwiPlxuICAgICAgICAgICAgICAgICAgICA8aSBjbGFzcz1cInR2IGljb24gc2ItY29sb3ItcHJpbWFyeSBmcy0xLTE0M1wiIFtuZ0NsYXNzXT1cInsnb3BhY2l0eS1pY29uJzogc2hvd1BvdHJhaXR9XCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZnMtMS0xNiBmb250LXdlaWdodC1ub3JtYWwgc2ItY29sb3ItZ3JheS0xMDBcIj58PC9zcGFuPlxuICAgICAgICAgICAgICAgIDxidXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJzd2l0Y2hUb1BvdHJhaXRNb2RlKCk7XCIgY2xhc3M9XCJ3LTEwIGJ0bi1ub25lXCI+XG4gICAgICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwibW9iaWxlIGFsdGVybmF0ZSBpY29uIHNiLWNvbG9yLXByaW1hcnkgZnMtMS0zXCIgW25nQ2xhc3NdPVwieydvcGFjaXR5LWljb24nOiAhc2hvd1BvdHJhaXR9XCI+PC9pPlxuICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuXG48aHIgY2xhc3M9XCJteS0yMFwiPlxuPGRpdiBjbGFzcz1cInVpIGdyaWQgdGV4dC1mb250XCI+XG4gICAgPGRpdiBjbGFzcz1cImZpdmUgd2lkZSBjb2x1bW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiLWZpZWxkLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzYi1jb2xvci1ncmF5LTEwMFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5uYW1lfX08L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTAtOTIgdGV4dC1jYXBpdGFsaXplIGJyZWFrLXdvcmRcIj57e3F1ZXN0aW9uTWV0YURhdGE/Lm5hbWV9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZm91ciB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmJvYXJkfX08L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTAtOTIgdGV4dC1jYXBpdGFsaXplXCI+e3txdWVzdGlvbk1ldGFEYXRhPy5ib2FyZH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0aHJlZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/Lm1lZGl1bX19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8ubWVkaXVtfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpdmUgd2lkZSBjb2x1bW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiLWZpZWxkLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzYi1jb2xvci1ncmF5LTEwMFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5ncmFkZX19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uZ3JhZGVMZXZlbH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmb3VyIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uc3ViamVjdH19PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uc3ViamVjdH19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0aHJlZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmF0dHJpYnV0aW9uc319PC9sYWJlbD5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmcy0wLTkyIHRleHQtY2FwaXRhbGl6ZVwiPnt7cXVlc3Rpb25NZXRhRGF0YT8uYXR0cmlidXRpb25zfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpdmUgd2lkZSBjb2x1bW5cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNiLWZpZWxkLWdyb3VwXCI+XG4gICAgICAgICAgICA8bGFiZWwgY2xhc3M9XCJzYi1jb2xvci1ncmF5LTEwMFwiPnt7Y29uZmlnU2VydmljZS5sYWJlbENvbmZpZz8ubGJsPy5hdXRob3J9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmF1dGhvcn19PC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmb3VyIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uYXVkaWVuY2V9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmF1ZGllbmNlfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRocmVlIHdpZGUgY29sdW1uXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8uY29weVJpZ2h0fX08L2xhYmVsPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImZzLTAtOTIgdGV4dC1jYXBpdGFsaXplXCI+e3txdWVzdGlvbk1ldGFEYXRhPy5jb3B5cmlnaHR9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZml2ZSB3aWRlIGNvbHVtblwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2ItZmllbGQtZ3JvdXBcIj5cbiAgICAgICAgICAgIDxsYWJlbCBjbGFzcz1cInNiLWNvbG9yLWdyYXktMTAwXCI+e3tjb25maWdTZXJ2aWNlLmxhYmVsQ29uZmlnPy5sYmw/LmxpY2Vuc2VkQnl9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGE/LmxpY2Vuc2V9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZm91ciB3aWRlIGNvbHVtblwiICpuZ0lmPVwicXVlc3Rpb25NZXRhRGF0YT8ucVR5cGUgPT09ICdNQ1EnXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzYi1maWVsZC1ncm91cFwiPlxuICAgICAgICAgICAgPGxhYmVsIGNsYXNzPVwic2ItY29sb3ItZ3JheS0xMDBcIj57e2NvbmZpZ1NlcnZpY2UubGFiZWxDb25maWc/LmxibD8ubWFya3N9fTwvbGFiZWw+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZnMtMC05MiB0ZXh0LWNhcGl0YWxpemVcIj57e3F1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmU/IHF1ZXN0aW9uTWV0YURhdGEubWF4U2NvcmUgOiAxfX08L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
+
import * as _ from 'lodash-es';
|
|
3
|
+
import * as i0 from "@angular/core";
|
|
4
|
+
import * as i1 from "../../services/editor/editor.service";
|
|
5
|
+
import * as i2 from "../../services/tree/tree.service";
|
|
6
|
+
import * as i3 from "@angular/common";
|
|
7
|
+
import * as i4 from "@project-sunbird/common-form-elements-full";
|
|
8
|
+
export class RelationalMetadataComponent {
|
|
9
|
+
constructor(editorService, treeService) {
|
|
10
|
+
this.editorService = editorService;
|
|
11
|
+
this.treeService = treeService;
|
|
12
|
+
this.statusChanges = new EventEmitter();
|
|
13
|
+
this.valueChanges = new EventEmitter();
|
|
14
|
+
}
|
|
15
|
+
ngOnInit() {
|
|
16
|
+
}
|
|
17
|
+
ngOnChanges() {
|
|
18
|
+
this.contentMetadata = _.get(this.contentMetadata, 'data.metadata') || this.contentMetadata;
|
|
19
|
+
if (this.contentId !== this.contentMetadata.identifier) {
|
|
20
|
+
this.contentId = this.contentMetadata.identifier;
|
|
21
|
+
this.attachDefaultValues();
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
attachDefaultValues() {
|
|
25
|
+
let formConfig = _.cloneDeep(this.formConfig);
|
|
26
|
+
formConfig = this.formConfig && _.has(_.first(formConfig), 'fields') ? formConfig : [{ name: '', fields: formConfig }];
|
|
27
|
+
const metaDataFields = _.get(this.contentMetadata, 'relationalMetadata', {});
|
|
28
|
+
_.forEach(formConfig, (section) => {
|
|
29
|
+
_.forEach(section.fields, field => {
|
|
30
|
+
if (metaDataFields) {
|
|
31
|
+
if (_.has(metaDataFields, field.code)) {
|
|
32
|
+
field.default = _.get(metaDataFields, field.code);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
const ifEditable = this.ifFieldIsEditable(field.code);
|
|
36
|
+
_.set(field, 'editable', ifEditable);
|
|
37
|
+
});
|
|
38
|
+
});
|
|
39
|
+
this.formFieldProperties = _.cloneDeep(formConfig);
|
|
40
|
+
}
|
|
41
|
+
isReviewMode() {
|
|
42
|
+
return _.includes(['review', 'read', 'sourcingreview', 'orgreview'], this.editorService.editorMode);
|
|
43
|
+
}
|
|
44
|
+
ifFieldIsEditable(fieldCode) {
|
|
45
|
+
const ediorMode = this.editorService.editorMode;
|
|
46
|
+
if (!this.isReviewMode()) {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
const editableFields = _.get(this.editorService.editorConfig.config, 'editableFields');
|
|
50
|
+
if (editableFields && !_.isEmpty(editableFields[ediorMode]) && _.includes(editableFields[ediorMode], fieldCode)) {
|
|
51
|
+
return true;
|
|
52
|
+
}
|
|
53
|
+
return false;
|
|
54
|
+
}
|
|
55
|
+
onFormStatusChange(event) {
|
|
56
|
+
this.statusChanges.emit(event);
|
|
57
|
+
}
|
|
58
|
+
onFormValueChange(event) {
|
|
59
|
+
this.valueChanges.emit(event);
|
|
60
|
+
const selectedNode = this.treeService.getActiveNode();
|
|
61
|
+
let relationalMetadata = _.get(selectedNode, 'data.metadata.relationalMetadata', {});
|
|
62
|
+
relationalMetadata = _.assign({}, relationalMetadata, event);
|
|
63
|
+
selectedNode.data.metadata = { ...selectedNode.data.metadata, relationalMetadata };
|
|
64
|
+
}
|
|
65
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RelationalMetadataComponent, deps: [{ token: i1.EditorService }, { token: i2.TreeService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
66
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RelationalMetadataComponent, selector: "lib-relational-metadata", inputs: { contentMetadata: "contentMetadata", formConfig: "formConfig" }, outputs: { statusChanges: "statusChanges", valueChanges: "valueChanges" }, usesOnChanges: true, ngImport: i0, template: "<sb-dynamic-form *ngIf=\"formFieldProperties\" [config]=\"formFieldProperties\" (statusChanges)=\"onFormStatusChange($event)\" (valueChanges)=\"onFormValueChange($event)\"></sb-dynamic-form> \n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.DynamicFormComponent, selector: "sb-dynamic-form", inputs: ["config", "dataLoadStatusDelegate"], outputs: ["initialize", "finalize", "valueChanges", "statusChanges"] }] }); }
|
|
67
|
+
}
|
|
68
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RelationalMetadataComponent, decorators: [{
|
|
69
|
+
type: Component,
|
|
70
|
+
args: [{ selector: 'lib-relational-metadata', template: "<sb-dynamic-form *ngIf=\"formFieldProperties\" [config]=\"formFieldProperties\" (statusChanges)=\"onFormStatusChange($event)\" (valueChanges)=\"onFormValueChange($event)\"></sb-dynamic-form> \n" }]
|
|
71
|
+
}], ctorParameters: function () { return [{ type: i1.EditorService }, { type: i2.TreeService }]; }, propDecorators: { contentMetadata: [{
|
|
72
|
+
type: Input
|
|
73
|
+
}], formConfig: [{
|
|
74
|
+
type: Input
|
|
75
|
+
}], statusChanges: [{
|
|
76
|
+
type: Output
|
|
77
|
+
}], valueChanges: [{
|
|
78
|
+
type: Output
|
|
79
|
+
}] } });
|
|
80
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVsYXRpb25hbC1tZXRhZGF0YS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2xsZWN0aW9uLWVkaXRvci1saWJyYXJ5L3NyYy9saWIvY29tcG9uZW50cy9yZWxhdGlvbmFsLW1ldGFkYXRhL3JlbGF0aW9uYWwtbWV0YWRhdGEuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29sbGVjdGlvbi1lZGl0b3ItbGlicmFyeS9zcmMvbGliL2NvbXBvbmVudHMvcmVsYXRpb25hbC1tZXRhZGF0YS9yZWxhdGlvbmFsLW1ldGFkYXRhLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFGLE9BQU8sS0FBSyxDQUFDLE1BQU0sV0FBVyxDQUFDOzs7Ozs7QUFVL0IsTUFBTSxPQUFPLDJCQUEyQjtJQVF0QyxZQUFvQixhQUE0QixFQUFVLFdBQXdCO1FBQTlELGtCQUFhLEdBQWIsYUFBYSxDQUFlO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFIeEUsa0JBQWEsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3hDLGlCQUFZLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztJQUVxQyxDQUFDO0lBRXZGLFFBQVE7SUFDUixDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxlQUFlLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxJQUFJLElBQUksQ0FBQyxlQUFlLENBQUM7UUFDNUYsSUFBSSxJQUFJLENBQUMsU0FBUyxLQUFLLElBQUksQ0FBQyxlQUFlLENBQUMsVUFBVSxFQUFFO1lBQ3RELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUM7WUFDakQsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7U0FDNUI7SUFDSCxDQUFDO0lBRUQsbUJBQW1CO1FBQ2pCLElBQUksVUFBVSxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzlDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztRQUNySCxNQUFNLGNBQWMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsb0JBQW9CLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDN0UsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxPQUFPLEVBQUUsRUFBRTtZQUNoQyxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUU7Z0JBQ2hDLElBQUksY0FBYyxFQUFFO29CQUNsQixJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsY0FBYyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRTt3QkFDckMsS0FBSyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLGNBQWMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7cUJBQ25EO2lCQUNGO2dCQUNELE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ3RELENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUV2QyxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLG1CQUFtQixHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDckQsQ0FBQztJQUVELFlBQVk7UUFDVixPQUFRLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBRSxRQUFRLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLFdBQVcsQ0FBRSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUM7SUFDekcsQ0FBQztJQUVELGlCQUFpQixDQUFDLFNBQVM7UUFDekIsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUM7UUFDaEQsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsRUFBRTtZQUN4QixPQUFPLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxjQUFjLEdBQUcsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztRQUN2RixJQUFJLGNBQWMsSUFBSSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsU0FBUyxDQUFDLEVBQUUsU0FBUyxDQUFDLEVBQUU7WUFDL0csT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQUs7UUFDdEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELGlCQUFpQixDQUFDLEtBQUs7UUFDckIsSUFBSSxDQUFDLFlBQVksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDOUIsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUN0RCxJQUFJLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsWUFBWSxFQUFFLGtDQUFrQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3JGLGtCQUFrQixHQUFHLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLGtCQUFrQixFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzdELFlBQVksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUMsR0FBRyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxrQkFBa0IsRUFBQyxDQUFDO0lBQ25GLENBQUM7K0dBbEVVLDJCQUEyQjttR0FBM0IsMkJBQTJCLHlPQ1h4QyxvTUFDQTs7NEZEVWEsMkJBQTJCO2tCQUx2QyxTQUFTOytCQUNFLHlCQUF5Qjs4SEFNMUIsZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUVJLGFBQWE7c0JBQXRCLE1BQU07Z0JBQ0csWUFBWTtzQkFBckIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgXyBmcm9tICdsb2Rhc2gtZXMnO1xuaW1wb3J0IHsgRWRpdG9yU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL2VkaXRvci9lZGl0b3Iuc2VydmljZSc7XG5pbXBvcnQgeyBDb25maWdTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29uZmlnL2NvbmZpZy5zZXJ2aWNlJztcbmltcG9ydCB7IFRyZWVTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvdHJlZS90cmVlLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdsaWItcmVsYXRpb25hbC1tZXRhZGF0YScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWxhdGlvbmFsLW1ldGFkYXRhLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vcmVsYXRpb25hbC1tZXRhZGF0YS5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgUmVsYXRpb25hbE1ldGFkYXRhQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuXG4gIEBJbnB1dCgpIGNvbnRlbnRNZXRhZGF0YTogYW55O1xuICBASW5wdXQoKSBmb3JtQ29uZmlnOiBhbnk7XG4gIHB1YmxpYyBjb250ZW50SWQ7XG4gIEBPdXRwdXQoKSBzdGF0dXNDaGFuZ2VzID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG4gIEBPdXRwdXQoKSB2YWx1ZUNoYW5nZXMgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgcHVibGljIGZvcm1GaWVsZFByb3BlcnRpZXM6IGFueTtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBlZGl0b3JTZXJ2aWNlOiBFZGl0b3JTZXJ2aWNlLCBwcml2YXRlIHRyZWVTZXJ2aWNlOiBUcmVlU2VydmljZSkgeyB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpIHtcbiAgICB0aGlzLmNvbnRlbnRNZXRhZGF0YSA9IF8uZ2V0KHRoaXMuY29udGVudE1ldGFkYXRhLCAnZGF0YS5tZXRhZGF0YScpIHx8IHRoaXMuY29udGVudE1ldGFkYXRhO1xuICAgIGlmICh0aGlzLmNvbnRlbnRJZCAhPT0gdGhpcy5jb250ZW50TWV0YWRhdGEuaWRlbnRpZmllcikge1xuICAgICAgdGhpcy5jb250ZW50SWQgPSB0aGlzLmNvbnRlbnRNZXRhZGF0YS5pZGVudGlmaWVyO1xuICAgICAgdGhpcy5hdHRhY2hEZWZhdWx0VmFsdWVzKCk7XG4gICAgfVxuICB9XG5cbiAgYXR0YWNoRGVmYXVsdFZhbHVlcygpIHtcbiAgICBsZXQgZm9ybUNvbmZpZyA9IF8uY2xvbmVEZWVwKHRoaXMuZm9ybUNvbmZpZyk7XG4gICAgZm9ybUNvbmZpZyA9IHRoaXMuZm9ybUNvbmZpZyAmJiBfLmhhcyhfLmZpcnN0KGZvcm1Db25maWcpLCAnZmllbGRzJykgPyBmb3JtQ29uZmlnIDogW3tuYW1lOiAnJywgZmllbGRzOiBmb3JtQ29uZmlnfV07XG4gICAgY29uc3QgbWV0YURhdGFGaWVsZHMgPSBfLmdldCh0aGlzLmNvbnRlbnRNZXRhZGF0YSwgJ3JlbGF0aW9uYWxNZXRhZGF0YScsIHt9KTtcbiAgICBfLmZvckVhY2goZm9ybUNvbmZpZywgKHNlY3Rpb24pID0+IHtcbiAgICAgIF8uZm9yRWFjaChzZWN0aW9uLmZpZWxkcywgZmllbGQgPT4ge1xuICAgICAgICBpZiAobWV0YURhdGFGaWVsZHMpIHtcbiAgICAgICAgICBpZiAoXy5oYXMobWV0YURhdGFGaWVsZHMsIGZpZWxkLmNvZGUpKSB7XG4gICAgICAgICAgICBmaWVsZC5kZWZhdWx0ID0gXy5nZXQobWV0YURhdGFGaWVsZHMsIGZpZWxkLmNvZGUpO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBjb25zdCBpZkVkaXRhYmxlID0gdGhpcy5pZkZpZWxkSXNFZGl0YWJsZShmaWVsZC5jb2RlKTtcbiAgICAgICAgXy5zZXQoZmllbGQsICdlZGl0YWJsZScsIGlmRWRpdGFibGUpO1xuXG4gICAgICB9KTtcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1GaWVsZFByb3BlcnRpZXMgPSBfLmNsb25lRGVlcChmb3JtQ29uZmlnKTtcbiAgfVxuXG4gIGlzUmV2aWV3TW9kZSgpIHtcbiAgICByZXR1cm4gIF8uaW5jbHVkZXMoWyAncmV2aWV3JywgJ3JlYWQnLCAnc291cmNpbmdyZXZpZXcnLCAnb3JncmV2aWV3JyBdLCB0aGlzLmVkaXRvclNlcnZpY2UuZWRpdG9yTW9kZSk7XG4gIH1cblxuICBpZkZpZWxkSXNFZGl0YWJsZShmaWVsZENvZGUpIHtcbiAgICBjb25zdCBlZGlvck1vZGUgPSB0aGlzLmVkaXRvclNlcnZpY2UuZWRpdG9yTW9kZTtcbiAgICBpZiAoIXRoaXMuaXNSZXZpZXdNb2RlKCkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBjb25zdCBlZGl0YWJsZUZpZWxkcyA9IF8uZ2V0KHRoaXMuZWRpdG9yU2VydmljZS5lZGl0b3JDb25maWcuY29uZmlnLCAnZWRpdGFibGVGaWVsZHMnKTtcbiAgICBpZiAoZWRpdGFibGVGaWVsZHMgJiYgIV8uaXNFbXB0eShlZGl0YWJsZUZpZWxkc1tlZGlvck1vZGVdKSAmJiBfLmluY2x1ZGVzKGVkaXRhYmxlRmllbGRzW2VkaW9yTW9kZV0sIGZpZWxkQ29kZSkpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBvbkZvcm1TdGF0dXNDaGFuZ2UoZXZlbnQpIHtcbiAgICB0aGlzLnN0YXR1c0NoYW5nZXMuZW1pdChldmVudCk7XG4gIH1cblxuICBvbkZvcm1WYWx1ZUNoYW5nZShldmVudCkge1xuICAgIHRoaXMudmFsdWVDaGFuZ2VzLmVtaXQoZXZlbnQpO1xuICAgIGNvbnN0IHNlbGVjdGVkTm9kZSA9IHRoaXMudHJlZVNlcnZpY2UuZ2V0QWN0aXZlTm9kZSgpO1xuICAgIGxldCByZWxhdGlvbmFsTWV0YWRhdGEgPSBfLmdldChzZWxlY3RlZE5vZGUsICdkYXRhLm1ldGFkYXRhLnJlbGF0aW9uYWxNZXRhZGF0YScsIHt9KTtcbiAgICByZWxhdGlvbmFsTWV0YWRhdGEgPSBfLmFzc2lnbih7fSwgcmVsYXRpb25hbE1ldGFkYXRhLCBldmVudCk7XG4gICAgc2VsZWN0ZWROb2RlLmRhdGEubWV0YWRhdGEgPSB7Li4uc2VsZWN0ZWROb2RlLmRhdGEubWV0YWRhdGEsIHJlbGF0aW9uYWxNZXRhZGF0YX07XG4gIH1cblxufVxuIiwiPHNiLWR5bmFtaWMtZm9ybSAqbmdJZj1cImZvcm1GaWVsZFByb3BlcnRpZXNcIiAgW2NvbmZpZ109XCJmb3JtRmllbGRQcm9wZXJ0aWVzXCIgKHN0YXR1c0NoYW5nZXMpPVwib25Gb3JtU3RhdHVzQ2hhbmdlKCRldmVudClcIiAodmFsdWVDaGFuZ2VzKT1cIm9uRm9ybVZhbHVlQ2hhbmdlKCRldmVudClcIj48L3NiLWR5bmFtaWMtZm9ybT4gXG4iXX0=
|