{ "version": 3, "sources": ["src/app/_guards/admin.guard.ts", "src/app/shared/update-notification/update-notification-modal.component.ts", "src/app/shared/update-notification/update-notification-modal.component.html"], "sourcesContent": ["import { Injectable } from '@angular/core';\r\nimport {CanActivate, Router} from '@angular/router';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport { Observable } from 'rxjs';\r\nimport { map, take } from 'rxjs/operators';\r\nimport { AccountService } from '../_services/account.service';\r\nimport {TranslocoService} from \"@ngneat/transloco\";\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AdminGuard implements CanActivate {\r\n constructor(private accountService: AccountService, private toastr: ToastrService,\r\n private router: Router,\r\n private translocoService: TranslocoService) {}\r\n\r\n canActivate(): Observable {\r\n return this.accountService.currentUser$.pipe(take(1),\r\n map((user) => {\r\n if (user && this.accountService.hasAdminRole(user)) {\r\n return true;\r\n }\r\n\r\n this.toastr.error(this.translocoService.translate('toasts.unauthorized-1'));\r\n this.router.navigateByUrl('/home');\r\n return false;\r\n })\r\n );\r\n }\r\n}\r\n", "import {ChangeDetectionStrategy, Component, Input, OnInit} from '@angular/core';\r\nimport {NgbActiveModal, NgbModalModule} from '@ng-bootstrap/ng-bootstrap';\r\nimport { UpdateVersionEvent } from 'src/app/_models/events/update-version-event';\r\nimport {CommonModule} from \"@angular/common\";\r\nimport {SafeHtmlPipe} from \"../../_pipes/safe-html.pipe\";\r\nimport {TranslocoDirective} from \"@ngneat/transloco\";\r\n\r\n\r\n@Component({\r\n selector: 'app-update-notification-modal',\r\n standalone: true,\r\n imports: [CommonModule, NgbModalModule, SafeHtmlPipe, TranslocoDirective],\r\n templateUrl: './update-notification-modal.component.html',\r\n styleUrls: ['./update-notification-modal.component.scss'],\r\n changeDetection: ChangeDetectionStrategy.OnPush\r\n})\r\nexport class UpdateNotificationModalComponent implements OnInit {\r\n\r\n @Input({required: true}) updateData!: UpdateVersionEvent;\r\n updateUrl: string = 'https://wiki.kavitareader.com/en/install/windows-install#updating-kavita';\r\n\r\n constructor(public modal: NgbActiveModal) { }\r\n\r\n ngOnInit() {\r\n if (this.updateData.isDocker) {\r\n this.updateUrl = 'https://wiki.kavitareader.com/en/install/docker-install#updating-kavita';\r\n } else {\r\n this.updateUrl = 'https://wiki.kavitareader.com/en/install/windows-install#updating-kavita';\r\n }\r\n }\r\n\r\n close() {\r\n this.modal.close({success: false, series: undefined});\r\n }\r\n}\r\n", "\r\n
\r\n

{{t('title')}}

\r\n \r\n
\r\n
\r\n
{{updateData.updateTitle}}
\r\n
\r\n  
\r\n\r\n
\r\n {{t('help')}}\r\n \r\n {{t('download')}}\r\n
\r\n
\r\n"], "mappings": "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", "names": ["AdminGuard", "constructor", "accountService", "toastr", "router", "translocoService", "canActivate", "currentUser$", "pipe", "take", "map", "user", "hasAdminRole", "error", "translate", "navigateByUrl", "\u0275\u0275inject", "AccountService", "ToastrService", "Router", "TranslocoService", "factory", "\u0275fac", "providedIn", "_AdminGuard", "\u0275\u0275elementStart", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r4", "ctx_r3", "\u0275\u0275nextContext", "\u0275\u0275resetView", "close", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275propertyInterpolate", "ctx_r2", "updateData", "updateUrl", "\u0275\u0275sanitizeUrl", "\u0275\u0275advance", "\u0275\u0275textInterpolate", "t_r1", "\u0275\u0275elementContainerStart", "_r7", "ctx_r6", "\u0275\u0275element", "ctx_r8", "\u0275\u0275template", "UpdateNotificationModalComponent_ng_container_0_a_15_Template", "\u0275\u0275elementContainerEnd", "\u0275\u0275attribute", "ctx_r0", "updateTitle", "\u0275\u0275property", "\u0275\u0275pipeBind1", "updateBody", "\u0275\u0275sanitizeHtml", "\u0275\u0275classMapInterpolate1", "isDocker", "UpdateNotificationModalComponent", "constructor", "modal", "ngOnInit", "success", "series", "undefined", "\u0275\u0275directiveInject", "NgbActiveModal", "selectors", "inputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "UpdateNotificationModalComponent_ng_container_0_Template", "CommonModule", "NgIf", "NgbModalModule", "SafeHtmlPipe", "TranslocoDirective", "styles", "changeDetection", "_UpdateNotificationModalComponent"] }