Skip to content

Commit

Permalink
format
Browse files Browse the repository at this point in the history
  • Loading branch information
wangjj9219 committed Dec 12, 2024
1 parent 22297d4 commit 1069672
Show file tree
Hide file tree
Showing 3 changed files with 44 additions and 17 deletions.
57 changes: 42 additions & 15 deletions contracts/incentives/InterfaceIncentives.sol
Original file line number Diff line number Diff line change
Expand Up @@ -11,19 +11,31 @@ interface InterfaceIncentives {
/// @param sender The sender of the transaction.
/// @param currencyId The LP token currency id.
/// @param amount The amount to stake.
event DepositedShare(address indexed sender, address indexed currencyId, uint256 amount);
event DepositedShare(
address indexed sender,
address indexed currencyId,
uint256 amount
);

/// @notice The withdrew share event.
/// @param sender The sender of the transaction.
/// @param currencyId The LP token currency id.
/// @param amount The amount to unstake.
event WithdrewShare(address indexed sender, address indexed currencyId, uint256 amount);
event WithdrewShare(
address indexed sender,
address indexed currencyId,
uint256 amount
);

/// @notice The Claimed rewards event.
/// @param sender The sender of the transaction.
/// @param pool The pool type.
/// @param poolCurrencyId The LP token currency id.
event ClaimedRewards(address indexed sender, PoolId indexed pool, address indexed poolCurrencyId);
event ClaimedRewards(
address indexed sender,
PoolId indexed pool,
address indexed poolCurrencyId
);

/// @notice Gets reward amount in `rewardCurrency` added per period.
/// @param LOANS Record the shares and rewards for users of Loans(Honzon protocol).
Expand All @@ -42,45 +54,60 @@ interface InterfaceIncentives {
/// @param poolCurrencyId The LP token currency id.
/// @param rewardCurrencyId The reward currency id.
/// @return Returns (reward_amount).
function getIncentiveRewardAmount(PoolId pool, address poolCurrencyId, address rewardCurrencyId)
external
view
returns (uint256);
function getIncentiveRewardAmount(
PoolId pool,
address poolCurrencyId,
address rewardCurrencyId
) external view returns (uint256);

/// @notice Stake LP token to add shares to PoolId::Dex.
/// @dev It'll emit an {DepositedShare} event.
/// @param currencyId The LP token currency id.
/// @param amount The amount to stake.
/// @return Returns a boolean value indicating whether the operation succeeded.
function depositDexShare(address currencyId, uint256 amount) external returns (bool);
function depositDexShare(
address currencyId,
uint256 amount
) external returns (bool);

/// @notice Unstake LP token to remove shares from PoolId::Dex.
/// @dev It'll emit an {WithdrewShare} event.
/// @param currencyId The LP token currency id.
/// @param amount The amount to unstake.
/// @return Returns a boolean value indicating whether the operation succeeded.
function withdrawDexShare(address currencyId, uint256 amount) external returns (bool);
function withdrawDexShare(
address currencyId,
uint256 amount
) external returns (bool);

/// @notice Claim all avalible multi currencies rewards for specific PoolId.
/// @dev It'll emit an {ClaimedRewards} event.
/// @param pool The pool type.
/// @param poolCurrencyId The LP token currency id.
/// @return Returns a boolean value indicating whether the operation succeeded.
function claimRewards(PoolId pool, address poolCurrencyId) external returns (bool);
function claimRewards(
PoolId pool,
address poolCurrencyId
) external returns (bool);

/// @notice Gets deduction rate for claiming reward early.
/// @param pool The pool type.
/// @param poolCurrencyId The LP token currency id.
/// @return Returns (claim_reward_deduction_rate) as a FixedU128 representing a decimal value.
function getClaimRewardDeductionRate(PoolId pool, address poolCurrencyId) external view returns (uint256);
function getClaimRewardDeductionRate(
PoolId pool,
address poolCurrencyId
) external view returns (uint256);

/// @notice Gets the pending rewards for a pool, actual reward could be deducted.
/// @param pool The pool type.
/// @param poolCurrencyId The LP token currency id.
/// @param who The specified user.
/// @return Returns (balances), an array of reward balances corresponding to currencyIds.
function getPendingRewards(address[] calldata currencyIds, PoolId pool, address poolCurrencyId, address who)
external
view
returns (uint256[] memory);
function getPendingRewards(
address[] calldata currencyIds,
PoolId pool,
address poolCurrencyId,
address who
) external view returns (uint256[] memory);
}
2 changes: 1 addition & 1 deletion resources/bytecodes.json
Original file line number Diff line number Diff line change
Expand Up @@ -477,7 +477,7 @@
[
"INCENTIVES",
"0x0000000000000000000000000000000000000808",
"0x608060405234801561001057600080fd5b50610e6c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80636ccf80da116100505780636ccf80da146100d35780636ff45b8b146100e6578063a4a7ade2146100f957600080fd5b80630720ad711461007757806310b8087f1461009f5780632b4b3abb146100c0575b600080fd5b61008a6100853660046109b2565b610119565b60405190151581526020015b60405180910390f35b6100b26100ad3660046109eb565b6102f0565b604051908152602001610096565b61008a6100ce3660046109b2565b610411565b6100b26100e1366004610a1e565b6105d4565b61008a6100f43660046109eb565b6106f8565b61010c610107366004610a61565b61085f565b6040516100969190610b07565b60008160000361018a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e63656e74697665733a20616d6f756e74206973207a65726f00000000000060448201526064015b60405180910390fd5b60405133602482015273ffffffffffffffffffffffffffffffffffffffff8416604482015260648101839052600090819061040a90608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc17ca2a600000000000000000000000000000000000000000000000000000000179052516102439190610b4b565b6000604051808303816000865af19150503d8060008114610280576040519150601f19603f3d011682016040523d82523d6000602084013e610285565b606091505b50909250905081610297573d60208201fd5b60405184815273ffffffffffffffffffffffffffffffffffffffff86169033907f45f78f5c760c3f28245fbb46e318d554fca9c064767f9a6f852daf0035c21b92906020015b60405180910390a3506001949350505050565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff168585604051602401610321929190610be4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa2e2fc8e00000000000000000000000000000000000000000000000000000000179052516103a29190610b4b565b600060405180830381855afa9150503d80600081146103dd576040519150601f19603f3d011682016040523d82523d6000602084013e6103e2565b606091505b509092509050816103f4573d60208201fd5b808060200190518101906104089190610c15565b95945050505050565b60008160000361047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e63656e74697665733a20616d6f756e74206973207a65726f0000000000006044820152606401610181565b60405133602482015273ffffffffffffffffffffffffffffffffffffffff8416604482015260648101839052600090819061040a90608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fdae3ac6900000000000000000000000000000000000000000000000000000000179052516105369190610b4b565b6000604051808303816000865af19150503d8060008114610573576040519150601f19603f3d011682016040523d82523d6000602084013e610578565b606091505b5090925090508161058a573d60208201fd5b60405184815273ffffffffffffffffffffffffffffffffffffffff86169033907fd766e42510e7730861ab6096248fb43982df3017d6119d41482e18cb79a7dadb906020016102dd565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff1686868660405160240161060793929190610c2e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f7469000d00000000000000000000000000000000000000000000000000000000179052516106889190610b4b565b600060405180830381855afa9150503d80600081146106c3576040519150601f19603f3d011682016040523d82523d6000602084013e6106c8565b606091505b509092509050816106da573d60208201fd5b808060200190518101906106ee9190610c15565b9695505050505050565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff1633868660405160240161072b93929190610c6a565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fe12eab9b00000000000000000000000000000000000000000000000000000000179052516107ac9190610b4b565b6000604051808303816000865af19150503d80600081146107e9576040519150601f19603f3d011682016040523d82523d6000602084013e6107ee565b606091505b50909250905081610800573d60208201fd5b8373ffffffffffffffffffffffffffffffffffffffff1685600381111561082957610829610b7a565b60405133907fc14c8e20e4488520e8daf6686d64ff040c85a6f6a739393ce599a92351c44b3990600090a4506001949350505050565b606060008061040a73ffffffffffffffffffffffffffffffffffffffff168888888888604051602401610896959493929190610ca7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0eb797b100000000000000000000000000000000000000000000000000000000179052516109179190610b4b565b600060405180830381855afa9150503d8060008114610952576040519150601f19603f3d011682016040523d82523d6000602084013e610957565b606091505b50909250905081610969573d60208201fd5b8080602001905181019061097d9190610d66565b98975050505050505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146109ad57600080fd5b919050565b600080604083850312156109c557600080fd5b6109ce83610989565b946020939093013593505050565b8035600481106109ad57600080fd5b600080604083850312156109fe57600080fd5b610a07836109dc565b9150610a1560208401610989565b90509250929050565b600080600060608486031215610a3357600080fd5b610a3c846109dc565b9250610a4a60208501610989565b9150610a5860408501610989565b90509250925092565b600080600080600060808688031215610a7957600080fd5b853567ffffffffffffffff80821115610a9157600080fd5b818801915088601f830112610aa557600080fd5b813581811115610ab457600080fd5b8960208260051b8501011115610ac957600080fd5b602092830197509550610adf91880190506109dc565b9250610aed60408701610989565b9150610afb60608701610989565b90509295509295909350565b6020808252825182820181905260009190848201906040850190845b81811015610b3f57835183529284019291840191600101610b23565b50909695505050505050565b6000825160005b81811015610b6c5760208186018101518583015201610b52565b506000920191825250919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60048110610be0577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9052565b60408101610bf28285610ba9565b73ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b600060208284031215610c2757600080fd5b5051919050565b60608101610c3c8286610ba9565b73ffffffffffffffffffffffffffffffffffffffff8085166020840152808416604084015250949350505050565b73ffffffffffffffffffffffffffffffffffffffff84811682526060820190610c966020840186610ba9565b808416604084015250949350505050565b6080808252810185905260008660a08301825b88811015610cf55773ffffffffffffffffffffffffffffffffffffffff610ce084610989565b16825260209283019290910190600101610cba565b509150610d0790506020830186610ba9565b73ffffffffffffffffffffffffffffffffffffffff80851660408401528084166060840152509695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020808385031215610d7957600080fd5b825167ffffffffffffffff80821115610d9157600080fd5b818501915085601f830112610da557600080fd5b815181811115610db757610db7610d37565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108582111715610dfa57610dfa610d37565b604052918252848201925083810185019188831115610e1857600080fd5b938501935b8285101561097d57845184529385019392850192610e1d56fea26469706673582212207592568bf8ab8ffdabe0fc8c7bdb1886acb1c0498a5da91696a97922f08c5d1864736f6c63430008120033"
"0x608060405234801561001057600080fd5b50610e6c806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c80636ccf80da116100505780636ccf80da146100d35780636ff45b8b146100e6578063a4a7ade2146100f957600080fd5b80630720ad711461007757806310b8087f1461009f5780632b4b3abb146100c0575b600080fd5b61008a6100853660046109b2565b610119565b60405190151581526020015b60405180910390f35b6100b26100ad3660046109eb565b6102f0565b604051908152602001610096565b61008a6100ce3660046109b2565b610411565b6100b26100e1366004610a1e565b6105d4565b61008a6100f43660046109eb565b6106f8565b61010c610107366004610a61565b61085f565b6040516100969190610b07565b60008160000361018a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e63656e74697665733a20616d6f756e74206973207a65726f00000000000060448201526064015b60405180910390fd5b60405133602482015273ffffffffffffffffffffffffffffffffffffffff8416604482015260648101839052600090819061040a90608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fc17ca2a600000000000000000000000000000000000000000000000000000000179052516102439190610b4b565b6000604051808303816000865af19150503d8060008114610280576040519150601f19603f3d011682016040523d82523d6000602084013e610285565b606091505b50909250905081610297573d60208201fd5b60405184815273ffffffffffffffffffffffffffffffffffffffff86169033907f45f78f5c760c3f28245fbb46e318d554fca9c064767f9a6f852daf0035c21b92906020015b60405180910390a3506001949350505050565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff168585604051602401610321929190610be4565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa2e2fc8e00000000000000000000000000000000000000000000000000000000179052516103a29190610b4b565b600060405180830381855afa9150503d80600081146103dd576040519150601f19603f3d011682016040523d82523d6000602084013e6103e2565b606091505b509092509050816103f4573d60208201fd5b808060200190518101906104089190610c15565b95945050505050565b60008160000361047d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f496e63656e74697665733a20616d6f756e74206973207a65726f0000000000006044820152606401610181565b60405133602482015273ffffffffffffffffffffffffffffffffffffffff8416604482015260648101839052600090819061040a90608401604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fdae3ac6900000000000000000000000000000000000000000000000000000000179052516105369190610b4b565b6000604051808303816000865af19150503d8060008114610573576040519150601f19603f3d011682016040523d82523d6000602084013e610578565b606091505b5090925090508161058a573d60208201fd5b60405184815273ffffffffffffffffffffffffffffffffffffffff86169033907fd766e42510e7730861ab6096248fb43982df3017d6119d41482e18cb79a7dadb906020016102dd565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff1686868660405160240161060793929190610c2e565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f7469000d00000000000000000000000000000000000000000000000000000000179052516106889190610b4b565b600060405180830381855afa9150503d80600081146106c3576040519150601f19603f3d011682016040523d82523d6000602084013e6106c8565b606091505b509092509050816106da573d60208201fd5b808060200190518101906106ee9190610c15565b9695505050505050565b600080600061040a73ffffffffffffffffffffffffffffffffffffffff1633868660405160240161072b93929190610c6a565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fe12eab9b00000000000000000000000000000000000000000000000000000000179052516107ac9190610b4b565b6000604051808303816000865af19150503d80600081146107e9576040519150601f19603f3d011682016040523d82523d6000602084013e6107ee565b606091505b50909250905081610800573d60208201fd5b8373ffffffffffffffffffffffffffffffffffffffff1685600381111561082957610829610b7a565b60405133907fc14c8e20e4488520e8daf6686d64ff040c85a6f6a739393ce599a92351c44b3990600090a4506001949350505050565b606060008061040a73ffffffffffffffffffffffffffffffffffffffff168888888888604051602401610896959493929190610ca7565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f0eb797b100000000000000000000000000000000000000000000000000000000179052516109179190610b4b565b600060405180830381855afa9150503d8060008114610952576040519150601f19603f3d011682016040523d82523d6000602084013e610957565b606091505b50909250905081610969573d60208201fd5b8080602001905181019061097d9190610d66565b98975050505050505050565b803573ffffffffffffffffffffffffffffffffffffffff811681146109ad57600080fd5b919050565b600080604083850312156109c557600080fd5b6109ce83610989565b946020939093013593505050565b8035600481106109ad57600080fd5b600080604083850312156109fe57600080fd5b610a07836109dc565b9150610a1560208401610989565b90509250929050565b600080600060608486031215610a3357600080fd5b610a3c846109dc565b9250610a4a60208501610989565b9150610a5860408501610989565b90509250925092565b600080600080600060808688031215610a7957600080fd5b853567ffffffffffffffff80821115610a9157600080fd5b818801915088601f830112610aa557600080fd5b813581811115610ab457600080fd5b8960208260051b8501011115610ac957600080fd5b602092830197509550610adf91880190506109dc565b9250610aed60408701610989565b9150610afb60608701610989565b90509295509295909350565b6020808252825182820181905260009190848201906040850190845b81811015610b3f57835183529284019291840191600101610b23565b50909695505050505050565b6000825160005b81811015610b6c5760208186018101518583015201610b52565b506000920191825250919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60048110610be0577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b9052565b60408101610bf28285610ba9565b73ffffffffffffffffffffffffffffffffffffffff831660208301529392505050565b600060208284031215610c2757600080fd5b5051919050565b60608101610c3c8286610ba9565b73ffffffffffffffffffffffffffffffffffffffff8085166020840152808416604084015250949350505050565b73ffffffffffffffffffffffffffffffffffffffff84811682526060820190610c966020840186610ba9565b808416604084015250949350505050565b6080808252810185905260008660a08301825b88811015610cf55773ffffffffffffffffffffffffffffffffffffffff610ce084610989565b16825260209283019290910190600101610cba565b509150610d0790506020830186610ba9565b73ffffffffffffffffffffffffffffffffffffffff80851660408401528084166060840152509695505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60006020808385031215610d7957600080fd5b825167ffffffffffffffff80821115610d9157600080fd5b818501915085601f830112610da557600080fd5b815181811115610db757610db7610d37565b8060051b6040517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0603f83011681018181108582111715610dfa57610dfa610d37565b604052918252848201925083810185019188831115610e1857600080fd5b938501935b8285101561097d57845184529385019392850192610e1d56fea26469706673582212207ac691ed2c2a3a5b4b0c8b2e6cdc8d1ab3d1adba82f99e3cb9a0958c95525ad664736f6c63430008120033"
],
[
"XTOKENS",
Expand Down
Loading

0 comments on commit 1069672

Please sign in to comment.