survey-creator-angular
Version:
A white-label drag-and-drop form builder for Angular that lets you design complex, interactive forms and surveys without writing code. It generates JSON schemas used by the SurveyJS Form Library to render dynamic forms in your Angular app.
37 lines • 5.72 kB
JavaScript
import { Component, ViewChild } from "@angular/core";
import { AngularComponentFactory, QuestionAngular } from "survey-angular-ui";
import * as i0 from "@angular/core";
import * as i1 from "survey-angular-ui";
import * as i2 from "@angular/common";
export class EmbeddedSurveyQuestionComponent extends QuestionAngular {
get survey() {
return this.model.embeddedSurvey;
}
ngAfterViewInit() {
super.ngAfterViewInit();
this.survey.rootElement = this.container.nativeElement;
}
onModelChanged() {
super.onModelChanged();
if (!!this.model) {
this.model.onEmbeddedSurveyValueChanged = () => {
this.detectChanges();
};
}
}
}
EmbeddedSurveyQuestionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EmbeddedSurveyQuestionComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
EmbeddedSurveyQuestionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EmbeddedSurveyQuestionComponent, selector: "svc-embeddedsurvey-question", viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #template>\n <div #container style=\"display: contents\">\n <ng-container *ngIf=\"!!model && !!survey && survey.currentPage\">\n <page [model]=\"survey.currentPage\" [survey]=\"survey\"></page>\n </ng-container>\n </div>\n</ng-template>", styles: [":host { display: none; }"], components: [{ type: i1.PageComponent, selector: "sv-page, page, sv-ng-page", inputs: ["model", "survey"] }], directives: [{ type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: EmbeddedSurveyQuestionComponent, decorators: [{
type: Component,
args: [{
selector: "svc-embeddedsurvey-question",
templateUrl: "./question-embedded-survey.component.html",
styles: [":host { display: none; }"]
}]
}], propDecorators: { container: [{
type: ViewChild,
args: ["container"]
}] } });
AngularComponentFactory.Instance.registerComponent("embeddedsurvey-question", EmbeddedSurveyQuestionComponent);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24tZW1iZWRkZWQtc3VydmV5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvcXVlc3Rpb24tZW1iZWRkZWQtc3VydmV5LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uL3NyYy9xdWVzdGlvbnMvcXVlc3Rpb24tZW1iZWRkZWQtc3VydmV5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pFLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7OztBQVE3RSxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsZUFBNEM7SUFFL0YsSUFBVyxNQUFNO1FBQ2YsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztJQUNuQyxDQUFDO0lBQ2UsZUFBZTtRQUM3QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUM7SUFDekQsQ0FBQztJQUNrQixjQUFjO1FBQy9CLEtBQUssQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN2QixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFO1lBQ2hCLElBQUksQ0FBQyxLQUFLLENBQUMsNEJBQTRCLEdBQUcsR0FBRyxFQUFFO2dCQUM3QyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDdkIsQ0FBQyxDQUFDO1NBQ0g7SUFDSCxDQUFDOzs2SEFoQlUsK0JBQStCO2lIQUEvQiwrQkFBK0Isa01DVDVDLHdRQU1jOzRGREdELCtCQUErQjtrQkFMM0MsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsNkJBQTZCO29CQUN2QyxXQUFXLEVBQUUsMkNBQTJDO29CQUN4RCxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDckM7OEJBRXlCLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVzs7QUFrQnhCLHVCQUF1QixDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyx5QkFBeUIsRUFBRSwrQkFBK0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFbGVtZW50UmVmLCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQW5ndWxhckNvbXBvbmVudEZhY3RvcnksIFF1ZXN0aW9uQW5ndWxhciB9IGZyb20gXCJzdXJ2ZXktYW5ndWxhci11aVwiO1xuaW1wb3J0IHsgUXVlc3Rpb25FbWJlZGRlZFN1cnZleU1vZGVsIH0gZnJvbSBcInN1cnZleS1jcmVhdG9yLWNvcmVcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2Yy1lbWJlZGRlZHN1cnZleS1xdWVzdGlvblwiLFxuICB0ZW1wbGF0ZVVybDogXCIuL3F1ZXN0aW9uLWVtYmVkZGVkLXN1cnZleS5jb21wb25lbnQuaHRtbFwiLFxuICBzdHlsZXM6IFtcIjpob3N0IHsgZGlzcGxheTogbm9uZTsgfVwiXVxufSlcbmV4cG9ydCBjbGFzcyBFbWJlZGRlZFN1cnZleVF1ZXN0aW9uQ29tcG9uZW50IGV4dGVuZHMgUXVlc3Rpb25Bbmd1bGFyPFF1ZXN0aW9uRW1iZWRkZWRTdXJ2ZXlNb2RlbD4ge1xuICBAVmlld0NoaWxkKFwiY29udGFpbmVyXCIpIGNvbnRhaW5lciE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBwdWJsaWMgZ2V0IHN1cnZleSgpIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbC5lbWJlZGRlZFN1cnZleTtcbiAgfVxuICBwdWJsaWMgb3ZlcnJpZGUgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHN1cGVyLm5nQWZ0ZXJWaWV3SW5pdCgpO1xuICAgIHRoaXMuc3VydmV5LnJvb3RFbGVtZW50ID0gdGhpcy5jb250YWluZXIubmF0aXZlRWxlbWVudDtcbiAgfVxuICBwcm90ZWN0ZWQgb3ZlcnJpZGUgb25Nb2RlbENoYW5nZWQoKTogdm9pZCB7XG4gICAgc3VwZXIub25Nb2RlbENoYW5nZWQoKTtcbiAgICBpZiAoISF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsLm9uRW1iZWRkZWRTdXJ2ZXlWYWx1ZUNoYW5nZWQgPSAoKSA9PiB7XG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfTtcbiAgICB9XG4gIH1cbn1cblxuQW5ndWxhckNvbXBvbmVudEZhY3RvcnkuSW5zdGFuY2UucmVnaXN0ZXJDb21wb25lbnQoXCJlbWJlZGRlZHN1cnZleS1xdWVzdGlvblwiLCBFbWJlZGRlZFN1cnZleVF1ZXN0aW9uQ29tcG9uZW50KTsiLCI8bmctdGVtcGxhdGUgI3RlbXBsYXRlPlxuICA8ZGl2ICNjb250YWluZXIgc3R5bGU9XCJkaXNwbGF5OiBjb250ZW50c1wiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhIW1vZGVsICYmICEhc3VydmV5ICYmIHN1cnZleS5jdXJyZW50UGFnZVwiPlxuICAgICAgPHBhZ2UgW21vZGVsXT1cInN1cnZleS5jdXJyZW50UGFnZVwiIFtzdXJ2ZXldPVwic3VydmV5XCI+PC9wYWdlPlxuICAgIDwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+Il19