survey-creator-angular 1.9.90 → 1.9.92

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.
@@ -4,7 +4,8 @@ import { QuestionAdornerViewModel } from "survey-creator-core";
4
4
  import { CreatorModelComponent } from "./creator-model.component";
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "survey-angular-ui";
7
- import * as i2 from "@angular/common";
7
+ import * as i2 from "./question-carryforward.component";
8
+ import * as i3 from "@angular/common";
8
9
  export class QuestionDesignerComponent extends CreatorModelComponent {
9
10
  constructor() {
10
11
  super(...arguments);
@@ -47,7 +48,7 @@ export class QuestionDesignerComponent extends CreatorModelComponent {
47
48
  }
48
49
  }
49
50
  QuestionDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
50
- QuestionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDesignerComponent, selector: "svc-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
51
+ QuestionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDesignerComponent, selector: "svc-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n <svc-question-carryforward *ngIf=\"adorner.isUsingCarryForward\" [model]=\"adorner.createCarryForwardParams()\">\n </svc-question-carryforward>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i2.QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
51
52
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDesignerComponent, decorators: [{
52
53
  type: Component,
53
54
  args: [{
@@ -61,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
61
62
  type: Input
62
63
  }] } });
63
64
  AngularComponentFactory.Instance.registerComponent("svc-question", QuestionDesignerComponent);
