survey-angular-ui
Version:
A free MIT-licensed Angular UI component that renders dynamic, interactive JSON-based forms and surveys. You can use it to collect responses from users and send them to your own database.
36 lines • 4.42 kB
JavaScript
import { SvgRegistry } from "survey-core";
import { Component, ViewChild } from "@angular/core";
import * as i0 from "@angular/core";
export class SvgBundleComponent {
constructor() {
this.onIconsChanged = () => {
var _a;
if (typeof document !== "undefined") {
if (!!((_a = this.svgContainer) === null || _a === void 0 ? void 0 : _a.nativeElement)) {
this.svgContainer.nativeElement.innerHTML = SvgRegistry.iconsRenderedHtml();
}
}
};
}
ngOnInit() {
this.onIconsChanged();
SvgRegistry.onIconsChanged.add(this.onIconsChanged);
}
ngOnDestroy() {
SvgRegistry.onIconsChanged.remove(this.onIconsChanged);
}
}
SvgBundleComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SvgBundleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
SvgBundleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SvgBundleComponent, selector: "sv-svg-bundle", viewQueries: [{ propertyName: "svgContainer", first: true, predicate: ["svgContainer"], descendants: true, static: true }], ngImport: i0, template: "<svg id='sv-icon-holder-global-container' #svgContainer></svg>", isInline: true, styles: [":host { display: none; }"] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SvgBundleComponent, decorators: [{
type: Component,
args: [{
selector: "sv-svg-bundle",
template: "<svg id='sv-icon-holder-global-container' #svgContainer></svg>",
styles: [":host { display: none; }"]
}]
}], propDecorators: { svgContainer: [{
type: ViewChild,
args: ["svgContainer", { static: true }]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ZnYnVuZGxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdmdidW5kbGUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLFNBQVMsRUFBaUMsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU1wRixNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT1UsbUJBQWMsR0FBRyxHQUFHLEVBQUU7O1lBQzVCLElBQUksT0FBTyxRQUFRLEtBQUssV0FBVyxFQUFFO2dCQUNuQyxJQUFJLENBQUMsQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLFlBQVksMENBQUUsYUFBYSxDQUFBLEVBQUU7b0JBQ3RDLElBQUksQ0FBQyxZQUFZLENBQUMsYUFBYSxDQUFDLFNBQVMsR0FBRyxXQUFXLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztpQkFDN0U7YUFDRjtRQUNILENBQUMsQ0FBQztLQVFIO0lBUEMsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixXQUFXLENBQUMsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUNELFdBQVc7UUFDVCxXQUFXLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDekQsQ0FBQzs7Z0hBZlUsa0JBQWtCO29HQUFsQixrQkFBa0IsaUxBSG5CLGdFQUFnRTs0RkFHL0Qsa0JBQWtCO2tCQUw5QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixRQUFRLEVBQUUsZ0VBQWdFO29CQUMxRSxNQUFNLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztpQkFDckM7OEJBRThDLFlBQVk7c0JBQXhELFNBQVM7dUJBQUMsY0FBYyxFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN2Z1JlZ2lzdHJ5IH0gZnJvbSBcInN1cnZleS1jb3JlXCI7XG5pbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uRGVzdHJveSwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN2LXN2Zy1idW5kbGVcIixcbiAgdGVtcGxhdGU6IFwiPHN2ZyBpZD0nc3YtaWNvbi1ob2xkZXItZ2xvYmFsLWNvbnRhaW5lcicgI3N2Z0NvbnRhaW5lcj48L3N2Zz5cIixcbiAgc3R5bGVzOiBbXCI6aG9zdCB7IGRpc3BsYXk6IG5vbmU7IH1cIl1cbn0pXG5leHBvcnQgY2xhc3MgU3ZnQnVuZGxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBAVmlld0NoaWxkKFwic3ZnQ29udGFpbmVyXCIsIHsgc3RhdGljOiB0cnVlIH0pIHN2Z0NvbnRhaW5lciE6IEVsZW1lbnRSZWY8U1ZHRWxlbWVudD47XG4gIHByaXZhdGUgb25JY29uc0NoYW5nZWQgPSAoKSA9PiB7XG4gICAgaWYgKHR5cGVvZiBkb2N1bWVudCAhPT0gXCJ1bmRlZmluZWRcIikge1xuICAgICAgaWYgKCEhdGhpcy5zdmdDb250YWluZXI/Lm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgdGhpcy5zdmdDb250YWluZXIubmF0aXZlRWxlbWVudC5pbm5lckhUTUwgPSBTdmdSZWdpc3RyeS5pY29uc1JlbmRlcmVkSHRtbCgpO1xuICAgICAgfVxuICAgIH1cbiAgfTtcbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vbkljb25zQ2hhbmdlZCgpO1xuICAgIFN2Z1JlZ2lzdHJ5Lm9uSWNvbnNDaGFuZ2VkLmFkZCh0aGlzLm9uSWNvbnNDaGFuZ2VkKTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBTdmdSZWdpc3RyeS5vbkljb25zQ2hhbmdlZC5yZW1vdmUodGhpcy5vbkljb25zQ2hhbmdlZCk7XG4gIH1cbn0iXX0=