aboutsummaryrefslogtreecommitdiffstats
path: root/packages/contract-wrappers/src
diff options
context:
space:
mode:
authorLeonid Logvinov <logvinov.leon@gmail.com>2018-10-09 19:13:10 +0800
committerLeonid Logvinov <logvinov.leon@gmail.com>2018-10-09 19:13:10 +0800
commit7d2c975d7335155b85a7549c25b953d0afacf5cf (patch)
tree01a364d769f3eede04f4bd1e4a743784d39eea91 /packages/contract-wrappers/src
parente5153737d8386380675f28dd7cda70deeb1ea37c (diff)
parent024bcf492ddbdceb033466aeadef220adc145332 (diff)
downloaddexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar.gz
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar.bz2
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar.lz
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar.xz
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.tar.zst
dexon-0x-contracts-7d2c975d7335155b85a7549c25b953d0afacf5cf.zip
Merge branch 'development'
Diffstat (limited to 'packages/contract-wrappers/src')
-rw-r--r--packages/contract-wrappers/src/index.ts1
-rw-r--r--packages/contract-wrappers/src/utils/transaction_encoder.ts22
2 files changed, 6 insertions, 17 deletions
diff --git a/packages/contract-wrappers/src/index.ts b/packages/contract-wrappers/src/index.ts
index 2fcdd2ddb..e8a53170e 100644
--- a/packages/contract-wrappers/src/index.ts
+++ b/packages/contract-wrappers/src/index.ts
@@ -39,6 +39,7 @@ export {
JSONRPCRequestPayload,
JSONRPCResponsePayload,
JSONRPCErrorCallback,
+ JSONRPCResponseError,
AbiDefinition,
LogWithDecodedArgs,
FunctionAbi,
diff --git a/packages/contract-wrappers/src/utils/transaction_encoder.ts b/packages/contract-wrappers/src/utils/transaction_encoder.ts
index 87cbb43fd..33086944b 100644
--- a/packages/contract-wrappers/src/utils/transaction_encoder.ts
+++ b/packages/contract-wrappers/src/utils/transaction_encoder.ts
@@ -1,22 +1,13 @@
import { schemas } from '@0xproject/json-schemas';
-import { EIP712Schema, EIP712Types, eip712Utils } from '@0xproject/order-utils';
+import { eip712Utils } from '@0xproject/order-utils';
import { Order, SignedOrder } from '@0xproject/types';
-import { BigNumber } from '@0xproject/utils';
+import { BigNumber, signTypedDataUtils } from '@0xproject/utils';
import _ = require('lodash');
import { ExchangeContract } from '../contract_wrappers/generated/exchange';
import { assert } from './assert';
-const EIP712_ZEROEX_TRANSACTION_SCHEMA: EIP712Schema = {
- name: 'ZeroExTransaction',
- parameters: [
- { name: 'salt', type: EIP712Types.Uint256 },
- { name: 'signerAddress', type: EIP712Types.Address },
- { name: 'data', type: EIP712Types.Bytes },
- ],
-};
-
/**
* Transaction Encoder. Transaction messages exist for the purpose of calling methods on the Exchange contract
* in the context of another address. For example, UserA can encode and sign a fillOrder transaction and UserB
@@ -41,12 +32,9 @@ export class TransactionEncoder {
signerAddress,
data,
};
- const executeTransactionHashBuff = eip712Utils.structHash(
- EIP712_ZEROEX_TRANSACTION_SCHEMA,
- executeTransactionData,
- );
- const eip721MessageBuffer = eip712Utils.createEIP712Message(executeTransactionHashBuff, exchangeAddress);
- const messageHex = `0x${eip721MessageBuffer.toString('hex')}`;
+ const typedData = eip712Utils.createZeroExTransactionTypedData(executeTransactionData, exchangeAddress);
+ const eip712MessageBuffer = signTypedDataUtils.generateTypedDataHash(typedData);
+ const messageHex = `0x${eip712MessageBuffer.toString('hex')}`;
return messageHex;
}
/**