當前位置: 首頁>>代碼示例>>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;未經允許,請勿轉載。