From 424f984ea8dad4ef8959ed4d46559b47535e901b Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Tue, 30 Jul 2019 16:11:45 -0700 Subject: [PATCH 01/12] Add ERC1155Proxy and StaticCallProxy artifacts --- .../artifacts/ERC1155Proxy.json | 254 ++++++++++++++++++ .../artifacts/StaticCallProxy.json | 71 +++++ packages/contract-artifacts/src/index.ts | 4 + packages/contract-artifacts/tsconfig.json | 4 +- 4 files changed, 332 insertions(+), 1 deletion(-) create mode 100644 packages/contract-artifacts/artifacts/ERC1155Proxy.json create mode 100644 packages/contract-artifacts/artifacts/StaticCallProxy.json diff --git a/packages/contract-artifacts/artifacts/ERC1155Proxy.json b/packages/contract-artifacts/artifacts/ERC1155Proxy.json new file mode 100644 index 0000000000..daab773e67 --- /dev/null +++ b/packages/contract-artifacts/artifacts/ERC1155Proxy.json @@ -0,0 +1,254 @@ +{ + "schemaVersion": "2.0.0", + "contractName": "ERC1155Proxy", + "compilerOutput": { + "abi": [ + { + "constant": false, + "inputs": [ + { + "name": "target", + "type": "address" + } + ], + "name": "addAuthorizedAddress", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "uint256" + } + ], + "name": "authorities", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "target", + "type": "address" + } + ], + "name": "removeAuthorizedAddress", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "owner", + "outputs": [ + { + "name": "", + "type": "address" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "target", + "type": "address" + }, + { + "name": "index", + "type": "uint256" + } + ], + "name": "removeAuthorizedAddressAtIndex", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "assetData", + "type": "bytes" + }, + { + "name": "from", + "type": "address" + }, + { + "name": "to", + "type": "address" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getProxyId", + "outputs": [ + { + "name": "", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + }, + { + "constant": true, + "inputs": [ + { + "name": "", + "type": "address" + } + ], + "name": "authorized", + "outputs": [ + { + "name": "", + "type": "bool" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getAuthorizedAddresses", + "outputs": [ + { + "name": "", + "type": "address[]" + } + ], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": false, + "inputs": [ + { + "name": "newOwner", + "type": "address" + } + ], + "name": "transferOwnership", + "outputs": [], + "payable": false, + "stateMutability": "nonpayable", + "type": "function" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "target", + "type": "address" + }, + { + "indexed": true, + "name": "caller", + "type": "address" + } + ], + "name": "AuthorizedAddressAdded", + "type": "event" + }, + { + "anonymous": false, + "inputs": [ + { + "indexed": true, + "name": "target", + "type": "address" + }, + { + "indexed": true, + "name": "caller", + "type": "address" + } + ], + "name": "AuthorizedAddressRemoved", + "type": "event" + } + ], + "devdoc": { + "methods": { + "addAuthorizedAddress(address)": { + "details": "Authorizes an address.", + "params": { + "target": "Address to authorize." + } + }, + "getAuthorizedAddresses()": { + "details": "Gets all authorized addresses.", + "return": "Array of authorized addresses." + }, + "getProxyId()": { + "details": "Gets the proxy id associated with the proxy address.", + "return": "Proxy id." + }, + "removeAuthorizedAddress(address)": { + "details": "Removes authorizion of an address.", + "params": { + "target": "Address to remove authorization from." + } + }, + "removeAuthorizedAddressAtIndex(address,uint256)": { + "details": "Removes authorizion of an address.", + "params": { + "index": "Index of target in authorities array.", + "target": "Address to remove authorization from." + } + }, + "transferFrom(bytes,address,address,uint256)": { + "details": "Transfers batch of ERC1155 assets. Either succeeds or throws.", + "params": { + "amount": "Amount that will be multiplied with each element of `assetData.values` to scale the values that will be transferred.", + "assetData": "Byte array encoded with ERC1155 token address, array of ids, array of values, and callback data.", + "from": "Address to transfer assets from.", + "to": "Address to transfer assets to." + } + } + } + }, + "evm": { + "bytecode": { + "object": "0x6080604052600080546001600160a01b03191633179055611415806100256000396000f3fe608060405234801561001057600080fd5b50600436106100be5760003560e01c8063a85e59e411610076578063b91816111161005b578063b918161114610285578063d39de6e9146102cc578063f2fde38b14610324576100be565b8063a85e59e4146101b2578063ae25532e14610248576100be565b806370712939116100a7578063707129391461013e5780638da5cb5b146101715780639ad2674414610179576100be565b806342f1181e146100c3578063494503d4146100f8575b600080fd5b6100f6600480360360208110156100d957600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610357565b005b6101156004803603602081101561010e57600080fd5b5035610543565b6040805173ffffffffffffffffffffffffffffffffffffffff9092168252519081900360200190f35b6100f66004803603602081101561015457600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610577565b61011561086a565b6100f66004803603604081101561018f57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff8135169060200135610886565b6100f6600480360360808110156101c857600080fd5b8101906020810181356401000000008111156101e357600080fd5b8201836020820111156101f557600080fd5b8035906020019184600183028401116401000000008311171561021757600080fd5b919350915073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610c37565b61025061105f565b604080517fffffffff000000000000000000000000000000000000000000000000000000009092168252519081900360200190f35b6102b86004803603602081101561029b57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611080565b604080519115158252519081900360200190f35b6102d4611095565b60408051602080825283518183015283519192839290830191858101910280838360005b838110156103105781810151838201526020016102f8565b505050509050019250505060405180910390f35b6100f66004803603602081101561033a57600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16611104565b60005473ffffffffffffffffffffffffffffffffffffffff1633146103dd57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f4e4c595f434f4e54524143545f4f574e455200000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604090205460ff161561047257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601960248201527f5441524745545f414c52454144595f415554484f52495a454400000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116600081815260016020819052604080832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00168317905560028054928301815583527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace90910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001684179055513392917f3147867c59d17e8fa9d522465651d44aae0a9e38f902f3475b97e58072f0ed4c91a350565b6002818154811061055057fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16905081565b60005473ffffffffffffffffffffffffffffffffffffffff1633146105fd57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f4e4c595f434f4e54524143545f4f574e455200000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff811660009081526001602052604090205460ff1661069157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f5441524745545f4e4f545f415554484f52495a45440000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116600090815260016020526040812080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690555b600254811015610823578173ffffffffffffffffffffffffffffffffffffffff166002828154811061070b57fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff16141561081b57600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff810190811061076357fe5b6000918252602090912001546002805473ffffffffffffffffffffffffffffffffffffffff909216918390811061079657fe5b600091825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff01906108159082611369565b50610823565b6001016106dd565b50604051339073ffffffffffffffffffffffffffffffffffffffff8316907f1f32c1b084e2de0713b8fb16bd46bb9df710a3dbeae2f3ca93af46e016dcc6b090600090a350565b60005473ffffffffffffffffffffffffffffffffffffffff1681565b60005473ffffffffffffffffffffffffffffffffffffffff16331461090c57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f4e4c595f434f4e54524143545f4f574e455200000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff821660009081526001602052604090205460ff166109a057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f5441524745545f4e4f545f415554484f52495a45440000000000000000000000604482015290519081900360640190fd5b6002548110610a1057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f494e4445585f4f55545f4f465f424f554e445300000000000000000000000000604482015290519081900360640190fd5b8173ffffffffffffffffffffffffffffffffffffffff1660028281548110610a3457fe5b60009182526020909120015473ffffffffffffffffffffffffffffffffffffffff1614610ac257604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601b60248201527f415554484f52495a45445f414444524553535f4d49534d415443480000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8216600090815260016020526040902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8101908110610b3d57fe5b6000918252602090912001546002805473ffffffffffffffffffffffffffffffffffffffff9092169183908110610b7057fe5b600091825260209091200180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055600280547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190610bef9082611369565b50604051339073ffffffffffffffffffffffffffffffffffffffff8416907f1f32c1b084e2de0713b8fb16bd46bb9df710a3dbeae2f3ca93af46e016dcc6b090600090a35050565b3360009081526001602052604090205460ff16610cb557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601560248201527f53454e4445525f4e4f545f415554484f52495a45440000000000000000000000604482015290519081900360640190fd5b60006060806060610d0b60048a8a90508b8b8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505063ffffffff6111ea169050565b8060200190516080811015610d1f57600080fd5b815160208301805191939283019291640100000000811115610d4057600080fd5b82016020810184811115610d5357600080fd5b8151856020820283011164010000000082111715610d7057600080fd5b50509291906020018051640100000000811115610d8c57600080fd5b82016020810184811115610d9f57600080fd5b8151856020820283011164010000000082111715610dbc57600080fd5b50509291906020018051640100000000811115610dd857600080fd5b82016020810184811115610deb57600080fd5b8151640100000000811182820187101715610e0557600080fd5b50509291905050509350935093509350600082519050606081604051908082528060200260200182016040528015610e47578160200160208202803883390190505b50905060005b828114610e9057610e71858281518110610e6357fe5b6020026020010151896112d7565b828281518110610e7d57fe5b6020908102919091010152600101610e4d565b508573ffffffffffffffffffffffffffffffffffffffff16632eb2c2d68a8a8885886040518663ffffffff1660e01b8152600401808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020018573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018060200180602001848103845287818151815260200191508051906020019060200280838360005b83811015610f6d578181015183820152602001610f55565b50505050905001848103835286818151815260200191508051906020019060200280838360005b83811015610fac578181015183820152602001610f94565b50505050905001848103825285818151815260200191508051906020019080838360005b83811015610fe8578181015183820152602001610fd0565b50505050905090810190601f1680156110155780820380516001836020036101000a031916815260200191505b5098505050505050505050600060405180830381600087803b15801561103a57600080fd5b505af115801561104e573d6000803e3d6000fd5b505050505050505050505050505050565b600060405180806113b1603091396030019050604051809103902090505b90565b60016020526000908152604090205460ff1681565b606060028054806020026020016040519081016040528092919081815260200182805480156110fa57602002820191906000526020600020905b815473ffffffffffffffffffffffffffffffffffffffff1681526001909101906020018083116110cf575b5050505050905090565b60005473ffffffffffffffffffffffffffffffffffffffff16331461118a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601360248201527f4f4e4c595f434f4e54524143545f4f574e455200000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8116156111e757600080547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83161790555b50565b60608183111561125b57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f46524f4d5f4c4553535f5448414e5f544f5f5245515549524544000000000000604482015290519081900360640190fd5b83518211156112cb57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f544f5f4c4553535f5448414e5f4c454e4754485f524551554952454400000000604482015290519081900360640190fd5b50819003910190815290565b6000826112e657506000611363565b828202828482816112f357fe5b041461136057604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b90505b92915050565b81548183558181111561138d5760008381526020902061138d918101908301611392565b505050565b61107d91905b808211156113ac5760008155600101611398565b509056fe4552433131353541737365747328616464726573732c75696e743235365b5d2c75696e743235365b5d2c627974657329a265627a7a72305820830991568a081d2cfe3ad4a799bd1c9607c221a03df4b84012916e981b3503e564736f6c634300050a0032" + } + } + }, + "networks": {} +} diff --git a/packages/contract-artifacts/artifacts/StaticCallProxy.json b/packages/contract-artifacts/artifacts/StaticCallProxy.json new file mode 100644 index 0000000000..60c01bc043 --- /dev/null +++ b/packages/contract-artifacts/artifacts/StaticCallProxy.json @@ -0,0 +1,71 @@ +{ + "schemaVersion": "2.0.0", + "contractName": "StaticCallProxy", + "compilerOutput": { + "abi": [ + { + "constant": true, + "inputs": [ + { + "name": "assetData", + "type": "bytes" + }, + { + "name": "from", + "type": "address" + }, + { + "name": "to", + "type": "address" + }, + { + "name": "amount", + "type": "uint256" + } + ], + "name": "transferFrom", + "outputs": [], + "payable": false, + "stateMutability": "view", + "type": "function" + }, + { + "constant": true, + "inputs": [], + "name": "getProxyId", + "outputs": [ + { + "name": "", + "type": "bytes4" + } + ], + "payable": false, + "stateMutability": "pure", + "type": "function" + } + ], + "devdoc": { + "methods": { + "getProxyId()": { + "details": "Gets the proxy id associated with the proxy address.", + "return": "Proxy id." + }, + "transferFrom(bytes,address,address,uint256)": { + "details": "Makes a staticcall to a target address and verifies that the data returned matches the expected return data.", + "params": { + "amount": "This value is ignored.", + "assetData": "Byte array encoded with staticCallTarget, staticCallData, and expectedCallResultHash", + "from": "This value is ignored.", + "to": "This value is ignored." + } + } + } + }, + "evm": { + "bytecode": { + "object": "0x608060405234801561001057600080fd5b506104a1806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c8063a85e59e41461003b578063ae25532e146100d3575b600080fd5b6100d16004803603608081101561005157600080fd5b81019060208101813564010000000081111561006c57600080fd5b82018360208201111561007e57600080fd5b803590602001918460018302840111640100000000831117156100a057600080fd5b919350915073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610110565b005b6100db61033e565b604080517fffffffff000000000000000000000000000000000000000000000000000000009092168252519081900360200190f35b6000606060006101656004898990508a8a8080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525092949392505063ffffffff61035e169050565b806020019051606081101561017957600080fd5b81516020830180519193928301929164010000000081111561019a57600080fd5b820160208101848111156101ad57600080fd5b81516401000000008111828201871017156101c757600080fd5b5050602091820151604051825196995091975095506000946060945073ffffffffffffffffffffffffffffffffffffffff8916935087928291908401908083835b6020831061024557805182527fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe09092019160209182019101610208565b6001836020036101000a038019825116818451168082178552505050505050905001915050600060405180830381855afa9150503d80600081146102a5576040519150601f19603f3d011682016040523d82523d6000602084013e6102aa565b606091505b5091509150816102bc57805160208201fd5b8051602082012083811461033157604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f554e45585045435445445f5354415449435f43414c4c5f524553554c54000000604482015290519081900360640190fd5b5050505050505050505050565b6000604051808061044c6021913960210190506040518091039020905090565b6060818311156103cf57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f46524f4d5f4c4553535f5448414e5f544f5f5245515549524544000000000000604482015290519081900360640190fd5b835182111561043f57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f544f5f4c4553535f5448414e5f4c454e4754485f524551554952454400000000604482015290519081900360640190fd5b5081900391019081529056fe53746174696343616c6c28616464726573732c62797465732c6279746573333229a265627a7a723058202a9eb09d75997d78128bcdbbcc5078907fc01fd97b218cd94a4e7600375d488664736f6c634300050a0032" + } + } + }, + "networks": {} +} diff --git a/packages/contract-artifacts/src/index.ts b/packages/contract-artifacts/src/index.ts index 431bf64f6a..4b41a79dcd 100644 --- a/packages/contract-artifacts/src/index.ts +++ b/packages/contract-artifacts/src/index.ts @@ -4,6 +4,7 @@ import * as CoordinatorRegistry from '../artifacts/CoordinatorRegistry.json'; import * as DummyERC20Token from '../artifacts/DummyERC20Token.json'; import * as DummyERC721Token from '../artifacts/DummyERC721Token.json'; import * as DutchAuction from '../artifacts/DutchAuction.json'; +import * as ERC1155Proxy from '../artifacts/ERC1155Proxy.json'; import * as ERC20Proxy from '../artifacts/ERC20Proxy.json'; import * as ERC20Token from '../artifacts/ERC20Token.json'; import * as ERC721Proxy from '../artifacts/ERC721Proxy.json'; @@ -16,6 +17,7 @@ import * as IValidator from '../artifacts/IValidator.json'; import * as IWallet from '../artifacts/IWallet.json'; import * as MultiAssetProxy from '../artifacts/MultiAssetProxy.json'; import * as OrderValidator from '../artifacts/OrderValidator.json'; +import * as StaticCallProxy from '../artifacts/StaticCallProxy.json'; import * as WETH9 from '../artifacts/WETH9.json'; import * as ZRXToken from '../artifacts/ZRXToken.json'; @@ -24,6 +26,7 @@ export { DutchAuction, DummyERC20Token, DummyERC721Token, + ERC1155Proxy, ERC20Proxy, ERC20Token, ERC721Proxy, @@ -35,6 +38,7 @@ export { IWallet, MultiAssetProxy, OrderValidator, + StaticCallProxy, WETH9, ZRXToken, Coordinator, diff --git a/packages/contract-artifacts/tsconfig.json b/packages/contract-artifacts/tsconfig.json index 9360e137ed..196fa39163 100644 --- a/packages/contract-artifacts/tsconfig.json +++ b/packages/contract-artifacts/tsconfig.json @@ -26,6 +26,8 @@ "./artifacts/ZRXToken.json", "./artifacts/CoordinatorRegistry.json", "./artifacts/Coordinator.json", - "./artifacts/EthBalanceChecker.json" + "./artifacts/EthBalanceChecker.json", + "./artifacts/ERC1155Proxy.json", + "./artifacts/StaticCallProxy.json" ] } From b164557165404f4544506364cf9ec51b8ea19df4 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Tue, 30 Jul 2019 21:28:34 -0700 Subject: [PATCH 02/12] Add ERC1155Proxy and StaticCallProxy to build --- packages/abi-gen-wrappers/package.json | 2 +- packages/abi-gen-wrappers/src/index.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/abi-gen-wrappers/package.json b/packages/abi-gen-wrappers/package.json index 51abb1eb5e..5cd33c2538 100644 --- a/packages/abi-gen-wrappers/package.json +++ b/packages/abi-gen-wrappers/package.json @@ -21,7 +21,7 @@ "generate_contract_wrappers": "abi-gen --abis ${npm_package_config_abis} --template ../../node_modules/@0x/abi-gen-templates/contract.handlebars --partials '../../node_modules/@0x/abi-gen-templates/partials/**/*.handlebars' --output src/generated-wrappers --backend ethers" }, "config": { - "abis": "../contract-artifacts/artifacts/@(AssetProxyOwner|DutchAuction|DummyERC20Token|DummyERC721Token|ERC20Proxy|ERC20Token|ERC721Proxy|ERC721Token|Exchange|Forwarder|IAssetProxy|IValidator|IWallet|MultiAssetProxy|OrderValidator|WETH9|ZRXToken|Coordinator|CoordinatorRegistry|EthBalanceChecker).json" + "abis": "../contract-artifacts/artifacts/@(AssetProxyOwner|DutchAuction|DummyERC20Token|DummyERC721Token|ERC20Proxy|ERC20Token|ERC721Proxy|ERC721Token|Exchange|Forwarder|IAssetProxy|IValidator|IWallet|MultiAssetProxy|OrderValidator|WETH9|ZRXToken|Coordinator|CoordinatorRegistry|EthBalanceChecker|ERC1155Proxy|StaticCallProxy).json" }, "repository": { "type": "git", diff --git a/packages/abi-gen-wrappers/src/index.ts b/packages/abi-gen-wrappers/src/index.ts index 7c610993bc..17af9d43d6 100644 --- a/packages/abi-gen-wrappers/src/index.ts +++ b/packages/abi-gen-wrappers/src/index.ts @@ -2,6 +2,7 @@ export * from './generated-wrappers/asset_proxy_owner'; export * from './generated-wrappers/dummy_erc20_token'; export * from './generated-wrappers/dummy_erc721_token'; export * from './generated-wrappers/dutch_auction'; +export * from './generated-wrappers/erc1155_proxy'; export * from './generated-wrappers/erc20_proxy'; export * from './generated-wrappers/erc20_token'; export * from './generated-wrappers/erc721_proxy'; @@ -13,6 +14,7 @@ export * from './generated-wrappers/i_validator'; export * from './generated-wrappers/i_wallet'; export * from './generated-wrappers/multi_asset_proxy'; export * from './generated-wrappers/order_validator'; +export * from './generated-wrappers/static_call_proxy'; export * from './generated-wrappers/weth9'; export * from './generated-wrappers/zrx_token'; export * from './generated-wrappers/coordinator'; From 9325bb70c57d049d51d3d3021e1772f3cd08be43 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Tue, 30 Jul 2019 21:29:20 -0700 Subject: [PATCH 03/12] Add testnet addresses --- packages/contract-addresses/src/index.ts | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/packages/contract-addresses/src/index.ts b/packages/contract-addresses/src/index.ts index aa3ff7835c..4ab4e0c69a 100644 --- a/packages/contract-addresses/src/index.ts +++ b/packages/contract-addresses/src/index.ts @@ -12,6 +12,9 @@ export interface ContractAddresses { dutchAuction: string; coordinatorRegistry: string; coordinator: string; + multiAssetProxy: string; + staticCallProxy: string; + erc1155Proxy: string; } export enum NetworkId { @@ -37,6 +40,9 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { dutchAuction: '0xa3856622276a64fee0f17f67329fac24368d4aae', coordinatorRegistry: '0x45797531b873fd5e519477a070a955764c1a5b07', coordinator: '0xa14857e8930acd9a882d33ec20559beb5479c8a6', + multiAssetProxy: '0xef701d5389ae74503d633396c4d654eabedc9d78', + staticCallProxy: NULL_ADDRESS, + erc1155Proxy: NULL_ADDRESS, }, 3: { erc20Proxy: '0xb1408f4c245a23c31b98d2c626777d4c0d766caa', @@ -50,6 +56,9 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { dutchAuction: '0xe5f862f7811af180990025b6259b02feb0a0b8dc', coordinatorRegistry: '0x403cc23e88c17c4652fb904784d1af640a6722d9', coordinator: '0x2ba02e03ee0029311e0f43715307870a3e701b53', + multiAssetProxy: '0xab8fbd189c569ccdee3a4d929bb7f557be4028f6', + staticCallProxy: '0xe1b97e47aa3796276033a5341e884d2ba46b6ac1', + erc1155Proxy: '0x19bb6caa3bc34d39e5a23cedfa3e6c7e7f3c931d', }, 4: { exchange: '0xbff9493f92a3df4b0429b6d00743b3cfb4c85831', @@ -63,6 +72,9 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { dutchAuction: '0xe5f862f7811af180990025b6259b02feb0a0b8dc', coordinatorRegistry: '0x1084b6a398e47907bae43fec3ff4b677db6e4fee', coordinator: '0x2ba02e03ee0029311e0f43715307870a3e701b53', + multiAssetProxy: '0xb34cde0ad3a83d04abebc0b66e75196f22216621', + staticCallProxy: '0xe1b97e47aa3796276033a5341e884d2ba46b6ac1', + erc1155Proxy: '0x19bb6caa3bc34d39e5a23cedfa3e6c7e7f3c931d', }, 42: { erc20Proxy: '0xf1ec01d6236d3cd881a0bf0130ea25fe4234003e', @@ -76,6 +88,9 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { dutchAuction: '0xe5f862f7811af180990025b6259b02feb0a0b8dc', coordinatorRegistry: '0x09fb99968c016a3ff537bf58fb3d9fe55a7975d5', coordinator: '0x2ba02e03ee0029311e0f43715307870a3e701b53', + multiAssetProxy: '0xf6313a772c222f51c28f2304c0703b8cf5428fd8', + staticCallProxy: '0x48e94bdb9033640d45ea7c721e25f380f8bffa43', + erc1155Proxy: '0x64517fa2b480ba3678a2a3c0cf08ef7fd4fad36f', }, // NetworkId 50 represents our Ganache snapshot generated from migrations. 50: { @@ -90,6 +105,9 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { dutchAuction: '0x7e3f4e1deb8d3a05d9d2da87d9521268d0ec3239', coordinatorRegistry: '0xaa86dda78e9434aca114b6676fc742a18d15a1cc', coordinator: '0x4d3d5c850dd5bd9d6f4adda3dd039a3c8054ca29', + multiAssetProxy: NULL_ADDRESS, + staticCallProxy: NULL_ADDRESS, + erc1155Proxy: NULL_ADDRESS, }, }; From fe4c5434fa6f2171f8056fe074cab7e305afd7eb Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Wed, 31 Jul 2019 15:53:34 +1000 Subject: [PATCH 04/12] Update migration --- packages/migrations/CHANGELOG.json | 9 +++++++ packages/migrations/src/migration.ts | 39 ++++++++++++++++++++++++++++ 2 files changed, 48 insertions(+) diff --git a/packages/migrations/CHANGELOG.json b/packages/migrations/CHANGELOG.json index 05547146fe..b3878abaf2 100644 --- a/packages/migrations/CHANGELOG.json +++ b/packages/migrations/CHANGELOG.json @@ -1,4 +1,13 @@ [ + { + "version": "4.1.12", + "changes": [ + { + "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", + "pr": 2021 + } + ] + }, { "version": "4.1.11", "changes": [ diff --git a/packages/migrations/src/migration.ts b/packages/migrations/src/migration.ts index f637fb6e7e..4ca5a3bcb3 100644 --- a/packages/migrations/src/migration.ts +++ b/packages/migrations/src/migration.ts @@ -91,6 +91,21 @@ export async function runMigrationsAsync( erc721TokenInfo[0].symbol, ); + // 1155 Asset Proxy + const erc1155Proxy = await wrappers.ERC1155ProxyContract.deployFrom0xArtifactAsync( + artifacts.ERC1155Proxy, + provider, + txDefaults, + artifacts, + ); + + const staticCallProxy = await wrappers.StaticCallProxyContract.deployFrom0xArtifactAsync( + artifacts.StaticCallProxy, + provider, + txDefaults, + artifacts, + ); + const multiAssetProxy = await wrappers.MultiAssetProxyContract.deployFrom0xArtifactAsync( artifacts.MultiAssetProxy, provider, @@ -104,6 +119,9 @@ export async function runMigrationsAsync( await web3Wrapper.awaitTransactionSuccessAsync( await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await erc1155Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, txDefaults), + ); await web3Wrapper.awaitTransactionSuccessAsync( await multiAssetProxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, txDefaults), ); @@ -115,12 +133,21 @@ export async function runMigrationsAsync( await web3Wrapper.awaitTransactionSuccessAsync( await erc721Proxy.addAuthorizedAddress.sendTransactionAsync(multiAssetProxy.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await erc1155Proxy.addAuthorizedAddress.sendTransactionAsync(multiAssetProxy.address, txDefaults), + ); await web3Wrapper.awaitTransactionSuccessAsync( await multiAssetProxy.registerAssetProxy.sendTransactionAsync(erc20Proxy.address, txDefaults), ); await web3Wrapper.awaitTransactionSuccessAsync( await multiAssetProxy.registerAssetProxy.sendTransactionAsync(erc721Proxy.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await multiAssetProxy.registerAssetProxy.sendTransactionAsync(erc1155Proxy.address, txDefaults), + ); + await web3Wrapper.awaitTransactionSuccessAsync( + await multiAssetProxy.registerAssetProxy.sendTransactionAsync(staticCallProxy.address, txDefaults), + ); // Register the Asset Proxies to the Exchange await web3Wrapper.awaitTransactionSuccessAsync( @@ -129,9 +156,15 @@ export async function runMigrationsAsync( await web3Wrapper.awaitTransactionSuccessAsync( await exchange.registerAssetProxy.sendTransactionAsync(erc721Proxy.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await exchange.registerAssetProxy.sendTransactionAsync(erc1155Proxy.address, txDefaults), + ); await web3Wrapper.awaitTransactionSuccessAsync( await exchange.registerAssetProxy.sendTransactionAsync(multiAssetProxy.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await exchange.registerAssetProxy.sendTransactionAsync(staticCallProxy.address, txDefaults), + ); // Forwarder const forwarder = await wrappers.ForwarderContract.deployFrom0xArtifactAsync( @@ -188,6 +221,9 @@ export async function runMigrationsAsync( await web3Wrapper.awaitTransactionSuccessAsync( await erc721Proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, txDefaults), ); + await web3Wrapper.awaitTransactionSuccessAsync( + await erc1155Proxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, txDefaults), + ); await web3Wrapper.awaitTransactionSuccessAsync( await multiAssetProxy.transferOwnership.sendTransactionAsync(assetProxyOwner.address, txDefaults), ); @@ -219,6 +255,7 @@ export async function runMigrationsAsync( const contractAddresses = { erc20Proxy: erc20Proxy.address, erc721Proxy: erc721Proxy.address, + erc1155Proxy: erc1155Proxy.address, zrxToken: zrxToken.address, etherToken: etherToken.address, exchange: exchange.address, @@ -228,6 +265,8 @@ export async function runMigrationsAsync( dutchAuction: dutchAuction.address, coordinatorRegistry: coordinatorRegistry.address, coordinator: coordinator.address, + multiAssetProxy: multiAssetProxy.address, + staticCallProxy: staticCallProxy.address, }; return contractAddresses; From 4303f9a025fe9abcc610d227370c9a9e096df9e5 Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Wed, 31 Jul 2019 17:13:50 +1000 Subject: [PATCH 05/12] Add Ganache addresses to contract-addresses --- packages/contract-addresses/CHANGELOG.json | 9 +++++++++ packages/contract-addresses/src/index.ts | 18 +++++++++--------- packages/migrations/CHANGELOG.json | 13 ++++--------- 3 files changed, 22 insertions(+), 18 deletions(-) diff --git a/packages/contract-addresses/CHANGELOG.json b/packages/contract-addresses/CHANGELOG.json index 79a44ddddc..45483d4be0 100644 --- a/packages/contract-addresses/CHANGELOG.json +++ b/packages/contract-addresses/CHANGELOG.json @@ -1,4 +1,13 @@ [ + { + "version": "3.0.3", + "changes": [ + { + "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", + "pr": 2021 + } + ] + }, { "version": "3.0.2", "changes": [ diff --git a/packages/contract-addresses/src/index.ts b/packages/contract-addresses/src/index.ts index 4ab4e0c69a..65cc05d675 100644 --- a/packages/contract-addresses/src/index.ts +++ b/packages/contract-addresses/src/index.ts @@ -96,18 +96,18 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { 50: { erc20Proxy: '0x1dc4c1cefef38a777b15aa20260a54e584b16c48', erc721Proxy: '0x1d7022f5b17d2f8b695918fb48fa1089c9f85401', + erc1155Proxy: '0x6a4a62e5a7ed13c361b176a5f62c2ee620ac0df8', zrxToken: '0x871dd7c2b4b25e1aa18728e9d5f2af4c4e431f5c', etherToken: '0x0b1ba0af832d7c05fd64161e0db78e85978e8082', exchange: '0x48bacb9266a570d521063ef5dd96e61686dbe788', - assetProxyOwner: '0x04b5dadd2c0d6a261bfafbc964e0cac48585def3', - forwarder: '0x6000eca38b8b5bba64986182fe2a69c57f6b5414', - orderValidator: '0x32eecaf51dfea9618e9bc94e9fbfddb1bbdcba15', - dutchAuction: '0x7e3f4e1deb8d3a05d9d2da87d9521268d0ec3239', - coordinatorRegistry: '0xaa86dda78e9434aca114b6676fc742a18d15a1cc', - coordinator: '0x4d3d5c850dd5bd9d6f4adda3dd039a3c8054ca29', - multiAssetProxy: NULL_ADDRESS, - staticCallProxy: NULL_ADDRESS, - erc1155Proxy: NULL_ADDRESS, + assetProxyOwner: '0x8d42e38980ce74736c21c059b2240df09958d3c8', + forwarder: '0xaa86dda78e9434aca114b6676fc742a18d15a1cc', + orderValidator: '0x4d3d5c850dd5bd9d6f4adda3dd039a3c8054ca29', + dutchAuction: '0xa31e64ea55b9b6bbb9d6a676738e9a5b23149f84', + coordinatorRegistry: '0x1941ff73d1154774d87521d2d0aaad5d19c8df60', + coordinator: '0x0d8b0dd11f5d34ed41d556def5f841900d5b1c6b', + multiAssetProxy: '0xcfc18cec799fbd1793b5c43e773c98d4d61cc2db', + staticCallProxy: '0x6dfff22588be9b3ef8cf0ad6dc9b84796f9fb45f', }, }; diff --git a/packages/migrations/CHANGELOG.json b/packages/migrations/CHANGELOG.json index b3878abaf2..63d44efb1c 100644 --- a/packages/migrations/CHANGELOG.json +++ b/packages/migrations/CHANGELOG.json @@ -1,19 +1,14 @@ [ - { - "version": "4.1.12", - "changes": [ - { - "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", - "pr": 2021 - } - ] - }, { "version": "4.1.11", "changes": [ { "note": "Updated calls to .deploy0xArtifactAsync to include log decode dependencies.", "pr": 1995 + }, + { + "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", + "pr": 2021 } ], "timestamp": 1564604963 From 5d7803323c1ca67904f0545689daa5e7dc277013 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Wed, 31 Jul 2019 13:45:34 -0700 Subject: [PATCH 06/12] Add script that tests deployed contract configs --- packages/migrations/package.json | 3 +- .../migrations/src/test_contract_configs.ts | 167 ++++++++++++++++++ 2 files changed, 169 insertions(+), 1 deletion(-) create mode 100644 packages/migrations/src/test_contract_configs.ts diff --git a/packages/migrations/package.json b/packages/migrations/package.json index b795b7f474..f9c45de334 100644 --- a/packages/migrations/package.json +++ b/packages/migrations/package.json @@ -21,7 +21,8 @@ "build:snapshot": "rm -rf ${npm_package_config_snapshot_name} && yarn migrate:v2:snapshot && zip -r \"${npm_package_config_snapshot_name}-${npm_package_version}.zip\" ${npm_package_config_snapshot_name}", "build:snapshot:docker": "docker build --tag ${npm_package_config_docker_snapshot_name}:${npm_package_version} --tag ${npm_package_config_docker_snapshot_name}:latest .", "publish:snapshot": "aws s3 cp ${npm_package_config_snapshot_name}-${npm_package_version}.zip ${npm_package_config_s3_snapshot_bucket} && aws s3 cp ${npm_package_config_s3_snapshot_bucket}/${npm_package_config_snapshot_name}-${npm_package_version}.zip ${npm_package_config_s3_snapshot_bucket}/${npm_package_config_snapshot_name}-latest.zip", - "publish:snapshot:docker": "docker push ${npm_package_config_docker_snapshot_name}:latest" + "publish:snapshot:docker": "docker push ${npm_package_config_docker_snapshot_name}:latest", + "test_contract_configs": "node ./lib/test_contract_configs.js" }, "config": { "s3_snapshot_bucket": "s3://ganache-snapshots.0x.org", diff --git a/packages/migrations/src/test_contract_configs.ts b/packages/migrations/src/test_contract_configs.ts new file mode 100644 index 0000000000..815e9e2cd1 --- /dev/null +++ b/packages/migrations/src/test_contract_configs.ts @@ -0,0 +1,167 @@ +#!/usr/bin/env node +import * as wrappers from '@0x/abi-gen-wrappers'; +import { getContractAddressesForNetworkOrThrow } from '@0x/contract-addresses'; +import { EmptyWalletSubprovider, RPCSubprovider, Web3ProviderEngine } from '@0x/subproviders'; +import { AssetProxyId } from '@0x/types'; +import { logUtils, providerUtils } from '@0x/utils'; +import { Web3Wrapper } from '@0x/web3-wrapper'; +import { SupportedProvider } from 'ethereum-types'; + +const networkIdToRpcUrl = { + 1: 'https://mainnet.infura.io/v3/', + 3: 'https://ropsten.infura.io/v3/', + 4: 'https://rinkeby.infura.io/v3/', + 42: 'https://kovan.infura.io/v3/', +}; + +async function testContractConfigsAsync(provider: SupportedProvider): Promise { + const web3Wrapper = new Web3Wrapper(provider); + const networkId = await web3Wrapper.getNetworkIdAsync(); + const addresses = getContractAddressesForNetworkOrThrow(networkId); + + function warnIfMismatch(actual: any, expected: any, message: string): void { + if (actual !== expected) { + logUtils.warn(`${message}: actual: ${actual}, expected: ${expected}, networkId: ${networkId}`); + } + } + + const exchange = new wrappers.ExchangeContract(addresses.exchange, provider); + const erc20Proxy = new wrappers.ERC20ProxyContract(addresses.erc20Proxy, provider); + const erc721Proxy = new wrappers.ERC721ProxyContract(addresses.erc721Proxy, provider); + const erc1155Proxy = new wrappers.ERC1155ProxyContract(addresses.erc1155Proxy, provider); + const multiAssetProxy = new wrappers.MultiAssetProxyContract(addresses.multiAssetProxy, provider); + const assetProxyOwner = new wrappers.AssetProxyOwnerContract(addresses.assetProxyOwner, provider); + + // Verify Exchange configs + const exchangeOwner = await exchange.owner.callAsync(); + warnIfMismatch(exchangeOwner, assetProxyOwner.address, 'Unexpected Exchange owner'); + + const registeredERC20Proxy = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC20); + warnIfMismatch(registeredERC20Proxy, erc20Proxy.address, 'Unexpected ERC20Proxy registered in Exchange'); + + const registeredERC721Proxy = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC721); + warnIfMismatch(registeredERC721Proxy, erc721Proxy.address, 'Unexpected ERC721Proxy registered in Exchange'); + + const registeredERC1155Proxy = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC1155); + warnIfMismatch(registeredERC1155Proxy, erc1155Proxy.address, 'Unexpected ERC1155Proxy registered in Exchange'); + + const registeredMultiAssetProxy = await exchange.getAssetProxy.callAsync(AssetProxyId.MultiAsset); + warnIfMismatch( + registeredMultiAssetProxy, + multiAssetProxy.address, + 'Unexpected MultiAssetProxy registered in Exchange', + ); + + const registeredStaticCallProxy = await exchange.getAssetProxy.callAsync(AssetProxyId.StaticCall); + warnIfMismatch( + registeredStaticCallProxy, + addresses.staticCallProxy, + 'Unexpected StaticCallProxy registered in Exchange', + ); + + // Verify ERC20Proxy configs + const erc20ProxyOwner = await erc20Proxy.owner.callAsync(); + warnIfMismatch(erc20ProxyOwner, assetProxyOwner.address, 'Unexpected ERC20Proxy owner'); + + const erc20AuthorizedAddresses = await erc20Proxy.getAuthorizedAddresses.callAsync(); + warnIfMismatch(erc20AuthorizedAddresses.length, 2, 'Unexpected number of authorized addresses in ERC20Proxy'); + + const isExchangeAuthorizedInERC20Proxy = await erc20Proxy.authorized.callAsync(exchange.address); + warnIfMismatch(isExchangeAuthorizedInERC20Proxy, true, 'Exchange not authorized in ERC20Proxy'); + + const isMAPAuthorizedInER20Proxy = await erc20Proxy.authorized.callAsync(multiAssetProxy.address); + warnIfMismatch(isMAPAuthorizedInER20Proxy, true, 'MultiAssetProxy not authorized in ERC20Proxy'); + + // Verify ERC721Proxy configs + const erc721ProxyOwner = await erc721Proxy.owner.callAsync(); + warnIfMismatch(erc721ProxyOwner, assetProxyOwner.address, 'Unexpected ERC721Proxy owner'); + + const erc721AuthorizedAddresses = await erc721Proxy.getAuthorizedAddresses.callAsync(); + warnIfMismatch(erc721AuthorizedAddresses.length, 2, 'Unexpected number of authorized addresses in ERC721Proxy'); + + const isExchangeAuthorizedInERC721Proxy = await erc721Proxy.authorized.callAsync(exchange.address); + warnIfMismatch(isExchangeAuthorizedInERC721Proxy, true, 'Exchange not authorized in ERC721Proxy'); + + const isMAPAuthorizedInER721Proxy = await erc721Proxy.authorized.callAsync(multiAssetProxy.address); + warnIfMismatch(isMAPAuthorizedInER721Proxy, true, 'MultiAssetProxy not authorized in ERC721Proxy'); + + // Verify ERC1155Proxy configs + const erc1155ProxyOwner = await erc1155Proxy.owner.callAsync(); + warnIfMismatch(erc1155ProxyOwner, assetProxyOwner.address, 'Unexpected ERC1155Proxy owner'); + + const erc1155AuthorizedAddresses = await erc1155Proxy.getAuthorizedAddresses.callAsync(); + warnIfMismatch(erc1155AuthorizedAddresses.length, 2, 'Unexpected number of authorized addresses in ERC1155Proxy'); + + const isExchangeAuthorizedInERC1155Proxy = await erc1155Proxy.authorized.callAsync(exchange.address); + warnIfMismatch(isExchangeAuthorizedInERC1155Proxy, true, 'Exchange not authorized in ERC1155Proxy'); + + const isMAPAuthorizedInER1155Proxy = await erc1155Proxy.authorized.callAsync(multiAssetProxy.address); + warnIfMismatch(isMAPAuthorizedInER1155Proxy, true, 'MultiAssetProxy not authorized in ERC1155Proxy'); + + // Verify MultiAssetProxy configs + const multiAssetProxyOwner = await multiAssetProxy.owner.callAsync(); + warnIfMismatch(multiAssetProxyOwner, assetProxyOwner.address, 'Unexpected MultiAssetProxy owner'); + + const isExchangeAuthorizedInMultiAssetProxy = await multiAssetProxy.authorized.callAsync(exchange.address); + warnIfMismatch(isExchangeAuthorizedInMultiAssetProxy, true, 'Exchange not authorized in MultiAssetProxy'); + + const registeredERC20ProxyInMAP = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC20); + warnIfMismatch( + registeredERC20ProxyInMAP, + erc20Proxy.address, + 'Unexpected ERC20Proxy registered in MultiAssetProxy', + ); + + const registeredERC721ProxyInMAP = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC721); + warnIfMismatch( + registeredERC721ProxyInMAP, + erc721Proxy.address, + 'Unexpected ERC721Proxy registered in MultiAssetProxy', + ); + + const registeredERC1155ProxyInMAP = await exchange.getAssetProxy.callAsync(AssetProxyId.ERC1155); + warnIfMismatch( + registeredERC1155ProxyInMAP, + erc1155Proxy.address, + 'Unexpected ERC1155Proxy registered in MultiAssetProxy', + ); + + const registeredStaticCallProxyInMAP = await exchange.getAssetProxy.callAsync(AssetProxyId.StaticCall); + warnIfMismatch( + registeredStaticCallProxyInMAP, + addresses.staticCallProxy, + 'Unexpected StaticCallProxy registered in MultiAssetProxy', + ); + + // Verify AssetProxyOwner configs + const isERC20ProxyRegisteredInAPOwner = await assetProxyOwner.isAssetProxyRegistered.callAsync(erc20Proxy.address); + warnIfMismatch(isERC20ProxyRegisteredInAPOwner, true, 'ERC20Proxy not registered in AssetProxyOwner'); + + const isERC721ProxyRegisteredInAPOwner = await assetProxyOwner.isAssetProxyRegistered.callAsync( + erc721Proxy.address, + ); + warnIfMismatch(isERC721ProxyRegisteredInAPOwner, true, 'ERC721Proxy not registered in AssetProxyOwner'); + + const isERC1155ProxyRegisteredInAPOwner = await assetProxyOwner.isAssetProxyRegistered.callAsync( + erc1155Proxy.address, + ); + warnIfMismatch(isERC1155ProxyRegisteredInAPOwner, true, 'ERC1155Proxy not registered in AssetProxyOwner'); + + const isMultiAssetProxyRegisteredInAPOwner = await assetProxyOwner.isAssetProxyRegistered.callAsync( + multiAssetProxy.address, + ); + warnIfMismatch(isMultiAssetProxyRegisteredInAPOwner, true, 'MultiAssetProxy not registered in AssetProxyOwner'); +} + +(async () => { + for (const rpcUrl of Object.values(networkIdToRpcUrl)) { + const provider = new Web3ProviderEngine(); + provider.addProvider(new EmptyWalletSubprovider()); + provider.addProvider(new RPCSubprovider(rpcUrl)); + providerUtils.startProviderEngine(provider); + await testContractConfigsAsync(provider); + } +})().catch(err => { + logUtils.log(err); + process.exit(1); +}); From 06bec227ad22fdccec52a99e0b22ab493a2beac2 Mon Sep 17 00:00:00 2001 From: Amir Bandeali Date: Wed, 31 Jul 2019 14:46:01 -0700 Subject: [PATCH 07/12] Add authorizedAddresses length check to MAP config tests --- packages/migrations/src/test_contract_configs.ts | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/migrations/src/test_contract_configs.ts b/packages/migrations/src/test_contract_configs.ts index 815e9e2cd1..33e15090a9 100644 --- a/packages/migrations/src/test_contract_configs.ts +++ b/packages/migrations/src/test_contract_configs.ts @@ -7,6 +7,7 @@ import { logUtils, providerUtils } from '@0x/utils'; import { Web3Wrapper } from '@0x/web3-wrapper'; import { SupportedProvider } from 'ethereum-types'; +// NOTE: add your own Infura Project ID to RPC urls before running const networkIdToRpcUrl = { 1: 'https://mainnet.infura.io/v3/', 3: 'https://ropsten.infura.io/v3/', @@ -102,6 +103,13 @@ async function testContractConfigsAsync(provider: SupportedProvider): Promise Date: Wed, 31 Jul 2019 19:54:30 -0700 Subject: [PATCH 08/12] Add mainnet StaticCall and ERC1155Proxy addresses --- packages/contract-addresses/src/index.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/contract-addresses/src/index.ts b/packages/contract-addresses/src/index.ts index 65cc05d675..6fb7d8691f 100644 --- a/packages/contract-addresses/src/index.ts +++ b/packages/contract-addresses/src/index.ts @@ -41,8 +41,8 @@ const networkToAddresses: { [networkId: number]: ContractAddresses } = { coordinatorRegistry: '0x45797531b873fd5e519477a070a955764c1a5b07', coordinator: '0xa14857e8930acd9a882d33ec20559beb5479c8a6', multiAssetProxy: '0xef701d5389ae74503d633396c4d654eabedc9d78', - staticCallProxy: NULL_ADDRESS, - erc1155Proxy: NULL_ADDRESS, + staticCallProxy: '0x3517b88c19508c08650616019062b898ab65ed29', + erc1155Proxy: '0x7eefbd48fd63d441ec7435d024ec7c5131019add', }, 3: { erc20Proxy: '0xb1408f4c245a23c31b98d2c626777d4c0d766caa', From c3f42995f9eb31bc9ee862d879732b001a031bad Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Mon, 5 Aug 2019 18:30:58 +1000 Subject: [PATCH 09/12] Update python addresses --- .../src/zero_ex/contract_addresses/__init__.py | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/python-packages/contract_addresses/src/zero_ex/contract_addresses/__init__.py b/python-packages/contract_addresses/src/zero_ex/contract_addresses/__init__.py index 78f8480c4d..bc2f8b9281 100644 --- a/python-packages/contract_addresses/src/zero_ex/contract_addresses/__init__.py +++ b/python-packages/contract_addresses/src/zero_ex/contract_addresses/__init__.py @@ -22,6 +22,9 @@ class ContractAddresses(NamedTuple): erc721_proxy: str """Address of the ERC20Proxy contract.""" + erc1155_proxy: str + """Address of the ERC1155Proxy contract.""" + zrx_token: str """Address of the ZRX token contract.""" @@ -76,6 +79,7 @@ NETWORK_TO_ADDRESSES: Dict[NetworkId, ContractAddresses] = { order_validator="0xa09329c6003c9a5402102e226417738ee22cf1f2", coordinator_registry="0x45797531b873fd5e519477a070a955764c1a5b07", coordinator="0xa14857e8930acd9a882d33ec20559beb5479c8a6", + erc1155_proxy="0x7eefbd48fd63d441ec7435d024ec7c5131019add", ), NetworkId.ROPSTEN: ContractAddresses( # nosec erc20_proxy="0xb1408f4c245a23c31b98d2c626777d4c0d766caa", @@ -88,6 +92,7 @@ NETWORK_TO_ADDRESSES: Dict[NetworkId, ContractAddresses] = { order_validator="0x90431a90516ab49af23a0530e04e8c7836e7122f", coordinator_registry="0x403cc23e88c17c4652fb904784d1af640a6722d9", coordinator="0x2ba02e03ee0029311e0f43715307870a3e701b53", + erc1155_proxy="0x19bb6caa3bc34d39e5a23cedfa3e6c7e7f3c931d", ), NetworkId.RINKEBY: ContractAddresses( # nosec exchange="0xbff9493f92a3df4b0429b6d00743b3cfb4c85831", @@ -100,6 +105,7 @@ NETWORK_TO_ADDRESSES: Dict[NetworkId, ContractAddresses] = { order_validator="0x0c5173a51e26b29d6126c686756fb9fbef71f762", coordinator_registry="0x1084b6a398e47907bae43fec3ff4b677db6e4fee", coordinator="0x2ba02e03ee0029311e0f43715307870a3e701b53", + erc1155_proxy="0x19bb6caa3bc34d39e5a23cedfa3e6c7e7f3c931d", ), NetworkId.KOVAN: ContractAddresses( # nosec erc20_proxy="0xf1ec01d6236d3cd881a0bf0130ea25fe4234003e", @@ -112,18 +118,20 @@ NETWORK_TO_ADDRESSES: Dict[NetworkId, ContractAddresses] = { order_validator="0xb389da3d204b412df2f75c6afb3d0a7ce0bc283d", coordinator_registry="0x09fb99968c016a3ff537bf58fb3d9fe55a7975d5", coordinator="0x2ba02e03ee0029311e0f43715307870a3e701b53", + erc1155_proxy="0x64517fa2b480ba3678a2a3c0cf08ef7fd4fad36f", ), NetworkId.GANACHE: ContractAddresses( # nosec exchange="0x48bacb9266a570d521063ef5dd96e61686dbe788", erc20_proxy="0x1dc4c1cefef38a777b15aa20260a54e584b16c48", erc721_proxy="0x1d7022f5b17d2f8b695918fb48fa1089c9f85401", + erc1155_proxy="0x6a4a62e5a7ed13c361b176a5f62c2ee620ac0df8", zrx_token="0x871dd7c2b4b25e1aa18728e9d5f2af4c4e431f5c", ether_token="0x0b1ba0af832d7c05fd64161e0db78e85978e8082", - asset_proxy_owner="0x34d402f14d58e001d8efbe6585051bf9706aa064", - forwarder="0x6000eca38b8b5bba64986182fe2a69c57f6b5414", - order_validator="0x32eecaf51dfea9618e9bc94e9fbfddb1bbdcba15", - coordinator_registry="0xaa86dda78e9434aca114b6676fc742a18d15a1cc", - coordinator="0x4d3d5c850dd5bd9d6f4adda3dd039a3c8054ca29", + asset_proxy_owner="0x8d42e38980ce74736c21c059b2240df09958d3c8", + forwarder="0xaa86dda78e9434aca114b6676fc742a18d15a1cc", + order_validator="0x4d3d5c850dd5bd9d6f4adda3dd039a3c8054ca29", + coordinator_registry="0x1941ff73d1154774d87521d2d0aaad5d19c8df60", + coordinator="0x0d8b0dd11f5d34ed41d556def5f841900d5b1c6b", ), } """A mapping from instances of NetworkId to instances of ContractAddresses. From 9e3b1fe333810b17c75ccff3f4aff71ab15085fb Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Mon, 5 Aug 2019 20:26:10 +1000 Subject: [PATCH 10/12] Update to latest Coordinator Config --- .../test/coordinator_wrapper_test.ts | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/packages/contract-wrappers/test/coordinator_wrapper_test.ts b/packages/contract-wrappers/test/coordinator_wrapper_test.ts index 6783cc0c41..5a8ea33ed3 100644 --- a/packages/contract-wrappers/test/coordinator_wrapper_test.ts +++ b/packages/contract-wrappers/test/coordinator_wrapper_test.ts @@ -99,7 +99,7 @@ describe('CoordinatorWrapper', () => { const coordinatorServerConfigs = { HTTP_PORT: 3000, // Only used in default instantiation in 0x-coordinator-server/server.js; not used here NETWORK_ID_TO_SETTINGS: { - 50: { + [config.networkId]: { FEE_RECIPIENTS: [ { ADDRESS: feeRecipientAddressOne, @@ -125,6 +125,9 @@ describe('CoordinatorWrapper', () => { RPC_URL: 'http://ignore', }, }, + NETWORK_ID_TO_CONTRACT_ADDRESSES: { + [config.networkId]: contractAddresses, + }, // Optional selective delay on fill requests SELECTIVE_DELAY_MS: 0, EXPIRATION_DURATION_SECONDS: 60, // 1 minute @@ -134,7 +137,15 @@ describe('CoordinatorWrapper', () => { [config.networkId]: provider, }, coordinatorServerConfigs, - defaultOrmConfig, + { + name: 'coord_server_1', + type: 'sqlite', + database: ':memory:', + entities: defaultOrmConfig.entities, + cli: defaultOrmConfig.cli, + logging: defaultOrmConfig.logging, + synchronize: defaultOrmConfig.synchronize, + }, ); coordinatorServerApp.listen(coordinatorPort, () => { @@ -148,7 +159,8 @@ describe('CoordinatorWrapper', () => { coordinatorServerConfigs, { type: 'sqlite', - database: 'database.sqlite_2', + name: 'coord_server_2', + database: ':memory:', entities: defaultOrmConfig.entities, cli: defaultOrmConfig.cli, logging: defaultOrmConfig.logging, From ad83312009b119507e93201040285ec36c9e33da Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Tue, 6 Aug 2019 09:30:26 +1000 Subject: [PATCH 11/12] Update @0x/coordinator-server dependency --- packages/contract-wrappers/package.json | 2 +- yarn.lock | 212 ++---------------------- 2 files changed, 19 insertions(+), 195 deletions(-) diff --git a/packages/contract-wrappers/package.json b/packages/contract-wrappers/package.json index 46bf4f27d9..24652027ce 100644 --- a/packages/contract-wrappers/package.json +++ b/packages/contract-wrappers/package.json @@ -39,7 +39,7 @@ }, "devDependencies": { "@0x/contracts-test-utils": "^3.1.12", - "@0x/coordinator-server": "0.1.1", + "@0x/coordinator-server": "^0.1.3", "@0x/dev-utils": "^2.2.6", "@0x/fill-scenarios": "^3.0.15", "@0x/migrations": "^4.1.11", diff --git a/yarn.lock b/yarn.lock index 92c9d733f9..327ad09752 100644 --- a/yarn.lock +++ b/yarn.lock @@ -649,16 +649,9 @@ dependencies: "@0x/base-contract" "^4.0.3" -"@0x/abi-gen-wrappers@^4.1.0", "@0x/abi-gen-wrappers@^4.2.0": - version "4.3.0" - resolved "https://registry.yarnpkg.com/@0x/abi-gen-wrappers/-/abi-gen-wrappers-4.3.0.tgz#b36616b129f44072474a7d5739299e4b1068e3d4" - dependencies: - "@0x/base-contract" "^5.1.0" - "@0x/asset-buyer@6.1.8": version "6.1.8" resolved "https://registry.yarnpkg.com/@0x/asset-buyer/-/asset-buyer-6.1.8.tgz#71f6abb366e89e62457c256644edb37e12113e94" - integrity sha512-JOMu38EsQexDVyzOGYJamlLDigVoGOBNHAVYIkPn4r3SLY75Shcxlb9AhUfKEMDPv3kjk70r0Iy1DmIh4HBjdA== dependencies: "@0x/assert" "^2.1.0" "@0x/connect" "^5.0.13" @@ -684,43 +677,19 @@ ethers "~4.0.4" lodash "^4.17.11" -"@0x/contract-addresses@^2.2.1", "@0x/contract-addresses@^2.3.0", "@0x/contract-addresses@^2.3.1": +"@0x/contract-addresses@^2.2.1": version "2.3.3" resolved "https://registry.yarnpkg.com/@0x/contract-addresses/-/contract-addresses-2.3.3.tgz#8cf009e7668c2fccca416177c85f3f6612c724c6" dependencies: lodash "^4.17.11" -"@0x/contract-artifacts@^1.3.0", "@0x/contract-artifacts@^1.4.0", "@0x/contract-artifacts@^1.5.0": +"@0x/contract-artifacts@^1.3.0": version "1.5.1" resolved "https://registry.npmjs.org/@0x/contract-artifacts/-/contract-artifacts-1.5.1.tgz#6fba56a1d3e2d5d897a75fcfa432e49e2ebb17a7" -"@0x/contract-wrappers@^8.0.5": - version "8.0.5" - resolved "https://registry.yarnpkg.com/@0x/contract-wrappers/-/contract-wrappers-8.0.5.tgz#2bad814956625b740403a903d459a6e58fc77b92" - dependencies: - "@0x/abi-gen-wrappers" "^4.1.0" - "@0x/assert" "^2.0.8" - "@0x/contract-addresses" "^2.3.0" - "@0x/contract-artifacts" "^1.4.0" - "@0x/json-schemas" "^3.0.8" - "@0x/order-utils" "^7.1.1" - "@0x/types" "^2.2.1" - "@0x/typescript-typings" "^4.2.1" - "@0x/utils" "^4.3.0" - "@0x/web3-wrapper" "^6.0.4" - ethereum-types "^2.1.1" - ethereumjs-abi "0.6.5" - ethereumjs-blockstream "6.0.0" - ethereumjs-util "^5.1.1" - ethers "~4.0.4" - js-sha3 "^0.7.0" - lodash "^4.17.11" - uuid "^3.3.2" - -"@0x/contract-wrappers@^9.1.7": +"@0x/contract-wrappers@^9.1.6", "@0x/contract-wrappers@^9.1.7": version "9.1.8" resolved "https://registry.yarnpkg.com/@0x/contract-wrappers/-/contract-wrappers-9.1.8.tgz#5923d35af3e4b442a57d02f74e02620b2d5b1356" - integrity sha512-+qx0lwDAuTitP8sXA4bxRS+W81i5TaXWziD/Fcraj40XGeuHFnRXVY5FEl9V7TC0sEDyvnnF2VFc5Y+v2CnYVQ== dependencies: "@0x/abi-gen-wrappers" "^5.0.3" "@0x/assert" "^2.1.1" @@ -757,21 +726,21 @@ ethereumjs-util "^5.1.1" lodash "^4.17.5" -"@0x/coordinator-server@0.1.1": - version "0.1.1" - resolved "https://registry.yarnpkg.com/@0x/coordinator-server/-/coordinator-server-0.1.1.tgz#7eeb74959dc72b76756b95ccd14fd9fa8d072ede" +"@0x/coordinator-server@^0.1.3": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@0x/coordinator-server/-/coordinator-server-0.1.3.tgz#5fbb7c11bb641aa5386797769cab9a68a7d15b79" dependencies: - "@0x/assert" "^2.0.8" - "@0x/contract-addresses" "^2.3.0" - "@0x/contract-wrappers" "^8.0.5" - "@0x/contracts-erc20" "^2.1.0" - "@0x/json-schemas" "^3.0.8" - "@0x/order-utils" "^7.2.0" - "@0x/subproviders" "^4.0.4" - "@0x/types" "^2.2.1" - "@0x/typescript-typings" "^4.2.1" - "@0x/utils" "^4.3.0" - "@0x/web3-wrapper" "^6.0.4" + "@0x/assert" "^2.1.0" + "@0x/contract-addresses" "^3.0.1" + "@0x/contract-wrappers" "^9.1.6" + "@0x/contracts-erc20" "^2.2.7" + "@0x/json-schemas" "^3.0.11" + "@0x/order-utils" "^8.2.1" + "@0x/subproviders" "^4.1.1" + "@0x/types" "^2.4.0" + "@0x/typescript-typings" "^4.2.3" + "@0x/utils" "^4.4.0" + "@0x/web3-wrapper" "^6.0.7" "@babel/polyfill" "^7.0.0" body-parser "^1.18.3" cors "^2.8.5" @@ -808,32 +777,9 @@ ethers "~4.0.4" lodash "^4.17.11" -"@0x/order-utils@^7.1.1", "@0x/order-utils@^7.2.0": - version "7.2.0" - resolved "https://registry.npmjs.org/@0x/order-utils/-/order-utils-7.2.0.tgz#c73d81e3225e9ec7736f9789e14388c9fe2b831c" - dependencies: - "@0x/abi-gen-wrappers" "^4.2.0" - "@0x/assert" "^2.0.9" - "@0x/base-contract" "^5.0.5" - "@0x/contract-addresses" "^2.3.1" - "@0x/contract-artifacts" "^1.5.0" - "@0x/json-schemas" "^3.0.9" - "@0x/types" "^2.2.2" - "@0x/typescript-typings" "^4.2.2" - "@0x/utils" "^4.3.1" - "@0x/web3-wrapper" "^6.0.5" - "@types/node" "*" - bn.js "^4.11.8" - ethereum-types "^2.1.2" - ethereumjs-abi "0.6.5" - ethereumjs-util "^5.1.1" - ethers "~4.0.4" - lodash "^4.17.11" - -"@0x/subproviders@^4.0.4", "@0x/subproviders@^4.1.1": +"@0x/subproviders@^4.1.1": version "4.1.2" resolved "https://registry.yarnpkg.com/@0x/subproviders/-/subproviders-4.1.2.tgz#ab7bb0f482b11ccb4615fb5dd8ca85199cd0ae23" - integrity sha512-PaK/+cC6+o3glVITnBdb/AN/ej7ulfr49KGftNRATB8Y/yI6Xa3adqgFvDh7jiKBoB/auTRFQ/TabQTcieKl6g== dependencies: "@0x/assert" "^2.1.1" "@0x/types" "^2.4.1" @@ -934,7 +880,6 @@ "@babel/runtime@^7.4.5": version "7.5.5" resolved "https://registry.npmjs.org/@babel/runtime/-/runtime-7.5.5.tgz#74fba56d35efbeca444091c7850ccd494fd2f132" - integrity sha512-28QvEGyQyNkB0/m2B4FU7IEZGK2NUrcMtT6BZEFALTguLk+AUT6ofsHtPk5QyjAdUkpMJ+/Em+quwz4HOt30AQ== dependencies: regenerator-runtime "^0.13.2" @@ -1779,7 +1724,6 @@ "@types/eth-lightwallet@^3.0.0": version "3.0.0" resolved "https://registry.yarnpkg.com/@types/eth-lightwallet/-/eth-lightwallet-3.0.0.tgz#9be5b59dc6fb3fcdb01e65c2c2a79cd601f72dd4" - integrity sha512-AgE1V0Z9VqZ3bwZgUeIwJkKuyCP/vFaIFtZd7OZxhwD0Vsqjy9HqfT6IolrxXCTLWy9YkqcN7gL1jtIiH+Ml7Q== dependencies: "@types/node" "*" @@ -2014,7 +1958,6 @@ "@types/react-dom@^16.0.6": version "16.8.5" resolved "https://registry.yarnpkg.com/@types/react-dom/-/react-dom-16.8.5.tgz#3e3f4d99199391a7fb40aa3a155c8dd99b899cbd" - integrity sha512-idCEjROZ2cqh29+trmTmZhsBAUNQuYrF92JHKzZ5+aiFM1mlSk3bb23CK7HhYuOY75Apgap5y2jTyHzaM2AJGA== dependencies: "@types/react" "*" @@ -2053,7 +1996,6 @@ "@types/react-redux@^4.4.37": version "4.4.47" resolved "https://registry.yarnpkg.com/@types/react-redux/-/react-redux-4.4.47.tgz#12af1677116e08d413fe2620d0a85560c8a0536e" - integrity sha512-wyFTmLtEymHCjOmVVvsbNqJaGM9Q0x6sZTQfz4XkDj06P8Xe+ys9wKSQHx2Jt9J5Mi7HZnGcJaMFktn60sXluw== dependencies: "@types/react" "*" redux "^3.6.0" @@ -2105,7 +2047,6 @@ "@types/react-transition-group@^4.2.0": version "4.2.0" resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.2.0.tgz#86ddb509ce3de27341c7cb7797abb99b1c4676bf" - integrity sha512-8KkpFRwqS9U1dtVVw1kt/MmWgLmbd5iK5TgqsaeC7fAm74J4j/HiBiRC8eETvwjGGju48RAwyZ3l5iv1H1x93Q== dependencies: "@types/react" "*" @@ -2562,7 +2503,6 @@ ansi-colors@3.2.3: ansi-colors@^1.0.1: version "1.1.0" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-1.1.0.tgz#6374b4dd5d4718ff3ce27a671a3b1cad077132a9" - integrity sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA== dependencies: ansi-wrap "^0.1.0" @@ -2705,7 +2645,6 @@ arr-diff@^4.0.0: arr-filter@^1.1.1: version "1.1.2" resolved "https://registry.yarnpkg.com/arr-filter/-/arr-filter-1.1.2.tgz#43fdddd091e8ef11aa4c45d9cdc18e2dff1711ee" - integrity sha1-Q/3d0JHo7xGqTEXZzcGOLf8XEe4= dependencies: make-iterator "^1.0.0" @@ -2716,7 +2655,6 @@ arr-flatten@^1.0.1, arr-flatten@^1.1.0: arr-map@^2.0.0, arr-map@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/arr-map/-/arr-map-2.0.2.tgz#3a77345ffc1cf35e2a91825601f9e58f2e24cac4" - integrity sha1-Onc0X/wc814qkYJWAfnljy4kysQ= dependencies: make-iterator "^1.0.0" @@ -2763,7 +2701,6 @@ array-ify@^1.0.0: array-initial@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/array-initial/-/array-initial-1.1.0.tgz#2fa74b26739371c3947bd7a7adc73be334b3d795" - integrity sha1-L6dLJnOTccOUe9enrcc74zSz15U= dependencies: array-slice "^1.0.0" is-number "^4.0.0" @@ -2771,7 +2708,6 @@ array-initial@^1.0.0: array-last@^1.1.1: version "1.3.0" resolved "https://registry.yarnpkg.com/array-last/-/array-last-1.3.0.tgz#7aa77073fec565ddab2493f5f88185f404a9d336" - integrity sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg== dependencies: is-number "^4.0.0" @@ -2790,7 +2726,6 @@ array-slice@^1.0.0: array-sort@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-sort/-/array-sort-1.0.0.tgz#e4c05356453f56f53512a7d1d6123f2c54c0a88a" - integrity sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg== dependencies: default-compare "^1.0.0" get-value "^2.0.6" @@ -2877,7 +2812,6 @@ async-child-process@^1.1.1: async-done@^1.2.0, async-done@^1.2.2: version "1.3.2" resolved "https://registry.yarnpkg.com/async-done/-/async-done-1.3.2.tgz#5e15aa729962a4b07414f528a88cdf18e0b290a2" - integrity sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw== dependencies: end-of-stream "^1.1.0" once "^1.3.2" @@ -2907,7 +2841,6 @@ async-eventemitter@ahultgren/async-eventemitter#fa06e39e56786ba541c180061dbf2c0a async-foreach@^0.1.3: version "0.1.3" resolved "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz#36121f845c0578172de419a97dbeb1d16ec34542" - integrity sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI= async-limiter@~1.0.0: version "1.0.0" @@ -2916,7 +2849,6 @@ async-limiter@~1.0.0: async-settle@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/async-settle/-/async-settle-1.0.0.tgz#1d0a914bb02575bec8a8f3a74e5080f72b2c0c6b" - integrity sha1-HQqRS7Aldb7IqPOnTlCA9yssDGs= dependencies: async-done "^1.2.2" @@ -2941,7 +2873,6 @@ async@2.6.1, async@^2.1.4: async@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/async/-/async-2.6.2.tgz#18330ea7e6e313887f5d2f2a904bac6fe4dd5381" - integrity sha512-H1qVYh1MYhEEFLsP97cVKqCGo7KfCyTt6uEWqsTBr9SO84oK9Uwbyd/yCW+6rKJLHksBNUVWZDAjfS+Ccx0Bbg== dependencies: lodash "^4.17.11" @@ -2958,7 +2889,6 @@ async@^2.0.1, async@^2.1.2, async@^2.4.0, async@^2.5.0, async@^2.6.0: async@^2.6.1: version "2.6.3" resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff" - integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg== dependencies: lodash "^4.17.14" @@ -3737,7 +3667,6 @@ babylon@^6.1.21, babylon@^6.18.0: bach@^1.0.0: version "1.2.0" resolved "https://registry.yarnpkg.com/bach/-/bach-1.2.0.tgz#4b3ce96bf27134f79a1b414a51c14e34c3bd9880" - integrity sha1-Szzpa/JxNPeaG0FKUcFONMO9mIA= dependencies: arr-filter "^1.1.1" arr-flatten "^1.0.1" @@ -3943,7 +3872,6 @@ bip66@^1.1.3: bitcore-lib@^0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/bitcore-lib/-/bitcore-lib-0.15.0.tgz#f924be13869f2aab7e04aeec5642ad3359b6cec2" - integrity sha512-AeXLWhiivF6CDFzrABZHT4jJrflyylDWTi32o30rF92HW9msfuKpjzrHtFKYGa9w0kNVv5HABQjCB3OEav4PhQ== dependencies: bn.js "=4.11.8" bs58 "=4.0.1" @@ -3955,7 +3883,6 @@ bitcore-lib@^0.15.0: bitcore-lib@^0.16.0: version "0.16.0" resolved "https://registry.yarnpkg.com/bitcore-lib/-/bitcore-lib-0.16.0.tgz#a2c3ec1108cdb90386f728282ab833e0c77c9533" - integrity sha512-CEtcrPAH2gwgaMN+OPMJc18TBEak1+TtzMyafrqrIbK9PIa3kat195qBJhC0liJSHRiRr6IE2eLcXeIFFs+U8w== dependencies: bn.js "=4.11.8" bs58 "=4.0.1" @@ -3967,7 +3894,6 @@ bitcore-lib@^0.16.0: bitcore-mnemonic@^1.5.0: version "1.7.0" resolved "https://registry.yarnpkg.com/bitcore-mnemonic/-/bitcore-mnemonic-1.7.0.tgz#253295a773135e1a0b455871de614996afc8f5e1" - integrity sha512-1JV1okgz9Vv+Y4fG2m3ToR+BGdKA6tSoqjepIxA95BZjW6YaeopVW4iOe/dY9dnkZH4+LA2AJ4YbDE6H3ih3Yw== dependencies: bitcore-lib "^0.16.0" unorm "^1.4.1" @@ -3998,7 +3924,6 @@ blockies@^0.0.2: bluebird@3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.3.tgz#7d01c6f9616c9a51ab0f8c549a79dfe6ec33efa7" - integrity sha512-/qKPUQlaW1OyR51WeCPBvRnAlnZFUJkCSG5HzGnuIqhgyJtF+T94lFnn33eiazjRm2LAHVy2guNnaq48X9SJuw== bluebird@^2.9.34: version "2.11.0" @@ -4027,7 +3952,6 @@ bn.js@4.11.8, bn.js@=4.11.8, bn.js@^4.0.0, bn.js@^4.1.0, bn.js@^4.1.1, bn.js@^4. bn.js@^2.0.3: version "2.2.0" resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-2.2.0.tgz#12162bc2ae71fc40a5626c33438f3a875cd37625" - integrity sha1-EhYrwq5x/EClYmwzQ486h1zTdiU= body-parser@1.18.2, body-parser@^1.16.0, body-parser@^1.17.1: version "1.18.2" @@ -4145,7 +4069,6 @@ braces@^2.3.1, braces@^2.3.2: braces@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" - integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== dependencies: fill-range "^7.0.1" @@ -4293,7 +4216,6 @@ btoa-lite@^1.0.0: buffer-compare@=1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/buffer-compare/-/buffer-compare-1.1.1.tgz#5be7be853af89198d1f4ddc090d1d66a48aef596" - integrity sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY= buffer-crc32@~0.2.3: version "0.2.13" @@ -4734,7 +4656,6 @@ cheerio@^1.0.0-rc.2: chokidar-cli@^1.2.0: version "1.2.2" resolved "https://registry.yarnpkg.com/chokidar-cli/-/chokidar-cli-1.2.2.tgz#fbfddcf1f9062c07744f0bbeb6f60a49de12c656" - integrity sha512-Yx0OYKcAkS7YMPP3/co6aN+1AOx2L6WmscqWvnqs7z+9AhDsn4zpezaErNoPACri1iUVjtxk8E77sMGntkBh3Q== dependencies: bluebird "3.5.3" chokidar "2.1.1" @@ -4744,7 +4665,6 @@ chokidar-cli@^1.2.0: chokidar@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-2.1.1.tgz#adc39ad55a2adf26548bd2afa048f611091f9184" - integrity sha512-gfw3p2oQV2wEt+8VuMlNsPjCxDxvvgnm/kz+uATu805mWVF8IJN7uz9DN7iBz+RMJISmiVbCOBFs9qBGMjtPfQ== dependencies: anymatch "^2.0.0" async-each "^1.0.1" @@ -4969,7 +4889,6 @@ clone-buffer@^1.0.0: clone-deep@^2.0.1: version "2.0.2" resolved "https://registry.npmjs.org/clone-deep/-/clone-deep-2.0.2.tgz#00db3a1e173656730d1188c3d6aced6d7ea97713" - integrity sha512-SZegPTKjCgpQH63E+eN6mVEEPdQBOUzjyJm5Pora4lrwWRFS8I0QAxV/KD6vV/i0WuijHZWQC1fMsPEdxfdVCQ== dependencies: for-own "^1.0.0" is-plain-object "^2.0.4" @@ -5039,7 +4958,6 @@ collapse-white-space@^1.0.2: collection-map@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/collection-map/-/collection-map-1.0.0.tgz#aea0f06f8d26c780c2b75494385544b2255af18c" - integrity sha1-rqDwb40mx4DCt1SUOFVEsiVa8Yw= dependencies: arr-map "^2.0.2" for-own "^1.0.0" @@ -5481,7 +5399,6 @@ copy-descriptor@^0.1.0: copy-props@^2.0.1: version "2.0.4" resolved "https://registry.yarnpkg.com/copy-props/-/copy-props-2.0.4.tgz#93bb1cadfafd31da5bb8a9d4b41f471ec3a72dfe" - integrity sha512-7cjuUME+p+S3HZlbllgsn2CDwS+5eCCX16qBgNC4jgSTf49qR1VKy/Zhl400m0IQXl/bPGEVqncgUUMjrr4s8A== dependencies: each-props "^1.3.0" is-plain-object "^2.0.1" @@ -5624,7 +5541,6 @@ cross-fetch@^2.1.0: cross-spawn@^3.0.0: version "3.0.1" resolved "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz#1256037ecb9f0c5f79e3d6ef135e30770184b982" - integrity sha1-ElYDfsufDF9549bvE14wdwGEuYI= dependencies: lru-cache "^4.0.1" which "^1.2.9" @@ -6065,7 +5981,6 @@ deepmerge@4.0.0: default-compare@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/default-compare/-/default-compare-1.0.0.tgz#cb61131844ad84d84788fb68fd01681ca7781a2f" - integrity sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ== dependencies: kind-of "^5.0.2" @@ -6085,7 +6000,6 @@ default-require-extensions@^1.0.0: default-resolution@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/default-resolution/-/default-resolution-2.0.0.tgz#bcb82baa72ad79b426a76732f1a81ad6df26d684" - integrity sha1-vLgrqnKtebQmp2cy8aga1t8m1oQ= defaults@^1.0.0, defaults@^1.0.3: version "1.0.3" @@ -6364,7 +6278,6 @@ dom-helpers@^3.2.0: dom-helpers@^3.4.0: version "3.4.0" resolved "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz#e9b369700f959f62ecde5a6babde4bccd9169af8" - integrity sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA== dependencies: "@babel/runtime" "^7.1.2" @@ -6516,7 +6429,6 @@ duplexify@^3.6.0: each-props@^1.3.0: version "1.3.2" resolved "https://registry.yarnpkg.com/each-props/-/each-props-1.3.2.tgz#ea45a414d16dd5cfa419b1a81720d5ca06892333" - integrity sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA== dependencies: is-plain-object "^2.0.1" object.defaults "^1.1.0" @@ -6575,7 +6487,6 @@ elliptic@=6.4.0, elliptic@^6.0.0, elliptic@^6.2.3, elliptic@^6.4.0: elliptic@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-3.1.0.tgz#c21682ef762769b56a74201609105da11d5f60cc" - integrity sha1-whaC73YnabVqdCAWCRBdoR1fYMw= dependencies: bn.js "^2.0.3" brorand "^1.0.1" @@ -6751,7 +6662,6 @@ es5-ext@^0.10.35, es5-ext@^0.10.9, es5-ext@~0.10.14: es5-ext@^0.10.46: version "0.10.50" resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.50.tgz#6d0e23a0abdb27018e5ac4fd09b412bc5517a778" - integrity sha512-KMzZTPBkeQV/JcSQhI5/z6d9VWJ3EnQ194USTUwIYZ2ZbpN8+SGXQKt1h68EX44+qt+Fzr8DO17vnxrw7c3agw== dependencies: es6-iterator "~2.0.3" es6-symbol "~3.1.1" @@ -6789,7 +6699,6 @@ es6-symbol@^3.1.1, es6-symbol@~3.1.1: es6-weak-map@^2.0.1: version "2.0.3" resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" - integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== dependencies: d "1" es5-ext "^0.10.46" @@ -7017,7 +6926,6 @@ eth-lib@0.2.7: eth-lightwallet@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/eth-lightwallet/-/eth-lightwallet-3.0.1.tgz#297022932aa568f4e4eb0873bff257f5e5b78709" - integrity sha512-79vVCETy+4l1b6wuOWwjqPW3Bom5ZK46BgkUNwaXhiMG1rrMRHjpjYEWMqH0JHeCzOzB4HBIFz7eK1/4s6w5nA== dependencies: bitcore-lib "^0.15.0" bitcore-mnemonic "^1.5.0" @@ -7041,7 +6949,6 @@ eth-query@^2.0.2, eth-query@^2.1.0, eth-query@^2.1.2: eth-sig-util@2.1.2: version "2.1.2" resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-2.1.2.tgz#9b357395b5ca07fae6b430d3e534cf0a0f1df118" - integrity sha512-bNgt7txkEmaNlLf+PrbwYIdp4KRkB3E7hW0/QwlBpgv920pVVyQnF0evoovfiRveNKM4OrtPYZTojjmsfuCUOw== dependencies: buffer "^5.2.1" elliptic "^6.4.0" @@ -7053,7 +6960,6 @@ eth-sig-util@2.1.2: eth-sig-util@2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/eth-sig-util/-/eth-sig-util-2.2.0.tgz#769fa3d296b450f6618dedeefe076642c923a16f" - integrity sha512-bAxW35bL4U2lrtjjV8rFGJ8B27z4Sn5v9eIaNdpPUnPfUAtrvx5j8atfyV+k+JOnbppcvKhWCO1rQSBk4kkAhw== dependencies: buffer "^5.2.1" elliptic "^6.4.0" @@ -7090,7 +6996,6 @@ eth-tx-summary@^3.1.2: ethashjs@~0.0.7: version "0.0.7" resolved "https://registry.yarnpkg.com/ethashjs/-/ethashjs-0.0.7.tgz#30bfe4196726690a0c59d3b8272e70d4d0c34bae" - integrity sha1-ML/kGWcmaQoMWdO4Jy5w1NDDS64= dependencies: async "^1.4.2" buffer-xor "^1.0.3" @@ -7115,7 +7020,6 @@ ethereumjs-abi@0.6.5: ethereumjs-abi@0.6.7: version "0.6.7" resolved "https://registry.yarnpkg.com/ethereumjs-abi/-/ethereumjs-abi-0.6.7.tgz#d1d1c5cdb8d910a7d97645ba9e93be5d153bba2e" - integrity sha512-EMLOA8ICO5yAaXDhjVEfYjsJIXYutY8ufTE93eEKwsVtp2usQreKwsDTJ9zvam3omYqNuffr8IONIqb2uUslGQ== dependencies: bn.js "^4.11.8" ethereumjs-util "^6.0.0" @@ -7138,7 +7042,6 @@ ethereumjs-account@2.0.5: ethereumjs-account@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ethereumjs-account/-/ethereumjs-account-3.0.0.tgz#728f060c8e0c6e87f1e987f751d3da25422570a9" - integrity sha512-WP6BdscjiiPkQfF9PVfMcwx/rDvfZTjFKY0Uwc09zSQr9JfIVH87dYIJu0gNhBhpmovV4yq295fdllS925fnBA== dependencies: ethereumjs-util "^6.0.0" rlp "^2.2.1" @@ -7184,7 +7087,6 @@ ethereumjs-block@^1.2.2, ethereumjs-block@^1.4.1, ethereumjs-block@^1.6.0, ether ethereumjs-blockchain@^3.4.0: version "3.4.0" resolved "https://registry.yarnpkg.com/ethereumjs-blockchain/-/ethereumjs-blockchain-3.4.0.tgz#92240da6ecd86b3d8d324df69510b381f26c966b" - integrity sha512-wxPSmt6EQjhbywkFbftKcb0qRFIZWocHMuDa8/AB4eWL/UPYalNcDyLaxYbrDytmhHid3Uu8G/tA3C/TxZBuOQ== dependencies: async "^2.6.1" ethashjs "~0.0.7" @@ -7276,7 +7178,6 @@ ethereumjs-util@^5.0.0, ethereumjs-util@^5.0.1, ethereumjs-util@^5.1.1, ethereum ethereumjs-util@~6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/ethereumjs-util/-/ethereumjs-util-6.0.0.tgz#f14841c182b918615afefd744207c7932c8536c0" - integrity sha512-E3yKUyl0Fs95nvTFQZe/ZSNcofhDzUsDlA5y2uoRmf1+Ec7gpGhNCsgKkZBRh7Br5op8mJcYF/jFbmjj909+nQ== dependencies: bn.js "^4.11.0" create-hash "^1.1.2" @@ -7289,7 +7190,6 @@ ethereumjs-util@~6.0.0: ethereumjs-vm@2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-2.6.0.tgz#76243ed8de031b408793ac33907fb3407fe400c6" - integrity sha512-r/XIUik/ynGbxS3y+mvGnbOKnuLo40V5Mj1J25+HEO63aWYREIqvWeRO/hnROlMBE5WoniQmPmhiaN0ctiHaXw== dependencies: async "^2.1.2" async-eventemitter "^0.2.2" @@ -7306,7 +7206,6 @@ ethereumjs-vm@2.6.0: ethereumjs-vm@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/ethereumjs-vm/-/ethereumjs-vm-3.0.0.tgz#70fea2964a6797724b0d93fe080f9984ad18fcdd" - integrity sha512-lNu+G/RWPRCrQM5s24MqgU75PEGiAhL4Ombw0ew6m08d+amsxf/vGAb98yDNdQqqHKV6JbwO/tCGfdqXGI6Cug== dependencies: async "^2.1.2" async-eventemitter "^0.2.2" @@ -7340,7 +7239,6 @@ ethereumjs-vm@^2.0.2, ethereumjs-vm@^2.1.0, ethereumjs-vm@^2.3.4: ethereumjs-wallet@0.6.3: version "0.6.3" resolved "https://registry.yarnpkg.com/ethereumjs-wallet/-/ethereumjs-wallet-0.6.3.tgz#b0eae6f327637c2aeb9ccb9047b982ac542e6ab1" - integrity sha512-qiXPiZOsStem+Dj/CQHbn5qex+FVkuPmGH7SvSnA9F3tdRDt8dLMyvIj3+U05QzVZNPYh4HXEdnzoYI4dZkr9w== dependencies: aes-js "^3.1.1" bs58check "^2.1.2" @@ -7748,7 +7646,6 @@ fancy-log@^1.1.0: fancy-log@^1.3.2: version "1.3.3" resolved "https://registry.yarnpkg.com/fancy-log/-/fancy-log-1.3.3.tgz#dbc19154f558690150a23953a0adbd035be45fc7" - integrity sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw== dependencies: ansi-gray "^0.1.1" color-support "^1.1.3" @@ -8032,7 +7929,6 @@ findup-sync@^2.0.0: findup-sync@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/findup-sync/-/findup-sync-3.0.0.tgz#17b108f9ee512dfb7a5c7f3c8b27ea9e1a9c08d1" - integrity sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg== dependencies: detect-file "^1.0.0" is-glob "^4.0.0" @@ -8105,7 +8001,6 @@ flickity@^2.1.1: flow-stoplight@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/flow-stoplight/-/flow-stoplight-1.0.0.tgz#4a292c5bcff8b39fa6cc0cb1a853d86f27eeff7b" - integrity sha1-SiksW8/4s5+mzAyxqFPYbyfu/3s= flush-write-stream@^1.0.0, flush-write-stream@^1.0.2: version "1.0.3" @@ -8136,7 +8031,6 @@ for-each@^0.3.2, for-each@~0.3.2: for-in@^0.1.3: version "0.1.8" resolved "https://registry.npmjs.org/for-in/-/for-in-0.1.8.tgz#d8773908e31256109952b1fdb9b3fa867d2775e1" - integrity sha1-2Hc5COMSVhCZUrH9ubP6hn0ndeE= for-in@^1.0.1, for-in@^1.0.2: version "1.0.2" @@ -8370,7 +8264,6 @@ ganache-cli@6.4.1: ganache-core@^2.5.3: version "2.6.1" resolved "https://registry.yarnpkg.com/ganache-core/-/ganache-core-2.6.1.tgz#b97156cd53d0492477c1229d57f8a97763d30d46" - integrity sha512-P3X8yo1GAabYuc8SOnWAFyHL8LhOlNOG6amtItgOEDBTUXMKlkGKP42OxjKovxCAlE7d9CXmYXo1Bu0rffBm9w== dependencies: abstract-leveldown "3.0.0" async "2.6.2" @@ -8403,7 +8296,6 @@ ganache-core@^2.5.3: ganache-core@^2.6.0: version "2.6.0" resolved "https://registry.yarnpkg.com/ganache-core/-/ganache-core-2.6.0.tgz#19001547893ff9f6d494fcaed66c52edd808f3c0" - integrity sha512-TAT8XCjORmRpWko9QWKWGbdZ8/3nblKgralUWdySHXZyGBVRoHyEzjygMYZoblSXXCWuYEmx+T1u73Di1tE0mA== dependencies: abstract-leveldown "3.0.0" async "2.6.1" @@ -8467,7 +8359,6 @@ gaze@^0.5.1: gaze@^1.0.0: version "1.1.3" resolved "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz#c441733e13b927ac8c0ff0b4c3b033f28812924a" - integrity sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g== dependencies: globule "^1.0.0" @@ -8683,7 +8574,6 @@ glob-watcher@^0.0.6: glob-watcher@^5.0.3: version "5.0.3" resolved "https://registry.yarnpkg.com/glob-watcher/-/glob-watcher-5.0.3.tgz#88a8abf1c4d131eb93928994bc4a593c2e5dd626" - integrity sha512-8tWsULNEPHKQ2MR4zXuzSmqbdyV5PtwwCaWSGQ1WwHsJ07ilNeN1JB8ntxhckbnpSHaf9dXFUHzIWvm1I13dsg== dependencies: anymatch "^2.0.0" async-done "^1.2.0" @@ -8861,7 +8751,6 @@ globby@^9.2.0: globule@^1.0.0: version "1.2.1" resolved "https://registry.npmjs.org/globule/-/globule-1.2.1.tgz#5dffb1b191f22d20797a9369b49eab4e9839696d" - integrity sha512-g7QtgWF4uYSL5/dn71WxubOrS7JVGCnFPEnoeChJmBnyR9Mw8nGoEwOgJL/RC2Te0WhbsEUCejfH8SZNJ+adYQ== dependencies: glob "~7.1.1" lodash "~4.17.10" @@ -8925,7 +8814,6 @@ got@^6.7.1: graceful-fs@4.1.15, graceful-fs@^3.0.0, graceful-fs@^4.0.0, graceful-fs@^4.1.10, graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.1.9, graceful-fs@^4.2.0, graceful-fs@~1.2.0: version "4.1.15" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.1.15.tgz#ffb703e1066e8a0eeaa4c8b80ba9253eeefbfb00" - integrity sha512-6uHUhOPEBgQ24HM+r6b/QwWfZq+yiFcipKFrOFiBEnWdy5sdzYoi+pJeQaPI5qOLRFqWmAXUPQNsielzdLoecA== "graceful-readlink@>= 1.0.0": version "1.0.1" @@ -8946,7 +8834,6 @@ gud@^1.0.0: gulp-cli@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/gulp-cli/-/gulp-cli-2.2.0.tgz#5533126eeb7fe415a7e3e84a297d334d5cf70ebc" - integrity sha512-rGs3bVYHdyJpLqR0TUBnlcZ1O5O++Zs4bA0ajm+zr3WFCfiSLjGwoCBqFs18wzN+ZxahT9DkOK5nDf26iDsWjA== dependencies: ansi-colors "^1.0.1" archy "^1.0.0" @@ -9011,7 +8898,6 @@ gulp@^3.9.1: gulp@^4.0.2: version "4.0.2" resolved "https://registry.yarnpkg.com/gulp/-/gulp-4.0.2.tgz#543651070fd0f6ab0a0650c6a3e6ff5a7cb09caa" - integrity sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA== dependencies: glob-watcher "^5.0.3" gulp-cli "^2.2.0" @@ -9219,7 +9105,6 @@ hdkey@^0.7.1: hdkey@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/hdkey/-/hdkey-1.1.1.tgz#c2b3bfd5883ff9529b72f2f08b28be0972a9f64a" - integrity sha512-DvHZ5OuavsfWs5yfVJZestsnc3wzPvLWNk6c2nRUfo6X+OtxypGt20vDDf7Ba+MJzjL3KS1og2nw2eBbLCOUTA== dependencies: coinstring "^2.0.0" safe-buffer "^5.1.1" @@ -9293,7 +9178,6 @@ hoist-non-react-statics@^2.5.0: hoist-non-react-statics@^3.1.0: version "3.3.0" resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.0.tgz#b09178f0122184fb95acf525daaecb4d8f45958b" - integrity sha512-0XsbTXxgiaCDYDIWFcwkmerZPSwywfUqYmwT4jzewKTQSWoE6FCMoUVOeBJWK3E/CrWbxRG3m5GzY4lnIwGRBA== dependencies: react-is "^16.7.0" @@ -9632,7 +9516,6 @@ imurmurhash@^0.1.4: in-publish@^2.0.0: version "2.0.0" resolved "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz#e20ff5e3a2afc2690320b6dc552682a9c7fadf51" - integrity sha1-4g/146KvwmkDILbcVSaCqcf631E= indent-string@^2.1.0: version "2.1.0" @@ -10714,7 +10597,6 @@ jmespath@0.15.0: js-base64@^2.1.8: version "2.5.1" resolved "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz#1efa39ef2c5f7980bb1784ade4a8af2de3291121" - integrity sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw== js-base64@^2.1.9: version "2.4.3" @@ -10959,7 +10841,6 @@ jump.js@1.0.1: just-debounce@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/just-debounce/-/just-debounce-1.0.0.tgz#87fccfaeffc0b68cd19d55f6722943f929ea35ea" - integrity sha1-h/zPrv/AtozRnVX2cilD+SnqNeo= just-extend@^1.1.27: version "1.1.27" @@ -11022,7 +10903,6 @@ kleur@^2.0.1: last-run@^1.1.0: version "1.1.1" resolved "https://registry.yarnpkg.com/last-run/-/last-run-1.1.1.tgz#45b96942c17b1c79c772198259ba943bebf8ca5b" - integrity sha1-RblpQsF7HHnHchmCWbqUO+v4yls= dependencies: default-resolution "^2.0.0" es6-weak-map "^2.0.1" @@ -11174,7 +11054,6 @@ level-iterator-stream@~3.0.0: level-mem@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/level-mem/-/level-mem-3.0.1.tgz#7ce8cf256eac40f716eb6489654726247f5a89e5" - integrity sha512-LbtfK9+3Ug1UmvvhR2DqLqXiPW1OJ5jEh0a3m9ZgAipiwpSxGj/qaVVy54RG5vAQN1nCuXqjvprCuKSCxcJHBg== dependencies: level-packager "~4.0.0" memdown "~3.0.0" @@ -11182,7 +11061,6 @@ level-mem@^3.0.1: level-packager@~4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-4.0.1.tgz#7e7d3016af005be0869bc5fa8de93d2a7f56ffe6" - integrity sha512-svCRKfYLn9/4CoFfi+d8krOtrp6RoX8+xm0Na5cgXMqSyRru0AnDYdLl+YI8u1FyS6gGZ94ILLZDE5dh2but3Q== dependencies: encoding-down "~5.0.0" levelup "^3.0.0" @@ -11272,7 +11150,6 @@ liftoff@^2.1.0: liftoff@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/liftoff/-/liftoff-3.1.0.tgz#c9ba6081f908670607ee79062d700df062c52ed3" - integrity sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog== dependencies: extend "^3.0.0" findup-sync "^3.0.0" @@ -11445,7 +11322,6 @@ lodash-es@^4.17.5: lodash-es@^4.2.1: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.15.tgz#21bd96839354412f23d7a10340e5eac6ee455d78" - integrity sha512-rlrc3yU3+JNOpZ9zj5pQtxnx2THmvRykwL4Xlxoa8I9lHBlVbbyPhgyPMioxVZ4NqyxaVVtaJnzsyOidQIhyyQ== lodash._basecopy@^3.0.0: version "3.0.1" @@ -11619,7 +11495,6 @@ lodash.sortby@^4.7.0: lodash.tail@^4.1.1: version "4.1.1" resolved "https://registry.npmjs.org/lodash.tail/-/lodash.tail-4.1.1.tgz#d2333a36d9e7717c8ad2f7cacafec7c32b444664" - integrity sha1-0jM6NtnncXyK0vfKyv7HwytERmQ= lodash.template@^3.0.0: version "3.6.2" @@ -11683,27 +11558,22 @@ lodash.words@^3.0.0: lodash@4.17.11, lodash@=4.17.11: version "4.17.11" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.11.tgz#b39ea6229ef607ecd89e2c8df12536891cac9b8d" - integrity sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg== lodash@4.17.14: version "4.17.14" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.14.tgz#9ce487ae66c96254fe20b599f21b6816028078ba" - integrity sha512-mmKYbW3GLuJeX+iGP+Y7Gp1AiGHGbXHCOh/jZmrawMmsE7MS4znI3RL2FsjbqOyMayHInjOeykW7PEajUk1/xw== lodash@=4.17.4: version "4.17.4" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.4.tgz#78203a4d1c328ae1d86dca6460e369b57f4055ae" - integrity sha1-eCA6TRwyiuHYbcpkYONptX9AVa4= lodash@^4.0.0, lodash@^4.13.1, lodash@^4.14.0, lodash@^4.15.0, lodash@^4.17.10, lodash@^4.17.11, lodash@^4.17.14, lodash@^4.17.15, lodash@^4.17.3, lodash@^4.17.4, lodash@^4.17.5, lodash@^4.2.1, lodash@^4.3.0, lodash@^4.5.1, lodash@~4.17.10: version "4.17.15" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" - integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== lodash@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/lodash/-/lodash-1.0.2.tgz#8f57560c83b59fc270bd3d561b690043430e2551" - integrity sha1-j1dWDIO1n8JwvT1WG2kAQ0MOJVE= log-driver@^1.2.5: version "1.2.7" @@ -11760,7 +11630,6 @@ loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.2.0, loose-envify@^1.3 loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" - integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" @@ -11966,7 +11835,6 @@ marked@^0.4.0: matchdep@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/matchdep/-/matchdep-2.0.0.tgz#c6f34834a0d8dbc3b37c27ee8bbcb27c7775582e" - integrity sha1-xvNINKDY28OzfCfui7yyfHd1WC4= dependencies: findup-sync "^2.0.0" micromatch "^3.0.4" @@ -12054,7 +11922,6 @@ memdown@^1.0.0: memdown@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/memdown/-/memdown-3.0.0.tgz#93aca055d743b20efc37492e9e399784f2958309" - integrity sha512-tbV02LfZMWLcHcq4tw++NuqMO+FZX8tNJEiD2aNRm48ZZusVg5N8NART+dmBkepJVye986oixErf7jfXboMGMA== dependencies: abstract-leveldown "~5.0.0" functional-red-black-tree "~1.0.1" @@ -12380,7 +12247,6 @@ mixin-deep@^1.2.0: mixin-object@^2.0.1: version "2.0.1" resolved "https://registry.npmjs.org/mixin-object/-/mixin-object-2.0.1.tgz#4fb949441dab182540f1fe035ba60e1947a5e57e" - integrity sha1-T7lJRB2rGCVA8f4DW6YOGUel5X4= dependencies: for-in "^0.1.3" is-extendable "^0.1.1" @@ -12517,7 +12383,6 @@ multipipe@^0.1.2: mute-stdout@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mute-stdout/-/mute-stdout-1.0.1.tgz#acb0300eb4de23a7ddeec014e3e96044b3472331" - integrity sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg== mute-stream@0.0.7, mute-stream@~0.0.4: version "0.0.7" @@ -12712,7 +12577,6 @@ node-gyp@^3.6.2: node-gyp@^3.8.0: version "3.8.0" resolved "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz#540304261c330e80d0d5edce253a68cb3964218c" - integrity sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA== dependencies: fstream "^1.0.0" glob "^7.0.3" @@ -12825,7 +12689,6 @@ node-pre-gyp@^0.12.0: node-sass@^4.12.0: version "4.12.0" resolved "https://registry.npmjs.org/node-sass/-/node-sass-4.12.0.tgz#0914f531932380114a30cc5fa4fa63233a25f017" - integrity sha512-A1Iv4oN+Iel6EPv77/HddXErL2a+gZ4uBeZUy+a8O35CFYTXhgA8MgLCWBtwpGZdCvTvQ9d+bQxX/QC36GDPpQ== dependencies: async-foreach "^0.1.3" chalk "^1.1.1" @@ -13272,7 +13135,6 @@ object.pick@^1.2.0, object.pick@^1.3.0: object.reduce@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/object.reduce/-/object.reduce-1.0.1.tgz#6fe348f2ac7fa0f95ca621226599096825bb03ad" - integrity sha1-b+NI8qx/oPlcpiEiZZkJaCW7A60= dependencies: for-own "^1.0.0" make-iterator "^1.0.0" @@ -13746,7 +13608,6 @@ parse-json@^4.0.0: parse-node-version@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/parse-node-version/-/parse-node-version-1.0.1.tgz#e2b5dbede00e7fa9bc363607f53327e8b073189b" - integrity sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA== parse-passwd@^1.0.0: version "1.0.0" @@ -14755,7 +14616,6 @@ randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5: randombytes@^2.0.6: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" - integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== dependencies: safe-buffer "^5.1.0" @@ -14974,7 +14834,6 @@ react-is@^16.6.0: react-is@^16.7.0: version "16.8.6" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.8.6.tgz#5bbc1e2d29141c9fbdfed456343fe2bc430a6a16" - integrity sha512-aUk3bHfZ2bRSVFFbbeVS4i+lNPZr3/WM5jT2J5omUVV1zzcs1nAaf3l51ctA5FFvCRbhrH0bdAsRRQddFJZPtA== react-lazyload@^2.3.0: version "2.3.0" @@ -15023,7 +14882,6 @@ react-popper@^1.0.0-beta.6: react-redux@^5.0.3: version "5.1.1" resolved "https://registry.yarnpkg.com/react-redux/-/react-redux-5.1.1.tgz#88e368682c7fa80e34e055cd7ac56f5936b0f52f" - integrity sha512-LE7Ned+cv5qe7tMV5BPYkGQ5Lpg8gzgItK07c67yHvJ8t0iaD9kPFPAli/mYkiyJYrs2pJgExR2ZgsGqlrOApg== dependencies: "@babel/runtime" "^7.1.2" hoist-non-react-statics "^3.1.0" @@ -15168,7 +15026,6 @@ react-transition-group@^1.2.1: react-transition-group@^4.2.1: version "4.2.1" resolved "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.2.1.tgz#61fc9e36568bff9a1fe4e60fae323c8a6dbc0680" - integrity sha512-IXrPr93VzCPupwm2O6n6C2kJIofJ/Rp5Ltihhm9UfE8lkuVX2ng/SUUl/oWjblybK9Fq2Io7LGa6maVqPB762Q== dependencies: "@babel/runtime" "^7.4.5" dom-helpers "^3.4.0" @@ -15449,7 +15306,6 @@ reduce-function-call@^1.0.1: redux-devtools-extension@^2.13.2: version "2.13.8" resolved "https://registry.yarnpkg.com/redux-devtools-extension/-/redux-devtools-extension-2.13.8.tgz#37b982688626e5e4993ff87220c9bbb7cd2d96e1" - integrity sha512-8qlpooP2QqPtZHQZRhx3x3OP5skEV1py/zUdMY28WNAocbafxdG2tRD1MWE7sp8obGMNYuLWanhhQ7EQvT1FBg== redux-devtools-extension@^2.13.5: version "2.13.5" @@ -15465,7 +15321,6 @@ redux@*, redux@^4.0.0: redux@^3.6.0: version "3.7.2" resolved "https://registry.yarnpkg.com/redux/-/redux-3.7.2.tgz#06b73123215901d25d065be342eb026bc1c8537b" - integrity sha512-pNqnf9q1hI5HHZRBkj3bAngGZW/JMCmexDlOxw4XagXY2o1327nHH54LoTjiPJ0gizoqPDRqWyX/00g0hD6w+A== dependencies: lodash "^4.2.1" lodash-es "^4.2.1" @@ -15646,7 +15501,6 @@ replace-ext@1.0.0, replace-ext@^1.0.0: replace-homedir@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/replace-homedir/-/replace-homedir-1.0.0.tgz#e87f6d513b928dde808260c12be7fec6ff6e798c" - integrity sha1-6H9tUTuSjd6AgmDBK+f+xv9ueYw= dependencies: homedir-polyfill "^1.0.1" is-absolute "^1.0.0" @@ -15933,7 +15787,6 @@ rlp@^2.0.0: rlp@^2.2.1: version "2.2.3" resolved "https://registry.yarnpkg.com/rlp/-/rlp-2.2.3.tgz#7f94aef86cec412df87d5ea1d8cb116a47d45f0e" - integrity sha512-l6YVrI7+d2vpW6D6rS05x2Xrmq8oW7v3pieZOJKBEdjuTF4Kz/iwk55Zyh1Zaz+KOB2kC8+2jZlp2u9L4tTzCQ== dependencies: bn.js "^4.11.1" safe-buffer "^5.1.1" @@ -15953,7 +15806,6 @@ rollbar-sourcemap-webpack-plugin@^2.4.0: rollbar@^2.4.7: version "2.10.0" resolved "https://registry.yarnpkg.com/rollbar/-/rollbar-2.10.0.tgz#a18c333eb45ebd21be128afdf9bf3a0093be7218" - integrity sha512-Ifr+KB8cXsaE9Lae3o2X7jx+WAAHMxul44Bj+P+0uGxbTO4TcHFRloUWgPVtmHxuFjpDchHbhwMwMicTseEb1Q== dependencies: async "~1.2.1" buffer-from ">=1.1" @@ -16084,7 +15936,6 @@ sane@^2.0.0: sass-graph@^2.2.4: version "2.2.4" resolved "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.4.tgz#13fbd63cd1caf0908b9fd93476ad43a51d1e0b49" - integrity sha1-E/vWPNHK8JCLn9k0dq1DpR0eC0k= dependencies: glob "^7.0.0" lodash "^4.0.0" @@ -16094,7 +15945,6 @@ sass-graph@^2.2.4: sass-loader@^7.1.0: version "7.1.0" resolved "https://registry.npmjs.org/sass-loader/-/sass-loader-7.1.0.tgz#16fd5138cb8b424bf8a759528a1972d72aad069d" - integrity sha512-+G+BKGglmZM2GUSfT9TLuEp6tzehHPjAMoRRItOojWIqIGPloVCMhNIQuG639eJ+y033PaGTSjLaTHts8Kw79w== dependencies: clone-deep "^2.0.1" loader-utils "^1.0.1" @@ -16142,7 +15992,6 @@ schema-utils@^1.0.0: scrypt-async@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/scrypt-async/-/scrypt-async-1.3.1.tgz#a11fd6fac981b4b823ee01dee0221169500ddae9" - integrity sha1-oR/W+smBtLgj7gHe4CIRaVAN2uk= scrypt-js@2.0.4: version "2.0.4" @@ -16158,7 +16007,6 @@ scrypt.js@0.2.0: scrypt.js@^0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/scrypt.js/-/scrypt.js-0.3.0.tgz#6c62d61728ad533c8c376a2e5e3e86d41a95c4c0" - integrity sha512-42LTc1nyFsyv/o0gcHtDztrn+aqpkaCNt5Qh7ATBZfhEZU7IC/0oT/qbBH+uRNoAPvs2fwiOId68FDEoSRA8/A== dependencies: scryptsy "^1.2.1" optionalDependencies: @@ -16179,7 +16027,6 @@ scryptsy@^1.2.1: scss-tokenizer@^0.2.3: version "0.2.3" resolved "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz#8eb06db9a9723333824d3f5530641149847ce5d1" - integrity sha1-jrBtualyMzOCTT9VMGQRSYR85dE= dependencies: js-base64 "^2.1.8" source-map "^0.4.2" @@ -16204,7 +16051,6 @@ seedrandom@2.4.4: seedrandom@3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/seedrandom/-/seedrandom-3.0.1.tgz#eb3dde015bcf55df05a233514e5df44ef9dce083" - integrity sha512-1/02Y/rUeU1CJBAGLebiC5Lbo5FnB22gQbIFFYTLkwvp1xdABZJH1sn4ZT1MzXmPpzv+Rf/Lu2NcsLJiK4rcDg== seek-bzip@^1.0.5: version "1.0.5" @@ -16243,7 +16089,6 @@ semver-diff@^2.0.0, semver-diff@^2.1.0: semver-greatest-satisfied-range@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz#13e8c2658ab9691cb0cd71093240280d36f77a5b" - integrity sha1-E+jCZYq5aRywzXEJMkAoDTb3els= dependencies: sver-compat "^1.5.0" @@ -16412,7 +16257,6 @@ sha3@^1.1.0: shallow-clone@^1.0.0: version "1.0.0" resolved "https://registry.npmjs.org/shallow-clone/-/shallow-clone-1.0.0.tgz#4480cd06e882ef68b2ad88a3ea54832e2c48b571" - integrity sha512-oeXreoKR/SyNJtRJMAKPDSvd28OqEwG4eR/xc856cRGBII7gX9lvAqDxusPm0846z/w/hWYjI1NpKwJ00NHzRA== dependencies: is-extendable "^0.1.1" kind-of "^5.0.0" @@ -16736,7 +16580,6 @@ source-map-resolve@^0.5.2: source-map-support@0.5.12: version "0.5.12" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.12.tgz#b4f3b10d51857a5af0138d3ce8003b201613d599" - integrity sha512-4h2Pbvyy15EE02G+JOZpUCmqWJuqrs+sEkzewTm++BPi7Hvn/HwcqLAcNxYAyI0x13CpPPn+kMjl+hplXMHITQ== dependencies: buffer-from "^1.0.0" source-map "^0.6.0" @@ -16774,12 +16617,10 @@ source-map-url@^0.4.0: source-map@>=0.5.0: version "0.7.3" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" - integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== source-map@^0.4.2: version "0.4.4" resolved "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" - integrity sha1-66T12pwNyZneaAMti092FzZSA2s= dependencies: amdefine ">=0.0.4" @@ -16963,7 +16804,6 @@ statuses@~1.4.0: stdout-stream@^1.4.0: version "1.4.1" resolved "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz#5ac174cdd5cd726104aa0c0b2bd83815d8d535de" - integrity sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA== dependencies: readable-stream "^2.0.1" @@ -17002,7 +16842,6 @@ stream-each@^1.1.0: stream-exhaust@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/stream-exhaust/-/stream-exhaust-1.0.2.tgz#acdac8da59ef2bc1e17a2c0ccf6c320d120e555d" - integrity sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw== stream-http@^2.7.2: version "2.8.1" @@ -17266,7 +17105,6 @@ supports-color@^5.5.0: sver-compat@^1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/sver-compat/-/sver-compat-1.5.0.tgz#3cf87dfeb4d07b4a3f14827bc186b3fd0c645cd8" - integrity sha1-PPh9/rTQe0o/FIJ7wYaz/QxkXNg= dependencies: es6-iterator "^2.0.1" es6-symbol "^3.1.1" @@ -17673,7 +17511,6 @@ tmp@0.0.33, tmp@^0.0.33: tmp@0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.1.0.tgz#ee434a4e22543082e294ba6201dcc6eafefa2877" - integrity sha512-J7Z2K08jbGcdA1kkQpJSqLF6T0tdQqpR2pnSUXsIchbPdTI9v3e85cLW0d6WDhwuAleOV71j2xWs8qMPfK7nKw== dependencies: rimraf "^2.6.3" @@ -17826,7 +17663,6 @@ trough@^1.0.0: "true-case-path@^1.0.2": version "1.0.3" resolved "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz#f813b5a8c86b40da59606722b144e3225799f47d" - integrity sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew== dependencies: glob "^7.1.2" @@ -17955,12 +17791,10 @@ tunnel-agent@^0.6.0: tweetnacl-util@^0.15.0: version "0.15.0" resolved "https://registry.yarnpkg.com/tweetnacl-util/-/tweetnacl-util-0.15.0.tgz#4576c1cee5e2d63d207fee52f1ba02819480bc75" - integrity sha1-RXbBzuXi1j0gf+5S8boCgZSAvHU= tweetnacl@0.13.2: version "0.13.2" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.13.2.tgz#453161770469d45cd266c36404e2bc99a8fa9944" - integrity sha1-RTFhdwRp1FzSZsNkBOK8maj6mUQ= tweetnacl@^0.14.3, tweetnacl@~0.14.0: version "0.14.5" @@ -17969,7 +17803,6 @@ tweetnacl@^0.14.3, tweetnacl@~0.14.0: tweetnacl@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-1.0.1.tgz#2594d42da73cd036bd0d2a54683dd35a6b55ca17" - integrity sha512-kcoMoKTPYnoeS50tzoqjPY3Uv9axeuuFAZY9M/9zFnhoVvRfxz9K29IMPD7jGmt2c8SW7i3gT9WqDl2+nV7p4A== type-check@~0.3.2: version "0.3.2" @@ -18185,12 +18018,10 @@ underscore@~1.4.4: undertaker-registry@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/undertaker-registry/-/undertaker-registry-1.0.1.tgz#5e4bda308e4a8a2ae584f9b9a4359a499825cc50" - integrity sha1-XkvaMI5KiirlhPm5pDWaSZglzFA= undertaker@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/undertaker/-/undertaker-1.2.1.tgz#701662ff8ce358715324dfd492a4f036055dfe4b" - integrity sha512-71WxIzDkgYk9ZS+spIB8iZXchFhAdEo2YU8xYqBYJ39DIUIqziK78ftm26eecoIY49X0J2MLhG4hr18Yp6/CMA== dependencies: arr-flatten "^1.0.1" arr-map "^2.0.0" @@ -18332,7 +18163,6 @@ unorm@^1.3.3: unorm@^1.4.1: version "1.6.0" resolved "https://registry.yarnpkg.com/unorm/-/unorm-1.6.0.tgz#029b289661fba714f1a9af439eb51d9b16c205af" - integrity sha512-b2/KCUlYZUeA7JFUuRJZPUtr4gZvBh7tavtv4fvk4+KV9pfGiR6CQAQAWl49ZpR3ts2dk4FYkP7EIgDJoiOLDA== unpipe@1.0.0, unpipe@~1.0.0: version "1.0.0" @@ -18546,7 +18376,6 @@ v8flags@^2.0.2: v8flags@^3.0.1: version "3.1.3" resolved "https://registry.yarnpkg.com/v8flags/-/v8flags-3.1.3.tgz#fc9dc23521ca20c5433f81cc4eb9b3033bb105d8" - integrity sha512-amh9CCg3ZxkzQ48Mhcb8iX7xpAfYJgePHxWMQCBWECpOSqJUXgY26ncA61UTV0BkPqfhcy6mzwCIoP4ygxpW8w== dependencies: homedir-polyfill "^1.0.1" @@ -18965,7 +18794,6 @@ web3-provider-engine@14.1.0: web3-provider-engine@14.2.0: version "14.2.0" resolved "https://registry.yarnpkg.com/web3-provider-engine/-/web3-provider-engine-14.2.0.tgz#2efec157b2c429c5c674c079aea96b0a06de8b3d" - integrity sha512-sfLH5VhGjJrJJT5WcF8aGehcIKRUQ553q9tjQkkLaKU2AaLsRcwffnnWvrgeTkmKSf0y9dwkDTa48RVp+GUCSg== dependencies: async "^2.5.0" backoff "^2.5.0" @@ -19077,7 +18905,6 @@ web3-utils@1.0.0-beta.35: web3@0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/web3/-/web3-0.20.2.tgz#c54dac5fc0e377399c04c1a6ecbb12e4513278d6" - integrity sha1-xU2sX8DjdzmcBMGm7LsS5FEyeNY= dependencies: bignumber.js "git+https://github.com/frozeman/bignumber.js-nolookahead.git" crypto-js "^3.1.4" @@ -19271,7 +19098,6 @@ websocket@1.0.26: websocket@1.0.29: version "1.0.29" resolved "https://registry.yarnpkg.com/websocket/-/websocket-1.0.29.tgz#3f83e49d3279657c58b02a22d90749c806101b98" - integrity sha512-WhU8jKXC8sTh6ocLSqpZRlOKMNYGwUvjA5+XcIgIk/G3JCaDfkZUr0zA19sVSxJ0TEvm0i5IBzr54RZC4vzW7g== dependencies: debug "^2.2.0" gulp "^4.0.2" @@ -19710,7 +19536,6 @@ yargs-parser@^2.4.1: yargs-parser@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-5.0.0.tgz#275ecf0d7ffe05c77e64e7c86e4cd94bf0e1228a" - integrity sha1-J17PDX/+Bcd+ZOfIbkzZS/DhIoo= dependencies: camelcase "^3.0.0" @@ -19880,7 +19705,6 @@ yargs@^4.7.1: yargs@^7.0.0, yargs@^7.1.0: version "7.1.0" resolved "https://registry.yarnpkg.com/yargs/-/yargs-7.1.0.tgz#6ba318eb16961727f5d284f8ea003e8d6154d0c8" - integrity sha1-a6MY6xaWFyf10oT46gA+jWFU0Mg= dependencies: camelcase "^3.0.0" cliui "^3.2.0" From 8cd99c5a402f57b4543b01ad5f0a5e12c55d6ece Mon Sep 17 00:00:00 2001 From: Jacob Evans Date: Tue, 6 Aug 2019 17:26:49 +1000 Subject: [PATCH 12/12] Update Changelog --- packages/migrations/CHANGELOG.json | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/migrations/CHANGELOG.json b/packages/migrations/CHANGELOG.json index 63d44efb1c..73cd030939 100644 --- a/packages/migrations/CHANGELOG.json +++ b/packages/migrations/CHANGELOG.json @@ -1,14 +1,19 @@ [ + { + "version": "4.2.0", + "changes": [ + { + "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", + "pr": 2021 + } + ] + }, { "version": "4.1.11", "changes": [ { "note": "Updated calls to .deploy0xArtifactAsync to include log decode dependencies.", "pr": 1995 - }, - { - "note": "Added StaticCallAssetProxy and ERC1155AssetProxy", - "pr": 2021 } ], "timestamp": 1564604963