Skip to content
Closed
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
2 changes: 1 addition & 1 deletion contracts/sources/fees.move
Original file line number Diff line number Diff line change
Expand Up @@ -148,7 +148,7 @@ module liquid_staking::fees {
(((sui_amount as u128) * (self.sui_mint_fee_bps as u128) + 9999) / 10_000) as u64
}

public(package) fun calculate_redeem_fee(self: &FeeConfig, sui_amount: u64): u64 {
public fun calculate_redeem_fee(self: &FeeConfig, sui_amount: u64): u64 {
if (self.redeem_fee_bps == 0) {
return 0
};
Expand Down
32 changes: 16 additions & 16 deletions contracts/sources/liquid_staking.move
Original file line number Diff line number Diff line change
Expand Up @@ -127,6 +127,22 @@ module liquid_staking::liquid_staking {
&self.lst
}

public fun lst_amount_to_sui_amount<P>(
self: &LiquidStakingInfo<P>,
lst_amount: u64
): u64 {
let total_sui_supply = self.total_sui_supply();
let total_lst_supply = self.total_lst_supply();

assert!(total_lst_supply > 0, EZeroLstSupply);

let sui_amount = (total_sui_supply as u128)
* (lst_amount as u128)
/ (total_lst_supply as u128);

sui_amount as u64
}

#[test_only]
public fun accrued_spread_fees<P>(self: &LiquidStakingInfo<P>): u64 {
self.accrued_spread_fees
Expand Down Expand Up @@ -547,20 +563,4 @@ module liquid_staking::liquid_staking {

lst_amount as u64
}

public(package) fun lst_amount_to_sui_amount<P>(
self: &LiquidStakingInfo<P>,
lst_amount: u64
): u64 {
let total_sui_supply = self.total_sui_supply();
let total_lst_supply = self.total_lst_supply();

assert!(total_lst_supply > 0, EZeroLstSupply);

let sui_amount = (total_sui_supply as u128)
* (lst_amount as u128)
/ (total_lst_supply as u128);

sui_amount as u64
}
}
Loading