Compare commits
	
		
			5 Commits
		
	
	
		
			@0x/contra
			...
			@0x/contra
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
|  | 2a6d66cc2a | ||
|  | b02992a373 | ||
|  | 92ad924965 | ||
|  | 138383e95c | ||
|  | 0487cb7d39 | 
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "3.7.8-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "3.7.7", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.7.8-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v3.7.7 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-asset-proxy", | ||||
|     "version": "3.7.7", | ||||
|     "version": "3.7.8-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -52,10 +52,10 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/protocol", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
| @@ -80,11 +80,11 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-erc1155": "^2.1.25", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/contracts-erc1155": "^2.1.26-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "1.1.26-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "1.1.25", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v1.1.26-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v1.1.25 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-broker", | ||||
|     "version": "1.1.25", | ||||
|     "version": "1.1.26-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -52,14 +52,14 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -85,7 +85,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|         "ethereum-types": "^3.4.0" | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "3.1.27-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "3.1.26", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.1.27-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v3.1.26 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-coordinator", | ||||
|     "version": "3.1.26", | ||||
|     "version": "3.1.27-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -53,12 +53,12 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -85,9 +85,9 @@ | ||||
|         "@0x/assert": "^3.0.21", | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/json-schemas": "^5.4.1", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "1.3.25-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "1.3.24", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v1.3.25-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v1.3.24 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-dev-utils", | ||||
|     "version": "1.3.24", | ||||
|     "version": "1.3.25-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -43,10 +43,10 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/assert": "^3.0.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "2.1.26-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "2.1.25", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v2.1.26-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v2.1.25 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-erc1155", | ||||
|     "version": "2.1.25", | ||||
|     "version": "2.1.26-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -54,7 +54,7 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
| @@ -81,7 +81,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|         "@0x/web3-wrapper": "^7.4.1", | ||||
|         "lodash": "^4.17.11" | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "3.3.5-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "3.3.4", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.3.5-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v3.3.4 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-erc20", | ||||
|     "version": "3.3.4", | ||||
|     "version": "3.3.5-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -53,8 +53,8 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "3.1.26-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "3.1.25", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.1.26-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v3.1.25 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-erc721", | ||||
|     "version": "3.1.25", | ||||
|     "version": "3.1.26-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -54,8 +54,8 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "4.2.27-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "4.2.26", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v4.2.27-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v4.2.26 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-exchange-forwarder", | ||||
|     "version": "4.2.26", | ||||
|     "version": "4.2.27-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -53,18 +53,18 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc1155": "^2.1.25", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc1155": "^2.1.26-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "4.3.26-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "4.3.25", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v4.3.26-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v4.3.25 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-exchange-libs", | ||||
|     "version": "4.3.25", | ||||
|     "version": "4.3.26-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -81,9 +81,9 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "3.2.27-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "3.2.26", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.2.27-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v3.2.26 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-exchange", | ||||
|     "version": "3.2.26", | ||||
|     "version": "3.2.27-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -53,13 +53,13 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/protocol", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-multisig": "^4.1.26", | ||||
|         "@0x/contracts-staking": "^2.0.33", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-multisig": "^4.1.27-multiplex.0", | ||||
|         "@0x/contracts-staking": "^2.0.34-multiplex.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
| @@ -89,11 +89,11 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc1155": "^2.1.25", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc1155": "^2.1.26-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|         "lodash": "^4.17.11" | ||||
|     }, | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "6.2.21-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "6.2.20", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v6.2.21-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v6.2.20 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-extensions", | ||||
|     "version": "6.2.20", | ||||
|     "version": "6.2.21-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -53,16 +53,16 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -91,7 +91,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|         "ethereum-types": "^3.4.0" | ||||
|     }, | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-integrations", | ||||
|     "version": "2.7.28", | ||||
|     "version": "2.7.29-multiplex.0", | ||||
|     "private": true, | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
| @@ -54,20 +54,20 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contracts-broker": "^1.1.25", | ||||
|         "@0x/contracts-coordinator": "^3.1.26", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-exchange-forwarder": "^4.2.26", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-extensions": "^6.2.20", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/contracts-broker": "^1.1.26-multiplex.0", | ||||
|         "@0x/contracts-coordinator": "^3.1.27-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-exchange-forwarder": "^4.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-extensions": "^6.2.21-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/coordinator-server": "^1.0.5", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/migrations": "^7.0.0", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/protocol-utils": "^1.3.0", | ||||
|         "@0x/migrations": "^7.0.1-multiplex.0", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/protocol-utils": "^1.3.1-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|         "@0x/web3-wrapper": "^7.4.1", | ||||
| @@ -93,17 +93,17 @@ | ||||
|         "typescript": "3.0.1" | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/asset-swapper": "^6.2.0", | ||||
|         "@0x/asset-swapper": "^6.3.0-multiplex", | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-erc1155": "^2.1.25", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-multisig": "^4.1.26", | ||||
|         "@0x/contracts-staking": "^2.0.33", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-zero-ex": "^0.19.0", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc1155": "^2.1.26-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-multisig": "^4.1.27-multiplex.0", | ||||
|         "@0x/contracts-staking": "^2.0.34-multiplex.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-zero-ex": "^0.20.0-multiplex", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "4.1.27-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "4.1.26", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v4.1.27-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v4.1.26 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-multisig", | ||||
|     "version": "4.1.26", | ||||
|     "version": "4.1.27-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -50,11 +50,11 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/multisig", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "2.0.34-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "2.0.33", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v2.0.34-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v2.0.33 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-staking", | ||||
|     "version": "2.0.33", | ||||
|     "version": "2.0.34-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -54,14 +54,14 @@ | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/contracts/tokens", | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -88,7 +88,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|         "ethereum-types": "^3.4.0", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "5.3.23-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "5.3.22", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v5.3.23-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v5.3.22 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-test-utils", | ||||
|     "version": "5.3.22", | ||||
|     "version": "5.3.23-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -47,7 +47,7 @@ | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/json-schemas": "^5.4.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-coverage": "^4.0.31", | ||||
|         "@0x/sol-profiler": "^4.1.21", | ||||
|         "@0x/sol-trace": "^3.0.31", | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "version": "1.1.0", | ||||
|         "version": "1.1.0-multiplex", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Make the proposal/quorum thresholds updatable", | ||||
|                 "pr": 165 | ||||
|             } | ||||
|         ] | ||||
|         ], | ||||
|         "timestamp": 1615932869 | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v1.1.0-multiplex - _March 16, 2021_ | ||||
|  | ||||
|     * Make the proposal/quorum thresholds updatable (#165) | ||||
|  | ||||
| ## v1.0.2 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-treasury", | ||||
|     "version": "1.0.2", | ||||
|     "version": "1.1.0-multiplex", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -48,11 +48,11 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-staking": "^2.0.33", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-staking": "^2.0.34-multiplex.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -73,7 +73,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/protocol-utils": "^1.3.0", | ||||
|         "@0x/protocol-utils": "^1.3.1-multiplex.0", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "4.7.5-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "4.7.4", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v4.7.5-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v4.7.4 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-utils", | ||||
|     "version": "4.7.4", | ||||
|     "version": "4.7.5-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -52,9 +52,9 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|         "@0x/types": "^3.3.1", | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| [ | ||||
|     { | ||||
|         "version": "0.20.0", | ||||
|         "version": "0.20.0-multiplex", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Add `MooniswapLiquidityProvider`", | ||||
| @@ -13,8 +13,13 @@ | ||||
|             { | ||||
|                 "note": "Add BatchFillNativeOrdersFeature and MultiplexFeature", | ||||
|                 "pr": 140 | ||||
|             }, | ||||
|             { | ||||
|                 "note": "Export MultiplexFeatureContract", | ||||
|                 "pr": 168 | ||||
|             } | ||||
|         ] | ||||
|         ], | ||||
|         "timestamp": 1615932869 | ||||
|     }, | ||||
|     { | ||||
|         "version": "0.19.0", | ||||
|   | ||||
| @@ -5,6 +5,13 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v0.20.0-multiplex - _March 16, 2021_ | ||||
|  | ||||
|     * Add `MooniswapLiquidityProvider` (#143) | ||||
|     * Emit `LiquidityProviderFill` event in `CurveLiquidityProvider` (#143) | ||||
|     * Add BatchFillNativeOrdersFeature and MultiplexFeature (#140) | ||||
|     * Export MultiplexFeatureContract (#168) | ||||
|  | ||||
| ## v0.19.0 - _February 24, 2021_ | ||||
|  | ||||
|     * Add `CurveLiquidityProvider` and misc refactors (#127) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contracts-zero-ex", | ||||
|     "version": "0.19.0", | ||||
|     "version": "0.20.0-multiplex", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -57,11 +57,11 @@ | ||||
|     "devDependencies": { | ||||
|         "@0x/abi-gen": "^5.4.21", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
| @@ -83,7 +83,7 @@ | ||||
|     }, | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/protocol-utils": "^1.3.0", | ||||
|         "@0x/protocol-utils": "^1.3.1-multiplex.0", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|   | ||||
| @@ -45,6 +45,7 @@ export { | ||||
|     ITransformERC20FeatureContract, | ||||
|     IZeroExContract, | ||||
|     LogMetadataTransformerContract, | ||||
|     MultiplexFeatureContract, | ||||
|     PayTakerTransformerContract, | ||||
|     PositiveSlippageFeeTransformerContract, | ||||
|     WethTransformerContract, | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| [ | ||||
|     { | ||||
|         "version": "6.3.0", | ||||
|         "version": "6.3.0-multiplex", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Add MooniswapLiquidityProvider \"direct\" route to EP consumer.", | ||||
| @@ -9,8 +9,13 @@ | ||||
|             { | ||||
|                 "note": "Enable the ability to send RFQT requests thru a proxy", | ||||
|                 "pr": 159 | ||||
|             }, | ||||
|             { | ||||
|                 "note": "Add support for MultiplexFeature", | ||||
|                 "pr": 168 | ||||
|             } | ||||
|         ] | ||||
|         ], | ||||
|         "timestamp": 1615932869 | ||||
|     }, | ||||
|     { | ||||
|         "version": "6.2.0", | ||||
|   | ||||
| @@ -5,6 +5,12 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v6.3.0-multiplex - _March 16, 2021_ | ||||
|  | ||||
|     * Add MooniswapLiquidityProvider "direct" route to EP consumer. (#143) | ||||
|     * Enable the ability to send RFQT requests thru a proxy (#159) | ||||
|     * Add support for MultiplexFeature (#168) | ||||
|  | ||||
| ## v6.2.0 - _March 2, 2021_ | ||||
|  | ||||
|     * drop curve Y and BUSD pools (#161) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/asset-swapper", | ||||
|     "version": "6.2.0", | ||||
|     "version": "6.3.0-multiplex", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -60,10 +60,12 @@ | ||||
|         "@0x/assert": "^3.0.21", | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-zero-ex": "^0.20.0-multiplex", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/json-schemas": "^5.4.1", | ||||
|         "@0x/protocol-utils": "^1.3.0", | ||||
|         "@0x/protocol-utils": "^1.3.1-multiplex.0", | ||||
|         "@0x/quote-server": "^4.0.1", | ||||
|         "@0x/types": "^3.3.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
| @@ -86,16 +88,15 @@ | ||||
|     }, | ||||
|     "devDependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.25", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-libs": "^4.3.26-multiplex.0", | ||||
|         "@0x/contracts-gen": "^2.0.32", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-zero-ex": "^0.19.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/mesh-rpc-client": "^9.4.2", | ||||
|         "@0x/migrations": "^7.0.0", | ||||
|         "@0x/migrations": "^7.0.1-multiplex.0", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|   | ||||
| @@ -1,5 +1,6 @@ | ||||
| import { ContractAddresses } from '@0x/contract-addresses'; | ||||
| import { IZeroExContract } from '@0x/contract-wrappers'; | ||||
| import { WETH9Contract } from '@0x/contracts-erc20'; | ||||
| import { IZeroExContract, MultiplexFeatureContract } from '@0x/contracts-zero-ex'; | ||||
| import { | ||||
|     encodeAffiliateFeeTransformerData, | ||||
|     encodeCurveLiquidityProviderData, | ||||
| @@ -8,7 +9,6 @@ import { | ||||
|     encodePositiveSlippageFeeTransformerData, | ||||
|     encodeWethTransformerData, | ||||
|     ETH_TOKEN_ADDRESS, | ||||
|     FillQuoteTransformerData, | ||||
|     FillQuoteTransformerOrderType, | ||||
|     FillQuoteTransformerSide, | ||||
|     findTransformerNonce, | ||||
| @@ -23,7 +23,6 @@ import { | ||||
|     CalldataInfo, | ||||
|     ExchangeProxyContractOpts, | ||||
|     MarketBuySwapQuote, | ||||
|     MarketOperation, | ||||
|     MarketSellSwapQuote, | ||||
|     SwapQuote, | ||||
|     SwapQuoteConsumerBase, | ||||
| @@ -36,24 +35,30 @@ import { | ||||
|     CURVE_LIQUIDITY_PROVIDER_BY_CHAIN_ID, | ||||
|     MOONISWAP_LIQUIDITY_PROVIDER_BY_CHAIN_ID, | ||||
| } from '../utils/market_operation_utils/constants'; | ||||
| import { | ||||
|     createBridgeDataForBridgeOrder, | ||||
|     getERC20BridgeSourceToBridgeSource, | ||||
|     poolEncoder, | ||||
| } from '../utils/market_operation_utils/orders'; | ||||
| import { poolEncoder } from '../utils/market_operation_utils/orders'; | ||||
| import { | ||||
|     CurveFillData, | ||||
|     ERC20BridgeSource, | ||||
|     LiquidityProviderFillData, | ||||
|     MooniswapFillData, | ||||
|     NativeLimitOrderFillData, | ||||
|     NativeRfqOrderFillData, | ||||
|     OptimizedMarketBridgeOrder, | ||||
|     OptimizedMarketOrder, | ||||
|     OptimizedMarketOrderBase, | ||||
|     UniswapV2FillData, | ||||
| } from '../utils/market_operation_utils/types'; | ||||
|  | ||||
| import { | ||||
|     multiplexPlpEncoder, | ||||
|     multiplexRfqEncoder, | ||||
|     multiplexTransformERC20Encoder, | ||||
|     multiplexUniswapEncoder, | ||||
| } from './multiplex_encoders'; | ||||
| import { | ||||
|     getFQTTransformerDataFromOptimizedOrders, | ||||
|     isBuyQuote, | ||||
|     isDirectSwapCompatible, | ||||
|     isMultiplexBatchFillCompatible, | ||||
|     isMultiplexMultiHopFillCompatible, | ||||
| } from './quote_consumer_utils'; | ||||
|  | ||||
| // tslint:disable-next-line:custom-no-magic-numbers | ||||
| const MAX_UINT256 = new BigNumber(2).pow(256).minus(1); | ||||
| const { NULL_ADDRESS, NULL_BYTES, ZERO_AMOUNT } = constants; | ||||
| @@ -70,6 +75,7 @@ export class ExchangeProxySwapQuoteConsumer implements SwapQuoteConsumerBase { | ||||
|     }; | ||||
|  | ||||
|     private readonly _exchangeProxy: IZeroExContract; | ||||
|     private readonly _multiplex: MultiplexFeatureContract; | ||||
|  | ||||
|     constructor( | ||||
|         supportedProvider: SupportedProvider, | ||||
| @@ -83,6 +89,7 @@ export class ExchangeProxySwapQuoteConsumer implements SwapQuoteConsumerBase { | ||||
|         this.chainId = chainId; | ||||
|         this.contractAddresses = contractAddresses; | ||||
|         this._exchangeProxy = new IZeroExContract(contractAddresses.exchangeProxy, supportedProvider); | ||||
|         this._multiplex = new MultiplexFeatureContract(contractAddresses.exchangeProxy, supportedProvider); | ||||
|         this.transformerNonces = { | ||||
|             wethTransformer: findTransformerNonce( | ||||
|                 contractAddresses.transformers.wethTransformer, | ||||
| @@ -229,6 +236,25 @@ export class ExchangeProxySwapQuoteConsumer implements SwapQuoteConsumerBase { | ||||
|             }; | ||||
|         } | ||||
|  | ||||
|         if (isMultiplexBatchFillCompatible(quote, optsWithDefaults)) { | ||||
|             return { | ||||
|                 calldataHexString: this._encodeMultiplexBatchFillCalldata(quote), | ||||
|                 ethAmount, | ||||
|                 toAddress: this._exchangeProxy.address, | ||||
|                 allowanceTarget: this._exchangeProxy.address, | ||||
|                 gasOverhead: ZERO_AMOUNT, | ||||
|             }; | ||||
|         } | ||||
|         if (isMultiplexMultiHopFillCompatible(quote, optsWithDefaults)) { | ||||
|             return { | ||||
|                 calldataHexString: this._encodeMultiplexMultiHopFillCalldata(quote, optsWithDefaults), | ||||
|                 ethAmount, | ||||
|                 toAddress: this._exchangeProxy.address, | ||||
|                 allowanceTarget: this._exchangeProxy.address, | ||||
|                 gasOverhead: ZERO_AMOUNT, | ||||
|             }; | ||||
|         } | ||||
|  | ||||
|         // Build up the transforms. | ||||
|         const transforms = []; | ||||
|         if (isFromETH) { | ||||
| @@ -380,91 +406,145 @@ export class ExchangeProxySwapQuoteConsumer implements SwapQuoteConsumerBase { | ||||
|     ): Promise<string> { | ||||
|         throw new Error('Execution not supported for Exchange Proxy quotes'); | ||||
|     } | ||||
| } | ||||
|  | ||||
| function isDirectSwapCompatible( | ||||
|     quote: SwapQuote, | ||||
|     opts: ExchangeProxyContractOpts, | ||||
|     directSources: ERC20BridgeSource[], | ||||
| ): boolean { | ||||
|     // Must not be a mtx. | ||||
|     if (opts.isMetaTransaction) { | ||||
|         return false; | ||||
|     } | ||||
|     // Must not have an affiliate fee. | ||||
|     if (!opts.affiliateFee.buyTokenFeeAmount.eq(0) || !opts.affiliateFee.sellTokenFeeAmount.eq(0)) { | ||||
|         return false; | ||||
|     } | ||||
|     // Must not have a positive slippage fee. | ||||
|     if (opts.affiliateFee.feeType === AffiliateFeeType.PositiveSlippageFee) { | ||||
|         return false; | ||||
|     } | ||||
|     // Must be a single order. | ||||
|     if (quote.orders.length !== 1) { | ||||
|         return false; | ||||
|     } | ||||
|     const order = quote.orders[0]; | ||||
|     if (!directSources.includes(order.source)) { | ||||
|         return false; | ||||
|     } | ||||
|     // VIP does not support selling the entire balance | ||||
|     if (opts.shouldSellEntireBalance) { | ||||
|         return false; | ||||
|     } | ||||
|     return true; | ||||
| } | ||||
|  | ||||
| function isBuyQuote(quote: SwapQuote): quote is MarketBuySwapQuote { | ||||
|     return quote.type === MarketOperation.Buy; | ||||
| } | ||||
|  | ||||
| function isOptimizedBridgeOrder(x: OptimizedMarketOrder): x is OptimizedMarketBridgeOrder { | ||||
|     return x.type === FillQuoteTransformerOrderType.Bridge; | ||||
| } | ||||
|  | ||||
| function isOptimizedLimitOrder(x: OptimizedMarketOrder): x is OptimizedMarketOrderBase<NativeLimitOrderFillData> { | ||||
|     return x.type === FillQuoteTransformerOrderType.Limit; | ||||
| } | ||||
|  | ||||
| function isOptimizedRfqOrder(x: OptimizedMarketOrder): x is OptimizedMarketOrderBase<NativeRfqOrderFillData> { | ||||
|     return x.type === FillQuoteTransformerOrderType.Rfq; | ||||
| } | ||||
|  | ||||
| function getFQTTransformerDataFromOptimizedOrders( | ||||
|     orders: OptimizedMarketOrder[], | ||||
| ): Pick<FillQuoteTransformerData, 'bridgeOrders' | 'limitOrders' | 'rfqOrders' | 'fillSequence'> { | ||||
|     const fqtData: Pick<FillQuoteTransformerData, 'bridgeOrders' | 'limitOrders' | 'rfqOrders' | 'fillSequence'> = { | ||||
|         bridgeOrders: [], | ||||
|         limitOrders: [], | ||||
|         rfqOrders: [], | ||||
|         fillSequence: [], | ||||
|     }; | ||||
|  | ||||
|     for (const order of orders) { | ||||
|         if (isOptimizedBridgeOrder(order)) { | ||||
|             fqtData.bridgeOrders.push({ | ||||
|                 bridgeData: createBridgeDataForBridgeOrder(order), | ||||
|                 makerTokenAmount: order.makerAmount, | ||||
|                 takerTokenAmount: order.takerAmount, | ||||
|                 source: getERC20BridgeSourceToBridgeSource(order.source), | ||||
|             }); | ||||
|         } else if (isOptimizedLimitOrder(order)) { | ||||
|             fqtData.limitOrders.push({ | ||||
|                 order: order.fillData.order, | ||||
|                 signature: order.fillData.signature, | ||||
|                 maxTakerTokenFillAmount: order.takerAmount, | ||||
|             }); | ||||
|         } else if (isOptimizedRfqOrder(order)) { | ||||
|             fqtData.rfqOrders.push({ | ||||
|                 order: order.fillData.order, | ||||
|                 signature: order.fillData.signature, | ||||
|                 maxTakerTokenFillAmount: order.takerAmount, | ||||
|             }); | ||||
|         } else { | ||||
|             // Should never happen | ||||
|             throw new Error('Unknown Order type'); | ||||
|     private _encodeMultiplexBatchFillCalldata(quote: SwapQuote): string { | ||||
|         const wrappedBatchCalls = []; | ||||
|         for_loop: for (const [i, order] of quote.orders.entries()) { | ||||
|             switch_statement: switch (order.source) { | ||||
|                 case ERC20BridgeSource.Native: | ||||
|                     if (order.type !== FillQuoteTransformerOrderType.Rfq) { | ||||
|                         // Should never happen because we check `isMultiplexBatchFillCompatible` | ||||
|                         // before calling this function. | ||||
|                         throw new Error('Multiplex batch fill only supported for RFQ native orders'); | ||||
|                     } | ||||
|                     wrappedBatchCalls.push({ | ||||
|                         selector: this._multiplex.getSelector('_fillRfqOrder'), | ||||
|                         sellAmount: order.takerAmount, | ||||
|                         data: multiplexRfqEncoder.encode({ | ||||
|                             order: order.fillData.order, | ||||
|                             signature: order.fillData.signature, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break switch_statement; | ||||
|                 case ERC20BridgeSource.UniswapV2: | ||||
|                 case ERC20BridgeSource.SushiSwap: | ||||
|                     wrappedBatchCalls.push({ | ||||
|                         selector: this._multiplex.getSelector('_sellToUniswap'), | ||||
|                         sellAmount: order.takerAmount, | ||||
|                         data: multiplexUniswapEncoder.encode({ | ||||
|                             tokens: (order.fillData as UniswapV2FillData).tokenAddressPath, | ||||
|                             isSushi: order.source === ERC20BridgeSource.SushiSwap, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break switch_statement; | ||||
|                 case ERC20BridgeSource.LiquidityProvider: | ||||
|                     wrappedBatchCalls.push({ | ||||
|                         selector: this._multiplex.getSelector('_sellToLiquidityProvider'), | ||||
|                         sellAmount: order.takerAmount, | ||||
|                         data: multiplexPlpEncoder.encode({ | ||||
|                             provider: (order.fillData as LiquidityProviderFillData).poolAddress, | ||||
|                             auxiliaryData: NULL_BYTES, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break switch_statement; | ||||
|                 default: | ||||
|                     const fqtData = encodeFillQuoteTransformerData({ | ||||
|                         side: FillQuoteTransformerSide.Sell, | ||||
|                         sellToken: quote.takerToken, | ||||
|                         buyToken: quote.makerToken, | ||||
|                         ...getFQTTransformerDataFromOptimizedOrders(quote.orders.slice(i)), | ||||
|                         refundReceiver: NULL_ADDRESS, | ||||
|                         fillAmount: MAX_UINT256, | ||||
|                     }); | ||||
|                     const transformations = [ | ||||
|                         { deploymentNonce: this.transformerNonces.fillQuoteTransformer, data: fqtData }, | ||||
|                         { | ||||
|                             deploymentNonce: this.transformerNonces.payTakerTransformer, | ||||
|                             data: encodePayTakerTransformerData({ | ||||
|                                 tokens: [quote.takerToken, quote.makerToken], | ||||
|                                 amounts: [], | ||||
|                             }), | ||||
|                         }, | ||||
|                     ]; | ||||
|                     wrappedBatchCalls.push({ | ||||
|                         selector: this._exchangeProxy.getSelector('_transformERC20'), | ||||
|                         sellAmount: BigNumber.sum(...quote.orders.slice(i).map(o => o.takerAmount)), | ||||
|                         data: multiplexTransformERC20Encoder.encode({ | ||||
|                             transformations, | ||||
|                             ethValue: constants.ZERO_AMOUNT, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break for_loop; | ||||
|             } | ||||
|         } | ||||
|         fqtData.fillSequence.push(order.type); | ||||
|         return this._exchangeProxy | ||||
|             .batchFill( | ||||
|                 { | ||||
|                     inputToken: quote.takerToken, | ||||
|                     outputToken: quote.makerToken, | ||||
|                     sellAmount: quote.worstCaseQuoteInfo.totalTakerAmount, | ||||
|                     calls: wrappedBatchCalls, | ||||
|                 }, | ||||
|                 quote.worstCaseQuoteInfo.makerAmount, | ||||
|             ) | ||||
|             .getABIEncodedTransactionData(); | ||||
|     } | ||||
|  | ||||
|     private _encodeMultiplexMultiHopFillCalldata(quote: SwapQuote, opts: ExchangeProxyContractOpts): string { | ||||
|         const weth = new WETH9Contract(NULL_ADDRESS, this.provider); | ||||
|         const wrappedMultiHopCalls = []; | ||||
|         if (opts.isFromETH) { | ||||
|             wrappedMultiHopCalls.push({ | ||||
|                 selector: weth.getSelector('deposit'), | ||||
|                 data: NULL_BYTES, | ||||
|             }); | ||||
|         } | ||||
|         const [firstHopOrder, secondHopOrder] = quote.orders; | ||||
|         const intermediateToken = firstHopOrder.makerToken; | ||||
|         for (const order of [firstHopOrder, secondHopOrder]) { | ||||
|             switch (order.source) { | ||||
|                 case ERC20BridgeSource.UniswapV2: | ||||
|                 case ERC20BridgeSource.SushiSwap: | ||||
|                     wrappedMultiHopCalls.push({ | ||||
|                         selector: this._multiplex.getSelector('_sellToUniswap'), | ||||
|                         data: multiplexUniswapEncoder.encode({ | ||||
|                             tokens: (order.fillData as UniswapV2FillData).tokenAddressPath, | ||||
|                             isSushi: order.source === ERC20BridgeSource.SushiSwap, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break; | ||||
|                 case ERC20BridgeSource.LiquidityProvider: | ||||
|                     wrappedMultiHopCalls.push({ | ||||
|                         selector: this._multiplex.getSelector('_sellToLiquidityProvider'), | ||||
|                         data: multiplexPlpEncoder.encode({ | ||||
|                             tokens: (order.fillData as LiquidityProviderFillData).poolAddress, | ||||
|                             auxiliaryData: NULL_BYTES, | ||||
|                         }), | ||||
|                     }); | ||||
|                     break; | ||||
|                 default: | ||||
|                     // Note: we'll need to redeploy TransformERC20Feature before we can | ||||
|                     //       use other sources | ||||
|                     // Should never happen because we check `isMultiplexMultiHopFillCompatible` | ||||
|                     // before calling this function. | ||||
|                     throw new Error(`Multiplex multi-hop unsupported source: ${order.source}`); | ||||
|             } | ||||
|         } | ||||
|         if (opts.isToETH) { | ||||
|             wrappedMultiHopCalls.push({ | ||||
|                 selector: weth.getSelector('withdraw'), | ||||
|                 data: NULL_BYTES, | ||||
|             }); | ||||
|         } | ||||
|         return this._exchangeProxy | ||||
|             .multiHopFill( | ||||
|                 { | ||||
|                     tokens: [quote.takerToken, intermediateToken, quote.makerToken], | ||||
|                     sellAmount: quote.worstCaseQuoteInfo.totalTakerAmount, | ||||
|                     calls: wrappedMultiHopCalls, | ||||
|                 }, | ||||
|                 quote.worstCaseQuoteInfo.makerAmount, | ||||
|             ) | ||||
|             .getABIEncodedTransactionData(); | ||||
|     } | ||||
|     return fqtData; | ||||
| } | ||||
|   | ||||
| @@ -0,0 +1,23 @@ | ||||
| import { RfqOrder, SIGNATURE_ABI } from '@0x/protocol-utils'; | ||||
| import { AbiEncoder } from '@0x/utils'; | ||||
|  | ||||
| export const multiplexTransformERC20Encoder = AbiEncoder.create([ | ||||
|     { | ||||
|         name: 'transformations', | ||||
|         type: 'tuple[]', | ||||
|         components: [{ name: 'deploymentNonce', type: 'uint32' }, { name: 'data', type: 'bytes' }], | ||||
|     }, | ||||
|     { name: 'ethValue', type: 'uint256' }, | ||||
| ]); | ||||
| export const multiplexRfqEncoder = AbiEncoder.create([ | ||||
|     { name: 'order', type: 'tuple', components: RfqOrder.STRUCT_ABI }, | ||||
|     { name: 'signature', type: 'tuple', components: SIGNATURE_ABI }, | ||||
| ]); | ||||
| export const multiplexUniswapEncoder = AbiEncoder.create([ | ||||
|     { name: 'tokens', type: 'address[]' }, | ||||
|     { name: 'isSushi', type: 'bool' }, | ||||
| ]); | ||||
| export const multiplexPlpEncoder = AbiEncoder.create([ | ||||
|     { name: 'provider', type: 'address' }, | ||||
|     { name: 'auxiliaryData', type: 'bytes' }, | ||||
| ]); | ||||
| @@ -0,0 +1,175 @@ | ||||
| import { FillQuoteTransformerData, FillQuoteTransformerOrderType } from '@0x/protocol-utils'; | ||||
|  | ||||
| import { AffiliateFeeType, ExchangeProxyContractOpts, MarketBuySwapQuote, MarketOperation, SwapQuote } from '../types'; | ||||
| import { | ||||
|     createBridgeDataForBridgeOrder, | ||||
|     getERC20BridgeSourceToBridgeSource, | ||||
| } from '../utils/market_operation_utils/orders'; | ||||
| import { | ||||
|     ERC20BridgeSource, | ||||
|     NativeLimitOrderFillData, | ||||
|     NativeRfqOrderFillData, | ||||
|     OptimizedMarketBridgeOrder, | ||||
|     OptimizedMarketOrder, | ||||
|     OptimizedMarketOrderBase, | ||||
| } from '../utils/market_operation_utils/types'; | ||||
|  | ||||
| const MULTIPLEX_BATCH_FILL_SOURCES = [ | ||||
|     ERC20BridgeSource.UniswapV2, | ||||
|     ERC20BridgeSource.SushiSwap, | ||||
|     ERC20BridgeSource.LiquidityProvider, | ||||
|     ERC20BridgeSource.Native, | ||||
| ]; | ||||
|  | ||||
| /** | ||||
|  * Returns true iff a quote can be filled via `MultiplexFeature.batchFill`. | ||||
|  */ | ||||
| export function isMultiplexBatchFillCompatible(quote: SwapQuote, opts: ExchangeProxyContractOpts): boolean { | ||||
|     if (requiresTransformERC20(opts)) { | ||||
|         return false; | ||||
|     } | ||||
|     if (quote.isTwoHop) { | ||||
|         return false; | ||||
|     } | ||||
|     // batchFill does not support WETH wrapping/unwrapping at the moment | ||||
|     if (opts.isFromETH || opts.isToETH) { | ||||
|         return false; | ||||
|     } | ||||
|     if (quote.orders.map(o => o.type).includes(FillQuoteTransformerOrderType.Limit)) { | ||||
|         return false; | ||||
|     } | ||||
|     // Use Multiplex if the non-fallback sources are a subset of | ||||
|     // {Uniswap, Sushiswap, RFQ, PLP} | ||||
|     const nonFallbackSources = Object.keys(quote.sourceBreakdown); | ||||
|     return nonFallbackSources.every(source => MULTIPLEX_BATCH_FILL_SOURCES.includes(source as ERC20BridgeSource)); | ||||
| } | ||||
|  | ||||
| const MULTIPLEX_MULTIHOP_FILL_SOURCES = [ | ||||
|     ERC20BridgeSource.UniswapV2, | ||||
|     ERC20BridgeSource.SushiSwap, | ||||
|     ERC20BridgeSource.LiquidityProvider, | ||||
| ]; | ||||
|  | ||||
| /** | ||||
|  * Returns true iff a quote can be filled via `MultiplexFeature.multiHopFill`. | ||||
|  */ | ||||
| export function isMultiplexMultiHopFillCompatible(quote: SwapQuote, opts: ExchangeProxyContractOpts): boolean { | ||||
|     if (requiresTransformERC20(opts)) { | ||||
|         return false; | ||||
|     } | ||||
|     if (!quote.isTwoHop) { | ||||
|         return false; | ||||
|     } | ||||
|     const [firstHopOrder, secondHopOrder] = quote.orders; | ||||
|     return ( | ||||
|         MULTIPLEX_MULTIHOP_FILL_SOURCES.includes(firstHopOrder.source) && | ||||
|         MULTIPLEX_MULTIHOP_FILL_SOURCES.includes(secondHopOrder.source) | ||||
|     ); | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Returns true iff a quote can be filled via a VIP feature. | ||||
|  */ | ||||
| export function isDirectSwapCompatible( | ||||
|     quote: SwapQuote, | ||||
|     opts: ExchangeProxyContractOpts, | ||||
|     directSources: ERC20BridgeSource[], | ||||
| ): boolean { | ||||
|     if (requiresTransformERC20(opts)) { | ||||
|         return false; | ||||
|     } | ||||
|     // Must be a single order. | ||||
|     if (quote.orders.length !== 1) { | ||||
|         return false; | ||||
|     } | ||||
|     const order = quote.orders[0]; | ||||
|     if (!directSources.includes(order.source)) { | ||||
|         return false; | ||||
|     } | ||||
|     return true; | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Whether a quote is a market buy or not. | ||||
|  */ | ||||
| export function isBuyQuote(quote: SwapQuote): quote is MarketBuySwapQuote { | ||||
|     return quote.type === MarketOperation.Buy; | ||||
| } | ||||
|  | ||||
| function isOptimizedBridgeOrder(x: OptimizedMarketOrder): x is OptimizedMarketBridgeOrder { | ||||
|     return x.type === FillQuoteTransformerOrderType.Bridge; | ||||
| } | ||||
|  | ||||
| function isOptimizedLimitOrder(x: OptimizedMarketOrder): x is OptimizedMarketOrderBase<NativeLimitOrderFillData> { | ||||
|     return x.type === FillQuoteTransformerOrderType.Limit; | ||||
| } | ||||
|  | ||||
| function isOptimizedRfqOrder(x: OptimizedMarketOrder): x is OptimizedMarketOrderBase<NativeRfqOrderFillData> { | ||||
|     return x.type === FillQuoteTransformerOrderType.Rfq; | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Converts the given `OptimizedMarketOrder`s into bridge, limit, and RFQ orders for | ||||
|  * FillQuoteTransformer. | ||||
|  */ | ||||
| export function getFQTTransformerDataFromOptimizedOrders( | ||||
|     orders: OptimizedMarketOrder[], | ||||
| ): Pick<FillQuoteTransformerData, 'bridgeOrders' | 'limitOrders' | 'rfqOrders' | 'fillSequence'> { | ||||
|     const fqtData: Pick<FillQuoteTransformerData, 'bridgeOrders' | 'limitOrders' | 'rfqOrders' | 'fillSequence'> = { | ||||
|         bridgeOrders: [], | ||||
|         limitOrders: [], | ||||
|         rfqOrders: [], | ||||
|         fillSequence: [], | ||||
|     }; | ||||
|  | ||||
|     for (const order of orders) { | ||||
|         if (isOptimizedBridgeOrder(order)) { | ||||
|             fqtData.bridgeOrders.push({ | ||||
|                 bridgeData: createBridgeDataForBridgeOrder(order), | ||||
|                 makerTokenAmount: order.makerAmount, | ||||
|                 takerTokenAmount: order.takerAmount, | ||||
|                 source: getERC20BridgeSourceToBridgeSource(order.source), | ||||
|             }); | ||||
|         } else if (isOptimizedLimitOrder(order)) { | ||||
|             fqtData.limitOrders.push({ | ||||
|                 order: order.fillData.order, | ||||
|                 signature: order.fillData.signature, | ||||
|                 maxTakerTokenFillAmount: order.takerAmount, | ||||
|             }); | ||||
|         } else if (isOptimizedRfqOrder(order)) { | ||||
|             fqtData.rfqOrders.push({ | ||||
|                 order: order.fillData.order, | ||||
|                 signature: order.fillData.signature, | ||||
|                 maxTakerTokenFillAmount: order.takerAmount, | ||||
|             }); | ||||
|         } else { | ||||
|             // Should never happen | ||||
|             throw new Error('Unknown Order type'); | ||||
|         } | ||||
|         fqtData.fillSequence.push(order.type); | ||||
|     } | ||||
|     return fqtData; | ||||
| } | ||||
|  | ||||
| /** | ||||
|  * Returns true if swap quote must go through `tranformERC20`. | ||||
|  */ | ||||
| export function requiresTransformERC20(opts: ExchangeProxyContractOpts): boolean { | ||||
|     // Is a mtx. | ||||
|     if (opts.isMetaTransaction) { | ||||
|         return true; | ||||
|     } | ||||
|     // Has an affiliate fee. | ||||
|     if (!opts.affiliateFee.buyTokenFeeAmount.eq(0) || !opts.affiliateFee.sellTokenFeeAmount.eq(0)) { | ||||
|         return true; | ||||
|     } | ||||
|     // Has a positive slippage fee. | ||||
|     if (opts.affiliateFee.feeType === AffiliateFeeType.PositiveSlippageFee) { | ||||
|         return true; | ||||
|     } | ||||
|     // VIP does not support selling the entire balance | ||||
|     if (opts.shouldSellEntireBalance) { | ||||
|         return true; | ||||
|     } | ||||
|     return false; | ||||
| } | ||||
| @@ -102,9 +102,18 @@ export const PROTOCOL_FEE_MULTIPLIER = new BigNumber(70000); | ||||
|  */ | ||||
| export const FEE_QUOTE_SOURCES = [ERC20BridgeSource.Uniswap, ERC20BridgeSource.UniswapV2]; | ||||
|  | ||||
| export const SOURCE_FLAGS: { [source in ERC20BridgeSource]: number } = Object.assign( | ||||
| // HACK(mzhu25): Limit and RFQ orders need to be treated as different sources | ||||
| //               when computing the exchange proxy gas overhead. | ||||
| export const SOURCE_FLAGS: { [source in ERC20BridgeSource]: number } & { | ||||
|     RfqOrder: number; | ||||
|     LimitOrder: number; | ||||
| } = Object.assign( | ||||
|     {}, | ||||
|     ...Object.values(ERC20BridgeSource).map((source: ERC20BridgeSource, index) => ({ [source]: 1 << index })), | ||||
|     ...['RfqOrder', 'LimitOrder', ...Object.values(ERC20BridgeSource)].map( | ||||
|         (source: ERC20BridgeSource | 'RfqOrder' | 'LimitOrder', index) => ({ | ||||
|             [source]: source === ERC20BridgeSource.Native ? 0 : 1 << index, | ||||
|         }), | ||||
|     ), | ||||
| ); | ||||
|  | ||||
| const MIRROR_WRAPPED_TOKENS = { | ||||
|   | ||||
| @@ -83,7 +83,7 @@ function nativeOrdersToFills( | ||||
|     // Create a single path from all orders. | ||||
|     let fills: Array<Fill & { adjustedRate: BigNumber }> = []; | ||||
|     for (const o of orders) { | ||||
|         const { fillableTakerAmount, fillableTakerFeeAmount, fillableMakerAmount } = o; | ||||
|         const { fillableTakerAmount, fillableTakerFeeAmount, fillableMakerAmount, type } = o; | ||||
|         const makerAmount = fillableMakerAmount; | ||||
|         const takerAmount = fillableTakerAmount.plus(fillableTakerFeeAmount); | ||||
|         const input = side === MarketOperation.Sell ? takerAmount : makerAmount; | ||||
| @@ -114,11 +114,11 @@ function nativeOrdersToFills( | ||||
|             adjustedOutput, | ||||
|             input: clippedInput, | ||||
|             output: clippedOutput, | ||||
|             flags: SOURCE_FLAGS[ERC20BridgeSource.Native], | ||||
|             flags: SOURCE_FLAGS[type === FillQuoteTransformerOrderType.Rfq ? 'RfqOrder' : 'LimitOrder'], | ||||
|             index: 0, // TBD | ||||
|             parent: undefined, // TBD | ||||
|             source: ERC20BridgeSource.Native, | ||||
|             type: o.type, | ||||
|             type, | ||||
|             fillData: { ...o }, | ||||
|         }); | ||||
|     } | ||||
|   | ||||
| @@ -5,6 +5,8 @@ import { MarketOperation } from '../../types'; | ||||
| import { SOURCE_FLAGS, ZERO_AMOUNT } from './constants'; | ||||
| import { DexSample, ERC20BridgeSource, ExchangeProxyOverhead, FeeSchedule, MultiHopFillData } from './types'; | ||||
|  | ||||
| // tslint:disable:no-bitwise | ||||
|  | ||||
| /** | ||||
|  * Returns the fee-adjusted rate of a two-hop quote. Returns zero if the | ||||
|  * quote falls short of the target input. | ||||
| @@ -22,7 +24,11 @@ export function getTwoHopAdjustedRate( | ||||
|         return ZERO_AMOUNT; | ||||
|     } | ||||
|     const penalty = outputAmountPerEth.times( | ||||
|         exchangeProxyOverhead(SOURCE_FLAGS.MultiHop).plus(fees[ERC20BridgeSource.MultiHop]!(fillData)), | ||||
|         exchangeProxyOverhead( | ||||
|             SOURCE_FLAGS.MultiHop | | ||||
|                 SOURCE_FLAGS[twoHopQuote.fillData.firstHopSource.source] | | ||||
|                 SOURCE_FLAGS[twoHopQuote.fillData.secondHopSource.source], | ||||
|         ).plus(fees[ERC20BridgeSource.MultiHop]!(fillData)), | ||||
|     ); | ||||
|     const adjustedOutput = side === MarketOperation.Sell ? output.minus(penalty) : output.plus(penalty); | ||||
|     return side === MarketOperation.Sell ? adjustedOutput.div(input) : input.div(adjustedOutput); | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "version": "3.13.0", | ||||
|         "version": "3.13.0-multiplex", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Update IZeroEx artifact", | ||||
|                 "pr": 140 | ||||
|             } | ||||
|         ] | ||||
|         ], | ||||
|         "timestamp": 1615932869 | ||||
|     }, | ||||
|     { | ||||
|         "version": "3.12.0", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v3.13.0-multiplex - _March 16, 2021_ | ||||
|  | ||||
|     * Update IZeroEx artifact (#140) | ||||
|  | ||||
| ## v3.12.0 - _February 24, 2021_ | ||||
|  | ||||
|     * Update artifacts (#145) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contract-artifacts", | ||||
|     "version": "3.12.0", | ||||
|     "version": "3.13.0-multiplex", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contract-wrappers-test", | ||||
|     "version": "12.2.37", | ||||
|     "version": "12.2.38-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -31,11 +31,11 @@ | ||||
|     }, | ||||
|     "homepage": "https://github.com/0xProject/protocol/tree/main/packages/contract-wrappers-test", | ||||
|     "devDependencies": { | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contracts-test-utils": "^5.3.22", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/contracts-test-utils": "^5.3.23-multiplex.0", | ||||
|         "@0x/dev-utils": "^4.2.1", | ||||
|         "@0x/migrations": "^7.0.0", | ||||
|         "@0x/order-utils": "^10.4.17", | ||||
|         "@0x/migrations": "^7.0.1-multiplex.0", | ||||
|         "@0x/order-utils": "^10.4.18-multiplex.0", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/ts-doc-gen": "^0.0.28", | ||||
|         "@0x/tslint-config": "^4.1.3", | ||||
|   | ||||
| @@ -1,12 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "version": "13.14.0", | ||||
|         "version": "13.14.0-multiplex", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Update IZeroExContract wrapper", | ||||
|                 "pr": 140 | ||||
|             } | ||||
|         ] | ||||
|         ], | ||||
|         "timestamp": 1615932869 | ||||
|     }, | ||||
|     { | ||||
|         "version": "13.13.0", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v13.14.0-multiplex - _March 16, 2021_ | ||||
|  | ||||
|     * Update IZeroExContract wrapper (#140) | ||||
|  | ||||
| ## v13.13.0 - _February 24, 2021_ | ||||
|  | ||||
|     * Regenerate wrappers (#145) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/contract-wrappers", | ||||
|     "version": "13.13.0", | ||||
|     "version": "13.14.0-multiplex", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "7.0.1-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "version": "7.0.0", | ||||
|         "changes": [ | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v7.0.1-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v7.0.0 - _February 24, 2021_ | ||||
|  | ||||
|     * Major version bump with V4 FQT | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/migrations", | ||||
|     "version": "7.0.0", | ||||
|     "version": "7.0.1-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -69,19 +69,19 @@ | ||||
|     "dependencies": { | ||||
|         "@0x/base-contract": "^6.2.18", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.7", | ||||
|         "@0x/contracts-coordinator": "^3.1.26", | ||||
|         "@0x/contracts-dev-utils": "^1.3.24", | ||||
|         "@0x/contracts-erc1155": "^2.1.25", | ||||
|         "@0x/contracts-erc20": "^3.3.4", | ||||
|         "@0x/contracts-erc721": "^3.1.25", | ||||
|         "@0x/contracts-exchange": "^3.2.26", | ||||
|         "@0x/contracts-exchange-forwarder": "^4.2.26", | ||||
|         "@0x/contracts-extensions": "^6.2.20", | ||||
|         "@0x/contracts-multisig": "^4.1.26", | ||||
|         "@0x/contracts-staking": "^2.0.33", | ||||
|         "@0x/contracts-utils": "^4.7.4", | ||||
|         "@0x/contracts-zero-ex": "^0.19.0", | ||||
|         "@0x/contracts-asset-proxy": "^3.7.8-multiplex.0", | ||||
|         "@0x/contracts-coordinator": "^3.1.27-multiplex.0", | ||||
|         "@0x/contracts-dev-utils": "^1.3.25-multiplex.0", | ||||
|         "@0x/contracts-erc1155": "^2.1.26-multiplex.0", | ||||
|         "@0x/contracts-erc20": "^3.3.5-multiplex.0", | ||||
|         "@0x/contracts-erc721": "^3.1.26-multiplex.0", | ||||
|         "@0x/contracts-exchange": "^3.2.27-multiplex.0", | ||||
|         "@0x/contracts-exchange-forwarder": "^4.2.27-multiplex.0", | ||||
|         "@0x/contracts-extensions": "^6.2.21-multiplex.0", | ||||
|         "@0x/contracts-multisig": "^4.1.27-multiplex.0", | ||||
|         "@0x/contracts-staking": "^2.0.34-multiplex.0", | ||||
|         "@0x/contracts-utils": "^4.7.5-multiplex.0", | ||||
|         "@0x/contracts-zero-ex": "^0.20.0-multiplex", | ||||
|         "@0x/sol-compiler": "^4.6.1", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/typescript-typings": "^5.1.6", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "10.4.18-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "timestamp": 1614141718, | ||||
|         "version": "10.4.17", | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v10.4.18-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v10.4.17 - _February 24, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/order-utils", | ||||
|     "version": "10.4.17", | ||||
|     "version": "10.4.18-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -70,7 +70,7 @@ | ||||
|     "dependencies": { | ||||
|         "@0x/assert": "^3.0.21", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/json-schemas": "^5.4.1", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|         "@0x/web3-wrapper": "^7.4.1", | ||||
|   | ||||
| @@ -1,4 +1,13 @@ | ||||
| [ | ||||
|     { | ||||
|         "timestamp": 1615932869, | ||||
|         "version": "1.3.1-multiplex.0", | ||||
|         "changes": [ | ||||
|             { | ||||
|                 "note": "Dependencies updated" | ||||
|             } | ||||
|         ] | ||||
|     }, | ||||
|     { | ||||
|         "version": "1.3.0", | ||||
|         "changes": [ | ||||
|   | ||||
| @@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only. | ||||
|  | ||||
| CHANGELOG | ||||
|  | ||||
| ## v1.3.1-multiplex.0 - _March 16, 2021_ | ||||
|  | ||||
|     * Dependencies updated | ||||
|  | ||||
| ## v1.3.0 - _February 24, 2021_ | ||||
|  | ||||
|     * Add VIP utils (#127) | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| { | ||||
|     "name": "@0x/protocol-utils", | ||||
|     "version": "1.3.0", | ||||
|     "version": "1.3.1-multiplex.0", | ||||
|     "engines": { | ||||
|         "node": ">=6.12" | ||||
|     }, | ||||
| @@ -64,7 +64,7 @@ | ||||
|     "dependencies": { | ||||
|         "@0x/assert": "^3.0.21", | ||||
|         "@0x/contract-addresses": "^5.11.0", | ||||
|         "@0x/contract-wrappers": "^13.13.0", | ||||
|         "@0x/contract-wrappers": "^13.14.0-multiplex", | ||||
|         "@0x/json-schemas": "^5.4.1", | ||||
|         "@0x/subproviders": "^6.4.1", | ||||
|         "@0x/utils": "^6.2.0", | ||||
|   | ||||
		Reference in New Issue
	
	Block a user