64
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy9xdWVzdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBNkMsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RyxPQUFPLEVBQWUsd0JBQXdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7OztBQU9sRSxNQUFNLE9BQU8seUJBQTBCLFNBQVEscUJBQStDO0lBTDlGOztRQTJDRSxxQkFBZ0IsR0FBRyxFQUFFLENBQUM7S0FDdkI7SUFuQ0MsSUFBYyxPQUFPO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUM7SUFDakMsQ0FBQztJQUNELElBQVcsS0FBSztRQUNkLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxLQUFLLENBQUM7SUFDbEMsQ0FBQztJQUNTLFdBQVc7UUFDbkIsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSx3QkFBd0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQU8sSUFBSSxDQUFDLENBQUM7U0FDbEY7SUFDSCxDQUFDO0lBQ1Msb0JBQW9CO1FBQzVCLE9BQU8sQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNTLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7SUFDRCxJQUFXLG9CQUFvQjtRQUM3QixPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFDRCxJQUFXLHdCQUF3QjtRQUNqQyxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFDRCxJQUFXLHdCQUF3QjtRQUNqQyxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFDTSxrQkFBa0IsQ0FBQyxLQUFVOztRQUNsQyxLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsTUFBQSxJQUFJLENBQUMsT0FBTyxDQUFDLHlCQUF5QiwwQ0FBRSxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUNoRyxDQUFDO0lBQ00sY0FBYyxDQUFDLEtBQVU7UUFDOUIsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDaEMsQ0FBQzs7dUhBckNVLHlCQUF5QjsyR0FBekIseUJBQXlCLHVKQ1h0QywyakRBNkJjOzRGRGxCRCx5QkFBeUI7a0JBTHJDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGNBQWM7b0JBQ3hCLFdBQVcsRUFBRSwyQkFBMkI7b0JBQ3hDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUNyQzs4QkFFVSxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7O0FBdUNSLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxjQUFjLEVBQUUseUJBQXlCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIElucHV0LCBWaWV3Q29udGFpbmVyUmVmLCBWaWV3RW5jYXBzdWxhdGlvbiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSwgQmFzZUFuZ3VsYXIsIEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwic3VydmV5LWFuZ3VsYXItdWlcIjtcbmltcG9ydCB7IFBhZ2VNb2RlbCwgUGFuZWxNb2RlbCwgUXVlc3Rpb24sIFN1cnZleU1vZGVsIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBDcmVhdG9yQmFzZSwgUXVlc3Rpb25BZG9ybmVyVmlld01vZGVsIH0gZnJvbSBcInN1cnZleS1jcmVhdG9yLWNvcmVcIjtcbmltcG9ydCB7IENyZWF0b3JNb2RlbENvbXBvbmVudCB9IGZyb20gXCIuL2NyZWF0b3ItbW9kZWwuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdmMtcXVlc3Rpb25cIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9xdWVzdGlvbi5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBRdWVzdGlvbkRlc2lnbmVyQ29tcG9uZW50IGV4dGVuZHMgQ3JlYXRvck1vZGVsQ29tcG9uZW50PFF1ZXN0aW9uQWRvcm5lclZpZXdNb2RlbD4ge1xuICBASW5wdXQoKSBjb21wb25lbnROYW1lITogc3RyaW5nO1xuICBASW5wdXQoKSBjb21wb25lbnREYXRhITogYW55O1xuICBwdWJsaWMgYWRvcm5lciE6IFF1ZXN0aW9uQWRvcm5lclZpZXdNb2RlbDtcbiAgcHJvdGVjdGVkIGdldCBjcmVhdG9yKCk6IENyZWF0b3JCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnREYXRhLmRhdGE7XG4gIH1cbiAgcHVibGljIGdldCBtb2RlbCgpOiBRdWVzdGlvbiB8IFBhbmVsTW9kZWwge1xuICAgIHJldHVybiB0aGlzLmNvbXBvbmVudERhdGEubW9kZWw7XG4gIH1cbiAgcHJvdGVjdGVkIGNyZWF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIGlmICh0aGlzLmNvbXBvbmVudERhdGEpIHtcbiAgICAgIHRoaXMuYWRvcm5lciA9IG5ldyBRdWVzdGlvbkFkb3JuZXJWaWV3TW9kZWwodGhpcy5jcmVhdG9yLCB0aGlzLm1vZGVsLCA8YW55Pm51bGwpO1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgZ2V0UHJvcGVydGllc1RvVHJhY2soKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbXCJtb2RlbFwiLCBcImNyZWF0b3JcIl07XG4gIH1cbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFF1ZXN0aW9uQWRvcm5lclZpZXdNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMuYWRvcm5lcjtcbiAgfVxuICBwdWJsaWMgZ2V0IHBsYWNlaG9sZGVyQ29tcG9uZW50KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFwiXCI7XG4gIH1cbiAgcHVibGljIGdldCBwbGFjZWhvbGRlckNvbXBvbmVudERhdGEoKTogYW55IHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuICBwdWJsaWMgZ2V0IHNob3dQbGFjZWhvbGRlckNvbXBvbmVudCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbiAgcHVibGljIHNlbGVjdFF1ZXN0aW9uVHlwZShldmVudDogYW55KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5hZG9ybmVyLnF1ZXN0aW9uVHlwZVNlbGVjdG9yTW9kZWw/LmFjdGlvbih0aGlzLmFkb3JuZXIucXVlc3Rpb25UeXBlU2VsZWN0b3JNb2RlbCwgZXZlbnQpO1xuICB9XG4gIHB1YmxpYyBhZGROZXdRdWVzdGlvbihldmVudDogYW55KSB7XG4gICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgdGhpcy5hZG9ybmVyLmFkZE5ld1F1ZXN0aW9uKCk7XG4gIH1cbiAgYWRvcm5lckNvbXBvbmVudCA9IFwiXCI7XG59XG5cbkFuZ3VsYXJDb21wb25lbnRGYWN0b3J5Lkluc3RhbmNlLnJlZ2lzdGVyQ29tcG9uZW50KFwic3ZjLXF1ZXN0aW9uXCIsIFF1ZXN0aW9uRGVzaWduZXJDb21wb25lbnQpO1xuXG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8ZGl2ICpuZ0lmPVwiYWRvcm5lclwiIGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19hZG9ybmVyXCIgW2NsYXNzXT1cImFkb3JuZXIucm9vdENzcygpXCJcbiAgICAobW91c2VvdmVyKT1cImFkb3JuZXIuaG92ZXIoJGV2ZW50LCAkZXZlbnQuY3VycmVudFRhcmdldClcIiAobW91c2VsZWF2ZSk9XCJhZG9ybmVyLmhvdmVyKCRldmVudCwgJGV2ZW50LmN1cnJlbnRUYXJnZXQpXCJcbiAgICBbYXR0ci5kYXRhLXN2LWRyb3AtdGFyZ2V0LXN1cnZleS1lbGVtZW50XT1cImFkb3JuZXIuZWxlbWVudC5uYW1lIHx8IG51bGxcIiAjY29udGFpbmVyPlxuXG4gICAgPGRpdiBbY2xhc3NdPVwiYWRvcm5lci5jc3MoKVwiIFtrZXkyY2xpY2tdIChjbGljayk9XCJhZG9ybmVyLnNlbGVjdChhZG9ybmVyLCAkZXZlbnQpXCI+XG4gICAgICA8ZGl2ICpuZ0lmPVwiYWRvcm5lci5hbGxvd0RyYWdnaW5nXCIgY2xhc3M9XCJzdmMtcXVlc3Rpb25fX2RyYWctYXJlYVwiIChwb2ludGVyZG93bik9XCJhZG9ybmVyLm9uUG9pbnRlckRvd24oJGV2ZW50KVwiPlxuICAgICAgICA8c3ZnIGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19kcmFnLWVsZW1lbnRcIiBbaWNvbk5hbWVdPVwiJ2ljb24tZHJhZy1hcmVhLWluZGljYXRvcl8yNHgxNidcIiBbc2l6ZV09XCIyNFwiXG4gICAgICAgICAgc3Ytbmctc3ZnLWljb24+PC9zdmc+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPG5nLXRlbXBsYXRlIFtjb21wb25lbnRdPVwieyBuYW1lOiBjb21wb25lbnROYW1lLCBkYXRhOiBjb21wb25lbnREYXRhIH1cIj48L25nLXRlbXBsYXRlPlxuXG4gICAgICA8ZGl2ICpuZ0lmPVwiYWRvcm5lci5pc0VtcHR5RWxlbWVudCAmJiAhc2hvd1BsYWNlaG9sZGVyQ29tcG9uZW50XCIgY2xhc3M9XCJzdmMtcGFuZWxfX3BsYWNlaG9sZGVyX2ZyYW1lXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdmMtcGFuZWxfX3BsYWNlaG9sZGVyXCI+e3sgYWRvcm5lci5wbGFjZWhvbGRlclRleHQgfX08L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiYWRvcm5lci5pc0VtcHR5RWxlbWVudCAmJiAhIXNob3dQbGFjZWhvbGRlckNvbXBvbmVudFwiXG4gICAgICAgIFtjb21wb25lbnRdPVwieyBuYW1lOiBwbGFjZWhvbGRlckNvbXBvbmVudCwgZGF0YTogcGxhY2Vob2xkZXJDb21wb25lbnREYXRhIH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSAqbmdJZj1cImFkb3JuZXJDb21wb25lbnRcIlxuICAgICAgICBbY29tcG9uZW50XT1cInsgbmFtZTogYWRvcm5lckNvbXBvbmVudCwgZGF0YTogeyBhZG9ybmVyOiBhZG9ybmVyLCBxdWVzdGlvbjogbW9kZWwgfSB9XCI+XG4gICAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgICA8ZGl2IGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19jb250ZW50LWFjdGlvbnNcIj5cbiAgICAgICAgPHN2LWFjdGlvbi1iYXIgW21vZGVsXT1cImFkb3JuZXIuYWN0aW9uQ29udGFpbmVyXCIgW2hhbmRsZUNsaWNrXT1cImZhbHNlXCI+PC9zdi1hY3Rpb24tYmFyPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3F1ZXN0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uL3NyYy9xdWVzdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxLQUFLLEVBQXVDLE1BQU0sZUFBZSxDQUFDO0FBQ3pHLE9BQU8sRUFBRSx1QkFBdUIsRUFBNkMsTUFBTSxtQkFBbUIsQ0FBQztBQUV2RyxPQUFPLEVBQWUsd0JBQXdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQzs7Ozs7QUFPbEUsTUFBTSxPQUFPLHlCQUEwQixTQUFRLHFCQUErQztJQUw5Rjs7UUEyQ0UscUJBQWdCLEdBQUcsRUFBRSxDQUFDO0tBQ3ZCO0lBbkNDLElBQWMsT0FBTztRQUNuQixPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDO0lBQ2pDLENBQUM7SUFDRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFDUyxXQUFXO1FBQ25CLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRTtZQUN0QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksd0JBQXdCLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFPLElBQUksQ0FBQyxDQUFDO1NBQ2xGO0lBQ0gsQ0FBQztJQUNTLG9CQUFvQjtRQUM1QixPQUFPLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFDUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ0QsSUFBVyxvQkFBb0I7UUFDN0IsT0FBTyxFQUFFLENBQUM7SUFDWixDQUFDO0lBQ0QsSUFBVyx3QkFBd0I7UUFDakMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsSUFBVyx3QkFBd0I7UUFDakMsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBQ00sa0JBQWtCLENBQUMsS0FBVTs7UUFDbEMsS0FBSyxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3hCLE1BQUEsSUFBSSxDQUFDLE9BQU8sQ0FBQyx5QkFBeUIsMENBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMseUJBQXlCLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUNNLGNBQWMsQ0FBQyxLQUFVO1FBQzlCLEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O3VIQXJDVSx5QkFBeUI7MkdBQXpCLHlCQUF5Qix1SkNYdEMscXREQThCYzs0RkRuQkQseUJBQXlCO2tCQUxyQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxjQUFjO29CQUN4QixXQUFXLEVBQUUsMkJBQTJCO29CQUN4QyxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDckM7OEJBRVUsYUFBYTtzQkFBckIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLOztBQXVDUix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsY0FBYyxFQUFFLHlCQUF5QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50LCBJbnB1dCwgVmlld0NvbnRhaW5lclJlZiwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnksIEJhc2VBbmd1bGFyLCBFbWJlZGRlZFZpZXdDb250ZW50Q29tcG9uZW50IH0gZnJvbSBcInN1cnZleS1hbmd1bGFyLXVpXCI7XG5pbXBvcnQgeyBQYWdlTW9kZWwsIFBhbmVsTW9kZWwsIFF1ZXN0aW9uLCBTdXJ2ZXlNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvckJhc2UsIFF1ZXN0aW9uQWRvcm5lclZpZXdNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY3JlYXRvci1jb3JlXCI7XG5pbXBvcnQgeyBDcmVhdG9yTW9kZWxDb21wb25lbnQgfSBmcm9tIFwiLi9jcmVhdG9yLW1vZGVsLmNvbXBvbmVudFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3ZjLXF1ZXN0aW9uXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vcXVlc3Rpb24uY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXCI6aG9zdCB7IGRpc3BsYXk6IG5vbmU7IH1cIl1cbn0pXG5leHBvcnQgY2xhc3MgUXVlc3Rpb25EZXNpZ25lckNvbXBvbmVudCBleHRlbmRzIENyZWF0b3JNb2RlbENvbXBvbmVudDxRdWVzdGlvbkFkb3JuZXJWaWV3TW9kZWw+IHtcbiAgQElucHV0KCkgY29tcG9uZW50TmFtZSE6IHN0cmluZztcbiAgQElucHV0KCkgY29tcG9uZW50RGF0YSE6IGFueTtcbiAgcHVibGljIGFkb3JuZXIhOiBRdWVzdGlvbkFkb3JuZXJWaWV3TW9kZWw7XG4gIHByb3RlY3RlZCBnZXQgY3JlYXRvcigpOiBDcmVhdG9yQmFzZSB7XG4gICAgcmV0dXJuIHRoaXMuY29tcG9uZW50RGF0YS5kYXRhO1xuICB9XG4gIHB1YmxpYyBnZXQgbW9kZWwoKTogUXVlc3Rpb24gfCBQYW5lbE1vZGVsIHtcbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnREYXRhLm1vZGVsO1xuICB9XG4gIHByb3RlY3RlZCBjcmVhdGVNb2RlbCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5jb21wb25lbnREYXRhKSB7XG4gICAgICB0aGlzLmFkb3JuZXIgPSBuZXcgUXVlc3Rpb25BZG9ybmVyVmlld01vZGVsKHRoaXMuY3JlYXRvciwgdGhpcy5tb2RlbCwgPGFueT5udWxsKTtcbiAgICB9XG4gIH1cbiAgcHJvdGVjdGVkIGdldFByb3BlcnRpZXNUb1RyYWNrKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW1wibW9kZWxcIiwgXCJjcmVhdG9yXCJdO1xuICB9XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBRdWVzdGlvbkFkb3JuZXJWaWV3TW9kZWwge1xuICAgIHJldHVybiB0aGlzLmFkb3JuZXI7XG4gIH1cbiAgcHVibGljIGdldCBwbGFjZWhvbGRlckNvbXBvbmVudCgpOiBzdHJpbmcge1xuICAgIHJldHVybiBcIlwiO1xuICB9XG4gIHB1YmxpYyBnZXQgcGxhY2Vob2xkZXJDb21wb25lbnREYXRhKCk6IGFueSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cbiAgcHVibGljIGdldCBzaG93UGxhY2Vob2xkZXJDb21wb25lbnQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG4gIHB1YmxpYyBzZWxlY3RRdWVzdGlvblR5cGUoZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYWRvcm5lci5xdWVzdGlvblR5cGVTZWxlY3Rvck1vZGVsPy5hY3Rpb24odGhpcy5hZG9ybmVyLnF1ZXN0aW9uVHlwZVNlbGVjdG9yTW9kZWwsIGV2ZW50KTtcbiAgfVxuICBwdWJsaWMgYWRkTmV3UXVlc3Rpb24oZXZlbnQ6IGFueSkge1xuICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMuYWRvcm5lci5hZGROZXdRdWVzdGlvbigpO1xuICB9XG4gIGFkb3JuZXJDb21wb25lbnQgPSBcIlwiO1xufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChcInN2Yy1xdWVzdGlvblwiLCBRdWVzdGlvbkRlc2lnbmVyQ29tcG9uZW50KTtcblxuIiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiAqbmdJZj1cImFkb3JuZXJcIiBjbGFzcz1cInN2Yy1xdWVzdGlvbl9fYWRvcm5lclwiIFtjbGFzc109XCJhZG9ybmVyLnJvb3RDc3MoKVwiXG4gICAgKG1vdXNlb3Zlcik9XCJhZG9ybmVyLmhvdmVyKCRldmVudCwgJGV2ZW50LmN1cnJlbnRUYXJnZXQpXCIgKG1vdXNlbGVhdmUpPVwiYWRvcm5lci5ob3ZlcigkZXZlbnQsICRldmVudC5jdXJyZW50VGFyZ2V0KVwiXG4gICAgW2F0dHIuZGF0YS1zdi1kcm9wLXRhcmdldC1zdXJ2ZXktZWxlbWVudF09XCJhZG9ybmVyLmVsZW1lbnQubmFtZSB8fCBudWxsXCIgI2NvbnRhaW5lcj5cblxuICAgIDxkaXYgW2NsYXNzXT1cImFkb3JuZXIuY3NzKClcIiBba2V5MmNsaWNrXSAoY2xpY2spPVwiYWRvcm5lci5zZWxlY3QoYWRvcm5lciwgJGV2ZW50KVwiPlxuICAgICAgPGRpdiAqbmdJZj1cImFkb3JuZXIuYWxsb3dEcmFnZ2luZ1wiIGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19kcmFnLWFyZWFcIiAocG9pbnRlcmRvd24pPVwiYWRvcm5lci5vblBvaW50ZXJEb3duKCRldmVudClcIj5cbiAgICAgICAgPHN2ZyBjbGFzcz1cInN2Yy1xdWVzdGlvbl9fZHJhZy1lbGVtZW50XCIgW2ljb25OYW1lXT1cIidpY29uLWRyYWctYXJlYS1pbmRpY2F0b3JfMjR4MTYnXCIgW3NpemVdPVwiMjRcIlxuICAgICAgICAgIHN2LW5nLXN2Zy1pY29uPjwvc3ZnPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxuZy10ZW1wbGF0ZSBbY29tcG9uZW50XT1cInsgbmFtZTogY29tcG9uZW50TmFtZSwgZGF0YTogY29tcG9uZW50RGF0YSB9XCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxkaXYgKm5nSWY9XCJhZG9ybmVyLmlzRW1wdHlFbGVtZW50ICYmICFzaG93UGxhY2Vob2xkZXJDb21wb25lbnRcIiBjbGFzcz1cInN2Yy1wYW5lbF9fcGxhY2Vob2xkZXJfZnJhbWVcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN2Yy1wYW5lbF9fcGxhY2Vob2xkZXJcIj57eyBhZG9ybmVyLnBsYWNlaG9sZGVyVGV4dCB9fTwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctdGVtcGxhdGUgKm5nSWY9XCJhZG9ybmVyLmlzRW1wdHlFbGVtZW50ICYmICEhc2hvd1BsYWNlaG9sZGVyQ29tcG9uZW50XCJcbiAgICAgICAgW2NvbXBvbmVudF09XCJ7IG5hbWU6IHBsYWNlaG9sZGVyQ29tcG9uZW50LCBkYXRhOiBwbGFjZWhvbGRlckNvbXBvbmVudERhdGEgfVwiPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDxzdmMtcXVlc3Rpb24tY2Fycnlmb3J3YXJkICpuZ0lmPVwiYWRvcm5lci5pc1VzaW5nQ2FycnlGb3J3YXJkXCIgW21vZGVsXT1cImFkb3JuZXIuY3JlYXRlQ2FycnlGb3J3YXJkUGFyYW1zKClcIj5cbiAgICAgIDwvc3ZjLXF1ZXN0aW9uLWNhcnJ5Zm9yd2FyZD5cblxuICAgICAgPG5nLXRlbXBsYXRlICpuZ0lmPVwiYWRvcm5lckNvbXBvbmVudFwiXG4gICAgICAgIFtjb21wb25lbnRdPVwieyBuYW1lOiBhZG9ybmVyQ29tcG9uZW50LCBkYXRhOiB7IGFkb3JuZXI6IGFkb3JuZXIsIHF1ZXN0aW9uOiBtb2RlbCB9IH1cIj5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdmMtcXVlc3Rpb25fX2NvbnRlbnQtYWN0aW9uc1wiPlxuICAgICAgICA8c3YtYWN0aW9uLWJhciBbbW9kZWxdPVwiYWRvcm5lci5hY3Rpb25Db250YWluZXJcIiBbaGFuZGxlQ2xpY2tdPVwiZmFsc2VcIj48L3N2LWFjdGlvbi1iYXI+XG4gICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L25nLXRlbXBsYXRlPiJdfQ==
@@ -72,6 +72,9 @@ export class StringEditorComponent extends CreatorModelComponent {
72
72
  this.baseModel.onFocus(event);
73
73
  this.justFocused = true;
74
74
  }
