Recolor Helper

The Recolor Helper is a generic helper contract we deploy on each USDV-supported chain to facilitate recoloring operations. This contract is immutable and unowned for long-term security.

  • The Recolor Helper contracts support both local ERC20 and crosschain transfers. All transfers output USDV colored based on the _toColor argument.

  • EOA or contracts can interact with the Recolor Helper in the following ways:

    • Direct transfer USDV into the helper and send out atomically.

    • ERC20 approved transfer.

interface IRecolorHelper {
    /// ------ local transfer function -----

    /// @dev send USDV into this account and then ATOMICALLY transfer out with color
    function transferWithColor(address _receiver, uint256 _amount, uint32 _toColor) external;

    /// @dev it requires the caller to approve this contract to spend their USDV
    function approvedTransferWithColor(address _receiver, uint256 _amount, uint32 _toColor) external;

    /// ------ crosschain transfer function transfer function -----

    /// @dev send USDV into this account and then ATOMICALLY send across-chain
    function sendWithColor(
        IOFT.SendParam calldata _param,
        uint32 _toColor,
        bytes calldata _extraOptions,
        MessagingFee calldata _msgFee,
        address payable _refundAddress,
        bytes calldata _composeMsg
    ) external payable returns (MessagingReceipt memory);

    /// @dev it requires the caller to approve this contract to spend their USDV
    function approvedSendWithColor(
        IOFT.SendParam calldata _param,
        uint32 _toColor,
        bytes calldata _extraOptions,
        MessagingFee calldata _msgFee,
        address payable _refundAddress,
        bytes calldata _composeMsg
    ) external payable returns (MessagingReceipt memory);
}

Example usage:

  • Swap aggregator: send the swap output to the Recolor Helper and call transferWithColor with your color

  • Bridge: have the EOA approve the Recolor Helper and send your color of USDV crosschain.

Please visit Contract Addresses for RecolorHelper.sol addresses on each chain.

Last updated

Logo

Copyright by Verified USD Foundation