cocori-ng
Version:
Cocori-ng is an Angular full of great components & utilites based on Material
64 lines • 12.5 kB
JavaScript
import { ChangeDetectionStrategy, Component, HostListener, Inject, ViewChild, ViewContainerRef, } from '@angular/core';
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
import * as i0 from "@angular/core";
import * as i1 from "@angular/forms";
import * as i2 from "@angular/material/dialog";
import * as i3 from "../../../../core/service/form-builder/form-builder.service";
import * as i4 from "@angular/common";
import * as i5 from "@angular/material/button";
import * as i6 from "../../../pipe/variable-html/cocoring-variable-html.pipe";
export class CocoringConfirmModalComponent {
constructor(data, fb, mdDialogRef, formBuilderService) {
this.data = data;
this.fb = fb;
this.mdDialogRef = mdDialogRef;
this.formBuilderService = formBuilderService;
this.formulaire = this.fb.group({});
}
ngOnInit() {
if (this.data.withForm) {
this.buildForm();
}
}
buildForm() {
this.formulaire = this.formBuilderService
.setViewContainerRef(this.formContainerRef)
.generateFormInView()
.form;
}
cancel() {
this.close(false);
}
close(value) {
this.mdDialogRef.close(value);
}
confirm() {
this.close(true);
}
onEsc() {
this.close(false);
}
validateFrom({ value, valid }) {
this.formBuilderService.onClickSubmit();
if (!valid)
return;
console.log("values", value);
this.close(value);
}
}
CocoringConfirmModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: CocoringConfirmModalComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1.UntypedFormBuilder }, { token: i2.MatDialogRef }, { token: i3.FormBuilderService }], target: i0.ɵɵFactoryTarget.Component });
CocoringConfirmModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: CocoringConfirmModalComponent, selector: "cocoring-confirm-modal", host: { listeners: { "keydown.esc": "onEsc()" } }, viewQueries: [{ propertyName: "formContainerRef", first: true, predicate: ["FormContainerRef"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: "<div class=\"header\">\r\n <h1 mat-dialog-title>{{ data.title }}</h1>\r\n</div>\r\n<form [formGroup]=\"formulaire\" (ngSubmit)=\"validateFrom(formulaire)\">\r\n <div mat-dialog-content>\r\n <p class=\"dialog-message\" [innerHtml]=\"data.message | variableHtml\"></p>\r\n <ng-template #FormContainerRef></ng-template>\r\n </div>\r\n <div mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"cancel()\">{{ data.cancelText }}</button>\r\n <button *ngIf=\"data.withForm === false\" mat-button type=\"button\" (click)=\"confirm()\" cdkFocusInitial>{{\r\n data.confirmText }}</button>\r\n <button *ngIf=\"data.withForm\" mat-button type=\"submit\" cdkFocusInitial>{{ data.confirmText }}</button>\r\n </div>\r\n</form>", styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i1.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i1.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i2.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i2.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i2.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i5.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "pipe", type: i6.CocoringVariableHtmlPipe, name: "variableHtml" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: CocoringConfirmModalComponent, decorators: [{
type: Component,
args: [{ changeDetection: ChangeDetectionStrategy.OnPush, selector: 'cocoring-confirm-modal', template: "<div class=\"header\">\r\n <h1 mat-dialog-title>{{ data.title }}</h1>\r\n</div>\r\n<form [formGroup]=\"formulaire\" (ngSubmit)=\"validateFrom(formulaire)\">\r\n <div mat-dialog-content>\r\n <p class=\"dialog-message\" [innerHtml]=\"data.message | variableHtml\"></p>\r\n <ng-template #FormContainerRef></ng-template>\r\n </div>\r\n <div mat-dialog-actions>\r\n <button mat-button type=\"button\" (click)=\"cancel()\">{{ data.cancelText }}</button>\r\n <button *ngIf=\"data.withForm === false\" mat-button type=\"button\" (click)=\"confirm()\" cdkFocusInitial>{{\r\n data.confirmText }}</button>\r\n <button *ngIf=\"data.withForm\" mat-button type=\"submit\" cdkFocusInitial>{{ data.confirmText }}</button>\r\n </div>\r\n</form>", styles: [":host{display:block}\n"] }]
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
type: Inject,
args: [MAT_DIALOG_DATA]
}] }, { type: i1.UntypedFormBuilder }, { type: i2.MatDialogRef }, { type: i3.FormBuilderService }]; }, propDecorators: { formContainerRef: [{
type: ViewChild,
args: ['FormContainerRef', { static: true, read: ViewContainerRef }]
}], onEsc: [{
type: HostListener,
args: ["keydown.esc"]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29jb3JpbmctY29uZmlybS1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2Nvcmktbmcvc3JjL2ZlYXR1cmUtZm9ybS9zaGFyZWQvY29tcG9uZW50L21vZGFsL2NvbmZpcm0tbW9kYWwvY29jb3JpbmctY29uZmlybS1tb2RhbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb2Nvcmktbmcvc3JjL2ZlYXR1cmUtZm9ybS9zaGFyZWQvY29tcG9uZW50L21vZGFsL2NvbmZpcm0tbW9kYWwvY29jb3JpbmctY29uZmlybS1tb2RhbC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUVOLFNBQVMsRUFDVCxnQkFBZ0IsR0FDakIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLGVBQWUsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7Ozs7QUFZekUsTUFBTSxPQUFPLDZCQUE2QjtJQUt4QyxZQUNrQyxJQUF1QixFQUMvQyxFQUFzQixFQUN0QixXQUF3RCxFQUN4RCxrQkFBc0M7UUFIZCxTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUMvQyxPQUFFLEdBQUYsRUFBRSxDQUFvQjtRQUN0QixnQkFBVyxHQUFYLFdBQVcsQ0FBNkM7UUFDeEQsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUM5QyxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRTtZQUN0QixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7U0FDbEI7SUFDSCxDQUFDO0lBRU8sU0FBUztRQUNmLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQjthQUN0QyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7YUFDMUMsa0JBQWtCLEVBQUU7YUFDcEIsSUFBSSxDQUFDO0lBQ1YsQ0FBQztJQUVNLE1BQU07UUFDWCxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxLQUFLLENBQUMsS0FBSztRQUNoQixJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU0sT0FBTztRQUNaLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbkIsQ0FBQztJQUdNLEtBQUs7UUFDVixJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3BCLENBQUM7SUFFTSxZQUFZLENBQUMsRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFrQztRQUVsRSxJQUFJLENBQUMsa0JBQWtCLENBQUMsYUFBYSxFQUFFLENBQUE7UUFFdkMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPO1FBRW5CLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRTdCLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEIsQ0FBQzs7MEhBcERVLDZCQUE2QixrQkFNOUIsZUFBZTs4R0FOZCw2QkFBNkIsa05BQ2EsZ0JBQWdCLDJDQ3ZCdkUsc3hCQWNPOzJGRFFNLDZCQUE2QjtrQkFOekMsU0FBUztzQ0FDUyx1QkFBdUIsQ0FBQyxNQUFNLFlBQ3JDLHdCQUF3Qjs7MEJBVS9CLE1BQU07MkJBQUMsZUFBZTt5SUFMZ0QsZ0JBQWdCO3NCQUF4RixTQUFTO3VCQUFDLGtCQUFrQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBc0NoRSxLQUFLO3NCQURYLFlBQVk7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgQ29tcG9uZW50LFxyXG4gIEhvc3RMaXN0ZW5lcixcclxuICBJbmplY3QsXHJcbiAgT25Jbml0LFxyXG4gIFZpZXdDaGlsZCxcclxuICBWaWV3Q29udGFpbmVyUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBVbnR5cGVkRm9ybUJ1aWxkZXIsIFVudHlwZWRGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IE1BVF9ESUFMT0dfREFUQSwgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTW9kYWxPcHRpb25zTW9kZWwgfSBmcm9tICdjb2Nvcmktbmcvc3JjL2ZlYXR1cmUtY29yZSc7XHJcblxyXG5pbXBvcnQgeyBGb3JtQnVpbGRlclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi9jb3JlL3NlcnZpY2UvZm9ybS1idWlsZGVyL2Zvcm0tYnVpbGRlci5zZXJ2aWNlJztcclxuXHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxuICBzZWxlY3RvcjogJ2NvY29yaW5nLWNvbmZpcm0tbW9kYWwnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2NvcmluZy1jb25maXJtLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9jb2NvcmluZy1jb25maXJtLW1vZGFsLmNvbXBvbmVudC5zY3NzJ11cclxufSlcclxuZXhwb3J0IGNsYXNzIENvY29yaW5nQ29uZmlybU1vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICBAVmlld0NoaWxkKCdGb3JtQ29udGFpbmVyUmVmJywgeyBzdGF0aWM6IHRydWUsIHJlYWQ6IFZpZXdDb250YWluZXJSZWYgfSkgZm9ybUNvbnRhaW5lclJlZjogVmlld0NvbnRhaW5lclJlZjtcclxuXHJcbiAgZm9ybXVsYWlyZTogVW50eXBlZEZvcm1Hcm91cDtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IE1vZGFsT3B0aW9uc01vZGVsLFxyXG4gICAgcHJpdmF0ZSBmYjogVW50eXBlZEZvcm1CdWlsZGVyLFxyXG4gICAgcHJpdmF0ZSBtZERpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPENvY29yaW5nQ29uZmlybU1vZGFsQ29tcG9uZW50PixcclxuICAgIHByaXZhdGUgZm9ybUJ1aWxkZXJTZXJ2aWNlOiBGb3JtQnVpbGRlclNlcnZpY2UpIHtcclxuICAgIHRoaXMuZm9ybXVsYWlyZSA9IHRoaXMuZmIuZ3JvdXAoe30pXHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLmRhdGEud2l0aEZvcm0pIHtcclxuICAgICAgdGhpcy5idWlsZEZvcm0oKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgYnVpbGRGb3JtKCkge1xyXG4gICAgdGhpcy5mb3JtdWxhaXJlID0gdGhpcy5mb3JtQnVpbGRlclNlcnZpY2VcclxuICAgICAgLnNldFZpZXdDb250YWluZXJSZWYodGhpcy5mb3JtQ29udGFpbmVyUmVmKVxyXG4gICAgICAuZ2VuZXJhdGVGb3JtSW5WaWV3KClcclxuICAgICAgLmZvcm07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2FuY2VsKCkge1xyXG4gICAgdGhpcy5jbG9zZShmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgY2xvc2UodmFsdWUpIHtcclxuICAgIHRoaXMubWREaWFsb2dSZWYuY2xvc2UodmFsdWUpO1xyXG4gIH1cclxuXHJcbiAgcHVibGljIGNvbmZpcm0oKSB7XHJcbiAgICB0aGlzLmNsb3NlKHRydWUpO1xyXG4gIH1cclxuXHJcbiAgQEhvc3RMaXN0ZW5lcihcImtleWRvd24uZXNjXCIpXHJcbiAgcHVibGljIG9uRXNjKCkge1xyXG4gICAgdGhpcy5jbG9zZShmYWxzZSk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgdmFsaWRhdGVGcm9tKHsgdmFsdWUsIHZhbGlkIH06IHsgdmFsdWU6IGFueSwgdmFsaWQ6IGJvb2xlYW4gfSkge1xyXG5cclxuICAgIHRoaXMuZm9ybUJ1aWxkZXJTZXJ2aWNlLm9uQ2xpY2tTdWJtaXQoKVxyXG5cclxuICAgIGlmICghdmFsaWQpIHJldHVybjtcclxuXHJcbiAgICBjb25zb2xlLmxvZyhcInZhbHVlc1wiLCB2YWx1ZSk7XHJcblxyXG4gICAgdGhpcy5jbG9zZSh2YWx1ZSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJoZWFkZXJcIj5cclxuICAgIDxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IGRhdGEudGl0bGUgfX08L2gxPlxyXG48L2Rpdj5cclxuPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtdWxhaXJlXCIgKG5nU3VibWl0KT1cInZhbGlkYXRlRnJvbShmb3JtdWxhaXJlKVwiPlxyXG4gICAgPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJkaWFsb2ctbWVzc2FnZVwiIFtpbm5lckh0bWxdPVwiZGF0YS5tZXNzYWdlIHwgdmFyaWFibGVIdG1sXCI+PC9wPlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjRm9ybUNvbnRhaW5lclJlZj48L25nLXRlbXBsYXRlPlxyXG4gICAgPC9kaXY+XHJcbiAgICA8ZGl2IG1hdC1kaWFsb2ctYWN0aW9ucz5cclxuICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjYW5jZWwoKVwiPnt7IGRhdGEuY2FuY2VsVGV4dCB9fTwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gKm5nSWY9XCJkYXRhLndpdGhGb3JtID09PSBmYWxzZVwiIG1hdC1idXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJjb25maXJtKClcIiBjZGtGb2N1c0luaXRpYWw+e3tcclxuICAgICAgICAgICAgZGF0YS5jb25maXJtVGV4dCB9fTwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b24gKm5nSWY9XCJkYXRhLndpdGhGb3JtXCIgbWF0LWJ1dHRvbiB0eXBlPVwic3VibWl0XCIgY2RrRm9jdXNJbml0aWFsPnt7IGRhdGEuY29uZmlybVRleHQgfX08L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG48L2Zvcm0+Il19