3074e631d4969d22808525da0db9fb5c715ad4fcec2f7861ba37f890d322fc7c.json 3.5 KB

1
  1. {"ast":null,"code":"import { __decorate } from \"tslib\";\nimport { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { AuthService } from 'src/app/services/auth.service';\nlet AuthGuard = class AuthGuard {\n constructor(router, authService) {\n this.router = router;\n this.authService = authService;\n }\n canActivate(route, state) {\n const currentUser = this.authService.userValue;\n if (currentUser) {\n // check if route is restricted by role\n if (route.data.roles && route.data.roles.indexOf(currentUser.role) === -1) {\n // role not authorised so redirect to home page\n this.router.navigate(['/']);\n return false;\n }\n // authorised so return true\n return true;\n }\n // not logged in so redirect to login page with the return url\n this.router.navigate(['/login'], {\n queryParams: {\n returnUrl: state.url\n }\n });\n return false;\n }\n static #_ = this.ctorParameters = () => [{\n type: Router\n }, {\n type: AuthService\n }];\n};\nAuthGuard = __decorate([Injectable({\n providedIn: 'root'\n})], AuthGuard);\nexport { AuthGuard };","map":{"version":3,"names":["Injectable","Router","AuthService","AuthGuard","constructor","router","authService","canActivate","route","state","currentUser","userValue","data","roles","indexOf","role","navigate","queryParams","returnUrl","url","_","__decorate","providedIn"],"sources":["C:\\FatboarProject\\angular-client\\src\\app\\guards\\auth.guard.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { Router, CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from 'src/app/services/auth.service'\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private router: Router, private authService: AuthService) {}\r\n \r\n canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {\r\n const currentUser = this.authService.userValue;\r\n if (currentUser) {\r\n // check if route is restricted by role\r\n if (route.data.roles && route.data.roles.indexOf(currentUser.role) === -1) {\r\n // role not authorised so redirect to home page\r\n this.router.navigate(['/']);\r\n return false;\r\n }\r\n\r\n // authorised so return true\r\n return true;\r\n }\r\n\r\n // not logged in so redirect to login page with the return url\r\n this.router.navigate(['/login'], { queryParams: { returnUrl: state.url } });\r\n return false;\r\n}\r\n}"],"mappings":";AAAA,SAASA,UAAU,QAAQ,eAAe;AAC1C,SAASC,MAAM,QAA2E,iBAAiB;AAE3G,SAASC,WAAW,QAAQ,+BAA+B;AAKpD,IAAMC,SAAS,GAAf,MAAMA,SAAS;EACpBC,YAAoBC,MAAc,EAAUC,WAAwB;IAAhD,KAAAD,MAAM,GAANA,MAAM;IAAkB,KAAAC,WAAW,GAAXA,WAAW;EAAgB;EAEvEC,WAAWA,CAACC,KAA6B,EAAEC,KAA0B;IACnE,MAAMC,WAAW,GAAG,IAAI,CAACJ,WAAW,CAACK,SAAS;IAC9C,IAAID,WAAW,EAAE;MACb;MACA,IAAIF,KAAK,CAACI,IAAI,CAACC,KAAK,IAAIL,KAAK,CAACI,IAAI,CAACC,KAAK,CAACC,OAAO,CAACJ,WAAW,CAACK,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE;QACvE;QACA,IAAI,CAACV,MAAM,CAACW,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;QAC3B,OAAO,KAAK;;MAGhB;MACA,OAAO,IAAI;;IAGf;IACA,IAAI,CAACX,MAAM,CAACW,QAAQ,CAAC,CAAC,QAAQ,CAAC,EAAE;MAAEC,WAAW,EAAE;QAAEC,SAAS,EAAET,KAAK,CAACU;MAAG;IAAE,CAAE,CAAC;IAC3E,OAAO,KAAK;EAChB;EAAC,QAAAC,CAAA,G;;;;;;AApBYjB,SAAS,GAAAkB,UAAA,EAHrBrB,UAAU,CAAC;EACVsB,UAAU,EAAE;CACb,CAAC,C,EACWnB,SAAS,CAqBrB;SArBYA,SAAS"},"metadata":{},"sourceType":"module","externalDependencies":[]}