aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--packages/0x.js/package.json2
-rw-r--r--packages/abi-gen/package.json2
-rw-r--r--packages/assert/package.json2
-rw-r--r--packages/base-contract/package.json2
-rw-r--r--packages/connect/package.json2
-rw-r--r--packages/contract-wrappers/package.json2
-rw-r--r--packages/contracts/package.json2
-rw-r--r--packages/dev-utils/package.json2
-rw-r--r--packages/ethereum-types/package.json2
-rw-r--r--packages/fill-scenarios/package.json2
-rw-r--r--packages/json-schemas/package.json2
-rw-r--r--packages/metacoin/package.json2
-rw-r--r--packages/migrations/package.json2
-rw-r--r--packages/monorepo-scripts/package.json2
-rw-r--r--packages/order-utils/CHANGELOG.json4
-rw-r--r--packages/order-utils/package.json2
-rw-r--r--packages/order-utils/src/index.ts2
-rw-r--r--packages/order-utils/src/rate_utils.ts48
-rw-r--r--packages/order-utils/src/sorting_utils.ts54
-rw-r--r--packages/order-utils/test/rate_utils_test.ts55
-rw-r--r--packages/order-utils/test/sorting_utils_test.ts67
-rw-r--r--packages/order-watcher/package.json2
-rw-r--r--packages/react-docs-example/package.json2
-rw-r--r--packages/react-docs/package.json2
-rw-r--r--packages/react-shared/package.json2
-rw-r--r--packages/sol-compiler/package.json2
-rw-r--r--packages/sol-cov/package.json2
-rw-r--r--packages/sol-resolver/package.json2
-rw-r--r--packages/sra-report/package.json2
-rw-r--r--packages/subproviders/package.json2
-rw-r--r--packages/testnet-faucets/package.json2
-rw-r--r--packages/tslint-config/package.json2
-rw-r--r--packages/types/package.json2
-rw-r--r--packages/utils/package.json2
-rw-r--r--packages/web3-wrapper/package.json2
-rw-r--r--packages/website/package.json2
-rw-r--r--yarn.lock6
37 files changed, 263 insertions, 33 deletions
diff --git a/packages/0x.js/package.json b/packages/0x.js/package.json
index cf7b1962f..2daf40b54 100644
--- a/packages/0x.js/package.json
+++ b/packages/0x.js/package.json
@@ -94,7 +94,7 @@
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"webpack": "^3.1.0"
},
"dependencies": {
diff --git a/packages/abi-gen/package.json b/packages/abi-gen/package.json
index 8ea055a15..565fe4058 100644
--- a/packages/abi-gen/package.json
+++ b/packages/abi-gen/package.json
@@ -63,7 +63,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"publishConfig": {
"access": "public"
diff --git a/packages/assert/package.json b/packages/assert/package.json
index 9d2669955..d249b4cd1 100644
--- a/packages/assert/package.json
+++ b/packages/assert/package.json
@@ -44,7 +44,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/json-schemas": "^1.0.1-rc.4",
diff --git a/packages/base-contract/package.json b/packages/base-contract/package.json
index e658d9cfa..c5375ecf6 100644
--- a/packages/base-contract/package.json
+++ b/packages/base-contract/package.json
@@ -40,7 +40,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/typescript-typings": "^1.0.4",
diff --git a/packages/connect/package.json b/packages/connect/package.json
index 0fad3e14c..3894be6ea 100644
--- a/packages/connect/package.json
+++ b/packages/connect/package.json
@@ -83,7 +83,7 @@
"shx": "^0.2.2",
"tslint": "5.11.0",
"typedoc": "~0.8.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"publishConfig": {
"access": "public"
diff --git a/packages/contract-wrappers/package.json b/packages/contract-wrappers/package.json
index 7667b5b7f..ae2867e6c 100644
--- a/packages/contract-wrappers/package.json
+++ b/packages/contract-wrappers/package.json
@@ -68,7 +68,7 @@
"sinon": "^4.0.0",
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"web3-provider-engine": "14.0.6"
},
"dependencies": {
diff --git a/packages/contracts/package.json b/packages/contracts/package.json
index 799f72d9e..01858894b 100644
--- a/packages/contracts/package.json
+++ b/packages/contracts/package.json
@@ -68,7 +68,7 @@
"solc": "^0.4.24",
"solhint": "^1.2.1",
"tslint": "5.11.0",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"yargs": "^10.0.3"
},
"dependencies": {
diff --git a/packages/dev-utils/package.json b/packages/dev-utils/package.json
index 5aa6edcd8..544ff23fa 100644
--- a/packages/dev-utils/package.json
+++ b/packages/dev-utils/package.json
@@ -42,7 +42,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/subproviders": "^1.0.5",
diff --git a/packages/ethereum-types/package.json b/packages/ethereum-types/package.json
index 0e89a8049..c2092a1d3 100644
--- a/packages/ethereum-types/package.json
+++ b/packages/ethereum-types/package.json
@@ -41,7 +41,7 @@
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@types/node": "^8.0.53",
diff --git a/packages/fill-scenarios/package.json b/packages/fill-scenarios/package.json
index c3e8afb0e..466e96258 100644
--- a/packages/fill-scenarios/package.json
+++ b/packages/fill-scenarios/package.json
@@ -38,7 +38,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/base-contract": "^2.0.0-rc.1",
diff --git a/packages/json-schemas/package.json b/packages/json-schemas/package.json
index 40cb71c18..a5941a971 100644
--- a/packages/json-schemas/package.json
+++ b/packages/json-schemas/package.json
@@ -70,7 +70,7 @@
"shx": "^0.2.2",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"publishConfig": {
"access": "public"
diff --git a/packages/metacoin/package.json b/packages/metacoin/package.json
index 6900da198..322708b50 100644
--- a/packages/metacoin/package.json
+++ b/packages/metacoin/package.json
@@ -56,6 +56,6 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
}
}
diff --git a/packages/migrations/package.json b/packages/migrations/package.json
index d496393f7..dc481a972 100644
--- a/packages/migrations/package.json
+++ b/packages/migrations/package.json
@@ -49,7 +49,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"yargs": "^10.0.3"
},
"dependencies": {
diff --git a/packages/monorepo-scripts/package.json b/packages/monorepo-scripts/package.json
index 4d92ed495..87135fd93 100644
--- a/packages/monorepo-scripts/package.json
+++ b/packages/monorepo-scripts/package.json
@@ -40,7 +40,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@lerna/batch-packages": "^3.0.0-beta.18",
diff --git a/packages/order-utils/CHANGELOG.json b/packages/order-utils/CHANGELOG.json
index a81eb077d..a2dcf13c4 100644
--- a/packages/order-utils/CHANGELOG.json
+++ b/packages/order-utils/CHANGELOG.json
@@ -18,6 +18,10 @@
},
{
"note": "Dependencies updated"
+ },
+ {
+ "note": "Added rateUtils and sortingUtils",
+ "pr": 953
}
],
"timestamp": 1534210131
diff --git a/packages/order-utils/package.json b/packages/order-utils/package.json
index fa8f3563e..bedbdc6d2 100644
--- a/packages/order-utils/package.json
+++ b/packages/order-utils/package.json
@@ -70,7 +70,7 @@
"sinon": "^4.0.0",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/assert": "^1.0.5",
diff --git a/packages/order-utils/src/index.ts b/packages/order-utils/src/index.ts
index 681fbc904..2b1c92973 100644
--- a/packages/order-utils/src/index.ts
+++ b/packages/order-utils/src/index.ts
@@ -25,3 +25,5 @@ export { EIP712Utils } from './eip712_utils';
export { OrderValidationUtils } from './order_validation_utils';
export { ExchangeTransferSimulator } from './exchange_transfer_simulator';
export { marketUtils } from './market_utils';
+export { rateUtils } from './rate_utils';
+export { sortingUtils } from './sorting_utils';
diff --git a/packages/order-utils/src/rate_utils.ts b/packages/order-utils/src/rate_utils.ts
new file mode 100644
index 000000000..c9ca72c59
--- /dev/null
+++ b/packages/order-utils/src/rate_utils.ts
@@ -0,0 +1,48 @@
+import { schemas } from '@0xproject/json-schemas';
+import { Order } from '@0xproject/types';
+import { BigNumber } from '@0xproject/utils';
+
+import { assert } from './assert';
+import { constants } from './constants';
+
+export const rateUtils = {
+ /**
+ * Takes an order and calculates the fee adjusted rate (takerAsset/makerAsset) by calculating how much takerAsset
+ * is required to cover the fees (feeRate * takerFee), adding the takerAssetAmount and dividing by makerAssetAmount
+ * @param order An object that conforms to the order interface
+ * @param feeRate The market rate of ZRX denominated in takerAssetAmount
+ * (ex. feeRate is 0.1 takerAsset/ZRX if it takes 1 unit of takerAsset to buy 10 ZRX)
+ * Defaults to 0
+ * @return The rate (takerAsset/makerAsset) of the order adjusted for fees
+ */
+ getFeeAdjustedRateOfOrder(order: Order, feeRate: BigNumber = constants.ZERO_AMOUNT): BigNumber {
+ assert.doesConformToSchema('order', order, schemas.orderSchema);
+ assert.isBigNumber('feeRate', feeRate);
+ assert.assert(
+ feeRate.gte(constants.ZERO_AMOUNT),
+ `Expected feeRate: ${feeRate} to be greater than or equal to 0`,
+ );
+ const takerAssetAmountNeededToPayForFees = order.takerFee.mul(feeRate);
+ const totalTakerAssetAmount = takerAssetAmountNeededToPayForFees.plus(order.takerAssetAmount);
+ const rate = totalTakerAssetAmount.div(order.makerAssetAmount);
+ return rate;
+ },
+ /**
+ * Takes a fee order (makerAssetData corresponds to ZRX and takerAssetData corresponds to WETH) and calculates
+ * the fee adjusted rate (WETH/ZRX) by dividing the takerAssetAmount by the makerAmount minus the takerFee
+ * @param feeOrder An object that conforms to the order interface
+ * @return The rate (WETH/ZRX) of the fee order adjusted for fees
+ */
+ getFeeAdjustedRateOfFeeOrder(feeOrder: Order): BigNumber {
+ assert.doesConformToSchema('feeOrder', feeOrder, schemas.orderSchema);
+ const zrxAmountAfterFees = feeOrder.makerAssetAmount.sub(feeOrder.takerFee);
+ assert.assert(
+ zrxAmountAfterFees.greaterThan(constants.ZERO_AMOUNT),
+ `Expected takerFee: ${JSON.stringify(feeOrder.takerFee)} to be less than makerAssetAmount: ${JSON.stringify(
+ feeOrder.makerAssetAmount,
+ )}`,
+ );
+ const rate = feeOrder.takerAssetAmount.div(zrxAmountAfterFees);
+ return rate;
+ },
+};
diff --git a/packages/order-utils/src/sorting_utils.ts b/packages/order-utils/src/sorting_utils.ts
new file mode 100644
index 000000000..8811bcaf8
--- /dev/null
+++ b/packages/order-utils/src/sorting_utils.ts
@@ -0,0 +1,54 @@
+import { schemas } from '@0xproject/json-schemas';
+import { Order } from '@0xproject/types';
+import { BigNumber } from '@0xproject/utils';
+import * as _ from 'lodash';
+
+import { assert } from './assert';
+import { constants } from './constants';
+import { rateUtils } from './rate_utils';
+
+export const sortingUtils = {
+ /**
+ * Takes an array of orders and sorts them by takerAsset/makerAsset rate in ascending order (best rate first).
+ * Adjusts the rate of each order according to the feeRate and takerFee for that order.
+ * @param orders An array of objects that extend the Order interface. All orders should specify ZRX as
+ * the makerAsset and WETH as the takerAsset.
+ * @param feeRate The market rate of ZRX denominated in takerAssetAmount
+ * (ex. feeRate is 0.1 takerAsset/ZRX if it takes 1 unit of takerAsset to buy 10 ZRX)
+ * Defaults to 0
+ * @return The input orders sorted by rate in ascending order
+ */
+ sortOrdersByFeeAdjustedRate<T extends Order>(orders: T[], feeRate: BigNumber = constants.ZERO_AMOUNT): T[] {
+ assert.doesConformToSchema('orders', orders, schemas.ordersSchema);
+ assert.isBigNumber('feeRate', feeRate);
+ const rateCalculator = (order: Order) => rateUtils.getFeeAdjustedRateOfOrder(order, feeRate);
+ const sortedOrders = sortOrders(orders, rateCalculator);
+ return sortedOrders;
+ },
+ /**
+ * Takes an array of fee orders (makerAssetData corresponds to ZRX and takerAssetData corresponds to WETH)
+ * and sorts them by rate in ascending order (best rate first). Adjusts the rate according to the takerFee.
+ * @param feeOrders An array of objects that extend the Order interface. All orders should specify ZRX as
+ * the makerAsset and WETH as the takerAsset.
+ * @return The input orders sorted by rate in ascending order
+ */
+ sortFeeOrdersByFeeAdjustedRate(feeOrders: Order[]): Order[] {
+ assert.doesConformToSchema('feeOrders', feeOrders, schemas.ordersSchema);
+ const rateCalculator = rateUtils.getFeeAdjustedRateOfFeeOrder.bind(rateUtils);
+ const sortedOrders = sortOrders(feeOrders, rateCalculator);
+ return sortedOrders;
+ },
+};
+
+type RateCalculator = (order: Order) => BigNumber;
+
+// takes an array of orders, copies them, and sorts the copy based on the rate definition provided by rateCalculator
+function sortOrders<T extends Order>(orders: T[], rateCalculator: RateCalculator): T[] {
+ const copiedOrders = _.cloneDeep(orders);
+ copiedOrders.sort((firstOrder, secondOrder) => {
+ const firstOrderRate = rateCalculator(firstOrder);
+ const secondOrderRate = rateCalculator(secondOrder);
+ return firstOrderRate.comparedTo(secondOrderRate);
+ });
+ return copiedOrders;
+}
diff --git a/packages/order-utils/test/rate_utils_test.ts b/packages/order-utils/test/rate_utils_test.ts
new file mode 100644
index 000000000..2e299c209
--- /dev/null
+++ b/packages/order-utils/test/rate_utils_test.ts
@@ -0,0 +1,55 @@
+import { BigNumber } from '@0xproject/utils';
+import * as chai from 'chai';
+import 'mocha';
+
+import { rateUtils } from '../src';
+
+import { chaiSetup } from './utils/chai_setup';
+import { testOrderFactory } from './utils/test_order_factory';
+
+chaiSetup.configure();
+const expect = chai.expect;
+
+describe('rateUtils', () => {
+ const testOrder = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(100),
+ takerFee: new BigNumber(20),
+ });
+ describe('#getFeeAdjustedRateOfOrder', () => {
+ it('throws when feeRate is less than zero', async () => {
+ const feeRate = new BigNumber(-1);
+ expect(() => rateUtils.getFeeAdjustedRateOfOrder(testOrder, feeRate)).to.throw(
+ 'Expected feeRate: -1 to be greater than or equal to 0',
+ );
+ });
+ it('correctly calculates fee adjusted rate when feeRate is provided', async () => {
+ const feeRate = new BigNumber(2); // ZRX costs 2 units of takerAsset per 1 unit of ZRX
+ const feeAdjustedRate = rateUtils.getFeeAdjustedRateOfOrder(testOrder, feeRate);
+ // the order actually takes 100 + (2 * 20) takerAsset units to fill 100 units of makerAsset
+ expect(feeAdjustedRate).to.bignumber.equal(new BigNumber(1.4));
+ });
+ it('correctly calculates fee adjusted rate when no feeRate is provided', async () => {
+ const feeAdjustedRate = rateUtils.getFeeAdjustedRateOfOrder(testOrder);
+ // because no feeRate was provided we just assume 0 fees
+ // the order actually takes 100 takerAsset units to fill 100 units of makerAsset
+ expect(feeAdjustedRate).to.bignumber.equal(new BigNumber(1));
+ });
+ });
+ describe('#getFeeAdjustedRateOfFeeOrder', () => {
+ it('throws when takerFee exceeds makerAssetAmount', async () => {
+ const badOrder = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerFee: new BigNumber(101),
+ });
+ expect(() => rateUtils.getFeeAdjustedRateOfFeeOrder(badOrder)).to.throw(
+ 'Expected takerFee: "101" to be less than makerAssetAmount: "100"',
+ );
+ });
+ it('correctly calculates fee adjusted rate', async () => {
+ const feeAdjustedRate = rateUtils.getFeeAdjustedRateOfFeeOrder(testOrder);
+ // the order actually takes 100 takerAsset units to fill (100 - 20) units of makerAsset
+ expect(feeAdjustedRate).to.bignumber.equal(new BigNumber(1.25));
+ });
+ });
+});
diff --git a/packages/order-utils/test/sorting_utils_test.ts b/packages/order-utils/test/sorting_utils_test.ts
new file mode 100644
index 000000000..016432505
--- /dev/null
+++ b/packages/order-utils/test/sorting_utils_test.ts
@@ -0,0 +1,67 @@
+import { BigNumber } from '@0xproject/utils';
+import * as chai from 'chai';
+import 'mocha';
+
+import { sortingUtils } from '../src';
+
+import { chaiSetup } from './utils/chai_setup';
+import { testOrderFactory } from './utils/test_order_factory';
+
+chaiSetup.configure();
+const expect = chai.expect;
+
+describe('sortingUtils', () => {
+ describe('#sortOrdersByFeeAdjustedRate', () => {
+ const feeRate = new BigNumber(1); // ZRX costs 1 unit of takerAsset per 1 unit of ZRX
+ // rate: 2 takerAsset / makerAsset
+ const testOrder1 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(200),
+ });
+ // rate: 1 takerAsset / makerAsset
+ const testOrder2 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(100),
+ });
+ // rate: 2.5 takerAsset / makerAsset
+ const testOrder3 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(200),
+ takerFee: new BigNumber(50),
+ });
+ it('correctly sorts by fee adjusted rate when feeRate is Provided', async () => {
+ const orders = [testOrder1, testOrder2, testOrder3];
+ const sortedOrders = sortingUtils.sortOrdersByFeeAdjustedRate(orders, feeRate);
+ expect(sortedOrders).to.deep.equal([testOrder2, testOrder1, testOrder3]);
+ });
+ it('correctly sorts by fee adjusted rate when no feeRate is Provided', async () => {
+ const orders = [testOrder1, testOrder2, testOrder3];
+ const sortedOrders = sortingUtils.sortOrdersByFeeAdjustedRate(orders);
+ expect(sortedOrders).to.deep.equal([testOrder2, testOrder1, testOrder3]);
+ });
+ });
+ describe('#sortFeeOrdersByFeeAdjustedRate', () => {
+ // rate: 200 takerAsset / makerAsset
+ const testOrder1 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(200),
+ takerFee: new BigNumber(99),
+ });
+ // rate: 1 takerAsset / makerAsset
+ const testOrder2 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(100),
+ });
+ // rate: 4 takerAsset / makerAsset
+ const testOrder3 = testOrderFactory.generateTestSignedOrder({
+ makerAssetAmount: new BigNumber(100),
+ takerAssetAmount: new BigNumber(200),
+ takerFee: new BigNumber(50),
+ });
+ it('correctly sorts by fee adjusted rate', async () => {
+ const orders = [testOrder1, testOrder2, testOrder3];
+ const sortedOrders = sortingUtils.sortFeeOrdersByFeeAdjustedRate(orders);
+ expect(sortedOrders).to.deep.equal([testOrder2, testOrder3, testOrder1]);
+ });
+ });
+});
diff --git a/packages/order-watcher/package.json b/packages/order-watcher/package.json
index ba4fed358..5ce1805e7 100644
--- a/packages/order-watcher/package.json
+++ b/packages/order-watcher/package.json
@@ -67,7 +67,7 @@
"sinon": "^4.0.0",
"source-map-support": "^0.5.0",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/assert": "^1.0.5",
diff --git a/packages/react-docs-example/package.json b/packages/react-docs-example/package.json
index 1701e6adb..001b354d7 100644
--- a/packages/react-docs-example/package.json
+++ b/packages/react-docs-example/package.json
@@ -45,7 +45,7 @@
"source-map-loader": "^0.2.3",
"style-loader": "^0.20.2",
"tslint": "^5.9.1",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"webpack": "^3.11.0",
"webpack-dev-server": "^2.11.1"
},
diff --git a/packages/react-docs/package.json b/packages/react-docs/package.json
index e24ed8e6f..a530e526d 100644
--- a/packages/react-docs/package.json
+++ b/packages/react-docs/package.json
@@ -33,7 +33,7 @@
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
"tslint": "^5.9.1",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/react-shared": "^1.0.6",
diff --git a/packages/react-shared/package.json b/packages/react-shared/package.json
index 9761c246e..6eaac9d07 100644
--- a/packages/react-shared/package.json
+++ b/packages/react-shared/package.json
@@ -32,7 +32,7 @@
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
"tslint": "^5.9.1",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@types/is-mobile": "0.3.0",
diff --git a/packages/sol-compiler/package.json b/packages/sol-compiler/package.json
index 7cb07e970..29b8f9f3a 100644
--- a/packages/sol-compiler/package.json
+++ b/packages/sol-compiler/package.json
@@ -71,7 +71,7 @@
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
"types-bn": "^0.0.1",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"web3-typescript-typings": "^0.10.2",
"zeppelin-solidity": "1.8.0"
},
diff --git a/packages/sol-cov/package.json b/packages/sol-cov/package.json
index 4c3000360..1d98faf8b 100644
--- a/packages/sol-cov/package.json
+++ b/packages/sol-cov/package.json
@@ -89,7 +89,7 @@
"sinon": "^4.0.0",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"publishConfig": {
"access": "public"
diff --git a/packages/sol-resolver/package.json b/packages/sol-resolver/package.json
index 7a3c7509a..46ad8f784 100644
--- a/packages/sol-resolver/package.json
+++ b/packages/sol-resolver/package.json
@@ -30,7 +30,7 @@
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/types": "^1.0.1-rc.4",
diff --git a/packages/sra-report/package.json b/packages/sra-report/package.json
index 42321359c..175a4ca1b 100644
--- a/packages/sra-report/package.json
+++ b/packages/sra-report/package.json
@@ -66,7 +66,7 @@
"nyc": "^11.0.1",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"publishConfig": {
"access": "public"
diff --git a/packages/subproviders/package.json b/packages/subproviders/package.json
index 405b89db3..ab3ae1a5a 100644
--- a/packages/subproviders/package.json
+++ b/packages/subproviders/package.json
@@ -84,7 +84,7 @@
"sinon": "^4.0.0",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"webpack": "^3.1.0"
},
"optionalDependencies": {
diff --git a/packages/testnet-faucets/package.json b/packages/testnet-faucets/package.json
index ce2a1a52d..769fdf371 100644
--- a/packages/testnet-faucets/package.json
+++ b/packages/testnet-faucets/package.json
@@ -43,7 +43,7 @@
"shx": "^0.2.2",
"source-map-loader": "^0.1.6",
"tslint": "5.11.0",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"webpack": "^3.1.0",
"webpack-node-externals": "^1.6.0"
}
diff --git a/packages/tslint-config/package.json b/packages/tslint-config/package.json
index 1cc778caf..6956a9105 100644
--- a/packages/tslint-config/package.json
+++ b/packages/tslint-config/package.json
@@ -39,7 +39,7 @@
"copyfiles": "^1.2.0",
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"lodash": "^4.17.5",
diff --git a/packages/types/package.json b/packages/types/package.json
index c97984e10..6a36b897b 100644
--- a/packages/types/package.json
+++ b/packages/types/package.json
@@ -30,7 +30,7 @@
"make-promises-safe": "^1.1.0",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@types/node": "^8.0.53",
diff --git a/packages/utils/package.json b/packages/utils/package.json
index 0fd925715..c596f0620 100644
--- a/packages/utils/package.json
+++ b/packages/utils/package.json
@@ -40,7 +40,7 @@
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"tslint": "5.11.0",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/types": "^1.0.1-rc.4",
diff --git a/packages/web3-wrapper/package.json b/packages/web3-wrapper/package.json
index 3f9ee9019..437a1c6b5 100644
--- a/packages/web3-wrapper/package.json
+++ b/packages/web3-wrapper/package.json
@@ -61,7 +61,7 @@
"shx": "^0.2.2",
"tslint": "5.11.0",
"typedoc": "0xProject/typedoc",
- "typescript": "2.9.2"
+ "typescript": "3.0.1"
},
"dependencies": {
"@0xproject/assert": "^1.0.5",
diff --git a/packages/website/package.json b/packages/website/package.json
index f4638229d..0fcf9c9b9 100644
--- a/packages/website/package.json
+++ b/packages/website/package.json
@@ -98,7 +98,7 @@
"style-loader": "0.13.x",
"tslint": "5.11.0",
"tslint-config-0xproject": "^0.0.2",
- "typescript": "2.9.2",
+ "typescript": "3.0.1",
"uglifyjs-webpack-plugin": "^1.2.5",
"webpack": "^3.1.0",
"webpack-dev-middleware": "^1.10.0",
diff --git a/yarn.lock b/yarn.lock
index f0214178e..c0fa4bccf 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -13706,9 +13706,9 @@ typescript@2.7.1:
version "2.7.1"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.7.1.tgz#bb3682c2c791ac90e7c6210b26478a8da085c359"
-typescript@2.9.2:
- version "2.9.2"
- resolved "https://registry.yarnpkg.com/typescript/-/typescript-2.9.2.tgz#1cbf61d05d6b96269244eb6a3bce4bd914e0f00c"
+typescript@3.0.1:
+ version "3.0.1"
+ resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.0.1.tgz#43738f29585d3a87575520a4b93ab6026ef11fdb"
typewise-core@^1.2, typewise-core@^1.2.0:
version "1.2.0"