@osumi/angular-tools 1.0.0 → 1.0.2
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +110 -115
- package/esm2022/lib/components/dialogs/alert-dialog/alert-dialog.component.mjs +4 -4
- package/esm2022/lib/components/dialogs/confirm-dialog/confirm-dialog.component.mjs +4 -4
- package/esm2022/lib/components/dialogs/form-dialog/form-dialog.component.mjs +5 -5
- package/esm2022/lib/components/overlay/overlay.component.mjs +5 -5
- package/esm2022/lib/interfaces/dialogs.interface.mjs +1 -1
- package/esm2022/lib/interfaces/modals.interface.mjs +1 -1
- package/esm2022/lib/model/custom-overlay-ref.model.mjs +5 -5
- package/esm2022/lib/services/dialog.service.mjs +8 -7
- package/esm2022/lib/services/overlay.service.mjs +5 -7
- package/esm2022/public-api.mjs +3 -3
- package/fesm2022/osumi-angular-tools.mjs +17 -16
- package/fesm2022/osumi-angular-tools.mjs.map +1 -1
- package/lib/components/dialogs/alert-dialog/alert-dialog.component.d.ts +2 -2
- package/lib/components/dialogs/confirm-dialog/confirm-dialog.component.d.ts +2 -2
- package/lib/components/dialogs/form-dialog/form-dialog.component.d.ts +2 -2
- package/lib/components/overlay/overlay.component.d.ts +2 -2
- package/lib/interfaces/modals.interface.d.ts +1 -1
- package/lib/model/custom-overlay-ref.model.d.ts +4 -4
- package/lib/services/dialog.service.d.ts +2 -2
- package/lib/services/overlay.service.d.ts +2 -2
- package/package.json +1 -1
- package/public-api.d.ts +2 -2
package/README.md
CHANGED
@@ -1,115 +1,110 @@
|
|
1
|
-
# Osumi Angular Tools
|
2
|
-
|
3
|
-
Librería de componentes y servicios reutilizables. En esta librería se incluyen las siguientes funcionalidades:
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
NOTA: Para poder usar estos servicios es necesario usar `Angular 18.2+`, `Angular Material 18.2+`, `Angular CDK 18.2+` y `rxjs 7.8+`
|
9
|
-
|
10
|
-
**dialog**
|
11
|
-
|
12
|
-
Permite mostrar diálogos con mensajes personalizados:
|
13
|
-
|
14
|
-
**alert**
|
15
|
-
|
16
|
-
Muestra un diálogo con un título (`title`) y un texto (`content`) personalizado. También permite personalizar el texto del botón "Continuar" (`ok`).
|
17
|
-
|
18
|
-
```typescript
|
19
|
-
dialog: DialogService = inject(DialogService);
|
20
|
-
|
21
|
-
this.dialog.alert({
|
22
|
-
title:
|
23
|
-
content:
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
this.
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
})
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
}
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
});
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
selectBuscadorResultadosRow(row: ArticuloBuscador): void {
|
112
|
-
this.customOverlayRef.close(row.localizador); // Cerrar el modal devolviendo datos al componente padre
|
113
|
-
}
|
114
|
-
}
|
115
|
-
```
|
1
|
+
# Osumi Angular Tools
|
2
|
+
|
3
|
+
Librería de componentes y servicios reutilizables. En esta librería se incluyen las siguientes funcionalidades:
|
4
|
+
|
5
|
+
- `dialog`: Servicio para crear ventanas de diálogo (`alert`, `confirm` y `form`).
|
6
|
+
- `overlay`: Servicio para crear ventanas modales en las que cargar componentes personalizados.
|
7
|
+
|
8
|
+
NOTA: Para poder usar estos servicios es necesario usar `Angular 18.2+`, `Angular Material 18.2+`, `Angular CDK 18.2+` y `rxjs 7.8+`
|
9
|
+
|
10
|
+
**dialog**
|
11
|
+
|
12
|
+
Permite mostrar diálogos con mensajes personalizados:
|
13
|
+
|
14
|
+
**alert**
|
15
|
+
|
16
|
+
Muestra un diálogo con un título (`title`) y un texto (`content`) personalizado. También permite personalizar el texto del botón "Continuar" (`ok`).
|
17
|
+
|
18
|
+
```typescript
|
19
|
+
dialog: DialogService = inject(DialogService);
|
20
|
+
|
21
|
+
this.dialog.alert({
|
22
|
+
title: "Datos guardados",
|
23
|
+
content: 'Los datos del cliente "' + this.selectedClient.nombreApellidos + '" han sido correctamente guardados.',
|
24
|
+
ok: "Continuar",
|
25
|
+
});
|
26
|
+
```
|
27
|
+
|
28
|
+
**confirm**
|
29
|
+
|
30
|
+
Muestra un diálogo con un título (`title`) y texto (`content`) personalizables. Permite personalizar el texto de los botones "Continuar" (`ok`) y "Cancelar" (`cancel`).
|
31
|
+
|
32
|
+
```typescript
|
33
|
+
dialog: DialogService = inject(DialogService);
|
34
|
+
|
35
|
+
this.dialog
|
36
|
+
.confirm({
|
37
|
+
title: "Confirmar",
|
38
|
+
content: '¿Estás seguro de querer borrar el cliente "' + this.selectedClient.nombreApellidos + '"?',
|
39
|
+
ok: "Continuar",
|
40
|
+
cancel: "Cancelar",
|
41
|
+
})
|
42
|
+
.subscribe((result) => {
|
43
|
+
if (result === true) {
|
44
|
+
this.confirmDeleteCliente();
|
45
|
+
}
|
46
|
+
});
|
47
|
+
```
|
48
|
+
|
49
|
+
**form**
|
50
|
+
|
51
|
+
Permite mostrar un diálogo con una serie de campos (`fields`), un pequeño formulario. Como en los casos anteriores se puede personalizar el título (`title`), el texto (`content`) y los botones "Continuar" (`ok`) y "Cancelar" (`cancel`).
|
52
|
+
|
53
|
+
```typescript
|
54
|
+
dialog: DialogService = inject(DialogService);
|
55
|
+
|
56
|
+
this.dialog
|
57
|
+
.form({
|
58
|
+
title: "Introducir email",
|
59
|
+
content: "Introduce el email del cliente",
|
60
|
+
ok: "Continuar",
|
61
|
+
cancel: "Cancelar",
|
62
|
+
fields: [{ title: "Email", type: "email", value: null }],
|
63
|
+
})
|
64
|
+
.subscribe((result: DialogOptions): void => {
|
65
|
+
if (result !== undefined) {
|
66
|
+
this.sendTicket(this.historicoVentasSelected.id, result[0].value);
|
67
|
+
}
|
68
|
+
});
|
69
|
+
```
|
70
|
+
|
71
|
+
**overlay**
|
72
|
+
|
73
|
+
Permite mostrar ventanas modales con componentes personalizados. Estos componentes luego pueden pasar datos de vuelta. Se incluye la interfaz `Modal` que se puede extender con campos personalizados para pasar información al modal que se muestra.
|
74
|
+
|
75
|
+
```typescript
|
76
|
+
// Componente que abre un modal
|
77
|
+
export interface BuscadorModal extends Modal {
|
78
|
+
key: string;
|
79
|
+
}
|
80
|
+
|
81
|
+
os: OverlayService = inject(OverlayService);
|
82
|
+
|
83
|
+
const modalBuscadorData: BuscadorModal = {
|
84
|
+
modalTitle: "Buscador",
|
85
|
+
modalColor: "blue",
|
86
|
+
css: "modal-wide",
|
87
|
+
key: ev.key,
|
88
|
+
};
|
89
|
+
const dialog = this.os.open(BuscadorModalComponent, modalBuscadorData); // BuscadorModalComponent sería el componente a mostrar en el modal
|
90
|
+
dialog.afterClosed$.subscribe((data): void => {
|
91
|
+
if (data.data !== null) {
|
92
|
+
console.log(data.data); // Resultado obtenido del modal
|
93
|
+
} else {
|
94
|
+
console.log("El modal se ha cerrado sin devolver datos.");
|
95
|
+
}
|
96
|
+
});
|
97
|
+
|
98
|
+
// Componente BuscadorModalComponent abierto en el modal
|
99
|
+
export default class BuscadorModalComponent implements OnInit {
|
100
|
+
private customOverlayRef: CustomOverlayRef<null, { key: string }> = inject(CustomOverlayRef); // Referencia de la que obtener los datos pasados al modal y para pasarle datos de vuelta
|
101
|
+
|
102
|
+
ngOnInit(): void {
|
103
|
+
this.searchName = this.customOverlayRef.data.key; // Propiedad pasada al modal
|
104
|
+
}
|
105
|
+
|
106
|
+
selectBuscadorResultadosRow(row: ArticuloBuscador): void {
|
107
|
+
this.customOverlayRef.close(row.localizador); // Cerrar el modal devolviendo datos al componente padre
|
108
|
+
}
|
109
|
+
}
|
110
|
+
```
|
@@ -2,16 +2,16 @@ import { Component, inject, signal } from '@angular/core';
|
|
2
2
|
import { MatButton } from '@angular/material/button';
|
3
3
|
import { MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle, } from '@angular/material/dialog';
|
4
4
|
import * as i0 from "@angular/core";
|
5
|
-
export
|
5
|
+
export class AlertDialogComponent {
|
6
6
|
dialogRef = inject(MatDialogRef);
|
7
7
|
title = signal('');
|
8
8
|
content = signal('');
|
9
9
|
ok = signal('');
|
10
10
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AlertDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
11
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AlertDialogComponent, isStandalone: true, selector: "
|
11
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AlertDialogComponent, isStandalone: true, selector: "oat-alert-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p [innerHtml]=\"content()\"></p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
12
12
|
}
|
13
13
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AlertDialogComponent, decorators: [{
|
14
14
|
type: Component,
|
15
|
-
args: [{ standalone: true, selector: '
|
15
|
+
args: [{ standalone: true, selector: 'oat-alert-dialog', imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p [innerHtml]=\"content()\"></p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>" }]
|
16
16
|
}] });
|
17
|
-
//# sourceMappingURL=data:application/json;base64,
|
17
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29zdW1pLWFuZ3VsYXItdG9vbHMvc3JjL2xpYi9jb21wb25lbnRzL2RpYWxvZ3MvYWxlcnQtZGlhbG9nL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvY29tcG9uZW50cy9kaWFsb2dzL2FsZXJ0LWRpYWxvZy9hbGVydC1kaWFsb2cuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFrQixNQUFNLGVBQWUsQ0FBQztBQUMxRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDckQsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGNBQWMsR0FDZixNQUFNLDBCQUEwQixDQUFDOztBQVFsQyxNQUFNLE9BQU8sb0JBQW9CO0lBQ3hCLFNBQVMsR0FBdUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRXJFLEtBQUssR0FBMkIsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELE9BQU8sR0FBMkIsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELEVBQUUsR0FBMkIsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO3dHQUw1QyxvQkFBb0I7NEZBQXBCLG9CQUFvQiw0RUNmakMseVZBV00sNENERU0sY0FBYywrSEFBRSxnQkFBZ0IseUdBQUUsZ0JBQWdCLDRIQUFFLFNBQVM7OzRGQUU1RCxvQkFBb0I7a0JBTmhDLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLGtCQUFrQixXQUVuQixDQUFDLGNBQWMsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGluamVjdCwgc2lnbmFsLCBXcml0YWJsZVNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQge1xyXG4gIE1hdERpYWxvZ0FjdGlvbnMsXHJcbiAgTWF0RGlhbG9nQ29udGVudCxcclxuICBNYXREaWFsb2dSZWYsXHJcbiAgTWF0RGlhbG9nVGl0bGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2VsZWN0b3I6ICdvYXQtYWxlcnQtZGlhbG9nJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICBpbXBvcnRzOiBbTWF0RGlhbG9nVGl0bGUsIE1hdERpYWxvZ0NvbnRlbnQsIE1hdERpYWxvZ0FjdGlvbnMsIE1hdEJ1dHRvbl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBbGVydERpYWxvZ0NvbXBvbmVudCB7XHJcbiAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPEFsZXJ0RGlhbG9nQ29tcG9uZW50PiA9IGluamVjdChNYXREaWFsb2dSZWYpO1xyXG5cclxuICBwdWJsaWMgdGl0bGU6IFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gPSBzaWduYWw8c3RyaW5nPignJyk7XHJcbiAgcHVibGljIGNvbnRlbnQ6IFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gPSBzaWduYWw8c3RyaW5nPignJyk7XHJcbiAgcHVibGljIG9rOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG59XHJcbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IHRpdGxlKCkgfX08L2gxPlxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cclxuXHQ8cCBbaW5uZXJIdG1sXT1cImNvbnRlbnQoKVwiPjwvcD5cclxuPC9kaXY+XHJcbjxkaXYgbWF0LWRpYWxvZy1hY3Rpb25zXHJcblx0IGFsaWduPVwiZW5kXCI+XHJcblx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcclxuXHRcdFx0bWF0LWZsYXQtYnV0dG9uXHJcblx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdChjbGljayk9XCJkaWFsb2dSZWYuY2xvc2UodHJ1ZSlcIlxyXG5cdFx0XHRjZGtGb2N1c0luaXRpYWw+e3sgb2soKSB9fTwvYnV0dG9uPlxyXG48L2Rpdj4iXX0=
|
@@ -2,17 +2,17 @@ import { Component, inject, signal } from '@angular/core';
|
|
2
2
|
import { MatButton } from '@angular/material/button';
|
3
3
|
import { MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle, } from '@angular/material/dialog';
|
4
4
|
import * as i0 from "@angular/core";
|
5
|
-
export
|
5
|
+
export class ConfirmDialogComponent {
|
6
6
|
dialogRef = inject(MatDialogRef);
|
7
7
|
title = signal('');
|
8
8
|
content = signal('');
|
9
9
|
ok = signal('');
|
10
10
|
cancel = signal('');
|
11
11
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ConfirmDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
12
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ConfirmDialogComponent, isStandalone: true, selector: "
|
12
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ConfirmDialogComponent, isStandalone: true, selector: "oat-confirm-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p>{{ content() }}</p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
13
13
|
}
|
14
14
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
|
15
15
|
type: Component,
|
16
|
-
args: [{ standalone: true, selector: '
|
16
|
+
args: [{ standalone: true, selector: 'oat-confirm-dialog', imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p>{{ content() }}</p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>" }]
|
17
17
|
}] });
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3N1bWktYW5ndWxhci10b29scy9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvY29tcG9uZW50cy9kaWFsb2dzL2NvbmZpcm0tZGlhbG9nL2NvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JELE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsZ0JBQWdCLEVBQ2hCLFlBQVksRUFDWixjQUFjLEdBQ2YsTUFBTSwwQkFBMEIsQ0FBQzs7QUFRbEMsTUFBTSxPQUFPLHNCQUFzQjtJQUMxQixTQUFTLEdBQXlDLE1BQU0sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUV2RSxLQUFLLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUNuRCxPQUFPLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUNyRCxFQUFFLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUNoRCxNQUFNLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQzt3R0FOaEQsc0JBQXNCOzRGQUF0QixzQkFBc0IsOEVDZm5DLGtlQWdCTSw0Q0RITSxjQUFjLCtIQUFFLGdCQUFnQix5R0FBRSxnQkFBZ0IsNEhBQUUsU0FBUzs7NEZBRTVELHNCQUFzQjtrQkFObEMsU0FBUztpQ0FDSSxJQUFJLFlBQ04sb0JBQW9CLFdBRXJCLENBQUMsY0FBYyxFQUFFLGdCQUFnQixFQUFFLGdCQUFnQixFQUFFLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XHJcbmltcG9ydCB7XHJcbiAgTWF0RGlhbG9nQWN0aW9ucyxcclxuICBNYXREaWFsb2dDb250ZW50LFxyXG4gIE1hdERpYWxvZ1JlZixcclxuICBNYXREaWFsb2dUaXRsZSxcclxufSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBzZWxlY3RvcjogJ29hdC1jb25maXJtLWRpYWxvZycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbmZpcm0tZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICBpbXBvcnRzOiBbTWF0RGlhbG9nVGl0bGUsIE1hdERpYWxvZ0NvbnRlbnQsIE1hdERpYWxvZ0FjdGlvbnMsIE1hdEJ1dHRvbl0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBDb25maXJtRGlhbG9nQ29tcG9uZW50IHtcclxuICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Q29uZmlybURpYWxvZ0NvbXBvbmVudD4gPSBpbmplY3QoTWF0RGlhbG9nUmVmKTtcclxuXHJcbiAgcHVibGljIHRpdGxlOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG4gIHB1YmxpYyBjb250ZW50OiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG4gIHB1YmxpYyBvazogV3JpdGFibGVTaWduYWw8c3RyaW5nPiA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcclxuICBwdWJsaWMgY2FuY2VsOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG59XHJcbiIsIjxoMSBtYXQtZGlhbG9nLXRpdGxlPnt7IHRpdGxlKCkgfX08L2gxPlxyXG48ZGl2IG1hdC1kaWFsb2ctY29udGVudD5cclxuXHQ8cD57eyBjb250ZW50KCkgfX08L3A+XHJcbjwvZGl2PlxyXG48ZGl2IG1hdC1kaWFsb2ctYWN0aW9uc1xyXG5cdCBhbGlnbj1cImVuZFwiPlxyXG5cdEBpZiAoY2FuY2VsKCkgIT09ICcnKSB7XHJcblx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcclxuXHRcdFx0bWF0LWJ1dHRvblxyXG5cdFx0XHQoY2xpY2spPVwiZGlhbG9nUmVmLmNsb3NlKClcIj57eyBjYW5jZWwoKSB9fTwvYnV0dG9uPlxyXG5cdH1cclxuXHQ8YnV0dG9uIHR5cGU9XCJidXR0b25cIlxyXG5cdFx0XHRtYXQtZmxhdC1idXR0b25cclxuXHRcdFx0Y29sb3I9XCJwcmltYXJ5XCJcclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSh0cnVlKVwiXHJcblx0XHRcdGNka0ZvY3VzSW5pdGlhbD57eyBvaygpIH19PC9idXR0b24+XHJcbjwvZGl2PiJdfQ==
|
@@ -6,7 +6,7 @@ import { MatFormField, MatHint, MatLabel } from '@angular/material/form-field';
|
|
6
6
|
import { MatInput } from '@angular/material/input';
|
7
7
|
import * as i0 from "@angular/core";
|
8
8
|
import * as i1 from "@angular/forms";
|
9
|
-
export
|
9
|
+
export class FormDialogComponent {
|
10
10
|
dialogRef = inject(MatDialogRef);
|
11
11
|
title = signal('');
|
12
12
|
content = signal('');
|
@@ -14,11 +14,11 @@ export default class FormDialogComponent {
|
|
14
14
|
ok = signal('');
|
15
15
|
cancel = signal('');
|
16
16
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
17
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: FormDialogComponent, isStandalone: true, selector: "
|
17
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: FormDialogComponent, isStandalone: true, selector: "oat-form-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p class=\"margin-bottom\">{{ content() }}</p>\r\n\t@for (field of fields(); track field.title) {\r\n\t<div class=\"form-field margin-right\">\r\n\t\t<mat-form-field class=\"max-width\">\r\n\t\t\t<mat-label>{{field.title}}</mat-label>\r\n\t\t\t<input matInput\r\n\t\t\t\t [type]=\"field.type\"\r\n\t\t\t\t [(ngModel)]=\"field.value\">\r\n\t\t\t@if (field.hint) {\r\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\r\n\t\t\t}\r\n\t\t</mat-form-field>\r\n\t</div>\r\n\t}\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t[mat-dialog-close]=\"fields()\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", styles: [".margin-bottom{margin-bottom:16px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
18
18
|
}
|
19
19
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormDialogComponent, decorators: [{
|
20
20
|
type: Component,
|
21
|
-
args: [{ standalone: true, selector: '
|
21
|
+
args: [{ standalone: true, selector: 'oat-form-dialog', imports: [
|
22
22
|
FormsModule,
|
23
23
|
MatDialogTitle,
|
24
24
|
MatDialogContent,
|
@@ -29,6 +29,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
29
29
|
MatHint,
|
30
30
|
MatInput,
|
31
31
|
MatButton,
|
32
|
-
], template: "<h1 mat-dialog-title>{{ title() }}</h1>\n<div mat-dialog-content>\n\t<p class=\"margin-bottom\">{{ content() }}</p>\n\t@for (field of fields(); track field.title) {\n\t<div class=\"form-field margin-right\">\n\t\t<mat-form-field class=\"max-width\">\n\t\t\t<mat-label>{{field.title}}</mat-label>\n\t\t\t<input matInput\n\t\t\t\t [type]=\"field.type\"\n\t\t\t\t [(ngModel)]=\"field.value\">\n\t\t\t@if (field.hint) {\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\n\t\t\t}\n\t\t</mat-form-field>\n\t</div>\n\t}\n</div>\n<div mat-dialog-actions\n\t align=\"end\">\n\t@if (cancel() !== '') {\n\t<button type=\"button\"\n\t\t\tmat-button\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\n\t}\n\t<button type=\"button\"\n\t\t\tmat-flat-button\n\t\t\tcolor=\"primary\"\n\t\t\t[mat-dialog-close]=\"fields()\"\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\n</div
|
32
|
+
], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p class=\"margin-bottom\">{{ content() }}</p>\r\n\t@for (field of fields(); track field.title) {\r\n\t<div class=\"form-field margin-right\">\r\n\t\t<mat-form-field class=\"max-width\">\r\n\t\t\t<mat-label>{{field.title}}</mat-label>\r\n\t\t\t<input matInput\r\n\t\t\t\t [type]=\"field.type\"\r\n\t\t\t\t [(ngModel)]=\"field.value\">\r\n\t\t\t@if (field.hint) {\r\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\r\n\t\t\t}\r\n\t\t</mat-form-field>\r\n\t</div>\r\n\t}\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t[mat-dialog-close]=\"fields()\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", styles: [".margin-bottom{margin-bottom:16px}\n"] }]
|
33
33
|
}] });
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3N1bWktYW5ndWxhci10b29scy9zcmMvbGliL2NvbXBvbmVudHMvZGlhbG9ncy9mb3JtLWRpYWxvZy9mb3JtLWRpYWxvZy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvY29tcG9uZW50cy9kaWFsb2dzL2Zvcm0tZGlhbG9nL2Zvcm0tZGlhbG9nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQ0wsZ0JBQWdCLEVBQ2hCLGNBQWMsRUFDZCxnQkFBZ0IsRUFDaEIsWUFBWSxFQUNaLGNBQWMsR0FDZixNQUFNLDBCQUEwQixDQUFDO0FBQ2xDLE9BQU8sRUFBRSxZQUFZLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9FLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7O0FBcUJuRCxNQUFNLE9BQU8sbUJBQW1CO0lBQ3ZCLFNBQVMsR0FBc0MsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBRXBFLEtBQUssR0FBMkIsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ25ELE9BQU8sR0FBMkIsTUFBTSxDQUFTLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELE1BQU0sR0FBa0MsTUFBTSxDQUFnQixFQUFFLENBQUMsQ0FBQztJQUNsRSxFQUFFLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQztJQUNoRCxNQUFNLEdBQTJCLE1BQU0sQ0FBUyxFQUFFLENBQUMsQ0FBQzt3R0FQaEQsbUJBQW1COzRGQUFuQixtQkFBbUIsMkVDaENoQyw0NUJBNkJNLDZGRFRGLFdBQVcsK21CQUNYLGNBQWMsK0hBQ2QsZ0JBQWdCLHlHQUNoQixnQkFBZ0IsNEhBQ2hCLGNBQWMscUxBQ2QsWUFBWSw0TEFDWixRQUFRLHNEQUNSLE9BQU8sOEVBQ1AsUUFBUSxpVUFDUixTQUFTOzs0RkFHQSxtQkFBbUI7a0JBbEIvQixTQUFTO2lDQUNJLElBQUksWUFDTixpQkFBaUIsV0FHbEI7d0JBQ1AsV0FBVzt3QkFDWCxjQUFjO3dCQUNkLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixjQUFjO3dCQUNkLFlBQVk7d0JBQ1osUUFBUTt3QkFDUixPQUFPO3dCQUNQLFFBQVE7d0JBQ1IsU0FBUztxQkFDViIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBzaWduYWwsIFdyaXRhYmxlU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBNYXRCdXR0b24gfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24nO1xyXG5pbXBvcnQge1xyXG4gIE1hdERpYWxvZ0FjdGlvbnMsXHJcbiAgTWF0RGlhbG9nQ2xvc2UsXHJcbiAgTWF0RGlhbG9nQ29udGVudCxcclxuICBNYXREaWFsb2dSZWYsXHJcbiAgTWF0RGlhbG9nVGl0bGUsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgTWF0Rm9ybUZpZWxkLCBNYXRIaW50LCBNYXRMYWJlbCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2Zvcm0tZmllbGQnO1xyXG5pbXBvcnQgeyBNYXRJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2lucHV0JztcclxuaW1wb3J0IHsgRGlhbG9nRmllbGQgfSBmcm9tICcuLi8uLi8uLi9pbnRlcmZhY2VzL2RpYWxvZ3MuaW50ZXJmYWNlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgc2VsZWN0b3I6ICdvYXQtZm9ybS1kaWFsb2cnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vZm9ybS1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuICBpbXBvcnRzOiBbXHJcbiAgICBGb3Jtc01vZHVsZSxcclxuICAgIE1hdERpYWxvZ1RpdGxlLFxyXG4gICAgTWF0RGlhbG9nQ29udGVudCxcclxuICAgIE1hdERpYWxvZ0FjdGlvbnMsXHJcbiAgICBNYXREaWFsb2dDbG9zZSxcclxuICAgIE1hdEZvcm1GaWVsZCxcclxuICAgIE1hdExhYmVsLFxyXG4gICAgTWF0SGludCxcclxuICAgIE1hdElucHV0LFxyXG4gICAgTWF0QnV0dG9uLFxyXG4gIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBGb3JtRGlhbG9nQ29tcG9uZW50IHtcclxuICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8Rm9ybURpYWxvZ0NvbXBvbmVudD4gPSBpbmplY3QoTWF0RGlhbG9nUmVmKTtcclxuXHJcbiAgcHVibGljIHRpdGxlOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG4gIHB1YmxpYyBjb250ZW50OiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsPHN0cmluZz4oJycpO1xyXG4gIHB1YmxpYyBmaWVsZHM6IFdyaXRhYmxlU2lnbmFsPERpYWxvZ0ZpZWxkW10+ID0gc2lnbmFsPERpYWxvZ0ZpZWxkW10+KFtdKTtcclxuICBwdWJsaWMgb2s6IFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gPSBzaWduYWw8c3RyaW5nPignJyk7XHJcbiAgcHVibGljIGNhbmNlbDogV3JpdGFibGVTaWduYWw8c3RyaW5nPiA9IHNpZ25hbDxzdHJpbmc+KCcnKTtcclxufVxyXG4iLCI8aDEgbWF0LWRpYWxvZy10aXRsZT57eyB0aXRsZSgpIH19PC9oMT5cclxuPGRpdiBtYXQtZGlhbG9nLWNvbnRlbnQ+XHJcblx0PHAgY2xhc3M9XCJtYXJnaW4tYm90dG9tXCI+e3sgY29udGVudCgpIH19PC9wPlxyXG5cdEBmb3IgKGZpZWxkIG9mIGZpZWxkcygpOyB0cmFjayBmaWVsZC50aXRsZSkge1xyXG5cdDxkaXYgY2xhc3M9XCJmb3JtLWZpZWxkIG1hcmdpbi1yaWdodFwiPlxyXG5cdFx0PG1hdC1mb3JtLWZpZWxkIGNsYXNzPVwibWF4LXdpZHRoXCI+XHJcblx0XHRcdDxtYXQtbGFiZWw+e3tmaWVsZC50aXRsZX19PC9tYXQtbGFiZWw+XHJcblx0XHRcdDxpbnB1dCBtYXRJbnB1dFxyXG5cdFx0XHRcdCAgIFt0eXBlXT1cImZpZWxkLnR5cGVcIlxyXG5cdFx0XHRcdCAgIFsobmdNb2RlbCldPVwiZmllbGQudmFsdWVcIj5cclxuXHRcdFx0QGlmIChmaWVsZC5oaW50KSB7XHJcblx0XHRcdDxtYXQtaGludD57e2ZpZWxkLmhpbnR9fTwvbWF0LWhpbnQ+XHJcblx0XHRcdH1cclxuXHRcdDwvbWF0LWZvcm0tZmllbGQ+XHJcblx0PC9kaXY+XHJcblx0fVxyXG48L2Rpdj5cclxuPGRpdiBtYXQtZGlhbG9nLWFjdGlvbnNcclxuXHQgYWxpZ249XCJlbmRcIj5cclxuXHRAaWYgKGNhbmNlbCgpICE9PSAnJykge1xyXG5cdDxidXR0b24gdHlwZT1cImJ1dHRvblwiXHJcblx0XHRcdG1hdC1idXR0b25cclxuXHRcdFx0KGNsaWNrKT1cImRpYWxvZ1JlZi5jbG9zZSgpXCI+e3sgY2FuY2VsKCkgfX08L2J1dHRvbj5cclxuXHR9XHJcblx0PGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCJcclxuXHRcdFx0bWF0LWZsYXQtYnV0dG9uXHJcblx0XHRcdGNvbG9yPVwicHJpbWFyeVwiXHJcblx0XHRcdFttYXQtZGlhbG9nLWNsb3NlXT1cImZpZWxkcygpXCJcclxuXHRcdFx0Y2RrRm9jdXNJbml0aWFsPnt7IG9rKCkgfX08L2J1dHRvbj5cclxuPC9kaXY+Il19
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import { NgComponentOutlet } from '@angular/common';
|
2
2
|
import { Component, inject, Renderer2 } from '@angular/core';
|
3
3
|
import { MatIcon } from '@angular/material/icon';
|
4
|
-
import CustomOverlayRef from '../../model/custom-overlay-ref.model';
|
4
|
+
import { CustomOverlayRef } from '../../model/custom-overlay-ref.model';
|
5
5
|
import * as i0 from "@angular/core";
|
6
|
-
export
|
6
|
+
export class OverlayComponent {
|
7
7
|
customOverlayRef = inject(CustomOverlayRef);
|
8
8
|
renderer = inject(Renderer2);
|
9
9
|
content = this.customOverlayRef.content;
|
@@ -23,10 +23,10 @@ export default class OverlayComponent {
|
|
23
23
|
this.customOverlayRef.close(null);
|
24
24
|
}
|
25
25
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
26
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OverlayComponent, isStandalone: true, selector: "
|
26
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OverlayComponent, isStandalone: true, selector: "oat-overlay", ngImport: i0, template: "<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\r\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\r\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\r\n\t\t@if (!inputData.hideCloseBtn) {\r\n\t\t<div class=\"btn-close\"\r\n\t\t\t (click)=\"close()\">\r\n\t\t\t<mat-icon>close</mat-icon>\r\n\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"modal__content\">\r\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\r\n\t</div>\r\n</div>", styles: [":host{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.modal{border-radius:6px;box-shadow:4px 4px 5px 0 var(--modal-bg-color)}.modal__header{border-top-left-radius:6px;border-top-right-radius:6px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;height:48px;font-size:24px;background-color:var(--color-blue);color:#fff}.modal__header .btn-close{cursor:pointer}.modal__header--blue{background-color:var(--main-color)}.modal__header--yellow{background-color:var(--color-yellow);color:var(--color-black)}.modal__header--yellow>.btn-close{color:var(--color-black)}.modal__header--red{background-color:var(--color-red)}.modal__content{padding:20px;border-bottom-left-radius:6px;background-color:var(--color-white);border-bottom-right-radius:6px;height:calc(100% - 48px);overflow-y:auto;box-sizing:border-box}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }] });
|
27
27
|
}
|
28
28
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayComponent, decorators: [{
|
29
29
|
type: Component,
|
30
|
-
args: [{ standalone: true, selector: '
|
30
|
+
args: [{ standalone: true, selector: 'oat-overlay', imports: [MatIcon, NgComponentOutlet], template: "<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\r\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\r\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\r\n\t\t@if (!inputData.hideCloseBtn) {\r\n\t\t<div class=\"btn-close\"\r\n\t\t\t (click)=\"close()\">\r\n\t\t\t<mat-icon>close</mat-icon>\r\n\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"modal__content\">\r\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\r\n\t</div>\r\n</div>", styles: [":host{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.modal{border-radius:6px;box-shadow:4px 4px 5px 0 var(--modal-bg-color)}.modal__header{border-top-left-radius:6px;border-top-right-radius:6px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;height:48px;font-size:24px;background-color:var(--color-blue);color:#fff}.modal__header .btn-close{cursor:pointer}.modal__header--blue{background-color:var(--main-color)}.modal__header--yellow{background-color:var(--color-yellow);color:var(--color-black)}.modal__header--yellow>.btn-close{color:var(--color-black)}.modal__header--red{background-color:var(--color-red)}.modal__content{padding:20px;border-bottom-left-radius:6px;background-color:var(--color-white);border-bottom-right-radius:6px;height:calc(100% - 48px);overflow-y:auto;box-sizing:border-box}\n"] }]
|
31
31
|
}] });
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvY29tcG9uZW50cy9vdmVybGF5L292ZXJsYXkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3N1bWktYW5ndWxhci10b29scy9zcmMvbGliL2NvbXBvbmVudHMvb3ZlcmxheS9vdmVybGF5LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFVLFNBQVMsRUFBUSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFakQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7O0FBU3hFLE1BQU0sT0FBTyxnQkFBZ0I7SUFDbkIsZ0JBQWdCLEdBQ3RCLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO0lBQ25CLFFBQVEsR0FBYyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFFaEQsT0FBTyxHQUFjLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUM7SUFDbkQsU0FBUyxHQUFVLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFFMUQsUUFBUTtRQUNOLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN0QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUM7SUFDOUMsQ0FBQztJQUVPLGNBQWM7UUFDcEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxDQUFDLEtBQW9CLEVBQVEsRUFBRTtZQUNyRSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQzNCLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNmLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO3dHQXZCVSxnQkFBZ0I7NEZBQWhCLGdCQUFnQix1RUNiN0IsNmZBY00sdzVCREhNLE9BQU8sMklBQUUsaUJBQWlCOzs0RkFFekIsZ0JBQWdCO2tCQVA1QixTQUFTO2lDQUNJLElBQUksWUFDTixhQUFhLFdBR2QsQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0NvbXBvbmVudE91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IENvbXBvbmVudCwgaW5qZWN0LCBPbkluaXQsIFJlbmRlcmVyMiwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE1vZGFsIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9tb2RhbHMuaW50ZXJmYWNlJztcclxuaW1wb3J0IHsgQ3VzdG9tT3ZlcmxheVJlZiB9IGZyb20gJy4uLy4uL21vZGVsL2N1c3RvbS1vdmVybGF5LXJlZi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIHNlbGVjdG9yOiAnb2F0LW92ZXJsYXknLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9vdmVybGF5LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9vdmVybGF5LmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgaW1wb3J0czogW01hdEljb24sIE5nQ29tcG9uZW50T3V0bGV0XSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE92ZXJsYXlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gIHByaXZhdGUgY3VzdG9tT3ZlcmxheVJlZjogQ3VzdG9tT3ZlcmxheVJlZjxhbnksIE1vZGFsPiA9XHJcbiAgICBpbmplY3QoQ3VzdG9tT3ZlcmxheVJlZik7XHJcbiAgcHJpdmF0ZSByZW5kZXJlcjogUmVuZGVyZXIyID0gaW5qZWN0KFJlbmRlcmVyMik7XHJcblxyXG4gIGNvbnRlbnQ6IFR5cGU8YW55PiA9IHRoaXMuY3VzdG9tT3ZlcmxheVJlZi5jb250ZW50O1xyXG4gIGlucHV0RGF0YTogTW9kYWwgPSB7IG1vZGFsVGl0bGU6ICcnLCBtb2RhbENvbG9yOiAnYmx1ZScgfTtcclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLmxpc3RlblRvRXNjS2V5KCk7XHJcbiAgICB0aGlzLmlucHV0RGF0YSA9IHRoaXMuY3VzdG9tT3ZlcmxheVJlZi5kYXRhO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBsaXN0ZW5Ub0VzY0tleSgpOiB2b2lkIHtcclxuICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAna2V5dXAnLCAoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkID0+IHtcclxuICAgICAgaWYgKGV2ZW50LmtleSA9PT0gJ0VzY2FwZScpIHtcclxuICAgICAgICB0aGlzLmNsb3NlKCk7XHJcbiAgICAgIH1cclxuICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKTogdm9pZCB7XHJcbiAgICB0aGlzLmN1c3RvbU92ZXJsYXlSZWYuY2xvc2UobnVsbCk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgW2NsYXNzXT1cIidtb2RhbCAnICsgKGlucHV0RGF0YS5jc3MgPyBpbnB1dERhdGEuY3NzIDogJycpXCI+XHJcblx0PGRpdiBbY2xhc3NdPVwiJ21vZGFsX19oZWFkZXIgbW9kYWxfX2hlYWRlci0tJyArIGlucHV0RGF0YS5tb2RhbENvbG9yXCI+XHJcblx0XHQ8ZGl2IGNsYXNzPVwidGl0bGVcIj57eyBpbnB1dERhdGEubW9kYWxUaXRsZSB9fTwvZGl2PlxyXG5cdFx0QGlmICghaW5wdXREYXRhLmhpZGVDbG9zZUJ0bikge1xyXG5cdFx0PGRpdiBjbGFzcz1cImJ0bi1jbG9zZVwiXHJcblx0XHRcdCAoY2xpY2spPVwiY2xvc2UoKVwiPlxyXG5cdFx0XHQ8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxyXG5cdFx0PC9kaXY+XHJcblx0XHR9XHJcblx0PC9kaXY+XHJcblxyXG5cdDxkaXYgY2xhc3M9XCJtb2RhbF9fY29udGVudFwiPlxyXG5cdFx0PG5nLWNvbnRhaW5lciAqbmdDb21wb25lbnRPdXRsZXQ9XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XHJcblx0PC9kaXY+XHJcbjwvZGl2PiJdfQ==
|
@@ -1,2 +1,2 @@
|
|
1
1
|
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvaW50ZXJmYWNlcy9kaWFsb2dzLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGludGVyZmFjZSBEaWFsb2dGaWVsZCB7XHJcbiAgdGl0bGU6IHN0cmluZztcclxuICB0eXBlOiBzdHJpbmc7XHJcbiAgdmFsdWU6IHN0cmluZztcclxuICBoaW50Pzogc3RyaW5nO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIERpYWxvZ09wdGlvbnMge1xyXG4gIHRpdGxlOiBzdHJpbmc7XHJcbiAgY29udGVudDogc3RyaW5nO1xyXG4gIGZpZWxkcz86IERpYWxvZ0ZpZWxkW107XHJcbiAgb2s6IHN0cmluZztcclxuICBjYW5jZWw/OiBzdHJpbmc7XHJcbn1cclxuIl19
|
@@ -1,2 +1,2 @@
|
|
1
1
|
export {};
|
2
|
-
//# sourceMappingURL=data:application/json;base64,
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kYWxzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL29zdW1pLWFuZ3VsYXItdG9vbHMvc3JjL2xpYi9pbnRlcmZhY2VzL21vZGFscy5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgTW9kYWwge1xyXG4gIG1vZGFsQ29sb3I6ICdibHVlJyB8ICd5ZWxsb3cnIHwgJ3JlZCc7XHJcbiAgbW9kYWxUaXRsZTogc3RyaW5nO1xyXG4gIGNzcz86IHN0cmluZztcclxuICBoaWRlQ2xvc2VCdG4/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIE92ZXJsYXlDbG9zZUV2ZW50PFI+IHtcclxuICB0eXBlOiAnYmFja2Ryb3BDbGljaycgfCAnY2xvc2UnO1xyXG4gIGRhdGE6IFI7XHJcbn1cclxuIl19
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import { Subject } from
|
1
|
+
import { Subject } from 'rxjs';
|
2
2
|
// R = Response Data Type, T = Data passed to Modal Type
|
3
|
-
export
|
3
|
+
export class CustomOverlayRef {
|
4
4
|
overlay;
|
5
5
|
content;
|
6
6
|
data;
|
@@ -14,13 +14,13 @@ export default class CustomOverlayRef {
|
|
14
14
|
if (closeOnBackdropCLick) {
|
15
15
|
overlay.backdropClick().subscribe({
|
16
16
|
next: () => {
|
17
|
-
this._close(
|
17
|
+
this._close('backdropClick', null);
|
18
18
|
},
|
19
19
|
});
|
20
20
|
}
|
21
21
|
}
|
22
22
|
close(data) {
|
23
|
-
this._close(
|
23
|
+
this._close('close', data);
|
24
24
|
}
|
25
25
|
_close(type, data) {
|
26
26
|
this.overlay.dispose();
|
@@ -31,4 +31,4 @@ export default class CustomOverlayRef {
|
|
31
31
|
this.afterClosed$.complete();
|
32
32
|
}
|
33
33
|
}
|
34
|
-
//# sourceMappingURL=data:application/json;base64,
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLW92ZXJsYXktcmVmLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3N1bWktYW5ndWxhci10b29scy9zcmMvbGliL21vZGVsL2N1c3RvbS1vdmVybGF5LXJlZi5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRy9CLHdEQUF3RDtBQUN4RCxNQUFNLE9BQU8sZ0JBQWdCO0lBSWxCO0lBQ0E7SUFDQTtJQUNBO0lBTlQsWUFBWSxHQUFHLElBQUksT0FBTyxFQUErQixDQUFDO0lBRTFELFlBQ1MsT0FBbUIsRUFDbkIsT0FBa0IsRUFDbEIsSUFBTyxFQUNQLHVCQUFnQyxJQUFJO1FBSHBDLFlBQU8sR0FBUCxPQUFPLENBQVk7UUFDbkIsWUFBTyxHQUFQLE9BQU8sQ0FBVztRQUNsQixTQUFJLEdBQUosSUFBSSxDQUFHO1FBQ1AseUJBQW9CLEdBQXBCLG9CQUFvQixDQUFnQjtRQUUzQyxJQUFJLG9CQUFvQixFQUFFLENBQUM7WUFDekIsT0FBTyxDQUFDLGFBQWEsRUFBRSxDQUFDLFNBQVMsQ0FBQztnQkFDaEMsSUFBSSxFQUFFLEdBQUcsRUFBRTtvQkFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLGVBQWUsRUFBRSxJQUFJLENBQUMsQ0FBQztnQkFDckMsQ0FBQzthQUNGLENBQUMsQ0FBQztRQUNMLENBQUM7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLElBQVU7UUFDZCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxJQUFLLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBRU8sTUFBTSxDQUFDLElBQStCLEVBQUUsSUFBYztRQUM1RCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDO1lBQ3JCLElBQUk7WUFDSixJQUFJO1NBQ0wsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBPdmVybGF5UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xyXG5pbXBvcnQgeyBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgT3ZlcmxheUNsb3NlRXZlbnQgfSBmcm9tICcuLi9pbnRlcmZhY2VzL21vZGFscy5pbnRlcmZhY2UnO1xyXG5cclxuLy8gUiA9IFJlc3BvbnNlIERhdGEgVHlwZSwgVCA9IERhdGEgcGFzc2VkIHRvIE1vZGFsIFR5cGVcclxuZXhwb3J0IGNsYXNzIEN1c3RvbU92ZXJsYXlSZWY8UiA9IGFueSwgVCA9IGFueT4ge1xyXG4gIGFmdGVyQ2xvc2VkJCA9IG5ldyBTdWJqZWN0PE92ZXJsYXlDbG9zZUV2ZW50PFIgfCBudWxsPj4oKTtcclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgb3ZlcmxheTogT3ZlcmxheVJlZixcclxuICAgIHB1YmxpYyBjb250ZW50OiBUeXBlPGFueT4sXHJcbiAgICBwdWJsaWMgZGF0YTogVCxcclxuICAgIHB1YmxpYyBjbG9zZU9uQmFja2Ryb3BDTGljazogYm9vbGVhbiA9IHRydWVcclxuICApIHtcclxuICAgIGlmIChjbG9zZU9uQmFja2Ryb3BDTGljaykge1xyXG4gICAgICBvdmVybGF5LmJhY2tkcm9wQ2xpY2soKS5zdWJzY3JpYmUoe1xyXG4gICAgICAgIG5leHQ6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuX2Nsb3NlKCdiYWNrZHJvcENsaWNrJywgbnVsbCk7XHJcbiAgICAgICAgfSxcclxuICAgICAgfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjbG9zZShkYXRhPzogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLl9jbG9zZSgnY2xvc2UnLCBkYXRhISk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9jbG9zZSh0eXBlOiAnYmFja2Ryb3BDbGljaycgfCAnY2xvc2UnLCBkYXRhOiBSIHwgbnVsbCk6IHZvaWQge1xyXG4gICAgdGhpcy5vdmVybGF5LmRpc3Bvc2UoKTtcclxuICAgIHRoaXMuYWZ0ZXJDbG9zZWQkLm5leHQoe1xyXG4gICAgICB0eXBlLFxyXG4gICAgICBkYXRhLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5hZnRlckNsb3NlZCQuY29tcGxldGUoKTtcclxuICB9XHJcbn1cclxuIl19
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import { inject, Injectable } from '@angular/core';
|
2
2
|
import { MatDialog } from '@angular/material/dialog';
|
3
|
-
import AlertDialogComponent from '../components/dialogs/alert-dialog/alert-dialog.component';
|
4
|
-
import ConfirmDialogComponent from '../components/dialogs/confirm-dialog/confirm-dialog.component';
|
5
|
-
import FormDialogComponent from '../components/dialogs/form-dialog/form-dialog.component';
|
3
|
+
import { AlertDialogComponent } from '../components/dialogs/alert-dialog/alert-dialog.component';
|
4
|
+
import { ConfirmDialogComponent } from '../components/dialogs/confirm-dialog/confirm-dialog.component';
|
5
|
+
import { FormDialogComponent } from '../components/dialogs/form-dialog/form-dialog.component';
|
6
6
|
import * as i0 from "@angular/core";
|
7
|
-
export
|
7
|
+
export class DialogService {
|
8
8
|
dialog = inject(MatDialog);
|
9
9
|
confirm(options) {
|
10
10
|
const dialogRef = this.dialog.open(ConfirmDialogComponent);
|
@@ -37,9 +37,10 @@ export default class DialogService {
|
|
37
37
|
return dialogRef.afterClosed();
|
38
38
|
}
|
39
39
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
40
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService });
|
40
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, providedIn: 'root' });
|
41
41
|
}
|
42
42
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, decorators: [{
|
43
|
-
type: Injectable
|
43
|
+
type: Injectable,
|
44
|
+
args: [{ providedIn: 'root' }]
|
44
45
|
}] });
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vc3VtaS1hbmd1bGFyLXRvb2xzL3NyYy9saWIvc2VydmljZXMvZGlhbG9nLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkQsT0FBTyxFQUFFLFNBQVMsRUFBZ0IsTUFBTSwwQkFBMEIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSwyREFBMkQsQ0FBQztBQUNqRyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUN2RyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5REFBeUQsQ0FBQzs7QUFJOUYsTUFBTSxPQUFPLGFBQWE7SUFDaEIsTUFBTSxHQUFjLE1BQU0sQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUV2QyxPQUFPLENBQUMsT0FBc0I7UUFDbkMsTUFBTSxTQUFTLEdBQXlDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUN0RSxzQkFBc0IsQ0FDdkIsQ0FBQztRQUVGLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNyRCxTQUFTLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDekQsU0FBUyxDQUFDLGlCQUFpQixDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQy9DLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUUsQ0FBQztZQUNqQyxTQUFTLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDekQsQ0FBQztRQUVELE9BQU8sU0FBUyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2pDLENBQUM7SUFFTSxLQUFLLENBQUMsT0FBc0I7UUFDakMsTUFBTSxTQUFTLEdBQ2IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQztRQUV6QyxTQUFTLENBQUMsaUJBQWlCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckQsU0FBUyxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUUvQyxPQUFPLFNBQVMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNqQyxDQUFDO0lBRU0sSUFBSSxDQUFDLE9BQXNCO1FBQ2hDLE1BQU0sU0FBUyxHQUNiLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFeEMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ3JELFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUN6RCxTQUFTLENBQUMsaUJBQWlCLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDL0MsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBQ0QsSUFBSSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRSxDQUFDO1lBQ2pDLFNBQVMsQ0FBQyxpQkFBaUIsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN6RCxDQUFDO1FBRUQsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDakMsQ0FBQzt3R0E1Q1UsYUFBYTs0R0FBYixhQUFhLGNBREEsTUFBTTs7NEZBQ25CLGFBQWE7a0JBRHpCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaW5qZWN0LCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE1hdERpYWxvZywgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBBbGVydERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlhbG9ncy9hbGVydC1kaWFsb2cvYWxlcnQtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL2RpYWxvZ3MvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRm9ybURpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4uL2NvbXBvbmVudHMvZGlhbG9ncy9mb3JtLWRpYWxvZy9mb3JtLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dPcHRpb25zIH0gZnJvbSAnLi4vaW50ZXJmYWNlcy9kaWFsb2dzLmludGVyZmFjZSc7XHJcblxyXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxyXG5leHBvcnQgY2xhc3MgRGlhbG9nU2VydmljZSB7XHJcbiAgcHJpdmF0ZSBkaWFsb2c6IE1hdERpYWxvZyA9IGluamVjdChNYXREaWFsb2cpO1xyXG5cclxuICBwdWJsaWMgY29uZmlybShvcHRpb25zOiBEaWFsb2dPcHRpb25zKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxDb25maXJtRGlhbG9nQ29tcG9uZW50PiA9IHRoaXMuZGlhbG9nLm9wZW4oXHJcbiAgICAgIENvbmZpcm1EaWFsb2dDb21wb25lbnRcclxuICAgICk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLnRpdGxlLnNldChvcHRpb25zLnRpdGxlKTtcclxuICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jb250ZW50LnNldChvcHRpb25zLmNvbnRlbnQpO1xyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLm9rLnNldChvcHRpb25zLm9rKTtcclxuICAgIGlmIChvcHRpb25zLmNhbmNlbCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jYW5jZWwuc2V0KG9wdGlvbnMuY2FuY2VsKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgYWxlcnQob3B0aW9uczogRGlhbG9nT3B0aW9ucyk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xyXG4gICAgY29uc3QgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8QWxlcnREaWFsb2dDb21wb25lbnQ+ID1cclxuICAgICAgdGhpcy5kaWFsb2cub3BlbihBbGVydERpYWxvZ0NvbXBvbmVudCk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLnRpdGxlLnNldChvcHRpb25zLnRpdGxlKTtcclxuICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jb250ZW50LnNldChvcHRpb25zLmNvbnRlbnQpO1xyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLm9rLnNldChvcHRpb25zLm9rKTtcclxuXHJcbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCk7XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgZm9ybShvcHRpb25zOiBEaWFsb2dPcHRpb25zKTogT2JzZXJ2YWJsZTxEaWFsb2dPcHRpb25zPiB7XHJcbiAgICBjb25zdCBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxGb3JtRGlhbG9nQ29tcG9uZW50PiA9XHJcbiAgICAgIHRoaXMuZGlhbG9nLm9wZW4oRm9ybURpYWxvZ0NvbXBvbmVudCk7XHJcblxyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLnRpdGxlLnNldChvcHRpb25zLnRpdGxlKTtcclxuICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jb250ZW50LnNldChvcHRpb25zLmNvbnRlbnQpO1xyXG4gICAgZGlhbG9nUmVmLmNvbXBvbmVudEluc3RhbmNlLm9rLnNldChvcHRpb25zLm9rKTtcclxuICAgIGlmIChvcHRpb25zLmNhbmNlbCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5jYW5jZWwuc2V0KG9wdGlvbnMuY2FuY2VsKTtcclxuICAgIH1cclxuICAgIGlmIChvcHRpb25zLmZpZWxkcyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIGRpYWxvZ1JlZi5jb21wb25lbnRJbnN0YW5jZS5maWVsZHMuc2V0KG9wdGlvbnMuZmllbGRzKTtcclxuICAgIH1cclxuXHJcbiAgICByZXR1cm4gZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
@@ -1,10 +1,10 @@
|
|
1
1
|
import { Overlay, OverlayConfig } from '@angular/cdk/overlay';
|
2
2
|
import { ComponentPortal } from '@angular/cdk/portal';
|
3
3
|
import { inject, Injectable, Injector } from '@angular/core';
|
4
|
-
import
|
5
|
-
import
|
4
|
+
import { OverlayComponent } from '../components/overlay/overlay.component';
|
5
|
+
import { CustomOverlayRef } from '../model/custom-overlay-ref.model';
|
6
6
|
import * as i0 from "@angular/core";
|
7
|
-
export
|
7
|
+
export class OverlayService {
|
8
8
|
overlay = inject(Overlay);
|
9
9
|
injector = inject(Injector);
|
10
10
|
open(content, data, panelCssClasses = [], closeOnBackdropCLick = true) {
|
@@ -33,8 +33,6 @@ export default class OverlayService {
|
|
33
33
|
}
|
34
34
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayService, decorators: [{
|
35
35
|
type: Injectable,
|
36
|
-
args: [{
|
37
|
-
providedIn: 'root',
|
38
|
-
}]
|
36
|
+
args: [{ providedIn: 'root' }]
|
39
37
|
}] });
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
38
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3ZlcmxheS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb3N1bWktYW5ndWxhci10b29scy9zcmMvbGliL3NlcnZpY2VzL292ZXJsYXkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzlELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQVEsTUFBTSxlQUFlLENBQUM7QUFDbkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFFM0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7O0FBR3JFLE1BQU0sT0FBTyxjQUFjO0lBQ2pCLE9BQU8sR0FBWSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDbkMsUUFBUSxHQUFhLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUU5QyxJQUFJLENBQ0YsT0FBa0IsRUFDbEIsSUFBVyxFQUNYLGtCQUE0QixFQUFFLEVBQzlCLHVCQUFnQyxJQUFJO1FBRXBDLE1BQU0sZ0JBQWdCLEdBQWEsQ0FBQyxhQUFhLEVBQUUsV0FBVyxDQUFDLENBQUMsTUFBTSxDQUNwRSxlQUFlLENBQ2hCLENBQUM7UUFDRixNQUFNLE1BQU0sR0FBRyxJQUFJLGFBQWEsQ0FBQztZQUMvQixXQUFXLEVBQUUsSUFBSTtZQUNqQixVQUFVLEVBQUUsZ0JBQWdCO1lBQzVCLGFBQWEsRUFBRSxrQkFBa0I7WUFDakMsS0FBSyxFQUFFLE1BQU07WUFDYixNQUFNLEVBQUUsTUFBTTtTQUNmLENBQUMsQ0FBQztRQUVILE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRS9DLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxnQkFBZ0IsQ0FDM0MsVUFBVSxFQUNWLE9BQU8sRUFDUCxJQUFJLEVBQ0osb0JBQW9CLENBQ3JCLENBQUM7UUFDRixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RSxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksZUFBZSxDQUFDLGdCQUFnQixFQUFFLElBQUksRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBRXpFLE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxHQUFxQixFQUFFLEdBQWE7UUFDekQsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3JCLFNBQVMsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLFFBQVEsRUFBRSxHQUFHLEVBQUUsQ0FBQztZQUN6RCxNQUFNLEVBQUUsR0FBRztTQUNaLENBQUMsQ0FBQztJQUNMLENBQUM7d0dBeENVLGNBQWM7NEdBQWQsY0FBYyxjQURELE1BQU07OzRGQUNuQixjQUFjO2tCQUQxQixVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE92ZXJsYXksIE92ZXJsYXlDb25maWcgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XHJcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xyXG5pbXBvcnQgeyBpbmplY3QsIEluamVjdGFibGUsIEluamVjdG9yLCBUeXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlDb21wb25lbnQgfSBmcm9tICcuLi9jb21wb25lbnRzL292ZXJsYXkvb3ZlcmxheS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNb2RhbCB9IGZyb20gJy4uL2ludGVyZmFjZXMvbW9kYWxzLmludGVyZmFjZSc7XHJcbmltcG9ydCB7IEN1c3RvbU92ZXJsYXlSZWYgfSBmcm9tICcuLi9tb2RlbC9jdXN0b20tb3ZlcmxheS1yZWYubW9kZWwnO1xyXG5cclxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcclxuZXhwb3J0IGNsYXNzIE92ZXJsYXlTZXJ2aWNlIHtcclxuICBwcml2YXRlIG92ZXJsYXk6IE92ZXJsYXkgPSBpbmplY3QoT3ZlcmxheSk7XHJcbiAgcHJpdmF0ZSBpbmplY3RvcjogSW5qZWN0b3IgPSBpbmplY3QoSW5qZWN0b3IpO1xyXG5cclxuICBvcGVuPFIgPSBhbnk+KFxyXG4gICAgY29udGVudDogVHlwZTxhbnk+LFxyXG4gICAgZGF0YTogTW9kYWwsXHJcbiAgICBwYW5lbENzc0NsYXNzZXM6IHN0cmluZ1tdID0gW10sXHJcbiAgICBjbG9zZU9uQmFja2Ryb3BDTGljazogYm9vbGVhbiA9IHRydWVcclxuICApOiBDdXN0b21PdmVybGF5UmVmPFI+IHtcclxuICAgIGNvbnN0IF9wYW5lbENzc0NsYXNzZXM6IHN0cmluZ1tdID0gWydtb2RhbC1wYW5lbCcsICdpcy1hY3RpdmUnXS5jb25jYXQoXHJcbiAgICAgIHBhbmVsQ3NzQ2xhc3Nlc1xyXG4gICAgKTtcclxuICAgIGNvbnN0IGNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKHtcclxuICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXHJcbiAgICAgIHBhbmVsQ2xhc3M6IF9wYW5lbENzc0NsYXNzZXMsXHJcbiAgICAgIGJhY2tkcm9wQ2xhc3M6ICdtb2RhbC1iYWNrZ3JvdW5kJyxcclxuICAgICAgd2lkdGg6ICcxMDAlJyxcclxuICAgICAgaGVpZ2h0OiAnMTAwJScsXHJcbiAgICB9KTtcclxuXHJcbiAgICBjb25zdCBvdmVybGF5UmVmID0gdGhpcy5vdmVybGF5LmNyZWF0ZShjb25maWcpO1xyXG5cclxuICAgIGNvbnN0IGN1c3RvbU92ZXJsYXlSZWYgPSBuZXcgQ3VzdG9tT3ZlcmxheVJlZihcclxuICAgICAgb3ZlcmxheVJlZixcclxuICAgICAgY29udGVudCxcclxuICAgICAgZGF0YSxcclxuICAgICAgY2xvc2VPbkJhY2tkcm9wQ0xpY2tcclxuICAgICk7XHJcbiAgICBjb25zdCBpbmplY3RvciA9IHRoaXMuY3JlYXRlSW5qZWN0b3IoY3VzdG9tT3ZlcmxheVJlZiwgdGhpcy5pbmplY3Rvcik7XHJcbiAgICBvdmVybGF5UmVmLmF0dGFjaChuZXcgQ29tcG9uZW50UG9ydGFsKE92ZXJsYXlDb21wb25lbnQsIG51bGwsIGluamVjdG9yKSk7XHJcblxyXG4gICAgcmV0dXJuIGN1c3RvbU92ZXJsYXlSZWY7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIGNyZWF0ZUluamVjdG9yKHJlZjogQ3VzdG9tT3ZlcmxheVJlZiwgaW5qOiBJbmplY3Rvcik6IEluamVjdG9yIHtcclxuICAgIHJldHVybiBJbmplY3Rvci5jcmVhdGUoe1xyXG4gICAgICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEN1c3RvbU92ZXJsYXlSZWYsIHVzZVZhbHVlOiByZWYgfV0sXHJcbiAgICAgIHBhcmVudDogaW5qLFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/esm2022/public-api.mjs
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
/*
|
2
2
|
* Public API Surface of osumi-angular-tools
|
3
3
|
*/
|
4
|
-
export * from './lib/interfaces/dialogs.interface';
|
5
|
-
export * from './lib/interfaces/modals.interface';
|
6
4
|
export * from './lib/components/dialogs/alert-dialog/alert-dialog.component';
|
7
5
|
export * from './lib/components/dialogs/confirm-dialog/confirm-dialog.component';
|
8
6
|
export * from './lib/components/dialogs/form-dialog/form-dialog.component';
|
9
7
|
export * from './lib/components/overlay/overlay.component';
|
8
|
+
export * from './lib/interfaces/dialogs.interface';
|
9
|
+
export * from './lib/interfaces/modals.interface';
|
10
10
|
export * from './lib/model/custom-overlay-ref.model';
|
11
11
|
export * from './lib/services/dialog.service';
|
12
12
|
export * from './lib/services/overlay.service';
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL29zdW1pLWFuZ3VsYXItdG9vbHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxjQUFjLDhEQUE4RCxDQUFDO0FBQzdFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyw0REFBNEQsQ0FBQztBQUMzRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxnQ0FBZ0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXHJcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBvc3VtaS1hbmd1bGFyLXRvb2xzXHJcbiAqL1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RpYWxvZ3MvYWxlcnQtZGlhbG9nL2FsZXJ0LWRpYWxvZy5jb21wb25lbnQnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb21wb25lbnRzL2RpYWxvZ3MvY29uZmlybS1kaWFsb2cvY29uZmlybS1kaWFsb2cuY29tcG9uZW50JztcclxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy9kaWFsb2dzL2Zvcm0tZGlhbG9nL2Zvcm0tZGlhbG9nLmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvb3ZlcmxheS9vdmVybGF5LmNvbXBvbmVudCc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ludGVyZmFjZXMvZGlhbG9ncy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbnRlcmZhY2VzL21vZGFscy5pbnRlcmZhY2UnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbC9jdXN0b20tb3ZlcmxheS1yZWYubW9kZWwnO1xyXG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcy9kaWFsb2cuc2VydmljZSc7XHJcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzL292ZXJsYXkuc2VydmljZSc7XHJcbiJdfQ==
|
@@ -18,11 +18,11 @@ class AlertDialogComponent {
|
|
18
18
|
content = signal('');
|
19
19
|
ok = signal('');
|
20
20
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AlertDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
21
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AlertDialogComponent, isStandalone: true, selector: "
|
21
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AlertDialogComponent, isStandalone: true, selector: "oat-alert-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p [innerHtml]=\"content()\"></p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
22
22
|
}
|
23
23
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AlertDialogComponent, decorators: [{
|
24
24
|
type: Component,
|
25
|
-
args: [{ standalone: true, selector: '
|
25
|
+
args: [{ standalone: true, selector: 'oat-alert-dialog', imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p [innerHtml]=\"content()\"></p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>" }]
|
26
26
|
}] });
|
27
27
|
|
28
28
|
class ConfirmDialogComponent {
|
@@ -32,11 +32,11 @@ class ConfirmDialogComponent {
|
|
32
32
|
ok = signal('');
|
33
33
|
cancel = signal('');
|
34
34
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ConfirmDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
35
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ConfirmDialogComponent, isStandalone: true, selector: "
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: ConfirmDialogComponent, isStandalone: true, selector: "oat-confirm-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p>{{ content() }}</p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", dependencies: [{ kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
36
36
|
}
|
37
37
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: ConfirmDialogComponent, decorators: [{
|
38
38
|
type: Component,
|
39
|
-
args: [{ standalone: true, selector: '
|
39
|
+
args: [{ standalone: true, selector: 'oat-confirm-dialog', imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p>{{ content() }}</p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>" }]
|
40
40
|
}] });
|
41
41
|
|
42
42
|
class FormDialogComponent {
|
@@ -47,11 +47,11 @@ class FormDialogComponent {
|
|
47
47
|
ok = signal('');
|
48
48
|
cancel = signal('');
|
49
49
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
50
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: FormDialogComponent, isStandalone: true, selector: "
|
50
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: FormDialogComponent, isStandalone: true, selector: "oat-form-dialog", ngImport: i0, template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p class=\"margin-bottom\">{{ content() }}</p>\r\n\t@for (field of fields(); track field.title) {\r\n\t<div class=\"form-field margin-right\">\r\n\t\t<mat-form-field class=\"max-width\">\r\n\t\t\t<mat-label>{{field.title}}</mat-label>\r\n\t\t\t<input matInput\r\n\t\t\t\t [type]=\"field.type\"\r\n\t\t\t\t [(ngModel)]=\"field.value\">\r\n\t\t\t@if (field.hint) {\r\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\r\n\t\t\t}\r\n\t\t</mat-form-field>\r\n\t</div>\r\n\t}\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t[mat-dialog-close]=\"fields()\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", styles: [".margin-bottom{margin-bottom:16px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "component", type: MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: MatLabel, selector: "mat-label" }, { kind: "directive", type: MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }] });
|
51
51
|
}
|
52
52
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: FormDialogComponent, decorators: [{
|
53
53
|
type: Component,
|
54
|
-
args: [{ standalone: true, selector: '
|
54
|
+
args: [{ standalone: true, selector: 'oat-form-dialog', imports: [
|
55
55
|
FormsModule,
|
56
56
|
MatDialogTitle,
|
57
57
|
MatDialogContent,
|
@@ -62,7 +62,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
62
62
|
MatHint,
|
63
63
|
MatInput,
|
64
64
|
MatButton,
|
65
|
-
], template: "<h1 mat-dialog-title>{{ title() }}</h1>\n<div mat-dialog-content>\n\t<p class=\"margin-bottom\">{{ content() }}</p>\n\t@for (field of fields(); track field.title) {\n\t<div class=\"form-field margin-right\">\n\t\t<mat-form-field class=\"max-width\">\n\t\t\t<mat-label>{{field.title}}</mat-label>\n\t\t\t<input matInput\n\t\t\t\t [type]=\"field.type\"\n\t\t\t\t [(ngModel)]=\"field.value\">\n\t\t\t@if (field.hint) {\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\n\t\t\t}\n\t\t</mat-form-field>\n\t</div>\n\t}\n</div>\n<div mat-dialog-actions\n\t align=\"end\">\n\t@if (cancel() !== '') {\n\t<button type=\"button\"\n\t\t\tmat-button\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\n\t}\n\t<button type=\"button\"\n\t\t\tmat-flat-button\n\t\t\tcolor=\"primary\"\n\t\t\t[mat-dialog-close]=\"fields()\"\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\n</div
|
65
|
+
], template: "<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p class=\"margin-bottom\">{{ content() }}</p>\r\n\t@for (field of fields(); track field.title) {\r\n\t<div class=\"form-field margin-right\">\r\n\t\t<mat-form-field class=\"max-width\">\r\n\t\t\t<mat-label>{{field.title}}</mat-label>\r\n\t\t\t<input matInput\r\n\t\t\t\t [type]=\"field.type\"\r\n\t\t\t\t [(ngModel)]=\"field.value\">\r\n\t\t\t@if (field.hint) {\r\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\r\n\t\t\t}\r\n\t\t</mat-form-field>\r\n\t</div>\r\n\t}\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t[mat-dialog-close]=\"fields()\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>", styles: [".margin-bottom{margin-bottom:16px}\n"] }]
|
66
66
|
}] });
|
67
67
|
|
68
68
|
// R = Response Data Type, T = Data passed to Modal Type
|
@@ -80,13 +80,13 @@ class CustomOverlayRef {
|
|
80
80
|
if (closeOnBackdropCLick) {
|
81
81
|
overlay.backdropClick().subscribe({
|
82
82
|
next: () => {
|
83
|
-
this._close(
|
83
|
+
this._close('backdropClick', null);
|
84
84
|
},
|
85
85
|
});
|
86
86
|
}
|
87
87
|
}
|
88
88
|
close(data) {
|
89
|
-
this._close(
|
89
|
+
this._close('close', data);
|
90
90
|
}
|
91
91
|
_close(type, data) {
|
92
92
|
this.overlay.dispose();
|
@@ -118,11 +118,11 @@ class OverlayComponent {
|
|
118
118
|
this.customOverlayRef.close(null);
|
119
119
|
}
|
120
120
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
121
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OverlayComponent, isStandalone: true, selector: "
|
121
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.12", type: OverlayComponent, isStandalone: true, selector: "oat-overlay", ngImport: i0, template: "<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\r\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\r\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\r\n\t\t@if (!inputData.hideCloseBtn) {\r\n\t\t<div class=\"btn-close\"\r\n\t\t\t (click)=\"close()\">\r\n\t\t\t<mat-icon>close</mat-icon>\r\n\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"modal__content\">\r\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\r\n\t</div>\r\n</div>", styles: [":host{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.modal{border-radius:6px;box-shadow:4px 4px 5px 0 var(--modal-bg-color)}.modal__header{border-top-left-radius:6px;border-top-right-radius:6px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;height:48px;font-size:24px;background-color:var(--color-blue);color:#fff}.modal__header .btn-close{cursor:pointer}.modal__header--blue{background-color:var(--main-color)}.modal__header--yellow{background-color:var(--color-yellow);color:var(--color-black)}.modal__header--yellow>.btn-close{color:var(--color-black)}.modal__header--red{background-color:var(--color-red)}.modal__content{padding:20px;border-bottom-left-radius:6px;background-color:var(--color-white);border-bottom-right-radius:6px;height:calc(100% - 48px);overflow-y:auto;box-sizing:border-box}\n"], dependencies: [{ kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"] }] });
|
122
122
|
}
|
123
123
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayComponent, decorators: [{
|
124
124
|
type: Component,
|
125
|
-
args: [{ standalone: true, selector: '
|
125
|
+
args: [{ standalone: true, selector: 'oat-overlay', imports: [MatIcon, NgComponentOutlet], template: "<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\r\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\r\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\r\n\t\t@if (!inputData.hideCloseBtn) {\r\n\t\t<div class=\"btn-close\"\r\n\t\t\t (click)=\"close()\">\r\n\t\t\t<mat-icon>close</mat-icon>\r\n\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"modal__content\">\r\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\r\n\t</div>\r\n</div>", styles: [":host{width:100%;height:100%;display:flex;justify-content:center;align-items:center}.modal{border-radius:6px;box-shadow:4px 4px 5px 0 var(--modal-bg-color)}.modal__header{border-top-left-radius:6px;border-top-right-radius:6px;display:flex;justify-content:space-between;align-items:center;padding:0 20px;height:48px;font-size:24px;background-color:var(--color-blue);color:#fff}.modal__header .btn-close{cursor:pointer}.modal__header--blue{background-color:var(--main-color)}.modal__header--yellow{background-color:var(--color-yellow);color:var(--color-black)}.modal__header--yellow>.btn-close{color:var(--color-black)}.modal__header--red{background-color:var(--color-red)}.modal__content{padding:20px;border-bottom-left-radius:6px;background-color:var(--color-white);border-bottom-right-radius:6px;height:calc(100% - 48px);overflow-y:auto;box-sizing:border-box}\n"] }]
|
126
126
|
}] });
|
127
127
|
|
128
128
|
class DialogService {
|
@@ -158,10 +158,11 @@ class DialogService {
|
|
158
158
|
return dialogRef.afterClosed();
|
159
159
|
}
|
160
160
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
161
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService });
|
161
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, providedIn: 'root' });
|
162
162
|
}
|
163
163
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: DialogService, decorators: [{
|
164
|
-
type: Injectable
|
164
|
+
type: Injectable,
|
165
|
+
args: [{ providedIn: 'root' }]
|
165
166
|
}] });
|
166
167
|
|
167
168
|
class OverlayService {
|
@@ -193,9 +194,7 @@ class OverlayService {
|
|
193
194
|
}
|
194
195
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: OverlayService, decorators: [{
|
195
196
|
type: Injectable,
|
196
|
-
args: [{
|
197
|
-
providedIn: 'root',
|
198
|
-
}]
|
197
|
+
args: [{ providedIn: 'root' }]
|
199
198
|
}] });
|
200
199
|
|
201
200
|
/*
|
@@ -205,4 +204,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImpo
|
|
205
204
|
/**
|
206
205
|
* Generated bundle index. Do not edit.
|
207
206
|
*/
|
207
|
+
|
208
|
+
export { AlertDialogComponent, ConfirmDialogComponent, CustomOverlayRef, DialogService, FormDialogComponent, OverlayComponent, OverlayService };
|
208
209
|
//# sourceMappingURL=osumi-angular-tools.mjs.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"osumi-angular-tools.mjs","sources":["../../../projects/osumi-angular-tools/src/lib/components/dialogs/alert-dialog/alert-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/alert-dialog/alert-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/components/dialogs/confirm-dialog/confirm-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/confirm-dialog/confirm-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/components/dialogs/form-dialog/form-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/form-dialog/form-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/model/custom-overlay-ref.model.ts","../../../projects/osumi-angular-tools/src/lib/components/overlay/overlay.component.ts","../../../projects/osumi-angular-tools/src/lib/components/overlay/overlay.component.html","../../../projects/osumi-angular-tools/src/lib/services/dialog.service.ts","../../../projects/osumi-angular-tools/src/lib/services/overlay.service.ts","../../../projects/osumi-angular-tools/src/public-api.ts","../../../projects/osumi-angular-tools/src/osumi-angular-tools.ts"],"sourcesContent":["import { Component, inject, signal, WritableSignal } from '@angular/core';\nimport { MatButton } from '@angular/material/button';\nimport {\n MatDialogActions,\n MatDialogContent,\n MatDialogRef,\n MatDialogTitle,\n} from '@angular/material/dialog';\n\n@Component({\n standalone: true,\n selector: 'o-alert-dialog',\n templateUrl: './alert-dialog.component.html',\n imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton],\n})\nexport default class AlertDialogComponent {\n public dialogRef: MatDialogRef<AlertDialogComponent> = inject(MatDialogRef);\n\n public title: WritableSignal<string> = signal<string>('');\n public content: WritableSignal<string> = signal<string>('');\n public ok: WritableSignal<string> = signal<string>('');\n}\n","<h1 mat-dialog-title>{{ title() }}</h1>\n<div mat-dialog-content>\n\t<p [innerHtml]=\"content()\"></p>\n</div>\n<div mat-dialog-actions\n\t align=\"end\">\n\t<button type=\"button\"\n\t\t\tmat-flat-button\n\t\t\tcolor=\"primary\"\n\t\t\t(click)=\"dialogRef.close(true)\"\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\n</div>\n","import { Component, inject, signal, WritableSignal } from '@angular/core';\nimport { MatButton } from '@angular/material/button';\nimport {\n MatDialogActions,\n MatDialogContent,\n MatDialogRef,\n MatDialogTitle,\n} from '@angular/material/dialog';\n\n@Component({\n standalone: true,\n selector: 'o-confirm-dialog',\n templateUrl: './confirm-dialog.component.html',\n imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton],\n})\nexport default class ConfirmDialogComponent {\n public dialogRef: MatDialogRef<ConfirmDialogComponent> = inject(MatDialogRef);\n\n public title: WritableSignal<string> = signal<string>('');\n public content: WritableSignal<string> = signal<string>('');\n public ok: WritableSignal<string> = signal<string>('');\n public cancel: WritableSignal<string> = signal<string>('');\n}\n","<h1 mat-dialog-title>{{ title() }}</h1>\n<div mat-dialog-content>\n\t<p>{{ content() }}</p>\n</div>\n<div mat-dialog-actions\n\t align=\"end\">\n\t@if (cancel() !== '') {\n\t<button type=\"button\"\n\t\t\tmat-button\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\n\t}\n\t<button type=\"button\"\n\t\t\tmat-flat-button\n\t\t\tcolor=\"primary\"\n\t\t\t(click)=\"dialogRef.close(true)\"\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\n</div>\n","import { Component, inject, signal, WritableSignal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { MatButton } from '@angular/material/button';\nimport {\n MatDialogActions,\n MatDialogClose,\n MatDialogContent,\n MatDialogRef,\n MatDialogTitle,\n} from '@angular/material/dialog';\nimport { MatFormField, MatHint, MatLabel } from '@angular/material/form-field';\nimport { MatInput } from '@angular/material/input';\nimport { DialogField } from '../../../interfaces/dialogs.interface';\n\n@Component({\n standalone: true,\n selector: 'o-form-dialog',\n templateUrl: './form-dialog.component.html',\n styleUrls: ['./form-dialog.component.scss'],\n imports: [\n FormsModule,\n MatDialogTitle,\n MatDialogContent,\n MatDialogActions,\n MatDialogClose,\n MatFormField,\n MatLabel,\n MatHint,\n MatInput,\n MatButton,\n ],\n})\nexport default class FormDialogComponent {\n public dialogRef: MatDialogRef<FormDialogComponent> = inject(MatDialogRef);\n\n public title: WritableSignal<string> = signal<string>('');\n public content: WritableSignal<string> = signal<string>('');\n public fields: WritableSignal<DialogField[]> = signal<DialogField[]>([]);\n public ok: WritableSignal<string> = signal<string>('');\n public cancel: WritableSignal<string> = signal<string>('');\n}\n","<h1 mat-dialog-title>{{ title() }}</h1>\n<div mat-dialog-content>\n\t<p class=\"margin-bottom\">{{ content() }}</p>\n\t@for (field of fields(); track field.title) {\n\t<div class=\"form-field margin-right\">\n\t\t<mat-form-field class=\"max-width\">\n\t\t\t<mat-label>{{field.title}}</mat-label>\n\t\t\t<input matInput\n\t\t\t\t [type]=\"field.type\"\n\t\t\t\t [(ngModel)]=\"field.value\">\n\t\t\t@if (field.hint) {\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\n\t\t\t}\n\t\t</mat-form-field>\n\t</div>\n\t}\n</div>\n<div mat-dialog-actions\n\t align=\"end\">\n\t@if (cancel() !== '') {\n\t<button type=\"button\"\n\t\t\tmat-button\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\n\t}\n\t<button type=\"button\"\n\t\t\tmat-flat-button\n\t\t\tcolor=\"primary\"\n\t\t\t[mat-dialog-close]=\"fields()\"\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\n</div>\n","import { OverlayRef } from \"@angular/cdk/overlay\";\nimport { Type } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { OverlayCloseEvent } from '../interfaces/modals.interface';\n\n// R = Response Data Type, T = Data passed to Modal Type\nexport default class CustomOverlayRef<R = any, T = any> {\n afterClosed$ = new Subject<OverlayCloseEvent<R | null>>();\n\n constructor(\n public overlay: OverlayRef,\n public content: Type<any>,\n public data: T,\n public closeOnBackdropCLick: boolean = true\n ) {\n if (closeOnBackdropCLick) {\n overlay.backdropClick().subscribe({\n next: () => {\n this._close(\"backdropClick\", null);\n },\n });\n }\n }\n\n close(data?: any): void {\n this._close(\"close\", data!);\n }\n\n private _close(type: \"backdropClick\" | \"close\", data: R | null): void {\n this.overlay.dispose();\n this.afterClosed$.next({\n type,\n data,\n });\n\n this.afterClosed$.complete();\n }\n}\n","import { NgComponentOutlet } from '@angular/common';\nimport { Component, inject, OnInit, Renderer2, Type } from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { Modal } from '../../interfaces/modals.interface';\nimport CustomOverlayRef from '../../model/custom-overlay-ref.model';\n\n@Component({\n standalone: true,\n selector: 'o-overlay',\n templateUrl: './overlay.component.html',\n styleUrls: ['./overlay.component.scss'],\n imports: [MatIcon, NgComponentOutlet],\n})\nexport default class OverlayComponent implements OnInit {\n private customOverlayRef: CustomOverlayRef<any, Modal> =\n inject(CustomOverlayRef);\n private renderer: Renderer2 = inject(Renderer2);\n\n content: Type<any> = this.customOverlayRef.content;\n inputData: Modal = { modalTitle: '', modalColor: 'blue' };\n\n ngOnInit(): void {\n this.listenToEscKey();\n this.inputData = this.customOverlayRef.data;\n }\n\n private listenToEscKey(): void {\n this.renderer.listen('window', 'keyup', (event: KeyboardEvent): void => {\n if (event.key === 'Escape') {\n this.close();\n }\n });\n }\n\n close(): void {\n this.customOverlayRef.close(null);\n }\n}\n","<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\n\t\t@if (!inputData.hideCloseBtn) {\n\t\t<div class=\"btn-close\"\n\t\t\t (click)=\"close()\">\n\t\t\t<mat-icon>close</mat-icon>\n\t\t</div>\n\t\t}\n\t</div>\n\n\t<div class=\"modal__content\">\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\n\t</div>\n</div>\n","import { inject, Injectable } from '@angular/core';\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { DialogOptions } from '../interfaces/dialogs.interface';\nimport AlertDialogComponent from '../components/dialogs/alert-dialog/alert-dialog.component';\nimport ConfirmDialogComponent from '../components/dialogs/confirm-dialog/confirm-dialog.component';\nimport FormDialogComponent from '../components/dialogs/form-dialog/form-dialog.component';\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport default class DialogService {\n private dialog: MatDialog = inject(MatDialog);\n\n public confirm(options: DialogOptions): Observable<boolean> {\n const dialogRef: MatDialogRef<ConfirmDialogComponent> = this.dialog.open(\n ConfirmDialogComponent\n );\n\n dialogRef.componentInstance.title.set(options.title);\n dialogRef.componentInstance.content.set(options.content);\n dialogRef.componentInstance.ok.set(options.ok);\n if (options.cancel !== undefined) {\n dialogRef.componentInstance.cancel.set(options.cancel);\n }\n\n return dialogRef.afterClosed();\n }\n\n public alert(options: DialogOptions): Observable<boolean> {\n const dialogRef: MatDialogRef<AlertDialogComponent> =\n this.dialog.open(AlertDialogComponent);\n\n dialogRef.componentInstance.title.set(options.title);\n dialogRef.componentInstance.content.set(options.content);\n dialogRef.componentInstance.ok.set(options.ok);\n\n return dialogRef.afterClosed();\n }\n\n public form(options: DialogOptions): Observable<DialogOptions> {\n const dialogRef: MatDialogRef<FormDialogComponent> =\n this.dialog.open(FormDialogComponent);\n\n dialogRef.componentInstance.title.set(options.title);\n dialogRef.componentInstance.content.set(options.content);\n dialogRef.componentInstance.ok.set(options.ok);\n if (options.cancel !== undefined) {\n dialogRef.componentInstance.cancel.set(options.cancel);\n }\n if (options.fields !== undefined) {\n dialogRef.componentInstance.fields.set(options.fields);\n }\n\n return dialogRef.afterClosed();\n }\n}\n","import { Overlay, OverlayConfig } from '@angular/cdk/overlay';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport { inject, Injectable, Injector, Type } from '@angular/core';\nimport { Modal } from '../interfaces/modals.interface';\nimport CustomOverlayRef from '../model/custom-overlay-ref.model';\nimport OverlayComponent from '../components/overlay/overlay.component';\n\n@Injectable({\n providedIn: 'root',\n})\nexport default class OverlayService {\n private overlay: Overlay = inject(Overlay);\n private injector: Injector = inject(Injector);\n\n open<R = any>(\n content: Type<any>,\n data: Modal,\n panelCssClasses: string[] = [],\n closeOnBackdropCLick: boolean = true\n ): CustomOverlayRef<R> {\n const _panelCssClasses: string[] = ['modal-panel', 'is-active'].concat(\n panelCssClasses\n );\n const config = new OverlayConfig({\n hasBackdrop: true,\n panelClass: _panelCssClasses,\n backdropClass: 'modal-background',\n width: '100%',\n height: '100%',\n });\n\n const overlayRef = this.overlay.create(config);\n\n const customOverlayRef = new CustomOverlayRef(\n overlayRef,\n content,\n data,\n closeOnBackdropCLick\n );\n const injector = this.createInjector(customOverlayRef, this.injector);\n overlayRef.attach(new ComponentPortal(OverlayComponent, null, injector));\n\n return customOverlayRef;\n }\n\n private createInjector(ref: CustomOverlayRef, inj: Injector): Injector {\n return Injector.create({\n providers: [{ provide: CustomOverlayRef, useValue: ref }],\n parent: inj,\n });\n }\n}\n","/*\n * Public API Surface of osumi-angular-tools\n */\nexport * from './lib/interfaces/dialogs.interface';\nexport * from './lib/interfaces/modals.interface';\nexport * from './lib/components/dialogs/alert-dialog/alert-dialog.component';\nexport * from './lib/components/dialogs/confirm-dialog/confirm-dialog.component';\nexport * from './lib/components/dialogs/form-dialog/form-dialog.component';\nexport * from './lib/components/overlay/overlay.component';\nexport * from './lib/model/custom-overlay-ref.model';\nexport * from './lib/services/dialog.service';\nexport * from './lib/services/overlay.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
1
|
+
{"version":3,"file":"osumi-angular-tools.mjs","sources":["../../../projects/osumi-angular-tools/src/lib/components/dialogs/alert-dialog/alert-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/alert-dialog/alert-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/components/dialogs/confirm-dialog/confirm-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/confirm-dialog/confirm-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/components/dialogs/form-dialog/form-dialog.component.ts","../../../projects/osumi-angular-tools/src/lib/components/dialogs/form-dialog/form-dialog.component.html","../../../projects/osumi-angular-tools/src/lib/model/custom-overlay-ref.model.ts","../../../projects/osumi-angular-tools/src/lib/components/overlay/overlay.component.ts","../../../projects/osumi-angular-tools/src/lib/components/overlay/overlay.component.html","../../../projects/osumi-angular-tools/src/lib/services/dialog.service.ts","../../../projects/osumi-angular-tools/src/lib/services/overlay.service.ts","../../../projects/osumi-angular-tools/src/public-api.ts","../../../projects/osumi-angular-tools/src/osumi-angular-tools.ts"],"sourcesContent":["import { Component, inject, signal, WritableSignal } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\nimport {\r\n MatDialogActions,\r\n MatDialogContent,\r\n MatDialogRef,\r\n MatDialogTitle,\r\n} from '@angular/material/dialog';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'oat-alert-dialog',\r\n templateUrl: './alert-dialog.component.html',\r\n imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton],\r\n})\r\nexport class AlertDialogComponent {\r\n public dialogRef: MatDialogRef<AlertDialogComponent> = inject(MatDialogRef);\r\n\r\n public title: WritableSignal<string> = signal<string>('');\r\n public content: WritableSignal<string> = signal<string>('');\r\n public ok: WritableSignal<string> = signal<string>('');\r\n}\r\n","<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p [innerHtml]=\"content()\"></p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>","import { Component, inject, signal, WritableSignal } from '@angular/core';\r\nimport { MatButton } from '@angular/material/button';\r\nimport {\r\n MatDialogActions,\r\n MatDialogContent,\r\n MatDialogRef,\r\n MatDialogTitle,\r\n} from '@angular/material/dialog';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'oat-confirm-dialog',\r\n templateUrl: './confirm-dialog.component.html',\r\n imports: [MatDialogTitle, MatDialogContent, MatDialogActions, MatButton],\r\n})\r\nexport class ConfirmDialogComponent {\r\n public dialogRef: MatDialogRef<ConfirmDialogComponent> = inject(MatDialogRef);\r\n\r\n public title: WritableSignal<string> = signal<string>('');\r\n public content: WritableSignal<string> = signal<string>('');\r\n public ok: WritableSignal<string> = signal<string>('');\r\n public cancel: WritableSignal<string> = signal<string>('');\r\n}\r\n","<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p>{{ content() }}</p>\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t(click)=\"dialogRef.close(true)\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>","import { Component, inject, signal, WritableSignal } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { MatButton } from '@angular/material/button';\r\nimport {\r\n MatDialogActions,\r\n MatDialogClose,\r\n MatDialogContent,\r\n MatDialogRef,\r\n MatDialogTitle,\r\n} from '@angular/material/dialog';\r\nimport { MatFormField, MatHint, MatLabel } from '@angular/material/form-field';\r\nimport { MatInput } from '@angular/material/input';\r\nimport { DialogField } from '../../../interfaces/dialogs.interface';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'oat-form-dialog',\r\n templateUrl: './form-dialog.component.html',\r\n styleUrls: ['./form-dialog.component.scss'],\r\n imports: [\r\n FormsModule,\r\n MatDialogTitle,\r\n MatDialogContent,\r\n MatDialogActions,\r\n MatDialogClose,\r\n MatFormField,\r\n MatLabel,\r\n MatHint,\r\n MatInput,\r\n MatButton,\r\n ],\r\n})\r\nexport class FormDialogComponent {\r\n public dialogRef: MatDialogRef<FormDialogComponent> = inject(MatDialogRef);\r\n\r\n public title: WritableSignal<string> = signal<string>('');\r\n public content: WritableSignal<string> = signal<string>('');\r\n public fields: WritableSignal<DialogField[]> = signal<DialogField[]>([]);\r\n public ok: WritableSignal<string> = signal<string>('');\r\n public cancel: WritableSignal<string> = signal<string>('');\r\n}\r\n","<h1 mat-dialog-title>{{ title() }}</h1>\r\n<div mat-dialog-content>\r\n\t<p class=\"margin-bottom\">{{ content() }}</p>\r\n\t@for (field of fields(); track field.title) {\r\n\t<div class=\"form-field margin-right\">\r\n\t\t<mat-form-field class=\"max-width\">\r\n\t\t\t<mat-label>{{field.title}}</mat-label>\r\n\t\t\t<input matInput\r\n\t\t\t\t [type]=\"field.type\"\r\n\t\t\t\t [(ngModel)]=\"field.value\">\r\n\t\t\t@if (field.hint) {\r\n\t\t\t<mat-hint>{{field.hint}}</mat-hint>\r\n\t\t\t}\r\n\t\t</mat-form-field>\r\n\t</div>\r\n\t}\r\n</div>\r\n<div mat-dialog-actions\r\n\t align=\"end\">\r\n\t@if (cancel() !== '') {\r\n\t<button type=\"button\"\r\n\t\t\tmat-button\r\n\t\t\t(click)=\"dialogRef.close()\">{{ cancel() }}</button>\r\n\t}\r\n\t<button type=\"button\"\r\n\t\t\tmat-flat-button\r\n\t\t\tcolor=\"primary\"\r\n\t\t\t[mat-dialog-close]=\"fields()\"\r\n\t\t\tcdkFocusInitial>{{ ok() }}</button>\r\n</div>","import { OverlayRef } from '@angular/cdk/overlay';\r\nimport { Type } from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { OverlayCloseEvent } from '../interfaces/modals.interface';\r\n\r\n// R = Response Data Type, T = Data passed to Modal Type\r\nexport class CustomOverlayRef<R = any, T = any> {\r\n afterClosed$ = new Subject<OverlayCloseEvent<R | null>>();\r\n\r\n constructor(\r\n public overlay: OverlayRef,\r\n public content: Type<any>,\r\n public data: T,\r\n public closeOnBackdropCLick: boolean = true\r\n ) {\r\n if (closeOnBackdropCLick) {\r\n overlay.backdropClick().subscribe({\r\n next: () => {\r\n this._close('backdropClick', null);\r\n },\r\n });\r\n }\r\n }\r\n\r\n close(data?: any): void {\r\n this._close('close', data!);\r\n }\r\n\r\n private _close(type: 'backdropClick' | 'close', data: R | null): void {\r\n this.overlay.dispose();\r\n this.afterClosed$.next({\r\n type,\r\n data,\r\n });\r\n\r\n this.afterClosed$.complete();\r\n }\r\n}\r\n","import { NgComponentOutlet } from '@angular/common';\r\nimport { Component, inject, OnInit, Renderer2, Type } from '@angular/core';\r\nimport { MatIcon } from '@angular/material/icon';\r\nimport { Modal } from '../../interfaces/modals.interface';\r\nimport { CustomOverlayRef } from '../../model/custom-overlay-ref.model';\r\n\r\n@Component({\r\n standalone: true,\r\n selector: 'oat-overlay',\r\n templateUrl: './overlay.component.html',\r\n styleUrls: ['./overlay.component.scss'],\r\n imports: [MatIcon, NgComponentOutlet],\r\n})\r\nexport class OverlayComponent implements OnInit {\r\n private customOverlayRef: CustomOverlayRef<any, Modal> =\r\n inject(CustomOverlayRef);\r\n private renderer: Renderer2 = inject(Renderer2);\r\n\r\n content: Type<any> = this.customOverlayRef.content;\r\n inputData: Modal = { modalTitle: '', modalColor: 'blue' };\r\n\r\n ngOnInit(): void {\r\n this.listenToEscKey();\r\n this.inputData = this.customOverlayRef.data;\r\n }\r\n\r\n private listenToEscKey(): void {\r\n this.renderer.listen('window', 'keyup', (event: KeyboardEvent): void => {\r\n if (event.key === 'Escape') {\r\n this.close();\r\n }\r\n });\r\n }\r\n\r\n close(): void {\r\n this.customOverlayRef.close(null);\r\n }\r\n}\r\n","<div [class]=\"'modal ' + (inputData.css ? inputData.css : '')\">\r\n\t<div [class]=\"'modal__header modal__header--' + inputData.modalColor\">\r\n\t\t<div class=\"title\">{{ inputData.modalTitle }}</div>\r\n\t\t@if (!inputData.hideCloseBtn) {\r\n\t\t<div class=\"btn-close\"\r\n\t\t\t (click)=\"close()\">\r\n\t\t\t<mat-icon>close</mat-icon>\r\n\t\t</div>\r\n\t\t}\r\n\t</div>\r\n\r\n\t<div class=\"modal__content\">\r\n\t\t<ng-container *ngComponentOutlet=\"content\"></ng-container>\r\n\t</div>\r\n</div>","import { inject, Injectable } from '@angular/core';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { Observable } from 'rxjs';\r\nimport { AlertDialogComponent } from '../components/dialogs/alert-dialog/alert-dialog.component';\r\nimport { ConfirmDialogComponent } from '../components/dialogs/confirm-dialog/confirm-dialog.component';\r\nimport { FormDialogComponent } from '../components/dialogs/form-dialog/form-dialog.component';\r\nimport { DialogOptions } from '../interfaces/dialogs.interface';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class DialogService {\r\n private dialog: MatDialog = inject(MatDialog);\r\n\r\n public confirm(options: DialogOptions): Observable<boolean> {\r\n const dialogRef: MatDialogRef<ConfirmDialogComponent> = this.dialog.open(\r\n ConfirmDialogComponent\r\n );\r\n\r\n dialogRef.componentInstance.title.set(options.title);\r\n dialogRef.componentInstance.content.set(options.content);\r\n dialogRef.componentInstance.ok.set(options.ok);\r\n if (options.cancel !== undefined) {\r\n dialogRef.componentInstance.cancel.set(options.cancel);\r\n }\r\n\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n public alert(options: DialogOptions): Observable<boolean> {\r\n const dialogRef: MatDialogRef<AlertDialogComponent> =\r\n this.dialog.open(AlertDialogComponent);\r\n\r\n dialogRef.componentInstance.title.set(options.title);\r\n dialogRef.componentInstance.content.set(options.content);\r\n dialogRef.componentInstance.ok.set(options.ok);\r\n\r\n return dialogRef.afterClosed();\r\n }\r\n\r\n public form(options: DialogOptions): Observable<DialogOptions> {\r\n const dialogRef: MatDialogRef<FormDialogComponent> =\r\n this.dialog.open(FormDialogComponent);\r\n\r\n dialogRef.componentInstance.title.set(options.title);\r\n dialogRef.componentInstance.content.set(options.content);\r\n dialogRef.componentInstance.ok.set(options.ok);\r\n if (options.cancel !== undefined) {\r\n dialogRef.componentInstance.cancel.set(options.cancel);\r\n }\r\n if (options.fields !== undefined) {\r\n dialogRef.componentInstance.fields.set(options.fields);\r\n }\r\n\r\n return dialogRef.afterClosed();\r\n }\r\n}\r\n","import { Overlay, OverlayConfig } from '@angular/cdk/overlay';\r\nimport { ComponentPortal } from '@angular/cdk/portal';\r\nimport { inject, Injectable, Injector, Type } from '@angular/core';\r\nimport { OverlayComponent } from '../components/overlay/overlay.component';\r\nimport { Modal } from '../interfaces/modals.interface';\r\nimport { CustomOverlayRef } from '../model/custom-overlay-ref.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class OverlayService {\r\n private overlay: Overlay = inject(Overlay);\r\n private injector: Injector = inject(Injector);\r\n\r\n open<R = any>(\r\n content: Type<any>,\r\n data: Modal,\r\n panelCssClasses: string[] = [],\r\n closeOnBackdropCLick: boolean = true\r\n ): CustomOverlayRef<R> {\r\n const _panelCssClasses: string[] = ['modal-panel', 'is-active'].concat(\r\n panelCssClasses\r\n );\r\n const config = new OverlayConfig({\r\n hasBackdrop: true,\r\n panelClass: _panelCssClasses,\r\n backdropClass: 'modal-background',\r\n width: '100%',\r\n height: '100%',\r\n });\r\n\r\n const overlayRef = this.overlay.create(config);\r\n\r\n const customOverlayRef = new CustomOverlayRef(\r\n overlayRef,\r\n content,\r\n data,\r\n closeOnBackdropCLick\r\n );\r\n const injector = this.createInjector(customOverlayRef, this.injector);\r\n overlayRef.attach(new ComponentPortal(OverlayComponent, null, injector));\r\n\r\n return customOverlayRef;\r\n }\r\n\r\n private createInjector(ref: CustomOverlayRef, inj: Injector): Injector {\r\n return Injector.create({\r\n providers: [{ provide: CustomOverlayRef, useValue: ref }],\r\n parent: inj,\r\n });\r\n }\r\n}\r\n","/*\r\n * Public API Surface of osumi-angular-tools\r\n */\r\nexport * from './lib/components/dialogs/alert-dialog/alert-dialog.component';\r\nexport * from './lib/components/dialogs/confirm-dialog/confirm-dialog.component';\r\nexport * from './lib/components/dialogs/form-dialog/form-dialog.component';\r\nexport * from './lib/components/overlay/overlay.component';\r\nexport * from './lib/interfaces/dialogs.interface';\r\nexport * from './lib/interfaces/modals.interface';\r\nexport * from './lib/model/custom-overlay-ref.model';\r\nexport * from './lib/services/dialog.service';\r\nexport * from './lib/services/overlay.service';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
@@ -1,11 +1,11 @@
|
|
1
1
|
import { WritableSignal } from '@angular/core';
|
2
2
|
import { MatDialogRef } from '@angular/material/dialog';
|
3
3
|
import * as i0 from "@angular/core";
|
4
|
-
export
|
4
|
+
export declare class AlertDialogComponent {
|
5
5
|
dialogRef: MatDialogRef<AlertDialogComponent>;
|
6
6
|
title: WritableSignal<string>;
|
7
7
|
content: WritableSignal<string>;
|
8
8
|
ok: WritableSignal<string>;
|
9
9
|
static ɵfac: i0.ɵɵFactoryDeclaration<AlertDialogComponent, never>;
|
10
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AlertDialogComponent, "
|
10
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AlertDialogComponent, "oat-alert-dialog", never, {}, {}, never, never, true, never>;
|
11
11
|
}
|
@@ -1,12 +1,12 @@
|
|
1
1
|
import { WritableSignal } from '@angular/core';
|
2
2
|
import { MatDialogRef } from '@angular/material/dialog';
|
3
3
|
import * as i0 from "@angular/core";
|
4
|
-
export
|
4
|
+
export declare class ConfirmDialogComponent {
|
5
5
|
dialogRef: MatDialogRef<ConfirmDialogComponent>;
|
6
6
|
title: WritableSignal<string>;
|
7
7
|
content: WritableSignal<string>;
|
8
8
|
ok: WritableSignal<string>;
|
9
9
|
cancel: WritableSignal<string>;
|
10
10
|
static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmDialogComponent, never>;
|
11
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmDialogComponent, "
|
11
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmDialogComponent, "oat-confirm-dialog", never, {}, {}, never, never, true, never>;
|
12
12
|
}
|
@@ -2,7 +2,7 @@ import { WritableSignal } from '@angular/core';
|
|
2
2
|
import { MatDialogRef } from '@angular/material/dialog';
|
3
3
|
import { DialogField } from '../../../interfaces/dialogs.interface';
|
4
4
|
import * as i0 from "@angular/core";
|
5
|
-
export
|
5
|
+
export declare class FormDialogComponent {
|
6
6
|
dialogRef: MatDialogRef<FormDialogComponent>;
|
7
7
|
title: WritableSignal<string>;
|
8
8
|
content: WritableSignal<string>;
|
@@ -10,5 +10,5 @@ export default class FormDialogComponent {
|
|
10
10
|
ok: WritableSignal<string>;
|
11
11
|
cancel: WritableSignal<string>;
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<FormDialogComponent, never>;
|
13
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<FormDialogComponent, "
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<FormDialogComponent, "oat-form-dialog", never, {}, {}, never, never, true, never>;
|
14
14
|
}
|
@@ -1,7 +1,7 @@
|
|
1
1
|
import { OnInit, Type } from '@angular/core';
|
2
2
|
import { Modal } from '../../interfaces/modals.interface';
|
3
3
|
import * as i0 from "@angular/core";
|
4
|
-
export
|
4
|
+
export declare class OverlayComponent implements OnInit {
|
5
5
|
private customOverlayRef;
|
6
6
|
private renderer;
|
7
7
|
content: Type<any>;
|
@@ -10,5 +10,5 @@ export default class OverlayComponent implements OnInit {
|
|
10
10
|
private listenToEscKey;
|
11
11
|
close(): void;
|
12
12
|
static ɵfac: i0.ɵɵFactoryDeclaration<OverlayComponent, never>;
|
13
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<OverlayComponent, "
|
13
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<OverlayComponent, "oat-overlay", never, {}, {}, never, never, true, never>;
|
14
14
|
}
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import { OverlayRef } from
|
2
|
-
import { Type } from
|
3
|
-
import { Subject } from
|
1
|
+
import { OverlayRef } from '@angular/cdk/overlay';
|
2
|
+
import { Type } from '@angular/core';
|
3
|
+
import { Subject } from 'rxjs';
|
4
4
|
import { OverlayCloseEvent } from '../interfaces/modals.interface';
|
5
|
-
export
|
5
|
+
export declare class CustomOverlayRef<R = any, T = any> {
|
6
6
|
overlay: OverlayRef;
|
7
7
|
content: Type<any>;
|
8
8
|
data: T;
|
@@ -1,7 +1,7 @@
|
|
1
|
-
import { DialogOptions } from '../interfaces/dialogs.interface';
|
2
1
|
import { Observable } from 'rxjs';
|
2
|
+
import { DialogOptions } from '../interfaces/dialogs.interface';
|
3
3
|
import * as i0 from "@angular/core";
|
4
|
-
export
|
4
|
+
export declare class DialogService {
|
5
5
|
private dialog;
|
6
6
|
confirm(options: DialogOptions): Observable<boolean>;
|
7
7
|
alert(options: DialogOptions): Observable<boolean>;
|
@@ -1,8 +1,8 @@
|
|
1
1
|
import { Type } from '@angular/core';
|
2
2
|
import { Modal } from '../interfaces/modals.interface';
|
3
|
-
import CustomOverlayRef from '../model/custom-overlay-ref.model';
|
3
|
+
import { CustomOverlayRef } from '../model/custom-overlay-ref.model';
|
4
4
|
import * as i0 from "@angular/core";
|
5
|
-
export
|
5
|
+
export declare class OverlayService {
|
6
6
|
private overlay;
|
7
7
|
private injector;
|
8
8
|
open<R = any>(content: Type<any>, data: Modal, panelCssClasses?: string[], closeOnBackdropCLick?: boolean): CustomOverlayRef<R>;
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
@@ -1,9 +1,9 @@
|
|
1
|
-
export * from './lib/interfaces/dialogs.interface';
|
2
|
-
export * from './lib/interfaces/modals.interface';
|
3
1
|
export * from './lib/components/dialogs/alert-dialog/alert-dialog.component';
|
4
2
|
export * from './lib/components/dialogs/confirm-dialog/confirm-dialog.component';
|
5
3
|
export * from './lib/components/dialogs/form-dialog/form-dialog.component';
|
6
4
|
export * from './lib/components/overlay/overlay.component';
|
5
|
+
export * from './lib/interfaces/dialogs.interface';
|
6
|
+
export * from './lib/interfaces/modals.interface';
|
7
7
|
export * from './lib/model/custom-overlay-ref.model';
|
8
8
|
export * from './lib/services/dialog.service';
|
9
9
|
export * from './lib/services/overlay.service';
|