/** Angular Imports */ import { Injectable } from '@angular/core'; import { Resolve, ActivatedRouteSnapshot } from '@angular/router'; /** rxjs Imports */ import { Observable } from 'rxjs'; /** Custom Services */ import { SavingsService } from '../savings.service'; /** * Savings Account data resolver. */ @Injectable() export class SavingsAccountViewResolver implements Resolve { /** * @param {SavingsService} SavingsService Savings service. */ constructor(private savingsService: SavingsService) {} /** * Returns the Savings Account data. * @param {ActivatedRouteSnapshot} route Route Snapshot * @returns {Observable} */ resolve(route: ActivatedRouteSnapshot): Observable { const savingAccountId = route.paramMap.get('savingAccountId'); return this.savingsService.getSavingsAccountData(savingAccountId); } }