Nocturnal Pumpkin Maelstrom

    0xorderbuilder
    TypeScript icon, indicating that this package has built-in type declarations

    1.1.0 • Public • Published

    0xOrderBuilder

    Llibrary for building orders to use the 0x protocol.

    Types

    • ZeroExOrderBuilder: main class with the static methods:
      • buildQuoteProviderOrder: creating a order to use in Quote Provider relayer strategy. A relayer will be called to get conversion rate and fees.
      • buildSignedOrder: signing a order. You can use the order returned in previous method.
    • EthNetwork: enum, used to inform the desired Ethereum network.

    Installation

    npm install 0xorderbuilder --save

    Use

    Import

    import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
    import { BigNumber } from "bignumber.js"; // used as parameter in buildQuoteProviderOrder method

    buildQuoteProviderOrder

        static buildQuoteProviderOrder(makerstring, makerTokenAddressstring, takerTokenAddressstring, makerTokenAmountBigNumber, 
            milisecondsToExpirenumber, relayerUrlstring, networkEthNetwork)Promise<Order>;
    • maker: yours eth wallet address;
    • makerTokenAddress: the token address you wish to sell;
    • takerTokenAddress: the token address you wish to buy;
    • makerTokenAmount: the amount you wish to sell (in base units, e.g.: 1 ZRX => new BigNumber(1000000000000000000));
    • milisecondsToExpire: used to calculate the returned order expiration date;
    • relayerUrl: the relayer addres used to get conversion rate and fee;
    • network: the desired Ethereum network
    • return: a promise that will be return a JSON representing the order.

    buildSignedOrder

        static buildSignedOrder(orderOrder, privateKeystring)SignedOrder;
    • order: the unsigned order;
    • privateKey: the private key of the maker wallet. Note: this private WILL NOT be transfer to relayer or any other;
    • return: the signed order.

    Example

    import { ZeroExOrderBuilder, EthNetwork } from "0xorderbuilder";
    import { BigNumber } from "bignumber.js";
     
    function testZeroExOrderBuilder() {
        ZeroExOrderBuilder.buildQuoteProviderOrder("0xf60345bcff9feedb98bbdfc996b33cba00ee2c75", "0x6ff6c0ff1d68b964901f986d4c9fa3ac68346570", 
            "0xd0a1e359811322d97991e03f863a0c30c2cf029c", new BigNumber(1000000000000000000), 10000, 
            "http://localhost:3000/api/v0", EthNetwork.Kovan).then((order) =>
        {
            const signedOrder = ZeroExOrderBuilder.buildSignedOrder(order, "0x5edd9d13a5d62821bbda8ac6da7d7ca69a1b540dc99ac9232fefc04d09e28055");
            console.log(JSON.stringify(signedOrder));
        });
            
    }
     
    testZeroExOrderBuilder();

    Install

    npm i 0xorderbuilder

    DownloadsWeekly Downloads

    2

    Version

    1.1.0

    License

    ISC

    Unpacked Size

    67 kB

    Total Files

    42

    Last publish

    Collaborators

    • fabio.cesso