75
+ onPaste(event) {
76
+ this.baseModel.onPaste(event);
77
+ }
75
78
  done(event) {
76
79
  this.baseModel.done(event);
77
80
  this.locString.__isEditing = false;
@@ -96,7 +99,7 @@ export class StringEditorComponent extends CreatorModelComponent {
96
99
  }
97
100
  }
98
101
  StringEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
99
- StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "svc-string-edtior", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span class=\"svc-string-editor__input\">\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (input)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [textContent]=\"editValue\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor sv-string-editor--html\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue | safeHtml\" #container></span>\n <sv-ng-character-counter *ngIf=\"showCharacterCounter\" [counter]=\"characterCounter\" [remainingCharacterCounter]=\"getCharacterCounterClass\"></sv-ng-character-counter>\n </span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "safeHtml": i1.SafeHtmlPipe } });
102
+ StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "svc-string-edtior", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span class=\"svc-string-editor__input\">\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (paste)=\"onPaste($event)\" (blur)=\"onBlur($event)\" (input)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [textContent]=\"editValue\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor sv-string-editor--html\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue | safeHtml\" #container></span>\n <sv-ng-character-counter *ngIf=\"showCharacterCounter\" [counter]=\"characterCounter\" [remainingCharacterCounter]=\"getCharacterCounterClass\"></sv-ng-character-counter>\n </span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "safeHtml": i1.SafeHtmlPipe } });
100
103
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, decorators: [{
101
104
  type: Component,
102
105
  args: [{
@@ -111,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
111
114
  args: ["container"]
112
115
  }] } });
