2026-08-30 16:38:53 +05:00
|
|
|
use serde::Deserialize;
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaVersions {
|
2026-08-30 18:29:17 +05:00
|
|
|
pub latest: VanillaLatestVersion,
|
2026-08-30 16:38:53 +05:00
|
|
|
pub versions: Vec<VanillaVersion>,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaLatestVersion {
|
|
|
|
|
pub release: String,
|
|
|
|
|
pub snapshot: String,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize, PartialEq)]
|
|
|
|
|
#[serde(rename_all = "snake_case")]
|
|
|
|
|
pub enum VanillaVersionType {
|
|
|
|
|
Snapshot,
|
|
|
|
|
Release,
|
|
|
|
|
OldBeta,
|
|
|
|
|
OldAlpha,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaVersion {
|
|
|
|
|
pub id: String,
|
|
|
|
|
#[serde(rename = "type")]
|
|
|
|
|
pub version_type: VanillaVersionType,
|
|
|
|
|
pub url: String,
|
|
|
|
|
}
|
|
|
|
|
|
2026-08-30 18:29:17 +05:00
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaVersionDetail {
|
|
|
|
|
pub downloads: VanillaVersionDownloads,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaVersionDownloads {
|
|
|
|
|
pub client: VanillaVersionDownloadItem,
|
|
|
|
|
pub server: VanillaVersionDownloadItem,
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
#[derive(Deserialize)]
|
|
|
|
|
pub struct VanillaVersionDownloadItem {
|
|
|
|
|
pub sha1: String,
|
|
|
|
|
pub size: u64,
|
|
|
|
|
pub url: String,
|
|
|
|
|
}
|