import { Injectable } from '@angular/core'; import { HttpClient } from "@angular/common/http"; import { Observable, from } from "rxjs"; import { Race } from '../models/race.model'; @Injectable({ providedIn: 'root' }) export class RacesService { constructor(private httpClient: HttpClient) { } getAllRaces(): Observable> { return this.httpClient.get>("assets/races.json"); } getRace(id: string): Observable { let promise = new Promise((resolve, reject) => { this.httpClient.get>("assets/race.json").subscribe(data => { for(let race of data) { if(race.id == id) { resolve(race); } } reject(undefined); }); }); return from(promise); } getMapInfo(mapUID: string) { return this.httpClient.get("http://localhost:3000/races/map/"+mapUID); } }