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

Name
Type
Description

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

Name
Type
Description

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

Name
Type
Description

_proof

bytes32[]

_amount

uint256

Returns

Name
Type
Description

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;