1#[derive(thiserror::Error, Debug)]
3pub enum Error {
4 #[error("FromJsValue: {0}")]
5 FromJsValue(String),
6 #[error("Unsupported operation: {0}")]
12 UnsupportedOperation(String),
13}
14
15impl From<wasm_bindgen::JsValue> for Error {
16 fn from(value: wasm_bindgen::JsValue) -> Self {
17 Error::FromJsValue(value.as_string().unwrap_or_default())
18 }
19}
20
21impl From<Error> for wasm_bindgen::JsValue {
22 fn from(error: Error) -> Self {
23 wasm_bindgen::JsValue::from_str(&error.to_string())
24 }
25}
26
27pub type Result<T> = std::result::Result<T, Error>;