survey-angular-ui
Version:
survey.js is a JavaScript Survey Library. It is a modern way to add a survey to your website. It uses JSON for survey metadata and results.
43 lines • 4.86 kB
JavaScript
import { Component, Input, ViewChild } from "@angular/core";
import { BaseAngular } from "./base-angular";
import * as i0 from "@angular/core";
export class QuestionAngular extends BaseAngular {
getModel() {
return this.model;
}
ngAfterViewInit() {
var _a;
if (!!this.model) {
this.model.afterRenderQuestionElement((_a = this.elementContentRef) === null || _a === void 0 ? void 0 : _a.nativeElement);
}
}
ngOnDestroy() {
var _a;
if (!!this.model) {
this.model.beforeDestroyQuestionElement((_a = this.elementContentRef) === null || _a === void 0 ? void 0 : _a.nativeElement);
}
super.ngOnDestroy();
}
}
QuestionAngular.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionAngular, deps: null, target: i0.ɵɵFactoryTarget.Component });
QuestionAngular.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: QuestionAngular, selector: "ng-component", inputs: { model: "model" }, viewQueries: [{ propertyName: "elementContentRef", first: true, predicate: ["contentElement"], descendants: true }], usesInheritance: true, ngImport: i0, template: "", isInline: true });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: QuestionAngular, decorators: [{
type: Component,
args: [{
template: ""
}]
}], propDecorators: { model: [{
type: Input
}], elementContentRef: [{
type: ViewChild,
args: ["contentElement"]
}] } });
export function getComponentName(question) {
if (question.customWidget)
return "survey-customwidget";
if (question.isDefaultRendering()) {
return question.getTemplate() + "-question";
}
return question.getComponentName();
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVlc3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcXVlc3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVsRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7O0FBSzdDLE1BQU0sT0FBTyxlQUErQyxTQUFRLFdBQXFCO0lBSzdFLFFBQVE7UUFDaEIsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFFRCxlQUFlOztRQUNiLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDaEIsSUFBSSxDQUFDLEtBQUssQ0FBQywwQkFBMEIsQ0FBQyxNQUFBLElBQUksQ0FBQyxpQkFBaUIsMENBQUUsYUFBYSxDQUFDLENBQUM7U0FDOUU7SUFDSCxDQUFDO0lBQ1EsV0FBVzs7UUFDbEIsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNoQixJQUFJLENBQUMsS0FBSyxDQUFDLDRCQUE0QixDQUFDLE1BQUEsSUFBSSxDQUFDLGlCQUFpQiwwQ0FBRSxhQUFhLENBQUMsQ0FBQztTQUNoRjtRQUNELEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN0QixDQUFDOzs2R0FuQlUsZUFBZTtpR0FBZixlQUFlLDROQUZoQixFQUFFOzRGQUVELGVBQWU7a0JBSDNCLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLEVBQUU7aUJBQ2I7OEJBRWlCLEtBQUs7c0JBQXBCLEtBQUs7Z0JBRXVCLGlCQUFpQjtzQkFBN0MsU0FBUzt1QkFBQyxnQkFBZ0I7O0FBbUI3QixNQUFNLFVBQVUsZ0JBQWdCLENBQUMsUUFBa0I7SUFDakQsSUFBSSxRQUFRLENBQUMsWUFBWTtRQUFFLE9BQU8scUJBQXFCLENBQUM7SUFDeEQsSUFBSSxRQUFRLENBQUMsa0JBQWtCLEVBQUUsRUFBRTtRQUNqQyxPQUFPLFFBQVEsQ0FBQyxXQUFXLEVBQUUsR0FBRyxXQUFXLENBQUM7S0FDN0M7SUFDRCxPQUFPLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0FBQ3JDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBRdWVzdGlvbiB9IGZyb20gXCJzdXJ2ZXktY29yZVwiO1xuaW1wb3J0IHsgQmFzZUFuZ3VsYXIgfSBmcm9tIFwiLi9iYXNlLWFuZ3VsYXJcIjtcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlOiBcIlwiXG59KVxuZXhwb3J0IGNsYXNzIFF1ZXN0aW9uQW5ndWxhcjxUIGV4dGVuZHMgUXVlc3Rpb24gPSBRdWVzdGlvbj4gZXh0ZW5kcyBCYXNlQW5ndWxhcjxRdWVzdGlvbj4gaW1wbGVtZW50cyBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xuICBASW5wdXQoKSBwdWJsaWMgbW9kZWwhOiBUO1xuXG4gIEBWaWV3Q2hpbGQoXCJjb250ZW50RWxlbWVudFwiKSBlbGVtZW50Q29udGVudFJlZiE6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+O1xuXG4gIHByb3RlY3RlZCBnZXRNb2RlbCgpIHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbDtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBpZiAoISF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsLmFmdGVyUmVuZGVyUXVlc3Rpb25FbGVtZW50KHRoaXMuZWxlbWVudENvbnRlbnRSZWY/Lm5hdGl2ZUVsZW1lbnQpO1xuICAgIH1cbiAgfVxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpIHtcbiAgICBpZiAoISF0aGlzLm1vZGVsKSB7XG4gICAgICB0aGlzLm1vZGVsLmJlZm9yZURlc3Ryb3lRdWVzdGlvbkVsZW1lbnQodGhpcy5lbGVtZW50Q29udGVudFJlZj8ubmF0aXZlRWxlbWVudCk7XG4gICAgfVxuICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gIH1cbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldENvbXBvbmVudE5hbWUocXVlc3Rpb246IFF1ZXN0aW9uKTogc3RyaW5nIHtcbiAgaWYgKHF1ZXN0aW9uLmN1c3RvbVdpZGdldCkgcmV0dXJuIFwic3VydmV5LWN1c3RvbXdpZGdldFwiO1xuICBpZiAocXVlc3Rpb24uaXNEZWZhdWx0UmVuZGVyaW5nKCkpIHtcbiAgICByZXR1cm4gcXVlc3Rpb24uZ2V0VGVtcGxhdGUoKSArIFwiLXF1ZXN0aW9uXCI7XG4gIH1cbiAgcmV0dXJuIHF1ZXN0aW9uLmdldENvbXBvbmVudE5hbWUoKTtcbn0iXX0=