mirror of
https://github.com/kanidm/kanidm.git
synced 2025-04-17 07:45:39 +02:00
* doing some work for enumerating how the accounts work together * fixing up build scripts and removing extra things * making JavaScript as_tag use the struct field names * making shared.js a module, removing wasmloader.js * don't compress compressed things
30 lines
561 B
Rust
30 lines
561 B
Rust
use std::error::Error;
|
|
use std::fmt;
|
|
|
|
use wasm_bindgen::JsValue;
|
|
|
|
#[derive(Debug, Clone, PartialEq)]
|
|
pub struct FetchError {
|
|
err: JsValue,
|
|
}
|
|
|
|
impl fmt::Display for FetchError {
|
|
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
|
fmt::Debug::fmt(&self.err, f)
|
|
}
|
|
}
|
|
|
|
impl Error for FetchError {}
|
|
|
|
impl From<JsValue> for FetchError {
|
|
fn from(value: JsValue) -> Self {
|
|
Self { err: value }
|
|
}
|
|
}
|
|
|
|
impl FetchError {
|
|
pub fn as_string(&self) -> String {
|
|
self.err.as_string().unwrap_or_else(|| "null".to_string())
|
|
}
|
|
}
|