I trying to set Pipe in angular 6 that convert text to other with using service (the method that returns observable)
I tried the following code, but I need to return a string instead of Promise
Pipe:
import { Pipe, PipeTransform } from '@angular/core';
import { TimeZoneService, TimeZone } from '../services/Global/timezone.service';
//import { resolve } from 'dns';
import { reject } from 'q';
import { Observable } from 'rxjs';
@Pipe({
  name: 'utcToText'
})
export class UtcToTextPipe implements PipeTransform {
  private timezoneLst: TimeZone[] = [];
  constructor(private _timezoneSvc : TimeZoneService) {}
  async transform(timezone: any, args?: any){
    this.timezoneLst = await this._timezoneSvc.getTimeZonesLst().toPromise();
     return this.timezoneLst.find(x => x.utc.indexOf(timezone) > -1).text;
}
}
html:
<span>{{subscription.time_zone |  utcToText}</span>
There is any way to make the asynchronous method of Promise / Ovservabe to a synchronous function that returns synchronous such as String?
Thanks a lot for helpers.
 
    