Explorar o código

daod: moved DaoParams to dao_contract::mint::wallet + removed new() from mint::wallet::Builder()

lunar-mining %!s(int64=3) %!d(string=hai) anos
pai
achega
608e1981e3

+ 1 - 4
bin/daod/src/dao_contract/exec/wallet.rs

@@ -14,10 +14,7 @@ use darkfi::{
 };
 
 use crate::{
-    dao_contract::{
-        exec::validate::CallData,
-        propose::wallet::{DaoParams, Proposal},
-    },
+    dao_contract::{exec::validate::CallData, mint::wallet::DaoParams, propose::wallet::Proposal},
     demo::{FuncCall, ZkContractInfo, ZkContractTable},
 };
 

+ 17 - 27
bin/daod/src/dao_contract/mint/wallet.rs

@@ -17,37 +17,27 @@ use crate::{
     demo::{FuncCall, ZkContractInfo, ZkContractTable},
 };
 
+#[derive(Clone)]
+pub struct DaoParams {
+    pub proposer_limit: u64,
+    pub quorum: u64,
+    pub approval_ratio: u64,
+    pub gov_token_id: pallas::Base,
+    pub public_key: PublicKey,
+    pub bulla_blind: pallas::Base,
+}
+
 pub struct Builder {
-    dao_proposer_limit: u64,
-    dao_quorum: u64,
-    dao_approval_ratio: u64,
-    gov_token_id: pallas::Base,
-    dao_pubkey: PublicKey,
-    dao_bulla_blind: pallas::Base,
-    _signature_secret: SecretKey,
+    pub dao_proposer_limit: u64,
+    pub dao_quorum: u64,
+    pub dao_approval_ratio: u64,
+    pub gov_token_id: pallas::Base,
+    pub dao_pubkey: PublicKey,
+    pub dao_bulla_blind: pallas::Base,
+    pub _signature_secret: SecretKey,
 }
 
 impl Builder {
-    pub fn new(
-        dao_proposer_limit: u64,
-        dao_quorum: u64,
-        dao_approval_ratio: u64,
-        gov_token_id: pallas::Base,
-        dao_pubkey: PublicKey,
-        dao_bulla_blind: pallas::Base,
-        _signature_secret: SecretKey,
-    ) -> Self {
-        Self {
-            dao_proposer_limit,
-            dao_quorum,
-            dao_approval_ratio,
-            gov_token_id,
-            dao_pubkey,
-            dao_bulla_blind,
-            _signature_secret,
-        }
-    }
-
     /// Consumes self, and produces the function call
     pub fn build(self, zk_bins: &ZkContractTable) -> FuncCall {
         // Dao bulla

+ 4 - 12
bin/daod/src/dao_contract/propose/wallet.rs

@@ -19,7 +19,10 @@ use darkfi::{
 };
 
 use crate::{
-    dao_contract::propose::validate::{CallData, Header, Input},
+    dao_contract::{
+        mint::wallet::DaoParams,
+        propose::validate::{CallData, Header, Input},
+    },
     demo::{FuncCall, ZkContractInfo, ZkContractTable},
     money_contract, note,
 };
@@ -46,16 +49,6 @@ pub struct Proposal {
     pub blind: pallas::Base,
 }
 
-#[derive(Clone)]
-pub struct DaoParams {
-    pub proposer_limit: u64,
-    pub quorum: u64,
-    pub approval_ratio: u64,
-    pub gov_token_id: pallas::Base,
-    pub public_key: PublicKey,
-    pub bulla_blind: pallas::Base,
-}
-
 pub struct Builder {
     pub inputs: Vec<BuilderInput>,
     pub proposal: Proposal,
@@ -63,7 +56,6 @@ pub struct Builder {
     pub dao_leaf_position: incrementalmerkletree::Position,
     pub dao_merkle_path: Vec<MerkleNode>,
     pub dao_merkle_root: MerkleNode,
-    //pub signature_secrets: Vec<SecretKey>,
 }
 
 impl Builder {

+ 2 - 1
bin/daod/src/dao_contract/vote/wallet.rs

@@ -20,7 +20,8 @@ use rand::rngs::OsRng;
 
 use crate::{
     dao_contract::{
-        propose::wallet::{DaoParams, Proposal},
+        mint::wallet::DaoParams,
+        propose::wallet::Proposal,
         vote::validate::{CallData, Header, Input},
     },
     demo::{FuncCall, ZkContractInfo, ZkContractTable},

+ 6 - 6
bin/daod/src/demo.rs

@@ -383,15 +383,15 @@ pub async fn demo() -> Result<()> {
 
     let signature_secret = SecretKey::random(&mut OsRng);
     // Create DAO mint tx
-    let builder = dao_contract::mint::wallet::Builder::new(
+    let builder = dao_contract::mint::wallet::Builder {
         dao_proposer_limit,
         dao_quorum,
         dao_approval_ratio,
-        gdrk_token_id,
-        dao_keypair.public,
+        gov_token_id: gdrk_token_id,
+        dao_pubkey: dao_keypair.public,
         dao_bulla_blind,
-        signature_secret,
-    );
+        _signature_secret: signature_secret,
+    };
     let func_call = builder.build(&zk_bins);
     let func_calls = vec![func_call];
 
@@ -736,7 +736,7 @@ pub async fn demo() -> Result<()> {
         (merkle_path, root)
     };
 
-    let dao_params = dao_contract::propose::wallet::DaoParams {
+    let dao_params = dao_contract::mint::wallet::DaoParams {
         proposer_limit: dao_proposer_limit,
         quorum: dao_quorum,
         approval_ratio: dao_approval_ratio,