UNPKG

survey-creator-angular

Version:

Use SurveyJS Creator to create or edit JSON for SurveyJS Form Library.

64 lines 12.4 kB
import { Component, ElementRef, Input, ViewChild } from "@angular/core"; import { AngularComponentFactory } from "survey-angular-ui"; import { PageAdorner } from "survey-creator-core"; import { CreatorModelComponent } from "./creator-model.component"; import * as i0 from "@angular/core"; import * as i1 from "survey-angular-ui"; import * as i2 from "@angular/common"; export class PageDesignerComponent extends CreatorModelComponent { createModel() { if (this.adorner) { this.adorner.dispose(); } if (this.model) { this.adorner = new PageAdorner(this.creator, this.model); this.adorner.isGhost = this.isGhost; } } ngDoCheck() { super.ngDoCheck(); if (this.adorner) { this.adorner.isGhost = this.isGhost; } } getModel() { return this.adorner; } getPropertiesToTrack() { return ["creator", "model"]; } ngAfterViewChecked() { var _a; super.ngAfterViewChecked(); if (this.adorner && ((_a = this.container) === null || _a === void 0 ? void 0 : _a.nativeElement)) { this.adorner.rootElement = this.container.nativeElement; } } ngOnDestroy() { super.ngOnDestroy(); this.adorner.dispose(); } } PageDesignerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PageDesignerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); PageDesignerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PageDesignerComponent, selector: "svc-page", inputs: { model: "model", survey: "survey", creator: "creator", isGhost: "isGhost" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n<div *ngIf=\"model && adorner\" class=\"svc-page__content\" [class]=\"adorner.css\" [key2click]\n (click)=\"adorner.select(adorner, $event)\" (dblclick)=\"adorner.dblclick($event)\"\n (mouseover)=\"adorner.hover($event, $event.currentTarget)\" (mouseleave)=\"adorner.hover($event, $event.target)\"\n [id]=\"adorner.page.id\" [attr.data-sv-drop-target-survey-page]=\"adorner.dropTargetName\" #container>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--top\"></div>\n <div class=\"svc-question__drop-indicator svc-question__drop-indicator--bottom\"></div>\n <page [model]=\"model\" [survey]=\"survey\"></page>\n <div *ngIf=\"adorner.showPlaceholder\" class=\"svc-page__placeholder_frame\">\n <div class=\"svc-panel__placeholder_frame\">\n <div class=\"svc-panel__placeholder\">{{adorner.placeholderText}}</div>\n </div>\n </div>\n <div *ngIf=\"adorner.allowDragging && !adorner.isGhost\" class=\"svc-question__drag-area\"\n (pointerdown)=\"adorner.onPointerDown($event)\">\n <svg class=\"svc-question__drag-element\" [iconName]=\"'icon-drag-area-indicator_24x16'\" [size]=\"'auto'\"\n sv-ng-svg-icon></svg>\n <div class=\"svc-page__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\" #container></sv-action-bar>\n <sv-action-bar *ngIf=\"adorner.topActionContainer.hasActions\" [model]=\"adorner.topActionContainer\"></sv-action-bar>\n </div>\n </div>\n <div *ngIf=\"!adorner.allowDragging || adorner.isGhost\" class=\"svc-page__content-actions\">\n <sv-action-bar [model]=\"adorner.actionContainer\"></sv-action-bar>\n <sv-action-bar *ngIf=\"adorner.topActionContainer.hasActions\" [model]=\"adorner.topActionContainer\"></sv-action-bar>\n </div>\n <sv-action-bar [model]=\"adorner.footerActionsBar\"></sv-action-bar>\n</div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.PageComponent, selector: "page, sv-ng-page", inputs: ["model", "survey"] }, { 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"] }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PageDesignerComponent, decorators: [{ type: Component, args: [{ selector: "svc-page", templateUrl: "./page.component.html", styles: [":host { display: none; }"] }] }], propDecorators: { model: [{ type: Input }], survey: [{ type: Input }], creator: [{ type: Input }], isGhost: [{ type: Input }], container: [{ type: ViewChild, args: ["container", { read: ElementRef }] }] } }); AngularComponentFactory.Instance.registerComponent("svc-page", PageDesignerComponent); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcGFnZS5jb21wb25lbnQudHMiLCIuLi8uLi9zcmMvcGFnZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXFCLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBb0IsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLHVCQUF1QixFQUE2QyxNQUFNLG1CQUFtQixDQUFDO0FBRXZHLE9BQU8sRUFBc0IsV0FBVyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7Ozs7QUFPbEUsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHFCQUFrQztJQU9qRSxXQUFXO1FBQ25CLElBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRTtZQUNmLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7U0FDeEI7UUFDRCxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDZCxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3pELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7U0FDckM7SUFDSCxDQUFDO0lBQ1EsU0FBUztRQUNoQixLQUFLLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDbEIsSUFBRyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ2YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztTQUNyQztJQUNILENBQUM7SUFDUyxRQUFRO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBQ1Msb0JBQW9CO1FBQzVCLE9BQU8sQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUNlLGtCQUFrQjs7UUFDaEMsS0FBSyxDQUFDLGtCQUFrQixFQUFFLENBQUM7UUFDM0IsSUFBRyxJQUFJLENBQUMsT0FBTyxLQUFJLE1BQUEsSUFBSSxDQUFDLFNBQVMsMENBQUUsYUFBYSxDQUFBLEVBQUU7WUFDaEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7U0FDekQ7SUFDSCxDQUFDO0lBQ1EsV0FBVztRQUNsQixLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QixDQUFDOzttSEFyQ1UscUJBQXFCO3VHQUFyQixxQkFBcUIseU5BS0EsVUFBVSxvRENoQjVDLDYwREE0QmM7NEZEakJELHFCQUFxQjtrQkFMakMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsVUFBVTtvQkFDcEIsV0FBVyxFQUFFLHVCQUF1QjtvQkFDcEMsTUFBTSxFQUFFLENBQUMsMEJBQTBCLENBQUM7aUJBQ3JDOzhCQUVVLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSztnQkFDd0MsU0FBUztzQkFBdEQsU0FBUzt1QkFBQyxXQUFXLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFOztBQW1DOUMsdUJBQXVCLENBQUMsUUFBUSxDQUFDLGlCQUFpQixDQUFDLFVBQVUsRUFBRSxxQkFBcUIsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5wdXQsIFZpZXdDaGlsZCwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBBbmd1bGFyQ29tcG9uZW50RmFjdG9yeSwgQmFzZUFuZ3VsYXIsIEVtYmVkZGVkVmlld0NvbnRlbnRDb21wb25lbnQgfSBmcm9tIFwic3VydmV5LWFuZ3VsYXItdWlcIjtcbmltcG9ydCB7IFBhZ2VNb2RlbCwgU3VydmV5TW9kZWwgfSBmcm9tIFwic3VydmV5LWNvcmVcIjtcbmltcG9ydCB7IFN1cnZleUNyZWF0b3JNb2RlbCwgUGFnZUFkb3JuZXIgfSBmcm9tIFwic3VydmV5LWNyZWF0b3ItY29yZVwiO1xuaW1wb3J0IHsgQ3JlYXRvck1vZGVsQ29tcG9uZW50IH0gZnJvbSBcIi4vY3JlYXRvci1tb2RlbC5jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2Yy1wYWdlXCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vcGFnZS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBQYWdlRGVzaWduZXJDb21wb25lbnQgZXh0ZW5kcyBDcmVhdG9yTW9kZWxDb21wb25lbnQ8UGFnZUFkb3JuZXI+IHtcbiAgQElucHV0KCkgbW9kZWwhOiBQYWdlTW9kZWw7XG4gIEBJbnB1dCgpIHN1cnZleSE6IFN1cnZleU1vZGVsO1xuICBASW5wdXQoKSBjcmVhdG9yITogU3VydmV5Q3JlYXRvck1vZGVsO1xuICBASW5wdXQoKSBpc0dob3N0ITogYm9vbGVhbjtcbiAgQFZpZXdDaGlsZChcImNvbnRhaW5lclwiLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSkgY29udGFpbmVyITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD5cbiAgcHVibGljIGFkb3JuZXIhOiBQYWdlQWRvcm5lcjtcbiAgcHJvdGVjdGVkIGNyZWF0ZU1vZGVsKCk6IHZvaWQge1xuICAgIGlmKHRoaXMuYWRvcm5lcikge1xuICAgICAgdGhpcy5hZG9ybmVyLmRpc3Bvc2UoKTtcbiAgICB9XG4gICAgaWYgKHRoaXMubW9kZWwpIHtcbiAgICAgIHRoaXMuYWRvcm5lciA9IG5ldyBQYWdlQWRvcm5lcih0aGlzLmNyZWF0b3IsIHRoaXMubW9kZWwpO1xuICAgICAgdGhpcy5hZG9ybmVyLmlzR2hvc3QgPSB0aGlzLmlzR2hvc3Q7XG4gICAgfVxuICB9XG4gIG92ZXJyaWRlIG5nRG9DaGVjaygpOiB2b2lkIHtcbiAgICBzdXBlci5uZ0RvQ2hlY2soKTtcbiAgICBpZih0aGlzLmFkb3JuZXIpIHtcbiAgICAgIHRoaXMuYWRvcm5lci5pc0dob3N0ID0gdGhpcy5pc0dob3N0O1xuICAgIH1cbiAgfVxuICBwcm90ZWN0ZWQgZ2V0TW9kZWwoKTogUGFnZUFkb3JuZXIge1xuICAgIHJldHVybiB0aGlzLmFkb3JuZXI7XG4gIH1cbiAgcHJvdGVjdGVkIGdldFByb3BlcnRpZXNUb1RyYWNrKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gW1wiY3JlYXRvclwiLCBcIm1vZGVsXCJdO1xuICB9XG4gIHB1YmxpYyBvdmVycmlkZSBuZ0FmdGVyVmlld0NoZWNrZWQoKTogdm9pZCB7XG4gICAgc3VwZXIubmdBZnRlclZpZXdDaGVja2VkKCk7XG4gICAgaWYodGhpcy5hZG9ybmVyICYmIHRoaXMuY29udGFpbmVyPy5uYXRpdmVFbGVtZW50KSB7XG4gICAgICB0aGlzLmFkb3JuZXIucm9vdEVsZW1lbnQgPSB0aGlzLmNvbnRhaW5lci5uYXRpdmVFbGVtZW50O1xuICAgIH1cbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuYWRvcm5lci5kaXNwb3NlKCk7XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJzdmMtcGFnZVwiLCBQYWdlRGVzaWduZXJDb21wb25lbnQpO1xuXG4iLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuPGRpdiAqbmdJZj1cIm1vZGVsICYmIGFkb3JuZXJcIiBjbGFzcz1cInN2Yy1wYWdlX19jb250ZW50XCIgW2NsYXNzXT1cImFkb3JuZXIuY3NzXCIgW2tleTJjbGlja11cbiAgKGNsaWNrKT1cImFkb3JuZXIuc2VsZWN0KGFkb3JuZXIsICRldmVudClcIiAoZGJsY2xpY2spPVwiYWRvcm5lci5kYmxjbGljaygkZXZlbnQpXCJcbiAgKG1vdXNlb3Zlcik9XCJhZG9ybmVyLmhvdmVyKCRldmVudCwgJGV2ZW50LmN1cnJlbnRUYXJnZXQpXCIgKG1vdXNlbGVhdmUpPVwiYWRvcm5lci5ob3ZlcigkZXZlbnQsICRldmVudC50YXJnZXQpXCJcbiAgW2lkXT1cImFkb3JuZXIucGFnZS5pZFwiIFthdHRyLmRhdGEtc3YtZHJvcC10YXJnZXQtc3VydmV5LXBhZ2VdPVwiYWRvcm5lci5kcm9wVGFyZ2V0TmFtZVwiICNjb250YWluZXI+XG4gIDxkaXYgY2xhc3M9XCJzdmMtcXVlc3Rpb25fX2Ryb3AtaW5kaWNhdG9yIHN2Yy1xdWVzdGlvbl9fZHJvcC1pbmRpY2F0b3ItLXRvcFwiPjwvZGl2PlxuICA8ZGl2IGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19kcm9wLWluZGljYXRvciBzdmMtcXVlc3Rpb25fX2Ryb3AtaW5kaWNhdG9yLS1ib3R0b21cIj48L2Rpdj5cbiAgPHBhZ2UgW21vZGVsXT1cIm1vZGVsXCIgW3N1cnZleV09XCJzdXJ2ZXlcIj48L3BhZ2U+XG4gIDxkaXYgKm5nSWY9XCJhZG9ybmVyLnNob3dQbGFjZWhvbGRlclwiIGNsYXNzPVwic3ZjLXBhZ2VfX3BsYWNlaG9sZGVyX2ZyYW1lXCI+XG4gICAgPGRpdiBjbGFzcz1cInN2Yy1wYW5lbF9fcGxhY2Vob2xkZXJfZnJhbWVcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzdmMtcGFuZWxfX3BsYWNlaG9sZGVyXCI+e3thZG9ybmVyLnBsYWNlaG9sZGVyVGV4dH19PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2ICpuZ0lmPVwiYWRvcm5lci5hbGxvd0RyYWdnaW5nICYmICFhZG9ybmVyLmlzR2hvc3RcIiBjbGFzcz1cInN2Yy1xdWVzdGlvbl9fZHJhZy1hcmVhXCJcbiAgICAocG9pbnRlcmRvd24pPVwiYWRvcm5lci5vblBvaW50ZXJEb3duKCRldmVudClcIj5cbiAgICA8c3ZnIGNsYXNzPVwic3ZjLXF1ZXN0aW9uX19kcmFnLWVsZW1lbnRcIiBbaWNvbk5hbWVdPVwiJ2ljb24tZHJhZy1hcmVhLWluZGljYXRvcl8yNHgxNidcIiBbc2l6ZV09XCInYXV0bydcIlxuICAgICAgc3Ytbmctc3ZnLWljb24+PC9zdmc+XG4gICAgPGRpdiBjbGFzcz1cInN2Yy1wYWdlX19jb250ZW50LWFjdGlvbnNcIj5cbiAgICAgIDxzdi1hY3Rpb24tYmFyIFttb2RlbF09XCJhZG9ybmVyLmFjdGlvbkNvbnRhaW5lclwiICNjb250YWluZXI+PC9zdi1hY3Rpb24tYmFyPlxuICAgICAgPHN2LWFjdGlvbi1iYXIgKm5nSWY9XCJhZG9ybmVyLnRvcEFjdGlvbkNvbnRhaW5lci5oYXNBY3Rpb25zXCIgW21vZGVsXT1cImFkb3JuZXIudG9wQWN0aW9uQ29udGFpbmVyXCI+PC9zdi1hY3Rpb24tYmFyPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIiFhZG9ybmVyLmFsbG93RHJhZ2dpbmcgfHwgYWRvcm5lci5pc0dob3N0XCIgY2xhc3M9XCJzdmMtcGFnZV9fY29udGVudC1hY3Rpb25zXCI+XG4gICAgPHN2LWFjdGlvbi1iYXIgW21vZGVsXT1cImFkb3JuZXIuYWN0aW9uQ29udGFpbmVyXCI+PC9zdi1hY3Rpb24tYmFyPlxuICAgIDxzdi1hY3Rpb24tYmFyICpuZ0lmPVwiYWRvcm5lci50b3BBY3Rpb25Db250YWluZXIuaGFzQWN0aW9uc1wiIFttb2RlbF09XCJhZG9ybmVyLnRvcEFjdGlvbkNvbnRhaW5lclwiPjwvc3YtYWN0aW9uLWJhcj5cbiAgPC9kaXY+XG4gIDxzdi1hY3Rpb24tYmFyIFttb2RlbF09XCJhZG9ybmVyLmZvb3RlckFjdGlvbnNCYXJcIj48L3N2LWFjdGlvbi1iYXI+XG48L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19