/* * This file is part of laurelin_client * Copyright (C) 2023 Jonni Liljamo * * Licensed under GPL-3.0-only. * See LICENSE for licensing information. */ use serde::Serialize; use crate::NetworkingOptions; use super::User; pub type RegisterResponse = Result; #[derive(Serialize)] struct RegisterPost { username: String, email: String, password: String, } pub fn register( no: &NetworkingOptions, username: &str, email: &str, password: &str, ) -> RegisterResponse { let res = no.req .post(&format!("{}/user", &no.api_address)) .json(&RegisterPost { username: username.to_string(), email: email.to_string(), password: password.to_string(), }) .send() .unwrap(); Ok(res.json().unwrap()) }