{"version":3,"file":"ng-doc-ui-kit-components-dialog-outlet.mjs","sources":["../../../../libs/ui-kit/components/dialog-outlet/dialog-outlet.component.ts","../../../../libs/ui-kit/components/dialog-outlet/ng-doc-ui-kit-components-dialog-outlet.ts"],"sourcesContent":["import {\n\tAfterContentInit,\n\tChangeDetectionStrategy,\n\tComponent,\n\tContentChild,\n\tinject,\n\tInput,\n\tTemplateRef,\n\tViewChild,\n} from '@angular/core';\nimport { ActivatedRoute, Router, RouterOutlet } from '@angular/router';\nimport { NgDocOverlayRef } from '@ng-doc/ui-kit/classes/overlay-ref';\nimport { NgDocDialogConfig, NgDocDialogService } from '@ng-doc/ui-kit/services/dialog';\nimport { UntilDestroy, untilDestroyed } from '@ngneat/until-destroy';\nimport { merge, NEVER, Subject, switchMap } from 'rxjs';\nimport { map, startWith, takeUntil } from 'rxjs/operators';\n\n@Component({\n\tselector: 'ng-doc-dialog-outlet',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ng-template #outletContent>\n\t\t\t<ng-content></ng-content>\n\t\t</ng-template>\n\t`,\n\tchangeDetection: ChangeDetectionStrategy.OnPush,\n})\n@UntilDestroy()\nexport class DialogOutletComponent implements AfterContentInit {\n\t@Input()\n\tconfig?: NgDocDialogConfig;\n\n\t@ViewChild('outletContent', { static: true })\n\toutletContent!: TemplateRef<never>;\n\n\t@ContentChild(RouterOutlet)\n\trouterOutlet?: RouterOutlet;\n\n\tdialogRef?: NgDocOverlayRef;\n\n\tprotected readonly router: Router = inject(Router);\n\tprotected readonly route: ActivatedRoute = inject(ActivatedRoute);\n\tprotected readonly dialogService: NgDocDialogService = inject(NgDocDialogService);\n\n\tngAfterContentInit(): void {\n\t\tif (this.routerOutlet) {\n\t\t\tconst dialogRef = new Subject<NgDocOverlayRef>();\n\n\t\t\tdialogRef\n\t\t\t\t.pipe(\n\t\t\t\t\tswitchMap((dialogRef: NgDocOverlayRef) =>\n\t\t\t\t\t\tdialogRef.beforeClose().pipe(takeUntil(this.routerOutlet?.deactivateEvents ?? NEVER)),\n\t\t\t\t\t),\n\t\t\t\t\tuntilDestroyed(this),\n\t\t\t\t)\n\t\t\t\t.subscribe(() => {\n\t\t\t\t\tconst url = this.route.pathFromRoot\n\t\t\t\t\t\t.map((r) => r.snapshot.url)\n\t\t\t\t\t\t.filter((f) => !!f[0])\n\t\t\t\t\t\t.map(([f]) => f.path)\n\t\t\t\t\t\t.join('/');\n\n\t\t\t\t\tthis.router.navigateByUrl(url);\n\t\t\t\t});\n\n\t\t\tmerge(\n\t\t\t\tthis.routerOutlet.activateEvents.pipe(map(() => true)),\n\t\t\t\tthis.routerOutlet.deactivateEvents.pipe(map(() => false)),\n\t\t\t)\n\t\t\t\t.pipe(startWith(this.routerOutlet.isActivated), untilDestroyed(this))\n\t\t\t\t.subscribe((activated: boolean) => {\n\t\t\t\t\tif (activated) {\n\t\t\t\t\t\tthis.dialogRef = this.dialogService.open(this.outletContent, this.config);\n\n\t\t\t\t\t\tdialogRef.next(this.dialogRef);\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.dialogRef?.close();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}