From 1a103de2f1ef75cd73347953cbe27e14606df871 Mon Sep 17 00:00:00 2001 From: 苏向夜 Date: Wed, 18 Feb 2026 15:08:40 +0800 Subject: refactor(client): rewrite macros to generate client --- src-tauri/src/core/java/mod.rs | 20 ++++---------------- src-tauri/src/core/java/persistence.rs | 5 +---- src-tauri/src/core/java/priority.rs | 2 +- src-tauri/src/core/java/providers/adoptium.rs | 25 +++++-------------------- 4 files changed, 11 insertions(+), 41 deletions(-) (limited to 'src-tauri/src/core/java') diff --git a/src-tauri/src/core/java/mod.rs b/src-tauri/src/core/java/mod.rs index 2215872..c8d936d 100644 --- a/src-tauri/src/core/java/mod.rs +++ b/src-tauri/src/core/java/mod.rs @@ -33,10 +33,7 @@ use providers::AdoptiumProvider; const CACHE_DURATION_SECS: u64 = 24 * 60 * 60; #[derive(Debug, Clone, Serialize, Deserialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/index.ts" -)] +#[ts(export, export_to = "java/core.ts")] pub struct JavaInstallation { pub path: String, pub version: String, @@ -69,10 +66,7 @@ impl std::fmt::Display for ImageType { } #[derive(Debug, Clone, Serialize, Deserialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/index.ts" -)] +#[ts(export, export_to = "java/core.ts")] pub struct JavaReleaseInfo { pub major_version: u32, pub image_type: String, @@ -88,10 +82,7 @@ pub struct JavaReleaseInfo { } #[derive(Debug, Clone, Serialize, Deserialize, Default, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/index.ts" -)] +#[ts(export, export_to = "java/core.ts")] pub struct JavaCatalog { pub releases: Vec, pub available_major_versions: Vec, @@ -100,10 +91,7 @@ pub struct JavaCatalog { } #[derive(Debug, Clone, Serialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/index.ts" -)] +#[ts(export, export_to = "java/core.ts")] pub struct JavaDownloadInfo { pub version: String, // e.g., "17.0.2+8" pub release_name: String, // e.g., "jdk-17.0.2+8" diff --git a/src-tauri/src/core/java/persistence.rs b/src-tauri/src/core/java/persistence.rs index 6720696..a6727d7 100644 --- a/src-tauri/src/core/java/persistence.rs +++ b/src-tauri/src/core/java/persistence.rs @@ -5,10 +5,7 @@ use tauri::{AppHandle, Manager}; use ts_rs::TS; #[derive(Debug, Clone, Serialize, Deserialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/persistence.ts" -)] +#[ts(export, export_to = "java/persistence.ts")] pub struct JavaConfig { pub user_defined_paths: Vec, pub preferred_java_path: Option, diff --git a/src-tauri/src/core/java/priority.rs b/src-tauri/src/core/java/priority.rs index b2e9fb4..f991eb7 100644 --- a/src-tauri/src/core/java/priority.rs +++ b/src-tauri/src/core/java/priority.rs @@ -1,8 +1,8 @@ use tauri::AppHandle; +use crate::core::java::JavaInstallation; use crate::core::java::persistence; use crate::core::java::validation; -use crate::core::java::JavaInstallation; pub async fn resolve_java_for_launch( app_handle: &AppHandle, diff --git a/src-tauri/src/core/java/providers/adoptium.rs b/src-tauri/src/core/java/providers/adoptium.rs index 20fb2d5..1765a99 100644 --- a/src-tauri/src/core/java/providers/adoptium.rs +++ b/src-tauri/src/core/java/providers/adoptium.rs @@ -9,10 +9,7 @@ use ts_rs::TS; const ADOPTIUM_API_BASE: &str = "https://api.adoptium.net/v3"; #[derive(Debug, Clone, Deserialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/providers/adoptium.ts" -)] +#[ts(export, export_to = "java/providers/adoptium.ts")] pub struct AdoptiumAsset { pub binary: AdoptiumBinary, pub release_name: String, @@ -21,10 +18,7 @@ pub struct AdoptiumAsset { #[derive(Debug, Clone, Deserialize, TS)] #[allow(dead_code)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/providers/adoptium.ts" -)] +#[ts(export, export_to = "java/providers/adoptium.ts")] pub struct AdoptiumBinary { pub os: String, pub architecture: String, @@ -35,10 +29,7 @@ pub struct AdoptiumBinary { } #[derive(Debug, Clone, Deserialize, TS)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/providers/adoptium.ts" -)] +#[ts(export, export_to = "java/providers/adoptium.ts")] pub struct AdoptiumPackage { pub name: String, pub link: String, @@ -48,10 +39,7 @@ pub struct AdoptiumPackage { #[derive(Debug, Clone, Deserialize, TS)] #[allow(dead_code)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/providers/adoptium.ts" -)] +#[ts(export, export_to = "java/providers/adoptium.ts")] pub struct AdoptiumVersionData { pub major: u32, pub minor: u32, @@ -62,10 +50,7 @@ pub struct AdoptiumVersionData { #[derive(Debug, Clone, Deserialize, TS)] #[allow(dead_code)] -#[ts( - export, - export_to = "../../packages/ui-new/src/types/bindings/java/providers/adoptium.ts" -)] +#[ts(export, export_to = "java/providers/adoptium.ts")] pub struct AvailableReleases { pub available_releases: Vec, pub available_lts_releases: Vec, -- cgit v1.2.3-70-g09d2