UNPKG

@asoftwareworld/form-builder-pro

Version:

ASW Form Builder Pro helps you with rapid development and designed web forms which includes several controls. The key feature of Form Builder is to make your content attractive and effective. We can customize our control at run time and preview the same b

66 lines 10.5 kB
/** * @license * Copyright ASW (A Software World) All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file */ import { Component, EventEmitter, Input, Output } from '@angular/core'; import { Constants, Icons } from '@asoftwareworld/form-builder-pro/common'; import { AswConfirmDialog } from '@asoftwareworld/form-builder-pro/form-control/confirm-dialog'; import * as i0 from "@angular/core"; import * as i1 from "@angular/material/dialog"; import * as i2 from "@angular/common"; import * as i3 from "@angular/material/divider"; import * as i4 from "@angular/material/tooltip"; import * as i5 from "@angular/material/button"; import * as i6 from "@asoftwareworld/form-builder-pro/core"; import * as i7 from "@asoftwareworld/form-builder-pro/common"; export class AswDivider { dialog; constants = Constants; icons = Icons; /** * Divider control */ control; isPreviewTemplate = false; dividerDeleteEvent = new EventEmitter(); duplicateControl = new EventEmitter(); constructor(dialog) { this.dialog = dialog; } /** * Delete divider control based on control index * @param control divider control items */ deleteDividerDialog(control) { const dialogRef = this.dialog.open(AswConfirmDialog, { width: '350px', data: { name: control.controlType, message: this.constants.messages.waringMessage } }); dialogRef.afterClosed().subscribe((result) => { if (result !== undefined) { this.dividerDeleteEvent.emit(control); } }); } duplicateDividerControl(control) { this.duplicateControl.emit(control); } static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AswDivider, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.8", type: AswDivider, selector: "asw-divider", inputs: { control: "control", isPreviewTemplate: "isPreviewTemplate" }, outputs: { dividerDeleteEvent: "dividerDeleteEvent", duplicateControl: "duplicateControl" }, ngImport: i0, template: "<mat-divider></mat-divider>\r\n<div class=\"asw-row\" *ngIf=\"isPreviewTemplate\">\r\n <div class=\"asw-col-md-12\" align=\"right\">\r\n <button mat-icon-button \r\n type=\"button\" \r\n matTooltip=\"{{'FormControl.Duplicate'| aswTranslate}}\" \r\n [matTooltipPosition]=\"'below'\" \r\n (click)=\"duplicateDividerControl(control)\">\r\n <div [innerHTML]=\"icons.contentCopy | aswSafeHtml\"></div>\r\n </button>\r\n <button mat-icon-button \r\n type=\"button\" \r\n matTooltip=\"{{'FormControl.Delete'| aswTranslate}}\" \r\n [matTooltipPosition]=\"'below'\" \r\n (click)=\"deleteDividerDialog(control)\">\r\n <div [innerHTML]=\"icons.delete2 | aswSafeHtml\"></div>\r\n </button>\r\n </div>\r\n</div>", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i4.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "pipe", type: i6.AswTranslatePipe, name: "aswTranslate" }, { kind: "pipe", type: i7.AswSafeHtmlPipe, name: "aswSafeHtml" }] }); } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.8", ngImport: i0, type: AswDivider, decorators: [{ type: Component, args: [{ selector: 'asw-divider', template: "<mat-divider></mat-divider>\r\n<div class=\"asw-row\" *ngIf=\"isPreviewTemplate\">\r\n <div class=\"asw-col-md-12\" align=\"right\">\r\n <button mat-icon-button \r\n type=\"button\" \r\n matTooltip=\"{{'FormControl.Duplicate'| aswTranslate}}\" \r\n [matTooltipPosition]=\"'below'\" \r\n (click)=\"duplicateDividerControl(control)\">\r\n <div [innerHTML]=\"icons.contentCopy | aswSafeHtml\"></div>\r\n </button>\r\n <button mat-icon-button \r\n type=\"button\" \r\n matTooltip=\"{{'FormControl.Delete'| aswTranslate}}\" \r\n [matTooltipPosition]=\"'below'\" \r\n (click)=\"deleteDividerDialog(control)\">\r\n <div [innerHTML]=\"icons.delete2 | aswSafeHtml\"></div>\r\n </button>\r\n </div>\r\n</div>" }] }], ctorParameters: () => [{ type: i1.MatDialog }], propDecorators: { control: [{ type: Input }], isPreviewTemplate: [{ type: Input }], dividerDeleteEvent: [{ type: Output }], duplicateControl: [{ type: Output }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL2Zvcm0tY29udHJvbC9kaXZpZGVyL2RpdmlkZXIudHMiLCIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9mb3JtLWNvbnRyb2wvZGl2aWRlci9kaXZpZGVyLmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7OztHQU1HO0FBRUgsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV2RSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7Ozs7QUFNaEcsTUFBTSxPQUFPLFVBQVU7SUFhQTtJQVpuQixTQUFTLEdBQVEsU0FBUyxDQUFDO0lBQzNCLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDZDs7T0FFRztJQUNNLE9BQU8sQ0FBTTtJQUViLGlCQUFpQixHQUFHLEtBQUssQ0FBQztJQUV6QixrQkFBa0IsR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO0lBQzdDLGdCQUFnQixHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFFckQsWUFBbUIsTUFBaUI7UUFBakIsV0FBTSxHQUFOLE1BQU0sQ0FBVztJQUFHLENBQUM7SUFFeEM7OztPQUdHO0lBQ0gsbUJBQW1CLENBQUMsT0FBWTtRQUM1QixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUNqRCxLQUFLLEVBQUUsT0FBTztZQUNkLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxPQUFPLENBQUMsV0FBVyxFQUFFLE9BQU8sRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUU7U0FDdEYsQ0FBQyxDQUFDO1FBQ0gsU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFO1lBQ3pDLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO2dCQUN2QixJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCx1QkFBdUIsQ0FBQyxPQUFZO1FBQ2hDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDeEMsQ0FBQzt1R0FqQ1EsVUFBVTsyRkFBVixVQUFVLHdOQ2pCdkIsNDJCQWtCTTs7MkZERE8sVUFBVTtrQkFKdEIsU0FBUzsrQkFDSSxhQUFhOzhFQVNkLE9BQU87c0JBQWYsS0FBSztnQkFFRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBRUksa0JBQWtCO3NCQUEzQixNQUFNO2dCQUNHLGdCQUFnQjtzQkFBekIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBBU1cgKEEgU29mdHdhcmUgV29ybGQpIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGVcbiAqL1xuXG5pbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IENvbnN0YW50cywgSWNvbnMgfSBmcm9tICdAYXNvZnR3YXJld29ybGQvZm9ybS1idWlsZGVyLXByby9jb21tb24nO1xuaW1wb3J0IHsgQXN3Q29uZmlybURpYWxvZyB9IGZyb20gJ0Bhc29mdHdhcmV3b3JsZC9mb3JtLWJ1aWxkZXItcHJvL2Zvcm0tY29udHJvbC9jb25maXJtLWRpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYXN3LWRpdmlkZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kaXZpZGVyLmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEFzd0RpdmlkZXIge1xuICAgIGNvbnN0YW50czogYW55ID0gQ29uc3RhbnRzO1xuICAgIGljb25zID0gSWNvbnM7XG4gICAgLyoqXG4gICAgICogRGl2aWRlciBjb250cm9sXG4gICAgICovXG4gICAgQElucHV0KCkgY29udHJvbDogYW55O1xuXG4gICAgQElucHV0KCkgaXNQcmV2aWV3VGVtcGxhdGUgPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBkaXZpZGVyRGVsZXRlRXZlbnQgPSBuZXcgRXZlbnRFbWl0dGVyPGFueT4oKTtcbiAgICBAT3V0cHV0KCkgZHVwbGljYXRlQ29udHJvbCA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xuXG4gICAgY29uc3RydWN0b3IocHVibGljIGRpYWxvZzogTWF0RGlhbG9nKSB7fVxuXG4gICAgLyoqXG4gICAgICogRGVsZXRlIGRpdmlkZXIgY29udHJvbCBiYXNlZCBvbiBjb250cm9sIGluZGV4XG4gICAgICogQHBhcmFtIGNvbnRyb2wgZGl2aWRlciBjb250cm9sIGl0ZW1zXG4gICAgICovXG4gICAgZGVsZXRlRGl2aWRlckRpYWxvZyhjb250cm9sOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5kaWFsb2cub3BlbihBc3dDb25maXJtRGlhbG9nLCB7XG4gICAgICAgICAgICB3aWR0aDogJzM1MHB4JyxcbiAgICAgICAgICAgIGRhdGE6IHsgbmFtZTogY29udHJvbC5jb250cm9sVHlwZSwgbWVzc2FnZTogdGhpcy5jb25zdGFudHMubWVzc2FnZXMud2FyaW5nTWVzc2FnZSB9XG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgICAgICAgaWYgKHJlc3VsdCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kaXZpZGVyRGVsZXRlRXZlbnQuZW1pdChjb250cm9sKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZHVwbGljYXRlRGl2aWRlckNvbnRyb2woY29udHJvbDogYW55KTogdm9pZCB7XG4gICAgICAgIHRoaXMuZHVwbGljYXRlQ29udHJvbC5lbWl0KGNvbnRyb2wpO1xuICAgIH1cbn1cbiIsIjxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxyXG48ZGl2IGNsYXNzPVwiYXN3LXJvd1wiICpuZ0lmPVwiaXNQcmV2aWV3VGVtcGxhdGVcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJhc3ctY29sLW1kLTEyXCIgYWxpZ249XCJyaWdodFwiPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIFxyXG4gICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7J0Zvcm1Db250cm9sLkR1cGxpY2F0ZSd8IGFzd1RyYW5zbGF0ZX19XCIgXHJcbiAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcFBvc2l0aW9uXT1cIidiZWxvdydcIiBcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkdXBsaWNhdGVEaXZpZGVyQ29udHJvbChjb250cm9sKVwiPlxyXG4gICAgICAgICAgICA8ZGl2IFtpbm5lckhUTUxdPVwiaWNvbnMuY29udGVudENvcHkgfCBhc3dTYWZlSHRtbFwiPjwvZGl2PlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gbWF0LWljb24tYnV0dG9uIFxyXG4gICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiIFxyXG4gICAgICAgICAgICAgICAgbWF0VG9vbHRpcD1cInt7J0Zvcm1Db250cm9sLkRlbGV0ZSd8IGFzd1RyYW5zbGF0ZX19XCIgXHJcbiAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcFBvc2l0aW9uXT1cIidiZWxvdydcIiBcclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJkZWxldGVEaXZpZGVyRGlhbG9nKGNvbnRyb2wpXCI+XHJcbiAgICAgICAgICAgIDxkaXYgW2lubmVySFRNTF09XCJpY29ucy5kZWxldGUyIHwgYXN3U2FmZUh0bWxcIj48L2Rpdj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG48L2Rpdj4iXX0=