import { Injectable } from '@angular/core'; import { Router, Resolve, RouterStateSnapshot, ActivatedRouteSnapshot } from '@angular/router'; import { Observable, of } from 'rxjs'; import { LoansService } from '../loans.service'; @Injectable({ providedIn: 'root' }) export class LoanReschedulesResolver implements Resolve { /** * @param {LoansService} LoansService Loans service. */ constructor(private loansService: LoansService) { } /** * Returns the Loans data. * @returns {Observable} */ resolve(route: ActivatedRouteSnapshot): Observable { const loanId = route.paramMap.get('loanId') || route.parent.paramMap.get('loanId'); return this.loansService.loanRescheduleRequests(loanId); } }