@dashevo/wasm-dpp 1.8.0 → 2.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc +3 -0
- package/Cargo.toml +10 -6
- package/README.md +1 -1
- package/dist/wasm/wasm_dpp.d.ts +2045 -1114
- package/dist/wasm/wasm_dpp.js +740 -222
- package/dist/wasm/wasm_dpp_bg.js +1 -1
- package/lib/test/fixtures/getIdentityCreditTransferTransitionFixture.js +1 -1
- package/lib/test/fixtures/getIdentityFixture.js +1 -1
- package/lib/wasm/wasm_dpp.d.ts +2045 -1114
- package/package.json +6 -6
- package/scripts/build-wasm.sh +1 -1
- package/src/data_contract/data_contract.rs +17 -24
- package/src/data_contract/mod.rs +1 -0
- package/src/data_contract/state_transition/data_contract_create_transition/mod.rs +21 -0
- package/src/data_contract/state_transition/data_contract_update_transition/mod.rs +25 -0
- package/src/data_contract/tokens.rs +60 -0
- package/src/data_contract_factory/mod.rs +1 -1
- package/src/document/document_facade.rs +3 -3
- package/src/document/errors/document_already_exists_error.rs +1 -1
- package/src/document/errors/document_not_provided_error.rs +1 -1
- package/src/document/errors/invalid_document_action_error.rs +2 -2
- package/src/document/extended_document.rs +3 -5
- package/src/document/factory.rs +25 -10
- package/src/document/mod.rs +6 -8
- package/src/document/state_transition/batch_transition/batched_transition/mod.rs +18 -0
- package/src/document/state_transition/{document_batch_transition → batch_transition}/document_transition/document_create_transition.rs +45 -3
- package/src/document/state_transition/{document_batch_transition → batch_transition}/document_transition/document_delete_transition.rs +23 -4
- package/src/document/state_transition/{document_batch_transition → batch_transition}/document_transition/document_replace_transition.rs +24 -5
- package/src/document/state_transition/{document_batch_transition → batch_transition}/document_transition/mod.rs +97 -14
- package/src/document/state_transition/{document_batch_transition → batch_transition}/mod.rs +44 -29
- package/src/document/state_transition/batch_transition/token_transition/burn.rs +12 -0
- package/src/document/state_transition/batch_transition/token_transition/claim.rs +12 -0
- package/src/document/state_transition/batch_transition/token_transition/config.rs +12 -0
- package/src/document/state_transition/batch_transition/token_transition/destroy.rs +22 -0
- package/src/document/state_transition/batch_transition/token_transition/direct_purchase.rs +12 -0
- package/src/document/state_transition/batch_transition/token_transition/emergency_action.rs +12 -0
- package/src/document/state_transition/batch_transition/token_transition/freeze.rs +22 -0
- package/src/document/state_transition/batch_transition/token_transition/mint.rs +31 -0
- package/src/document/state_transition/batch_transition/token_transition/mod.rs +154 -0
- package/src/document/state_transition/batch_transition/token_transition/set_price_for_direct_purchase.rs +14 -0
- package/src/document/state_transition/batch_transition/token_transition/transfer.rs +22 -0
- package/src/document/state_transition/batch_transition/token_transition/unfreeze.rs +22 -0
- package/src/document/state_transition/mod.rs +1 -1
- package/src/errors/consensus/basic/identity/identity_insufficient_balance_error.rs +2 -2
- package/src/errors/consensus/basic/state_transition/missing_state_transition_type_error.rs +6 -0
- package/src/errors/consensus/consensus_error.rs +212 -1
- package/src/errors/consensus/fee/balance_is_not_enough_error.rs +4 -4
- package/src/errors/consensus/state/identity/invalid_identity_contract_nonce_error.rs +1 -1
- package/src/errors/value_error.rs +1 -0
- package/src/identity/identity.rs +14 -14
- package/src/identity/mod.rs +1 -0
- package/src/identity/state_transition/identity_create_transition/mod.rs +2 -2
- package/src/identity/state_transition/identity_create_transition/{identity_create_transition.rs → transition.rs} +10 -0
- package/src/identity/state_transition/identity_credit_transfer_transition/transition.rs +31 -6
- package/src/identity/state_transition/identity_credit_withdrawal_transition/transition.rs +15 -0
- package/src/identity/state_transition/identity_public_key_transitions.rs +2 -2
- package/src/identity/state_transition/identity_topup_transition/mod.rs +2 -2
- package/src/identity/state_transition/identity_topup_transition/{identity_topup_transition.rs → transition.rs} +10 -0
- package/src/identity/state_transition/identity_update_transition/mod.rs +2 -2
- package/src/identity/state_transition/identity_update_transition/to_object.rs +2 -2
- package/src/identity/state_transition/identity_update_transition/{identity_update_transition.rs → transition.rs} +29 -4
- package/src/identity/state_transition/transition_types.rs +1 -1
- package/src/metadata.rs +16 -27
- package/src/state_transition/state_transition_factory.rs +2 -4
- package/src/utils.rs +4 -2
- package/src/voting/state_transition/masternode_vote_transition/mod.rs +75 -50
- package/src/voting/state_transition/masternode_vote_transition/to_object.rs +1 -0
- package/test/integration/document/Document.spec.js +2 -7
- package/test/integration/document/DocumentFacade.spec.js +4 -4
- package/test/integration/identity/IdentityFacade.spec.js +5 -10
- package/test/integration/identity/stateTransition/IdentityUpdateTransition/validation/state/validateIdentityUpdateTransitionStateFactory.spec.js +4 -4
- package/test/integration/identity/stateTransition/assetLockProof/chain/validateChainAssetLockProofStructureFactory.spec.js +3 -3
- package/test/integration/identity/stateTransition/assetLockProof/fetchAssetLockTransactionOutputFactory.spec.js +1 -1
- package/test/integration/stateTransition/StateTransitionFacade.spec.js +3 -3
- package/test/unit/Metadata.spec.js +8 -23
- package/test/unit/dataContract/DataContract.spec.js +1 -18
- package/test/unit/dataContract/stateTransition/DataContractCreateTransition/DataContractCreateTransition.spec.js +1 -1
- package/test/unit/dataContract/stateTransition/DataContractUpdateTransition/DataContractUpdateTransition.spec.js +1 -1
- package/test/unit/document/Document.spec.js +4 -7
- package/test/unit/document/DocumentFactory.spec.js +2 -2
- package/test/unit/identity/Identity.spec.js +15 -35
- package/test/unit/identity/IdentityFactory.spec.js +3 -3
- package/test/unit/identity/stateTransition/IdentityUpdateTransition/IdentityUpdateTransition.spec.js +2 -2
- package/test/unit/identity/stateTransition/identityCreditTransferTransition/identityCreditTransferTransition.spec.js +1 -1
- /package/src/data_contract_factory/{data_contract_factory.rs → factory.rs} +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/basic/find_duplicates_by_id.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/basic/find_duplicates_by_indices.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/basic/mod.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/basic/validate_documents_batch_transition_basic.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/basic/validate_partial_compound_indices.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/mod.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/state/fetch_extended_documents.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/state/mod.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/state/validate_documents_batch_transitions_state.rs +0 -0
- /package/src/document/state_transition/{document_batch_transition → batch_transition}/validation/state/validate_documents_uniqueness_by_indices.rs +0 -0
|
@@ -7,17 +7,23 @@ mod document_create_transition;
|
|
|
7
7
|
// pub use document_replace_transition::*;
|
|
8
8
|
|
|
9
9
|
use dpp::platform_value::Value;
|
|
10
|
-
use dpp::state_transition::
|
|
11
|
-
|
|
12
|
-
use dpp::state_transition::documents_batch_transition::document_transition::DocumentTransitionV0Methods;
|
|
13
|
-
use dpp::{
|
|
14
|
-
state_transition::documents_batch_transition::document_transition::DocumentTransition,
|
|
15
|
-
util::json_value::JsonValueExt, ProtocolError,
|
|
10
|
+
use dpp::state_transition::batch_transition::batched_transition::document_transition::{
|
|
11
|
+
DocumentTransition, DocumentTransitionV0Methods,
|
|
16
12
|
};
|
|
13
|
+
use dpp::state_transition::batch_transition::batched_transition::document_transition_action_type::DocumentTransitionActionTypeGetter;
|
|
14
|
+
use dpp::state_transition::batch_transition::document_create_transition::v0::v0_methods::DocumentCreateTransitionV0Methods;
|
|
15
|
+
use dpp::{util::json_value::JsonValueExt, ProtocolError};
|
|
17
16
|
use serde::Serialize;
|
|
18
17
|
use serde_json::Value as JsonValue;
|
|
19
18
|
use wasm_bindgen::prelude::*;
|
|
20
|
-
|
|
19
|
+
use dpp::fee::Credits;
|
|
20
|
+
use dpp::platform_value::converter::serde_json::BTreeValueJsonConverter;
|
|
21
|
+
use dpp::prelude::Revision;
|
|
22
|
+
use dpp::state_transition::batch_transition::document_replace_transition::v0::v0_methods::DocumentReplaceTransitionV0Methods;
|
|
23
|
+
use dpp::state_transition::batch_transition::batched_transition::document_purchase_transition::v0::v0_methods::DocumentPurchaseTransitionV0Methods;
|
|
24
|
+
use dpp::state_transition::batch_transition::batched_transition::document_transfer_transition::v0::v0_methods::DocumentTransferTransitionV0Methods;
|
|
25
|
+
use dpp::state_transition::batch_transition::batched_transition::document_update_price_transition::v0::v0_methods::DocumentUpdatePriceTransitionV0Methods;
|
|
26
|
+
use dpp::state_transition::batch_transition::document_base_transition::v0::v0_methods::DocumentBaseTransitionV0Methods;
|
|
21
27
|
use crate::{
|
|
22
28
|
buffer::Buffer,
|
|
23
29
|
identifier::{identifier_from_js_value, IdentifierWrapper},
|
|
@@ -42,6 +48,28 @@ impl DocumentTransitionWasm {
|
|
|
42
48
|
self.0.document_type_name().to_owned()
|
|
43
49
|
}
|
|
44
50
|
|
|
51
|
+
#[wasm_bindgen(js_name=getData)]
|
|
52
|
+
pub fn get_data(&self) -> JsValue {
|
|
53
|
+
match &self.0 {
|
|
54
|
+
DocumentTransition::Create(document_create_transition) => {
|
|
55
|
+
let json_value = document_create_transition.data().to_json_value().unwrap();
|
|
56
|
+
json_value
|
|
57
|
+
.serialize(&serde_wasm_bindgen::Serializer::json_compatible())
|
|
58
|
+
.unwrap()
|
|
59
|
+
}
|
|
60
|
+
DocumentTransition::Replace(document_replace_transition) => {
|
|
61
|
+
let json_value = document_replace_transition.data().to_json_value().unwrap();
|
|
62
|
+
json_value
|
|
63
|
+
.serialize(&serde_wasm_bindgen::Serializer::json_compatible())
|
|
64
|
+
.unwrap()
|
|
65
|
+
}
|
|
66
|
+
DocumentTransition::Delete(_) => JsValue::null(),
|
|
67
|
+
DocumentTransition::Transfer(_) => JsValue::null(),
|
|
68
|
+
DocumentTransition::UpdatePrice(_) => JsValue::null(),
|
|
69
|
+
DocumentTransition::Purchase(_) => JsValue::null(),
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
45
73
|
#[wasm_bindgen(js_name=getAction)]
|
|
46
74
|
pub fn get_action(&self) -> u8 {
|
|
47
75
|
self.0.action_type() as u8
|
|
@@ -59,18 +87,47 @@ impl DocumentTransitionWasm {
|
|
|
59
87
|
Ok(())
|
|
60
88
|
}
|
|
61
89
|
|
|
90
|
+
#[wasm_bindgen(js_name=getIdentityContractNonce)]
|
|
91
|
+
pub fn get_identity_contract_nonce(&self) -> JsValue {
|
|
92
|
+
JsValue::from(self.0.base().identity_contract_nonce())
|
|
93
|
+
}
|
|
94
|
+
|
|
62
95
|
#[wasm_bindgen(js_name=getRevision)]
|
|
63
|
-
pub fn get_revision(&self) ->
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
96
|
+
pub fn get_revision(&self) -> Option<Revision> {
|
|
97
|
+
self.0.revision()
|
|
98
|
+
}
|
|
99
|
+
#[wasm_bindgen(js_name=getEntropy)]
|
|
100
|
+
pub fn get_entropy(&self) -> Option<Vec<u8>> {
|
|
101
|
+
self.0.entropy()
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
#[wasm_bindgen(js_name=get_price)]
|
|
105
|
+
pub fn get_price(&self) -> Option<Credits> {
|
|
106
|
+
match &self.0 {
|
|
107
|
+
DocumentTransition::Create(_) => None,
|
|
108
|
+
DocumentTransition::Replace(_) => None,
|
|
109
|
+
DocumentTransition::Delete(_) => None,
|
|
110
|
+
DocumentTransition::Transfer(_) => None,
|
|
111
|
+
DocumentTransition::UpdatePrice(update_price) => Some(update_price.price()),
|
|
112
|
+
DocumentTransition::Purchase(purchase) => Some(purchase.price()),
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
#[wasm_bindgen(js_name=getReceiverId)]
|
|
117
|
+
pub fn get_receiver_id(&self) -> Option<IdentifierWrapper> {
|
|
118
|
+
match &self.0 {
|
|
119
|
+
DocumentTransition::Create(_) => None,
|
|
120
|
+
DocumentTransition::Replace(_) => None,
|
|
121
|
+
DocumentTransition::Delete(_) => None,
|
|
122
|
+
DocumentTransition::Transfer(transfer) => Some(transfer.recipient_owner_id().into()),
|
|
123
|
+
DocumentTransition::UpdatePrice(_) => None,
|
|
124
|
+
DocumentTransition::Purchase(_) => None,
|
|
68
125
|
}
|
|
69
126
|
}
|
|
70
127
|
|
|
71
128
|
#[wasm_bindgen(js_name=setRevision)]
|
|
72
|
-
pub fn set_revision(&mut self, revision:
|
|
73
|
-
self.0.set_revision(revision
|
|
129
|
+
pub fn set_revision(&mut self, revision: u64) {
|
|
130
|
+
self.0.set_revision(revision);
|
|
74
131
|
}
|
|
75
132
|
|
|
76
133
|
#[wasm_bindgen(js_name=hasPrefundedBalance)]
|
|
@@ -82,6 +139,32 @@ impl DocumentTransitionWasm {
|
|
|
82
139
|
_ => false,
|
|
83
140
|
}
|
|
84
141
|
}
|
|
142
|
+
|
|
143
|
+
#[wasm_bindgen(js_name=getPrefundedVotingBalance)]
|
|
144
|
+
pub fn get_prefunded_voting_balance(&self) -> Result<JsValue, JsValue> {
|
|
145
|
+
match &self.0 {
|
|
146
|
+
DocumentTransition::Create(create_transition) => {
|
|
147
|
+
let prefunded_voting_balance = create_transition.prefunded_voting_balance().clone();
|
|
148
|
+
|
|
149
|
+
if prefunded_voting_balance.is_none() {
|
|
150
|
+
return Ok(JsValue::null());
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
let (index_name, credits) = prefunded_voting_balance.unwrap();
|
|
154
|
+
|
|
155
|
+
let js_object = js_sys::Object::new();
|
|
156
|
+
|
|
157
|
+
js_sys::Reflect::set(
|
|
158
|
+
&js_object,
|
|
159
|
+
&JsValue::from_str(&index_name),
|
|
160
|
+
&JsValue::from(credits),
|
|
161
|
+
)?;
|
|
162
|
+
|
|
163
|
+
Ok(JsValue::from(js_object))
|
|
164
|
+
}
|
|
165
|
+
_ => Ok(JsValue::null()),
|
|
166
|
+
}
|
|
167
|
+
}
|
|
85
168
|
}
|
|
86
169
|
|
|
87
170
|
impl From<DocumentTransition> for DocumentTransitionWasm {
|
|
@@ -12,9 +12,8 @@ use dpp::consensus::signature::SignatureError;
|
|
|
12
12
|
use dpp::consensus::ConsensusError;
|
|
13
13
|
use dpp::platform_value::BinaryData;
|
|
14
14
|
use dpp::serialization::PlatformSerializable;
|
|
15
|
-
use dpp::state_transition::
|
|
16
|
-
use dpp::state_transition::
|
|
17
|
-
use dpp::state_transition::documents_batch_transition::DocumentsBatchTransition;
|
|
15
|
+
use dpp::state_transition::batch_transition::accessors::DocumentsBatchTransitionAccessorsV0;
|
|
16
|
+
use dpp::state_transition::batch_transition::BatchTransition;
|
|
18
17
|
use dpp::state_transition::StateTransition;
|
|
19
18
|
use wasm_bindgen::prelude::*;
|
|
20
19
|
|
|
@@ -26,17 +25,22 @@ use crate::{
|
|
|
26
25
|
IdentityPublicKeyWasm,
|
|
27
26
|
};
|
|
28
27
|
|
|
29
|
-
use
|
|
30
|
-
use dpp::state_transition::
|
|
28
|
+
use dpp::state_transition::batch_transition::batched_transition::BatchedTransition;
|
|
29
|
+
use dpp::state_transition::batch_transition::methods::v0::DocumentsBatchTransitionMethodsV0;
|
|
31
30
|
|
|
31
|
+
use crate::batch_transition::batched_transition::BatchedTransitionWasm;
|
|
32
|
+
use crate::batch_transition::document_transition::DocumentTransitionWasm;
|
|
33
|
+
use crate::batch_transition::token_transition::TokenTransitionWasm;
|
|
32
34
|
use dpp::state_transition::StateTransitionIdentitySigned;
|
|
33
35
|
|
|
36
|
+
pub mod batched_transition;
|
|
34
37
|
pub mod document_transition;
|
|
38
|
+
pub mod token_transition;
|
|
35
39
|
// pub mod validation;
|
|
36
40
|
|
|
37
41
|
#[derive(Clone, Debug)]
|
|
38
|
-
#[wasm_bindgen(js_name =
|
|
39
|
-
pub struct
|
|
42
|
+
#[wasm_bindgen(js_name = BatchTransition)]
|
|
43
|
+
pub struct BatchTransitionWasm(BatchTransition);
|
|
40
44
|
|
|
41
45
|
#[derive(Debug, Serialize, Deserialize, Default, Clone, Copy)]
|
|
42
46
|
#[serde(rename_all = "camelCase")]
|
|
@@ -47,8 +51,8 @@ pub struct ToObjectOptions {
|
|
|
47
51
|
skip_identifiers_conversion: bool,
|
|
48
52
|
}
|
|
49
53
|
|
|
50
|
-
#[wasm_bindgen(js_class=
|
|
51
|
-
impl
|
|
54
|
+
#[wasm_bindgen(js_class=BatchTransition)]
|
|
55
|
+
impl BatchTransitionWasm {
|
|
52
56
|
// #[wasm_bindgen(constructor)]
|
|
53
57
|
// pub fn from_object(
|
|
54
58
|
// js_raw_transition: JsValue,
|
|
@@ -90,7 +94,7 @@ impl DocumentsBatchTransitionWasm {
|
|
|
90
94
|
|
|
91
95
|
#[wasm_bindgen(js_name=getType)]
|
|
92
96
|
pub fn get_type(&self) -> u8 {
|
|
93
|
-
StateTransitionType::
|
|
97
|
+
StateTransitionType::Batch.into()
|
|
94
98
|
}
|
|
95
99
|
|
|
96
100
|
#[wasm_bindgen(js_name=getOwnerId)]
|
|
@@ -98,14 +102,26 @@ impl DocumentsBatchTransitionWasm {
|
|
|
98
102
|
self.0.owner_id().to_owned().into()
|
|
99
103
|
}
|
|
100
104
|
|
|
105
|
+
#[wasm_bindgen(js_name=getUserFeeIncrease)]
|
|
106
|
+
pub fn get_user_fee_increase(&self) -> u16 {
|
|
107
|
+
self.0.user_fee_increase()
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
#[wasm_bindgen(js_name=setUserFeeIncrease)]
|
|
111
|
+
pub fn set_user_fee_increase(&mut self, user_fee_increase: u16) {
|
|
112
|
+
self.0.set_user_fee_increase(user_fee_increase);
|
|
113
|
+
}
|
|
114
|
+
|
|
101
115
|
#[wasm_bindgen(js_name=getTransitions)]
|
|
102
116
|
pub fn get_transitions(&self) -> js_sys::Array {
|
|
103
117
|
let array = js_sys::Array::new();
|
|
104
|
-
let transitions = self.0.transitions();
|
|
105
118
|
|
|
106
|
-
for tr in
|
|
107
|
-
let
|
|
108
|
-
|
|
119
|
+
for tr in self.0.transitions_iter() {
|
|
120
|
+
let js_value = match tr.to_owned_transition() {
|
|
121
|
+
BatchedTransition::Token(doc) => TokenTransitionWasm::from(doc).into(),
|
|
122
|
+
BatchedTransition::Document(tok) => DocumentTransitionWasm::from(tok).into(),
|
|
123
|
+
};
|
|
124
|
+
array.push(&js_value);
|
|
109
125
|
}
|
|
110
126
|
|
|
111
127
|
array
|
|
@@ -115,8 +131,8 @@ impl DocumentsBatchTransitionWasm {
|
|
|
115
131
|
pub fn set_transitions(&mut self, js_transitions: Array) -> Result<(), JsValue> {
|
|
116
132
|
let mut transitions = vec![];
|
|
117
133
|
for js_transition in js_transitions.iter() {
|
|
118
|
-
let transition:
|
|
119
|
-
.to_wasm::<
|
|
134
|
+
let transition: BatchedTransition = js_transition
|
|
135
|
+
.to_wasm::<BatchedTransitionWasm>("BatchedTransition")?
|
|
120
136
|
.to_owned()
|
|
121
137
|
.into();
|
|
122
138
|
transitions.push(transition)
|
|
@@ -128,8 +144,8 @@ impl DocumentsBatchTransitionWasm {
|
|
|
128
144
|
}
|
|
129
145
|
|
|
130
146
|
#[wasm_bindgen(js_name=setIdentityContractNonce)]
|
|
131
|
-
pub fn set_identity_contract_nonce(&mut self, nonce:
|
|
132
|
-
self.0.set_identity_contract_nonce(nonce
|
|
147
|
+
pub fn set_identity_contract_nonce(&mut self, nonce: u64) {
|
|
148
|
+
self.0.set_identity_contract_nonce(nonce);
|
|
133
149
|
}
|
|
134
150
|
|
|
135
151
|
// #[wasm_bindgen(js_name=toJSON)]
|
|
@@ -276,7 +292,7 @@ impl DocumentsBatchTransitionWasm {
|
|
|
276
292
|
let bls_adapter = BlsAdapter(bls);
|
|
277
293
|
|
|
278
294
|
// TODO: come up with a better way to set signature to the binding.
|
|
279
|
-
let mut state_transition = StateTransition::
|
|
295
|
+
let mut state_transition = StateTransition::Batch(self.0.clone());
|
|
280
296
|
state_transition
|
|
281
297
|
.sign(
|
|
282
298
|
&identity_public_key.to_owned().into(),
|
|
@@ -322,7 +338,7 @@ impl DocumentsBatchTransitionWasm {
|
|
|
322
338
|
) -> Result<bool, JsValue> {
|
|
323
339
|
let bls_adapter = BlsAdapter(bls);
|
|
324
340
|
|
|
325
|
-
let verification_result = StateTransition::
|
|
341
|
+
let verification_result = StateTransition::Batch(self.0.clone())
|
|
326
342
|
.verify_signature(&identity_public_key.to_owned().into(), &bls_adapter);
|
|
327
343
|
|
|
328
344
|
match verification_result {
|
|
@@ -402,10 +418,9 @@ impl DocumentsBatchTransitionWasm {
|
|
|
402
418
|
|
|
403
419
|
#[wasm_bindgen(js_name=toBuffer)]
|
|
404
420
|
pub fn to_buffer(&self) -> Result<Buffer, JsValue> {
|
|
405
|
-
let bytes =
|
|
406
|
-
self.0.clone()
|
|
407
|
-
|
|
408
|
-
.with_js_error()?;
|
|
421
|
+
let bytes =
|
|
422
|
+
PlatformSerializable::serialize_to_bytes(&StateTransition::Batch(self.0.clone()))
|
|
423
|
+
.with_js_error()?;
|
|
409
424
|
Ok(Buffer::from_bytes(&bytes))
|
|
410
425
|
}
|
|
411
426
|
|
|
@@ -423,14 +438,14 @@ impl DocumentsBatchTransitionWasm {
|
|
|
423
438
|
// }
|
|
424
439
|
}
|
|
425
440
|
|
|
426
|
-
impl From<
|
|
427
|
-
fn from(t:
|
|
428
|
-
|
|
441
|
+
impl From<BatchTransition> for BatchTransitionWasm {
|
|
442
|
+
fn from(t: BatchTransition) -> Self {
|
|
443
|
+
BatchTransitionWasm(t)
|
|
429
444
|
}
|
|
430
445
|
}
|
|
431
446
|
|
|
432
|
-
impl From<
|
|
433
|
-
fn from(t:
|
|
447
|
+
impl From<BatchTransitionWasm> for BatchTransition {
|
|
448
|
+
fn from(t: BatchTransitionWasm) -> Self {
|
|
434
449
|
t.0
|
|
435
450
|
}
|
|
436
451
|
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenBurnTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenBurnTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenBurnTransitionWasm(TokenBurnTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenBurnTransition> for TokenBurnTransitionWasm {
|
|
9
|
+
fn from(value: TokenBurnTransition) -> Self {
|
|
10
|
+
Self(value)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenClaimTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenClaimTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenClaimTransitionWasm(TokenClaimTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenClaimTransition> for TokenClaimTransitionWasm {
|
|
9
|
+
fn from(value: TokenClaimTransition) -> Self {
|
|
10
|
+
Self(value)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenConfigUpdateTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenConfigUpdateTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenConfigUpdateTransitionWasm(TokenConfigUpdateTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenConfigUpdateTransition> for TokenConfigUpdateTransitionWasm {
|
|
9
|
+
fn from(value: TokenConfigUpdateTransition) -> Self {
|
|
10
|
+
Self(value)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
use crate::identifier::IdentifierWrapper;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
use dpp::state_transition::batch_transition::token_destroy_frozen_funds_transition::v0::v0_methods::TokenDestroyFrozenFundsTransitionV0Methods;
|
|
4
|
+
use dpp::state_transition::batch_transition::TokenDestroyFrozenFundsTransition;
|
|
5
|
+
|
|
6
|
+
#[wasm_bindgen(js_name=TokenDestroyFrozenFundsTransition)]
|
|
7
|
+
#[derive(Debug, Clone)]
|
|
8
|
+
pub struct TokenDestroyFrozenFundsTransitionWasm(TokenDestroyFrozenFundsTransition);
|
|
9
|
+
|
|
10
|
+
impl From<TokenDestroyFrozenFundsTransition> for TokenDestroyFrozenFundsTransitionWasm {
|
|
11
|
+
fn from(value: TokenDestroyFrozenFundsTransition) -> Self {
|
|
12
|
+
Self(value)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#[wasm_bindgen(js_class = TokenDestroyFrozenFundsTransition)]
|
|
17
|
+
impl TokenDestroyFrozenFundsTransitionWasm {
|
|
18
|
+
#[wasm_bindgen(js_name=getFrozenIdentityId)]
|
|
19
|
+
pub fn frozen_identity_id(&self) -> IdentifierWrapper {
|
|
20
|
+
self.0.frozen_identity_id().into()
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenDirectPurchaseTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenDirectPurchaseTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenDirectPurchaseTransitionWasm(TokenDirectPurchaseTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenDirectPurchaseTransition> for TokenDirectPurchaseTransitionWasm {
|
|
9
|
+
fn from(value: TokenDirectPurchaseTransition) -> Self {
|
|
10
|
+
Self(value)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenEmergencyActionTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenEmergencyActionTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenEmergencyActionTransitionWasm(TokenEmergencyActionTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenEmergencyActionTransition> for TokenEmergencyActionTransitionWasm {
|
|
9
|
+
fn from(value: TokenEmergencyActionTransition) -> Self {
|
|
10
|
+
Self(value)
|
|
11
|
+
}
|
|
12
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
use crate::identifier::IdentifierWrapper;
|
|
2
|
+
use dpp::state_transition::batch_transition::token_freeze_transition::v0::v0_methods::TokenFreezeTransitionV0Methods;
|
|
3
|
+
use dpp::state_transition::batch_transition::TokenFreezeTransition;
|
|
4
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
5
|
+
|
|
6
|
+
#[wasm_bindgen(js_name=TokenFreezeTransition)]
|
|
7
|
+
#[derive(Debug, Clone)]
|
|
8
|
+
pub struct TokenFreezeTransitionWasm(TokenFreezeTransition);
|
|
9
|
+
|
|
10
|
+
impl From<TokenFreezeTransition> for TokenFreezeTransitionWasm {
|
|
11
|
+
fn from(value: TokenFreezeTransition) -> Self {
|
|
12
|
+
Self(value)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#[wasm_bindgen(js_class = TokenFreezeTransition)]
|
|
17
|
+
impl TokenFreezeTransitionWasm {
|
|
18
|
+
#[wasm_bindgen(js_name=getFrozenIdentityId)]
|
|
19
|
+
pub fn frozen_identity_id(&self) -> IdentifierWrapper {
|
|
20
|
+
self.0.frozen_identity_id().into()
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
use crate::identifier::IdentifierWrapper;
|
|
2
|
+
use crate::tokens::TokenConfigurationWasm;
|
|
3
|
+
use crate::utils::WithJsError;
|
|
4
|
+
use dpp::state_transition::batch_transition::token_mint_transition::v0::v0_methods::TokenMintTransitionV0Methods;
|
|
5
|
+
use dpp::state_transition::batch_transition::TokenMintTransition;
|
|
6
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
7
|
+
use wasm_bindgen::JsValue;
|
|
8
|
+
|
|
9
|
+
#[wasm_bindgen(js_name=TokenMintTransition)]
|
|
10
|
+
#[derive(Debug, Clone)]
|
|
11
|
+
pub struct TokenMintTransitionWasm(TokenMintTransition);
|
|
12
|
+
|
|
13
|
+
impl From<TokenMintTransition> for TokenMintTransitionWasm {
|
|
14
|
+
fn from(value: TokenMintTransition) -> Self {
|
|
15
|
+
Self(value)
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
#[wasm_bindgen(js_class=TokenMintTransition)]
|
|
20
|
+
impl TokenMintTransitionWasm {
|
|
21
|
+
#[wasm_bindgen(js_name=getRecipientId)]
|
|
22
|
+
pub fn recipient_id(
|
|
23
|
+
&self,
|
|
24
|
+
token_configuration: TokenConfigurationWasm,
|
|
25
|
+
) -> Result<IdentifierWrapper, JsValue> {
|
|
26
|
+
self.0
|
|
27
|
+
.recipient_id(&token_configuration.into())
|
|
28
|
+
.with_js_error()
|
|
29
|
+
.map(Into::into)
|
|
30
|
+
}
|
|
31
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
pub mod burn;
|
|
2
|
+
mod claim;
|
|
3
|
+
pub mod config;
|
|
4
|
+
pub mod destroy;
|
|
5
|
+
pub mod direct_purchase;
|
|
6
|
+
pub mod emergency_action;
|
|
7
|
+
pub mod freeze;
|
|
8
|
+
pub mod mint;
|
|
9
|
+
pub mod set_price_for_direct_purchase;
|
|
10
|
+
pub mod transfer;
|
|
11
|
+
pub mod unfreeze;
|
|
12
|
+
|
|
13
|
+
use crate::batch_transition::token_transition::burn::TokenBurnTransitionWasm;
|
|
14
|
+
use crate::batch_transition::token_transition::claim::TokenClaimTransitionWasm;
|
|
15
|
+
use crate::batch_transition::token_transition::config::TokenConfigUpdateTransitionWasm;
|
|
16
|
+
use crate::batch_transition::token_transition::destroy::TokenDestroyFrozenFundsTransitionWasm;
|
|
17
|
+
use crate::batch_transition::token_transition::direct_purchase::TokenDirectPurchaseTransitionWasm;
|
|
18
|
+
use crate::batch_transition::token_transition::emergency_action::TokenEmergencyActionTransitionWasm;
|
|
19
|
+
use crate::batch_transition::token_transition::freeze::TokenFreezeTransitionWasm;
|
|
20
|
+
use crate::batch_transition::token_transition::mint::TokenMintTransitionWasm;
|
|
21
|
+
use crate::batch_transition::token_transition::set_price_for_direct_purchase::TokenSetPriceForDirectPurchaseTransitionWasm;
|
|
22
|
+
use crate::batch_transition::token_transition::transfer::TokenTransferTransitionWasm;
|
|
23
|
+
use crate::batch_transition::token_transition::unfreeze::TokenUnfreezeTransitionWasm;
|
|
24
|
+
use crate::identifier::IdentifierWrapper;
|
|
25
|
+
use dpp::prelude::IdentityNonce;
|
|
26
|
+
use dpp::state_transition::batch_transition::batched_transition::token_transition::{
|
|
27
|
+
TokenTransition, TokenTransitionV0Methods,
|
|
28
|
+
};
|
|
29
|
+
use dpp::state_transition::batch_transition::token_base_transition::v0::v0_methods::TokenBaseTransitionV0Methods;
|
|
30
|
+
use js_sys::Number;
|
|
31
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
32
|
+
use wasm_bindgen::JsValue;
|
|
33
|
+
|
|
34
|
+
#[wasm_bindgen]
|
|
35
|
+
pub enum TokenTransitionType {
|
|
36
|
+
Burn,
|
|
37
|
+
Mint,
|
|
38
|
+
Transfer,
|
|
39
|
+
Freeze,
|
|
40
|
+
Unfreeze,
|
|
41
|
+
DestroyFrozenFunds,
|
|
42
|
+
Claim,
|
|
43
|
+
EmergencyAction,
|
|
44
|
+
ConfigUpdate,
|
|
45
|
+
DirectPurchase,
|
|
46
|
+
SetPriceForDirectPurchase,
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
impl From<&TokenTransition> for TokenTransitionType {
|
|
50
|
+
fn from(t: &TokenTransition) -> Self {
|
|
51
|
+
match t {
|
|
52
|
+
TokenTransition::Burn(_) => TokenTransitionType::Burn,
|
|
53
|
+
TokenTransition::Mint(_) => TokenTransitionType::Mint,
|
|
54
|
+
TokenTransition::Transfer(_) => TokenTransitionType::Transfer,
|
|
55
|
+
TokenTransition::Freeze(_) => TokenTransitionType::Freeze,
|
|
56
|
+
TokenTransition::Unfreeze(_) => TokenTransitionType::Unfreeze,
|
|
57
|
+
TokenTransition::DestroyFrozenFunds(_) => TokenTransitionType::DestroyFrozenFunds,
|
|
58
|
+
TokenTransition::EmergencyAction(_) => TokenTransitionType::EmergencyAction,
|
|
59
|
+
TokenTransition::ConfigUpdate(_) => TokenTransitionType::ConfigUpdate,
|
|
60
|
+
TokenTransition::Claim(_) => TokenTransitionType::Claim,
|
|
61
|
+
TokenTransition::DirectPurchase(_) => TokenTransitionType::DirectPurchase,
|
|
62
|
+
TokenTransition::SetPriceForDirectPurchase(_) => {
|
|
63
|
+
TokenTransitionType::SetPriceForDirectPurchase
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
#[wasm_bindgen(js_name=TokenTransition)]
|
|
70
|
+
#[derive(Debug, Clone)]
|
|
71
|
+
pub struct TokenTransitionWasm(TokenTransition);
|
|
72
|
+
|
|
73
|
+
impl From<TokenTransition> for TokenTransitionWasm {
|
|
74
|
+
fn from(t: TokenTransition) -> Self {
|
|
75
|
+
TokenTransitionWasm(t)
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
impl From<TokenTransitionWasm> for TokenTransition {
|
|
80
|
+
fn from(t: TokenTransitionWasm) -> Self {
|
|
81
|
+
t.0
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
#[wasm_bindgen(js_class = TokenTransition)]
|
|
86
|
+
impl TokenTransitionWasm {
|
|
87
|
+
#[wasm_bindgen(js_name=getTransitionType)]
|
|
88
|
+
pub fn transition_type(&self) -> TokenTransitionType {
|
|
89
|
+
TokenTransitionType::from(&self.0)
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
#[wasm_bindgen(js_name=getTokenId)]
|
|
93
|
+
pub fn token_id(&self) -> IdentifierWrapper {
|
|
94
|
+
self.0.base().token_id().into()
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
#[wasm_bindgen(js_name=getTokenContractPosition)]
|
|
98
|
+
pub fn token_contract_position(&self) -> Number {
|
|
99
|
+
self.0.base().token_contract_position().into()
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
#[wasm_bindgen(js_name=getDataContractId)]
|
|
103
|
+
pub fn data_contract_id(&self) -> IdentifierWrapper {
|
|
104
|
+
self.0.base().data_contract_id().into()
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
#[wasm_bindgen(js_name=getHistoricalDocumentTypeName)]
|
|
108
|
+
pub fn historical_document_type_name(&self) -> String {
|
|
109
|
+
self.0.historical_document_type_name().to_string()
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
#[wasm_bindgen(js_name=getHistoricalDocumentId)]
|
|
113
|
+
pub fn historical_document_id(&self, owner_id: IdentifierWrapper) -> IdentifierWrapper {
|
|
114
|
+
self.0.historical_document_id(owner_id.into()).into()
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
#[wasm_bindgen(js_name=getIdentityContractNonce)]
|
|
118
|
+
pub fn identity_contract_nonce(&self) -> IdentityNonce {
|
|
119
|
+
self.0.base().identity_contract_nonce()
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
#[wasm_bindgen(js_name=toTransition)]
|
|
123
|
+
pub fn to_transition(&self) -> JsValue {
|
|
124
|
+
match &self.0 {
|
|
125
|
+
TokenTransition::Burn(burn) => TokenBurnTransitionWasm::from(burn.clone()).into(),
|
|
126
|
+
TokenTransition::Mint(mint) => TokenMintTransitionWasm::from(mint.clone()).into(),
|
|
127
|
+
TokenTransition::Transfer(transfer) => {
|
|
128
|
+
TokenTransferTransitionWasm::from(transfer.clone()).into()
|
|
129
|
+
}
|
|
130
|
+
TokenTransition::Freeze(freeze) => {
|
|
131
|
+
TokenFreezeTransitionWasm::from(freeze.clone()).into()
|
|
132
|
+
}
|
|
133
|
+
TokenTransition::Unfreeze(unfreeze) => {
|
|
134
|
+
TokenUnfreezeTransitionWasm::from(unfreeze.clone()).into()
|
|
135
|
+
}
|
|
136
|
+
TokenTransition::DestroyFrozenFunds(destroy_frozen_funds) => {
|
|
137
|
+
TokenDestroyFrozenFundsTransitionWasm::from(destroy_frozen_funds.clone()).into()
|
|
138
|
+
}
|
|
139
|
+
TokenTransition::EmergencyAction(emergency_action) => {
|
|
140
|
+
TokenEmergencyActionTransitionWasm::from(emergency_action.clone()).into()
|
|
141
|
+
}
|
|
142
|
+
TokenTransition::ConfigUpdate(config_update) => {
|
|
143
|
+
TokenConfigUpdateTransitionWasm::from(config_update.clone()).into()
|
|
144
|
+
}
|
|
145
|
+
TokenTransition::Claim(claim) => TokenClaimTransitionWasm::from(claim.clone()).into(),
|
|
146
|
+
TokenTransition::DirectPurchase(direct_purchase) => {
|
|
147
|
+
TokenDirectPurchaseTransitionWasm::from(direct_purchase.clone()).into()
|
|
148
|
+
}
|
|
149
|
+
TokenTransition::SetPriceForDirectPurchase(set_price) => {
|
|
150
|
+
TokenSetPriceForDirectPurchaseTransitionWasm::from(set_price.clone()).into()
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
use dpp::state_transition::batch_transition::TokenSetPriceForDirectPurchaseTransition;
|
|
2
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
3
|
+
|
|
4
|
+
#[wasm_bindgen(js_name=TokenSetPriceForDirectPurchaseTransition)]
|
|
5
|
+
#[derive(Debug, Clone)]
|
|
6
|
+
pub struct TokenSetPriceForDirectPurchaseTransitionWasm(TokenSetPriceForDirectPurchaseTransition);
|
|
7
|
+
|
|
8
|
+
impl From<TokenSetPriceForDirectPurchaseTransition>
|
|
9
|
+
for TokenSetPriceForDirectPurchaseTransitionWasm
|
|
10
|
+
{
|
|
11
|
+
fn from(value: TokenSetPriceForDirectPurchaseTransition) -> Self {
|
|
12
|
+
Self(value)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
use crate::identifier::IdentifierWrapper;
|
|
2
|
+
use dpp::state_transition::batch_transition::token_transfer_transition::v0::v0_methods::TokenTransferTransitionV0Methods;
|
|
3
|
+
use dpp::state_transition::batch_transition::TokenTransferTransition;
|
|
4
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
5
|
+
|
|
6
|
+
#[wasm_bindgen(js_name=TokenTransferTransition)]
|
|
7
|
+
#[derive(Debug, Clone)]
|
|
8
|
+
pub struct TokenTransferTransitionWasm(TokenTransferTransition);
|
|
9
|
+
|
|
10
|
+
impl From<TokenTransferTransition> for TokenTransferTransitionWasm {
|
|
11
|
+
fn from(value: TokenTransferTransition) -> Self {
|
|
12
|
+
Self(value)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#[wasm_bindgen(js_class = TokenTransferTransition)]
|
|
17
|
+
impl TokenTransferTransitionWasm {
|
|
18
|
+
#[wasm_bindgen(js_name=getRecipientId)]
|
|
19
|
+
pub fn recipient_id(&self) -> IdentifierWrapper {
|
|
20
|
+
self.0.recipient_id().into()
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
use crate::identifier::IdentifierWrapper;
|
|
2
|
+
use dpp::state_transition::batch_transition::token_unfreeze_transition::v0::v0_methods::TokenUnfreezeTransitionV0Methods;
|
|
3
|
+
use dpp::state_transition::batch_transition::TokenUnfreezeTransition;
|
|
4
|
+
use wasm_bindgen::prelude::wasm_bindgen;
|
|
5
|
+
|
|
6
|
+
#[wasm_bindgen(js_name=TokenUnfreezeTransition)]
|
|
7
|
+
#[derive(Debug, Clone)]
|
|
8
|
+
pub struct TokenUnfreezeTransitionWasm(TokenUnfreezeTransition);
|
|
9
|
+
|
|
10
|
+
impl From<TokenUnfreezeTransition> for TokenUnfreezeTransitionWasm {
|
|
11
|
+
fn from(value: TokenUnfreezeTransition) -> Self {
|
|
12
|
+
Self(value)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
#[wasm_bindgen(js_class = TokenUnfreezeTransition)]
|
|
17
|
+
impl TokenUnfreezeTransitionWasm {
|
|
18
|
+
#[wasm_bindgen(js_name=getFrozenIdentityId)]
|
|
19
|
+
pub fn frozen_identity_id(&self) -> IdentifierWrapper {
|
|
20
|
+
self.0.frozen_identity_id().into()
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
pub mod
|
|
1
|
+
pub mod batch_transition;
|