1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
mod bip32;
mod bip39;
mod bip44;
mod encrypt;
mod id;
mod morpheus;
mod pk;
mod seed;
mod sig;
mod sk;
pub use bip32::*;
pub use bip39::*;
pub use bip44::*;
pub use encrypt::*;
pub use id::*;
pub use morpheus::*;
pub use pk::*;
pub use seed::*;
pub use sig::*;
pub use sk::*;
use wasm_bindgen::prelude::*;
use iop_keyvault::{
ed25519::*, encrypt as keyvault_encrypt, multicipher::*, secp256k1::*, Bip32, Bip32Node,
Bip32PublicNode, Bip39, Bip39Phrase, Bip44, Bip44Account, Bip44Coin, Bip44Key,
Bip44PublicAccount, Bip44PublicKey, Bip44PublicSubAccount, Bip44SubAccount, Chain, Networks,
PrivateKey as _, PublicKey as _, Seed,
};
pub fn err_to_js<E: ToString>(e: E) -> JsValue {
JsValue::from(e.to_string())
}
pub trait MapJsError<T> {
fn map_err_to_js(self) -> Result<T, JsValue>;
}
impl<T, E: ToString> MapJsError<T> for Result<T, E> {
fn map_err_to_js(self) -> Result<T, JsValue> {
self.map_err(err_to_js)
}
}
pub trait Wraps<T>: From<T> {
fn inner(&self) -> &T;
}
pub trait WrapsMut<T>: Wraps<T> {
fn inner_mut(&mut self) -> &mut T;
}
#[wasm_bindgen(js_name = validateNetworkName)]
pub fn validate_network_name(name: &str) -> bool {
Networks::by_name(name).is_ok()
}