UNPKG

formioangular-colfuturo

Version:

This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.

90 lines 11.3 kB
import { Component, Input, ViewChild, Output, EventEmitter, } from "@angular/core"; import { FormBuilder } from "formiojs-colfuturo"; import * as i0 from "@angular/core"; export class FormioBuilder { element; form; options = {}; change = new EventEmitter(); ready = new EventEmitter(); error = new EventEmitter(); builder; componentAdding = false; get instance() { return this.builder.instance; } ngAfterViewInit() { this.builder = new FormBuilder(this.element.nativeElement, this.form, this.options); this.builder.ready .then(() => { this.instance.on("addComponent", (component, parent, path, index, isNew) => { if (isNew) { this.componentAdding = true; } else { this.change.emit({ type: "addComponent", builder: this.instance, form: this.instance.schema, component: component, parent: parent, path: path, index: index, }); this.componentAdding = false; } }); this.instance.on("saveComponent", (component, original, parent, path, index, isNew) => { this.change.emit({ type: this.componentAdding ? "addComponent" : "saveComponent", builder: this.instance, form: this.instance.schema, component: component, originalComponent: original, parent: parent, path: path, index: index, isNew: isNew || false, }); this.componentAdding = false; }); this.instance.on("removeComponent", (component, parent, path, index) => { this.change.emit({ type: "deleteComponent", builder: this.instance, form: this.instance.schema, component: component, parent: parent, path: path, index: index, }); }); this.ready.emit(this.instance); }) .catch((err) => this.error.emit(err)); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormioBuilder, deps: [], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: FormioBuilder, selector: "formio-builder", inputs: { form: "form", options: "options" }, outputs: { change: "change", ready: "ready", error: "error" }, viewQueries: [{ propertyName: "element", first: true, predicate: ["formio"], descendants: true }], ngImport: i0, template: "<div #formio></div>", isInline: true }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: FormioBuilder, decorators: [{ type: Component, args: [{ selector: "formio-builder", template: "<div #formio></div>", standalone: false, }] }], propDecorators: { element: [{ type: ViewChild, args: ["formio"] }], form: [{ type: Input }], options: [{ type: Input }], change: [{ type: Output }], ready: [{ type: Output }], error: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9hbmd1bGFyLWZvcm1pby9lbWJlZC9zcmMvYnVpbGRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFFVCxLQUFLLEVBQ0wsU0FBUyxFQUNULE1BQU0sRUFDTixZQUFZLEdBRWIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFRLFdBQVcsRUFBVyxNQUFNLG9CQUFvQixDQUFDOztBQVFoRSxNQUFNLE9BQU8sYUFBYTtJQUNILE9BQU8sQ0FBYTtJQUNoQyxJQUFJLENBQTBCO0lBQzlCLE9BQU8sR0FBNEIsRUFBRSxDQUFDO0lBQ3JDLE1BQU0sR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ2pDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ2hDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQ25DLE9BQU8sQ0FBYztJQUNyQixlQUFlLEdBQUcsS0FBSyxDQUFDO0lBQy9CLElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7SUFDL0IsQ0FBQztJQUNELGVBQWU7UUFDYixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksV0FBVyxDQUM1QixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFDMUIsSUFBSSxDQUFDLElBQUksRUFDVCxJQUFJLENBQUMsT0FBTyxDQUNiLENBQUM7UUFDRixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUs7YUFDZixJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ1QsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQ2QsY0FBYyxFQUNkLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxFQUFFO2dCQUN4QyxJQUFJLEtBQUssRUFBRSxDQUFDO29CQUNWLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO2dCQUM5QixDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7d0JBQ2YsSUFBSSxFQUFFLGNBQWM7d0JBQ3BCLE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUTt3QkFDdEIsSUFBSSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTt3QkFDMUIsU0FBUyxFQUFFLFNBQVM7d0JBQ3BCLE1BQU0sRUFBRSxNQUFNO3dCQUNkLElBQUksRUFBRSxJQUFJO3dCQUNWLEtBQUssRUFBRSxLQUFLO3FCQUNiLENBQUMsQ0FBQztvQkFDSCxJQUFJLENBQUMsZUFBZSxHQUFHLEtBQUssQ0FBQztnQkFDL0IsQ0FBQztZQUNILENBQUMsQ0FDRixDQUFDO1lBQ0YsSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQ2QsZUFBZSxFQUNmLENBQUMsU0FBUyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0JBQ2YsSUFBSSxFQUFFLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsZUFBZTtvQkFDN0QsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO29CQUMxQixTQUFTLEVBQUUsU0FBUztvQkFDcEIsaUJBQWlCLEVBQUUsUUFBUTtvQkFDM0IsTUFBTSxFQUFFLE1BQU07b0JBQ2QsSUFBSSxFQUFFLElBQUk7b0JBQ1YsS0FBSyxFQUFFLEtBQUs7b0JBQ1osS0FBSyxFQUFFLEtBQUssSUFBSSxLQUFLO2lCQUN0QixDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUM7WUFDL0IsQ0FBQyxDQUNGLENBQUM7WUFDRixJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FDZCxpQkFBaUIsRUFDakIsQ0FBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUM7b0JBQ2YsSUFBSSxFQUFFLGlCQUFpQjtvQkFDdkIsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO29CQUN0QixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNO29CQUMxQixTQUFTLEVBQUUsU0FBUztvQkFDcEIsTUFBTSxFQUFFLE1BQU07b0JBQ2QsSUFBSSxFQUFFLElBQUk7b0JBQ1YsS0FBSyxFQUFFLEtBQUs7aUJBQ2IsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUNGLENBQUM7WUFDRixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDakMsQ0FBQyxDQUFDO2FBQ0QsS0FBSyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzFDLENBQUM7d0dBekVVLGFBQWE7NEZBQWIsYUFBYSxzUUFIZCxxQkFBcUI7OzRGQUdwQixhQUFhO2tCQUx6QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFVBQVUsRUFBRSxLQUFLO2lCQUNsQjs4QkFFc0IsT0FBTztzQkFBM0IsU0FBUzt1QkFBQyxRQUFRO2dCQUNWLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksTUFBTTtzQkFBZixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBFbGVtZW50UmVmLFxyXG4gIElucHV0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBPdXRwdXQsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgRm9ybSwgRm9ybUJ1aWxkZXIsIFdlYmZvcm0gfSBmcm9tIFwiZm9ybWlvanMtY29sZnV0dXJvXCI7XHJcbmltcG9ydCBXZWJmb3JtQnVpbGRlciBmcm9tIFwiZm9ybWlvanMtY29sZnV0dXJvL2xpYi9janMvV2ViZm9ybUJ1aWxkZXJcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiBcImZvcm1pby1idWlsZGVyXCIsXHJcbiAgdGVtcGxhdGU6IFwiPGRpdiAjZm9ybWlvPjwvZGl2PlwiLFxyXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRm9ybWlvQnVpbGRlciBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xyXG4gIEBWaWV3Q2hpbGQoXCJmb3JtaW9cIikgZWxlbWVudDogRWxlbWVudFJlZjtcclxuICBASW5wdXQoKSBmb3JtPzogRm9ybVtcIm9wdGlvbnNcIl0gfCBudWxsO1xyXG4gIEBJbnB1dCgpIG9wdGlvbnM/OiBGb3JtQnVpbGRlcltcIm9wdGlvbnNcIl0gPSB7fTtcclxuICBAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIHJlYWR5ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgQE91dHB1dCgpIGVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgcHVibGljIGJ1aWxkZXI6IEZvcm1CdWlsZGVyO1xyXG4gIHB1YmxpYyBjb21wb25lbnRBZGRpbmcgPSBmYWxzZTtcclxuICBnZXQgaW5zdGFuY2UoKTogV2ViZm9ybUJ1aWxkZXIge1xyXG4gICAgcmV0dXJuIHRoaXMuYnVpbGRlci5pbnN0YW5jZTtcclxuICB9XHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5idWlsZGVyID0gbmV3IEZvcm1CdWlsZGVyKFxyXG4gICAgICB0aGlzLmVsZW1lbnQubmF0aXZlRWxlbWVudCxcclxuICAgICAgdGhpcy5mb3JtLFxyXG4gICAgICB0aGlzLm9wdGlvbnNcclxuICAgICk7XHJcbiAgICB0aGlzLmJ1aWxkZXIucmVhZHlcclxuICAgICAgLnRoZW4oKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuaW5zdGFuY2Uub24oXHJcbiAgICAgICAgICBcImFkZENvbXBvbmVudFwiLFxyXG4gICAgICAgICAgKGNvbXBvbmVudCwgcGFyZW50LCBwYXRoLCBpbmRleCwgaXNOZXcpID0+IHtcclxuICAgICAgICAgICAgaWYgKGlzTmV3KSB7XHJcbiAgICAgICAgICAgICAgdGhpcy5jb21wb25lbnRBZGRpbmcgPSB0cnVlO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIHRoaXMuY2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICAgICAgdHlwZTogXCJhZGRDb21wb25lbnRcIixcclxuICAgICAgICAgICAgICAgIGJ1aWxkZXI6IHRoaXMuaW5zdGFuY2UsXHJcbiAgICAgICAgICAgICAgICBmb3JtOiB0aGlzLmluc3RhbmNlLnNjaGVtYSxcclxuICAgICAgICAgICAgICAgIGNvbXBvbmVudDogY29tcG9uZW50LFxyXG4gICAgICAgICAgICAgICAgcGFyZW50OiBwYXJlbnQsXHJcbiAgICAgICAgICAgICAgICBwYXRoOiBwYXRoLFxyXG4gICAgICAgICAgICAgICAgaW5kZXg6IGluZGV4LFxyXG4gICAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICAgIHRoaXMuY29tcG9uZW50QWRkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICApO1xyXG4gICAgICAgIHRoaXMuaW5zdGFuY2Uub24oXHJcbiAgICAgICAgICBcInNhdmVDb21wb25lbnRcIixcclxuICAgICAgICAgIChjb21wb25lbnQsIG9yaWdpbmFsLCBwYXJlbnQsIHBhdGgsIGluZGV4LCBpc05ldykgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoYW5nZS5lbWl0KHtcclxuICAgICAgICAgICAgICB0eXBlOiB0aGlzLmNvbXBvbmVudEFkZGluZyA/IFwiYWRkQ29tcG9uZW50XCIgOiBcInNhdmVDb21wb25lbnRcIixcclxuICAgICAgICAgICAgICBidWlsZGVyOiB0aGlzLmluc3RhbmNlLFxyXG4gICAgICAgICAgICAgIGZvcm06IHRoaXMuaW5zdGFuY2Uuc2NoZW1hLFxyXG4gICAgICAgICAgICAgIGNvbXBvbmVudDogY29tcG9uZW50LFxyXG4gICAgICAgICAgICAgIG9yaWdpbmFsQ29tcG9uZW50OiBvcmlnaW5hbCxcclxuICAgICAgICAgICAgICBwYXJlbnQ6IHBhcmVudCxcclxuICAgICAgICAgICAgICBwYXRoOiBwYXRoLFxyXG4gICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICAgICAgICBpc05ldzogaXNOZXcgfHwgZmFsc2UsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudEFkZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICk7XHJcbiAgICAgICAgdGhpcy5pbnN0YW5jZS5vbihcclxuICAgICAgICAgIFwicmVtb3ZlQ29tcG9uZW50XCIsXHJcbiAgICAgICAgICAoY29tcG9uZW50LCBwYXJlbnQsIHBhdGgsIGluZGV4KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlLmVtaXQoe1xyXG4gICAgICAgICAgICAgIHR5cGU6IFwiZGVsZXRlQ29tcG9uZW50XCIsXHJcbiAgICAgICAgICAgICAgYnVpbGRlcjogdGhpcy5pbnN0YW5jZSxcclxuICAgICAgICAgICAgICBmb3JtOiB0aGlzLmluc3RhbmNlLnNjaGVtYSxcclxuICAgICAgICAgICAgICBjb21wb25lbnQ6IGNvbXBvbmVudCxcclxuICAgICAgICAgICAgICBwYXJlbnQ6IHBhcmVudCxcclxuICAgICAgICAgICAgICBwYXRoOiBwYXRoLFxyXG4gICAgICAgICAgICAgIGluZGV4OiBpbmRleCxcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgKTtcclxuICAgICAgICB0aGlzLnJlYWR5LmVtaXQodGhpcy5pbnN0YW5jZSk7XHJcbiAgICAgIH0pXHJcbiAgICAgIC5jYXRjaCgoZXJyKSA9PiB0aGlzLmVycm9yLmVtaXQoZXJyKSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==