Compare commits

..

17 Commits

Author SHA1 Message Date
Github Actions
1e16d59c23 Publish
- @0x/contracts-asset-proxy@3.6.9
 - @0x/contracts-broker@1.1.17
 - @0x/contracts-coordinator@3.1.18
 - @0x/contracts-dev-utils@1.3.16
 - @0x/contracts-erc1155@2.1.18
 - @0x/contracts-erc20@3.2.12
 - @0x/contracts-erc721@3.1.18
 - @0x/contracts-exchange-forwarder@4.2.18
 - @0x/contracts-exchange-libs@4.3.18
 - @0x/contracts-exchange@3.2.18
 - @0x/contracts-extensions@6.2.12
 - @0x/contracts-integrations@2.7.15
 - @0x/contracts-multisig@4.1.18
 - @0x/contracts-staking@2.0.25
 - @0x/contracts-test-utils@5.3.15
 - @0x/contracts-utils@4.6.3
 - @0x/contracts-zero-ex@0.12.0
 - @0x/asset-swapper@5.4.2
 - @0x/contract-artifacts@3.10.0
 - @0x/contract-wrappers-test@12.2.28
 - @0x/contract-wrappers@13.11.0
 - @0x/migrations@6.5.4
 - @0x/order-utils@10.4.10
 - @0x/protocol-utils@1.0.1