113
116
  AngularComponentFactory.Instance.registerComponent(editableStringRendererName, StringEditorComponent);
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUVwSSxPQUFPLEVBQUUseUJBQXlCLEVBQWUsMEJBQTBCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQU81RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQWdEO0lBS3pGLFlBQVksR0FBc0IsRUFBRSxHQUFxQixFQUFVLE1BQWM7UUFDL0UsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQURpRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBSHpFLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBc0RyQyxvQkFBZSxHQUFHLEdBQVMsRUFBRTtZQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFBO0lBbkRELENBQUM7SUFDTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUNs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SSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDaEMsQ0FBQztJQUNRLFFBQVE7O1FBQ2YsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLElBQVUsSUFBSSxDQUFDLFNBQVUsQ0FBQyxXQUFXLEVBQUU7WUFDckMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7U0FDdEM7UUFDRCxNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFDUSxXQUFXOztRQUNsQixNQUFBLElBQUksQ0FBQyxTQUFTLDBDQUFFLGVBQWUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDO1FBQzdELEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOzttSEF6RlUscUJBQXFCO3VHQUFyQixxQkFBcUIsb05DWGxDLDR1REFrQmM7NEZEUEQscUJBQXFCO2tCQUxqQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFdBQVcsRUFBRSxnQ0FBZ0M7b0JBQzdDLE1BQU0sRUFBRSxDQUFDLDBCQUEwQixDQUFDO2lCQUNyQzs0SkFJVSxLQUFLO3NCQUFiLEtBQUs7Z0JBQ2tCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVzs7QUF3RnhCLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQywwQkFBMEIsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIE5nWm9uZSwgVmlld0NoaWxkLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7IExvY2FsaXphYmxlU3RyaW5nLCBDaGFyYWN0ZXJDb3VudGVyIH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBTdHJpbmdFZGl0b3JWaWV3TW9kZWxCYXNlLCBDcmVhdG9yQmFzZSwgZWRpdGFibGVTdHJpbmdSZW5kZXJlck5hbWUgfSBmcm9tIFwic3VydmV5LWNyZWF0b3ItY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvck1vZGVsQ29tcG9uZW50IH0gZnJvbSBcIi4vY3JlYXRvci1tb2RlbC5jb21wb25lbnRcIjtcbmltcG9ydCB7IEFuZ3VsYXJDb21wb25lbnRGYWN0b3J5IH0gZnJvbSBcInN1cnZleS1hbmd1bGFyLXVpXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdmMtc3RyaW5nLWVkdGlvclwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3N0cmluZy1lZGl0b3IuY29tcG9uZW50Lmh0bWxcIixcbiAgc3R5bGVzOiBbXCI6aG9zdCB7IGRpc3BsYXk6IG5vbmU7IH1cIl1cbn0pXG5leHBvcnQgY2xhc3MgU3RyaW5nRWRpdG9yQ29tcG9uZW50IGV4dGVuZHMgQ3JlYXRvck1vZGVsQ29tcG9uZW50PFN0cmluZ0VkaXRvclZpZXdNb2RlbEJhc2U+IHtcbiAgcHVibGljIGJhc2VNb2RlbCE6IFN0cmluZ0VkaXRvclZpZXdNb2RlbEJhc2U7XG4gIHByaXZhdGUganVzdEZvY3VzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgQElucHV0KCkgbW9kZWwhOiBhbnk7XG4gIEBWaWV3Q2hpbGQoXCJjb250YWluZXJcIikgY29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRWxlbWVudD47XG4gIGNvbnN0cnVjdG9yKGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsIHZjcjogVmlld0NvbnRhaW5lclJlZiwgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSkge1xuICAgIHN1cGVyKGNkciwgdmNyKTtcbiAgfVxuICBwdWJsaWMgY3JlYXRlTW9kZWwoKTogdm9pZCB7XG4gICAgdGhpcy5iYXNlTW9kZWwgPSBuZXcgU3RyaW5nRWRpdG9yVmlld01vZGVsQmFzZSh0aGlzLmxvY1N0cmluZywgdGhpcy5jcmVhdG9yKTtcbiAgICB0aGlzLmJhc2VNb2RlbC5ibHVyRWRpdG9yID0gKCkgPT4ge1xuICAgICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5ibHVyKCk7XG4gICAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNwZWxsY2hlY2sgPSBmYWxzZTtcbiAgICB9O1xuICAgIHRoaXMuYmFzZU1vZGVsLmdldEVkaXRvckVsZW1lbnQgPSAoKSA9PiB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xuICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4gdGhpcy5iYXNlTW9kZWwuYWZ0ZXJSZW5kZXIoKSk7XG4gICAgfSk7XG4gIH1cbiAgcHVibGljIGdldCBsb2NTdHJpbmcoKTogTG9jYWxpemFibGVTdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLmxvY1N0cjtcbiAgfVxuICBwdWJsaWMgZ2V0IGNyZWF0b3IoKTogQ3JlYXRvckJhc2Uge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLmNyZWF0b3I7XG4gIH1cbiAgcHJvdGVjdGVkIGdldE1vZGVsKCk6IFN0cmluZ0VkaXRvclZpZXdNb2RlbEJhc2Uge1xuICAgIHJldHVybiB0aGlzLmJhc2VNb2RlbDtcbiAgfVxuICBwcm90ZWN0ZWQgZ2V0UHJvcGVydGllc1RvVHJhY2soKTogc3RyaW5nW10ge1xuICAgIHJldHVybiBbXCJjcmVhdG9yXCIsIFwibG9jU3RyaW5nXCJdO1xuICB9XG4gIHB1YmxpYyBnZXQgcGxhY2Vob2xkZXIoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwucGxhY2Vob2xkZXI7XG4gIH1cbiAgcHVibGljIGdldCBjb250ZW50RWRpdGFibGUoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmNvbnRlbnRFZGl0YWJsZTtcbiAgfVxuICBwdWJsaWMgZ2V0IGNoYXJhY3RlckNvdW50ZXIoKTogQ2hhcmFjdGVyQ291bnRlciB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmNoYXJhY3RlckNvdW50ZXI7XG4gIH1cbiAgcHVibGljIGdldCBzaG93Q2hhcmFjdGVyQ291bnRlcigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwuc2hvd0NoYXJhY3RlckNvdW50ZXI7XG4gIH1cbiAgcHVibGljIGdldCBnZXRDaGFyYWN0ZXJDb3VudGVyQ2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwuZ2V0Q2hhcmFjdGVyQ291bnRlckNsYXNzO1xuICB9XG5cbiAgcHVibGljIGdldCBjbGFzc05hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwuY2xhc3NOYW1lKHRoaXMubG9jU3RyaW5nLnJlbmRlcmVkSHRtbCk7XG4gIH1cbiAgcHVibGljIGdldCBlcnJvclRleHQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwuZXJyb3JUZXh0O1xuICB9XG4gIHB1YmxpYyBnZXQgZWRpdFZhbHVlKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmZvY3VzZWQgJiYgdGhpcy5iYXNlTW9kZWwuZWRpdEFzVGV4dCAmJiB0aGlzLmxvY1N0cmluZy50ZXh0IHx8IHRoaXMubG9jU3RyaW5nLnJlbmRlcmVkSHRtbDtcbiAgfVxuICBvbkNoYW5nZUhhbmRsZXIgPSAoKTogdm9pZCA9PiB7XG4gICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cbiAgcHVibGljIG9uQmx1cihldmVudDogYW55KTogc3RyaW5nIHtcbiAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LnNwZWxsY2hlY2sgPSBmYWxzZTtcbiAgICAoPGFueT50aGlzLmxvY1N0cmluZykuX19pc0VkaXRpbmcgPSBmYWxzZTtcbiAgICB0aGlzLmp1c3RGb2N1c2VkID0gZmFsc2U7XG4gICAgdGhpcy5iYXNlTW9kZWwub25CbHVyKGV2ZW50KTtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWwuZXJyb3JUZXh0O1xuICB9XG4gIHB1YmxpYyBvbkZvY3VzKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmJhc2VNb2RlbC5vbkZvY3VzKGV2ZW50KTtcbiAgICB0aGlzLmp1c3RGb2N1c2VkID0gdHJ1ZTtcbiAgfVxuICBwdWJsaWMgZG9uZShldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5iYXNlTW9kZWwuZG9uZShldmVudCk7XG4gICAgKDxhbnk+dGhpcy5sb2NTdHJpbmcpLl9faXNFZGl0aW5nID0gZmFsc2U7XG4gIH1cbiAgcHVibGljIGVkaXQoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAoPGFueT50aGlzLmxvY1N0cmluZykuX19pc0VkaXRpbmcgPSB0cnVlO1xuICAgIHRoaXMuYmFzZU1vZGVsLm9uQ2xpY2soZXZlbnQpO1xuICB9XG4gIG92ZXJyaWRlIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nT25Jbml0KCk7XG4gICAgaWYgKCg8YW55PnRoaXMubG9jU3RyaW5nKS5fX2lzRWRpdGluZykge1xuICAgICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cbiAgICB0aGlzLmxvY1N0cmluZz8ub25TdHJpbmdDaGFuZ2VkLmFkZCh0aGlzLm9uQ2hhbmdlSGFuZGxlcik7XG4gIH1cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5sb2NTdHJpbmc/Lm9uU3RyaW5nQ2hhbmdlZC5yZW1vdmUodGhpcy5vbkNoYW5nZUhhbmRsZXIpO1xuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoZWRpdGFibGVTdHJpbmdSZW5kZXJlck5hbWUsIFN0cmluZ0VkaXRvckNvbXBvbmVudCk7IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPHNwYW4gW2NsYXNzXT1cImNsYXNzTmFtZVwiPlxuICAgIDxzcGFuIGNsYXNzPVwic3ZjLXN0cmluZy1lZGl0b3JfX2NvbnRlbnRcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInN2Yy1zdHJpbmctZWRpdG9yX19ib3JkZXJcIj5cbiAgICAgICAgICA8c3ZnIFtpY29uTmFtZV09XCInaWNvbi1hcnJvdy11cCdcIiBjbGFzcz1cInN2Yy1zdHJpbmctZWRpdG9yX19idXR0b24gc3ZjLXN0cmluZy1lZGl0b3JfX2J1dHRvbi0tZWRpdFwiIFtzaXplXT1cIjI0XCIgc3Ytbmctc3ZnLWljb24gXG4gICAgICAgICAgICAoY2xpY2spPVwiZWRpdCgkZXZlbnQpXCIgW2ljb25OYW1lXT1cIidpY29uLWVkaXQnXCIgW3NpemVdPVwiMTZcIj48L3N2Zz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwic3ZjLXN0cmluZy1lZGl0b3JfX2lucHV0XCI+XG4gICAgICAgICAgPHNwYW4gcm9sZT1cInRleHRib3hcIiAqbmdJZj1cIiFsb2NTdHJpbmcuaGFzSHRtbFwiIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvclwiIHNwZWxsY2hlY2s9XCJmYWxzZVwiXG4gICAgICAgICAgICAgIChmb2N1cyk9XCJvbkZvY3VzKCRldmVudClcIiAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiICAoaW5wdXQpPVwiYmFzZU1vZGVsLm9uSW5wdXQoJGV2ZW50KVwiIChrZXlkb3duKT1cImJhc2VNb2RlbC5vbktleURvd24oJGV2ZW50KVwiIChrZXl1cCk9XCJiYXNlTW9kZWwub25LZXlVcCgkZXZlbnQpXCIgKG1vdXNldXApPVwiYmFzZU1vZGVsLm9uTW91c2VVcCgkZXZlbnQpXCIgKGNsaWNrKT1cImVkaXQoJGV2ZW50KVwiIFt0ZXh0Q29udGVudF09XCJlZGl0VmFsdWVcIiBbYXR0ci5hcmlhLXBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cImNvbnRlbnRFZGl0YWJsZVwiICNjb250YWluZXI+PC9zcGFuPlxuICAgICAgICAgIDxzcGFuIHJvbGU9XCJ0ZXh0Ym94XCIgKm5nSWY9XCJsb2NTdHJpbmcuaGFzSHRtbFwiIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvciBzdi1zdHJpbmctZWRpdG9yLS1odG1sXCIgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCIgKGJsdXIpPVwib25CbHVyKCRldmVudClcIiAoa2V5ZG93bik9XCJiYXNlTW9kZWwub25LZXlEb3duKCRldmVudClcIiAoa2V5dXApPVwiYmFzZU1vZGVsLm9uS2V5VXAoJGV2ZW50KVwiIChtb3VzZXVwKT1cImJhc2VNb2RlbC5vbk1vdXNlVXAoJGV2ZW50KVwiXG4gICAgICAgICAgKGNsaWNrKT1cImVkaXQoJGV2ZW50KVwiIFthdHRyLmFyaWEtcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbYXR0ci5jb250ZW50ZWRpdGFibGVdPVwiY29udGVudEVkaXRhYmxlXCIgW2lubmVySHRtbF09XCJlZGl0VmFsdWUgfCBzYWZlSHRtbFwiICNjb250YWluZXI+PC9zcGFuPlxuICAgICAgICAgIDxzdi1uZy1jaGFyYWN0ZXItY291bnRlciAqbmdJZj1cInNob3dDaGFyYWN0ZXJDb3VudGVyXCIgW2NvdW50ZXJdPVwiY2hhcmFjdGVyQ291bnRlclwiIFtyZW1haW5pbmdDaGFyYWN0ZXJDb3VudGVyXT1cImdldENoYXJhY3RlckNvdW50ZXJDbGFzc1wiPjwvc3YtbmctY2hhcmFjdGVyLWNvdW50ZXI+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nSWY9XCJlcnJvclRleHRcIiBjbGFzcz1cInN2Yy1zdHJpbmctZWRpdG9yX19lcnJvclwiPnt7ZXJyb3JUZXh0fX08L3NwYW4+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+Il19
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RyaW5nLWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvc3RyaW5nLWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQW9DLFNBQVMsRUFBYyxLQUFLLEVBQVUsU0FBUyxFQUFvQixNQUFNLGVBQWUsQ0FBQztBQUVwSSxPQUFPLEVBQUUseUJBQXlCLEVBQWUsMEJBQTBCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN6RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQU81RCxNQUFNLE9BQU8scUJBQXNCLFNBQVEscUJBQWdEO0lBS3pGLFlBQVksR0FBc0IsRUFBRSxHQUFxQixFQUFVLE1BQWM7UUFDL0UsS0FBSyxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQURpRCxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBSHpFLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBc0RyQyxvQkFBZSxHQUFHLEdBQVMsRUFBRTtZQUMzQixJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFBO0lBbkRELENBQUM7SUFDTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyxHQUFHLEVBQUU7WUFDL0IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDcEMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUNs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QyxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDL0IsSUFBSSxDQUFDLFNBQVUsQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDO1FBQ3pDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2hDLENBQUM7SUFDUSxRQUFROztRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFVLElBQUksQ0FBQyxTQUFVLENBQUMsV0FBVyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ3RDO1FBQ0QsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBQ1EsV0FBVzs7UUFDbEIsTUFBQSxJQUFJLENBQUMsU0FBUywwQ0FBRSxlQUFlLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM3RCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdEIsQ0FBQzs7bUhBNUZVLHFCQUFxQjt1R0FBckIscUJBQXFCLG9OQ1hsQyx3d0RBa0JjOzRGRFBELHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsbUJBQW1CO29CQUM3QixXQUFXLEVBQUUsZ0NBQWdDO29CQUM3QyxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDckM7NEpBSVUsS0FBSztzQkFBYixLQUFLO2dCQUNrQixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7O0FBMkZ4Qix1QkFBdUIsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsMEJBQTBCLEVBQUUscUJBQXFCLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBOZ1pvbmUsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBMb2NhbGl6YWJsZVN0cmluZywgQ2hhcmFjdGVyQ291bnRlciB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgU3RyaW5nRWRpdG9yVmlld01vZGVsQmFzZSwgQ3JlYXRvckJhc2UsIGVkaXRhYmxlU3RyaW5nUmVuZGVyZXJOYW1lIH0gZnJvbSBcInN1cnZleS1jcmVhdG9yLWNvcmVcIjtcbmltcG9ydCB7IENyZWF0b3JNb2RlbENvbXBvbmVudCB9IGZyb20gXCIuL2NyZWF0b3ItbW9kZWwuY29tcG9uZW50XCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSB9IGZyb20gXCJzdXJ2ZXktYW5ndWxhci11aVwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwic3ZjLXN0cmluZy1lZHRpb3JcIixcbiAgdGVtcGxhdGVVcmw6IFwiLi9zdHJpbmctZWRpdG9yLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW1wiOmhvc3QgeyBkaXNwbGF5OiBub25lOyB9XCJdXG59KVxuZXhwb3J0IGNsYXNzIFN0cmluZ0VkaXRvckNvbXBvbmVudCBleHRlbmRzIENyZWF0b3JNb2RlbENvbXBvbmVudDxTdHJpbmdFZGl0b3JWaWV3TW9kZWxCYXNlPiB7XG4gIHB1YmxpYyBiYXNlTW9kZWwhOiBTdHJpbmdFZGl0b3JWaWV3TW9kZWxCYXNlO1xuICBwcml2YXRlIGp1c3RGb2N1c2VkOiBib29sZWFuID0gZmFsc2U7XG4gIEBJbnB1dCgpIG1vZGVsITogYW55O1xuICBAVmlld0NoaWxkKFwiY29udGFpbmVyXCIpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuICBjb25zdHJ1Y3RvcihjZHI6IENoYW5nZURldGVjdG9yUmVmLCB2Y3I6IFZpZXdDb250YWluZXJSZWYsIHByaXZhdGUgbmdab25lOiBOZ1pvbmUpIHtcbiAgICBzdXBlcihjZHIsIHZjcik7XG4gIH1cbiAgcHVibGljIGNyZWF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIHRoaXMuYmFzZU1vZGVsID0gbmV3IFN0cmluZ0VkaXRvclZpZXdNb2RlbEJhc2UodGhpcy5sb2NTdHJpbmcsIHRoaXMuY3JlYXRvcik7XG4gICAgdGhpcy5iYXNlTW9kZWwuYmx1ckVkaXRvciA9ICgpID0+IHtcbiAgICAgIHRoaXMuY29udGFpbmVyLm5hdGl2ZUVsZW1lbnQuYmx1cigpO1xuICAgICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zcGVsbGNoZWNrID0gZmFsc2U7XG4gICAgfTtcbiAgICB0aGlzLmJhc2VNb2RlbC5nZXRFZGl0b3JFbGVtZW50ID0gKCkgPT4gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudDtcbiAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHRoaXMuYmFzZU1vZGVsLmFmdGVyUmVuZGVyKCkpO1xuICAgIH0pO1xuICB9XG4gIHB1YmxpYyBnZXQgbG9jU3RyaW5nKCk6IExvY2FsaXphYmxlU3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbC5sb2NTdHI7XG4gIH1cbiAgcHVibGljIGdldCBjcmVhdG9yKCk6IENyZWF0b3JCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbC5jcmVhdG9yO1xuICB9XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBTdHJpbmdFZGl0b3JWaWV3TW9kZWxCYXNlIHtcbiAgICByZXR1cm4gdGhpcy5iYXNlTW9kZWw7XG4gIH1cbiAgcHJvdGVjdGVkIGdldFByb3BlcnRpZXNUb1RyYWNrKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW1wiY3JlYXRvclwiLCBcImxvY1N0cmluZ1wiXTtcbiAgfVxuICBwdWJsaWMgZ2V0IHBsYWNlaG9sZGVyKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLnBsYWNlaG9sZGVyO1xuICB9XG4gIHB1YmxpYyBnZXQgY29udGVudEVkaXRhYmxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmJhc2VNb2RlbC5jb250ZW50RWRpdGFibGU7XG4gIH1cbiAgcHVibGljIGdldCBjaGFyYWN0ZXJDb3VudGVyKCk6IENoYXJhY3RlckNvdW50ZXIge1xuICAgIHJldHVybiB0aGlzLmJhc2VNb2RlbC5jaGFyYWN0ZXJDb3VudGVyO1xuICB9XG4gIHB1YmxpYyBnZXQgc2hvd0NoYXJhY3RlckNvdW50ZXIoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLnNob3dDaGFyYWN0ZXJDb3VudGVyO1xuICB9XG4gIHB1YmxpYyBnZXQgZ2V0Q2hhcmFjdGVyQ291bnRlckNsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmdldENoYXJhY3RlckNvdW50ZXJDbGFzcztcbiAgfVxuXG4gIHB1YmxpYyBnZXQgY2xhc3NOYW1lKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmNsYXNzTmFtZSh0aGlzLmxvY1N0cmluZy5yZW5kZXJlZEh0bWwpO1xuICB9XG4gIHB1YmxpYyBnZXQgZXJyb3JUZXh0KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmVycm9yVGV4dDtcbiAgfVxuICBwdWJsaWMgZ2V0IGVkaXRWYWx1ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmJhc2VNb2RlbC5mb2N1c2VkICYmIHRoaXMuYmFzZU1vZGVsLmVkaXRBc1RleHQgJiYgdGhpcy5sb2NTdHJpbmcudGV4dCB8fCB0aGlzLmxvY1N0cmluZy5yZW5kZXJlZEh0bWw7XG4gIH1cbiAgb25DaGFuZ2VIYW5kbGVyID0gKCk6IHZvaWQgPT4ge1xuICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG4gIHB1YmxpYyBvbkJsdXIoZXZlbnQ6IGFueSk6IHN0cmluZyB7XG4gICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5zcGVsbGNoZWNrID0gZmFsc2U7XG4gICAgKDxhbnk+dGhpcy5sb2NTdHJpbmcpLl9faXNFZGl0aW5nID0gZmFsc2U7XG4gICAgdGhpcy5qdXN0Rm9jdXNlZCA9IGZhbHNlO1xuICAgIHRoaXMuYmFzZU1vZGVsLm9uQmx1cihldmVudCk7XG4gICAgcmV0dXJuIHRoaXMuYmFzZU1vZGVsLmVycm9yVGV4dDtcbiAgfVxuICBwdWJsaWMgb25Gb2N1cyhldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5iYXNlTW9kZWwub25Gb2N1cyhldmVudCk7XG4gICAgdGhpcy5qdXN0Rm9jdXNlZCA9IHRydWU7XG4gIH1cbiAgcHVibGljIG9uUGFzdGUoZXZlbnQ6IGFueSk6IHZvaWQge1xuICAgIHRoaXMuYmFzZU1vZGVsLm9uUGFzdGUoZXZlbnQpO1xuICB9XG4gIHB1YmxpYyBkb25lKGV2ZW50OiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLmJhc2VNb2RlbC5kb25lKGV2ZW50KTtcbiAgICAoPGFueT50aGlzLmxvY1N0cmluZykuX19pc0VkaXRpbmcgPSBmYWxzZTtcbiAgfVxuICBwdWJsaWMgZWRpdChldmVudDogYW55KTogdm9pZCB7XG4gICAgdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICg8YW55PnRoaXMubG9jU3RyaW5nKS5fX2lzRWRpdGluZyA9IHRydWU7XG4gICAgdGhpcy5iYXNlTW9kZWwub25DbGljayhldmVudCk7XG4gIH1cbiAgb3ZlcnJpZGUgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICBpZiAoKDxhbnk+dGhpcy5sb2NTdHJpbmcpLl9faXNFZGl0aW5nKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgfVxuICAgIHRoaXMubG9jU3RyaW5nPy5vblN0cmluZ0NoYW5nZWQuYWRkKHRoaXMub25DaGFuZ2VIYW5kbGVyKTtcbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLmxvY1N0cmluZz8ub25TdHJpbmdDaGFuZ2VkLnJlbW92ZSh0aGlzLm9uQ2hhbmdlSGFuZGxlcik7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgfVxufVxuXG5Bbmd1bGFyQ29tcG9uZW50RmFjdG9yeS5JbnN0YW5jZS5yZWdpc3RlckNvbXBvbmVudChlZGl0YWJsZVN0cmluZ1JlbmRlcmVyTmFtZSwgU3RyaW5nRWRpdG9yQ29tcG9uZW50KTsiLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8c3BhbiBbY2xhc3NdPVwiY2xhc3NOYW1lXCI+XG4gICAgPHNwYW4gY2xhc3M9XCJzdmMtc3RyaW5nLWVkaXRvcl9fY29udGVudFwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic3ZjLXN0cmluZy1lZGl0b3JfX2JvcmRlclwiPlxuICAgICAgICAgIDxzdmcgW2ljb25OYW1lXT1cIidpY29uLWFycm93LXVwJ1wiIGNsYXNzPVwic3ZjLXN0cmluZy1lZGl0b3JfX2J1dHRvbiBzdmMtc3RyaW5nLWVkaXRvcl9fYnV0dG9uLS1lZGl0XCIgW3NpemVdPVwiMjRcIiBzdi1uZy1zdmctaWNvbiBcbiAgICAgICAgICAgIChjbGljayk9XCJlZGl0KCRldmVudClcIiBbaWNvbk5hbWVdPVwiJ2ljb24tZWRpdCdcIiBbc2l6ZV09XCIxNlwiPjwvc3ZnPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJzdmMtc3RyaW5nLWVkaXRvcl9faW5wdXRcIj5cbiAgICAgICAgICA8c3BhbiByb2xlPVwidGV4dGJveFwiICpuZ0lmPVwiIWxvY1N0cmluZy5oYXNIdG1sXCIgY2xhc3M9XCJzdi1zdHJpbmctZWRpdG9yXCIgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgICAgICAgICAgKGZvY3VzKT1cIm9uRm9jdXMoJGV2ZW50KVwiIChwYXN0ZSk9XCJvblBhc3RlKCRldmVudClcIiAoYmx1cik9XCJvbkJsdXIoJGV2ZW50KVwiICAoaW5wdXQpPVwiYmFzZU1vZGVsLm9uSW5wdXQoJGV2ZW50KVwiIChrZXlkb3duKT1cImJhc2VNb2RlbC5vbktleURvd24oJGV2ZW50KVwiIChrZXl1cCk9XCJiYXNlTW9kZWwub25LZXlVcCgkZXZlbnQpXCIgKG1vdXNldXApPVwiYmFzZU1vZGVsLm9uTW91c2VVcCgkZXZlbnQpXCIgKGNsaWNrKT1cImVkaXQoJGV2ZW50KVwiIFt0ZXh0Q29udGVudF09XCJlZGl0VmFsdWVcIiBbYXR0ci5hcmlhLXBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCIgW2F0dHIuY29udGVudGVkaXRhYmxlXT1cImNvbnRlbnRFZGl0YWJsZVwiICNjb250YWluZXI+PC9zcGFuPlxuICAgICAgICAgIDxzcGFuIHJvbGU9XCJ0ZXh0Ym94XCIgKm5nSWY9XCJsb2NTdHJpbmcuaGFzSHRtbFwiIGNsYXNzPVwic3Ytc3RyaW5nLWVkaXRvciBzdi1zdHJpbmctZWRpdG9yLS1odG1sXCIgc3BlbGxjaGVjaz1cImZhbHNlXCJcbiAgICAgICAgICAoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQpXCIgKGJsdXIpPVwib25CbHVyKCRldmVudClcIiAoa2V5ZG93bik9XCJiYXNlTW9kZWwub25LZXlEb3duKCRldmVudClcIiAoa2V5dXApPVwiYmFzZU1vZGVsLm9uS2V5VXAoJGV2ZW50KVwiIChtb3VzZXVwKT1cImJhc2VNb2RlbC5vbk1vdXNlVXAoJGV2ZW50KVwiXG4gICAgICAgICAgKGNsaWNrKT1cImVkaXQoJGV2ZW50KVwiIFthdHRyLmFyaWEtcGxhY2Vob2xkZXJdPVwicGxhY2Vob2xkZXJcIiBbYXR0ci5jb250ZW50ZWRpdGFibGVdPVwiY29udGVudEVkaXRhYmxlXCIgW2lubmVySHRtbF09XCJlZGl0VmFsdWUgfCBzYWZlSHRtbFwiICNjb250YWluZXI+PC9zcGFuPlxuICAgICAgICAgIDxzdi1uZy1jaGFyYWN0ZXItY291bnRlciAqbmdJZj1cInNob3dDaGFyYWN0ZXJDb3VudGVyXCIgW2NvdW50ZXJdPVwiY2hhcmFjdGVyQ291bnRlclwiIFtyZW1haW5pbmdDaGFyYWN0ZXJDb3VudGVyXT1cImdldENoYXJhY3RlckNvdW50ZXJDbGFzc1wiPjwvc3YtbmctY2hhcmFjdGVyLWNvdW50ZXI+XG4gICAgICAgIDwvc3Bhbj5cbiAgICA8L3NwYW4+XG4gICAgPHNwYW4gKm5nSWY9XCJlcnJvclRleHRcIiBjbGFzcz1cInN2Yy1zdHJpbmctZWRpdG9yX19lcnJvclwiPnt7ZXJyb3JUZXh0fX08L3NwYW4+XG4gIDwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+Il19
@@ -22,7 +22,7 @@ export class SimulatorComponent extends BaseAngular {
22
22
  }
