UNPKG

7.26 kBSource Map (JSON)View Raw
1{"version":3,"file":"ng-security.es5.js","sources":["../../../../packages/ng-security/src/security-guard.module.ts","../../../../packages/ng-security/src/security-guard.framer.ts","../../../../packages/ng-security/src/security-guard.service.ts","../../../../packages/ng-security/src/security-guard-authorizer.ts"],"sourcesContent":["import { NgModule } from '@angular/core';\nimport { Framing } from '@framing/ng-core';\n\nimport { SecurityGuardService } from './security-guard.service';\n\n@NgModule(Framing((framing) => framing.provider(SecurityGuardService)))\nexport class SecurityGuardModule {}\n","import { Framer, FramingNgModule } from '@framing/ng-core';\n\nimport { SecurityGuardModel } from './security-guard.model';\nimport { SecurityGuardService } from './security-guard.service';\n\nexport class SecurityGuardFramer extends Framer<SecurityGuardModel, void> {\n\n public get framerName(): string { return 'SecurityGuard'; }\n\n public get addModelToRouteData(): boolean { return true; }\n\n public get defaultModel(): SecurityGuardModel {\n return {\n authorization: undefined,\n canActive: true,\n canLoad: false,\n canActivateChild: false,\n };\n }\n\n /**\n * The frame function.\n */\n public frame(framing: FramingNgModule): void {\n if (this.theModel.canActive) {\n this.route.canActivate = [ SecurityGuardService ];\n }\n\n if (this.theModel.canActivateChild) {\n this.route.canActivateChild = [ SecurityGuardService ];\n }\n\n if (this.theModel.canLoad) {\n this.route.canLoad = [ SecurityGuardService ];\n }\n }\n}\n","import { Injectable } from '@angular/core';\nimport { ActivatedRouteSnapshot, CanActivate, CanActivateChild, CanLoad, Route, RouterStateSnapshot } from '@angular/router';\n\nimport { SecurityGuardAuthorizer } from './security-guard-authorizer';\nimport { SecurityGuardModel } from './security-guard.model';\n\nimport { Observable } from 'rxjs';\n\n@Injectable()\nexport class SecurityGuardService implements CanActivate, CanActivateChild, CanLoad {\n\n constructor(\n public authService: SecurityGuardAuthorizer,\n ) {}\n\n /**\n * CanActivate hook.\n */\n public canActivate(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot,\n ): Observable<boolean> | Promise<boolean> | boolean {\n const model = route.data ? (route.data as any).SecurityGuardModel as SecurityGuardModel : undefined;\n if (model) {\n return this.authService.canActivate(model, route, state);\n } else {\n console.warn(`Expecting 'SecurityGuardModel' in route data`, { route });\n return false;\n }\n }\n\n /**\n * CanActivateChild hook.\n */\n public canActivateChild(\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot,\n ): Observable<boolean> | Promise<boolean> | boolean {\n const model = route.data ? (route.data as any).SecurityGuardModel as SecurityGuardModel : undefined;\n if (model) {\n return this.authService.canActivate(model, route, state);\n } else {\n console.warn(`Expecting 'SecurityGuardModel' in route data`, { route });\n return false;\n }\n }\n\n /**\n * CanActivate hook.\n */\n public canLoad(\n route: Route,\n ): Observable<boolean> | Promise<boolean> | boolean {\n const model = route.data ? (route.data as any).SecurityGuardModel as SecurityGuardModel : undefined;\n if (model) {\n return this.authService.canLoad(model, route);\n } else {\n console.warn(`Expecting 'SecurityGuardModel' in route data`, { route });\n return false;\n }\n }\n}\n","import { ActivatedRouteSnapshot, Route, RouterStateSnapshot } from '@angular/router';\n\nimport { Observable } from 'rxjs';\n\nimport { SecurityGuardModel } from './security-guard.model';\n\nexport abstract class SecurityGuardAuthorizer {\n public abstract canActivate(\n config: SecurityGuardModel,\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot,\n ): Observable<boolean> | Promise<boolean> | boolean;\n\n public abstract canActivateChild(\n config: SecurityGuardModel,\n route: ActivatedRouteSnapshot,\n state: RouterStateSnapshot,\n ): Observable<boolean> | Promise<boolean> | boolean;\n\n public abstract canLoad(\n config: SecurityGuardModel,\n route: Route,\n ): Observable<boolean> | Promise<boolean> | boolean;\n}\n"],"names":["__decorate"],"mappings":"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"}
\No newline at end of file