/** 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 Transaction Template data resolver. */ @Injectable() export class SavingsAccountTransactionTemplateResolver implements Resolve { /** * @param {SavingsService} SavingsService Savings service. */ constructor(private savingsService: SavingsService) { } /** * Returns the Savings Account Transaction Template data. * @param {ActivatedRouteSnapshot} route Route Snapshot * @returns {Observable} */ resolve(route: ActivatedRouteSnapshot): Observable { const savingAccountId = route.parent.paramMap.get('savingAccountId'); const transactionId = route.paramMap.get('id'); return this.savingsService.getSavingsAccountTransactionTemplate(savingAccountId, transactionId); } }