identity_iota_core/rebased/
error.rs1use crate::iota_interaction_adapter::AdapterError;
7
8#[derive(Debug, thiserror::Error, strum::IntoStaticStr)]
10#[non_exhaustive]
11pub enum Error {
12 #[error("failed to connect to iota network node; {0:?}")]
14 Network(String, #[source] iota_interaction::error::Error),
15 #[error("failed to lookup an object; {0}")]
17 ObjectLookup(String),
18 #[error(transparent)]
20 MigrationRegistryNotFound(crate::rebased::migration::Error),
21 #[error("DID resolution failed: {0}")]
23 DIDResolutionError(String),
24 #[error("invalid or missing argument: {0}")]
26 InvalidArgument(String),
27 #[error("invalid key: {0}")]
29 InvalidKey(String),
30 #[error("issue with gas for transaction: {0}")]
32 GasIssue(String),
33 #[error("failed to parse {0}")]
35 ParsingFailed(String),
36 #[error("failed to build transaction; {0}")]
38 TransactionBuildingFailed(String),
39 #[error("failed to sign transaction; {0}")]
41 TransactionSigningFailed(String),
42 #[error("transaction execution failed; {0}")]
44 TransactionExecutionFailed(#[from] iota_interaction::error::Error),
45 #[error("transaction returned an unexpected response; {0}")]
48 TransactionUnexpectedResponse(String),
49 #[error("failed to parse transaction effects: {source}")]
51 TransactionOffChainApplicationFailure {
52 #[source]
54 source: Box<Self>,
55 #[cfg(not(target_arch = "wasm32"))]
58 response: Box<iota_interaction::rpc_types::IotaTransactionBlockResponse>,
59 #[cfg(target_arch = "wasm32")]
61 response: String,
62 },
63 #[error("invalid config: {0}")]
65 InvalidConfig(String),
66 #[error("failed to parse DID document; {0}")]
68 DidDocParsingFailed(String),
69 #[error("failed to serialize DID document; {0}")]
71 DidDocSerialization(String),
72 #[error("identity error; {0}")]
74 Identity(String),
75 #[error("unexpected state when looking up identity history; {0}")]
76 InvalidIdentityHistory(String),
78 #[error("the requested operation cannot be performed for a lack of permissions; {0}")]
80 MissingPermission(String),
81 #[error("RPC error: {0}")]
83 RpcError(String),
84 #[error("BCS error: {0}")]
86 BcsError(#[from] bcs::Error),
87 #[error("Any error: {0}")]
89 AnyError(#[from] anyhow::Error),
90 #[error("FFI error: {0}")]
92 FfiError(String),
93 #[error("IOTA interaction error")]
95 IotaInteractionError(#[source] iota_interaction::interaction_error::Error),
96 #[error("TsSdkError: {0}")]
98 IotaInteractionAdapterError(#[from] AdapterError),
99}
100
101pub fn rebased_err<T>(error: T) -> Error
104where
105 Error: From<T>,
106{
107 error.into()
108}