23
23
  }
24
24
  SimulatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SimulatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
25
- SimulatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" [style]=\"model.themeVariables\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
25
+ SimulatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
26
26
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SimulatorComponent, decorators: [{
27
27
  type: Component,
28
28
  args: [{
@@ -33,4 +33,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
33
33
  }], propDecorators: { model: [{
34
34
  type: Input
35
35
  }] } });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWJzL3ByZXZpZXcvc2ltdWxhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90YWJzL3ByZXZpZXcvc2ltdWxhdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBMkIsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFRekUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQWlDO0lBRTdELFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBQ0QsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDOztnSEFqQlUsa0JBQWtCO29HQUFsQixrQkFBa0IsMkdDVC9CLDB1Q0FjYzs0RkRMRCxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsV0FBVyxFQUFFLDRCQUE0QjtvQkFDekMsTUFBTSxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3JDOzhCQUVVLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnksIEJhc2VBbmd1bGFyIH0gZnJvbSBcInN1cnZleS1hbmd1bGFyLXVpXCI7XG5pbXBvcnQgeyBTdXJ2ZXlTaW11bGF0b3JNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY3JlYXRvci1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdXJ2ZXktc2ltdWxhdG9yXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vc2ltdWxhdG9yLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW1wiOmhvc3QgeyBkaXNwbGF5OiBub25lOyB9XCJdXG59KVxuZXhwb3J0IGNsYXNzIFNpbXVsYXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFN1cnZleVNpbXVsYXRvck1vZGVsPiB7XG4gIEBJbnB1dCgpIG1vZGVsITogU3VydmV5U2ltdWxhdG9yTW9kZWw7XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBTdXJ2ZXlTaW11bGF0b3JNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cbiAgcHVibGljIGdldCBzaW11bGF0b3JGcmFtZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLnNpbXVsYXRvckZyYW1lO1xuICB9XG4gIGFjdGl2YXRlWm9vbSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5kZXZpY2UgIT09IFwiZGVza3RvcFwiKSB7XG4gICAgICB0aGlzLm1vZGVsLmFjdGl2YXRlWm9vbSgpO1xuICAgIH1cbiAgfVxuICBkZWFjdGl2YXRlWm9vbSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5kZXZpY2UgIT09IFwiZGVza3RvcFwiKSB7XG4gICAgICB0aGlzLm1vZGVsLmRlYWN0aXZhdGVab29tKCk7XG4gICAgfVxuICB9XG59IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiBbY2xhc3NdPVwibW9kZWwuZ2V0Um9vdENzcygpXCIgW3N0eWxlXT1cIm1vZGVsLnRoZW1lVmFyaWFibGVzXCIgKGtleWRvd24pPVwibW9kZWwudHJ5VG9ab29tKCRldmVudCwgJGV2ZW50KVwiIChtb3VzZW92ZXIpPVwiYWN0aXZhdGVab29tKClcIiAobW91c2VvdXQpPVwiZGVhY3RpdmF0ZVpvb20oKVwiPlxuICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5oYXNGcmFtZVwiIGNsYXNzPVwic3ZkLXNpbXVsYXRvci13cmFwcGVyXCIgaWQ9XCJzdmQtc2ltdWxhdG9yLXdyYXBwZXJcIiBbc3R5bGUud2lkdGhdPVwic2ltdWxhdG9yRnJhbWUuZnJhbWVXaWR0aCArICdweCdcIiBbc3R5bGUuaGVpZ2h0XT1cInNpbXVsYXRvckZyYW1lLmZyYW1lSGVpZ2h0ICsgJ3B4J1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInN2ZC1zaW11bGF0b3ItZnJhbWVcIiBbc3R5bGUud2lkdGhdPVwic2ltdWxhdG9yRnJhbWUubGFuZHNjYXBlZEZyYW1lV2lkdGggKyAncHgnXCIgW3N0eWxlLmhlaWdodF09XCJzaW11bGF0b3JGcmFtZS5sYW5kc2NhcGVkRnJhbWVIZWlnaHQgKyAncHgnXCIgW2NsYXNzXT1cInNpbXVsYXRvckZyYW1lLmNzc0NsYXNzXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic3ZkLXNpbXVsYXRvclwiIFtzdHlsZS53aWR0aF09XCJzaW11bGF0b3JGcmFtZS5kZXZpY2VXaWR0aCArICdweCdcIiBbc3R5bGUuaGVpZ2h0XT1cInNpbXVsYXRvckZyYW1lLmRldmljZUhlaWdodCArICdweCdcIiBbc3R5bGUudHJhbnNmb3JtXT1cIidzY2FsZSgnICsgc2ltdWxhdG9yRnJhbWUuc2NhbGUgKyAnKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSknXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdmQtc2ltdWxhdG9yLWNvbnRlbnRcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6ICdzdXJ2ZXktd2lkZ2V0JywgZGF0YTogeyBtb2RlbDogbW9kZWwuc3VydmV5IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFtb2RlbC5oYXNGcmFtZVwiIGNsYXNzPVwic3ZkLXNpbXVsYXRvci1jb250ZW50XCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6ICdzdXJ2ZXktd2lkZ2V0JywgZGF0YTogeyBtb2RlbDogbW9kZWwuc3VydmV5IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltdWxhdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90YWJzL3ByZXZpZXcvc2ltdWxhdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3NyYy90YWJzL3ByZXZpZXcvc2ltdWxhdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBMkIsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7QUFRekUsTUFBTSxPQUFPLGtCQUFtQixTQUFRLFdBQWlDO0lBRTdELFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFDRCxJQUFXLGNBQWM7UUFDdkIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsWUFBWTtRQUNWLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7U0FDM0I7SUFDSCxDQUFDO0lBQ0QsY0FBYztRQUNaLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ25DLElBQUksQ0FBQyxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7U0FDN0I7SUFDSCxDQUFDOztnSEFqQlUsa0JBQWtCO29HQUFsQixrQkFBa0IsMkdDVC9CLHlzQ0FjYzs0RkRMRCxrQkFBa0I7a0JBTDlCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsV0FBVyxFQUFFLDRCQUE0QjtvQkFDekMsTUFBTSxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3JDOzhCQUVVLEtBQUs7c0JBQWIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnksIEJhc2VBbmd1bGFyIH0gZnJvbSBcInN1cnZleS1hbmd1bGFyLXVpXCI7XG5pbXBvcnQgeyBTdXJ2ZXlTaW11bGF0b3JNb2RlbCB9IGZyb20gXCJzdXJ2ZXktY3JlYXRvci1jb3JlXCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJzdXJ2ZXktc2ltdWxhdG9yXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vc2ltdWxhdG9yLmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlczogW1wiOmhvc3QgeyBkaXNwbGF5OiBub25lOyB9XCJdXG59KVxuZXhwb3J0IGNsYXNzIFNpbXVsYXRvckNvbXBvbmVudCBleHRlbmRzIEJhc2VBbmd1bGFyPFN1cnZleVNpbXVsYXRvck1vZGVsPiB7XG4gIEBJbnB1dCgpIG1vZGVsITogU3VydmV5U2ltdWxhdG9yTW9kZWw7XG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpOiBTdXJ2ZXlTaW11bGF0b3JNb2RlbCB7XG4gICAgcmV0dXJuIHRoaXMubW9kZWw7XG4gIH1cbiAgcHVibGljIGdldCBzaW11bGF0b3JGcmFtZSgpOiBhbnkge1xuICAgIHJldHVybiB0aGlzLm1vZGVsLnNpbXVsYXRvckZyYW1lO1xuICB9XG4gIGFjdGl2YXRlWm9vbSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5kZXZpY2UgIT09IFwiZGVza3RvcFwiKSB7XG4gICAgICB0aGlzLm1vZGVsLmFjdGl2YXRlWm9vbSgpO1xuICAgIH1cbiAgfVxuICBkZWFjdGl2YXRlWm9vbSgpIHtcbiAgICBpZiAodGhpcy5tb2RlbC5kZXZpY2UgIT09IFwiZGVza3RvcFwiKSB7XG4gICAgICB0aGlzLm1vZGVsLmRlYWN0aXZhdGVab29tKCk7XG4gICAgfVxuICB9XG59IiwiPG5nLXRlbXBsYXRlICN0ZW1wbGF0ZT5cbiAgPGRpdiBbY2xhc3NdPVwibW9kZWwuZ2V0Um9vdENzcygpXCIgKGtleWRvd24pPVwibW9kZWwudHJ5VG9ab29tKCRldmVudCwgJGV2ZW50KVwiIChtb3VzZW92ZXIpPVwiYWN0aXZhdGVab29tKClcIiAobW91c2VvdXQpPVwiZGVhY3RpdmF0ZVpvb20oKVwiPlxuICAgIDxkaXYgKm5nSWY9XCJtb2RlbC5oYXNGcmFtZVwiIGNsYXNzPVwic3ZkLXNpbXVsYXRvci13cmFwcGVyXCIgaWQ9XCJzdmQtc2ltdWxhdG9yLXdyYXBwZXJcIiBbc3R5bGUud2lkdGhdPVwic2ltdWxhdG9yRnJhbWUuZnJhbWVXaWR0aCArICdweCdcIiBbc3R5bGUuaGVpZ2h0XT1cInNpbXVsYXRvckZyYW1lLmZyYW1lSGVpZ2h0ICsgJ3B4J1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInN2ZC1zaW11bGF0b3ItZnJhbWVcIiBbc3R5bGUud2lkdGhdPVwic2ltdWxhdG9yRnJhbWUubGFuZHNjYXBlZEZyYW1lV2lkdGggKyAncHgnXCIgW3N0eWxlLmhlaWdodF09XCJzaW11bGF0b3JGcmFtZS5sYW5kc2NhcGVkRnJhbWVIZWlnaHQgKyAncHgnXCIgW2NsYXNzXT1cInNpbXVsYXRvckZyYW1lLmNzc0NsYXNzXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwic3ZkLXNpbXVsYXRvclwiIFtzdHlsZS53aWR0aF09XCJzaW11bGF0b3JGcmFtZS5kZXZpY2VXaWR0aCArICdweCdcIiBbc3R5bGUuaGVpZ2h0XT1cInNpbXVsYXRvckZyYW1lLmRldmljZUhlaWdodCArICdweCdcIiBbc3R5bGUudHJhbnNmb3JtXT1cIidzY2FsZSgnICsgc2ltdWxhdG9yRnJhbWUuc2NhbGUgKyAnKSB0cmFuc2xhdGUoLTUwJSwgLTUwJSknXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJzdmQtc2ltdWxhdG9yLWNvbnRlbnRcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6ICdzdXJ2ZXktd2lkZ2V0JywgZGF0YTogeyBtb2RlbDogbW9kZWwuc3VydmV5IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cIiFtb2RlbC5oYXNGcmFtZVwiIGNsYXNzPVwic3ZkLXNpbXVsYXRvci1jb250ZW50XCI+XG4gICAgICA8bmctdGVtcGxhdGUgW2NvbXBvbmVudF09XCJ7IG5hbWU6ICdzdXJ2ZXktd2lkZ2V0JywgZGF0YTogeyBtb2RlbDogbW9kZWwuc3VydmV5IH0gfVwiPjwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT4iXX0=
