use ERC20 datatype
This commit is contained in:
@@ -1,6 +1,8 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
pragma solidity 0.8.19;
|
||||
|
||||
import { ERC20 } from "../lib/tokens/ERC20.sol";
|
||||
|
||||
library DataTypes {
|
||||
struct Lock {
|
||||
uint256 sellerKey;
|
||||
@@ -18,7 +20,7 @@ library DataTypes {
|
||||
/// @dev Relayer's target address that receives `relayerPremium` funds.
|
||||
/// @dev Reputation points accruer.
|
||||
address relayerAddress;
|
||||
address token;
|
||||
ERC20 token;
|
||||
}
|
||||
|
||||
// prettier-ignore
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
// SPDX-License-Identifier: MIT
|
||||
pragma solidity 0.8.19;
|
||||
|
||||
import { ERC20 } from "../lib/tokens/ERC20.sol";
|
||||
|
||||
// prettier-ignore
|
||||
interface EventAndErrors {
|
||||
/// ███ Events ████████████████████████████████████████████████████████████
|
||||
@@ -9,19 +11,19 @@ interface EventAndErrors {
|
||||
event DepositAdded(
|
||||
address indexed seller,
|
||||
// uint256 depositID,
|
||||
address token,
|
||||
ERC20 token,
|
||||
uint256 amount
|
||||
);
|
||||
/// @dev 0xca585721b6b442dc9183932f7c84dc2880efb67c4da52cc06873e78971105d49
|
||||
event ValidSet(
|
||||
address indexed seller,
|
||||
address token,
|
||||
ERC20 token,
|
||||
bool state
|
||||
);
|
||||
/// @dev 0x2cd6435b1b961c13f55202979edd0765a809f69a539d8a477436c94c1211e43e
|
||||
event DepositWithdrawn(
|
||||
address indexed seller,
|
||||
address token,
|
||||
ERC20 token,
|
||||
uint256 amount
|
||||
);
|
||||
/// @dev 0x8fb3989f70bd172a37d15b41b015e48ea09d59329638377304a4198cd0c4ea65
|
||||
|
||||
@@ -29,7 +29,7 @@ abstract contract OwnerSettings is
|
||||
uint256 defaultBlocks,
|
||||
address[] memory validSigners,
|
||||
address _reputation,
|
||||
address[] memory tokens,
|
||||
ERC20[] memory tokens,
|
||||
bool[] memory tokenStates
|
||||
) {
|
||||
setDefaultLockBlocks(defaultBlocks);
|
||||
@@ -89,7 +89,7 @@ abstract contract OwnerSettings is
|
||||
}
|
||||
|
||||
function tokenSettings(
|
||||
address[] memory _tokens,
|
||||
ERC20[] memory _tokens,
|
||||
bool[] memory _states
|
||||
) public onlyOwner {
|
||||
/* Yul Impl */
|
||||
|
||||
@@ -38,7 +38,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
uint256 defaultBlocks,
|
||||
address[] memory validSigners,
|
||||
address _reputation,
|
||||
address[] memory tokens,
|
||||
ERC20[] memory tokens,
|
||||
bool[] memory tokenStates
|
||||
)
|
||||
OwnerSettings(
|
||||
@@ -60,7 +60,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
/// as the deposit identifier.
|
||||
/// @dev Function sighash: 0xbfe07da6.
|
||||
function deposit(
|
||||
address _token,
|
||||
ERC20 _token,
|
||||
uint96 _amount,
|
||||
uint160 _pixTarget,
|
||||
bool _valid,
|
||||
@@ -132,7 +132,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
|
||||
_setSellerBalance(key, token, _sellerBalance);
|
||||
|
||||
emit ValidSet(msg.sender, address(token), state);
|
||||
emit ValidSet(msg.sender, token, state);
|
||||
} else revert NotInitialized();
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
/// @dev Function sighash: 0x03aaf306.
|
||||
function lock(
|
||||
address _seller,
|
||||
address _token,
|
||||
ERC20 _token,
|
||||
address _buyerAddress,
|
||||
uint80 _relayerPremium,
|
||||
uint80 _amount,
|
||||
@@ -165,7 +165,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
) public nonReentrant returns (uint256 lockID) {
|
||||
unlockExpired(expiredLocks);
|
||||
|
||||
ERC20 t = ERC20(_token);
|
||||
ERC20 t = _token;
|
||||
if (!getValid(_seller, t)) revert InvalidDeposit();
|
||||
|
||||
uint256 bal = getBalance(_seller, t);
|
||||
@@ -200,7 +200,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
_amount,
|
||||
_buyerAddress,
|
||||
msg.sender,
|
||||
address(t)
|
||||
t
|
||||
);
|
||||
|
||||
lockID = _addLock(bal, _amount, cCounter, l, t, k);
|
||||
@@ -310,12 +310,12 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
|
||||
_notExpired(l);
|
||||
|
||||
uint256 _sellerBalance = sellerBalance(l.sellerKey, ERC20(l.token)) & BITMASK_SB_ENTRY;
|
||||
uint256 _sellerBalance = sellerBalance(l.sellerKey, l.token) & BITMASK_SB_ENTRY;
|
||||
|
||||
if ((_sellerBalance + l.amount) > MAXBALANCE_UPPERBOUND)
|
||||
revert MaxBalExceeded();
|
||||
|
||||
_addSellerBalance(l.sellerKey, ERC20(l.token), l.amount);
|
||||
_addSellerBalance(l.sellerKey, l.token, l.amount);
|
||||
|
||||
l.amount = 0;
|
||||
|
||||
@@ -377,7 +377,7 @@ contract P2PIX is BaseUtils, ReentrancyGuard {
|
||||
|
||||
emit DepositWithdrawn(
|
||||
msg.sender,
|
||||
address(token),
|
||||
token,
|
||||
amount
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user