move baseUrl and supported system ids to class level

This commit is contained in:
2025-01-22 13:43:37 -08:00
parent e4b4683b60
commit 4dd8b450a0

View File

@@ -1,10 +1,10 @@
import { GetterSetterRepository } from "../repositories/GetterSetterRepository";
import { IEta, IRoute, IShuttle, IStop, ISystem } from "../entities/entities";
const systemIdsToSupport = ["263"];
const baseUrl = "https://passiogo.com/mapGetData.php";
export class ApiBasedRepositoryLoader {
readonly supportedSystemIds = ["263"];
readonly baseUrl = "https://passiogo.com/mapGetData.php";
constructor(
public repository: GetterSetterRepository,
) {
@@ -15,12 +15,12 @@ export class ApiBasedRepositoryLoader {
getSystems: "2",
};
const query = new URLSearchParams(params).toString();
const response = await fetch(`${baseUrl}?${query}`);
const response = await fetch(`${this.baseUrl}?${query}`);
const json = await response.json()
if (typeof json.all === "object") {
// filter down to supported systems
const filteredSystems = json.all.filter((jsonSystem: any) => systemIdsToSupport.includes(jsonSystem.id));
const filteredSystems = json.all.filter((jsonSystem: any) => this.supportedSystemIds.includes(jsonSystem.id));
await Promise.all(filteredSystems.map(async (system: any) => {
const constructedSystem: ISystem = {
id: system.id,
@@ -47,7 +47,7 @@ export class ApiBasedRepositoryLoader {
formData.set("json", JSON.stringify(formDataJsonObject));
const query = new URLSearchParams(params).toString();
const response = await fetch(`${baseUrl}?${query}`, {
const response = await fetch(`${this.baseUrl}?${query}`, {
method: "POST",
body: formData,
});
@@ -86,7 +86,7 @@ export class ApiBasedRepositoryLoader {
formData.set("json", JSON.stringify(formDataJsonObject));
const query = new URLSearchParams(params).toString();
const response = await fetch(`${baseUrl}?${query}`, {
const response = await fetch(`${this.baseUrl}?${query}`, {
method: "POST",
body: formData,
});
@@ -114,7 +114,7 @@ export class ApiBasedRepositoryLoader {
formData.set("json", JSON.stringify(formDataJsonObject));
const query = new URLSearchParams(params).toString();
const response = await fetch(`${baseUrl}?${query}`, {
const response = await fetch(`${this.baseUrl}?${query}`, {
method: "POST",
body: formData,
});
@@ -154,7 +154,7 @@ export class ApiBasedRepositoryLoader {
};
const query = new URLSearchParams(params).toString();
const response = await fetch(`${baseUrl}?${query}`, {
const response = await fetch(`${this.baseUrl}?${query}`, {
method: "GET",
});
const json = await response.json();