Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 14 additions & 18 deletions contracts/commitment_core/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,20 @@ impl CommitmentCoreContract {
let nft_contract = e.storage().instance().get::<_, Address>(&DataKey::NftContract)
.unwrap_or_else(|| { set_reentrancy_guard(&e, false); fail(&e, CommitmentError::NotInitialized, "create") });

// Calculate creation fee if configured
let creation_fee_bps: u32 = e
.storage()
.instance()
.get(&DataKey::CreationFeeBps)
.unwrap_or(0);
let creation_fee = if creation_fee_bps > 0 {
fees::fee_from_bps(amount, creation_fee_bps)
} else {
0
};
// Net amount locked in commitment (after fee deduction)
let net_amount = amount - creation_fee;

let commitment_id = Self::generate_commitment_id(&e, current_total);
let commitment = Commitment {
commitment_id: commitment_id.clone(),
Expand Down Expand Up @@ -435,18 +449,6 @@ impl CommitmentCoreContract {
let contract_address = e.current_contract_address();
transfer_assets(&e, &owner, &contract_address, &asset_address, amount);

// Collect creation fee if configured
let creation_fee_bps: u32 = e
.storage()
.instance()
.get(&DataKey::CreationFeeBps)
.unwrap_or(0);
let creation_fee = if creation_fee_bps > 0 {
fees::fee_from_bps(amount, creation_fee_bps)
} else {
0
};

// Add creation fee to collected fees
if creation_fee > 0 {
let fee_key = DataKey::CollectedFees(asset_address.clone());
Expand All @@ -456,9 +458,6 @@ impl CommitmentCoreContract {
.set(&fee_key, &(current_fees + creation_fee));
}

// Net amount locked in commitment (after fee deduction)
let net_amount = amount - creation_fee;

let nft_token_id = call_nft_mint(
&e,
&nft_contract,
Expand Down Expand Up @@ -1124,9 +1123,6 @@ mod tests;
#[cfg(test)]
mod emergency_tests;

#[cfg(test)]
mod fee_tests;

#[cfg(all(test, feature = "benchmark"))]
mod benchmarks;

Expand Down
10 changes: 0 additions & 10 deletions contracts/shared_utils/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -40,19 +40,9 @@ pub use emergency::EmergencyControl;
pub use error_codes::{category, code, emit_error_event, message_for_code};
pub use errors::ErrorHelper;
pub use events::Events;
pub use fees;
pub use math::SafeMath;
pub use pausable::Pausable;
pub use rate_limiting::RateLimiter;
pub use storage::Storage;
pub use time::TimeUtils;
pub use validation::Validation;
pub use error_codes::*;
pub use errors::*;
pub use events::*;
pub use math::*;
pub use pausable::*;
pub use rate_limiting::*;
pub use storage::*;
pub use time::*;
pub use validation::*;
Loading