@@ -770,7 +770,7 @@ class SimulatorComponent extends BaseAngular {
770
770
  }
771
771
  }
772
772
  SimulatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SimulatorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
773
- SimulatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" [style]=\"model.themeVariables\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
773
+ SimulatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SimulatorComponent, selector: "survey-simulator", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div [class]=\"model.getRootCss()\" (keydown)=\"model.tryToZoom($event, $event)\" (mouseover)=\"activateZoom()\" (mouseout)=\"deactivateZoom()\">\n <div *ngIf=\"model.hasFrame\" class=\"svd-simulator-wrapper\" id=\"svd-simulator-wrapper\" [style.width]=\"simulatorFrame.frameWidth + 'px'\" [style.height]=\"simulatorFrame.frameHeight + 'px'\">\n <div class=\"svd-simulator-frame\" [style.width]=\"simulatorFrame.landscapedFrameWidth + 'px'\" [style.height]=\"simulatorFrame.landscapedFrameHeight + 'px'\" [class]=\"simulatorFrame.cssClass\"></div>\n <div class=\"svd-simulator\" [style.width]=\"simulatorFrame.deviceWidth + 'px'\" [style.height]=\"simulatorFrame.deviceHeight + 'px'\" [style.transform]=\"'scale(' + simulatorFrame.scale + ') translate(-50%, -50%)'\">\n <div class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n </div>\n <div *ngIf=\"!model.hasFrame\" class=\"svd-simulator-content\">\n <ng-template [component]=\"{ name: 'survey-widget', data: { model: model.survey } }\"></ng-template>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
774
774
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SimulatorComponent, decorators: [{
775
775
  type: Component,
776
776
  args: [{
@@ -907,6 +907,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
907
907
  }] });
