@@ 11,6 11,8 @@ use serde::{Deserialize, Serialize};
use super::APIErrorWrapper;
+mod types;
+
#[derive(Debug, Serialize, Deserialize)]
pub struct ResultCreateGame {
pub id: String,
@@ 34,3 36,27 @@ pub fn create(api_address: String, token: String) -> ResponseCreateGame {
resp.json().unwrap()
}
+
+#[derive(Debug, Serialize, Deserialize)]
+pub struct ResultAllForming {
+ pub games: Vec<types::Game>,
+}
+
+#[derive(Debug, Serialize, Deserialize)]
+#[serde(untagged)]
+pub enum ResponseAllForming {
+ Error(APIErrorWrapper),
+ Valid(ResultAllForming),
+}
+
+pub fn all_forming(api_address: String, token: String) -> ResponseAllForming {
+ let client = reqwest::blocking::Client::new();
+
+ let resp = client
+ .get(&format!("{}/game/all_forming", api_address))
+ .header("Authorization", token)
+ .send()
+ .unwrap();
+
+ resp.json().unwrap()
+}
@@ 0,0 1,19 @@
+/*
+ * This file is part of sdbclient
+ * Copyright (C) 2023 Jonni Liljamo <jonni@liljamo.com>
+ *
+ * Licensed under GPL-3.0-only.
+ * See LICENSE for licensing information.
+ */
+
+use serde::{Deserialize, Serialize};
+
+#[derive(Debug, Serialize, Deserialize)]
+pub struct Game {
+ pub id: String,
+ pub p1: String,
+ pub p2: String,
+ pub state: u8,
+ pub ended_at: String,
+}
+