docs: Added natspec to escrow contract
This commit is contained in:
parent
22ff471530
commit
90881fa94c
|
@ -31,6 +31,14 @@ contract Escrow is Pausable {
|
|||
event Paid(uint escrowId);
|
||||
event Canceled(uint escrowId);
|
||||
|
||||
/**
|
||||
* @dev Create a new escrow
|
||||
* @param _buyer The address that will perform the buy for the escrow
|
||||
* @param _expirationTime Unix timestamp before the transaction is considered expired
|
||||
* @notice Requires contract to be unpaused.
|
||||
* The seller needs to be licensed.
|
||||
* The expiration time must be at least 10min in the future
|
||||
*/
|
||||
function create(address payable _buyer, uint _expirationTime) public payable whenNotPaused {
|
||||
require(_expirationTime > (block.timestamp + 600), "Expiration time must be at least 10min in the future");
|
||||
require(msg.value > 0, "ETH amount is required"); // TODO: abstract this to use ERC20. Maybe thru the use of wETH
|
||||
|
@ -48,6 +56,14 @@ contract Escrow is Pausable {
|
|||
emit Created(msg.sender, _buyer, msg.value, escrowId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dev Release escrow funds to buyer
|
||||
* @param _escrowId Id of the escrow
|
||||
* @notice Requires contract to be unpaused.
|
||||
* Can only be executed by the seller
|
||||
* Transaction must not be expired, or previously canceled or released
|
||||
*/
|
||||
function release(uint _escrowId) public whenNotPaused {
|
||||
require(_escrowId < transactions.length, "Invalid escrow id");
|
||||
|
||||
|
@ -64,6 +80,13 @@ contract Escrow is Pausable {
|
|||
emit Paid(_escrowId);
|
||||
}
|
||||
|
||||
/**
|
||||
* @dev Cancel an escrow operation
|
||||
* @param _escrowId Id of the escrow
|
||||
* @notice Requires contract to be unpaused.
|
||||
* Can only be executed by the seller
|
||||
* Transaction must not be expired, or previously canceled or released
|
||||
*/
|
||||
function cancel(uint _escrowId) public whenNotPaused {
|
||||
require(_escrowId < transactions.length, "Invalid escrow id");
|
||||
|
||||
|
@ -79,6 +102,14 @@ contract Escrow is Pausable {
|
|||
emit Canceled(_escrowId);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @dev Withdraws funds to the sellers in case of emergency
|
||||
* @param _escrowId Id of the escrow
|
||||
* @notice Requires contract to be paused.
|
||||
* Can be executed by anyone
|
||||
* Transaction must not be canceled or released
|
||||
*/
|
||||
function withdraw_emergency(uint _escrowId) public whenPaused {
|
||||
require(_escrowId < transactions.length, "Invalid escrow id");
|
||||
|
||||
|
|
Loading…
Reference in New Issue