908
908
  AngularComponentFactory.Instance.registerComponent("svc-add-new-question-btn", AddQuestionButtonComponent);
909
909
 
910
+ class QuestionCarryForwardComponent extends EmbeddedViewContentComponent {
911
+ }
912
+ QuestionCarryForwardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionCarryForwardComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
913
+ QuestionCarryForwardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div class=\"svc-carry-forward-panel\">\n <span>{{model.text}} </span>\n <span class=\"svc-carry-forward-panel__link\">\n <svc-action-button [text]=\"model.question.name\" [click]=\"model.onClick.bind(model)\">\n </svc-action-button>\n </span>\n </div>\n<ng-template>", styles: [":host { display: none }"], components: [{ type: ActionButtonComponent, selector: "svc-action-button", inputs: ["classes", "click", "selected", "disabled", "text", "title", "allowBubble"] }] });
914
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionCarryForwardComponent, decorators: [{
915
+ type: Component,
916
+ args: [{
917
+ selector: "svc-question-carryforward",
918
+ templateUrl: "./question-carryforward.component.html",
919
+ styles: [":host { display: none }"]
920
+ }]
921
+ }], propDecorators: { model: [{
922
+ type: Input
923
+ }] } });
924
+ AngularComponentFactory.Instance.registerComponent("svc-question-carryforward", QuestionCarryForwardComponent);
925
+
910
926
  class QuestionDesignerComponent extends CreatorModelComponent {
911
927
  constructor() {
912
928
  super(...arguments);
@@ -949,7 +965,7 @@ class QuestionDesignerComponent extends CreatorModelComponent {
949
965
  }
950
966
  }
951
967
  QuestionDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
952
- QuestionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDesignerComponent, selector: "svc-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
968
+ QuestionDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDesignerComponent, selector: "svc-question", inputs: { componentName: "componentName", componentData: "componentData" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n <svc-question-carryforward *ngIf=\"adorner.isUsingCarryForward\" [model]=\"adorner.createCarryForwardParams()\">\n </svc-question-carryforward>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
953
969
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDesignerComponent, decorators: [{
954
970
  type: Component,
955
971
  args: [{
@@ -1074,7 +1090,7 @@ class QuestionDropdownDesignerComponent extends QuestionDesignerComponent {
1074
1090
  }
1075
1091
  }
1076
1092
  QuestionDropdownDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDropdownDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1077
- QuestionDropdownDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDropdownDesignerComponent, selector: "svc-dropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1093
+ QuestionDropdownDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionDropdownDesignerComponent, selector: "svc-dropdown-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n <svc-question-carryforward *ngIf=\"adorner.isUsingCarryForward\" [model]=\"adorner.createCarryForwardParams()\">\n </svc-question-carryforward>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1078
1094
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionDropdownDesignerComponent, decorators: [{
1079
1095
  type: Component,
1080
1096
  args: [{
@@ -1141,7 +1157,7 @@ class QuestionImageDesignerComponent extends QuestionDesignerComponent {
1141
1157
  }
1142
1158
  }
1143
1159
  QuestionImageDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionImageDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1144
- QuestionImageDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionImageDesignerComponent, selector: "svc-image-question", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1160
+ QuestionImageDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionImageDesignerComponent, selector: "svc-image-question", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n <svc-question-carryforward *ngIf=\"adorner.isUsingCarryForward\" [model]=\"adorner.createCarryForwardParams()\">\n </svc-question-carryforward>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1145
1161
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionImageDesignerComponent, decorators: [{
1146
1162
  type: Component,
1147
1163
  args: [{
@@ -1288,6 +1304,9 @@ class StringEditorComponent extends CreatorModelComponent {
1288
1304
  this.baseModel.onFocus(event);
1289
1305
  this.justFocused = true;
1290
1306
  }
1307
+ onPaste(event) {
1308
+ this.baseModel.onPaste(event);
1309
+ }
1291
1310
  done(event) {
1292
1311
  this.baseModel.done(event);
1293
1312
  this.locString.__isEditing = false;
@@ -1312,7 +1331,7 @@ class StringEditorComponent extends CreatorModelComponent {
1312
1331
  }
1313
1332
  }
1314
1333
  StringEditorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ViewContainerRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
1315
- StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "svc-string-edtior", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span class=\"svc-string-editor__input\">\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (input)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [textContent]=\"editValue\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor sv-string-editor--html\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue | safeHtml\" #container></span>\n <sv-ng-character-counter *ngIf=\"showCharacterCounter\" [counter]=\"characterCounter\" [remainingCharacterCounter]=\"getCharacterCounterClass\"></sv-ng-character-counter>\n </span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "safeHtml": i1.SafeHtmlPipe } });
1334
+ StringEditorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: StringEditorComponent, selector: "svc-string-edtior", inputs: { model: "model" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span [class]=\"className\">\n <span class=\"svc-string-editor__content\">\n <div class=\"svc-string-editor__border\">\n <svg [iconName]=\"'icon-arrow-up'\" class=\"svc-string-editor__button svc-string-editor__button--edit\" [size]=\"24\" sv-ng-svg-icon \n (click)=\"edit($event)\" [iconName]=\"'icon-edit'\" [size]=\"16\"></svg>\n </div>\n <span class=\"svc-string-editor__input\">\n <span role=\"textbox\" *ngIf=\"!locString.hasHtml\" class=\"sv-string-editor\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (paste)=\"onPaste($event)\" (blur)=\"onBlur($event)\" (input)=\"baseModel.onInput($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\" (click)=\"edit($event)\" [textContent]=\"editValue\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" #container></span>\n <span role=\"textbox\" *ngIf=\"locString.hasHtml\" class=\"sv-string-editor sv-string-editor--html\" spellcheck=\"false\"\n (focus)=\"onFocus($event)\" (blur)=\"onBlur($event)\" (keydown)=\"baseModel.onKeyDown($event)\" (keyup)=\"baseModel.onKeyUp($event)\" (mouseup)=\"baseModel.onMouseUp($event)\"\n (click)=\"edit($event)\" [attr.aria-placeholder]=\"placeholder\" [attr.contenteditable]=\"contentEditable\" [innerHtml]=\"editValue | safeHtml\" #container></span>\n <sv-ng-character-counter *ngIf=\"showCharacterCounter\" [counter]=\"characterCounter\" [remainingCharacterCounter]=\"getCharacterCounterClass\"></sv-ng-character-counter>\n </span>\n </span>\n <span *ngIf=\"errorText\" class=\"svc-string-editor__error\">{{errorText}}</span>\n </span>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.CharacterCounterComponent, selector: "sv-ng-character-counter", inputs: ["counter", "remainingCharacterCounter"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "safeHtml": i1.SafeHtmlPipe } });
1316
1335
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: StringEditorComponent, decorators: [{
1317
1336
  type: Component,
1318
1337
  args: [{
@@ -1590,7 +1609,7 @@ class QuestionRatingDesignerComponent extends QuestionDesignerComponent {
1590
1609
  }
1591
1610
  }
1592
1611
  QuestionRatingDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionRatingDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1593
- QuestionRatingDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionRatingDesignerComponent, selector: "svc-rating-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1612
+ QuestionRatingDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionRatingDesignerComponent, selector: "svc-rating-question", usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div *ngIf=\"adorner\" class=\"svc-question__adorner\" [class]=\"adorner.rootCss()\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.currentTarget)\"\n [attr.data-sv-drop-target-survey-element]=\"adorner.element.name || null\" #container>\n\n <div [class]=\"adorner.css()\" [key2click] (click)=\"adorner.select(adorner, $event)\">\n <div *ngIf=\"adorner.allowDragging\" class=\"svc-question__drag-area\" (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"24\"\n sv-ng-svg-icon></svg>\n </div>\n\n <ng-template [component]=\"{ name: componentName, data: componentData }\"></ng-template>\n <div *ngIf=\"adorner.isEmptyElement && !showPlaceholderComponent\" class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{ adorner.placeholderText }}</div>\n </div>\n <ng-template *ngIf=\"adorner.isEmptyElement && !!showPlaceholderComponent\"\n [component]=\"{ name: placeholderComponent, data: placeholderComponentData }\">\n </ng-template>\n <svc-question-carryforward *ngIf=\"adorner.isUsingCarryForward\" [model]=\"adorner.createCarryForwardParams()\">\n </svc-question-carryforward>\n\n <ng-template *ngIf=\"adornerComponent\"\n [component]=\"{ name: adornerComponent, data: { adorner: adorner, question: model } }\">\n </ng-template>\n\n <div class=\"svc-question__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" [handleClick]=\"false\"></sv-action-bar>\n </div>\n </div>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: QuestionCarryForwardComponent, selector: "svc-question-carryforward", inputs: ["model"] }, { type: i1.ActionBarComponent, selector: "sv-action-bar, sv-ng-action-bar", inputs: ["model", "handleClick"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.Key2ClickDirective, selector: "[key2click]", inputs: ["key2click"] }, { type: i1.DynamicComponentDirective, selector: "[component]", inputs: ["component"] }] });
1594
1613
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionRatingDesignerComponent, decorators: [{
1595
1614
  type: Component,
1596
1615
  args: [{
@@ -1678,10 +1697,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1678
1697
  }] });
1679
1698
  AngularComponentFactory.Instance.registerComponent("spinedit-question", QuestionSpinEditorComponent);
1680
1699
 
1700
+ class ColorItemComponent extends BaseAngular {
1701
+ getModel() {
1702
+ return this.model;
1703
+ }
1704
+ getStyle() {
1705
+ return { backgroundColor: this.model.value };
1706
+ }
1707
+ }
1708
+ ColorItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ColorItemComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1709
+ ColorItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ColorItemComponent, selector: "svc-color-item", inputs: { model: "model" }, usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <span class=\"spg-color-editor__color-swatch\" [style]=\"getStyle()\"></span>\n <sv-ng-string [model]=\"model.locTitle\"></sv-ng-string>\n</ng-template>", styles: [":host { display: none }"], components: [{ type: i1.SurveyStringComponent, selector: "sv-ng-string, '[sv-ng-string]'", inputs: ["model"] }] });
1710
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ColorItemComponent, decorators: [{
1711
+ type: Component,
1712
+ args: [{
1713
+ selector: "svc-color-item",
1714
+ templateUrl: "./color-item.component.html",
1715
+ styles: [":host { display: none }"]
1716
+ }]
1717
+ }], propDecorators: { model: [{
1718
+ type: Input
1719
+ }] } });
1720
+ AngularComponentFactory.Instance.registerComponent("color-item", ColorItemComponent);
1721
+
1681
1722
  class QuestionColorComponent extends QuestionAngular {
1682
1723
  }
1683
1724
  QuestionColorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionColorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
1684
- QuestionColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionColorComponent, selector: "svc-color", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.cssClasses.root\">\n <span [class]=\"model.cssClasses.swatch\" [style]=\"model.getSwatchStyle()\"></span>\n <input autocomplete=\"off\" \n [disabled]=\"model.isInputReadOnly\" \n [attr.id]=\"model.inputId\" \n [placeholder]=\"model.renderedPlaceholder\" \n [attr.aria-required]=\"model.ariaRequired\" \n [attr.aria-label]=\"model.ariaLabel\" \n [attr.aria-invalid]=\"model.ariaInvalid\" \n [attr.aria-describedby]=\"model.ariaDescribedBy\" \n (change)=\"model.onChange($event)\" \n (blur)=\"model.onBlur($event)\" \n (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\"\n [class]=\"model.cssClasses.control\"/> \n <label [class]=\"model.cssClasses.colorDropdown\">\n <svg [iconName]=\"model.cssClasses.colorDrodownIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <input type=\"color\" [class]=\"model.cssClasses.colorInput\" [value]=\"model.renderedValue\" (change)=\"model.onColorInputChange($event)\"/>\n </label>\n</div>", components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }] });
1725
+ QuestionColorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionColorComponent, selector: "svc-color", usesInheritance: true, ngImport: i0, template: "<div [class]=\"model.cssClasses.root\">\n <label [class]=\"model.cssClasses.swatch\" [style]=\"model.getSwatchStyle()\">\n <svg [iconName]=\"model.cssClasses.swatchIcon\" [size]=\"'auto'\" sv-ng-svg-icon></svg>\n <input type=\"color\" [class]=\"model.cssClasses.colorInput\" [value]=\"model.renderedValue\" (change)=\"model.onColorInputChange($event)\"/>\n </label>\n <input autocomplete=\"off\" \n [disabled]=\"model.isInputReadOnly\" \n [attr.id]=\"model.inputId\" \n [placeholder]=\"model.renderedPlaceholder\" \n [attr.aria-required]=\"model.ariaRequired\" \n [attr.aria-label]=\"model.ariaLabel\" \n [attr.aria-invalid]=\"model.ariaInvalid\" \n [attr.aria-describedby]=\"model.ariaDescribedBy\" \n (change)=\"model.onChange($event)\" \n (keyup)=\"model.onKeyUp($event)\" \n (blur)=\"model.onBlur($event)\" \n (beforeinput)=\"model.onBeforeInput($event)\"\n [value]=\"model.renderedValue\"\n [class]=\"model.cssClasses.control\"/> \n <ng-container *ngIf=\"model.showDropdownAction\">\n <sv-action-bar-item [model]=\"model.dropdownAction\"></sv-action-bar-item>\n <sv-ng-popup [popupModel]=\"model.dropdownAction.popupModel\" [visible]=\"false\"></sv-ng-popup>\n </ng-container>\n</div>", components: [{ type: i1.SvgIconComponent, selector: "'[sv-ng-svg-icon]'", inputs: ["size", "width", "height", "iconName", "partCss", "css", "title"] }, { type: i1.ActionBarItemComponent, selector: "sv-action-bar-item", inputs: ["model"] }, { type: i1.PopupComponent, selector: "sv-ng-popup, '[sv-ng-popup]'", inputs: ["popupModel"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.VisibleDirective, selector: "[visible]", inputs: ["visible"] }] });
1685
1726
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionColorComponent, decorators: [{
1686
1727
  type: Component,
1687
1728
  args: [{
@@ -1711,11 +1752,11 @@ SurveyCreatorModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", ver
1711
1752
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
1712
1753
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
1713
1754
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
1714
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent], imports: [CommonModule, FormsModule, SurveyModule], exports: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, SvgBundleComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarTabComponent, ObjectSelectorComponent, PropertyGridComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
1755
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionCarryForwardComponent], imports: [CommonModule, FormsModule, SurveyModule], exports: [CreatorComponent, DesignerTabComponent, PageDesignerComponent, QuestionDesignerComponent, PanelDesignerComponent, SvgBundleComponent, TabbledMenuComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, SidebarComponent, SidebarTabComponent, ObjectSelectorComponent, PropertyGridComponent, TextareaJsonEditorComponent, AceJsonEditorComponent, LogicTabComponent, LogicAddButtonComponent, ActionButtonComponent, LinkValueQuestionComponent, EmbeddedSurveyQuestionComponent, TranslationTabComponent, TranslationSkeletonComponent, SimulatorComponent, TestTabComponent, TestAgainActionComponent, SurveyResultsComponent, SurveyResultsTableRowComponent, ThemeTabComponent,
1715
1756
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
1716
1757
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
1717
1758
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
1718
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent] });
1759
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionCarryForwardComponent] });
1719
1760
  SurveyCreatorModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SurveyCreatorModule, providers: [], imports: [[
1720
1761
  CommonModule, FormsModule, SurveyModule
1721
1762
  ]] });
@@ -1726,7 +1767,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1726
1767
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
1727
1768
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
1728
1769
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
1729
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent],
1770
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionCarryForwardComponent],
1730
1771
  imports: [
1731
1772
  CommonModule, FormsModule, SurveyModule
1732
1773
  ],
