{ "version": 3, "sources": ["src/app/core/guards.ts"], "sourcesContent": ["import { inject } from '@angular/core';\nimport { CanActivateFn, Router } from '@angular/router';\nimport { TeamMemberRole } from 'models';\nimport { map } from 'rxjs';\nimport { Session } from './session.service';\nimport { EMPTY } from './utils';\n\nexport const playerRoleGuard: CanActivateFn = () => {\n const session = inject(Session);\n return session.user.teamMemberRole === TeamMemberRole.Player;\n};\n\nexport const isSystemAdministratorGuard: CanActivateFn = () => {\n const session = inject(Session);\n return session.user.isInRole('System administrator');\n};\n\nexport const authorizedGuard: CanActivateFn = () => {\n const session = inject(Session);\n const router = inject(Router);\n return session.initialize().pipe(\n map((res) => {\n if (!res) {\n router.navigate(['/', 'account', 'login']).catch(EMPTY);\n return false;\n }\n if (!session.user.onboardingStatus.isCompleted) {\n router.navigate(['/', 'account', 'create', '1']).catch(EMPTY);\n return false;\n }\n return true;\n }),\n );\n};\n"], "mappings": "+EAOO,IAAMA,EAAiCA,IAC1BC,EAAOC,CAAO,EACfC,KAAKC,iBAAmBC,EAAeC,OAG7CC,EAA4CA,IACrCN,EAAOC,CAAO,EACfC,KAAKK,SAAS,sBAAsB,EAG1CC,EAAiCA,IAAK,CAC/C,IAAMC,EAAUT,EAAOC,CAAO,EACxBS,EAASV,EAAOW,CAAM,EAC5B,OAAOF,EAAQG,WAAU,EAAGC,KACxBC,EAAKC,GACIA,EAIAN,EAAQP,KAAKc,iBAAiBC,YAI5B,IAHHP,EAAOQ,SAAS,CAAC,IAAK,UAAW,SAAU,GAAG,CAAC,EAAEC,MAAMC,CAAK,EACrD,KALPV,EAAOQ,SAAS,CAAC,IAAK,UAAW,OAAO,CAAC,EAAEC,MAAMC,CAAK,EAC/C,GAOd,CAAC,CAEV", "names": ["playerRoleGuard", "inject", "Session", "user", "teamMemberRole", "TeamMemberRole", "Player", "isSystemAdministratorGuard", "isInRole", "authorizedGuard", "session", "router", "Router", "initialize", "pipe", "map", "res", "onboardingStatus", "isCompleted", "navigate", "catch", "EMPTY"] }