Refactor add_validation_token
This commit is contained in:
parent
4582807822
commit
40f8a6ec20
25
src/api.rs
25
src/api.rs
@ -76,6 +76,8 @@ use sdk_common::secrets::SecretsStore;
|
||||
use crate::user::{lock_local_device, set_new_device, LOCAL_DEVICE};
|
||||
use crate::wallet::{generate_sp_wallet, lock_freezed_utxos};
|
||||
|
||||
const EMPTYSTATEID: &str = "0000000000000000000000000000000000000000000000000000000000000000";
|
||||
|
||||
#[derive(Debug, PartialEq, Tsify, Serialize, Deserialize, Default)]
|
||||
#[tsify(into_wasm_abi)]
|
||||
#[allow(non_camel_case_types)]
|
||||
@ -1463,23 +1465,20 @@ pub fn evaluate_state(process_id: String, previous_state: Option<ProcessState>,
|
||||
fn add_validation_token(mut process: Process, state_id: String, approval: bool) -> ApiResult<ApiReturn> {
|
||||
let process_id = process.get_process_id()?;
|
||||
let state_id: [u8; 32] = Vec::from_hex(&state_id)?.try_into().map_err(|_| ApiError::new("Invalid state_id".to_owned()))?;
|
||||
if state_id == [0u8; 32] { return Err(ApiError::new("Can't validate empty state".to_owned())); }
|
||||
|
||||
{
|
||||
let update_state: &mut ProcessState = process.get_state_for_id_mut(&state_id)?;
|
||||
let update_state: &mut ProcessState = process.get_state_for_id_mut(&state_id)?;
|
||||
|
||||
let message_hash = if approval {
|
||||
AnkHash::ValidationYes(AnkValidationYesHash::from_merkle_root(state_id))
|
||||
} else {
|
||||
AnkHash::ValidationNo(AnkValidationNoHash::from_merkle_root(state_id))
|
||||
};
|
||||
let message_hash = if approval {
|
||||
AnkHash::ValidationYes(AnkValidationYesHash::from_merkle_root(state_id))
|
||||
} else {
|
||||
AnkHash::ValidationNo(AnkValidationNoHash::from_merkle_root(state_id))
|
||||
};
|
||||
|
||||
let local_device = lock_local_device()?;
|
||||
let sp_wallet = local_device.get_wallet();
|
||||
let proof = Proof::new(message_hash, sp_wallet.get_client().get_spend_key().try_into()?);
|
||||
let local_device = lock_local_device()?;
|
||||
let sp_wallet = local_device.get_wallet();
|
||||
let proof = Proof::new(message_hash, sp_wallet.get_client().get_spend_key().try_into()?);
|
||||
|
||||
update_state.validation_tokens.push(proof);
|
||||
}
|
||||
update_state.validation_tokens.push(proof);
|
||||
|
||||
let mut commit_msg = CommitMessage::new(
|
||||
process_id,
|
||||
|
Loading…
x
Reference in New Issue
Block a user