{"version":3,"file":"ngx-redi-core-RediDialog.mjs","sources":["../../../projects/ngx-redi-core/RediDialog/src/components/redi-dialog/redi-dialog.component.ts","../../../projects/ngx-redi-core/RediDialog/src/components/redi-dialog/redi-dialog.component.html","../../../projects/ngx-redi-core/RediDialog/src/services/redi-dialog.service.ts","../../../projects/ngx-redi-core/RediDialog/public-api.ts","../../../projects/ngx-redi-core/RediDialog/ngx-redi-core-RediDialog.ts"],"sourcesContent":["import { Component, Inject, OnDestroy, OnInit } from '@angular/core';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MAT_DIALOG_DATA, MatDialogActions, MatDialogContent, MatDialogRef, MatDialogTitle } from '@angular/material/dialog';\r\nimport { Router, RouterModule } from '@angular/router';\r\nimport { DialogData } from '../../models/dialog-data.interface';\r\nimport { QueryFiltersService } from 'ngx-redi-core/Helper';\r\n\r\n@Component({\n    selector: 'redi-dialog',\n    imports: [\n        RouterModule,\n        MatButtonModule,\n        MatDialogContent,\n        MatDialogActions,\n        MatDialogTitle\n    ],\n    templateUrl: './redi-dialog.component.html',\n    styleUrl: './redi-dialog.component.css'\n})\r\nexport class RediDialogComponent implements OnDestroy, OnInit {\r\n  public outlet: string;\r\n  public title: string;\r\n  public message: string;\r\n\r\n  constructor(@Inject(MAT_DIALOG_DATA) private data: DialogData,\r\n    private readonly router: Router,\r\n    private readonly queryfilter: QueryFiltersService,\r\n    private readonly dialogRef: MatDialogRef<RediDialogComponent>) {\r\n    this.outlet = data.outlet;\r\n    this.title = data.title;\r\n    this.message = data.message;\r\n  }\r\n\r\n  public ngOnInit(): void {\r\n    let urlData = this.data.path.split('?');\r\n    let filter = this.queryfilter.generateFilter(urlData[1] ?? '');\r\n    this.router.navigate([\r\n      {\r\n        ...this.generateOutlets(this.data.outlet, this.generateArrayRoute(urlData[0]))\r\n      }], { state: { filters: filter } });\r\n  }\r\n\r\n  public ngOnDestroy(): void {\r\n    this.router.navigate([{ outlets: { rediDialog: null } }]);\r\n  }\r\n\r\n  private generateArrayRoute(url: string): Array<string> {\r\n    return url?.split('/').filter(r => r !== '');\r\n  }\r\n\r\n  private generateOutlets(outletName: string, url: Array<string>) {\r\n    let internalOutlet = `{\"${outletName}\":${JSON.stringify(url)}}`;\r\n    return { outlets: JSON.parse(internalOutlet) };\r\n  }\r\n\r\n  public close() {\r\n    this.dialogRef.close();\r\n  }\r\n}","<h2 mat-dialog-title>{{ title }}</h2>\r\n<mat-dialog-content>\r\n    {{ message }}\r\n    <br>\r\n    <router-outlet [name]=\"outlet\"></router-outlet>\r\n</mat-dialog-content>\r\n<mat-dialog-actions>\r\n    <button mat-stroked-button (click)=\"close()\">Aceptar</button>\r\n    <button mat-stroked-button (click)=\"close()\">Cancelar</button>\r\n</mat-dialog-actions>","import { ComponentType } from '@angular/cdk/portal';\r\nimport { Injectable } from '@angular/core';\r\nimport {\r\n  MatDialog,\r\n  MatDialogConfig\r\n} from '@angular/material/dialog';\r\nimport { RediDialogComponent } from '../components/redi-dialog/redi-dialog.component';\r\nimport { DialogData } from '../models/dialog-data.interface';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class RediDialogService {\r\n  constructor(private readonly dialog: MatDialog) { }\r\n\r\n  private openDialogComponent<T>(component: ComponentType<T>, data: DialogData, config: MatDialogConfig | undefined) {\r\n    return this.dialog.open(component, {\r\n      ...(config ?? {}),\r\n      data: data\r\n    });\r\n  }\r\n\r\n  public openDialogRoute(dialogData: DialogData, config: MatDialogConfig | undefined) {\r\n    return this.openDialogComponent(RediDialogComponent, dialogData, config);\r\n  }\r\n}\r\n","// Servicios\r\nexport * from './src/services/redi-dialog.service';\r\nexport * from './src/models/dialog-data.interface';\r\nexport * from './src/components/redi-dialog/redi-dialog.component';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1"],"mappings":"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"}