mirror of
https://github.com/clash-verge-rev/clash-verge-rev.git
synced 2026-10-22 19:52:14 +08:00
* refactor(ipc): generate bindings with Specta * fix(profile): project IPC inputs to consumed fields * fix(events): remove unused refresh payloads * fix(webdav): return only consumed backup metadata * fix(network): trim unused interface metadata * fix(sysinfo): return only displayed system fields * chore(knip): check generated runtime exports * fix(proxy): confirm runtime chain updates before UI changes * fix(clipboard): propagate proxy environment copy failures * refactor(dns): remove ignored runtime patch * refactor(core): trim unused upgrade response fields * refactor(ipc): avoid redundant response copies * refactor(proxy): clarify automatic proxy query naming * chore(tests): remove added IPC regression tests * refactor(ipc): enforce typed command boundaries * chore(contract): check generated bindings before push * refactor(ipc): remove unused proxy liveness payloads
48 lines
1.5 KiB
Rust
48 lines
1.5 KiB
Rust
use super::CmdResult;
|
|
use crate::{cmd::StringifyErr as _, feat};
|
|
use feat::LocalBackupFile;
|
|
use smartstring::alias::String;
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn create_local_backup() -> CmdResult<()> {
|
|
feat::create_local_backup().await.stringify_err()
|
|
}
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn list_local_backup() -> CmdResult<Vec<LocalBackupFile>> {
|
|
feat::list_local_backup().await.stringify_err()
|
|
}
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn delete_local_backup(filename: std::string::String) -> CmdResult<()> {
|
|
let filename: String = filename.into();
|
|
feat::delete_local_backup(filename).await.stringify_err()
|
|
}
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn restore_local_backup(filename: std::string::String) -> CmdResult<()> {
|
|
let filename: String = filename.into();
|
|
feat::restore_local_backup(filename)
|
|
.await
|
|
.map_err(|error| super::proxy_aware_error(&error))
|
|
}
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn import_local_backup(source: std::string::String) -> CmdResult<std::string::String> {
|
|
let source: String = source.into();
|
|
feat::import_local_backup(source).await.map(Into::into).stringify_err()
|
|
}
|
|
|
|
#[tauri::command]
|
|
#[specta::specta]
|
|
pub async fn export_local_backup(filename: std::string::String, destination: std::string::String) -> CmdResult<()> {
|
|
let filename: String = filename.into();
|
|
let destination: String = destination.into();
|
|
feat::export_local_backup(filename, destination).await.stringify_err()
|
|
}
|