@ng-doc/ui-kit
Version:
<!-- PROJECT LOGO --> <br /> <div align="center"> <a href="https://github.com/ng-doc/ng-doc"> <img src="https://ng-doc.com/assets/images/ng-doc.svg?raw=true" alt="Logo" height="150px"> </a>
1 lines • 5.36 kB
Source Map (JSON)
{"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 AfterContentInit,\n ChangeDetectionStrategy,\n Component,\n ContentChild,\n DestroyRef,\n inject,\n Input,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\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 { merge, NEVER, Subject, switchMap } from 'rxjs';\nimport { map, startWith, takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 'ng-doc-dialog-outlet',\n standalone: true,\n template: `\n <ng-template #outletContent>\n <ng-content></ng-content>\n </ng-template>\n `,\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class DialogOutletComponent implements AfterContentInit {\n @Input()\n config?: NgDocDialogConfig;\n\n @ViewChild('outletContent', { static: true })\n outletContent!: TemplateRef<never>;\n\n @ContentChild(RouterOutlet)\n routerOutlet?: RouterOutlet;\n\n dialogRef?: NgDocOverlayRef;\n\n protected readonly router: Router = inject(Router);\n protected readonly route: ActivatedRoute = inject(ActivatedRoute);\n protected readonly dialogService: NgDocDialogService = inject(NgDocDialogService);\n protected readonly destroyRef = inject(DestroyRef);\n\n ngAfterContentInit(): void {\n if (this.routerOutlet) {\n const dialogRef = new Subject<NgDocOverlayRef>();\n\n dialogRef\n .pipe(\n switchMap((dialogRef: NgDocOverlayRef) =>\n dialogRef.beforeClose().pipe(takeUntil(this.routerOutlet?.deactivateEvents ?? NEVER)),\n ),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe(() => {\n const url = this.route.pathFromRoot\n .map((r) => r.snapshot.url)\n .filter((f) => !!f[0])\n .map(([f]) => f.path)\n .join('/');\n\n this.router.navigateByUrl(url);\n });\n\n merge(\n this.routerOutlet.activateEvents.pipe(map(() => true)),\n this.routerOutlet.deactivateEvents.pipe(map(() => false)),\n )\n .pipe(startWith(this.routerOutlet.isActivated), takeUntilDestroyed(this.destroyRef))\n .subscribe((activated: boolean) => {\n if (activated) {\n this.dialogRef = this.dialogService.open(this.outletContent, this.config);\n\n dialogRef.next(this.dialogRef);\n } else {\n this.dialogRef?.close();\n }\n });\n }\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}