diff options
| author | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-06-11 00:54:30 +0200 |
|---|---|---|
| committer | Benedikt Peetz <benedikt.peetz@b-peetz.de> | 2026-06-11 00:54:30 +0200 |
| commit | 5c39e7cf284a1f6e9a1657f2deb44e359fc47eb8 (patch) | |
| tree | c64baa8d5866c8e339eaf660dd3f94f30a3f7d8a /crates/atuin-common/src/api.rs | |
| parent | chore: Somewhat simplify sync code (diff) | |
| download | atuin-5c39e7cf284a1f6e9a1657f2deb44e359fc47eb8.zip | |
chore: Move everything into one big crate
That helps remove duplicated code and rustc/cargo will now also show
dead code correctly.
Diffstat (limited to 'crates/atuin-common/src/api.rs')
| -rw-r--r-- | crates/atuin-common/src/api.rs | 144 |
1 files changed, 0 insertions, 144 deletions
diff --git a/crates/atuin-common/src/api.rs b/crates/atuin-common/src/api.rs deleted file mode 100644 index 1a9f348c..00000000 --- a/crates/atuin-common/src/api.rs +++ /dev/null @@ -1,144 +0,0 @@ -use semver::Version; -use serde::{Deserialize, Serialize}; -use std::borrow::Cow; -use std::sync::LazyLock; -use time::OffsetDateTime; - -// the usage of X- has been deprecated for quite along time, it turns out -pub static ATUIN_HEADER_VERSION: &str = "Atuin-Version"; -pub static ATUIN_CARGO_VERSION: &str = env!("CARGO_PKG_VERSION"); - -pub static ATUIN_VERSION: LazyLock<Version> = - LazyLock::new(|| Version::parse(ATUIN_CARGO_VERSION).expect("failed to parse self semver")); - -#[derive(Debug, Serialize, Deserialize)] -pub struct UserResponse { - pub username: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct RegisterRequest { - pub email: String, - pub username: String, - pub password: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct RegisterResponse { - pub session: String, - /// Auth type: "hub" for Hub API tokens, "cli" for legacy CLI session tokens. - /// Old servers that don't return this field will deserialize as None. - #[serde(default)] - pub auth: Option<String>, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct DeleteUserResponse {} - -#[derive(Debug, Serialize, Deserialize)] -pub struct ChangePasswordRequest { - pub current_password: String, - pub new_password: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct ChangePasswordResponse {} - -#[derive(Debug, Serialize, Deserialize)] -pub struct LoginRequest { - pub username: String, - pub password: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct LoginResponse { - pub session: String, - /// Auth type: "hub" for Hub API tokens, "cli" for legacy CLI session tokens. - /// Old servers that don't return this field will deserialize as None. - #[serde(default)] - pub auth: Option<String>, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct AddHistoryRequest { - pub id: String, - #[serde(with = "time::serde::rfc3339")] - pub timestamp: OffsetDateTime, - pub data: String, - pub hostname: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct CountResponse { - pub count: i64, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct SyncHistoryRequest { - #[serde(with = "time::serde::rfc3339")] - pub sync_ts: OffsetDateTime, - #[serde(with = "time::serde::rfc3339")] - pub history_ts: OffsetDateTime, - pub host: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct SyncHistoryResponse { - pub history: Vec<String>, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct ErrorResponse<'a> { - pub reason: Cow<'a, str>, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct IndexResponse { - pub homage: String, - pub version: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct StatusResponse { - pub count: i64, - pub username: String, - pub deleted: Vec<String>, - - // These could/should also go on the index of the server - // However, we do not request the server index as a part of normal sync - // I'd rather slightly increase the size of this response, than add an extra HTTP request - pub page_size: i64, // max page size supported by the server - pub version: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct DeleteHistoryRequest { - pub client_id: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct MessageResponse { - pub message: String, -} - -#[derive(Debug, Serialize, Deserialize)] -pub struct MeResponse { - pub username: String, -} - -// Hub CLI authentication types - -/// Response from POST /auth/cli/code - generates a code for CLI auth -#[derive(Debug, Serialize, Deserialize)] -pub struct CliCodeResponse { - pub code: String, -} - -/// Response from GET /auth/cli/verify?code=<code> - polls for authorization -#[derive(Debug, Serialize, Deserialize)] -pub struct CliVerifyResponse { - /// Session token, present only when authorization is complete - pub token: Option<String>, - pub success: Option<bool>, - pub error: Option<String>, -} |