2020-12-09 03:40:56 +00:00
Github Actions
1e7c9bbb1f Updated CHANGELOGS & MD docs 2020-12-09 03:40:51 +00:00
Lawrence Forman
edda1edc50 @0x/protocol-utils (#76)
* add new packages

* `@0x/protocol-utils`: Update with latest code from `@0x/contracs-zero-ex` + misc stuff

* @0x/contracts-zero-ex`: Switch to using `@0x/protocol-utils` in most places

* @0x/protocol-types`: Delete this package.

* regen yarn lock

* `@0x/contracts-zero-ex`: Unpin `@0x/protocol-utils` dep.

* `@0x/contracts-integrations`: Fix borken test

* update changelogs

* `@0x/protocol-utils`: Update deps

* `@0x/protocol-utils`: add tests

* `@0x/protocol-utils`: More tests

* `@0x/protocol-utils`: Update readme.

* update deps

* run prettier

* `@0x/contract-artifacts`: Regenerate artifacts

* `@0x/contract-wrappers`: Regenerate wrappers

* `@0x/protocol-utils`: Update changelog

* `@0x/contract-wrappers`: Export stuff for doc gen

* `@0x/protocol-utils`: Use `Web3Wrapper.signTypedDataV4Async()` for MM compatibility.

* upgrade org deps

Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-12-08 22:08:52 -05:00
Greg Hysz
d1eb6279b4 Updated addresses and transformer nonces after hot-pants (#78) 2020-12-08 11:33:36 -08:00
Greg Hysz
4ace79d947 Updated Releases + Fix Links (#77)
* Updated releases

* fixed some typos and links in docs
2020-12-08 10:44:59 -08:00
mzhu25
e5eee96487 Add naive selector collision test (#74) 2020-12-07 19:49:37 -08:00
Github Actions
907adf9145 Publish
- @0x/contracts-asset-proxy@3.6.8
 - @0x/contracts-broker@1.1.16
 - @0x/contracts-coordinator@3.1.17
 - @0x/contracts-dev-utils@1.3.15
 - @0x/contracts-erc1155@2.1.17
 - @0x/contracts-erc20@3.2.11
 - @0x/contracts-erc721@3.1.17
 - @0x/contracts-exchange-forwarder@4.2.17
 - @0x/contracts-exchange-libs@4.3.17
 - @0x/contracts-exchange@3.2.17
 - @0x/contracts-extensions@6.2.11
 - @0x/contracts-integrations@2.7.14
 - @0x/contracts-multisig@4.1.17
 - @0x/contracts-staking@2.0.24
 - @0x/contracts-test-utils@5.3.14
 - @0x/contracts-utils@4.6.2
 - @0x/contracts-zero-ex@0.11.1
 - @0x/asset-swapper@5.4.1
 - @0x/contract-addresses@5.6.0
 - @0x/contract-wrappers-test@12.2.27
 - @0x/contract-wrappers@13.10.3
 - @0x/migrations@6.5.3
 - @0x/order-utils@10.4.9
2020-12-07 22:56:33 +00:00
Github Actions
c046fe6220 Updated CHANGELOGS & MD docs 2020-12-07 22:56:27 +00:00
Lawrence Forman
84bf20de41 Update CHANGELOG.json (#75)
* Update CHANGELOG.json

* Update CHANGELOG.json
2020-12-07 17:17:43 -05:00
Lawrence Forman
f5a6f74d9a Update mainnet and ropsten transformer addresses for hot-pants release (#70)
Co-authored-by: Lawrence Forman <me@merklejerk.com>
2020-12-07 16:41:56 -05:00
Github Actions
7c7fc51ccf Publish
- @0x/contracts-integrations@2.7.13
 - @0x/asset-swapper@5.4.0
2020-12-07 20:42:41 +00:00
Github Actions
fa22f6de0d Updated CHANGELOGS & MD docs 2020-12-07 20:42:34 +00:00
Kim Persson
4f41214af2 feat: add takerAssetToEthRate and makerAssetToEthRate to quote response (#49)
* ADDS expose ethToTakerAssetRate and ethToTakerAssetRate

* REFACTORS rename to more correct takerAssetToEth/makerAssetToEth naming

* ADDS asset-swapper change log entry
2020-12-07 20:40:56 +01:00
Github Actions
607b7169bc Publish
- @0x/contracts-integrations@2.7.12
 - @0x/asset-swapper@5.3.1
2020-12-03 23:05:32 +00:00
Github Actions
1253490a38 Updated CHANGELOGS & MD docs 2020-12-03 23:05:26 +00:00
Alex Kroeger
0a37a588e8 Added BalanceChecker contract (#60)
* Added BalanceChecker contract

* Upgraded to solidity 0.6, simplified contract, added tests

* uint -> uint256

* export BalanceChecker contract wrapper

* prettier

* removed superfluous test code

* prettier
2020-12-03 14:31:45 -08:00
Greg Hysz
23ee108089 updated release names (#72) 2020-12-03 11:00:44 -08:00
152 changed files with 5926 additions and 644 deletions

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "3.6.9",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "3.6.8",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "3.6.7",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.6.9 - _December 9, 2020_
* Dependencies updated
## v3.6.8 - _December 7, 2020_
* Dependencies updated
## v3.6.7 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-asset-proxy",
"version": "3.6.7",
"version": "3.6.9",
"engines": {
"node": ">=6.12"
},
@@ -51,13 +51,13 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/protocol",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contract-wrappers": "^13.10.2",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contract-wrappers": "^13.11.0",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@types/lodash": "4.14.104",
@@ -79,16 +79,16 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-erc1155": "^2.1.16",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/order-utils": "^10.4.8",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-erc1155": "^2.1.18",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/order-utils": "^10.4.10",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"ethereum-types": "^3.4.0",
"lodash": "^4.17.11"
},

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "1.1.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "1.1.16",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "1.1.15",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v1.1.17 - _December 9, 2020_
* Dependencies updated
## v1.1.16 - _December 7, 2020_
* Dependencies updated
## v1.1.15 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-broker",
"version": "1.1.15",
"version": "1.1.17",
"engines": {
"node": ">=6.12"
},
@@ -51,20 +51,20 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -84,8 +84,8 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/order-utils": "^10.4.8",
"@0x/base-contract": "^6.2.14",
"@0x/order-utils": "^10.4.10",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"ethereum-types": "^3.4.0"

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "3.1.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "3.1.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "3.1.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.1.18 - _December 9, 2020_
* Dependencies updated
## v3.1.17 - _December 7, 2020_
* Dependencies updated
## v3.1.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-coordinator",
"version": "3.1.16",
"version": "3.1.18",
"engines": {
"node": ">=6.12"
},
@@ -52,17 +52,17 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-gen": "^2.0.23",
"@0x/dev-utils": "^4.1.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-gen": "^2.0.24",
"@0x/dev-utils": "^4.1.3",
"@0x/order-utils": "^10.4.10",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -83,11 +83,11 @@
},
"dependencies": {
"@0x/assert": "^3.0.19",
"@0x/base-contract": "^6.2.13",
"@0x/contract-addresses": "^5.5.0",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/base-contract": "^6.2.14",
"@0x/contract-addresses": "^5.6.0",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/json-schemas": "^5.3.4",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "1.3.16",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "1.3.15",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "1.3.14",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v1.3.16 - _December 9, 2020_
* Dependencies updated
## v1.3.15 - _December 7, 2020_
* Dependencies updated
## v1.3.14 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-dev-utils",
"version": "1.3.14",
"version": "1.3.16",
"engines": {
"node": ">=6.12"
},
@@ -41,13 +41,13 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/dev-utils",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/abi-gen": "^5.4.13",
"@0x/assert": "^3.0.19",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/sol-compiler": "^4.4.0",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
@@ -63,7 +63,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/base-contract": "^6.2.14",
"@types/node": "12.12.54"
},
"publishConfig": {

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "2.1.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "2.1.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "2.1.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v2.1.18 - _December 9, 2020_
* Dependencies updated
## v2.1.17 - _December 7, 2020_
* Dependencies updated
## v2.1.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-erc1155",
"version": "2.1.16",
"version": "2.1.18",
"engines": {
"node": ">=6.12"
},
@@ -52,11 +52,11 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/tokens",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
@@ -80,10 +80,10 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"lodash": "^4.17.11"
},
"publishConfig": {

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "3.2.12",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "3.2.11",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "3.2.10",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.2.12 - _December 9, 2020_
* Dependencies updated
## v3.2.11 - _December 7, 2020_
* Dependencies updated
## v3.2.10 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-erc20",
"version": "3.2.10",
"version": "3.2.12",
"engines": {
"node": ">=6.12"
},
@@ -51,18 +51,18 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/tokens",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -82,7 +82,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13"
"@0x/base-contract": "^6.2.14"
},
"publishConfig": {
"access": "public"

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "3.1.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "3.1.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "3.1.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.1.18 - _December 9, 2020_
* Dependencies updated
## v3.1.17 - _December 7, 2020_
* Dependencies updated
## v3.1.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-erc721",
"version": "3.1.16",
"version": "3.1.18",
"engines": {
"node": ">=6.12"
},
@@ -52,18 +52,18 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/tokens",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -84,7 +84,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13"
"@0x/base-contract": "^6.2.14"
},
"publishConfig": {
"access": "public"

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "4.2.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "4.2.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "4.2.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v4.2.18 - _December 9, 2020_
* Dependencies updated
## v4.2.17 - _December 7, 2020_
* Dependencies updated
## v4.2.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-exchange-forwarder",
"version": "4.2.16",
"version": "4.2.18",
"engines": {
"node": ">=6.12"
},
@@ -52,25 +52,25 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-erc1155": "^2.1.16",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-erc1155": "^2.1.18",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/order-utils": "^10.4.10",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -90,7 +90,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/base-contract": "^6.2.14",
"@0x/typescript-typings": "^5.1.6",
"ethereum-types": "^3.4.0"
},

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "4.3.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "4.3.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "4.3.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v4.3.18 - _December 9, 2020_
* Dependencies updated
## v4.3.17 - _December 7, 2020_
* Dependencies updated
## v4.3.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-exchange-libs",
"version": "4.3.16",
"version": "4.3.18",
"engines": {
"node": ">=6.12"
},
@@ -52,14 +52,14 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/libs",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-gen": "^2.0.23",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/subproviders": "^6.2.2",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-gen": "^2.0.24",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/subproviders": "^6.2.3",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -80,10 +80,10 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/order-utils": "^10.4.8",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/order-utils": "^10.4.10",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "3.2.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "3.2.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "3.2.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.2.18 - _December 9, 2020_
* Dependencies updated
## v3.2.17 - _December 7, 2020_
* Dependencies updated
## v3.2.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-exchange",
"version": "3.2.16",
"version": "3.2.18",
"engines": {
"node": ">=6.12"
},
@@ -52,21 +52,21 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/protocol",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-multisig": "^4.1.16",
"@0x/contracts-staking": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-multisig": "^4.1.18",
"@0x/contracts-staking": "^2.0.25",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -88,12 +88,12 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-erc1155": "^2.1.16",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/order-utils": "^10.4.8",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-erc1155": "^2.1.18",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/order-utils": "^10.4.10",
"@0x/utils": "^6.1.1",
"lodash": "^4.17.11"
},

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "6.2.12",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "6.2.11",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "6.2.10",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v6.2.12 - _December 9, 2020_
* Dependencies updated
## v6.2.11 - _December 7, 2020_
* Dependencies updated
## v6.2.10 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-extensions",
"version": "6.2.10",
"version": "6.2.12",
"engines": {
"node": ">=6.12"
},
@@ -52,23 +52,23 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/order-utils": "^10.4.10",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -90,8 +90,8 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/typescript-typings": "^5.1.6",
"ethereum-types": "^3.4.0"
},

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-integrations",
"version": "2.7.11",
"version": "2.7.15",
"private": true,
"engines": {
"node": ">=6.12"
@@ -52,24 +52,25 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/extensions",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contract-addresses": "^5.5.0",
"@0x/contract-wrappers": "^13.10.2",
"@0x/contracts-broker": "^1.1.15",
"@0x/contracts-coordinator": "^3.1.16",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-exchange-forwarder": "^4.2.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-extensions": "^6.2.10",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-utils": "^4.6.1",
"@0x/abi-gen": "^5.4.13",
"@0x/contract-addresses": "^5.6.0",
"@0x/contract-wrappers": "^13.11.0",
"@0x/contracts-broker": "^1.1.17",
"@0x/contracts-coordinator": "^3.1.18",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-exchange-forwarder": "^4.2.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-extensions": "^6.2.12",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-utils": "^4.6.3",
"@0x/coordinator-server": "^1.0.5",
"@0x/dev-utils": "^4.1.2",
"@0x/migrations": "^6.5.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/dev-utils": "^4.1.3",
"@0x/migrations": "^6.5.4",
"@0x/order-utils": "^10.4.10",
"@0x/protocol-utils": "^1.0.1",
"@0x/sol-compiler": "^4.4.1",
"@0x/tslint-config": "^4.1.3",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@azure/core-asynciterator-polyfill": "^1.0.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
@@ -92,18 +93,18 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/asset-swapper": "^5.3.0",
"@0x/base-contract": "^6.2.13",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-erc1155": "^2.1.16",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-erc721": "^3.1.16",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-multisig": "^4.1.16",
"@0x/contracts-staking": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-zero-ex": "^0.11.0",
"@0x/subproviders": "^6.2.2",
"@0x/asset-swapper": "^5.4.2",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-erc1155": "^2.1.18",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-erc721": "^3.1.18",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-multisig": "^4.1.18",
"@0x/contracts-staking": "^2.0.25",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-zero-ex": "^0.12.0",
"@0x/subproviders": "^6.2.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",

View File

@@ -6,19 +6,17 @@ import {
artifacts as exchangeProxyArtifacts,
IZeroExContract,
LogMetadataTransformerContract,
Signature,
} from '@0x/contracts-zero-ex';
import { migrateOnceAsync } from '@0x/migrations';
import { assetDataUtils, signatureUtils, SignedExchangeProxyMetaTransaction } from '@0x/order-utils';
import {
assetDataUtils,
encodeFillQuoteTransformerData,
encodePayTakerTransformerData,
ETH_TOKEN_ADDRESS,
FillQuoteTransformerSide,
findTransformerNonce,
signatureUtils,
SignedExchangeProxyMetaTransaction,
} from '@0x/order-utils';
Signature,
} from '@0x/protocol-utils';
import { AssetProxyId, Order, SignedOrder } from '@0x/types';
import { BigNumber, hexUtils } from '@0x/utils';
import * as ethjs from 'ethereumjs-util';

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "4.1.18",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "4.1.17",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "4.1.16",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v4.1.18 - _December 9, 2020_
* Dependencies updated
## v4.1.17 - _December 7, 2020_
* Dependencies updated
## v4.1.16 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-multisig",
"version": "4.1.16",
"version": "4.1.18",
"engines": {
"node": ">=6.12"
},
@@ -49,18 +49,18 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/multisig",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
"@types/node": "12.12.54",
@@ -78,7 +78,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/base-contract": "^6.2.14",
"@0x/typescript-typings": "^5.1.6",
"ethereum-types": "^3.4.0"
},

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "2.0.25",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "2.0.24",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "2.0.23",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v2.0.25 - _December 9, 2020_
* Dependencies updated
## v2.0.24 - _December 7, 2020_
* Dependencies updated
## v2.0.23 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-staking",
"version": "2.0.23",
"version": "2.0.25",
"engines": {
"node": ">=6.12"
},
@@ -53,20 +53,20 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/tokens",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-dev-utils": "^1.3.14",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-utils": "^4.6.1",
"@0x/dev-utils": "^4.1.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-dev-utils": "^1.3.16",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-utils": "^4.6.3",
"@0x/dev-utils": "^4.1.3",
"@0x/order-utils": "^10.4.10",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/lodash": "4.14.104",
"@types/node": "12.12.54",
"chai": "^4.0.1",
@@ -87,8 +87,8 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"ethereum-types": "^3.4.0",

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "5.3.15",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "5.3.14",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "5.3.13",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v5.3.15 - _December 9, 2020_
* Dependencies updated
## v5.3.14 - _December 7, 2020_
* Dependencies updated
## v5.3.13 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-test-utils",
"version": "5.3.13",
"version": "5.3.15",
"engines": {
"node": ">=6.12"
},
@@ -34,7 +34,7 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/test-utils",
"devDependencies": {
"@0x/sol-compiler": "^4.4.0",
"@0x/sol-compiler": "^4.4.1",
"@0x/tslint-config": "^4.1.3",
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
@@ -43,19 +43,19 @@
},
"dependencies": {
"@0x/assert": "^3.0.19",
"@0x/base-contract": "^6.2.13",
"@0x/contract-addresses": "^5.5.0",
"@0x/dev-utils": "^4.1.2",
"@0x/base-contract": "^6.2.14",
"@0x/contract-addresses": "^5.6.0",
"@0x/dev-utils": "^4.1.3",
"@0x/json-schemas": "^5.3.4",
"@0x/order-utils": "^10.4.8",
"@0x/sol-coverage": "^4.0.23",
"@0x/sol-profiler": "^4.1.13",
"@0x/sol-trace": "^3.0.23",
"@0x/subproviders": "^6.2.2",
"@0x/order-utils": "^10.4.10",
"@0x/sol-coverage": "^4.0.24",
"@0x/sol-profiler": "^4.1.14",
"@0x/sol-trace": "^3.0.24",
"@0x/subproviders": "^6.2.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/bn.js": "^4.11.0",
"@types/js-combinatorics": "^0.5.29",
"@types/lodash": "4.14.104",

View File

@@ -1,4 +1,22 @@
[
{
"timestamp": 1607485227,
"version": "4.6.3",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "4.6.2",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1606961263,
"version": "4.6.1",

View File

@@ -5,6 +5,14 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v4.6.3 - _December 9, 2020_
* Dependencies updated
## v4.6.2 - _December 7, 2020_
* Dependencies updated
## v4.6.1 - _December 3, 2020_
* Dependencies updated

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-utils",
"version": "4.6.1",
"version": "4.6.3",
"engines": {
"node": ">=6.12"
},
@@ -50,15 +50,15 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/utils",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/dev-utils": "^4.1.2",
"@0x/order-utils": "^10.4.8",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/dev-utils": "^4.1.3",
"@0x/order-utils": "^10.4.10",
"@0x/sol-compiler": "^4.4.1",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@types/bn.js": "^4.11.0",
"@types/lodash": "4.14.104",
"@types/mocha": "^5.2.7",
@@ -79,7 +79,7 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/base-contract": "^6.2.14",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"bn.js": "^4.11.8",

View File

@@ -1,4 +1,27 @@
[
{
"version": "0.12.0",
"changes": [
{
"note": "Add test for selector collisions on the proxy",
"pr": 74
},
{
"note": "Move tooling out into `@0x/protocol-utils`.",
"pr": 76
}
],
"timestamp": 1607485227
},
{
"timestamp": 1607381756,
"version": "0.11.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "0.11.0",
"changes": [

View File

@@ -5,6 +5,15 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v0.12.0 - _December 9, 2020_
* Add test for selector collisions on the proxy (#74)
* Move tooling out into `@0x/protocol-utils`. (#76)
## v0.11.1 - _December 7, 2020_
* Dependencies updated
## v0.11.0 - _December 3, 2020_
* Turn `LibTokenSpender` into `FixinTokenSpender` (#38)

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contracts-zero-ex",
"version": "0.11.0",
"version": "0.12.0",
"engines": {
"node": ">=6.12"
},
@@ -54,12 +54,12 @@
},
"homepage": "https://github.com/0xProject/protocol/tree/main/contracts/zero-ex",
"devDependencies": {
"@0x/abi-gen": "^5.4.12",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/dev-utils": "^4.1.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/abi-gen": "^5.4.13",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/dev-utils": "^4.1.3",
"@0x/sol-compiler": "^4.4.1",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@types/lodash": "4.14.104",
@@ -75,13 +75,14 @@
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/order-utils": "^10.4.8",
"@0x/subproviders": "^6.2.2",
"@0x/base-contract": "^6.2.14",
"@0x/order-utils": "^10.4.10",
"@0x/protocol-utils": "^1.0.1",
"@0x/subproviders": "^6.2.3",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"ethereum-types": "^3.4.0",
"ethereumjs-util": "^5.1.1"
},

View File

@@ -31,10 +31,6 @@ export {
export { artifacts } from './artifacts';
export * from './migration';
export * from './nonce_utils';
export * from './signature_utils';
export * from './orders';
export * from './eip712_utils';
export * from './revert_errors';
export * from './bloom_filter_utils';
export { GREEDY_TOKENS } from './constants';
export {

View File

@@ -7,11 +7,11 @@ import {
verifyEventsFromLogs,
} from '@0x/contracts-test-utils';
import { getExchangeProxyMetaTransactionHash, signatureUtils } from '@0x/order-utils';
import { Signature } from '@0x/protocol-utils';
import { ExchangeProxyMetaTransaction } from '@0x/types';
import { BigNumber, hexUtils, StringRevertError, ZeroExRevertErrors } from '@0x/utils';
import * as _ from 'lodash';
import { Signature } from '../../src/signature_utils';
import { IZeroExContract, MetaTransactionsFeatureContract } from '../../src/wrappers';
import { artifacts } from '../artifacts';
import { abis } from '../utils/abis';

View File

@@ -1,9 +1,16 @@
import { blockchainTests, constants, describe, expect, verifyEventsFromLogs } from '@0x/contracts-test-utils';
import {
LimitOrder,
LimitOrderFields,
OrderInfo,
OrderStatus,
RevertErrors,
RfqOrder,
RfqOrderFields,
} from '@0x/protocol-utils';
import { AnyRevertError, BigNumber } from '@0x/utils';
import { TransactionReceiptWithDecodedLogs } from 'ethereum-types';
import { LimitOrder, LimitOrderFields, OrderInfo, OrderStatus, RfqOrder, RfqOrderFields } from '../../src/orders';
import * as RevertErrors from '../../src/revert_errors';
import { IZeroExContract, IZeroExEvents } from '../../src/wrappers';
import { artifacts } from '../artifacts';
import { fullMigrateAsync } from '../utils/migration';
@@ -446,7 +453,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestLimitOrder();
const tx = zeroEx.cancelLimitOrder(order).awaitTransactionSuccessAsync({ from: notMaker });
return expect(tx).to.revertWith(
new RevertErrors.OnlyOrderMakerAllowed(order.getHash(), notMaker, order.maker),
new RevertErrors.NativeOrders.OnlyOrderMakerAllowed(order.getHash(), notMaker, order.maker),
);
});
});
@@ -520,7 +527,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestRfqOrder();
const tx = zeroEx.cancelRfqOrder(order).awaitTransactionSuccessAsync({ from: notMaker });
return expect(tx).to.revertWith(
new RevertErrors.OnlyOrderMakerAllowed(order.getHash(), notMaker, order.maker),
new RevertErrors.NativeOrders.OnlyOrderMakerAllowed(order.getHash(), notMaker, order.maker),
);
});
});
@@ -542,7 +549,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const orders = [...new Array(3)].map(() => getTestLimitOrder());
const tx = zeroEx.batchCancelLimitOrders(orders).awaitTransactionSuccessAsync({ from: notMaker });
return expect(tx).to.revertWith(
new RevertErrors.OnlyOrderMakerAllowed(orders[0].getHash(), notMaker, orders[0].maker),
new RevertErrors.NativeOrders.OnlyOrderMakerAllowed(orders[0].getHash(), notMaker, orders[0].maker),
);
});
});
@@ -564,7 +571,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const orders = [...new Array(3)].map(() => getTestRfqOrder());
const tx = zeroEx.batchCancelRfqOrders(orders).awaitTransactionSuccessAsync({ from: notMaker });
return expect(tx).to.revertWith(
new RevertErrors.OnlyOrderMakerAllowed(orders[0].getHash(), notMaker, orders[0].maker),
new RevertErrors.NativeOrders.OnlyOrderMakerAllowed(orders[0].getHash(), notMaker, orders[0].maker),
);
});
});
@@ -925,7 +932,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestLimitOrder({ expiry: createExpiry(-60) });
const tx = fillLimitOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Expired),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Expired),
);
});
@@ -934,7 +941,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
await zeroEx.cancelLimitOrder(order).awaitTransactionSuccessAsync({ from: maker });
const tx = fillLimitOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
);
});
@@ -945,7 +952,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
.awaitTransactionSuccessAsync({ from: maker });
const tx = fillLimitOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
);
});
@@ -953,7 +960,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestLimitOrder({ taker });
const tx = fillLimitOrderAsync(order, { fillAmount: order.takerAmount, taker: notTaker });
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableByTakerError(order.getHash(), notTaker, order.taker),
new RevertErrors.NativeOrders.OrderNotFillableByTakerError(order.getHash(), notTaker, order.taker),
);
});
@@ -961,7 +968,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestLimitOrder({ sender: taker });
const tx = fillLimitOrderAsync(order, { fillAmount: order.takerAmount, taker: notTaker });
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableBySenderError(order.getHash(), notTaker, order.sender),
new RevertErrors.NativeOrders.OrderNotFillableBySenderError(order.getHash(), notTaker, order.sender),
);
});
@@ -971,7 +978,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
// signature.
const tx = fillLimitOrderAsync(order.clone({ chainId: 1234 }));
return expect(tx).to.revertWith(
new RevertErrors.OrderNotSignedByMakerError(order.getHash(), undefined, order.maker),
new RevertErrors.NativeOrders.OrderNotSignedByMakerError(order.getHash(), undefined, order.maker),
);
});
@@ -1173,7 +1180,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestRfqOrder();
const tx = fillRfqOrderAsync(order, order.takerAmount, notTaker);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableByOriginError(order.getHash(), notTaker, taker),
new RevertErrors.NativeOrders.OrderNotFillableByOriginError(order.getHash(), notTaker, taker),
);
});
@@ -1218,7 +1225,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const tx = fillRfqOrderAsync(order, order.takerAmount, notTaker);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableByOriginError(order.getHash(), notTaker, taker),
new RevertErrors.NativeOrders.OrderNotFillableByOriginError(order.getHash(), notTaker, taker),
);
});
@@ -1226,7 +1233,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestRfqOrder({ txOrigin: NULL_ADDRESS });
const tx = fillRfqOrderAsync(order, order.takerAmount, notTaker);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Invalid),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Invalid),
);
});
@@ -1234,7 +1241,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestRfqOrder({ taker, txOrigin: notTaker });
const tx = fillRfqOrderAsync(order, order.takerAmount, notTaker);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableByTakerError(order.getHash(), notTaker, order.taker),
new RevertErrors.NativeOrders.OrderNotFillableByTakerError(order.getHash(), notTaker, order.taker),
);
});
@@ -1242,7 +1249,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
const order = getTestRfqOrder({ expiry: createExpiry(-60) });
const tx = fillRfqOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Expired),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Expired),
);
});
@@ -1251,7 +1258,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
await zeroEx.cancelRfqOrder(order).awaitTransactionSuccessAsync({ from: maker });
const tx = fillRfqOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
);
});
@@ -1262,7 +1269,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
.awaitTransactionSuccessAsync({ from: maker });
const tx = fillRfqOrderAsync(order);
return expect(tx).to.revertWith(
new RevertErrors.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
new RevertErrors.NativeOrders.OrderNotFillableError(order.getHash(), OrderStatus.Cancelled),
);
});
@@ -1272,7 +1279,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
// signature.
const tx = fillRfqOrderAsync(order.clone({ chainId: 1234 }));
return expect(tx).to.revertWith(
new RevertErrors.OrderNotSignedByMakerError(order.getHash(), undefined, order.maker),
new RevertErrors.NativeOrders.OrderNotSignedByMakerError(order.getHash(), undefined, order.maker),
);
});
@@ -1309,7 +1316,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
.fillOrKillLimitOrder(order, await order.getSignatureWithProviderAsync(env.provider), fillAmount)
.awaitTransactionSuccessAsync({ from: taker, value: SINGLE_PROTOCOL_FEE });
return expect(tx).to.revertWith(
new RevertErrors.FillOrKillFailedError(order.getHash(), order.takerAmount, fillAmount),
new RevertErrors.NativeOrders.FillOrKillFailedError(order.getHash(), order.takerAmount, fillAmount),
);
});
@@ -1344,7 +1351,7 @@ blockchainTests.resets('NativeOrdersFeature', env => {
.fillOrKillRfqOrder(order, await order.getSignatureWithProviderAsync(env.provider), fillAmount)
.awaitTransactionSuccessAsync({ from: taker });
return expect(tx).to.revertWith(
new RevertErrors.FillOrKillFailedError(order.getHash(), order.takerAmount, fillAmount),
new RevertErrors.NativeOrders.FillOrKillFailedError(order.getHash(), order.takerAmount, fillAmount),
);
});

