Skip to main content

Mountain/IPC/AdvancedFeatures/
mountain_get_collaboration_sessions.rs

1
2//! `mountain_get_collaboration_sessions` Tauri command -
3//! returns every active `CollaborationSession::Struct`.
4
5use tauri::Manager;
6
7use crate::{
8	IPC::AdvancedFeatures::{CollaborationSession::Struct as CollaborationSession, Features::Struct as Features},
9	dev_log,
10};
11
12#[tauri::command]
13pub async fn mountain_get_collaboration_sessions(
14	app_handle:tauri::AppHandle,
15) -> Result<Vec<CollaborationSession>, String> {
16	dev_log!("lifecycle", "Tauri command: get_collaboration_sessions");
17
18	if let Some(features) = app_handle.try_state::<Features>() {
19		Ok(features.get_collaboration_sessions().await)
20	} else {
21		Err("AdvancedFeatures not found in application state".to_string())
22	}
23}