wasm-css 0.2.0

Ergonomic WASM CSS Framework
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
// Authors: Robert Lopez

use crate::error::{format_error, WasmCssError};
use web_sys::window;

pub(crate) fn generate_random_identity() -> Result<String, WasmCssError> {
    let window = window().ok_or(format_error!("Failed to obtain Window object"))?;
    let crypto = window
        .crypto()
        .map_err(|_| format_error!("Failed to obtain Crypto object"))?;

    let mut uuid = crypto.random_uuid();
    unsafe {
        uuid.as_bytes_mut()[0] = b'z';
    }

    Ok(uuid)
}