View File

@@ -0,0 +1,29 @@
import { blockchainTests, constants, expect } from '@0x/contracts-test-utils';
import { MethodAbi } from 'ethereum-types';
import * as wrappers from '../../src/wrappers';
blockchainTests('Selector collision test', env => {
it('Function selectors do not collide', () => {
const selectorToSignature: { [selector: string]: string } = {};
for (const wrapper of Object.values(wrappers)) {
if (typeof wrapper === 'function') {
const contract = new wrapper(constants.NULL_ADDRESS, env.provider, env.txDefaults);
contract.abi
.filter(abiDef => abiDef.type === 'function')
.map(method => {
const methodName = (method as MethodAbi).name;
const selector = contract.getSelector(methodName);
const signature = contract.getFunctionSignature(methodName);
if (selectorToSignature[selector]) {
expect(
signature,
`Selectors collide: ${signature}, ${selectorToSignature[selector]}`,
).to.equal(selectorToSignature[selector]);
}
selectorToSignature[selector] = signature;
});
}
}
});
});

View File

@@ -8,7 +8,7 @@ import {
randomAddress,
verifyEventsFromLogs,
} from '@0x/contracts-test-utils';
import { ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { ETH_TOKEN_ADDRESS } from '@0x/protocol-utils';
import { AbiEncoder, hexUtils, OwnableRevertErrors, ZeroExRevertErrors } from '@0x/utils';
import * as ethjs from 'ethereumjs-util';

View File

@@ -2,8 +2,7 @@ import { blockchainTests, expect } from '@0x/contracts-test-utils';
import { hexUtils } from '@0x/utils';
import * as ethjs from 'ethereumjs-util';
import { SignatureValidationError, SignatureValidationErrorCodes } from '../src/revert_errors';
import { eip712SignHashWithKey, ethSignHashWithKey, SignatureType } from '../src/signature_utils';
import { eip712SignHashWithKey, ethSignHashWithKey, RevertErrors, SignatureType } from '@0x/protocol-utils';
import { artifacts } from './artifacts';
import { TestLibSignatureContract } from './wrappers';
@@ -58,7 +57,10 @@ blockchainTests.resets('LibSignature library', env => {
v: 1,
};
return expect(testLib.getSignerOfHash(hash, sig).callAsync()).to.revertWith(
new SignatureValidationError(SignatureValidationErrorCodes.BadSignatureData, hash),
new RevertErrors.Signatures.SignatureValidationError(
RevertErrors.Signatures.SignatureValidationErrorCodes.BadSignatureData,
hash,
),
);
});
@@ -69,7 +71,10 @@ blockchainTests.resets('LibSignature library', env => {
r: '0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141',
};
return expect(testLib.getSignerOfHash(hash, sig).callAsync()).to.revertWith(
new SignatureValidationError(SignatureValidationErrorCodes.BadSignatureData, hash),
new RevertErrors.Signatures.SignatureValidationError(
RevertErrors.Signatures.SignatureValidationErrorCodes.BadSignatureData,
hash,
),
);
});
@@ -80,7 +85,10 @@ blockchainTests.resets('LibSignature library', env => {
signatureType: SignatureType.Illegal,
};
return expect(testLib.getSignerOfHash(hash, sig).callAsync()).to.revertWith(
new SignatureValidationError(SignatureValidationErrorCodes.Illegal, hash),
new RevertErrors.Signatures.SignatureValidationError(
RevertErrors.Signatures.SignatureValidationErrorCodes.Illegal,
hash,
),
);
});
@@ -91,7 +99,10 @@ blockchainTests.resets('LibSignature library', env => {
signatureType: SignatureType.Invalid,
};
return expect(testLib.getSignerOfHash(hash, sig).callAsync()).to.revertWith(
new SignatureValidationError(SignatureValidationErrorCodes.AlwaysInvalid, hash),
new RevertErrors.Signatures.SignatureValidationError(
RevertErrors.Signatures.SignatureValidationErrorCodes.AlwaysInvalid,
hash,
),
);
});
});

