use tauri::{ ipc::{CommandScope, GlobalScope}, AppHandle, Runtime, }; use crate::{open::Program, scope::Scope, Error}; #[tauri::command] pub async fn open( app: AppHandle, command_scope: CommandScope, global_scope: GlobalScope, path: String, with: Option, ) -> crate::Result<()> { let scope = Scope::new( &app, command_scope .allows() .iter() .chain(global_scope.allows()) .collect(), command_scope .denies() .iter() .chain(global_scope.denies()) .collect(), ); if scope.is_allowed(&path)? { crate::open::open(path, with) } else { Err(Error::NotAllowed(path)) } } #[tauri::command] pub async fn reveal_item_in_dir() {}