Skip to main content

Mountain/IPC/AdvancedFeatures/
mountain_get_collaboration_sessions.rs

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