View File

@@ -1,5 +1,5 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodeAffiliateFeeTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { encodeAffiliateFeeTransformerData, ETH_TOKEN_ADDRESS } from '@0x/protocol-utils';
import { BigNumber } from '@0x/utils';
import * as _ from 'lodash';

View File

@@ -7,12 +7,8 @@ import {
Numberish,
randomAddress,
} from '@0x/contracts-test-utils';
import {
assetDataUtils,
encodeFillQuoteTransformerData,
FillQuoteTransformerData,
FillQuoteTransformerSide,
} from '@0x/order-utils';
import { assetDataUtils } from '@0x/order-utils';
import { encodeFillQuoteTransformerData, FillQuoteTransformerData, FillQuoteTransformerSide } from '@0x/protocol-utils';
import { Order } from '@0x/types';
import { BigNumber, hexUtils, ZeroExRevertErrors } from '@0x/utils';
import * as _ from 'lodash';

View File

@@ -1,5 +1,5 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodePayTakerTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { encodePayTakerTransformerData, ETH_TOKEN_ADDRESS } from '@0x/protocol-utils';
import { BigNumber } from '@0x/utils';
import * as _ from 'lodash';

View File

@@ -1,5 +1,5 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodeWethTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { encodeWethTransformerData, ETH_TOKEN_ADDRESS } from '@0x/protocol-utils';
import { BigNumber, ZeroExRevertErrors } from '@0x/utils';
import * as _ from 'lodash';

View File

