Mountain/IPC/WindServiceHandlers/UI/WorkingCopyIsDirty.rs
1//! Wire method: `workingCopy:isDirty`.
2
3use std::sync::Arc;
4
5use serde_json::{Value, json};
6
7use crate::RunTime::ApplicationRunTime::ApplicationRunTime;
8
9pub async fn Fn(RunTime:Arc<ApplicationRunTime>, Arguments:Vec<Value>) -> Result<Value, String> {
10 let Uri = Arguments
11 .first()
12 .and_then(|V| V.as_str())
13 .ok_or("workingCopy:isDirty requires uri".to_string())?;
14
15 let IsDirty = RunTime.Environment.ApplicationState.Feature.WorkingCopy.IsDirty(Uri);
16
17 Ok(json!(IsDirty))
18}