当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript js.ZeroEx.signOrderHashAsync方法代码示例

本文整理汇总了TypeScript中0x.js.ZeroEx.signOrderHashAsync方法的典型用法代码示例。如果您正苦于以下问题:TypeScript js.ZeroEx.signOrderHashAsync方法的具体用法?TypeScript js.ZeroEx.signOrderHashAsync怎么用?TypeScript js.ZeroEx.signOrderHashAsync使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在0x.js.ZeroEx的用法示例。


在下文中一共展示了js.ZeroEx.signOrderHashAsync方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: signOrderHashAsync

    public async signOrderHashAsync(orderHash: string): Promise<ECSignature> {
        utils.assert(!_.isUndefined(this._zeroEx), 'ZeroEx must be instantiated.');
        const makerAddress = this._userAddressIfExists;
        // If makerAddress is undefined, this means they have a web3 instance injected into their browser
        // but no account addresses associated with it.
        if (_.isUndefined(makerAddress)) {
            throw new Error('Tried to send a sign request but user has no associated addresses');
        }

        this._showFlashMessageIfLedger();
        const nodeVersion = await this._web3Wrapper.getNodeVersionAsync();
        const isParityNode = utils.isParityNode(nodeVersion);
        const isTestRpc = utils.isTestRpc(nodeVersion);
        const isLedgerSigner = !_.isUndefined(this._ledgerSubprovider);
        let shouldAddPersonalMessagePrefix = true;
        if ((isParityNode && !isLedgerSigner) || isTestRpc || isLedgerSigner) {
            shouldAddPersonalMessagePrefix = false;
        }
        const ecSignature = await this._zeroEx.signOrderHashAsync(
            orderHash,
            makerAddress,
            shouldAddPersonalMessagePrefix,
        );
        this._dispatcher.updateECSignature(ecSignature);
        return ecSignature;
    }
开发者ID:ewingrj,项目名称:0x-monorepo,代码行数:26,代码来源:blockchain.ts

示例2: signOrderHashAsync

 public async signOrderHashAsync(orderHash: string): Promise<SignatureData> {
     utils.assert(!_.isUndefined(this.zeroEx), 'ZeroEx must be instantiated.');
     const makerAddress = this.userAddress;
     // If makerAddress is undefined, this means they have a web3 instance injected into their browser
     // but no account addresses associated with it.
     if (_.isUndefined(makerAddress)) {
         throw new Error('Tried to send a sign request but user has no associated addresses');
     }
     const ecSignature = await this.zeroEx.signOrderHashAsync(orderHash, makerAddress);
     const signatureData = _.extend({}, ecSignature, {
         hash: orderHash,
     });
     this.dispatcher.updateSignatureData(signatureData);
     return signatureData;
 }
开发者ID:NickMinnellaCS96,项目名称:website,代码行数:15,代码来源:blockchain.ts

示例3: before

 before(async () => {
     signedOrder = await orderFactory.newSignedOrderAsync();
     tokenGet = zrx.address;
     tokenGive = weth.address;
     const blockNumber = await web3Wrapper.getBlockNumberAsync();
     const ED_ORDER_EXPIRATION_IN_BLOCKS = 10;
     expires = new BigNumber(blockNumber + ED_ORDER_EXPIRATION_IN_BLOCKS);
     nonce = new BigNumber(42);
     const edOrderHash = `0x${crypto
         .solSHA256([etherDelta.address, tokenGet, amountGet, tokenGive, amountGive, expires, nonce])
         .toString('hex')}`;
     const shouldAddPersonalMessagePrefix = false;
     edSignature = await zeroEx.signOrderHashAsync(edOrderHash, edMaker, shouldAddPersonalMessagePrefix);
     addresses = [
         signedOrder.maker,
         signedOrder.taker,
         signedOrder.makerTokenAddress,
         signedOrder.takerTokenAddress,
         signedOrder.feeRecipient,
         edMaker,
     ];
     const fillTakerTokenAmount = takerTokenAmount;
     const edFillAmount = makerTokenAmount;
     values = [
         signedOrder.makerTokenAmount,
         signedOrder.takerTokenAmount,
         signedOrder.makerFee,
         signedOrder.takerFee,
         signedOrder.expirationUnixTimestampSec,
         signedOrder.salt,
         fillTakerTokenAmount,
         amountGet,
         amountGive,
         expires,
         nonce,
         edFillAmount,
     ];
     v = [signedOrder.ecSignature.v, edSignature.v];
     r = [signedOrder.ecSignature.r, edSignature.r];
     s = [signedOrder.ecSignature.s, edSignature.s];
 });
开发者ID:ewingrj,项目名称:0x-monorepo,代码行数:41,代码来源:arbitrage.ts

示例4: newSignedOrderAsync

 public async newSignedOrderAsync(customOrderParams: Partial<Order> = {}): Promise<SignedOrder> {
     const randomExpiration = new BigNumber(Math.floor((Date.now() + Math.random() * 100000000000) / 1000));
     const order = ({
         expirationUnixTimestampSec: randomExpiration,
         salt: ZeroEx.generatePseudoRandomSalt(),
         taker: ZeroEx.NULL_ADDRESS,
         ...this._defaultOrderParams,
         ...customOrderParams,
     } as any) as Order;
     const orderHashHex = ZeroEx.getOrderHashHex(order);
     const shouldAddPersonalMessagePrefix = false;
     const ecSignature = await this._zeroEx.signOrderHashAsync(
         orderHashHex,
         order.maker,
         shouldAddPersonalMessagePrefix,
     );
     const signedOrder = {
         ...order,
         ecSignature,
     };
     return signedOrder;
 }
开发者ID:ewingrj,项目名称:0x-monorepo,代码行数:22,代码来源:order_factory.ts


注:本文中的0x.js.ZeroEx.signOrderHashAsync方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。