UNPKG

ngx-antd-form-builder

Version:

Simple Drag&Drop form builder using ng-zorro-antd

64 lines 11.4 kB
import { CommonModule } from "@angular/common"; import { Component, forwardRef, Input } from "@angular/core"; import { FormsModule, NG_VALUE_ACCESSOR } from "@angular/forms"; import { NzIconModule } from "ng-zorro-antd/icon"; import { NzRadioModule } from "ng-zorro-antd/radio"; import { NzToolTipModule } from "ng-zorro-antd/tooltip"; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "@angular/forms"; import * as i3 from "ng-zorro-antd/tooltip"; import * as i4 from "ng-zorro-antd/radio"; import * as i5 from "ng-zorro-antd/icon"; export class DesignFormItemRadioComponent { constructor() { this.onChange = (_) => { }; this.onTouched = () => { }; this.isDisabled = false; } writeValue(value) { this.value = value; } registerOnChange(fn) { this.onChange = fn; } registerOnTouched(fn) { this.onTouched = fn; } setDisabledState(isDisabled) { this.isDisabled = isDisabled; } ngOnChanges(changes) { } onModelChange(e) { this.value = e; this.onTouched(); this.onChange(e); //console.log(e) } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DesignFormItemRadioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); } static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.10", type: DesignFormItemRadioComponent, isStandalone: true, selector: "app-design-form-item-radio", inputs: { record: "record" }, providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DesignFormItemRadioComponent), multi: true } ], usesOnChanges: true, ngImport: i0, template: "<nz-radio-group [ngModel]=\"value\" [nzDisabled]=\"isDisabled\"\r\n (ngModelChange)=\"onModelChange($event)\" [ngStyle]=\"{'width': record.options.width}\">\r\n <label *ngFor=\"let lbl of record.options.options\" nz-radio [nzValue]=\"lbl.value\">\r\n <ng-container *ngIf=\"!lbl.tooltip\">{{lbl.label}}</ng-container>\r\n <span style=\"display: inline-flex; align-items: center;\" *ngIf=\"lbl.tooltip\">{{lbl.label}}\r\n <i style=\"margin-left: 2px;\" nz-icon nzType=\"question-circle\" nzTheme=\"outline\" \r\n nz-tooltip [nzTooltipTitle]=\"lbl.tooltip\"></i>\r\n </span>\r\n </label>\r\n</nz-radio-group>", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NzToolTipModule }, { kind: "directive", type: i3.NzTooltipDirective, selector: "[nz-tooltip]", inputs: ["nzTooltipTitle", "nzTooltipTitleContext", "nz-tooltip", "nzTooltipTrigger", "nzTooltipPlacement", "nzTooltipOrigin", "nzTooltipVisible", "nzTooltipMouseEnterDelay", "nzTooltipMouseLeaveDelay", "nzTooltipOverlayClassName", "nzTooltipOverlayStyle", "nzTooltipArrowPointAtCenter", "cdkConnectedOverlayPush", "nzTooltipColor"], outputs: ["nzTooltipVisibleChange"], exportAs: ["nzTooltip"] }, { kind: "ngmodule", type: NzRadioModule }, { kind: "component", type: i4.NzRadioComponent, selector: "[nz-radio],[nz-radio-button]", inputs: ["nzValue", "nzDisabled", "nzAutoFocus", "nz-radio-button"], exportAs: ["nzRadio"] }, { kind: "component", type: i4.NzRadioGroupComponent, selector: "nz-radio-group", inputs: ["nzDisabled", "nzButtonStyle", "nzSize", "nzName"], exportAs: ["nzRadioGroup"] }, { kind: "ngmodule", type: NzIconModule }, { kind: "directive", type: i5.NzIconDirective, selector: "[nz-icon]", inputs: ["nzSpin", "nzRotate", "nzType", "nzTheme", "nzTwotoneColor", "nzIconfont"], exportAs: ["nzIcon"] }] }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.10", ngImport: i0, type: DesignFormItemRadioComponent, decorators: [{ type: Component, args: [{ standalone: true, selector: 'app-design-form-item-radio', providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => DesignFormItemRadioComponent), multi: true } ], imports: [ CommonModule, FormsModule, NzToolTipModule, NzRadioModule, NzIconModule, ], template: "<nz-radio-group [ngModel]=\"value\" [nzDisabled]=\"isDisabled\"\r\n (ngModelChange)=\"onModelChange($event)\" [ngStyle]=\"{'width': record.options.width}\">\r\n <label *ngFor=\"let lbl of record.options.options\" nz-radio [nzValue]=\"lbl.value\">\r\n <ng-container *ngIf=\"!lbl.tooltip\">{{lbl.label}}</ng-container>\r\n <span style=\"display: inline-flex; align-items: center;\" *ngIf=\"lbl.tooltip\">{{lbl.label}}\r\n <i style=\"margin-left: 2px;\" nz-icon nzType=\"question-circle\" nzTheme=\"outline\" \r\n nz-tooltip [nzTooltipTitle]=\"lbl.tooltip\"></i>\r\n </span>\r\n </label>\r\n</nz-radio-group>" }] }], propDecorators: { record //: AmberdataFormDesign.RadioType; : [{ type: Input }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVzaWduLWZvcm0taXRlbS1yYWRpby5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYW50ZC1mb3JtLWJ1aWxkZXIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2lnbi1mb3JtLWl0ZW0tcmFkaW8vZGVzaWduLWZvcm0taXRlbS1yYWRpby5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYW50ZC1mb3JtLWJ1aWxkZXIvc3JjL2xpYi9jb21wb25lbnRzL2Rlc2lnbi1mb3JtLWl0ZW0tcmFkaW8vZGVzaWduLWZvcm0taXRlbS1yYWRpby5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUE0QixNQUFNLGVBQWUsQ0FBQztBQUN2RixPQUFPLEVBQXdCLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDOzs7Ozs7O0FBbUJ4RCxNQUFNLE9BQU8sNEJBQTRCO0lBakJ6QztRQW1CRSxhQUFRLEdBQXFCLENBQUMsQ0FBTSxFQUFFLEVBQUUsR0FBRyxDQUFDLENBQUM7UUFDN0MsY0FBUyxHQUFlLEdBQUcsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUdsQyxlQUFVLEdBQUcsS0FBSyxDQUFDO0tBdUJwQjtJQXRCQyxVQUFVLENBQUMsS0FBVTtRQUNuQixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBQ0QsZ0JBQWdCLENBQUMsRUFBTztRQUN0QixJQUFJLENBQUMsUUFBUSxHQUFHLEVBQUUsQ0FBQTtJQUNwQixDQUFDO0lBQ0QsaUJBQWlCLENBQUMsRUFBTztRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztJQUN0QixDQUFDO0lBQ0QsZ0JBQWdCLENBQUUsVUFBbUI7UUFDbkMsSUFBSSxDQUFDLFVBQVUsR0FBRyxVQUFVLENBQUM7SUFDL0IsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtJQUNsQyxDQUFDO0lBRUQsYUFBYSxDQUFDLENBQUM7UUFDYixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNmLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQTtRQUNoQixJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBQ2hCLGdCQUFnQjtJQUNsQixDQUFDOytHQTVCVSw0QkFBNEI7bUdBQTVCLDRCQUE0Qix1R0FaNUI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUMzRCxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsK0NDbEJILHduQkFTaUIseUREV2IsWUFBWSxvVkFBQyxXQUFXLDhWQUN4QixlQUFlLHdmQUFDLGFBQWEsa1lBQUMsWUFBWTs7NEZBR2pDLDRCQUE0QjtrQkFqQnhDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLDRCQUE0QixhQUczQjt3QkFDVDs0QkFDRSxPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSw2QkFBNkIsQ0FBQzs0QkFDM0QsS0FBSyxFQUFFLElBQUk7eUJBQ1o7cUJBQ0YsV0FDUTt3QkFDUCxZQUFZLEVBQUMsV0FBVzt3QkFDeEIsZUFBZSxFQUFDLGFBQWEsRUFBQyxZQUFZO3FCQUMzQzs4QkFHUSxNQUFNLENBQUEsa0NBQWtDOztzQkFBaEQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb25cIjtcclxuaW1wb3J0IHsgQ29tcG9uZW50LCBmb3J3YXJkUmVmLCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzIH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQgeyBOekljb25Nb2R1bGUgfSBmcm9tIFwibmctem9ycm8tYW50ZC9pY29uXCI7XHJcbmltcG9ydCB7IE56UmFkaW9Nb2R1bGUgfSBmcm9tIFwibmctem9ycm8tYW50ZC9yYWRpb1wiO1xyXG5pbXBvcnQgeyBOelRvb2xUaXBNb2R1bGUgfSBmcm9tIFwibmctem9ycm8tYW50ZC90b29sdGlwXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAnYXBwLWRlc2lnbi1mb3JtLWl0ZW0tcmFkaW8nLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXNpZ24tZm9ybS1pdGVtLXJhZGlvLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kZXNpZ24tZm9ybS1pdGVtLXJhZGlvLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgcHJvdmlkZXJzOiBbXHJcbiAgICB7XHJcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxyXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBEZXNpZ25Gb3JtSXRlbVJhZGlvQ29tcG9uZW50KSxcclxuICAgICAgbXVsdGk6IHRydWVcclxuICAgIH1cclxuICBdLFxyXG4gIGltcG9ydHM6IFtcclxuICAgIENvbW1vbk1vZHVsZSxGb3Jtc01vZHVsZSxcclxuICAgIE56VG9vbFRpcE1vZHVsZSxOelJhZGlvTW9kdWxlLE56SWNvbk1vZHVsZSxcclxuICBdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEZXNpZ25Gb3JtSXRlbVJhZGlvQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uQ2hhbmdlcyB7ICBcclxuICBASW5wdXQoKSByZWNvcmQvLzogQW1iZXJkYXRhRm9ybURlc2lnbi5SYWRpb1R5cGU7XHJcbiAgb25DaGFuZ2U6IChfOiBhbnkpID0+IHZvaWQgPSAoXzogYW55KSA9PiB7IH07XHJcbiAgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4geyB9O1xyXG5cclxuICB2YWx1ZTtcclxuICBpc0Rpc2FibGVkID0gZmFsc2U7XHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xyXG4gICAgdGhpcy5vbkNoYW5nZSA9IGZuXHJcbiAgfVxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaGVkID0gZm47XHJcbiAgfVxyXG4gIHNldERpc2FibGVkU3RhdGU/KGlzRGlzYWJsZWQ6IGJvb2xlYW4pOiB2b2lkIHtcclxuICAgIHRoaXMuaXNEaXNhYmxlZCA9IGlzRGlzYWJsZWQ7XHJcbiAgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgfVxyXG5cclxuICBvbk1vZGVsQ2hhbmdlKGUpIHtcclxuICAgIHRoaXMudmFsdWUgPSBlO1xyXG4gICAgdGhpcy5vblRvdWNoZWQoKVxyXG4gICAgdGhpcy5vbkNoYW5nZShlKVxyXG4gICAgLy9jb25zb2xlLmxvZyhlKVxyXG4gIH1cclxufSIsIjxuei1yYWRpby1ncm91cCAgW25nTW9kZWxdPVwidmFsdWVcIiBbbnpEaXNhYmxlZF09XCJpc0Rpc2FibGVkXCJcclxuICAobmdNb2RlbENoYW5nZSk9XCJvbk1vZGVsQ2hhbmdlKCRldmVudClcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogcmVjb3JkLm9wdGlvbnMud2lkdGh9XCI+XHJcbiAgPGxhYmVsICpuZ0Zvcj1cImxldCBsYmwgb2YgcmVjb3JkLm9wdGlvbnMub3B0aW9uc1wiIG56LXJhZGlvIFtuelZhbHVlXT1cImxibC52YWx1ZVwiPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFsYmwudG9vbHRpcFwiPnt7bGJsLmxhYmVsfX08L25nLWNvbnRhaW5lcj5cclxuICAgIDxzcGFuIHN0eWxlPVwiZGlzcGxheTogaW5saW5lLWZsZXg7IGFsaWduLWl0ZW1zOiBjZW50ZXI7XCIgKm5nSWY9XCJsYmwudG9vbHRpcFwiPnt7bGJsLmxhYmVsfX1cclxuICAgICAgPGkgc3R5bGU9XCJtYXJnaW4tbGVmdDogMnB4O1wiIG56LWljb24gbnpUeXBlPVwicXVlc3Rpb24tY2lyY2xlXCIgbnpUaGVtZT1cIm91dGxpbmVcIiBcclxuICAgICAgICBuei10b29sdGlwIFtuelRvb2x0aXBUaXRsZV09XCJsYmwudG9vbHRpcFwiPjwvaT5cclxuICAgIDwvc3Bhbj5cclxuICA8L2xhYmVsPlxyXG48L256LXJhZGlvLWdyb3VwPiJdfQ==