AriaIPRWAVault
Inherits: UUPSUpgradeable, IAriaIPRWAVault, ERC721Holder, VaultAdmin, VaultFundraise, VaultView, Whitelist
Main contract orchestrating vault logic by inheriting fundraise, admin, and view functionalities. Directly implements fractional token claim function.
Functions
constructor
Note: oz-upgrades-unsafe-allow: constructor
constructor();
claimFractionalTokens
Caller claims the fractionalized IP tokens from fundraise, only when the vault is Closed.
function claimFractionalTokens(address usdc)
external
override
nonReentrant
whenNotPaused
returns (address fractionalToken, uint256 amountClaimed);
Parameters
usdc
address
The USDC address used to deposit funds into the fundraise. As it can change over the fundraise lifetime, it is required to specify the USDC address used for deposit.
Returns
fractionalToken
address
The address of the fractional token
amountClaimed
uint256
The amount of the fractional token claimed
claimFractionalTokens
Caller claims the fractionalized IP tokens from fundraise, only when the vault is Closed.
function claimFractionalTokens(bytes32[] calldata _proof, uint256 _amount)
external
override
nonReentrant
whenNotPaused
returns (address fractionalToken, uint256 amountClaimed);
Parameters
_proof
bytes32[]
_amount
uint256
Returns
fractionalToken
address
The address of the fractional token
amountClaimed
uint256
The amount of the fractional token claimed
_authorizeUpgrade
function _authorizeUpgrade(address newImplementation)
internal
override
onlyRole(AccessControlStorage.DEFAULT_ADMIN_ROLE);
_checkClaim
function _checkClaim(AriaIPRWAVaultStorage.VaultLayout storage $, address usdc, address claimer) internal view;
_checkLegal
function _checkLegal(address legal, address claimer) internal view;
_mintAndEmitEvent
function _mintAndEmitEvent(
AriaIPRWAVaultStorage.VaultLayout storage $,
address usdc,
address claimer,
uint256 amountClaimed
) internal;