@@ -1,8 +1,7 @@
import { getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { LimitOrder, LimitOrderFields, RfqOrder, RfqOrderFields } from '@0x/protocol-utils';
import { BigNumber, hexUtils } from '@0x/utils';
import { LimitOrder, LimitOrderFields, RfqOrder, RfqOrderFields } from '../../src/orders';
/**
* Generate a random limit order.
*/

View File

@@ -7,29 +7,22 @@ Releases
This page outlines upcoming releases and expected changes.
+-------------+---------------------------------------------------------------+----------------------+------------+
| **Release** | **Overview** | **Est Release Date** | **Status** |
+-------------+---------------------------------------------------------------+----------------------+------------+
| `VIP`_ | PLP VIP | 12/01/20 | Timelocked |
+-------------+---------------------------------------------------------------+----------------------+------------+
| `Hancock`_ | Remove calldata signing / DeFi Saver Fix / Allowance on Proxy | 12/07/20 | Testing |
+-------------+---------------------------------------------------------------+----------------------+------------+
| `Tinker`_ | V4 Orders | Early January 2021 | In Audits |
+-------------+---------------------------------------------------------------+----------------------+------------+
.. table::
:widths: 20 50 10 10 10
VIP
----
- Deploy the `LiquidityProviderFeature <../architecture/features.html>`_, which enables optimized trades directly with `PLP <../advanced/plp.html>`_
+--------------+---------------------------------------------------------------+----------------------+------------+---------------------------------------------------------------------------------------------------------------+
| **Release** | **Overview** | **Est Release Date** | **Status** | **Additional** |
+--------------+---------------------------------------------------------------+----------------------+------------+---------------------------------------------------------------------------------------------------------------+
| `Tinker`_ | `V4 Orders <../basics/orders.html>`_ | 01/05/21 | In Audits | |
+--------------+---------------------------------------------------------------+----------------------+------------+---------------------------------------------------------------------------------------------------------------+
| `Hot-Pants`_ | Remove calldata signing / DeFi Saver Fix / Allowance on Proxy | 12/07/20 | Deployed | `Release Notes <https://github.com/0xProject/0x-migrations/blob/main/src/exchange-proxy/migrations/LOG.md>`__ |
+--------------+---------------------------------------------------------------+----------------------+------------+---------------------------------------------------------------------------------------------------------------+
| `Plop`_ | PLP VIP | 12/01/20 | Deployed | |
+--------------+---------------------------------------------------------------+----------------------+------------+---------------------------------------------------------------------------------------------------------------+
Hancock
-------
- Removes calldata signing from ``TransformERC20`` Feature.
- Redeploying all `Transformers <../architecture/transformers.html>`_ (new interface w/o ``calldataHash``)
- Allowances can now be set on the `Proxy <../architecture/features/proxy.html>`_. See more on the `Allowances Page <../basics/allowances.html>`_. This involves redeploying the following `Features <../architecture/features.html>`_: ``MetaTransactionsFeature``, ``TransformERC20Feature``, ``UniswapFeature``.
Upcoming
========
Tinker
------
@@ -38,4 +31,21 @@ Tinker
- Deploy updated `FillQuoteTransformer <../architecture/transformers.html>`_, which can fill `V4 Orders <../basics/orders.html>`_. This transformer will no longer call Exchange V3.
- Introduce `new events <../basics/events.html>`_.
- Decommission `SignatureValidationFeature <../architecture/features.html>`_.
- Decommission `TokenSpenderFeature <../architecture/features.html>`_.
- Decommission `TokenSpenderFeature <../architecture/features.html>`_.
Past
=====
Hot-Pants
----------
- Removes calldata signing from ``TransformERC20`` Feature.
- Redeploying all `Transformers <../architecture/transformers.html>`_ (new interface w/o ``calldataHash``)
- Allowances can now be set on the `Proxy <../architecture/features/proxy.html>`_. See more on the `Allowances Page <../basics/allowances.html>`_. This involves redeploying the following `Features <../architecture/features.html>`_: ``MetaTransactionsFeature``, ``TransformERC20Feature``, ``UniswapFeature``.
Plop
----
- Deploy the `LiquidityProviderFeature <../architecture/features.html>`_, which enables optimized trades directly with `PLP <../advanced/plp.html>`_

View File

@@ -70,7 +70,7 @@ Supported DEX's:
* Sushiswap
* Uniswap v1/v2
This transformation is implemented by the `FillQuoteTransformer <../architecture/transformers.html>`_ and has the ``deploymentNonce`` of ``5``. Abi-Encode the following struct to get the ``data``:
This transformation is implemented by the `FillQuoteTransformer <../architecture/transformers.html>`_. Abi-Encode the following struct to get the ``data``:
.. warning::
An upgrade is pending to this transformation. This currently uses Exchange V3 Orders, but will soon be updated to use `V4 Orders <../basics/orders.html>`_. - 11/26/2020
@@ -117,7 +117,7 @@ This transformation currently executes a Market Sell or Market Buy on a series o
WETH Wrapping
-------------
This transformation is implemented by the `WethTransformer <../architecture/transformers.html>`_ and has the ``deploymentNonce`` of ``1``. Abi-Encode the following struct to get the ``data``:
This transformation is implemented by the `WethTransformer <../architecture/transformers.html>`_. Abi-Encode the following struct to get the ``data``:
.. code-block:: solidity
@@ -135,7 +135,7 @@ If the supplied token address is `WETH (etherToken) <../basics/addresses.html>`_
Affiliate Fees
--------------
This transformation is implemented by the `AffiliateFeeTransformer <../architecture/transformers.html>`_ and has the ``deploymentNonce`` of ``3``. Abi-Encode the following struct to get the ``data``:
This transformation is implemented by the `AffiliateFeeTransformer <../architecture/transformers.html>`_. Abi-Encode the following struct to get the ``data``:
.. code-block:: solidity
@@ -156,7 +156,7 @@ This pays the ``recipient`` in the ``amount`` of ``token`` specified. This can b
Pay Taker
---------
This transformation is implemented by the `PayTakerTransformer <../architecture/transformers.html>`_ and has the ``deploymentNonce`` of ``2``. Abi-Encode the following struct to get the ``data``:
This transformation is implemented by the `PayTakerTransformer <../architecture/transformers.html>`_. Abi-Encode the following struct to get the ``data``:
.. code-block:: solidity

View File

@@ -7,19 +7,20 @@ Transformers extend the core protocol. They are trustless and permissioned by th
Below is a catalog of Transformers.
.. table::
:widths: 20 60 20
:widths: 20 60 10 10
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Transformer** | **Description** | **Nonce** | **Resources** |
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| FillQuoteTransformer | Aggregates Liquidity across DEXs and Native 0x Orders. | 9 | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/FillQuoteTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#liquidity-aggregation>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| AffiliateFeesTransformer | Allows integrators to charge an affiliate fee when an order is filled by their platform. | 8 | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/AffiliateFeeTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#affiliate-fees>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PayTakerTransformer | Forwards funds in the Flash Wallet to the Taker. | 7 | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/PayTakerTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#pay-taker>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| WethTransformer | Wraps ETH into WETH (and unwraps) | 6 | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/WethTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#weth-wrapping>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-----------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| **Transformer** | **Description** | **Resources** |
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| FillQuoteTransformer | Aggregates Liquidity across DEXs and Native 0x Orders. | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/FillQuoteTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#liquidity-aggregation>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| WethTransformer | Wraps ETH into WETH (and unwraps) | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/WethTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#weth-wrapping>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| AffiliateFeesTransformer | Allows integrators to charge an affiliate fee when an order is filled by their platform. | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/AffiliateFeeTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#affiliate-fees>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| PayTakerTransformer | Forwards funds in the Flash Wallet to the Taker. | `Code <https://github.com/0xProject/protocol/blob/development/contracts/zero-ex/contracts/src/transformers/PayTakerTransformer.sol>`__; `Usage <../advanced/erc20_transformations.html#pay-taker>`__ |
+--------------------------+------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
Implementing a Transformer

View File

@@ -23,10 +23,10 @@ Transformers
===================
.. csv-table::
wethTransformer, `0x68c0bb685099dc7cb5c5ce2b26185945b357383e <https://etherscan.io/address//0x68c0bb685099dc7cb5c5ce2b26185945b357383e>`_
payTakerTransformer, `0x49b9df2c58491764cf40cb052dd4243df63622c7 <https://etherscan.io/address//0x49b9df2c58491764cf40cb052dd4243df63622c7>`_
fillQuoteTransformer, `0xfbfb26935f15db6a319a43db5085245a6df1e408 <https://etherscan.io/address//0xfbfb26935f15db6a319a43db5085245a6df1e408>`_
affiliateFeeTransformer, `0x4581b59a05ba373b9f67676f66bdb5fcd67e7567 <https://etherscan.io/address//0x4581b59a05ba373b9f67676f66bdb5fcd67e7567>`_
wethTransformer, `0xb2bc06a4efb20fc6553a69dbfa49b7be938034a7 <https://etherscan.io/address//0xb2bc06a4efb20fc6553a69dbfa49b7be938034a7>`_
payTakerTransformer, `0x4638a7ebe75b911b995d0ec73a81e4f85f41f24e <https://etherscan.io/address//0x4638a7ebe75b911b995d0ec73a81e4f85f41f24e>`_
fillQuoteTransformer, `0x74c35f17a19d4ee0ddd65cc21c671806913f9176 <https://etherscan.io/address//0x74c35f17a19d4ee0ddd65cc21c671806913f9176>`_
affiliateFeeTransformer, `0xda6d9fc5998f550a094585cf9171f0e8ee3ac59f <https://etherscan.io/address//0xda6d9fc5998f550a094585cf9171f0e8ee3ac59f>`_

View File

@@ -18,7 +18,7 @@ Below is a catalog of basic Exchange functionality. For more advanced usage, lik
| `cancelPairLimitOrders`_ | Cancels Limit orders in a specific market pair. |
| | Ex: Cancel all Limit Orders selling WETH for USDC. |
+---------------------------------+--------------------------------------------------------------------------+
| `batchCancelLimitPairOrders`_ | A batch call to `cancelLimitPairOrders`. |
| `batchCancelPairLimitOrders`_ | A batch call to `cancelPairLimitOrders`. |
+---------------------------------+--------------------------------------------------------------------------+
| `getLimitOrderInfo`_ | Returns the state of a given order. |
+---------------------------------+--------------------------------------------------------------------------+
@@ -155,7 +155,7 @@ This function cancels all limit orders created by the caller with with a maker a
.. code-block:: solidity
function cancelPairRfqOrders(
function cancelPairLimitOrders(
address makerToken,
address takerToken,
uint256 salt;
@@ -167,14 +167,14 @@ This function emits a `PairCancelledLimitOrders <../basics/events.html#paircance
- ``msg.sender != order.maker``
- The ``salt`` parameter is ≤ to a previous ``salt``.
batchCancelLimitPairOrders
batchCancelPairLimitOrders
--------------------------
This function performs multiple ``cancelLimitPairOrders()`` at once. Each respective index across arrays is equivalent to a single call.
This function performs multiple ``cancelPairLimitOrders()`` at once. Each respective index across arrays is equivalent to a single call.
.. code-block:: solidity
function batchCancelLimitPairOrders(
function batchCancelPairLimitOrders(
address[] makerTokens,
address[] takerTokens,
uint256[] salts;
@@ -329,7 +329,7 @@ If the trade is successful a `RfqOrderFilled <../basics/events.html#rfqorderfill
- The market pair (Ex, ``WETH/USDT``) was cancelled (``order.salt`` is less than the value passed to ``cancelPairLimitOrders``.
- Either the maker or taker has an insufficient allowance/balance.
- The order's ``taker`` field is non-zero and does not match the actual taker. This is ``msg.sender``, unless used with `meta-transactions <../advanced/mtx.rst>`_ in which case it is the signer.
- The order's ``origin`` field is non-zero and does not match ``tx.origin`` or a valid origin (see `registerAllowedRfqOrigins <../basics/functions.html#id11>`_).
- The order's ``origin`` field is non-zero and does not match ``tx.origin`` or a valid origin (see `registerAllowedRfqOrigins`_).
- The maker's signature is invalid.
fillOrKillRfqOrder
@@ -526,9 +526,10 @@ The hash can be manually generated using the following code:
order.salt
))
));
registerAllowedRfqOrigins
-------------------------
--------------------------
The RFQ order includes a ``txOrigin`` field, which a maker can use to restrict which EOA's can submit the Ethereum transaction that fills their order. There are two ways a maker can use this field.

View File

@@ -92,7 +92,7 @@ The ``RFQOrder`` struct has the following fields:
How To Sign
==============
Both Limit & RFQ orders must be signed by the `maker`. This signature is needed to fill an order, see `Basic Functionality <./functions.rst>`_.
Both Limit & RFQ orders must be signed by the `maker`. This signature is needed to fill an order, see `Basic Functionality <./functions.html>`_.
The protocol accepts signatures defined by the following struct:

View File

