Skip to main content

webui/
global.rs

1use js_sys::{Array, Function};
2
3use crate::prelude::*;
4
5pub fn newid() -> Uuid {
6    Uuid::from_str(&interop::get_uuid()).unwrap()
7}
8
9pub fn to_json<T: Serialize>(value: &T) -> Result<String, WebUIError> {
10    let json = serde_json::ser::to_string_pretty(value)?;
11    Ok(json)
12}
13
14pub fn from_json<T: DeserializeOwned>(value: &str) -> Result<T, WebUIError> {
15    let instance = serde_json::from_str(value)?;
16    Ok(instance)
17}
18
19pub fn parse_uuid(value: &str) -> Result<Uuid, WebUIError> {
20    match Uuid::parse_str(value) {
21        Ok(uuid) => Ok(uuid),
22        Err(_) => Err(WebUIError::Invalid(String::from("Invalid UUID"))),
23    }
24}