Mountain/Environment/StatusBarProvider/
MessageManagement.rs1use CommonLibrary::{Error::CommonError::CommonError, IPC::SkyEvent::SkyEvent};
7use serde_json::{Value, json};
8use tauri::Emitter;
9
10use super::super::MountainEnvironment::MountainEnvironment;
11use crate::dev_log;
12
13pub(super) async fn set_status_bar_message_impl(
15 env:&MountainEnvironment,
16
17 message_identifier:String,
18
19 text:String,
20) -> Result<(), CommonError> {
21 dev_log!(
22 "lifecycle",
23 "[StatusBarProvider] Setting status message '{}': {}",
24 message_identifier,
25 text
26 );
27
28 env.ApplicationHandle
29 .emit::<Value>(
30 SkyEvent::StatusBarSetMessage.AsStr(),
31 json!({ "id": message_identifier, "text": text }),
32 )
33 .map_err(|error| CommonError::UserInterfaceInteraction { Reason:error.to_string() })
34}
35
36pub(super) async fn dispose_status_bar_message_impl(
38 env:&MountainEnvironment,
39
40 message_identifier:String,
41) -> Result<(), CommonError> {
42 dev_log!(
43 "lifecycle",
44 "[StatusBarProvider] Disposing status message '{}'",
45 message_identifier
46 );
47
48 env.ApplicationHandle
49 .emit::<Value>(SkyEvent::StatusBarDisposeMessage.AsStr(), json!({ "id": message_identifier }))
50 .map_err(|error| CommonError::UserInterfaceInteraction { Reason:error.to_string() })
51}