@@ -1,4 +1,41 @@
[
{
"timestamp": 1607485227,
"version": "5.4.2",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1607381756,
"version": "5.4.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "5.4.0",
"changes": [
{
"note": "Add `takerAssetToEthRate` and `makerAssetToEthRate` to swap quote response",
"pr": 49
}
],
"timestamp": 1607373752
},
{
"timestamp": 1607036724,
"version": "5.3.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "5.3.0",
"changes": [

View File

@@ -5,6 +5,22 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v5.4.2 - _December 9, 2020_
* Dependencies updated
## v5.4.1 - _December 7, 2020_
* Dependencies updated
## v5.4.0 - _December 7, 2020_
* Add `takerAssetToEthRate` and `makerAssetToEthRate` to swap quote response (#49)
## v5.3.1 - _December 3, 2020_
* Dependencies updated
## v5.3.0 - _December 3, 2020_
* Added Crypto.com (#43)

View File

@@ -0,0 +1,89 @@
/*
Copyright 2020 ZeroEx Intl.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
pragma solidity ^0.6;
// ERC20 contract interface
abstract contract IToken {
/// @dev Query the balance of owner
/// @param _owner The address from which the balance will be retrieved
/// @return Balance of owner
function balanceOf(address _owner) public virtual view returns (uint256);
/// @param _owner The address of the account owning tokens
/// @param _spender The address of the account able to transfer the tokens
/// @return Amount of remaining tokens allowed to spent
function allowance(address _owner, address _spender) public virtual view returns (uint256);
}
contract BalanceChecker {
/*
Check the token balances of wallet-token pairs.
Pass 0xeee... as a "token" address to get ETH balance.
Possible error throws:
- extremely large arrays for user and or tokens (gas cost too high)
Returns a one-dimensional that's user.length long.
*/
function balances(address[] calldata users, address[] calldata tokens) external view returns (uint256[] memory) {
// make sure the users array and tokens array are of equal length
require(users.length == tokens.length, "users array is a different length than the tokens array");
uint256[] memory addrBalances = new uint256[](users.length);
for(uint i = 0; i < users.length; i++) {
if (tokens[i] != address(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE)) {
addrBalances[i] = IToken(tokens[i]).balanceOf(users[i]);
} else {
addrBalances[i] = users[i].balance; // ETH balance
}
}
return addrBalances;
}
/*
Check the allowances of an array of owner-spender-tokens
Returns 0 for 0xeee... (ETH)
Possible error throws:
- extremely large arrays for user and or tokens (gas cost too high)
Returns a one-dimensional array that's owners.length long.
*/
function allowances(address[] calldata owners, address[] calldata spenders, address[] calldata tokens) external view returns (uint256[] memory) {
// make sure the arrays are all of equal length
require(owners.length == spenders.length, "all arrays must be of equal length");
require(owners.length == tokens.length, "all arrays must be of equal length");
uint256[] memory addrAllowances = new uint256[](owners.length);
for(uint i = 0; i < owners.length; i++) {
if (tokens[i] != address(0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE)) {
addrAllowances[i] = IToken(tokens[i]).allowance(owners[i], spenders[i]);
} else {
// ETH
addrAllowances[i] = 0;
}
}
return addrAllowances;
}
}

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/asset-swapper",
"version": "5.3.0",
"version": "5.4.2",
"engines": {
"node": ">=6.12"
},
@@ -36,9 +36,9 @@
"publish:private": "yarn build && gitpkg publish"
},
"config": {
"publicInterfaceContracts": "ERC20BridgeSampler",
"publicInterfaceContracts": "ERC20BridgeSampler,BalanceChecker",
"abis:comment": "This list is auto-generated by contracts-gen. Don't edit manually.",
"abis": "./test/generated-artifacts/@(ApproximateBuys|BalancerSampler|CurveSampler|DODOSampler|DeploymentConstants|DummyLiquidityProvider|ERC20BridgeSampler|Eth2DaiSampler|IBalancer|ICurve|IEth2Dai|IKyberNetwork|IMStable|IMooniswap|IMultiBridge|IShell|IUniswapExchangeQuotes|IUniswapV2Router01|KyberSampler|LiquidityProviderSampler|MStableSampler|MooniswapSampler|MultiBridgeSampler|NativeOrderSampler|SamplerUtils|ShellSampler|SushiSwapSampler|TestERC20BridgeSampler|TestNativeOrderSampler|TwoHopSampler|UniswapSampler|UniswapV2Sampler).json",
"abis": "./test/generated-artifacts/@(ApproximateBuys|BalanceChecker|BalancerSampler|CurveSampler|DODOSampler|DeploymentConstants|DummyLiquidityProvider|ERC20BridgeSampler|Eth2DaiSampler|IBalancer|ICurve|IEth2Dai|IKyberNetwork|IMStable|IMooniswap|IMultiBridge|IShell|IUniswapExchangeQuotes|IUniswapV2Router01|KyberSampler|LiquidityProviderSampler|MStableSampler|MooniswapSampler|MultiBridgeSampler|NativeOrderSampler|SamplerUtils|ShellSampler|SushiSwapSampler|TestERC20BridgeSampler|TestNativeOrderSampler|TwoHopSampler|UniswapSampler|UniswapV2Sampler).json",
"postpublish": {
"assets": []
}
@@ -58,18 +58,18 @@
},
"dependencies": {
"@0x/assert": "^3.0.19",
"@0x/base-contract": "^6.2.13",
"@0x/contract-addresses": "^5.5.0",
"@0x/contract-wrappers": "^13.10.2",
"@0x/dev-utils": "^4.1.2",
"@0x/base-contract": "^6.2.14",
"@0x/contract-addresses": "^5.6.0",
"@0x/contract-wrappers": "^13.11.0",
"@0x/dev-utils": "^4.1.3",
"@0x/json-schemas": "^5.3.4",
"@0x/order-utils": "^10.4.8",
"@0x/order-utils": "^10.4.10",
"@0x/orderbook": "0xProject/gitpkg-registry#0x-orderbook-v2.2.7-e10a81023",
"@0x/quote-server": "^3.1.0",
"@0x/types": "^3.3.1",
"@0x/typescript-typings": "^5.1.6",
"@0x/utils": "^6.1.1",
"@0x/web3-wrapper": "^7.2.10",
"@0x/web3-wrapper": "^7.3.0",
"@balancer-labs/sor": "0.3.2",
"@bancor/sdk": "^0.2.9",
"@ethersproject/abi": "^5.0.1",
@@ -86,19 +86,19 @@
"lodash": "^4.17.11"
},
"devDependencies": {
"@0x/base-contract": "^6.2.13",
"@0x/contracts-asset-proxy": "^3.6.7",
"@0x/contracts-erc20": "^3.2.10",
"@0x/contracts-exchange": "^3.2.16",
"@0x/contracts-exchange-libs": "^4.3.16",
"@0x/contracts-gen": "^2.0.23",
"@0x/contracts-test-utils": "^5.3.13",
"@0x/contracts-utils": "^4.6.1",
"@0x/contracts-zero-ex": "^0.11.0",
"@0x/base-contract": "^6.2.14",
"@0x/contracts-asset-proxy": "^3.6.9",
"@0x/contracts-erc20": "^3.2.12",
"@0x/contracts-exchange": "^3.2.18",
"@0x/contracts-exchange-libs": "^4.3.18",
"@0x/contracts-gen": "^2.0.24",
"@0x/contracts-test-utils": "^5.3.15",
"@0x/contracts-utils": "^4.6.3",
"@0x/contracts-zero-ex": "^0.12.0",
"@0x/mesh-rpc-client": "^9.4.2",
"@0x/migrations": "^6.5.2",
"@0x/sol-compiler": "^4.4.0",
"@0x/subproviders": "^6.2.2",
"@0x/migrations": "^6.5.4",
"@0x/sol-compiler": "^4.4.1",
"@0x/subproviders": "^6.2.3",
"@0x/ts-doc-gen": "^0.0.28",
"@0x/tslint-config": "^4.1.3",
"@0x/types": "^3.3.1",

View File

@@ -5,5 +5,9 @@
*/
import { ContractArtifact } from 'ethereum-types';
import * as BalanceChecker from '../generated-artifacts/BalanceChecker.json';
import * as ERC20BridgeSampler from '../generated-artifacts/ERC20BridgeSampler.json';
export const artifacts = { ERC20BridgeSampler: ERC20BridgeSampler as ContractArtifact };
export const artifacts = {
ERC20BridgeSampler: ERC20BridgeSampler as ContractArtifact,
BalanceChecker: BalanceChecker as ContractArtifact,
};

View File

@@ -177,7 +177,7 @@ export {
} from './utils/quote_report_generator';
export { QuoteRequestor } from './utils/quote_requestor';
export { rfqtMocker } from './utils/rfqt_mocker';
export { ERC20BridgeSamplerContract } from './wrappers';
export { ERC20BridgeSamplerContract, BalanceCheckerContract } from './wrappers';
import { ERC20BridgeSource } from './utils/market_operation_utils/types';
export type Native = ERC20BridgeSource.Native;
export type MultiHop = ERC20BridgeSource.MultiHop;

View File

@@ -198,6 +198,8 @@ export interface SwapQuoteBase {
isTwoHop: boolean;
makerTokenDecimals: number;
takerTokenDecimals: number;
takerAssetToEthRate: BigNumber;
makerAssetToEthRate: BigNumber;
}
/**

View File

@@ -543,6 +543,10 @@ export class MarketOperationUtils {
exchangeProxyOverhead: opts.exchangeProxyOverhead || (() => ZERO_AMOUNT),
};
// NOTE: For sell quotes input is the taker asset and for buy quotes input is the maker asset
const takerAssetToEthRate = side === MarketOperation.Sell ? ethToInputRate : ethToOutputRate;
const makerAssetToEthRate = side === MarketOperation.Sell ? ethToOutputRate : ethToInputRate;
// Find the unoptimized best rate to calculate savings from optimizer
const _unoptimizedPath = fillsToSortedPaths(fills, side, inputAmount, optimizerOpts)[0];
const unoptimizedPath = _unoptimizedPath ? _unoptimizedPath.collapse(orderOpts) : undefined;
@@ -565,6 +569,8 @@ export class MarketOperationUtils {
marketSideLiquidity,
adjustedRate: bestTwoHopRate,
unoptimizedPath,
takerAssetToEthRate,
makerAssetToEthRate,
};
}
@@ -598,6 +604,8 @@ export class MarketOperationUtils {
marketSideLiquidity,
adjustedRate: optimalPathRate,
unoptimizedPath,
takerAssetToEthRate,
makerAssetToEthRate,
};
}

View File

@@ -346,6 +346,8 @@ export interface OptimizerResult {
marketSideLiquidity: MarketSideLiquidity;
adjustedRate: BigNumber;
unoptimizedPath?: CollapsedPath;
takerAssetToEthRate: BigNumber;
makerAssetToEthRate: BigNumber;
}
export interface OptimizerResultWithReport extends OptimizerResult {

View File

@@ -170,7 +170,14 @@ function createSwapQuote(
gasPrice: BigNumber,
gasSchedule: FeeSchedule,
): SwapQuote {
const { optimizedOrders, quoteReport, sourceFlags, unoptimizedPath } = optimizerResult;
const {
optimizedOrders,
quoteReport,
sourceFlags,
unoptimizedPath,
takerAssetToEthRate,
makerAssetToEthRate,
} = optimizerResult;
const isTwoHop = sourceFlags === SOURCE_FLAGS[ERC20BridgeSource.MultiHop];
// Calculate quote info
@@ -203,6 +210,8 @@ function createSwapQuote(
sourceBreakdown,
makerTokenDecimals,
takerTokenDecimals,
takerAssetToEthRate,
makerAssetToEthRate,
quoteReport,
isTwoHop,
};

View File

@@ -3,4 +3,5 @@
* Warning: This file is auto-generated by contracts-gen. Don't edit manually.
* -----------------------------------------------------------------------------
*/
export * from '../generated-wrappers/balance_checker';
export * from '../generated-wrappers/erc20_bridge_sampler';

View File

@@ -6,6 +6,7 @@
import { ContractArtifact } from 'ethereum-types';
import * as ApproximateBuys from '../test/generated-artifacts/ApproximateBuys.json';
import * as BalanceChecker from '../test/generated-artifacts/BalanceChecker.json';
import * as BalancerSampler from '../test/generated-artifacts/BalancerSampler.json';
import * as CurveSampler from '../test/generated-artifacts/CurveSampler.json';
import * as DeploymentConstants from '../test/generated-artifacts/DeploymentConstants.json';
@@ -39,6 +40,7 @@ import * as UniswapSampler from '../test/generated-artifacts/UniswapSampler.json
import * as UniswapV2Sampler from '../test/generated-artifacts/UniswapV2Sampler.json';
export const artifacts = {
ApproximateBuys: ApproximateBuys as ContractArtifact,
BalanceChecker: BalanceChecker as ContractArtifact,
BalancerSampler: BalancerSampler as ContractArtifact,
CurveSampler: CurveSampler as ContractArtifact,
DODOSampler: DODOSampler as ContractArtifact,

View File

@@ -0,0 +1,60 @@
import { artifacts as erc20Artifacts, DummyERC20TokenContract } from '@0x/contracts-erc20';
import { blockchainTests, constants, expect, web3Wrapper } from '@0x/contracts-test-utils';
import { BigNumber } from '@0x/utils';
import * as _ from 'lodash';
import { artifacts } from '../artifacts';
import { BalanceCheckerContract } from '../wrappers';
// tslint:disable: custom-no-magic-numbers
const ETH_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';
blockchainTests.resets('BalanceChecker contract', env => {
let contract: BalanceCheckerContract;
before(async () => {
contract = await BalanceCheckerContract.deployFrom0xArtifactAsync(
artifacts.BalanceChecker,
env.provider,
env.txDefaults,
{},
);
});
describe('getBalances', () => {
it('returns the correct array for a successful call', async () => {
const makerToken = await DummyERC20TokenContract.deployFrom0xArtifactAsync(
erc20Artifacts.DummyERC20Token,
env.provider,
env.txDefaults,
artifacts,
constants.DUMMY_TOKEN_NAME,
constants.DUMMY_TOKEN_SYMBOL,
new BigNumber(18),
constants.DUMMY_TOKEN_TOTAL_SUPPLY,
);
const accounts = await web3Wrapper.getAvailableAddressesAsync();
const owner = accounts[0];
const owner2 = accounts[1];
await makerToken.mint(new BigNumber(100)).awaitTransactionSuccessAsync({ from: owner });
const testResults = await contract.balances([owner, owner2], [makerToken.address, ETH_ADDRESS]).callAsync();
expect(testResults).to.eql([new BigNumber(100), new BigNumber(100000000000000000000)]);
});
it('it throws an error if the input arrays of different lengths', async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
const owner = accounts[0];
try {
await contract.balances([owner], [ETH_ADDRESS, ETH_ADDRESS]).callAsync();
expect.fail();
} catch (error) {
expect(error.message).to.eql('users array is a different length than the tokens array');
}
});
});
});

View File

@@ -41,6 +41,8 @@ export async function getFullyFillableSwapQuoteWithNoFeesAsync(
unoptimizedOrders: orders.map(order => ({ ...order, fills: [] })),
sourceBreakdown: breakdown,
isTwoHop: false,
takerAssetToEthRate: constants.ZERO_AMOUNT,
makerAssetToEthRate: constants.ZERO_AMOUNT,
};
if (operation === MarketOperation.Buy) {

View File

@@ -4,6 +4,7 @@
* -----------------------------------------------------------------------------
*/
export * from '../test/generated-wrappers/approximate_buys';
export * from '../test/generated-wrappers/balance_checker';
export * from '../test/generated-wrappers/balancer_sampler';
export * from '../test/generated-wrappers/curve_sampler';
export * from '../test/generated-wrappers/d_o_d_o_sampler';

View File

@@ -3,8 +3,10 @@
"compilerOptions": { "outDir": "lib", "rootDir": ".", "resolveJsonModule": true },
"include": ["./src/**/*", "./test/**/*", "./generated-wrappers/**/*"],
"files": [
"generated-artifacts/BalanceChecker.json",
"generated-artifacts/ERC20BridgeSampler.json",
"test/generated-artifacts/ApproximateBuys.json",
"test/generated-artifacts/BalanceChecker.json",
"test/generated-artifacts/BalancerSampler.json",
"test/generated-artifacts/CurveSampler.json",
"test/generated-artifacts/DODOSampler.json",

View File

@@ -1,4 +1,14 @@
[
{
"version": "5.6.0",
"changes": [
{
"note": "Update mainnet and ropsten transformer addresses for hot-pants release",
"pr": 70
}
],
"timestamp": 1607381756
},
{
"version": "5.5.0",
"changes": [

View File

@@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v5.6.0 - _December 7, 2020_
* Update mainnet and ropsten transformer addresses for hot-pants release (#70)
## v5.5.0 - _December 3, 2020_
* Update ganache snapshot addresses (#59)

View File

@@ -34,10 +34,10 @@
"exchangeProxyFlashWallet": "0x22f9dcf4647084d6c31b2765f6910cd85c178c18",
"exchangeProxyLiquidityProviderSandbox": "0xdb971b18ea5075734cec1241732cc1b41031dfc9",
"transformers": {
"wethTransformer": "0x68c0bb685099dc7cb5c5ce2b26185945b357383e",
"payTakerTransformer": "0x49b9df2c58491764cf40cb052dd4243df63622c7",
"affiliateFeeTransformer": "0x4581b59a05ba373b9f67676f66bdb5fcd67e7567",
"fillQuoteTransformer": "0xfbfb26935f15db6a319a43db5085245a6df1e408"
"wethTransformer": "0xb2bc06a4efb20fc6553a69dbfa49b7be938034a7",
"payTakerTransformer": "0x4638a7ebe75b911b995d0ec73a81e4f85f41f24e",
"affiliateFeeTransformer": "0xda6d9fc5998f550a094585cf9171f0e8ee3ac59f",
"fillQuoteTransformer": "0x74c35f17a19d4ee0ddd65cc21c671806913f9176"
}
},
"3": {
@@ -75,10 +75,10 @@
"exchangeProxyFlashWallet": "0x22f9dcf4647084d6c31b2765f6910cd85c178c18",
"exchangeProxyLiquidityProviderSandbox": "0xb8afda68a9834969a69ebd4aab201feff814d170",
"transformers": {
"wethTransformer": "0x8d822fe2b42f60531203e288f5f357fa79474437",
"payTakerTransformer": "0x150652244723102faeaefa4c79597d097ffa26c6",
"affiliateFeeTransformer": "0xa39b40642e8e00435857a0fe7d0655e08cc2217e",
"fillQuoteTransformer": "0x3fb85e0c1e9e0ba4ba9a4072442a2540c0473db1"
"wethTransformer": "0x05ad19aa3826e0609a19568ffbd1dfe86c6c7184",
"payTakerTransformer": "0x6d0ebf2bcd9cc93ec553b60ad201943dcca4e291",
"affiliateFeeTransformer": "0x6588256778ca4432fa43983ac685c45efb2379e2",
"fillQuoteTransformer": "0x5ec162400ec00f0f3ef1d8aae1fed37742d5dc81"
}
},
"4": {

View File

@@ -1,6 +1,6 @@
{
"name": "@0x/contract-addresses",
"version": "5.5.0",
"version": "5.6.0",
"engines": {
"node": ">=6.12"
},

View File

@@ -1,4 +1,14 @@
[
{
"version": "3.10.0",
"changes": [
{
"note": "Update artifacts",
"pr": 76
}
],
"timestamp": 1607485227
},
{
"timestamp": 1606961263,
"version": "3.9.1",

View File

@@ -5,6 +5,10 @@ Edit the package's CHANGELOG.json file only.
CHANGELOG
## v3.10.0 - _December 9, 2020_
* Update artifacts (#76)
## v3.9.1 - _December 3, 2020_
* Dependencies updated

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -47,16 +47,16 @@
},
"evm": {
"bytecode": {
"object": "0x608060405234801561001057600080fd5b506103e9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80635b2388be1461003b5780636c90fedb146100ad575b600080fd5b6100ab6004803603602081101561005157600080fd5b81019060208101813564010000000081111561006c57600080fd5b82018360208201111561007e57600080fd5b803590602001918460018302840111640100000000831117156100a057600080fd5b509092509050610155565b005b6100e0600480360360208110156100c357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610227565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011a578181015183820152602001610102565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b33600081815260208190526040902061016f9084846102fb565b507fd060052768902f3eecb84b8eae9d3a2608a1a9e60811a33968b46b8d552f266e818484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252848482818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152602081815260409182902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061035a578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555610387565b82800160010185558215610387579182015b8281111561038757823582559160200191906001019061036c565b50610393929150610397565b5090565b6103b191905b80821115610393576000815560010161039d565b9056fea265627a7a723158209cc2a91500814c4a416a32432823efbf6f7dbf13ab2e764101a70f6ef77fcb4a64736f6c63430005110032"
"object": "0x608060405234801561001057600080fd5b506103e9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c80635b2388be1461003b5780636c90fedb146100ad575b600080fd5b6100ab6004803603602081101561005157600080fd5b81019060208101813564010000000081111561006c57600080fd5b82018360208201111561007e57600080fd5b803590602001918460018302840111640100000000831117156100a057600080fd5b509092509050610155565b005b6100e0600480360360208110156100c357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610227565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011a578181015183820152602001610102565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b33600081815260208190526040902061016f9084846102fb565b507fd060052768902f3eecb84b8eae9d3a2608a1a9e60811a33968b46b8d552f266e818484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252848482818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152602081815260409182902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061035a578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555610387565b82800160010185558215610387579182015b8281111561038757823582559160200191906001019061036c565b50610393929150610397565b5090565b6103b191905b80821115610393576000815560010161039d565b9056fea265627a7a72315820b312a87be49bf27917f0152f924a8c36406c062ebd65d69024a8ca83cedd7d4d64736f6c63430005110032"
},
"deployedBytecode": {
"object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80635b2388be1461003b5780636c90fedb146100ad575b600080fd5b6100ab6004803603602081101561005157600080fd5b81019060208101813564010000000081111561006c57600080fd5b82018360208201111561007e57600080fd5b803590602001918460018302840111640100000000831117156100a057600080fd5b509092509050610155565b005b6100e0600480360360208110156100c357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610227565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011a578181015183820152602001610102565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b33600081815260208190526040902061016f9084846102fb565b507fd060052768902f3eecb84b8eae9d3a2608a1a9e60811a33968b46b8d552f266e818484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252848482818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152602081815260409182902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061035a578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555610387565b82800160010185558215610387579182015b8281111561038757823582559160200191906001019061036c565b50610393929150610397565b5090565b6103b191905b80821115610393576000815560010161039d565b9056fea265627a7a723158209cc2a91500814c4a416a32432823efbf6f7dbf13ab2e764101a70f6ef77fcb4a64736f6c63430005110032"
"object": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c80635b2388be1461003b5780636c90fedb146100ad575b600080fd5b6100ab6004803603602081101561005157600080fd5b81019060208101813564010000000081111561006c57600080fd5b82018360208201111561007e57600080fd5b803590602001918460018302840111640100000000831117156100a057600080fd5b509092509050610155565b005b6100e0600480360360208110156100c357600080fd5b503573ffffffffffffffffffffffffffffffffffffffff16610227565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561011a578181015183820152602001610102565b50505050905090810190601f1680156101475780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b33600081815260208190526040902061016f9084846102fb565b507fd060052768902f3eecb84b8eae9d3a2608a1a9e60811a33968b46b8d552f266e818484604051808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001806020018281038252848482818152602001925080828437600083820152604051601f9091017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016909201829003965090945050505050a1505050565b73ffffffffffffffffffffffffffffffffffffffff81166000908152602081815260409182902080548351601f60027fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6101006001861615020190931692909204918201849004840281018401909452808452606093928301828280156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b50505050509050919050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1061035a578280017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00823516178555610387565b82800160010185558215610387579182015b8281111561038757823582559160200191906001019061036c565b50610393929150610397565b5090565b6103b191905b80821115610393576000815560010161039d565b9056fea265627a7a72315820b312a87be49bf27917f0152f924a8c36406c062ebd65d69024a8ca83cedd7d4d64736f6c63430005110032"
}
}
},
"compiler": {
"name": "solc",
"version": "soljson-v0.5.17+commit.d19bba13.js",
"version": "0.5.17+commit.d19bba13",
"settings": {
"optimizer": {
"enabled": true,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -135,16 +135,16 @@
},
"evm": {
"bytecode": {
"object": "0x608060405234801561001057600080fd5b506106bf806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c806370a082311161005057806370a0823114610121578063a9059cbb14610154578063dd62ed3e1461018d57610072565b8063095ea7b31461007757806318160ddd146100c457806323b872dd146100de575b600080fd5b6100b06004803603604081101561008d57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356101c8565b604080519115158252519081900360200190f35b6100cc61023b565b60408051918252519081900360200190f35b6100b0600480360360608110156100f457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610241565b6100cc6004803603602081101561013757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661049d565b6100b06004803603604081101561016a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356104c5565b6100cc600480360360408110156101a357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610652565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60025490565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120548211156102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033845290915290205482111561037457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f45524332305f494e53554646494349454e545f414c4c4f57414e434500000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054828101101561040a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff80841660008181526020818152604080832080548801905593881680835284832080548890039055600182528483203384528252918490208054879003905583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561054357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205482810110156105d957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b336000818152602081815260408083208054879003905573ffffffffffffffffffffffffffffffffffffffff871680845292819020805487019055805186815290519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526001602090815260408083209390941682529190915220549056fea265627a7a7231582070f49f484b4453d39e46e7ea480d884eab704629143f1e11635201cbb0995b2164736f6c63430005110032"
"object": "0x608060405234801561001057600080fd5b506106bf806100206000396000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c806370a082311161005057806370a0823114610121578063a9059cbb14610154578063dd62ed3e1461018d57610072565b8063095ea7b31461007757806318160ddd146100c457806323b872dd146100de575b600080fd5b6100b06004803603604081101561008d57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356101c8565b604080519115158252519081900360200190f35b6100cc61023b565b60408051918252519081900360200190f35b6100b0600480360360608110156100f457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610241565b6100cc6004803603602081101561013757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661049d565b6100b06004803603604081101561016a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356104c5565b6100cc600480360360408110156101a357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610652565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60025490565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120548211156102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033845290915290205482111561037457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f45524332305f494e53554646494349454e545f414c4c4f57414e434500000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054828101101561040a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff80841660008181526020818152604080832080548801905593881680835284832080548890039055600182528483203384528252918490208054879003905583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561054357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205482810110156105d957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b336000818152602081815260408083208054879003905573ffffffffffffffffffffffffffffffffffffffff871680845292819020805487019055805186815290519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526001602090815260408083209390941682529190915220549056fea265627a7a723158200a0e5b4813b81b4a59cf323e9296dbdc12eadc2b35caf21c2052aa9fc5df88b364736f6c63430005110032"
},
"deployedBytecode": {
"object": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c806370a082311161005057806370a0823114610121578063a9059cbb14610154578063dd62ed3e1461018d57610072565b8063095ea7b31461007757806318160ddd146100c457806323b872dd146100de575b600080fd5b6100b06004803603604081101561008d57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356101c8565b604080519115158252519081900360200190f35b6100cc61023b565b60408051918252519081900360200190f35b6100b0600480360360608110156100f457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610241565b6100cc6004803603602081101561013757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661049d565b6100b06004803603604081101561016a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356104c5565b6100cc600480360360408110156101a357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610652565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60025490565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120548211156102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033845290915290205482111561037457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f45524332305f494e53554646494349454e545f414c4c4f57414e434500000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054828101101561040a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff80841660008181526020818152604080832080548801905593881680835284832080548890039055600182528483203384528252918490208054879003905583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561054357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205482810110156105d957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b336000818152602081815260408083208054879003905573ffffffffffffffffffffffffffffffffffffffff871680845292819020805487019055805186815290519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526001602090815260408083209390941682529190915220549056fea265627a7a7231582070f49f484b4453d39e46e7ea480d884eab704629143f1e11635201cbb0995b2164736f6c63430005110032"
"object": "0x608060405234801561001057600080fd5b50600436106100725760003560e01c806370a082311161005057806370a0823114610121578063a9059cbb14610154578063dd62ed3e1461018d57610072565b8063095ea7b31461007757806318160ddd146100c457806323b872dd146100de575b600080fd5b6100b06004803603604081101561008d57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356101c8565b604080519115158252519081900360200190f35b6100cc61023b565b60408051918252519081900360200190f35b6100b0600480360360608110156100f457600080fd5b5073ffffffffffffffffffffffffffffffffffffffff813581169160208101359091169060400135610241565b6100cc6004803603602081101561013757600080fd5b503573ffffffffffffffffffffffffffffffffffffffff1661049d565b6100b06004803603604081101561016a57600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81351690602001356104c5565b6100cc600480360360408110156101a357600080fd5b5073ffffffffffffffffffffffffffffffffffffffff81358116916020013516610652565b33600081815260016020908152604080832073ffffffffffffffffffffffffffffffffffffffff8716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a350600192915050565b60025490565b73ffffffffffffffffffffffffffffffffffffffff83166000908152602081905260408120548211156102d557604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8416600090815260016020908152604080832033845290915290205482111561037457604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601c60248201527f45524332305f494e53554646494349454e545f414c4c4f57414e434500000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff8316600090815260208190526040902054828101101561040a57604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff80841660008181526020818152604080832080548801905593881680835284832080548890039055600182528483203384528252918490208054879003905583518681529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a35060019392505050565b73ffffffffffffffffffffffffffffffffffffffff1660009081526020819052604090205490565b3360009081526020819052604081205482111561054357604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601a60248201527f45524332305f494e53554646494349454e545f42414c414e4345000000000000604482015290519081900360640190fd5b73ffffffffffffffffffffffffffffffffffffffff831660009081526020819052604090205482810110156105d957604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f55494e543235365f4f564552464c4f5700000000000000000000000000000000604482015290519081900360640190fd5b336000818152602081815260408083208054879003905573ffffffffffffffffffffffffffffffffffffffff871680845292819020805487019055805186815290519293927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef929181900390910190a350600192915050565b73ffffffffffffffffffffffffffffffffffffffff91821660009081526001602090815260408083209390941682529190915220549056fea265627a7a723158200a0e5b4813b81b4a59cf323e9296dbdc12eadc2b35caf21c2052aa9fc5df88b364736f6c63430005110032"
}
}
},
"compiler": {
"name": "solc",
"version": "soljson-v0.5.17+commit.d19bba13.js",
"version": "0.5.17+commit.d19bba13",
"settings": {
"optimizer": {
"enabled": true,

Some files were not shown because too many files have changed in this diff Show More