import { Injectable } from '@angular/core'; import { ActivatedRouteSnapshot, Resolve } from '@angular/router'; import { OfflineGrantsService } from '@features/offline-grants/offline-grants.service'; import { MyWorkflowManagerRolesResolver } from '@features/workflow/resolvers/my-workflow-manager-roles.resolver'; @Injectable({ providedIn: 'root' }) export class EditApplicationResolver implements Resolve { constructor ( private offlineGrantsService: OfflineGrantsService, private myWorkflowManagerRolesResolver: MyWorkflowManagerRolesResolver ) { } async resolve (next: ActivatedRouteSnapshot) { const id = next.params.id; const isNewApp = next.queryParams.isNewApp; await this.myWorkflowManagerRolesResolver.resolve(); await this.offlineGrantsService.getApplicationForEdit(+id, isNewApp); } }