Add API code

This commit is contained in:
2025-05-26 02:37:43 +02:00
parent 3e1ce6904f
commit cd65f06c5f
7 changed files with 179 additions and 0 deletions

View File

@ -0,0 +1,30 @@
import {deleteData, postData, putData} from "../fetchApi.tsx";
import type IPlayer from "../types/IPlayer.ts";
export function AddPlayer(apiUri: string, steamId: bigint){
return putData(`${apiUri}/Actions/Player/${steamId}`) as Promise<IPlayer>;
}
export function DeletePlayer(apiUri: string, steamId: bigint){
return deleteData(`${apiUri}/Actions/Player/${steamId}`) as Promise<void>;
}
export function UpdatePlayerData(apiUri: string, steamId: bigint){
return postData(`${apiUri}/Actions/Update/Player/${steamId}/All`) as Promise<void>;
}
export function UpdatePlayerInfo(apiUri: string, steamId: bigint){
return postData(`${apiUri}/Actions/Update/Player/${steamId}/Info`) as Promise<void>;
}
export function UpdatePlayerOwnedGames(apiUri: string, steamId: bigint){
return postData(`${apiUri}/Actions/Update/Player/${steamId}/OwnedGames`) as Promise<void>;
}
export function UpdatePlayerTimeTracked(apiUri: string, steamId: bigint){
return postData(`${apiUri}/Actions/Update/Player/${steamId}/TimeTracked`) as Promise<void>;
}
export function UpdateAll(apiUri: string){
return postData(`${apiUri}/Actions/All`) as Promise<void>;
}

View File

@ -0,0 +1,27 @@
import {getData} from "../fetchApi.tsx";
import type IPlayer from "../types/IPlayer.ts";
import type IGame from "../types/IGame.ts";
export function GetPlayers(apiUri: string){
return getData(`${apiUri}/Data/Players`) as Promise<IPlayer[]>;
}
export function GetPlayer(apiUri: string, steamdId: bigint){
return getData(`${apiUri}/Data/Player/${steamdId}`) as Promise<IPlayer>;
}
export function GetGamesOfPlayer(apiUri: string, steamdId: bigint){
return getData(`${apiUri}/Data/Player/${steamdId}/Games`) as Promise<IGame[]>;
}
export function GetGames(apiUri: string){
return getData(`${apiUri}/Data/Games`) as Promise<IGame[]>;
}
export function GetGame(apiUri: string, appId: bigint){
return getData(`${apiUri}/Data/Game/${appId}`) as Promise<IGame>;
}
export function GetPlayersOfGame(apiUri: string, appId: bigint){
return getData(`${apiUri}/Data/Game/${appId}/Players`) as Promise<IPlayer[]>;
}

View File

@ -0,0 +1,18 @@
import {getData} from "../fetchApi.tsx";
import type ITrackedTime from "../types/ITrackedTime.ts";
export function GetTimelines(apiUri: string, steamId: bigint){
return getData(`${apiUri}/TimeTrack/${steamId}`) as Promise<Map<bigint, ITrackedTime[]>>;
}
export function GetTimelineGame(apiUri: string, steamId: bigint, appId: bigint){
return getData(`${apiUri}/TimeTrack/${steamId}/${appId}`) as Promise<ITrackedTime[]>;
}
export function GetTotal(apiUri: string, steamId: bigint){
return getData(`${apiUri}/TimeTrack/${steamId}/Total`) as unknown as Promise<bigint>;
}
export function GetTotalPerGame(apiUri: string, steamId: bigint){
return getData(`${apiUri}/TimeTrack/${steamId}/Total/PerGame`) as Promise<Map<bigint, bigint>>;
}