@@ -1735,7 +1776,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1735
1776
  AdaptiveToolboxComponent, ToolboxToolComponent, ToolboxItemComponent, ToolboxCategoryComponent, StringEditorComponent, PageNavigatorComponent, PageNavigatorItemComponent,
1736
1777
  QuestionDropdownDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionImageAdornerDesignerComponent,
1737
1778
  ItemValueDesignerComponent, ImageItemValueDesignerComponent, LogicOperatorComponent, MatrixCellComponent, QuestionEditorComponent, CellQuestionDropdownComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, CellQuestionComponent, QuestionWidgetDesignerComponent, ToolboxComponent, CreatorLogoImageComponent,
1738
- QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent
1779
+ QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, ColorItemComponent, QuestionColorComponent, QuestionFileEditorComponent, AddQuestionButtonComponent, QuestionCarryForwardComponent
1739
1780
  ],
1740
1781
  providers: [],
1741
1782
  }]
@@ -1745,5 +1786,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
1745
1786
  * Generated bundle index. Do not edit.
1746
1787
  */
1747
1788
 
1748
- export { AceJsonEditorComponent, ActionButtonComponent, AdaptiveToolboxComponent, AddQuestionButtonComponent, CellQuestionComponent, CellQuestionDropdownComponent, CreatorComponent, CreatorLogoImageComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, DesignerTabComponent, EmbeddedSurveyQuestionComponent, ImageItemValueDesignerComponent, ItemValueDesignerComponent, LinkValueQuestionComponent, LogicAddButtonComponent, LogicOperatorComponent, LogicTabComponent, MatrixCellComponent, ObjectSelectorComponent, PageDesignerComponent, PageNavigatorComponent, PageNavigatorItemComponent, PanelDesignerComponent, PropertyGridComponent, QuestionColorComponent, QuestionDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionDropdownDesignerComponent, QuestionEditorComponent, QuestionFileEditorComponent, QuestionImageAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionWidgetDesignerComponent, SidebarComponent, SidebarTabComponent, SimulatorComponent, StringEditorComponent, SurveyCreatorModule, SurveyResultsComponent, SurveyResultsTableRowComponent, SvgBundleComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, TabbledMenuComponent, TestAgainActionComponent, TestTabComponent, TextareaJsonEditorComponent, ThemeTabComponent, ToolboxCategoryComponent, ToolboxComponent, ToolboxItemComponent, ToolboxToolComponent, TranslationSkeletonComponent, TranslationTabComponent };
1789
+ export { AceJsonEditorComponent, ActionButtonComponent, AdaptiveToolboxComponent, AddQuestionButtonComponent, CellQuestionComponent, CellQuestionDropdownComponent, ColorItemComponent, CreatorComponent, CreatorLogoImageComponent, CreatorRowComponent, DesignerPagesComponent, DesignerSurveyComponent, DesignerTabComponent, EmbeddedSurveyQuestionComponent, ImageItemValueDesignerComponent, ItemValueDesignerComponent, LinkValueQuestionComponent, LogicAddButtonComponent, LogicOperatorComponent, LogicTabComponent, MatrixCellComponent, ObjectSelectorComponent, PageDesignerComponent, PageNavigatorComponent, PageNavigatorItemComponent, PanelDesignerComponent, PropertyGridComponent, QuestionCarryForwardComponent, QuestionColorComponent, QuestionDesignerComponent, QuestionDropdownAdornerDesignerComponent, QuestionDropdownDesignerComponent, QuestionEditorComponent, QuestionFileEditorComponent, QuestionImageAdornerDesignerComponent, QuestionImageDesignerComponent, QuestionRatingAdornerDesignerComponent, QuestionRatingDesignerComponent, QuestionSpinEditorComponent, QuestionWidgetDesignerComponent, SidebarComponent, SidebarTabComponent, SimulatorComponent, StringEditorComponent, SurveyCreatorModule, SurveyResultsComponent, SurveyResultsTableRowComponent, SvgBundleComponent, TabbedMenuItemComponent, TabbedMenuItemWrapperComponent, TabbledMenuComponent, TestAgainActionComponent, TestTabComponent, TextareaJsonEditorComponent, ThemeTabComponent, ToolboxCategoryComponent, ToolboxComponent, ToolboxItemComponent, ToolboxToolComponent, TranslationSkeletonComponent, TranslationTabComponent };
1749
1790
  //# sourceMappingURL=survey-creator-angular.js.map