From fdfbe73bb2ee2178fafa492d2f1c819a404a6e0e Mon Sep 17 00:00:00 2001 From: ppc Date: Tue, 3 Sep 2024 14:07:04 +0100 Subject: [PATCH] require api version with server connection requests --- amnet-shared/src/api.ts | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/amnet-shared/src/api.ts b/amnet-shared/src/api.ts index ef819f8..12c19da 100644 --- a/amnet-shared/src/api.ts +++ b/amnet-shared/src/api.ts @@ -7,22 +7,31 @@ export interface AMCardInRequest { cardId: string; } -export interface AMServerInfoResponse { - serverAddress: string; - serverName: string; +/** + * Information needed to perform a request against an AMNet server + */ +export interface AMServerConnectionInfo { apiVersion: number; - gameId: string; + serverAddress: string; +} + +/** + * Received metadata from an AMNet server + */ +export interface AMServerInfoResponse extends AMServerConnectionInfo { + serverName: string; + gameId?: string | null | undefined; } /** * Performs the card-in request to the specified server - * @param serverAddress The origin address of the server to perform the request against + * @param server The server to perform the request against * @param request The card-in request to send * @param signal The abort signal to use for the request */ -export async function performCardIn(serverAddress: string, request: AMCardInRequest, signal: AbortSignal) { +export async function performCardIn(server: AMServerConnectionInfo, request: AMCardInRequest, signal: AbortSignal) { try { - const response = await fetch(`${new URL(serverAddress).origin}/amnet/signin`, { + const response = await fetch(`${new URL(server.serverAddress).origin}/amnet/signin`, { method: "POST", headers: { "Content-Type": "application/json"