import { Injectable } from '@angular/core'; import { ActivatedRouteSnapshot, Resolve } from '@angular/router'; import { User } from '@core/typings/client-user.typing'; import { RolesService } from '../roles.service'; @Injectable({ providedIn: 'root' }) export class RoleUsersResolver implements Resolve { constructor ( private roleService: RolesService ) { } async resolve (activatedRouteSnapshot: ActivatedRouteSnapshot) { const roleId = +activatedRouteSnapshot.params.id; if (!this.roleService.getUsersByRoleId(roleId)) { await this.roleService.getUsersInRole(roleId); } return this.roleService.getUsersByRoleId(roleId); } }