aboutsummaryrefslogtreecommitdiffstats
path: root/packages/migrations/src/v2/migration.ts
diff options
context:
space:
mode:
authorfragosti <francesco.agosti93@gmail.com>2018-06-30 04:27:19 +0800
committerfragosti <francesco.agosti93@gmail.com>2018-06-30 04:27:19 +0800
commite693629bbd2061030fecae80e3566eaa28faad2e (patch)
tree17d70761c92668bb02e6b925a7998cc85b9fff03 /packages/migrations/src/v2/migration.ts
parent0dbe883c3b79b88375ba15b3b8c74c5c72ec684d (diff)
parentcc12bc9247d432b7f1248c8c0aaf9f905fa58d6d (diff)
downloaddexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar.gz
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar.bz2
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar.lz
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar.xz
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.tar.zst
dexon-sol-tools-e693629bbd2061030fecae80e3566eaa28faad2e.zip
Merge branch 'v2-prototype' of https://github.com/0xProject/0x-monorepo into feature/website/portal-onboarding-polish
Diffstat (limited to 'packages/migrations/src/v2/migration.ts')
-rw-r--r--packages/migrations/src/v2/migration.ts32
1 files changed, 27 insertions, 5 deletions
diff --git a/packages/migrations/src/v2/migration.ts b/packages/migrations/src/v2/migration.ts
index f77063a1b..76a31e2a0 100644
--- a/packages/migrations/src/v2/migration.ts
+++ b/packages/migrations/src/v2/migration.ts
@@ -1,3 +1,4 @@
+import { assetProxyUtils, constants } from '@0xproject/order-utils';
import { BigNumber } from '@0xproject/utils';
import { Web3Wrapper } from '@0xproject/web3-wrapper';
import { Provider, TxData } from 'ethereum-types';
@@ -51,7 +52,7 @@ export const runV2MigrationsAsync = async (provider: Provider, artifactsDir: str
artifacts.Exchange,
provider,
txDefaults,
- zrxToken.address,
+ assetProxyUtils.encodeERC20AssetData(zrxToken.address),
);
artifactsWriter.saveArtifact(exchange);
@@ -74,16 +75,37 @@ export const runV2MigrationsAsync = async (provider: Provider, artifactsDir: str
);
artifactsWriter.saveArtifact(assetProxyOwner);
await web3Wrapper.awaitTransactionSuccessAsync(
- await erc20proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, { from: owner }),
+ await erc20proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ }),
);
await web3Wrapper.awaitTransactionSuccessAsync(
- await erc20proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, { from: owner }),
+ await erc20proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, {
+ from: owner,
+ }),
);
await web3Wrapper.awaitTransactionSuccessAsync(
- await erc721proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, { from: owner }),
+ await erc721proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, {
+ from: owner,
+ }),
);
await web3Wrapper.awaitTransactionSuccessAsync(
- await erc721proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, { from: owner }),
+ await erc721proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, {
+ from: owner,
+ }),
+ );
+
+ // Register the Asset Proxies to the Exchange
+ // HACK: These are exposed in the types package but migrations currently uses an older version
+ // but we can pull the asset data id from the proxies
+ const erc20ProxyId = await erc20proxy.getProxyId.callAsync();
+ const erc721ProxyId = await erc721proxy.getProxyId.callAsync();
+ const oldAddress = constants.NULL_ADDRESS;
+ await web3Wrapper.awaitTransactionSuccessAsync(
+ await exchange.registerAssetProxy.sendTransactionAsync(erc20ProxyId, erc20proxy.address, oldAddress),
+ );
+ await web3Wrapper.awaitTransactionSuccessAsync(
+ await exchange.registerAssetProxy.sendTransactionAsync(erc721ProxyId, erc721proxy.address, oldAddress),
);
// Dummy ERC20 tokens