use crate::api::Result; use theseus::prelude::*; pub fn init() -> tauri::plugin::TauriPlugin { tauri::plugin::Builder::new("settings") .invoke_handler(tauri::generate_handler![ settings_get, settings_set, cancel_directory_change ]) .build() } // Get full settings // invoke('plugin:settings|settings_get') #[tauri::command] pub async fn settings_get() -> Result { let res = settings::get().await?; Ok(res) } // Set full settings // invoke('plugin:settings|settings_set', settings) #[tauri::command] pub async fn settings_set(settings: Settings) -> Result<()> { settings::set(settings).await?; Ok(()) } #[tauri::command] pub async fn cancel_directory_change() -> Result<()> { settings::cancel_directory_change().await?; Ok(()) }