lichess_api/model/games/
import.rs

1use crate::model::Body;
2use serde::{Deserialize, Serialize};
3
4#[derive(Default, Clone, Debug, Serialize)]
5pub struct PostQuery;
6
7#[derive(Default, Clone, Debug, Serialize)]
8pub struct Game {
9    pgn: String,
10}
11
12pub type PostRequest = crate::model::Request<PostQuery, Game>;
13
14impl PostRequest {
15    pub fn new(pgn: String) -> Self {
16        Self::post("/api/import", None, Body::Form(Game { pgn }), None)
17    }
18}
19
20impl<S: Into<String>> From<S> for PostRequest {
21    fn from(pgn: S) -> Self {
22        Self::new(pgn.into())
23    }
24}
25
26#[derive(Clone, Debug, Deserialize, Serialize)]
27pub struct ImportData {
28    pub id: String,
29    pub url: String,
30}