aboutsummaryrefslogtreecommitdiffstats
path: root/packages/0x.js
diff options
context:
space:
mode:
Diffstat (limited to 'packages/0x.js')
-rw-r--r--packages/0x.js/CHANGELOG.json17
-rw-r--r--packages/0x.js/package.json6
-rw-r--r--packages/0x.js/src/0x.ts15
-rw-r--r--packages/0x.js/src/artifacts/ZRXToken.json2
-rw-r--r--packages/0x.js/src/index.ts2
-rw-r--r--packages/0x.js/test/0x.js_test.ts7
6 files changed, 34 insertions, 15 deletions
diff --git a/packages/0x.js/CHANGELOG.json b/packages/0x.js/CHANGELOG.json
index 4f39a9b8c..a1bdcc506 100644
--- a/packages/0x.js/CHANGELOG.json
+++ b/packages/0x.js/CHANGELOG.json
@@ -1,5 +1,22 @@
[
{
+ "version": "1.0.1-rc.4",
+ "changes": [
+ {
+ "pr": 914,
+ "note": "Update ecSignOrderHashAsync to return the signature as a string for immediate use in contracts"
+ }
+ ]
+ },
+ {
+ "version": "1.0.1-rc.3",
+ "changes": [
+ {
+ "note": "Dependencies updated"
+ }
+ ]
+ },
+ {
"version": "1.0.1-rc.2",
"changes": [
{
diff --git a/packages/0x.js/package.json b/packages/0x.js/package.json
index 3b92752e1..b023ce525 100644
--- a/packages/0x.js/package.json
+++ b/packages/0x.js/package.json
@@ -85,7 +85,7 @@
"dirty-chai": "^2.0.1",
"json-loader": "^0.5.4",
"make-promises-safe": "^1.1.0",
- "mocha": "^4.0.1",
+ "mocha": "^4.1.0",
"npm-run-all": "^4.1.2",
"nyc": "^11.0.1",
"opn-cli": "^3.1.0",
@@ -94,7 +94,7 @@
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.7.1",
+ "typescript": "2.9.2",
"webpack": "^3.1.0"
},
"dependencies": {
@@ -110,7 +110,7 @@
"@0xproject/web3-wrapper": "^1.1.2",
"ethereum-types": "^1.0.3",
"ethers": "3.0.22",
- "lodash": "^4.17.4"
+ "lodash": "^4.17.5"
},
"publishConfig": {
"access": "public"
diff --git a/packages/0x.js/src/0x.ts b/packages/0x.js/src/0x.ts
index 2a2b82f63..48d00c1ac 100644
--- a/packages/0x.js/src/0x.ts
+++ b/packages/0x.js/src/0x.ts
@@ -14,13 +14,12 @@ import {
ecSignOrderHashAsync,
generatePseudoRandomSalt,
isValidSignatureAsync,
- MessagePrefixOpts,
orderHashUtils,
} from '@0xproject/order-utils';
// HACK: Since we export assetDataUtils from ZeroEx and it has AssetProxyId, ERC20AssetData and ERC721AssetData
// in it's public interface, we need to import these types here.
// tslint:disable-next-line:no-unused-variable
-import { AssetProxyId, ECSignature, ERC20AssetData, ERC721AssetData, Order, SignedOrder } from '@0xproject/types';
+import { AssetProxyId, ERC20AssetData, ERC721AssetData, Order, SignedOrder, SignerType } from '@0xproject/types';
import { BigNumber } from '@0xproject/utils';
import { Web3Wrapper } from '@0xproject/web3-wrapper';
import { Provider, TransactionReceiptWithDecodedLogs } from 'ethereum-types';
@@ -238,19 +237,21 @@ export class ZeroEx {
* @param orderHash Hex encoded orderHash to sign.
* @param signerAddress The hex encoded Ethereum address you wish to sign it with. This address
* must be available via the Provider supplied to 0x.js.
- * @param MessagePrefixOpts Options regarding the desired prefix and whether to add it before calling `eth_sign`
- * @return An object containing the Elliptic curve signature parameters generated by signing the orderHash.
+ * @param signerType the signer type that will perform the `eth_sign` operation. E.g Default, Metamask, Ledger or Trezor.
+ * Some implementations exhibit different behaviour. Default will assume a spec compliant eth_sign implementation.
+ * This parameter is defaulted to `SignerType.Default`.
+ * @return A hex encoded string of the Elliptic curve signature parameters generated by signing the orderHash and signature type.
*/
public async ecSignOrderHashAsync(
orderHash: string,
signerAddress: string,
- messagePrefixOpts: MessagePrefixOpts,
- ): Promise<ECSignature> {
+ signerType: SignerType = SignerType.Default,
+ ): Promise<string> {
const signature = await ecSignOrderHashAsync(
this._contractWrappers.getProvider(),
orderHash,
signerAddress,
- messagePrefixOpts,
+ signerType,
);
return signature;
}
diff --git a/packages/0x.js/src/artifacts/ZRXToken.json b/packages/0x.js/src/artifacts/ZRXToken.json
index 0ce91c1c1..becbb83df 100644
--- a/packages/0x.js/src/artifacts/ZRXToken.json
+++ b/packages/0x.js/src/artifacts/ZRXToken.json
@@ -10028,4 +10028,4 @@
"constructorArgs": "[]"
}
}
-} \ No newline at end of file
+}
diff --git a/packages/0x.js/src/index.ts b/packages/0x.js/src/index.ts
index 95ca07eea..2ba60e730 100644
--- a/packages/0x.js/src/index.ts
+++ b/packages/0x.js/src/index.ts
@@ -1,12 +1,12 @@
export { ZeroEx } from './0x';
-export { MessagePrefixType, MessagePrefixOpts } from '@0xproject/order-utils';
export { Web3ProviderEngine, RPCSubprovider } from '@0xproject/subproviders';
export {
ExchangeContractErrs,
Order,
SignedOrder,
+ SignerType,
ECSignature,
OrderStateValid,
OrderStateInvalid,
diff --git a/packages/0x.js/test/0x.js_test.ts b/packages/0x.js/test/0x.js_test.ts
index b4baecb1e..be2a94482 100644
--- a/packages/0x.js/test/0x.js_test.ts
+++ b/packages/0x.js/test/0x.js_test.ts
@@ -48,10 +48,11 @@ describe('ZeroEx library', () => {
const ethSignSignature =
'0x1B61a3ed31b43c8780e905a260a35faefcc527be7516aa11c0256729b5b351bc3340349190569279751135161d22529dc25add4f6069af05be04cacbda2ace225403';
const address = '0x5409ed021d9299bf6814279a6a1411a7e866a631';
+ const bytes32Zeros = '0x0000000000000000000000000000000000000000000000000000000000000000';
it("should return false if the data doesn't pertain to the signature & address", async () => {
- return expect((zeroEx.exchange as any).isValidSignatureAsync('0x0', address, ethSignSignature)).to.become(
- false,
- );
+ return expect(
+ (zeroEx.exchange as any).isValidSignatureAsync(bytes32Zeros, address, ethSignSignature),
+ ).to.become(false);
});
it("should return false if the address doesn't pertain to the signature & data", async () => {
const validUnrelatedAddress = '0x8b0292b11a196601ed2ce54b665cafeca0347d42';