Compare commits

...

5677 Commits

Author SHA1 Message Date
Fabio Berger
b6b618e5ce Publish
- 0x.js@6.0.11
 - @0x/abi-gen@2.1.1
 - @0x/abi-gen-wrappers@5.0.1
 - @0x/asset-buyer@6.1.7
 - @0x/asset-swapper@0.0.3
 - @0x/connect@5.0.12
 - @0x/contract-addresses@3.0.1
 - @0x/contract-wrappers@9.1.6
 - @0x/dev-tools-pages@0.0.29
 - @0x/fill-scenarios@3.0.12
 - @0x/instant@1.0.26
 - @0x/metacoin@0.0.53
 - @0x/migrations@4.1.8
 - @0x/order-utils@8.2.1
 - @0x/order-watcher@4.0.13
 - @0x/python-contract-wrappers@1.0.2
 - @0x/react-docs@2.0.14
 - @0x/react-shared@2.0.14
 - @0x/testnet-faucets@1.0.82
 - @0x/website@0.0.85
 - @0x/contracts-asset-proxy@2.2.1
 - @0x/contracts-coordinator@2.0.6
 - @0x/contracts-dev-utils@0.0.3
 - @0x/contracts-erc1155@1.1.8
 - @0x/contracts-erc20@2.2.7
 - @0x/contracts-erc721@2.1.8
 - @0x/contracts-exchange@2.1.7
 - @0x/contracts-exchange-forwarder@3.0.5
 - @0x/contracts-exchange-libs@3.0.1
 - @0x/contracts-extensions@4.0.1
 - @0x/contracts-multisig@3.1.7
 - @0x/contracts-test-utils@3.1.9
 - @0x/contracts-utils@3.1.8
2019-07-13 13:00:33 -07:00
Fabio Berger
0bb8887027 Updated CHANGELOGS 2019-07-13 13:00:21 -07:00
Fabio B
fabfdd0aa2 Merge pull request #1954 from 0xProject/fix/updateRemainingV2Addresses
Update remaining V2.1 contract address changes
2019-07-13 21:27:36 +02:00
fabioberger
8f8336b344 Fix version issues causing CI to fail 2019-07-13 21:04:16 +02:00
fabioberger
d10659f986 Update remaining V2.1 contract address changes 2019-07-13 20:25:47 +02:00
Fabio Berger
e853555165 Publish
- 0x.js@6.0.10
 - @0x/abi-gen@2.1.0
 - @0x/abi-gen-templates@2.2.1
 - @0x/abi-gen-wrappers@5.0.0
 - @0x/assert@2.1.0
 - @0x/asset-buyer@6.1.6
 - @0x/asset-swapper@0.0.2
 - @0x/base-contract@5.1.1
 - @0x/connect@5.0.11
 - @0x/contract-addresses@3.0.0
 - @0x/contract-artifacts@2.0.1
 - @0x/contract-wrappers@9.1.5
 - @0x/contracts-gen@1.0.10
 - @0x/dev-tools-pages@0.0.28
 - @0x/dev-utils@2.2.4
 - ethereum-types@2.1.3
 - @0x/fill-scenarios@3.0.11
 - @0x/instant@1.0.25
 - @0x/json-schemas@3.0.11
 - @0x/metacoin@0.0.52
 - @0x/migrations@4.1.7
 - @0x/monorepo-scripts@1.0.33
 - @0x/order-utils@8.2.0
 - @0x/order-watcher@4.0.12
 - @0x/python-contract-wrappers@1.0.1
 - @0x/react-docs@2.0.13
 - @0x/react-shared@2.0.13
 - @0x/sol-compiler@3.1.9
 - @0x/sol-coverage@3.0.6
 - @0x/sol-doc@2.0.13
 - @0x/sol-profiler@3.1.8
 - @0x/sol-resolver@2.0.8
 - @0x/sol-trace@2.0.14
 - @0x/sol-tracing-utils@6.0.13
 - @0x/sra-spec@2.0.11
 - @0x/subproviders@4.1.1
 - @0x/testnet-faucets@1.0.81
 - @0x/types@2.4.0
 - @0x/typescript-typings@4.2.3
 - @0x/utils@4.4.0
 - @0x/web3-wrapper@6.0.7
 - @0x/website@0.0.84
 - @0x/contracts-asset-proxy@2.2.0
 - @0x/contracts-coordinator@2.0.5
 - @0x/contracts-dev-utils@0.0.2
 - @0x/contracts-erc1155@1.1.7
 - @0x/contracts-erc20@2.2.6
 - @0x/contracts-erc721@2.1.7
 - @0x/contracts-exchange@2.1.6
 - @0x/contracts-exchange-forwarder@3.0.4
 - @0x/contracts-exchange-libs@3.0.0
 - @0x/contracts-extensions@4.0.0
 - @0x/contracts-multisig@3.1.6
 - @0x/contracts-test-utils@3.1.8
 - @0x/contracts-utils@3.1.7
2019-07-13 01:33:08 -07:00
Fabio Berger
2ce09d73ac Updated CHANGELOGS 2019-07-13 01:32:53 -07:00
Fabio B
14f48a5f4f Merge pull request #1952 from 0xProject/fix/redeployed-2.0-mainnet
Redeployed 2.0 Mainnet
2019-07-13 09:45:59 +02:00
Jacob Evans
8da4e4a830 Redployed 2.0 Mainnet 2019-07-13 16:57:13 +10:00
Xianny
88ae8311c8 Copy dutch auction asset data utils to @0x/order-utils (#1943)
* copy dutch auction assetdata utils to @0x/order-utils

* encode/decode dutch auction asset data using order-utils
2019-07-12 17:27:06 -07:00
David Sun
eabf6a466a Fix abi-gen-wrappers dependencies 2019-07-12 16:35:50 -07:00
David Sun
989f691d06 updated dependencies versioning in package.json 2019-07-12 16:13:05 -07:00
David Sun
52a3dae7cb Merge pull request #1950 from 0xProject/feature/CFL/light-refactor
Asset-swapper method interface change
2019-07-12 15:44:41 -07:00
David Sun
8a6dfacf71 inverted erc and assetdata getSwapQuote naming 2019-07-12 15:30:25 -07:00
Xianny
19ca6c13ad Copy validation methods from ExchangeWrapper to order-utils (#1937) 2019-07-12 15:06:32 -07:00
Fabio Berger
9196f122dd Fix 0x.js version 2019-07-12 14:51:14 -07:00
David Sun
55e3d81c58 updating CHANGELOG.json + package.json 2019-07-12 14:38:19 -07:00
David Sun
80caa16718 Merge pull request #1949 from 0xProject/feature/fix-monorepo-scripts
Fix case in pre-publish write access checks
2019-07-12 14:00:35 -07:00
David Sun
ddc5aaacdb Update condition for readability
Co-Authored-By: Fabio B <me@fabioberger.com>
2019-07-12 13:39:41 -07:00
David Sun
38825865cc prettier 2019-07-12 13:32:27 -07:00
David Sun
157b2efa1d fix to not throw on new packages 2019-07-12 13:16:00 -07:00
F. Eugene Aumson
212a2d229a This one weird trick cuts contract test runtime by over 50% in CI (#1941)
* CI: Collapse each test task to a single wsrun call

* Restore test-rest to invoking wsrun many times
2019-07-12 14:11:53 -04:00
Xianny
ccb89fb26a prettify generated code for easier diffing (#1944) 2019-07-11 16:03:14 -07:00
David Sun
3a0b0c0973 Merge pull request #1939 from 0xProject/CFL
Asset-swapper 0.0.1 merge
2019-07-11 15:42:15 -07:00
David Sun
c159ed9ebb updated changelog 2019-07-11 15:16:45 -07:00
David Sun
e37dbcc273 updated package.json 2019-07-11 15:16:45 -07:00
David Sun
841e660b1f light fixes 2019-07-11 15:16:45 -07:00
David Sun
391aba5f37 updated CHANGELOG.json 2019-07-11 15:16:40 -07:00
David Sun
f5d30f4a07 Update packages/asset-buyer/src/swap_quoter.ts
Co-Authored-By: Jacob Evans <jacob@dekz.net>
2019-07-11 15:15:30 -07:00
David Sun
230cf7dfb7 Update packages/asset-buyer/src/swap_quoter.ts
Co-Authored-By: Jacob Evans <jacob@dekz.net>
2019-07-11 15:15:30 -07:00
David Sun
8734b70f83 updated README.md 2019-07-11 15:15:09 -07:00
David Sun
ff9a2b2d9a fixed docs issues 2019-07-11 15:15:09 -07:00
David Sun
a41dab2922 Commit coverage directory 2019-07-11 15:15:09 -07:00
David Sun
f4504106a1 adding back asset-buyer for legacy support 2019-07-11 15:15:09 -07:00
David Sun
1a5b8041c7 renamed to asset-swapper 2019-07-11 15:15:09 -07:00
David Sun
1e2170f8bb reverting change to abi-gen 2019-07-11 15:15:09 -07:00
David Sun
0a4a973a7f changes to types for doc generation 2019-07-11 15:15:09 -07:00
David Sun
67137cadac made get Consumer private 2019-07-11 15:15:09 -07:00
David Sun
ead4afa06b fixed linting issues 2019-07-11 15:15:09 -07:00
David Sun
e39ef95191 fixed build issues 2019-07-11 15:15:09 -07:00
David Sun
3d7585671f refactored 2019-07-11 15:15:09 -07:00
David Sun
44806106db prettier 2019-07-11 15:15:09 -07:00
David Sun
6a8197a4e8 linting issues 2019-07-11 15:15:09 -07:00
David Sun
4d4b4e0f2b lint + prettier 2019-07-11 15:15:09 -07:00
David Sun
82da33d742 light refactor 2019-07-11 15:15:09 -07:00
David Sun
1c6130a492 fixed market utils 2019-07-11 15:15:09 -07:00
David Sun
dabe5e939f fixed bugs 2019-07-11 15:15:09 -07:00
David Sun
b4ac6d3439 refactored types and market sell operation 2019-07-11 15:15:09 -07:00
David Sun
d0ea74e180 fixed linting issues 2019-07-11 15:15:08 -07:00
David Sun
a5f77f3964 prettier 2019-07-11 15:15:08 -07:00
David Sun
9401bb53e8 added testing for generating swap quotes 2019-07-11 15:15:08 -07:00
David Sun
347c6d02cf upgraded exchange sell with market sell 2019-07-11 15:15:08 -07:00
David Sun
64a0080616 add forwarder logic for market sell 2019-07-11 15:15:08 -07:00
David Sun
288a7d4cea refactored for market sell + buy 2019-07-11 15:15:08 -07:00
David Sun
1207b68f57 added market-sell logic 2019-07-11 15:15:08 -07:00
David Sun
2b82187fe0 expanded swap quoter to create market sell swap quotes 2019-07-11 15:15:08 -07:00
David Sun
3e2dbfc83c added testing to market utils for market sell 2019-07-11 15:15:08 -07:00
David Sun
6691f490bc changes to order utils 2019-07-11 15:15:08 -07:00
David Sun
a7db900e51 added types 2019-07-11 15:15:08 -07:00
David Sun
cfa2a90dae prettier 2019-07-11 15:15:08 -07:00
David Sun
feebb45e9d fixed linting issues 2019-07-11 15:15:08 -07:00
David Sun
13a2f3a330 updated to async 2019-07-11 15:15:08 -07:00
David Sun
1da8801084 switched from arrow functions 2019-07-11 15:15:08 -07:00
David Sun
7a7b17c4f3 fixed naming of utils 2019-07-11 15:15:08 -07:00
David Sun
2afb06de13 refactored forwarder to utilize utils 2019-07-11 15:15:08 -07:00
David Sun
ac771e2865 finished exchange swap quote consumer 2019-07-11 15:15:08 -07:00
David Sun
4b09204936 framework for exchange swap quote consumer 2019-07-11 15:15:08 -07:00
David Sun
e4a5518a7c refactored exchange swap quote consumer 2019-07-11 15:15:08 -07:00
David Sun
e83507ba98 added structure of exchange consumer 2019-07-11 15:15:08 -07:00
David Sun
6e5b77edb2 initial commit of exchange_swap_quote consumer 2019-07-11 15:15:08 -07:00
David Sun
98167da8fa fixing build issues
fixed build issues

prettier
2019-07-11 15:15:08 -07:00
David Sun
11d5fec59b changes on affiliate fee and other changes
bumped version to 7 and added changelog

updated package.json

revert change to package.json

trying this package.json config
2019-07-11 15:15:08 -07:00
David Sun
ed02f4ca88 switching consumer functions to async 2019-07-11 15:15:08 -07:00
David Sun
e7c612971d fixed percentage assertions 2019-07-11 15:15:08 -07:00
David Sun
242a2e21b5 updated comments
added comments to Forwarder Swap Quote Conusmer
2019-07-11 15:15:08 -07:00
David Sun
92a1e5413b change to affiliate fees 2019-07-11 15:15:08 -07:00
David Sun
e1ab9aa690 rewritten test cases for SwapQuoter
fixed testing for swap quoter + setup for consumer testing

added framework for testing consumers

added testing and updated some types
2019-07-11 15:15:08 -07:00
David Sun
222f7e6fd4 addressed reviews and light refactor
added comments to types and refactored some naming
2019-07-11 15:15:08 -07:00
David Sun
59001f827b finished forwarder consumer 2019-07-11 15:15:07 -07:00
David Sun
549bfe98f1 renamed asset-buyer + adding consumers 2019-07-11 15:15:07 -07:00
David Sun
64e3b6f5ee refactored ERC <> ERC for asset-buyer
minor update to interface
2019-07-11 15:15:07 -07:00
David Sun
2fdc0426ff temp fix for CI 2019-07-11 15:15:07 -07:00
F. Eugene Aumson
e6c70fda66 order_utils.py: pin eth-abi version (#1947)
Fixes broken builds due to new release of eth-abi.
2019-07-11 18:08:16 -04:00
Xianny
50da1354f3 Move CLI tests for abi-gen (#1930)
Closes #1925, #1926
2019-07-10 09:19:50 -07:00
Francesco Agosti
e503cacf57 Merge pull request #1916 from 0xProject/feature/website/add-theo
Adding Theo to team page
2019-07-08 13:57:36 -07:00
Fabio B
6a1e0edc78 Fix link to smart contracts 2019-07-08 21:45:40 +02:00
Xianny
048f5c2771 [Multilang] hardcode ABI into abi-gen-wrappers (#1883)
* Export artifacts and addresses from abi-gen-wrappers

* only export addresses, not artifacts

* abi-gen-wrappers no longer accept ContractAbi as constructor param

ABI is now hardcoded when wrapper is generated

* remove unused imports

* remove unused import

* changes after review

* fix method ordering

* update constructor args

* prettier

* statically enumerate ABI properties

* remove abi-gen-wrappers generated-wrappers from prettierignore

* add template for recursive components

* add `indexed` field for EventParameter

* prettier

* update known-good wrappers with ABIs and fix Python ABI loading

* remove generated-artifacts and update gitignore
2019-07-08 12:44:19 -07:00
F. Eugene Aumson
d9378e9a8f First auto-gen'd Python contract wrapper: ERC20 (#1878)
* abi-gen-wrappers: fix half-baked folder rename

* .circleci: give cache more descriptive name

* abi-gen: rename type field. tsName->langLocalName

* contract-artifacts: add devdoc to ERC20Token.json

Artifact changes crafted manually: re-generated artifacts from within
@0x/contracts-erc20, and then copied them into @0x/contract-artifacts,
but only committed the changes that added devdoc.

Modified @0x/contracts-erc20/compiler.json to include devdoc in the
hopes that next time contract-artifacts are re-generated en masse, the
devdoc output will just come along for the ride.

Compiling ERC20 TypeScript wrappers after adding devdoc to the artifacts
revealed some inconsistencies in the types.  ethereum-types'
DevdocOutput REQUIRED many fields which are not always present,
depending the devdoc contents itself.  Relaxing the requirement had some
ramifications.

* abi-gen: Python!

Lots more to come, but so far generating typed methods with some
parameter validation and with reasonable docstrings; enough to make
ERC20 work.

* existing erc20 python wrapper: re-order methods

In order to minimize the diff in the upcoming commit of the
auto-generated version.

* existing erc20 python wrapper: rename method

Rename method _erc20 to _get_contract_instance.

* existing erc20 python wrapper: rename vars

Rename method parameters to match names used in contract methods.

* existing erc20 python wrapper: correction

Contract method `allowance` previously was returning a transaction hash,
but it's a const method, so changed it to return the int that the
underlying method returns.

* contract_wrappers.py: pull in generated code

Custom setup.py command to pull in code previously generated into
../../packages/abi-gen-wrappers/src/generated-wrappers/py.

Changes to existing wrapper code reflect differences between the old,
manually-written wrapper and the new, auto-generated wrapper.

Reconfigured Circle CI to give Python build access to the output of the
TypeScript build, in order to import the generated wrappers from there.

* abi-gen: sanitize docstrings for pycodestyle lint

* abi-gen-templates.py: expose ABI from template

Use ABI given by template, not gotten by name from
zero_ex.contract_artifacts.

Also, expose ABI as a static method.

* py wrappers: contract addr to ctor, not methods

In all Python wrappers (old, manual ones; and new, generated ones), have
client pass the contract address to the wrapper's constructor, rather
than to the individual method calls.

* py wrappers: remove unused param `account_address`

* py wrappers: document use of `private_key`

* Rename file erc20_wrapper.py to erc20_token.py

To match the name of the underlying contract.

* Update CHANGELOG.json's

* git rm erc20_token.py

No need to keep it checked in.  Doing so would require manual overhead
of keeping the generated copy in sync with the generation code, which
may get overlooked and cause confusion for others.  Authoritative source
will be the published package on PyPI.

* abi-gen-templates: tweak CHANGELOG wording

Co-Authored-By: Fabio B <kandinsky454@protonmail.ch>

* Include transaction parameters in const calls too

* Doc contract_address param to gen'd wrapper ctor

* make myself a CODEOWNER of abi-gen*

* rename ids: langLocalName -> languageSpecificName

* Move Python generation to its own packages/ folder

* Stop duplicating contract artifacts in Python pkg!

Thanks to the way we're now using the `./setup.py pre_install`
convention, there's no longer a need to check the artifacts in to the
Python package.

* move py templates BACK to abi-gen-templates

I got a little overzealous in the previous commit that moved ALL the
python stuff into the new packages/python-contract-wrappers folder.

* Update known-good test output: prettify

* add getABIEncodedTransationData to gen'd code

It was added into the template in the following commit, but the
corresponding checked-in generated code was not updated accordingly.

f51c4f9617

* Fix missed instance of languageSpecificName change

* abi-gen: refine pipeline for testing gen'd code

- generate wrappers for test fixture contracts (dummy, etc) not in `yarn
build` but in `yarn test`

- rename folder test/generated-test/generated-wrappers to
test/generated-test/known-good, and stop writing test output to there,
instead writing it to a new test/generated-test/output folder.

- sol-compile test fixture contracts in every test run

- run unit tests separately from tests of generated and built TypeScript
wrappers.  The existing `yarn run_mocha` will run unit tests, and
there's a new `yarn run_contract_wrapper_tests`.

* abi-gen: test Python gen [known test failures]

Also generate TypeScript wrapper test code into a TypeScript folder
(alongside the newly created Python folder).

Known-good code manually corrected (from generated code) to reflect
known problems that still need to be addressed.  Namely:
  - base contract and tx params should be imported from canonical
    package, not relative path. relative path is working for wrapping
    OUR contracts, but would not be usable in a more general
    context.
  - return type missing for some generated methods.

These outstanding problems are currently causing this test to fail.

* fix failing abi-gen test: missing return types

* fix failing abi-gen test: qualify imports

* in py wrapper, simplify base class initialization

per
https://github.com/0xProject/0x-monorepo/pull/1878#discussion_r299248641

* move 3rd party typings to typescript-typings

* make package python-contract-wrappers private

* make Xianny CODEOWNER of base-contract & templates

* abi-gen: clarify --help for --backend

* remove superfluous CHANGELOG entry
2019-07-03 11:01:01 -04:00
Xianny
f77aaaf2e0 Merge pull request #1907 from 0xProject/multilang/add-devdoc
Add devdoc to all contract artifacts
2019-07-02 13:22:04 -07:00
Chris Kalani
380835b151 Added Theo to team page 2019-07-02 12:21:06 -07:00
Xianny
857d91df85 Add dummy contract to test abi-gen-wrappers (#1881) 2019-06-28 15:42:36 -07:00
xianny
cd9a6b0de7 add example devdoc 2019-06-28 13:25:16 -07:00
xianny
86333f4928 add devdocs to all artifacts 2019-06-27 22:00:41 -07:00
F. Eugene Aumson
d1975bd5dd contract-artifacts: add devdoc to ERC20Token.json
Artifact changes crafted manually: re-generated artifacts from within
@0x/contracts-erc20, and then copied them into @0x/contract-artifacts,
but only committed the changes that added devdoc.

Modified @0x/contracts-erc20/compiler.json to include devdoc in the
hopes that next time contract-artifacts are re-generated en masse, the
devdoc output will just come along for the ride.

Compiling ERC20 TypeScript wrappers after adding devdoc to the artifacts
revealed some inconsistencies in the types.  ethereum-types'
DevdocOutput REQUIRED many fields which are not always present,
depending the devdoc contents itself.  Relaxing the requirement had some
ramifications.
2019-06-27 21:08:54 -07:00
David Sun
08b9f27eac Merge pull request #1904 from 0xProject/feature/website/add-dydx-explore
Adding dYdX to Explore page
2019-06-27 10:25:23 -07:00
F. Eugene Aumson
5b2cf8a776 Restore original Python label 2019-06-27 10:03:22 -04:00
F. Eugene Aumson
7394106880 Another attempt at the snake emoji 2019-06-27 09:13:49 -04:00
Chris Kalani
9134a7ae1e Prettier 2019-06-26 17:10:15 -07:00
Chris Kalani
c617e9f483 Adding dYdX to explore page 2019-06-26 17:06:53 -07:00
Xianny
545fcef716 Update autolabeler.yml 2019-06-26 12:42:53 -07:00
David Sun
e20fa3a1bf Merge pull request #1895 from 0xProject/feature/website/new-team-photos-2
Added new team headshots and a couple other small things
2019-06-25 11:32:30 -07:00
Chris Kalani
9d01b47d5b Added better advisor titles 2019-06-25 10:42:03 -07:00
Chris Kalani
fa4c34df41 Removed old StarkDEX announcement link 2019-06-25 10:33:32 -07:00
Chris Kalani
9f8ab4d626 Added new team photos to team page 2019-06-25 10:31:45 -07:00
Alex Browne
1971c9cecd Merge pull request #1879 from 0xProject/remove-albrow-codeowner-contract-tests
Remove @albrow as code owner for contract tests
2019-06-21 11:32:12 -07:00
Amir Bandeali
82f730831d Merge pull request #1863 from 0xProject/feat/contracts/static-call-proxy
Implement StaticCallProxy
2019-06-21 09:18:42 -07:00
Alex Browne
035167e5b7 Remove @albrow as code owner for contract tests 2019-06-20 13:59:17 -07:00
Amir Bandeali
323fb0a965 Bump solidity version pragma for undeployed AssetProxy contracts 2019-06-18 19:52:18 -07:00
Amir Bandeali
45aacf122f Fix StaticCallProxy comment and add sanity checks to TestStaticCallTarget 2019-06-18 19:52:18 -07:00
Amir Bandeali
5dcf7919fc Fix build errors 2019-06-18 19:52:18 -07:00
Amir Bandeali
f15560bd89 Update CHANGELOGs 2019-06-18 19:52:18 -07:00
Amir Bandeali
bf3ae730d6 Add fillOrder tests that use the StaticCallProxy 2019-06-18 19:52:18 -07:00
Amir Bandeali
92ce258bb4 Remove pipeline package from CI build 2019-06-18 19:52:18 -07:00
Amir Bandeali
5810e7df82 Add StaticCallProxy support to LibAssetData 2019-06-18 19:50:59 -07:00
Amir Bandeali
f2cbf4a561 Regenerate abi-gen-wrappers 2019-06-18 19:50:59 -07:00
Amir Bandeali
0c8bb2e675 Add unit tests for StaticCallProxy 2019-06-18 19:50:59 -07:00
Amir Bandeali
f51c4f9617 Allow getABIEncodedTransactionData to be called for read only contract methods 2019-06-18 19:50:59 -07:00
Amir Bandeali
5345f7c983 Add boilerplate for StaticCallProxy 2019-06-18 19:50:59 -07:00
Amir Bandeali
7d9e43b2e1 Add TestStaticCallTarget for testing StaticCallProxy 2019-06-18 19:50:59 -07:00
Amir Bandeali
570c1e1809 Add StaticCallAssetData encoding and decoding 2019-06-18 19:50:59 -07:00
Amir Bandeali
720d335b09 Add StaticCallProxy types and move 1155 method ABI into order-utils 2019-06-18 19:50:59 -07:00
Amir Bandeali
f0ecda1a48 Use more specific revert reason in ERC1155Proxy 2019-06-18 19:50:59 -07:00
Amir Bandeali
4ed111a7d4 Implement StaticCallProxy 2019-06-18 19:50:59 -07:00
Matthew Cadier Kim
fc257523c7 Remove pipeline package
* Remove entire readme for the pipelines package.

* remove pipeline everywhere

* bump circle ci
2019-06-18 17:01:53 -07:00
Xianny
9775f8d83c abi-gen should regenerate contract-wrappers if template files change (#1875) 2019-06-18 16:03:37 -07:00
Xianny
01a1b19556 Prune fields from EthBalanceChecker (#1876)
Remove forbidden fields from EthBalanceChecker
2019-06-18 14:53:26 -07:00
Xianny
bd228034fd Add workflow for copying compiled artifacts to 0x/contract-artifacts (#1842)
The contract artifacts should remain as standard compiler output during development. Fields should only be removed/added prior to being published in `@0x/contract-artifacts`. This PR adds the `yarn transform` script to `@0x/contract-artifacts` to facilitate this. 

Going forward, `abi-gen-templates` will have to support both standard artifacts and modified artifacts if they diverge, since the templates are used for `contract-artifacts`/`abi-gen-wrappers` (modified artifact) *and* development in all the `contracts/*` packages (standard artifact).

This PR makes the following changes to `contract-artifacts`:
- remove `evm.bytecode.linkReferences` from all artifacts
- remove `evm.deployedBytecode` and `sourceTreeHashHex` from Coordinator artifact
- prettify all artifacts (whitespace only changes)
2019-06-17 11:00:53 -07:00
Fabio B
2672a5c59f Merge pull request #1867 from 0xProject/fix/trezorSubprovider
Fix bug in Trezor implementation
2019-06-17 10:18:37 -07:00
Rick Morty
5f383430eb Add CHANGELOG entry 2019-06-15 21:27:09 -07:00
Rick Morty
66ec3e9f4d Hex should be true since the data returned expects it to be hex encoded 2019-06-15 21:23:40 -07:00
Fabio B
c269c427a6 Merge pull request #1865 from 0xProject/feature/ethBalanceChecker
contracts/dev-utils: Add EthBalanceChecker contract to monorepo
2019-06-13 09:37:40 -07:00
Fabio Berger
212855ebd8 Add missing import 2019-06-12 09:29:19 -07:00
Fabio Berger
8f78945a73 Update Python artifact 2019-06-12 09:15:40 -07:00
Fabio Berger
86d50cf597 Remove forbidden fields 2019-06-12 09:10:18 -07:00
Fabio Berger
8986d506a5 Have DevUtils inherit from EthBalanceChecker 2019-06-12 09:08:18 -07:00
Fabio Berger
3d2c945c35 Fix nits in contract 2019-06-12 09:08:04 -07:00
Fabio Berger
8206a3969f Add artifact to Python package 2019-06-11 08:51:51 -07:00
Fabio Berger
43afe67593 Add EthBalanceChecker contract to monorepo 2019-06-11 08:45:15 -07:00
Amir Bandeali
ecf939f8c8 Merge pull request #1848 from 0xProject/feat/contracts/order-validation-fillable-amount
Refactor OrderValidationUtils and create contracts-dev-utils package
2019-06-07 09:11:40 -07:00
Amir Bandeali
f0c4ccfa1e Remove multiple returns from devdoc comments, fix typos 2019-06-07 08:46:52 -07:00
Amir Bandeali
718d48b7d5 Fix linting errors and update CHANGELOGs 2019-06-07 08:46:20 -07:00
Amir Bandeali
d5e88677ae Update tests 2019-06-07 08:46:20 -07:00
Amir Bandeali
b1cfdc7a6a Return 0 balance/allowance if the call would otherwise revert 2019-06-07 08:46:20 -07:00
Amir Bandeali
5c5f815b20 Fix LibAssetData tests 2019-06-07 08:46:20 -07:00
Amir Bandeali
d9edb9675f Add tests for multiAssetData, remove tests for old functions 2019-06-07 08:46:20 -07:00
Amir Bandeali
be6fce5a89 Refactor contracts to only use allowances for AssetProxies (spender is no longer an input) 2019-06-07 08:46:20 -07:00
Amir Bandeali
12afeb30ae Move LibAssetData to DevUtils package 2019-06-07 08:46:20 -07:00
Amir Bandeali
23df406ff0 Fix package.json typos 2019-06-07 08:46:20 -07:00
Amir Bandeali
c9ecef4fc3 Cleanup tests 2019-06-07 08:46:20 -07:00
Amir Bandeali
62f0a867a8 Update CHANGELOGs 2019-06-07 08:46:20 -07:00
Amir Bandeali
f68b8d82e0 Move LibTransactionDecoder to dev-utils package 2019-06-07 08:46:20 -07:00
Amir Bandeali
6b7cb13e9a Move DevUtils contract into its own package 2019-06-07 08:46:19 -07:00
Amir Bandeali
613af6013a Update OrderValidationUtils to return fillableTakerAssetAmount and refactor tests 2019-06-07 08:46:19 -07:00
Amir Bandeali
0db56a781e Cleanup LibAssetData tests 2019-06-07 08:46:19 -07:00
Greg Hysz
fe7674b184 Merge pull request #1837 from 0xProject/fix/contracts/erc1155AssetProxyManualCopyFields
ERC1155 Proxy - Manually Copy Dynamic Fields from Calldata to Memory
2019-06-06 12:20:30 -07:00
Xianny
44a6fe7310 Note on updating contract artifacts (#1853) 2019-06-05 16:59:15 -07:00
Greg Hysen
46690f0c35 Made some comments more readable and fixed some spelling 2019-06-05 15:23:53 -07:00
Greg Hysen
cfc4e345cc ran prettier and updated changelog 2019-06-05 14:22:50 -07:00
Greg Hysen
c68278d824 Additional multiplication overflow checks 2019-06-05 14:09:09 -07:00
Greg Hysen
09600a71cd Added tests to assert that assetData is within the boundaries of calldata 2019-06-05 14:08:25 -07:00
Greg Hysen
d66ba70f5e Updated length to match comment + added explicit test 2019-06-05 14:08:25 -07:00
Greg Hysen
e7c4120d24 Validation checks for the length of asset data 2019-06-05 14:08:25 -07:00
Greg Hysen
1212e534a8 Adds boundary checks when copying dynamic fields (includes tests) 2019-06-05 14:08:25 -07:00
Greg Hysen
899d0f1e42 removed .only for tests 2019-06-05 14:08:25 -07:00
Greg Hysen
dde4ed3754 More readability for 1155 proxy 2019-06-05 14:08:25 -07:00
Greg Hysen
b596e02752 readability cleanup 2019-06-05 14:08:25 -07:00
Greg Hysen
d5afe696da removed .only from tests 2019-06-05 14:08:25 -07:00
Greg Hysen
976be66dee Scale values while copying from calldata 2019-06-05 14:08:25 -07:00
Greg Hysen
98c8a6387a manually copy ids, values, and data fields 2019-06-05 14:08:25 -07:00
Greg Hysen
be1b636e30 Improved readability of ERC1155 Proxy 2019-06-05 14:08:25 -07:00
Greg Hysen
8bae0b81aa Added ERC1155Proxy tests when data overlaps values in asset data 2019-06-05 14:08:25 -07:00
Greg Hysen
7ee19e1306 Added new tests for different lengths of receiver callback data, since we are now appending scaledValues after data. 2019-06-05 14:08:25 -07:00
Greg Hysen
626d0dfa93 Store scaled values and end of calldata in ERC1155 Asset Proxy 2019-06-05 14:08:25 -07:00
Greg Hysz
8453c616a5 Merge pull request #1852 from 0xProject/fix/contracts/expectTransactionFailedAsyncFalsePositives
Fixes false positives in `expectTransactionFailedAsync`
2019-06-05 13:51:59 -07:00
Greg Hysen
56bc2944d0 Fixed false positives in expectTransactionFailedAsync 2019-06-04 18:53:13 -07:00
Amir Bandeali
b2cf701e30 Merge pull request #1850 from 0xProject/removePipelineBuild
Remove pipeline package from build and from CI
2019-06-04 13:20:24 -07:00
Amir Bandeali
9a3b29acb7 Remove pipeline package from build and from CI 2019-06-04 12:58:31 -07:00
Fabio B
85b217f167 Merge pull request #1823 from 0xProject/fix/improveAssertionsAbiGen
Add parameter assertions to abi-gen-wrappers
2019-06-04 19:05:39 +01:00
Fabio Berger
a7700d6c22 Fix tests 2019-06-04 14:38:13 +01:00
Fabio Berger
1e274518dd Remove re-introduced deps 2019-06-04 13:28:13 +01:00
Fabio Berger
f4f8927c79 Update yarn lock 2019-06-04 13:26:35 +01:00
Fabio Berger
60b7890f16 Ensure assertions each get rendered on a new line 2019-06-04 13:26:35 +01:00
Fabio Berger
4d46290ef6 Fix failing tests 2019-06-04 13:26:35 +01:00
Fabio Berger
00f7e2cfc3 Fix linter errors 2019-06-04 13:26:35 +01:00
Fabio Berger
e742708261 Update abi-gen-wrappers 2019-06-04 13:24:29 +01:00
Fabio Berger
8c9de31c5c Add assertions to abi-gen templates and fix tests 2019-06-04 13:19:59 +01:00
Fabio Berger
2bf992f0ac Improve the NOTE in abi-gen utils 2019-06-04 13:18:02 +01:00
Fabio Berger
52a01bcc11 Fix linter errors 2019-06-04 13:18:02 +01:00
Fabio Berger
f250e03c40 Add missing deps 2019-06-04 13:18:01 +01:00
Fabio Berger
75acbfb042 Fi assertion type 2019-06-04 13:18:01 +01:00
Fabio Berger
740fd6f5d9 Rename txData to callData 2019-06-04 13:18:01 +01:00
Fabio Berger
c58306cd49 Add isNumberOrBigNumber assertion 2019-06-04 13:18:01 +01:00
Fabio Berger
985696631c Set liguist-generated to true 2019-06-04 13:18:01 +01:00
Fabio Berger
d8a3d7f920 Fix gitattributes so properly minimizes generate-wrappers in PR review 2019-06-04 13:18:01 +01:00
Fabio Berger
b6b96f0eee Tighten the assertion to hex string 2019-06-04 13:18:01 +01:00
Fabio Berger
3f037ef3cc Add PR number to CHANGELOG entries 2019-06-04 13:18:01 +01:00
Fabio Berger
5c2d3fb3da Update abi-gen-wrappers 2019-06-04 13:18:01 +01:00
Fabio Berger
84d38ea878 Add assertions to abi-gen templates and fix tests 2019-06-04 13:18:01 +01:00
Fabio Berger
6226aa0b23 2019-06-04 13:18:01 +01:00
Fabio Berger
72af35834b Update issue template to instruct submitter to prefix title with package name 2019-06-04 11:52:23 +01:00
David Sun
3019e3817f Merge pull request #1846 from 0xProject/feature/website/starkdex-announcement
Added StarkDEX announcement to homepage
2019-06-03 12:17:02 -07:00
Chris Kalani
da9e90faf0 Added new tab prop to announcement 2019-06-03 11:55:19 -07:00
Chris Kalani
e737395c2b Added StarkDEX announcement to homepage 2019-06-03 11:33:38 -07:00
Fabio B
5a33167594 Merge pull request #1844 from 0xProject/fix/docFixes
website: Doc Fixes
2019-06-03 18:20:09 +01:00
Fabio B
dfb7e50948 Merge pull request #1843 from 0xProject/fix/depSecurityIssues
Fixes the severe security vulnerability warnings on Github
2019-06-03 18:01:58 +01:00
Fabio Berger
b43c9f075c Fix version picker overflow 2019-06-03 12:55:33 +01:00
Fabio Berger
f42ce6adb5 Remove scrollbars onHover behavior as a short-term fix to get cmd-f working for all content on the page 2019-06-03 12:53:16 +01:00
Fabio Berger
bf533bbdbb Remove a bunch of packages from the Docs Home to declutter it a bit 2019-06-03 12:11:20 +01:00
Fabio Berger
9328729c4c Remove devnet mention from metacoin project 2019-06-03 12:02:36 +01:00
Fabio Berger
2e23a044ca Tell users of our Ethereum tools to use with Ganache now that it is supported and given our plans to deprecate devnet 2019-06-03 12:02:24 +01:00
Fabio Berger
691a3a1e72 Fix security vuln by using patched versions of deep-extend 2019-06-03 11:56:42 +01:00
Fabio Berger
fc40f9634b Upgrade tar-fs dep to version without critical security issue 2019-06-03 11:34:59 +01:00
Amir Bandeali
4969441f21 Merge pull request #1835 from 0xProject/feat/contracts/dev-utils
Update OrderValidator and create DevUtils contract
2019-06-01 13:40:10 -07:00
David Sun
d04d50794e Merge pull request #1841 from 0xProject/feature/website/remove-rahul
Removing Rahul from team page
2019-05-31 13:49:57 -07:00
Chris Kalani
5e1fbe34a9 Removed image file 2019-05-31 13:30:50 -07:00
Chris Kalani
2b75829a0c Removing Rahul from team page 2019-05-31 13:29:07 -07:00
Daniel Pyrathon
3b3fd0a3a2 Merge pull request #1803 from 0xProject/instant-callback-done
Added performedCallback attribute for Redux state, and added a hook f…
2019-05-29 14:29:14 -07:00
Daniel Pyrathon
1e4b61008a Merge branch 'development' of github.com:0xProject/0x-monorepo into instant-callback-done 2019-05-29 12:40:20 -07:00
David Sun
ffb71e9fd5 Merge pull request #1840 from 0xProject/fix/website/landing-kit/overflow-issue
Fixed bug with launch kit background
2019-05-29 11:56:54 -07:00
David Sun
c1aeb4bde6 fixing bug with background 2019-05-29 11:53:16 -07:00
David Sun
66bca5cd81 Merge pull request #1822 from 0xProject/feature/website/launch-kit-landing-page
[WIP] Launchkit landing page
2019-05-29 11:49:16 -07:00
F. Eugene Aumson
b68df3a067 Fix static-python-tests (#1839)
* Disable bandit linter on false positive lines

* Shorten docstring to fix linter error
2019-05-29 14:28:17 -04:00
Amir Bandeali
066f3bb646 Return MAX_UINT256 for unlimited allowances in all token standards 2019-05-28 17:01:54 -07:00
David Sun
661c334928 prettier 2019-05-28 12:58:42 -07:00
David Sun
a1895d4157 polished website 2019-05-28 12:58:42 -07:00
David Sun
1e7efe026a committing changes 2019-05-28 12:58:41 -07:00
David Sun
02e7da979a changes to hero 2019-05-28 12:58:41 -07:00
David Sun
bd2839110b Merge pull request #1833 from 0xProject/feature/website/resources-menu
Added Resources dropdown to main nav
2019-05-28 10:05:38 -07:00
Daniel Pyrathon
1bcb2697e7 added prettifier 2019-05-27 19:16:11 -07:00
Daniel Pyrathon
fdb9a664f5 Merge branch 'development' of github.com:0xProject/0x-monorepo into instant-callback-done 2019-05-27 18:54:46 -07:00
Daniel Pyrathon
8099c334c7 Merge branch 'master' of github.com:0xProject/0x-monorepo into instant-callback-done 2019-05-27 18:52:31 -07:00
Daniel Pyrathon
344d28ab78 added prettier 2019-05-27 18:45:08 -07:00
Daniel Pyrathon
5e41168305 removed final bit of performedCallback 2019-05-27 18:35:47 -07:00
Daniel Pyrathon
dd97669cdd removed other legacy code 2019-05-27 18:34:23 -07:00
Daniel Pyrathon
af75581659 removed legacy performedCallback system, and implemented new react-redux system 2019-05-27 18:30:29 -07:00
Amir Bandeali
3c08f5b86a Update CHANGELOGs 2019-05-26 18:00:03 -07:00
Amir Bandeali
7809cad6cb Fix linting errors and warnings 2019-05-26 17:59:53 -07:00
Amir Bandeali
3e59029966 Modify dev utils tests to pass 2019-05-26 17:20:10 -07:00
Amir Bandeali
24249bcb4d Add LibTransactionDecoder to DevUtils 2019-05-26 17:19:45 -07:00
Amir Bandeali
543011c3de Modify batch allowances to take an array of spenders 2019-05-26 17:19:01 -07:00
Amir Bandeali
4d9f2586d9 Remove redundant code, add signature checks to order validations, and create DevUtils contract 2019-05-26 16:15:56 -07:00
Amir Bandeali
7f94ebe362 Add signature validation checks to OrderValidator contract 2019-05-26 15:41:10 -07:00
Amir Bandeali
c9bf1eda54 Small readability and efficiency improvements 2019-05-26 15:33:55 -07:00
Amir Bandeali
2cd4d9004c Create LibAssetProxyIds 2019-05-26 14:39:31 -07:00
Chris Kalani
35cd0319d4 Prettier 2019-05-24 17:50:57 -07:00
Chris Kalani
899030e966 Fixed error, whups 2019-05-24 17:38:04 -07:00
Chris Kalani
15e3944d23 Removed redundant links, fixed linting issues 2019-05-24 17:23:05 -07:00
Chris Kalani
f1fbaedb0f Added Resources dropdown to main nav 2019-05-24 16:09:33 -07:00
Fabio Berger
cf04062a19 Publish
- 0x.js@6.0.10
 - @0x/asset-buyer@6.1.5
 - @0x/connect@5.0.10
 - @0x/contract-wrappers@9.1.4
 - @0x/dev-tools-pages@0.0.27
 - @0x/dev-utils@2.2.3
 - @0x/fill-scenarios@3.0.10
 - @0x/instant@1.0.24
 - @0x/metacoin@0.0.51
 - @0x/migrations@4.1.6
 - @0x/order-utils@8.1.1
 - @0x/order-watcher@4.0.11
 - @0x/pipeline@1.0.21
 - @0x/react-docs@2.0.12
 - @0x/react-shared@2.0.12
 - @0x/sol-compiler@3.1.8
 - @0x/sol-coverage@3.0.5
 - @0x/sol-doc@2.0.12
 - @0x/sol-profiler@3.1.7
 - @0x/sol-trace@2.0.13
 - @0x/sol-tracing-utils@6.0.12
 - @0x/subproviders@4.1.0
 - @0x/testnet-faucets@1.0.80
 - @0x/website@0.0.83
 - @0x/contracts-asset-proxy@2.1.5
 - @0x/contracts-coordinator@2.0.4
 - @0x/contracts-erc1155@1.1.6
 - @0x/contracts-erc20@2.2.5
 - @0x/contracts-erc721@2.1.6
 - @0x/contracts-exchange@2.1.5
 - @0x/contracts-exchange-forwarder@3.0.3
 - @0x/contracts-exchange-libs@2.1.6
 - @0x/contracts-extensions@3.1.5
 - @0x/contracts-multisig@3.1.5
 - @0x/contracts-test-utils@3.1.7
 - @0x/contracts-utils@3.1.6
2019-05-24 16:59:56 +01:00
Fabio Berger
2e922bf7db Updated CHANGELOGS 2019-05-24 16:59:43 +01:00
F. Eugene Aumson
741a731ecb Transaction decoder for Coordinator (#1802)
* Remove unused dependency from erc20/package.json

* Add LibTransactionDecoder

Yet unsupported functions include:
    cancelOrdersUpTo
    executeTransaction
2019-05-24 11:27:53 -04:00
Fabio Berger
91bff1976c Remove react deps from react-highlight in yarn.lock 2019-05-24 14:56:49 +01:00
Fabio B
fad500042a Merge pull request #1830 from 0xProject/feature/fixTrezorInefficiency
subproviders: Fix Trezor subprovider inefficiency
2019-05-24 01:24:40 +01:00
Fabio B
bdb2a01385 Update packages/subproviders/src/subproviders/trezor.ts
Co-Authored-By: Jacob Evans <dekz@dekz.net>
2019-05-24 00:52:33 +01:00
Fabio Berger
f372cd2d13 Add CHANGELOG entry for new Trezor subprovider 2019-05-23 15:52:53 +01:00
Fabio Berger
a435da910f Cache the derived key info since it does not change and currently we request it from the Trezor device for each request 2019-05-23 14:26:15 +01:00
Fabio Berger
f1d96d9673 Fix linter issues 2019-05-23 14:02:55 +01:00
Fabio Berger
45226ee1f6 Update yarn.lock 2019-05-23 14:00:57 +01:00
Fabio B
03b8d29740 Merge pull request #1431 from MarcZenn/feature/subproviders/trezor-subprovider
Feature/subproviders/trezor subprovider
2019-05-23 13:58:34 +01:00
Fabio B
80a4af249f Merge branch 'development' into feature/subproviders/trezor-subprovider 2019-05-23 13:14:09 +01:00
David Sun
900d444946 Merge pull request #1816 from 0xProject/feature/website/add-alex-kroeger
Added Alex Kroeger and removed Leo from team page :(
2019-05-20 10:19:01 -07:00
Fabio B
7ca9393d2d Merge pull request #1820 from 0xProject/fix/updateLaunchKitRepo
website/python-packages: Update 0x-launch-kit repo name to include `-backend`
2019-05-16 21:22:44 -03:00
Fabio Berger
b22d7bb310 Add backend to constant variable name as well 2019-05-16 21:21:54 -03:00
Fabio Berger
c742cdfe5c Update 0x-launch-kit repo name to include -backend 2019-05-16 16:30:48 -03:00
xianny
2d3fe02cd7 Publish
- 0x.js@6.0.9
 - @0x/asset-buyer@6.1.4
 - @0x/connect@5.0.9
 - @0x/contract-wrappers@9.1.3
 - @0x/fill-scenarios@3.0.9
 - @0x/instant@1.0.23
 - @0x/metacoin@0.0.50
 - @0x/migrations@4.1.5
 - @0x/monorepo-scripts@1.0.32
 - @0x/order-utils@8.1.0
 - @0x/order-watcher@4.0.10
 - @0x/pipeline@1.0.20
 - @0x/testnet-faucets@1.0.79
 - @0x/website@0.0.82
 - @0x/contracts-asset-proxy@2.1.4
 - @0x/contracts-coordinator@2.0.3
 - @0x/contracts-erc1155@1.1.5
 - @0x/contracts-erc20@2.2.4
 - @0x/contracts-erc721@2.1.5
 - @0x/contracts-exchange@2.1.4
 - @0x/contracts-exchange-forwarder@3.0.2
 - @0x/contracts-exchange-libs@2.1.5
 - @0x/contracts-extensions@3.1.4
 - @0x/contracts-multisig@3.1.4
 - @0x/contracts-test-utils@3.1.6
 - @0x/contracts-utils@3.1.5
2019-05-15 19:05:54 -04:00
xianny
7d61cb6bac Updated CHANGELOGS 2019-05-15 19:05:44 -04:00
xianny
a804433a7a must run npm with sudo 2019-05-15 18:08:28 -04:00
Xianny
11082320c2 add prepublish check for write permissions for npmjs packages (#1813) 2019-05-15 18:05:56 -04:00
xianny
9f9797b123 remove only flag 2019-05-15 18:02:32 -04:00
Xianny
05d34616b7 fallback to eth_sign if eth_signTypedData fails (#1817)
* fallback to eth_sign if eth_signTypedData fails

lots of wallets/web3providers still don't support the new signing methods
2019-05-15 18:01:55 -04:00
Jacob Evans
c7f474ada1 Merge pull request #1815 from 0xProject/bug/dutchAuctionDecode
Incorrect decode in DutchAuctionWrapper
2019-05-15 10:28:56 +02:00
Chris Kalani
c7328a63d0 Removing Leo's photo from images directory 2019-05-14 16:42:32 -07:00
Chris Kalani
db818794d5 Added Alex Kroeger and removed Leo :( 2019-05-14 16:34:19 -07:00
Jacob Evans
b4b34e4890 Update CHANGELOG 2019-05-14 22:25:30 +02:00
Jacob Evans
eec016380d Commit fix to decode 2019-05-14 19:57:48 +02:00
Jacob Evans
dcab272be0 Add a test for encoding/decoding dutch auction asset data 2019-05-14 19:20:27 +02:00
Fabio Berger
418d033a5c Publish
- 0x.js@6.0.8
 - @0x/asset-buyer@6.1.3
 - @0x/connect@5.0.8
 - @0x/contract-addresses@2.3.3
 - @0x/contract-wrappers@9.1.2
 - @0x/fill-scenarios@3.0.8
 - @0x/instant@1.0.22
 - @0x/metacoin@0.0.49
 - @0x/migrations@4.1.4
 - @0x/order-utils@8.0.2
 - @0x/order-watcher@4.0.9
 - @0x/pipeline@1.0.19
 - @0x/testnet-faucets@1.0.78
 - @0x/website@0.0.81
 - @0x/contracts-asset-proxy@2.1.3
 - @0x/contracts-coordinator@2.0.2
 - @0x/contracts-erc1155@1.1.4
 - @0x/contracts-erc20@2.2.3
 - @0x/contracts-erc721@2.1.4
 - @0x/contracts-exchange@2.1.3
 - @0x/contracts-exchange-forwarder@3.0.1
 - @0x/contracts-exchange-libs@2.1.4
 - @0x/contracts-extensions@3.1.3
 - @0x/contracts-multisig@3.1.3
 - @0x/contracts-test-utils@3.1.5
 - @0x/contracts-utils@3.1.4
2019-05-13 23:14:54 -03:00
Fabio Berger
e7a7713b80 Updated CHANGELOGS 2019-05-13 23:14:30 -03:00
xianny
52a580d845 fix dangling comma 2019-05-13 21:17:25 -04:00
xianny
ea42a0b5f5 version bump 2019-05-13 21:15:38 -04:00
xianny
a0b63da9a6 version bump 2019-05-13 20:57:26 -04:00
Xianny
8d9932fc42 add private key option to migration script (#1811) 2019-05-13 16:32:37 -07:00
Xianny
54be45bedc Update coordinator contracts (#1812)
* update coordinator contracts after redeploying
2019-05-13 16:32:16 -07:00
Jacob Evans
3c9d2a562b Merge pull request #1810 from 0xProject/bug/asset-buyer/remainingTakerAssetAmount
Fix bug where remainingTakerAssetAmount is not converted to BigNumber
2019-05-13 18:53:10 +02:00
Jacob Evans
654bd5175c Add asset-buyer to circleci 2019-05-13 18:19:08 +02:00
Jacob Evans
9db660cd3f Update CHANGELOG 2019-05-13 16:33:29 +02:00
Jacob Evans
9aeadff9bd Check for presence of metadata 2019-05-13 15:38:28 +02:00
Jacob Evans
cd631b789b Commit coverage directory 2019-05-13 13:30:44 +02:00
Jacob Evans
4d98408aaf Fix bug where remainingTakerAssetAmount is not converted to BigNumber 2019-05-13 13:28:59 +02:00
Fabio Berger
490aafba4e Publish
- 0x.js@6.0.7
 - @0x/abi-gen@2.0.10
 - @0x/abi-gen-templates@2.1.0
 - @0x/abi-gen-wrappers@4.3.0
 - @0x/assert@2.0.10
 - @0x/asset-buyer@6.1.1
 - @0x/base-contract@5.1.0
 - @0x/connect@5.0.6
 - @0x/contract-artifacts@1.5.1
 - @0x/contract-wrappers@9.1.0
 - @0x/contracts-gen@1.0.9
 - @0x/dev-tools-pages@0.0.26
 - @0x/dev-utils@2.2.2
 - @0x/fill-scenarios@3.0.6
 - @0x/instant@1.0.21
 - @0x/json-schemas@3.0.10
 - @0x/metacoin@0.0.48
 - @0x/migrations@4.1.2
 - @0x/monorepo-scripts@1.0.31
 - @0x/order-utils@8.0.0
 - @0x/order-watcher@4.0.7
 - @0x/pipeline@1.0.18
 - @0x/react-docs@2.0.11
 - @0x/react-shared@2.0.11
 - @0x/sol-compiler@3.1.7
 - @0x/sol-coverage@3.0.4
 - @0x/sol-doc@2.0.11
 - @0x/sol-profiler@3.1.6
 - @0x/sol-trace@2.0.12
 - @0x/sol-tracing-utils@6.0.11
 - @0x/sra-spec@2.0.10
 - @0x/subproviders@4.0.6
 - @0x/testnet-faucets@1.0.77
 - @0x/utils@4.3.3
 - @0x/web3-wrapper@6.0.6
 - @0x/website@0.0.80
 - @0x/contracts-asset-proxy@2.1.2
 - @0x/contracts-coordinator@2.0.1
 - @0x/contracts-erc1155@1.1.2
 - @0x/contracts-erc20@2.2.1
 - @0x/contracts-erc721@2.1.2
 - @0x/contracts-exchange@2.1.2
 - @0x/contracts-exchange-forwarder@3.0.0
 - @0x/contracts-exchange-libs@2.1.2
 - @0x/contracts-extensions@3.1.2
 - @0x/contracts-multisig@3.1.2
 - @0x/contracts-test-utils@3.1.3
 - @0x/contracts-utils@3.1.2
2019-05-10 14:12:32 -03:00
Fabio Berger
3cd31d49bb Updated CHANGELOGS 2019-05-10 14:12:19 -03:00
Fabio Berger
6dd78b8d35 Update exchange forwarder package version 2019-05-10 13:46:30 -03:00
Jacob Evans
bd51c34098 Merge pull request #1809 from 0xProject/order-watcher-weth-events
OrderWatcher Deposit/Withdraw events
2019-05-10 18:32:31 +02:00
Jacob Evans
0e758fadee Merge changelog entries 2019-05-10 17:53:09 +02:00
Jacob Evans
a67659ff8e Update changelog 2019-05-10 16:37:09 +02:00
Jacob Evans
d1203f90da Revert "Mutate ERC20 ABI to handle WETH Deposit and Withdrawl"
This reverts commit c5f6ebee18.
2019-05-10 16:32:17 +02:00
Jacob Evans
c5f6ebee18 Mutate ERC20 ABI to handle WETH Deposit and Withdrawl 2019-05-10 16:09:09 +02:00
Xianny
41cc5234c4 Add coordinator wrapper (#1792)
* wip first pass at coordinator wrapper

* implement cancels, helper methods, and more unit tests

* pin typeorm version in pipeline

* prettier

* add export to 0x.js

* generate ZeroEx transaction using EIP712

* update Coordinator artifact

* change OrderError -> TypedDataError
2019-05-09 15:48:41 -07:00
Amir Bandeali
c2d3e5f052 Merge pull request #1804 from yxliang01/patch-1
fix.docs(README.md): wrong package name
2019-05-09 10:06:48 -07:00
Jacob Evans
f944b95e32 Added CHANGELOG 2019-05-09 17:26:57 +02:00
Jacob Evans
0a5b919cd9 Add fix for failing test 2019-05-09 16:46:56 +02:00
Jacob Evans
b5f85c11fe Re-enable orderwatcher tests. Add test for WETH withdraw 2019-05-09 16:46:08 +02:00
Greg Hysz
5d44b5e913 Merge pull request #1808 from 0xProject/fix/abiEncoder/typo1
Fixed typo in ABI Encoder error message
2019-05-08 13:27:53 -07:00
Greg Hysen
dd1961d86c updated changelog 2019-05-08 11:22:06 -07:00
Greg Hysen
f3539bf448 fixed typo 2019-05-08 11:22:03 -07:00
David Sun
d831e559f0 Merge pull request #1805 from 0xProject/feature/website/remove-meta-description
Removed default descriptions for website SEO performance
2019-05-07 13:06:15 -07:00
David Sun
cc079660f3 Merge pull request #1800 from 0xProject/feature/website/add-patryk
Added Patryk to the team page
2019-05-07 13:05:58 -07:00
Greg Hysz
4460dac697 Merge pull request #1806 from 0xProject/fix/abiEncoder/multibyteStrings
Support for ABI Encoding multibyte strings (Fixes Issue #1723)
2019-05-07 13:01:53 -07:00
Greg Hysen
31190f921c fixed linter errors 2019-05-07 12:34:05 -07:00
Greg Hysen
22515d8dce updated changelog 2019-05-07 11:59:27 -07:00
Greg Hysen
a099d970a4 Fixes Issue #1723: ABI-Encoded strings can have incorrect length header (multibyte characters) 2019-05-07 11:52:14 -07:00
David Sun
95bb2c5504 removed actual meta tags for description 2019-05-06 16:07:01 -07:00
David Sun
0b1262cc4d removed default description 2019-05-06 15:59:55 -07:00
Xiao Liang
f9244f6f7e fix.docs(README.md): wrong package name 2019-05-07 04:14:19 +08:00
Daniel Pyrathon
9dd4ea1584 added prettifying operations on CI 2019-05-06 12:57:20 -07:00
Daniel Pyrathon
9d085cdb61 applied linting 2019-05-03 18:23:07 -07:00
Daniel Pyrathon
f00a2dbc59 added an unsubscribe handler 2019-05-03 18:05:40 -07:00
Daniel Pyrathon
20862d47ab Added performedCallback attribute for Redux state, and added a hook for callback whenever the transaction was successful 2019-05-03 17:27:26 -07:00
Chris Kalani
cfa1bf36de Fixing Greg's placement in the grid 2019-05-02 14:43:22 -07:00
Chris Kalani
c362b33b5a Added Patryk to the team page 2019-05-02 14:33:36 -07:00
F. Eugene Aumson
222a151eff bump versions, after recent publications (#1646)
* bump versions, after recent publications

* Changelog updates and version bumps

* Correct broken URL's in setup.py's

* Correct SRA Client description (append "Client")

* Add convenience script for uninstalling all pkgs

* Add documentation link to SRA Client README.md
2019-04-30 15:56:40 -04:00
Lawrence Forman
d6115cff25 Merge pull request #1797 from 0xProject/feature/abi-gen-templates/awaitTransactionSuccess
Add awaitTransactionSuccessAsync() to generated contract functions.
2019-04-30 14:13:13 -04:00
Lawrence Forman
6459522617 Merge pull request #1799 from 0xProject/fix/contracts/temporarily-disable-useDockerisedSolc
Disable `useDockerisedSolc` for all contracts `compiler.json`s until latest solc docker images are published
2019-04-30 14:12:31 -04:00
Lawrence Forman
16e1f0eea1 Disable useDockerisedSolc for all contracts compiler.jsons until 0.5.8 docker image is released. 2019-04-30 11:01:31 -04:00
F. Eugene Aumson
0564ac1530 Python doc polish (#1757)
* Exercise doctests as a test not as a linter

* Add a contract artifact doctest, and exercise it

* Clean up linter issues

* Change asset data decoding output type

Previously, it was a TypedDict, but that was causing problems.  Sphinx
seems to be broken, such that none of the fields of the class were being
rendered into the doc.

Thinking on it further, I decided that a NamedTuple makes more sense
here anyways, since tuples are immutable and this output value isn't
something someone should ever build or modify.  And, NamedTuple is
getting its fields properly rendered by Sphinx.

* Add type annotations to JSON schemas docs

* Add doc publish metadata file for middlewares pkg

* Improve documentation

Note that none of the changes to .py files impact functionality in any
way, because the changes are restricted to "docstrings", which to the
Python interpreter are simply no-op statements.

However, one caveat to that is that much of these docstring changes DO
affect the functionality of automated test runs, because all of the code
examples (blocks beginning with `>>> `) are "doctests", which are
exercised via the test framework.

The index.rst files are the top-level templates for generating the
documentation, and the "automodule"/"autoclass"/etc statements pull in
the docstrings from the source code.

* correct package name in doc URL

* Move sra_client module into zero_ex namespace

* Add functions to encode asset data to bytes

* Fix: SRA client was deserializing orders weirdly

The generated code was transforming the order structure, from the camel
case field name format in the spec, into the snake case field name
format expected by Python convention.  With this problem in place, the
only way to take an order from a relayer and send it to a contract (for
fill, cancel, etc) was to manually transform the field names, one by
one, into a new structure.

* Fix problem with Web3/JSON order conversion utils

* doctest: maker, trade ZRX for WETH, not vice versa

* Remove redundant test

* Construct order in native Python, not JSON

Then convert it to JSON before sending it to the relayer.

* doctest: simplify asset units

* Add doctests for filling and cancelling

* Minor doctetst copy edits; whitespace

* Rename function, and add optional parameter

* Tweak docstrings on JSON conversion functions.

* Demo asset data decoding to view asset pairs

* Demo selecting an order from the order book

And have taker take it.

* Rename variable

* Abstract ganache from examples

Doing that exposed excessive use of the verbose
NETWORK_TO_ADDRESSES[NetworkId.Ganache] construct, so simplified that,
which ripped into eliminating other temporary variables that had been
used to hold specific contract addresses.

Also cleaned up some misplaced import statements.

* Add missing SRA client doc publication metadata

* Ran prettier on new SRA client doc pub metadata

* Remove local env customizations in doc metadata

* Eliminate temporary variable

* Rename variable

* Show `pip install` in every package's doc

* Doc NetorkID & pagination params as int, not float

* Clean up unmatched parenthesis in docs
2019-04-30 07:44:51 -04:00
Amir Bandeali
b896f82282 Merge pull request #1798 from 0xProject/feat/clean-contracts
Add clean:contracts command to top level package.json
2019-04-29 16:07:45 -07:00
Amir Bandeali
d737d419d9 Add clean:contracts command to top level package.json 2019-04-29 16:06:00 -07:00
F. Eugene Aumson
0de2b6983b Add LibAssetData to contracts/asset-proxy (#1779)
* Stop restarting node unnecesssarily during test

* Add new, empty LibAssetData

* Support encoding & decoding of ERC20 asset data

* Support encoding & decoding of ERC721 asset data

* Support encoding & decoding of ERC1155 asset data

* Support encoding & decoding of multi-asset data

* Support querying ERC20 balance from asset data

* Support querying ERC721 balance from asset data

* Support querying ERC1155 balance from asset data

* Support querying balance from multi-asset data

* Support querying ERC20 allowance from asset data

* Support querying ERC721 allowance from asset data

* Support querying ERC1155 allowance from asset data

* In tests, wait for allowance set before checking

* Introduce temporary variable `assetDataBody`

* Handle edge case in multi-asset balance query

* Support multi-asset allowance query by asset data

* Move variable declaration up for readability.

* Make all solhint-disable's cite specific rules

And move the directives to the ends of lines whenever possible

* Rename query tests to include " by asset data"

* Extract test helper method

* Extract another test helper method

* Support batch queries of allowances & balances

* In LibAssetData.sol, use IERC1155, not ...Mintable

* Rename balance*() return vars: amount -> balance

* Fix bug in ERC721 balance query

Was using method balanceOf(), but needed to be using ownerOf().

getERC721TokenOwner() method lifted from
@0x/extensions/contracts/src/OrderValidator/OrderValidator.sol

* Reuse new en/decoders; avoid abi.decode().

* Start lowest allowance/balance from 0, not MAX_INT

* Properly implement ERC1155 balance querying

* Split lines for readability

* Also check isApprovedForAll in 721 allowance query

* Add neglected division of allowances by amounts

* Rename methods: balanceOf -> getBalance

* Rename methods: allowance -> getAllowance

* Add methods: getBalanceAndAllowance() & batch...()

* Rename return vars: amount -> allowance

* Add devdoc comments

* Rename batchGet* methods to getBatch*

* Remove refactoring relic

* Add revert messages to all require() calls

* Reduce gas usage for ERC1155 asset data decoding

* Don't use dockerized solc for ERC20 contracts

Because they demand solc version 0.4.26, and it seems as though the tag
for that version has been deleted from dockerhub.

Without this, @0x/contracts-erc20 was failing to build.

* Rename batch functions to use plurals

* Skip dockerized solc for contracts needing 0.4.26

I seems as though the tag for that version has been deleted from
dockerhub.

Without this, these contracts were failing to build.

* Make revert reasons follow snake case convention
2019-04-29 15:46:26 -04:00
Lawrence Forman
25628c34ee Add PR numbers to CHANGELOGs 2019-04-28 22:25:12 -04:00
Lawrence Forman
54fdccd397 Ran prettier. 2019-04-28 22:25:12 -04:00
Lawrence Forman
27af4a988d In @0x/abi-gen-wrappers: Regenerate contract wrappers. 2019-04-28 22:25:12 -04:00
Lawrence Forman
fddad131a2 In @0x/base-contract: Expose txHashPromise in PromiseWithTransactionHash.
In `@0x/abi-gen-templates`: Update `awaitTransactionSuccessAsync()` partial to expose `txHashPromise`.
2019-04-28 22:25:12 -04:00
Lawrence Forman
4d493eeebd In @0x/contracts-asset-proxy: Update tests to use contract-built-in awaitTransactionSuccessAsync(). 2019-04-28 22:25:12 -04:00
Lawrence Forman
14c1495a1a In @0x/abi-gen-templates: Make txData parameter optional in awaitTransactionSuccessAsync().
In `@0x/base-contract`: Make `PromiseWithTransactionHash` class compatible with ES5 transpiler.
In `@0x/abi-gen-wrappers`: Regenerate contract wrappers.
2019-04-28 22:25:12 -04:00
Lawrence Forman
49c029ddb3 In @0x/abi-gen-templates: Add txData parameter to awaitTransactionSuccessAsync.
In `@0x/abi-gen-templates`: Regenerate wrappers.
2019-04-28 22:25:12 -04:00
Lawrence Forman
ddbe142c4c In @0x/abi-gen-wrappers: Regenerate contract wrappers. 2019-04-28 22:25:12 -04:00
Lawrence Forman
4710b40e45 In @0x/abi-gen-templates: Add timeoutMs parameter to awaitTransactionSuccessAsync 2019-04-28 22:25:12 -04:00
Lawrence Forman
be0b296769 Fix more linter errors. 2019-04-28 22:25:12 -04:00
Lawrence Forman
0a0ee67740 Fix linter errors. 2019-04-28 22:25:12 -04:00
Lawrence Forman
943d648225 In @0x/abi-gen-wrappers: Regenerate wrappers. 2019-04-28 22:25:12 -04:00
Lawrence Forman
6d835f5cc1 In @0x/abi-gen-templates: Add awaitTransactionSuccessAsync() to transaction template. 2019-04-28 22:25:12 -04:00
Lawrence Forman
a59cd67acf In @0x/base-contract: expose a PromiseWithTransactionHash type. 2019-04-28 22:25:12 -04:00
Lawrence Forman
bbc06be091 Update contracts/exchange-forwarder to 0.5.5 (#1796)
* Cherry-pick updated `@0x/contracts-exchange-forwarder` from `3.0` branch.

* Add PR numbers to changelogs
2019-04-28 22:21:13 -04:00
David Sun
d303e9f347 Merge pull request #1795 from 0xProject/feature/website/new-sitemap.txt
Added new sitemap.txt
2019-04-26 20:03:59 -04:00
David Sun
85ee923d89 added new sitemap.txt 2019-04-26 20:01:55 -04:00
David Sun
fe6ba20ff5 Merge pull request #1788 from 0xProject/feature/website/seo+polish
Updated meta data for website
2019-04-26 16:24:31 -04:00
Fabio B
18acf50b12 Merge pull request #1789 from 0xProject/fix/order-watcher-race-condition
Fix OrderWatcher race-condition bug
2019-04-24 16:09:58 -05:00
Fabio B
509fabb61c Merge pull request #1733 from PaulRBerg/fix/monorepo-scripts/broken-yarn-command
Fix yarn command in monorepo-scripts
2019-04-23 18:19:33 -05:00
Fabio Berger
cc3378b4cd Add CHANGELOG entry 2019-04-23 18:07:12 -05:00
Fabio Berger
8d3ccf333d Fix race-condition bug 2019-04-23 18:05:33 -05:00
David Sun
520919b165 prettier+lint 2019-04-23 18:41:54 -04:00
Francesco Agosti
600b86dd31 Merge pull request #1787 from 0xProject/feature/instant/utility-methods
Export utility methods and data from instant
2019-04-23 13:21:27 -07:00
fragosti
9c3fdd2584 Export utility methods and data from instant 2019-04-23 13:03:31 -07:00
David Sun
73974cd90f added large card variant 2019-04-23 11:12:36 -04:00
David Sun
8a60b3b402 switched metadata for explore page 2019-04-23 11:05:14 -04:00
Francesco Agosti
59ed5ae6b7 Merge pull request #1785 from 0xProject/feature/instant/erc721-screen-support
Add overflow scroll to instant overlay & fix display bug
2019-04-22 20:39:15 -05:00
fragosti
c687385974 Fix token amount bug 2019-04-22 18:21:32 -07:00
fragosti
2f72e15ea7 Add overflow scroll to instant overlay 2019-04-22 18:07:20 -07:00
Brandon Millman
7ea99baeb2 Merge pull request #1781 from 0xProject/feature/website/add-rui-mason
Added Rui and Mason to the team page
2019-04-22 14:21:11 -07:00
Francesco Agosti
14f3d20772 Merge pull request #1768 from 0xProject/feature/instant/erc-721-support
Super MVP ERC 721 in Instant
2019-04-19 18:21:07 -05:00
fragosti
72f51df25f Change 0x site URL 2019-04-19 17:59:37 -05:00
fragosti
a94b58e304 Remove lodash is undefined 2019-04-19 17:57:06 -05:00
fragosti
d327fabf9c Remove empty switch statement in instant 2019-04-19 17:21:06 -05:00
fragosti
9e02888c74 Apply prettier 2019-04-19 17:05:09 -05:00
fragosti
98c9a847f3 Improve index.html 2019-04-19 16:58:42 -05:00
fragosti
a159f4c9d6 Make ERC721 image fitting more flexible 2019-04-19 16:49:37 -05:00
fragosti
b197731ed2 Add back mysterious change because of merge 2019-04-19 12:34:17 -05:00
fragosti
028f54fdf0 Fix linting errors 2019-04-19 12:28:28 -05:00
fragosti
de62a0f8ed Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/erc-721-support 2019-04-19 11:31:52 -05:00
Chris Kalani
a0fcc50a5f Added Rui and Mason to the team page 2019-04-18 11:58:31 -07:00
Brandon Millman
4f186e843c Merge pull request #1777 from 0xProject/feature/website/add-paul-vienhage
Added Paul to team page, updated 2 photos, cleaned up titles
2019-04-15 09:13:52 -07:00
Chris Kalani
df64c20587 Added Paul to team page, updated 2 photos, cleaned up titles 2019-04-12 16:00:24 -07:00
Jacob Evans
c78a602990 Publish
- 0x.js@6.0.6
 - @0x/abi-gen@2.0.9
 - @0x/abi-gen-templates@2.0.2
 - @0x/abi-gen-wrappers@4.2.0
 - @0x/assert@2.0.9
 - @0x/asset-buyer@6.1.0
 - @0x/base-contract@5.0.5
 - @0x/connect@5.0.5
 - @0x/contract-addresses@2.3.1
 - @0x/contract-artifacts@1.5.0
 - @0x/contract-wrappers@9.0.0
 - @0x/contracts-gen@1.0.8
 - @0x/dev-tools-pages@0.0.25
 - @0x/dev-utils@2.2.1
 - ethereum-types@2.1.2
 - @0x/fill-scenarios@3.0.5
 - @0x/instant@1.0.20
 - @0x/json-schemas@3.0.9
 - @0x/metacoin@0.0.47
 - @0x/migrations@4.1.1
 - @0x/monorepo-scripts@1.0.30
 - @0x/order-utils@7.2.0
 - @0x/order-watcher@4.0.6
 - @0x/pipeline@1.0.17
 - @0x/react-docs@2.0.10
 - @0x/react-shared@2.0.10
 - @0x/sol-compiler@3.1.6
 - @0x/sol-coverage@3.0.3
 - @0x/sol-doc@2.0.10
 - @0x/sol-profiler@3.1.5
 - @0x/sol-resolver@2.0.7
 - @0x/sol-trace@2.0.11
 - @0x/sol-tracing-utils@6.0.10
 - @0x/sra-spec@2.0.9
 - @0x/subproviders@4.0.5
 - @0x/testnet-faucets@1.0.76
 - @0x/tslint-config@3.0.1
 - @0x/types@2.2.2
 - @0x/typescript-typings@4.2.2
 - @0x/utils@4.3.1
 - @0x/web3-wrapper@6.0.5
 - @0x/website@0.0.79
 - @0x/contracts-asset-proxy@2.1.1
 - @0x/contracts-coordinator@2.0.0
 - @0x/contracts-erc1155@1.1.1
 - @0x/contracts-erc20@2.2.0
 - @0x/contracts-erc721@2.1.1
 - @0x/contracts-exchange@2.1.1
 - @0x/contracts-exchange-forwarder@2.1.1
 - @0x/contracts-exchange-libs@2.1.1
 - @0x/contracts-extensions@3.1.1
 - @0x/contracts-multisig@3.1.1
 - @0x/contracts-test-utils@3.1.2
 - @0x/contracts-utils@3.1.1
2019-04-11 17:00:06 +01:00
Jacob Evans
0acec57ba9 Updated CHANGELOGS 2019-04-11 16:59:38 +01:00
Xianny
7423028fea Replace lodash with built-ins where possible to reduce bundle size (#1766)
* add tslint rule to disallow lodash.isUndefined

* add tslint rule to disallow lodash.isNull

* apply fixes
2019-04-10 09:36:32 -07:00
David Sun
49d951b7be Merge pull request #1772 from 0xProject/bug/website-photos
Fix bug with photo name url
2019-04-09 23:44:55 -07:00
David Sun
a554c9518d changed photo name url 2019-04-09 23:43:23 -07:00
David Sun
f3c7ba445e Merge pull request #1771 from 0xProject/feature/website/new-team-photos
Website new team photos
2019-04-09 23:30:51 -07:00
David Sun
3abff41385 commiting photos 2019-04-09 23:08:29 -07:00
Ryan Chow
6c36832f0e Stop using deprecated web3.py interface (#1759)
* Refactor contract function call to support web3.py v5.0.0. (backwards compatible with v4)
2019-04-09 09:33:36 -04:00
fragosti
310c18707b Improve index.html 2019-04-05 16:57:13 -07:00
fragosti
422a4a5578 Add image component 2019-04-05 16:44:17 -07:00
fragosti
a995b2e1ae UI presenting NFT a bit more nicely 2019-04-05 16:25:53 -07:00
fragosti
90ad681a9e Extreme MVP of buying a ERC721 works 2019-04-05 15:55:10 -07:00
David Sun
2ff5c39712 Merge pull request #1767 from dave4506/fix/website/bug-sort-menu
Fix for menu z-index for explore
2019-04-05 15:03:13 -07:00
David Sun
ded849fd6d fix for menu z-index 2019-04-05 15:01:07 -07:00
David Sun
02f7064953 Merge pull request #1763 from dave4506/fix/website/flash-css-error
Fix Explore Issues with flash of css + other minor bugs
2019-04-05 14:57:19 -04:00
David Sun
1ddadfce1e added animation to tiles 2019-04-05 11:26:14 -07:00
David Sun
7720e5007c added animations to explore 2019-04-05 11:17:56 -07:00
David Sun
ccfd021796 switched header 'href' to 'to' 2019-04-05 11:17:56 -07:00
F. Eugene Aumson
fdcad84cee Delete merge conflict artifact (#1758) 2019-04-04 18:08:13 -04:00
Alex Browne
ad3e3b8421 Merge pull request #1755 from 0xProject/fix/circleci-yarn-permission-denied
Fix yarn permission denied errors in CircleCI
2019-04-04 13:21:36 -07:00
Jacob Evans
f67b4f8902 Merge pull request #1747 from 0xProject/feature/cut-the-package-fat
Cut the package fat! Part 1: Unwanted files
2019-04-04 14:26:23 +01:00
Jacob Evans
3c0d7319ba Update artifacts and remove top level artifacts 2019-04-04 12:30:41 +01:00
Jacob Evans
7f0aab6ec6 Remove unused deps 2019-04-04 12:30:41 +01:00
Jacob Evans
669578a926 Add contract-artifacts to circleci 2019-04-04 12:30:41 +01:00
Jacob Evans
fa1db64a8e Add a test to keep artifact sizes down 2019-04-04 12:30:41 +01:00
Jacob Evans
7cf60fa927 Remove sourcecode and opcodes from artifacts 2019-04-04 12:30:41 +01:00
Jacob Evans
75a0d3e494 Update all .npmignores 2019-04-04 12:30:41 +01:00
Jacob Evans
a98218ae22 Whitelist npmignore 2019-04-04 12:30:40 +01:00
Jacob Evans
10952e9dc4 Cut the package fat 2019-04-04 12:30:33 +01:00
Alex Browne
b36e23471b Fix yarn permission denied errors in CircleCI 2019-04-03 17:19:58 -07:00
Alex Browne
f45bf1c95b Merge pull request #1754 from 0xProject/fix/skip-geth-tests-ci
Disable Geth tests in CircleCI
2019-04-03 17:06:09 -07:00
Alex Browne
d4db2587aa Disable Geth tests in CircleCI 2019-04-03 16:38:58 -07:00
F. Eugene Aumson
62e6336a7d Fix race condition in CI runs of Python SRA client tests (#1751)
* In CI, don't start Launch Kit til Ganache is ready

* Re-enable Python SRA client tests

* For local testing, await service readiness
2019-04-03 18:22:26 -04:00
F. Eugene Aumson
2d8acd4711 Disable Python SRA tests against Launch Kit (#1750)
These tests have worked multiple times in Circle CI, but now they're not, and it seems to be misbehaving intermittently, so just disabling them for now.
2019-04-02 13:24:27 -04:00
Brandon Millman
d7d95be042 Merge pull request #1745 from 0xProject/fix/website/fix-codesandbox
Fix code sandbox link and 0x.js dep in website
2019-04-01 10:21:17 -07:00
David Sun
e3c97f0681 Merge pull request #1748 from dave4506/fix/website/pixure+bugs
Switched Pixura link
2019-04-01 08:59:20 -04:00
David Sun
1a4fa015b9 switched back to roboto 2019-04-01 08:54:02 -04:00
David Sun
63dacfaac5 switched pixura link 2019-04-01 08:48:46 -04:00
Brandon Millman
f7263ac2c6 Fix 0x.js dep 2019-03-29 16:54:41 -07:00
Brandon Millman
c7d7e1f0e3 Fix codesandbox link 2019-03-29 16:53:13 -07:00
Daniel Pyrathon
9c54b615f5 Merge pull request #1744 from 0xProject/feature/website/moar-Explore-updates
updates explore page
2019-03-29 16:28:02 -07:00
F. Eugene Aumson
69fe1aa981 Remove doctest skip for get_order method (#1743)
* Remove doctest skip for get_order method

* Set ganache env for Launch Kit in Circle CI

* Unpin Launch Kit version used in CI
2019-03-29 18:54:46 -04:00
rsingireddy
bfb3d19e3b fixes by way of yarn prettier 2019-03-29 15:45:49 -07:00
rsingireddy
0b4e62a63e updates explore page 2019-03-29 15:26:44 -07:00
David Sun
5cdbc03e71 Merge pull request #1676 from dave4506/website/feature/explore-page
Explore page
2019-03-28 21:10:57 -04:00
David Sun
16cd6dd25d removed .DS_Store 2019-03-28 20:54:00 -04:00
David Sun
fc71e7f99f updated to svg assets + new description 2019-03-28 20:51:56 -04:00
David Sun
e740380731 added changes for PR 2019-03-28 17:33:26 -04:00
Jacob Evans
f9921d2c91 Merge pull request #1714 from 0xProject/feature/order-utils/one-sided-transfer-validation
Simulate Maker transfer in order validation
2019-03-28 15:10:00 +01:00
Jacob Evans
d8bfc92cc5 Update documentation and changelog 2019-03-28 14:49:22 +01:00
Jacob Evans
1f2214f891 Major bump as this change could break existing orderbooks 2019-03-28 14:19:33 +01:00
Jacob Evans
50835e317f Update CHANGELOG 2019-03-28 14:00:40 +01:00
Jacob Evans
6c8d4dcc1e Allow simulation taker address to be specified 2019-03-28 14:00:40 +01:00
Jacob Evans
85a7efbd61 Change to accept maker amount 2019-03-28 14:00:40 +01:00
Jacob Evans
6b5ef10467 Remove unused imports 2019-03-28 14:00:39 +01:00
Jacob Evans
0bf46bfcb5 Re-use order relevant state 2019-03-28 14:00:39 +01:00
Jacob Evans
8b8dc7ac78 Update jsdoc 2019-03-28 14:00:39 +01:00
Fabio B
a017122c44 Update packages/contract-wrappers/src/types.ts
Co-Authored-By: dekz <dekz@dekz.net>
2019-03-28 14:00:39 +01:00
Fabio B
86a9a892d2 Update packages/contract-wrappers/src/contract_wrappers/exchange_wrapper.ts
Co-Authored-By: dekz <dekz@dekz.net>
2019-03-28 14:00:39 +01:00
Fabio B
f31a141d78 Update packages/contract-wrappers/src/contract_wrappers/exchange_wrapper.ts
Co-Authored-By: dekz <dekz@dekz.net>
2019-03-28 14:00:39 +01:00
Jacob Evans
fa67997424 Move order_utils from asset-buyer to order-utils package 2019-03-28 14:00:39 +01:00
Jacob Evans
a5f06c577d Remove unused pause 2019-03-28 14:00:38 +01:00
Jacob Evans
e575672877 Update CHANGELOGs 2019-03-28 14:00:38 +01:00
Jacob Evans
a34d5b29e8 Return eventually rejectedWith 2019-03-28 14:00:38 +01:00
Jacob Evans
91ec65da1b Await in tests to prevent clash in before blocks 2019-03-28 14:00:38 +01:00
Jacob Evans
ee8d40a66e Add IAssetProxy to python 2019-03-28 14:00:38 +01:00
Jacob Evans
38ac2e80ed Remove unused code 2019-03-28 14:00:38 +01:00
Jacob Evans
8b70762e34 Add a Test for an Untransferrable ERC20 token 2019-03-28 14:00:37 +01:00
Jacob Evans
18c613a611 Update comments 2019-03-28 14:00:37 +01:00
Jacob Evans
957f8c56a1 validateRemainingOrderAmountIsFillable 2019-03-28 14:00:37 +01:00
Jacob Evans
b16446877e only 2019-03-28 14:00:37 +01:00
Jacob Evans
9164d58dc7 Simulate maker transfer in order validation 2019-03-28 14:00:27 +01:00
Francesco Agosti
0beb2f9d3c Merge pull request #1740 from 0xProject/feature/website/add-Lawrence-change-Mel-role-change-Alex-Browne-role
adds lawrence forman to the website. changes mel role and alex browne…
2019-03-27 11:58:34 -07:00
Brandon Millman
ccdd66052a Merge pull request #1737 from 0xProject/feature/instant/update-infura
[instant] Add infura project id via env variables when bundling instant
2019-03-26 19:04:57 -07:00
Brandon Millman
518fd814b6 Merge branch 'development' into feature/website/add-Lawrence-change-Mel-role-change-Alex-Browne-role 2019-03-26 17:23:58 -07:00
rsingireddy
f49bb78dba adds lawrennce picture 2019-03-26 17:13:56 -07:00
rsingireddy
a54aa77d28 adds lawrence forman to the website. changes mel role and alex browne role 2019-03-26 16:51:07 -07:00
Brandon Millman
f85e443c9c Add instant.0x.org to host domains 2019-03-26 16:33:16 -07:00
Alex Browne
399e004e7f Merge pull request #1738 from 0xProject/fix/test-python-ci-failure-launch-kit-needs-pinning
Pin Launch Kit version in test-python CI task
2019-03-26 16:26:07 -07:00
Michael Huang
3099ba71eb New demos for Python packages (#1734)
End-to-end demos of constructing and signing an order and submitting it to a Relayer.  Docs are generated from the code, and include usage examples that are verified through automated testing.
2019-03-26 19:07:04 -04:00
F. Eugene Aumson
951fcf384c pin launch kit version in test-python ci task 2019-03-26 18:00:16 -04:00
Brandon Millman
c750368a3e Add infura project id via env variables when bundling instant 2019-03-26 14:17:57 -07:00
David Sun
3149d86855 lint + prettier 2019-03-26 16:55:10 -04:00
David Sun
3aaf21e34e removed banner and lint + prettier 2019-03-26 16:20:03 -04:00
David Sun
519c375a42 added responsive features 2019-03-26 16:20:03 -04:00
David Sun
3ed2c732bd added announcement banner 2019-03-26 16:20:02 -04:00
David Sun
0aa5550d0f Rearchitected Explore Page + added new features 2019-03-26 16:20:02 -04:00
David Sun
1bc8dd83d3 added settings dropdown 2019-03-26 16:20:02 -04:00
David Sun
c642cd6fed changed to popular 2019-03-26 16:20:01 -04:00
David Sun
f72918362d created most of the page's functionality 2019-03-26 16:20:01 -04:00
Leonid Logvinov
28c4ca73ab Merge pull request #1728 from ochikov/patch-6
Update constants.ts
2019-03-26 14:46:15 +01:00
Michael Huang
a256494ec8 Python contract wrappers (#1721) 2019-03-25 19:25:41 -04:00
Paul Berg
5fd359a64f Fix yarn command 2019-03-25 19:32:07 +00:00
Michael Huang
e043735362 Fix regex validation on numeric inputs (#1731)
* Fix regex validation on numeric inputs
2019-03-25 15:18:58 -04:00
Amir Bandeali
7010b1adb9 Merge pull request #1729 from 0xProject/feat/coordinator/functionVisibility
Modify function visibilities in Coordinator contract
2019-03-25 11:51:23 -07:00
Amir Bandeali
17ff262729 Update CHANGELOG 2019-03-25 10:11:37 -07:00
Amir Bandeali
1c18838cd8 Fix typos and add tests for decodeOrdersFromFillData 2019-03-25 10:11:37 -07:00
Amir Bandeali
55b87ae78d Make decodeOrdersFromFillData oublic and assertValidTransactionOrdersApproval internal 2019-03-25 10:11:37 -07:00
Amir Bandeali
e446e902f3 Remove TestMixins contract 2019-03-25 10:11:37 -07:00
Amir Bandeali
095b52e0b2 Make hashing methods public 2019-03-25 10:11:37 -07:00
Michael Huang
4f25ff6a50 local_message_signer middleware for web3.py (#1713) 2019-03-25 11:25:41 -04:00
ochikov
6242e0aeec Update constants.ts 2019-03-25 00:21:07 +02:00
Francesco Agosti
fde9fc9dd4 Merge pull request #1722 from 0xProject/fix/instant-polling
Unmount Instant when closing
2019-03-22 17:03:16 -07:00
fragosti
c481e42673 Reset yarn.lock 2019-03-22 16:21:02 -07:00
fragosti
5e228d7232 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into fix/instant-polling 2019-03-22 15:03:15 -07:00
fragosti
6b8e40fdc9 Make unrender idempotent 2019-03-22 15:02:12 -07:00
Alex Svanevik
bca44bf9e3 Merge pull request #1684 from 0xProject/pull-github-data
Pull Github data
2019-03-22 18:33:40 +08:00
askeluv
08e49dcf2e Throttling to respect rate limits 2019-03-22 18:15:49 +08:00
Fabio Berger
0f45409b4d Publish
- 0x.js@6.0.5
 - @0x/abi-gen@2.0.8
 - @0x/abi-gen-wrappers@4.1.0
 - @0x/assert@2.0.8
 - @0x/asset-buyer@6.0.5
 - @0x/base-contract@5.0.4
 - @0x/connect@5.0.4
 - @0x/contract-addresses@2.3.0
 - @0x/contract-artifacts@1.4.0
 - @0x/contract-wrappers@8.0.5
 - @0x/contracts-gen@1.0.7
 - @0x/dev-tools-pages@0.0.24
 - @0x/dev-utils@2.2.0
 - @0x/fill-scenarios@3.0.4
 - @0x/instant@1.0.19
 - @0x/json-schemas@3.0.8
 - @0x/metacoin@0.0.46
 - @0x/migrations@4.1.0
 - @0x/monorepo-scripts@1.0.29
 - @0x/order-utils@7.1.1
 - @0x/order-watcher@4.0.5
 - @0x/pipeline@1.0.16
 - @0x/react-docs@2.0.9
 - @0x/react-shared@2.0.9
 - @0x/sol-compiler@3.1.5
 - @0x/sol-coverage@3.0.2
 - @0x/sol-doc@2.0.9
 - @0x/sol-profiler@3.1.4
 - @0x/sol-resolver@2.0.6
 - @0x/sol-trace@2.0.10
 - @0x/sol-tracing-utils@6.0.9
 - @0x/sra-spec@2.0.8
 - @0x/subproviders@4.0.4
 - @0x/testnet-faucets@1.0.75
 - @0x/types@2.2.1
 - @0x/typescript-typings@4.2.1
 - @0x/utils@4.3.0
 - @0x/web3-wrapper@6.0.4
 - @0x/website@0.0.78
 - @0x/contracts-asset-proxy@2.1.0
 - @0x/contracts-coordinator@1.1.0
 - @0x/contracts-erc1155@1.1.0
 - @0x/contracts-erc20@2.1.0
 - @0x/contracts-erc721@2.1.0
 - @0x/contracts-exchange@2.1.0
 - @0x/contracts-exchange-forwarder@2.1.0
 - @0x/contracts-exchange-libs@2.1.0
 - @0x/contracts-extensions@3.1.0
 - @0x/contracts-multisig@3.1.0
 - @0x/contracts-test-utils@3.1.1
 - @0x/contracts-utils@3.1.0
2019-03-21 17:07:20 +01:00
Fabio Berger
5469d3ec13 Updated CHANGELOGS 2019-03-21 17:07:04 +01:00
Fabio B
d12f8410b9 Merge pull request #1689 from 0xProject/addCoordinatorSupport
Add Coordinator contracts support in dev tools
2019-03-21 16:04:19 +01:00
Fabio Berger
704c52d229 Move @0x/contracts-test-utils dependency from devDep to deps to fix publish test 2019-03-21 15:33:47 +01:00
Fabio Berger
7dcdda14f5 modify types 2019-03-21 15:13:39 +01:00
Fabio Berger
0f59256ca7 merge development 2019-03-21 15:04:52 +01:00
Fabio Berger
ddee04e98c Try import instead of const 2019-03-21 14:46:47 +01:00
Steve Klebanoff
50f5002b71 Unmount component when closing 2019-03-21 14:43:31 +01:00
Fabio Berger
e866add4b0 Add artifacts to python packages 2019-03-21 14:33:54 +01:00
Fabio Berger
39b93b88c5 Fix prettier 2019-03-21 14:32:21 +01:00
Fabio Berger
deb7e95567 Revert change 2019-03-21 14:29:26 +01:00
Jacob Evans
91500501ce Merge pull request #1695 from 0xProject/feature/reduce-excess-block-polling
Reduce excess block polling when using Web3ProviderEngine
2019-03-21 13:37:07 +01:00
Jacob Evans
6a1caeb9a1 Update CHANGELOGs 2019-03-21 12:33:09 +01:00
Jacob Evans
cee7803c37 Remove IAssetProxy 2019-03-21 12:02:38 +01:00
Jacob Evans
4e8d0ac7cb Add IAssetProxy to python 2019-03-21 11:52:43 +01:00
Jacob Evans
47bbcb9935 Add HACK explanation 2019-03-21 11:52:43 +01:00
Jacob Evans
c0288c5f26 Fix changelog, remove migrate_testnet 2019-03-21 11:52:28 +01:00
Jacob Evans
18c2013625 Update contract CHANGELOGs 2019-03-21 11:51:53 +01:00
Jacob Evans
548089888d Remove excess web3providernegine polling from contracts 2019-03-21 11:50:19 +01:00
Jacob Evans
180c65cfeb Change all packages to use web3providerengine without excess polling 2019-03-21 11:50:19 +01:00
Jacob Evans
6a28e41bc8 Remove unnecessary type assertion 2019-03-21 11:50:19 +01:00
Jacob Evans
f9ef942a98 Use providerUtils.startProviderEngine to minimize the HACK 2019-03-21 11:50:18 +01:00
Jacob Evans
8272c7a74e Reduce excess block polling when using Web3ProviderEngine 2019-03-21 11:49:26 +01:00
Amir Bandeali
4e745489db Merge pull request #1720 from 0xProject/fix/remove-tec
Remove TEC package artifacts
2019-03-20 14:01:39 -07:00
Amir Bandeali
fc2625a0c0 Remove TEC package artifacts 2019-03-20 13:28:37 -07:00
Amir Bandeali
d0e43ebaf1 Merge pull request #1712 from merklejerk/fix/feature/contracts/LibAddressArray-tests
Fix LibAddressArray.indexOf() and add LibAddressArray tests.
2019-03-20 11:38:08 -07:00
Fabio Berger
879805e316 merge development 2019-03-20 17:07:02 +01:00
Fabio Berger
6845d2e0ef Add coordinator artifacts to python package 2019-03-20 16:56:08 +01:00
Fabio Berger
542d1c1c41 In-line the declaration 2019-03-20 16:27:13 +01:00
Greg Hysen
31568e7abb Merge pull request #1716 from 0xProject/contracts-asset-proxy/updateProxyId
ERC1155 ProxyId - ERC1155Token -> ERC1155Assets
2019-03-20 08:12:58 -07:00
Lawrence
4b2488b124 Ran prettier. 2019-03-20 10:58:25 -04:00
Leonid Logvinov
d4c37ecfa3 Publish
- 0x.js@6.0.4
 - @0x/abi-gen@2.0.7
 - @0x/abi-gen-wrappers@4.0.3
 - @0x/assert@2.0.7
 - @0x/asset-buyer@6.0.4
 - @0x/base-contract@5.0.3
 - @0x/connect@5.0.3
 - @0x/contract-addresses@2.2.3
 - @0x/contract-wrappers@8.0.4
 - @0x/contracts-gen@1.0.6
 - @0x/dev-tools-pages@0.0.23
 - @0x/dev-utils@2.1.4
 - ethereum-types@2.1.1
 - @0x/fill-scenarios@3.0.3
 - @0x/instant@1.0.18
 - @0x/json-schemas@3.0.7
 - @0x/metacoin@0.0.45
 - @0x/migrations@4.0.4
 - @0x/monorepo-scripts@1.0.28
 - @0x/order-utils@7.1.0
 - @0x/order-watcher@4.0.4
 - @0x/pipeline@1.0.15
 - @0x/react-docs@2.0.8
 - @0x/react-shared@2.0.8
 - @0x/sol-compiler@3.1.4
 - @0x/sol-coverage@3.0.1
 - @0x/sol-doc@2.0.8
 - @0x/sol-profiler@3.1.3
 - @0x/sol-resolver@2.0.5
 - @0x/sol-trace@2.0.9
 - @0x/sol-tracing-utils@6.0.8
 - @0x/sra-spec@2.0.7
 - @0x/subproviders@4.0.3
 - @0x/testnet-faucets@1.0.74
 - @0x/types@2.2.0
 - @0x/typescript-typings@4.2.0
 - @0x/utils@4.2.3
 - @0x/web3-wrapper@6.0.3
 - @0x/website@0.0.77
 - @0x/contracts-asset-proxy@2.0.0
 - @0x/contracts-coordinator@1.0.0
 - @0x/contracts-erc1155@1.0.1
 - @0x/contracts-erc20@2.0.0
 - @0x/contracts-erc721@2.0.0
 - @0x/contracts-exchange@2.0.0
 - @0x/contracts-exchange-forwarder@2.0.0
 - @0x/contracts-exchange-libs@2.0.0
 - @0x/contracts-extensions@3.0.0
 - @0x/contracts-multisig@3.0.0
 - @0x/contracts-test-utils@3.1.0
 - @0x/contracts-utils@3.0.0
2019-03-20 15:26:54 +01:00
Leonid Logvinov
3f9fd7c060 Updated CHANGELOGS 2019-03-20 15:26:43 +01:00
Lawrence
6ed1412bdd Remove unnecessary copy operation in TestLibAddressArray.testAppendRealloc().
Test explicitly for newly allocated address in LibAddressArray "append" tests.
2019-03-20 10:19:46 -04:00
Lawrence
78b9a45158 Add PR#s to changelogs. 2019-03-20 10:19:46 -04:00
Lawrence
b8925baa88 Add unit tests for contracts/utils/LibAddressArray.
Fix `LibAddressArray.indexOf` returning wrong index.
2019-03-20 10:19:46 -04:00
Lawrence
87fd3f2a82 Add RevertReason.InvalidFreeMemoryPtr to packages/types. 2019-03-20 10:19:46 -04:00
Leonid Logvinov
0490ef5900 Merge pull request #1719 from 0xProject/feature/update-soliidty-parser-antlr
Update solidity-parser-antlr
2019-03-20 15:15:11 +01:00
Fabio Berger
8af164dbd2 Attempt to fix type issue 2019-03-20 15:05:21 +01:00
Fabio Berger
c994afbf3c Fix Pylint 2019-03-20 15:02:49 +01:00
Leonid Logvinov
fa36c91bd6 Remove legacy entries from AST Visitor 2019-03-20 14:50:26 +01:00
Fabio Berger
843caf86fb merge development 2019-03-20 14:32:26 +01:00
Leonid Logvinov
5b8f294aaf Update solidity-parser-antlr 2019-03-20 14:31:51 +01:00
Fabio Berger
44eef5b0e0 Fix comment 2019-03-20 14:31:10 +01:00
Fabio B
aad75840d4 Merge pull request #1718 from 0xProject/orderWatcher/fixRaceCondition
Fix race-condition in Order-watcher
2019-03-20 14:19:39 +01:00
Fabio Berger
31faef7030 Add changelog entry 2019-03-20 14:19:25 +01:00
Fabio Berger
941877a05a Fix linter 2019-03-20 13:48:59 +01:00
Fabio B
4fd4c1e8e1 Merge pull request #1717 from ochikov/fix-documentation
Fix documentation typos
2019-03-20 13:47:29 +01:00
Fabio Berger
7cd27cd9c8 Make sure we reset blockchain state 2019-03-20 13:31:55 +01:00
Fabio Berger
54dbef2b4f Add semaphore around event callbacks that all modify shared state 2019-03-20 13:31:35 +01:00
Ognyan Chikov
05424c9f33 Fix documentation typos 2019-03-20 11:37:38 +02:00
askeluv
346c6fc590 Deal with failing Github API for issues 2019-03-20 12:41:56 +08:00
Greg Hysen
7ed3afe9f0 Updated function signature for ERC1155 ProxyId - ERC1155Token -> ERC1155Assets 2019-03-19 15:35:08 -07:00
Greg Hysen
d29ed6cd49 Merge pull request #1715 from 0xProject/update/contract-wrappers/dutchAuctionMainnetAddress
Added Dutch Auction mainnet address to contract-addresses package
2019-03-19 15:18:34 -07:00
Greg Hysen
8c3abf3473 Updated changelog 2019-03-19 15:03:43 -07:00
Greg Hysen
384114d3c7 Added Dutch Auction address on mainnet to contract-addresses package 2019-03-19 15:01:24 -07:00
Greg Hysen
e8be5a0a8f Merge pull request #1673 from 0xProject/feature/contracts/erc1155ProxyIntegrationTests-2
Exchange & Proxy Integration Tests - ERC1155
2019-03-19 11:00:56 -07:00
Greg Hysen
98c6fa10e6 Added 1explicit ERC1555Poxy testsfor cwhen receiver allback data is NULLL (0x) 2019-03-19 09:37:16 -07:00
Greg Hysen
30d0bdec07 Updated changelog and yarn.lock 2019-03-19 09:37:16 -07:00
Greg Hysen
7024f29865 updated changelogs 2019-03-19 09:36:12 -07:00
Greg Hysen
29ebed9514 Added ERC1155 artifacts to log decoder for exchange wrapper 2019-03-19 09:36:11 -07:00
Greg Hysen
c0260bc44a rebased against development 2019-03-19 09:36:11 -07:00
Greg Hysen
6992bff0e0 Ran prettier & linter 2019-03-19 09:36:11 -07:00
Greg Hysen
6957e6e8f7 ERC1155 integration tests with MultiAssetProxy 2019-03-19 09:36:11 -07:00
Greg Hysen
31dbca7efc More integration tests for ERC1155 <> Multi Asset Proxy encoding / decoding 2019-03-19 09:36:11 -07:00
Greg Hysen
82b6dad1ba Exchange Integration Tests 2019-03-19 09:36:11 -07:00
Greg Hysen
5063c17e6b ERC1155 Asset Data tests + types 2019-03-19 09:36:11 -07:00
Amir Bandeali
3fff3d9c60 Merge pull request #1707 from 0xProject/fix/update-ganache
Change `evmVersion` to `constantinople` for contract compilation
2019-03-19 08:23:12 -07:00
Fabio Berger
2fbe0aed32 Fix Python tests 2019-03-19 14:53:43 +01:00
Alex Svanevik
3bdc1802cb Merge branch 'development' into pull-github-data 2019-03-19 14:31:31 +08:00
Francesco Agosti
2675833b0d Merge pull request #1709 from 0xProject/feature/website/add-Daniel
adds daniel pyrahon to website
2019-03-18 14:53:49 -07:00
fragosti
939a5b477a Run linter 2019-03-18 14:51:51 -07:00
Rahul Singireddy
dc57e7a5b3 adds daniel pyrahon to website 2019-03-18 14:19:27 -07:00
Amir Bandeali
a401b8f475 Fix web3wrapper node version test 2019-03-18 13:07:34 -07:00
Amir Bandeali
b008fabdac Change petersburg to constantinople 2019-03-18 13:07:34 -07:00
Amir Bandeali
caf286b8cb Update CHANGELOGs 2019-03-18 13:07:34 -07:00
Amir Bandeali
aea278c022 Update evmVersion to petersburg 2019-03-18 13:07:34 -07:00
Amir Bandeali
4e20fe1602 Update ganache-core to 2.5.3 2019-03-18 13:07:34 -07:00
Fabio Berger
849ca58228 Fix PR number 2019-03-18 20:40:29 +01:00
Fabio Berger
9991fca2e5 Add changelog entry for contract-addressesa 2019-03-18 20:39:02 +01:00
Fabio Berger
9c7bdcfeef Add testnet and mainnet coordinator and coordinatorRegistry addresses 2019-03-18 20:37:01 +01:00
Fabio Berger
b5463d522b Add PR numbers 2019-03-18 17:30:10 +01:00
Fabio Berger
af0d830103 Update coordinator wrapper 2019-03-18 17:20:58 +01:00
Fabio Berger
d4187dffa3 Add createCoordinatorApprovalTypedData method to order-utils and use in Coordinator tests 2019-03-18 17:20:51 +01:00
Fabio Berger
a7f06f2be5 Update coordinator abi-gen-wrapper 2019-03-18 16:44:11 +01:00
Fabio Berger
7ff7d1a185 Merge branch 'development' into addCoordinatorSupport
* development:
  Fix order-watcher version
2019-03-18 12:00:18 +01:00
Fabio Berger
d3ab612a89 Fix order-watcher version 2019-03-18 11:59:56 +01:00
Fabio Berger
e3bc80e027 Merge branch 'development' into addCoordinatorSupport
* development: (93 commits)
  Linting
  Copied MixinAssetProxyDispatcher from exchange
  Added deployed contract packages to readme (and link to top-level readme)
  Bumped version of ERC1155Proxy to 0.5.5 + merged ERC20Proxy/ERC721Proxy/MultiAssetProxy dependencies into base contract files
  Make credits program participants 1 row
  Correct comment in `hashEIP712Message()` in `LibEIP712Domai.sol`. Merge janky changelog notes in `types` package. Correct changelog note in `coordinator` changelog.
  Add PR numbers to changelogs.
  additional zero outcome tests
  renamed perUnitValue to valueMultiplier
  added test for amount=0
  Adjusted changelog version since nothing has been published during this PR
  Added calldatacopy comment
  Do not revert if value or amount are zero. Only if amount is non-zero and there is an overflow.
  updated comment for calldatacopy
  yarn.lock for erc1155 proxy
  added exports for 1155 proxy
  Renamed tokenIds -> ids, tokenValues -> values, callbackData -> data to be consistent with the ERC1155 reference implementation.
  Rebased against development
  Ran prettier
  Updated changelogs and documentation for erc1155 proxy
  ...
2019-03-18 11:20:22 +01:00
Alex Svanevik
a8720806f1 Merge pull request #1702 from 0xProject/fix/pipeline/replace-edps-endpoint
Changed EDPS endpoint to a 0x AWS one
2019-03-18 18:09:31 +08:00
askeluv
5aac4c2e5d Linting 2019-03-18 17:36:19 +08:00
Amir Bandeali
6fa645aab9 Merge pull request #1705 from merklejerk/feature/contracts/coordinator-tx-eip712-mixed-domains
Separate domains for Coordinator transactions and approvals
2019-03-16 16:21:01 -07:00
Greg Hysen
842ea4645b Merge pull request #1701 from 0xProject/feature/contracts/erc1155ProxySolidity055
Upgrade asset-proxy package to solidity 0.5.5
2019-03-15 21:32:57 -07:00
Greg Hysen
e1cfbcd4f6 Copied MixinAssetProxyDispatcher from exchange 2019-03-15 21:16:21 -07:00
Greg Hysen
6f17ff55fa Added deployed contract packages to readme (and link to top-level readme) 2019-03-15 21:16:18 -07:00
Greg Hysen
d88af4dfa6 Bumped version of ERC1155Proxy to 0.5.5 + merged ERC20Proxy/ERC721Proxy/MultiAssetProxy dependencies into base contract files 2019-03-15 19:02:24 -07:00
fragosti
bb0ba21e92 Merge https://github.com/0xProject/0x-monorepo into development 2019-03-15 16:48:41 -07:00
fragosti
f0753c8e58 Make credits program participants 1 row 2019-03-15 16:48:18 -07:00
Lawrence Forman
4c55004b08 Correct comment in hashEIP712Message() in LibEIP712Domai.sol.
Merge janky changelog notes in `types` package.
Correct changelog note in `coordinator` changelog.
2019-03-15 19:23:56 -04:00
Lawrence Forman
ae24119c09 Merge branch 'development' into feature/contracts/coordinator-tx-eip712-mixed-domains 2019-03-15 19:10:44 -04:00
Lawrence Forman
b8753d8f20 Add PR numbers to changelogs. 2019-03-15 18:29:26 -04:00
Greg Hysen
bab368b956 Merge pull request #1661 from 0xProject/feature/contracts/erc1155Proxy-4
ERC1155 Asset Proxy
2019-03-15 15:25:55 -07:00
Greg Hysen
22bc1fb21e additional zero outcome tests 2019-03-15 15:05:52 -07:00
Greg Hysen
63ba764de8 renamed perUnitValue to valueMultiplier 2019-03-15 15:05:52 -07:00
Greg Hysen
6a7530d741 added test for amount=0 2019-03-15 15:05:52 -07:00
Greg Hysen
eb9bf7c4f9 Adjusted changelog version since nothing has been published during this PR 2019-03-15 15:05:52 -07:00
Greg Hysen
b6571d0ca3 Added calldatacopy comment 2019-03-15 15:05:52 -07:00
Greg Hysen
9207d1c680 Do not revert if value or amount are zero. Only if amount is non-zero and there is an overflow. 2019-03-15 15:05:52 -07:00
Greg Hysen
f783c9bb25 updated comment for calldatacopy 2019-03-15 15:05:52 -07:00
Greg Hysen
df5786deda yarn.lock for erc1155 proxy 2019-03-15 15:05:51 -07:00
Greg Hysen
de971e6c46 added exports for 1155 proxy 2019-03-15 15:05:02 -07:00
Greg Hysen
2a6ed0c96e Renamed tokenIds -> ids, tokenValues -> values, callbackData -> data to be consistent with the ERC1155 reference implementation. 2019-03-15 15:05:02 -07:00
Greg Hysen
9ec380777a Rebased against development 2019-03-15 15:05:02 -07:00
Greg Hysen
8916d0d367 Ran prettier 2019-03-15 15:05:02 -07:00
Greg Hysen
1e5648111e Updated changelogs and documentation for erc1155 proxy 2019-03-15 15:05:02 -07:00
Greg Hysen
ae51cfe8b9 Added method descriptions to erc1155 proxy wrapper 2019-03-15 15:05:02 -07:00
Greg Hysen
05ef250ab4 Ran prettier & linter 2019-03-15 15:05:02 -07:00
Greg Hysen
38e4871f32 Moved transferFrom with/without logs into ERC1155 Proxy Wrapper 2019-03-15 15:05:02 -07:00
Greg Hysen
a86ba7af2e moved transferFrom into ERC1155 Proxy Wrapper 2019-03-15 15:05:02 -07:00
Greg Hysen
5704afc54c ERC1155 Asset Data tests + types 2019-03-15 15:05:02 -07:00
Greg Hysen
55c4fc9aca Ran prettier / linter 2019-03-15 15:05:02 -07:00
Greg Hysen
888c17353b Renamed erc1155token to erc1155Contract in proxy tests 2019-03-15 15:05:02 -07:00
Greg Hysen
054c0e91a3 removed erc1155 proxy tests from general proxy test file 2019-03-15 15:05:02 -07:00
Greg Hysen
4dfb610eba updated erc1155 proxy tests and moved to their own test file 2019-03-15 15:05:02 -07:00
Greg Hysen
008eb8dd8b cleaning up erc1155 proxy tests 2019-03-15 15:05:02 -07:00
Greg Hysen
2882c4bb89 test with several tokens erc1155 proxy 2019-03-15 15:05:02 -07:00
Greg Hysen
4473851f5b Remaining tests for erc1155 proxy 2019-03-15 15:05:02 -07:00
Greg Hysen
15d9e2d3d5 Split ERC1155 Asset Proxy from ERC1155 POC implementation - squashed 2019-03-15 15:05:02 -07:00
Greg Hysen
d5d9df383e Added remaining erc1155 revert reasons to types package 2019-03-15 15:05:02 -07:00
Greg Hysen
243a04b756 tests for allowance approvals on erc1155 2019-03-15 15:05:02 -07:00
Greg Hysen
b77dcbd39b bumped revision verson for types package 2019-03-15 15:05:02 -07:00
Lawrence Forman
ad5d4bdfc5 Unexport constants from order-utils.
Directly grab the EIP712 constants from the `order-utils` package in `/contracts/coordinator/test/util/hash_utils`.
Update changelogs.
2019-03-15 18:01:43 -04:00
Lawrence Forman
54c17b0068 Ran prettier & linter.
Updated CHANGELOGs.
2019-03-15 17:32:36 -04:00
Lawrence Forman
616907eff8 Update coordinator tests to comply with mixed EIP712 domains. 2019-03-15 16:52:18 -04:00
Lawrence Forman
afaabb3673 Move Coordinator EIP712 constants from contracts/test-utils to packages/order-utils.
Export `constants` from `packages/types`.
Add `SignatureInvalid` to `RevertReason` in `packages/types`.
2019-03-15 16:52:18 -04:00
Lawrence Forman
1c1f625352 Add SignatureType.Invalid to Coordinator.
`LibEIP712Domain.sol` can now produce hashes for both Coordinator and Exchange data through `hashEIP712CoordinatorMessage()` and `hashEIP712ExchangeMessage()`.
Coordinator now only uses its own domain for approval hashes, and the Exchange's domain for transaction hashes.
2019-03-15 16:52:18 -04:00
fragosti
d3f45d2148 Remove facebook from credits page 2019-03-15 11:30:36 -07:00
Xianny
7326dbd108 add greenhouse (#1690) 2019-03-15 10:37:52 -07:00
F. Eugene Aumson
4bf311a282 Enable cryptokitties data from nonfungible.com (#1680)
* enable cryptokitties

    Recall that nonfungible.com sent us an initial data dump so that we
    wouldn't have to pull everything from the API. And recall that we're
    storing that initial dump on S3. Finally, recall that the cryptokitties
    data was particularly voluminous (~1GB), which doesn't easily transfer to
    and from S3.

    These changes provide a CLI script to partition that data (or any such data
    from nonfungible.com) into a set of smaller files; and a scraping script
    that seamlessly recombines those partitions for loading into the database.

* add chainbreakers, chibifighters & mlbcryptobaseball
2019-03-15 10:50:59 -04:00
F. Eugene Aumson
7f5a3f12ca Relay failures through command line interface (#1700)
* Relay failures through command line interface
2019-03-15 10:38:21 -04:00
askeluv
6a9b71466d Changed endpoint to an AWS one + added increased timeout 2019-03-15 15:52:32 +08:00
Amir Bandeali
70e550a25f Merge pull request #1698 from ochikov/patch-3
Update constants.ts
2019-03-14 20:25:54 -07:00
ochikov
1328882ab6 Update constants.ts 2019-03-14 18:12:50 +02:00
Jacob Evans
b378a0608d Merge pull request #1692 from 0xProject/fix/order-watcher/1550
Fix error where object could be undefined given an approval event
2019-03-14 11:30:54 +01:00
Jacob Evans
e28c6d6f9c Add a regression test for #1550 2019-03-14 10:45:20 +01:00
Jacob Evans
f57f29e426 Update changelog 2019-03-14 10:12:13 +01:00
Jacob Evans
f2857452e3 Fix error were object could be undefined given an approval event 2019-03-14 10:12:03 +01:00
Amir Bandeali
af04c294b9 Merge pull request #1693 from 0xProject/fix/contracts/unpinVersions
Unpin Solidity versions for contracts that are not deployed
2019-03-13 22:34:31 -07:00
Amir Bandeali
65c8630534 Unpin Solidity versions for contracts that are not deployed 2019-03-13 16:53:22 -07:00
askeluv
095882d016 Added Github issue entity 2019-03-13 16:30:10 +08:00
askeluv
1693506f80 name -> full_name + fixed error message for missing access token 2019-03-13 11:47:42 +08:00
Greg Hysen
667c22169f Merge pull request #1657 from 0xProject/feature/contracts/erc1155MinimalImplementation
erc1155 minimal implementation
2019-03-12 12:51:43 -07:00
Greg Hysen
c53edf6bd9 0.5.3 -> 0.5.5 in erc1155 contracts 2019-03-12 11:39:00 -07:00
Greg Hysen
b601220845 Updated package.json dependencies 2019-03-12 11:09:39 -07:00
Greg Hysen
e77a608f45 Got build working on erc1155 2019-03-11 19:07:58 -07:00
Amir Bandeali
2822e77716 Merge pull request #1682 from 0xProject/feat/contracts/solidity0.5.5
Upgrade contracts to Solidity 0.5.5
2019-03-11 17:06:28 -07:00
Greg Hysen
98227928af Added Address.sol for isContract checks to contracts-utils package 2019-03-11 16:12:31 -07:00
Greg Hysen
430afbdc80 Replaced SafeMath in ERC1155 package with the version in contracts-utils 2019-03-11 16:06:18 -07:00
Greg Hysen
dfdb48ce7d Updated README and circleci for erc1155 package 2019-03-11 15:00:41 -07:00
Greg Hysen
257d1b2b52 Set evm version to byzantium to avoid using unsupported opcodes in solidity 0.5.5 2019-03-11 15:00:41 -07:00
Greg Hysen
07200437b6 style improvements for erc1155 basic implementation 2019-03-11 15:00:41 -07:00
Greg Hysen
ebfa00d555 Added remaining erc1155 revert reasons to types package 2019-03-11 15:00:41 -07:00
Greg Hysen
421f555d57 Ran prettier 2019-03-11 14:59:58 -07:00
Greg Hysen
4b60d941cc erc1155 wrapper improvements - handle minting for mutliple addresses at once + more revert reasons 2019-03-11 14:59:58 -07:00
Greg Hysen
60d24ada62 tests for allowance approvals on erc1155 2019-03-11 14:59:58 -07:00
Greg Hysen
a1c121e2fe ignore erc1155 artifacts and wrappers for prettier 2019-03-11 14:59:58 -07:00
Greg Hysen
b3775a3ca5 more style cleanup of erc1155 basic implementation 2019-03-11 14:59:58 -07:00
Greg Hysen
5d36c97a46 Added license to utils 2019-03-11 14:59:58 -07:00
Greg Hysen
4bdd412c15 added pr to changelogs 2019-03-11 14:59:58 -07:00
Greg Hysen
46e3bcd6b9 cleaned up reference implementation revert reasons 2019-03-11 14:59:58 -07:00
Greg Hysen
68a85ddf90 removed unnecessary solhintignore 2019-03-11 14:59:58 -07:00
Greg Hysen
6eba9273cb bumped revision verson for types package 2019-03-11 14:59:58 -07:00
Greg Hysen
9de151cc14 ran prettier 2019-03-11 14:55:45 -07:00
Greg Hysen
b8c9a5dd1f renamed contracts::lib -> contracts::utils 2019-03-11 14:55:45 -07:00
Greg Hysen
4dfb3507c4 updated compiler.json 2019-03-11 14:55:45 -07:00
Greg Hysen
0cac2d407b Cleanup 2019-03-11 14:55:45 -07:00
Greg Hysen
b3106cd932 Removed DummyERC1155Token 2019-03-11 14:55:45 -07:00
Greg Hysen
c4a467fa96 Ran lint-contracts 2019-03-11 14:55:45 -07:00
Greg Hysen
cf7afbe7f6 ran linter 2019-03-11 14:55:45 -07:00
Greg Hysen
a8d58aeac4 ran prettier 2019-03-11 14:55:45 -07:00
Greg Hysen
28209e9413 cleaning 2019-03-11 14:55:45 -07:00
Greg Hysen
68ed56f2d9 some cleanup 2019-03-11 14:55:45 -07:00
Greg Hysen
0c03747807 Basic ERC1155 wrapper 2019-03-11 14:55:45 -07:00
Greg Hysen
dfe7ecbb5b Added erc1155 package to top-level package.json 2019-03-11 14:55:45 -07:00
Greg Hysen
3039d8edfa Ran prettier 2019-03-11 14:55:45 -07:00
Greg Hysen
7c850cc082 Basic ERC1155 Implementation. Derived from reference implementation, with bug fixes. 2019-03-11 14:55:45 -07:00
Alex Browne
0e07ee3d81 Merge pull request #1683 from 0xProject/feature/pipeline-entities-documentation
Add documentation for some pipeline entities
2019-03-11 11:55:43 -07:00
Amir Bandeali
14b820f2c1 Merge pull request #1685 from merklejerk/fix/order-watcher/websocket-1.0.25
Upgrade to websocket@^1.0.26 to fix broken tests
2019-03-11 11:08:28 -07:00
Fabio Berger
9366fa3b45 Add CHANGELOG entries 2019-03-11 15:29:26 +01:00
Fabio Berger
d356e9e65f Add deploying Coordinator contracts to migration script 2019-03-11 14:38:51 +01:00
Fabio Berger
230ebffd0e Generate Coordinator contract wrappers and add to abi-gen-wrappers package 2019-03-11 14:38:35 +01:00
Fabio Berger
5eedc1edca Add Coordinator contracts to contract-artifacts package 2019-03-11 14:38:00 +01:00
Fabio Berger
fa6db9411b Remove unused file 2019-03-11 13:07:38 +01:00
askeluv
b88e42a52d Prettier 2019-03-11 14:33:17 +08:00
askeluv
8d1b27d130 Added entity tests 2019-03-11 14:31:51 +08:00
askeluv
1148d37102 Added comparison details to forks vs main branch 2019-03-11 14:10:08 +08:00
askeluv
88704ce417 Prettier 2019-03-08 20:07:26 +08:00
askeluv
9f69d2cb76 Third entity: Github fork 2019-03-08 20:04:03 +08:00
Lawrence
644f54bfba Update connect package as well because it was also asking for websocket@^1.0.25. 2019-03-08 02:20:23 -08:00
Lawrence
755c4da8cc Add PR 2019-03-08 01:39:45 -08:00
Lawrence
483c77fba8 Remove websocket@1.0.25 entry from yarn.lock so yarn installs websocket@^1.0.26.
Update order-watcher's websocket dependency from ^1.0.25 (broken on some node architectures) to ^1.0.26.
2019-03-08 01:26:28 -08:00
askeluv
55fd71c5e1 Second entity: Github pull request 2019-03-08 14:37:36 +08:00
askeluv
1991bd437f First entity: Github repo 2019-03-08 12:32:21 +08:00
Amir Bandeali
22af796302 Cleanup 2019-03-07 19:36:26 -08:00
Alex Browne
a70931ffbf Add documentation for some pipeline entities. 2019-03-07 18:28:57 -08:00
Amir Bandeali
2f7dd177c1 Update CHANGELOGs 2019-03-07 15:17:56 -08:00
Amir Bandeali
d35a053efd Update remaining contract Solidity versions to 0.5.5 2019-03-07 15:17:51 -08:00
Amir Bandeali
87cc1f9415 Update TEC solidity versions 2019-03-07 14:57:13 -08:00
Amir Bandeali
e7bb524362 Update dependencies and update solc types 2019-03-07 14:57:13 -08:00
Amir Bandeali
9e03e1c742 Merge pull request #1668 from 0xProject/feat/contracts/tec-txorigin-check
Add tx.origin to TEC approvals
2019-03-07 14:55:32 -08:00
Greg Hysen
6fbfcef1fa Merge pull request #1681 from 0xProject/update/codeowners
Updated codeowners
2019-03-07 14:29:57 -08:00
Amir Bandeali
9471510086 Optimize LibAddressArray and update CHANGELOG 2019-03-07 14:29:06 -08:00
Greg Hysen
56320468fd Updated codeowners 2019-03-07 14:16:08 -08:00
Amir Bandeali
53a70bbffb Change InvalidSender err to invalidOrigin 2019-03-07 13:58:50 -08:00
David Sun
4f2e547bd6 Merge pull request #1679 from dave4506/feature/website/add-ethFinex
Add svg file for ethfinex to website
2019-03-07 12:39:52 -08:00
David Sun
af82fa7b62 fixed row issues 2019-03-07 12:35:52 -08:00
Greg Hysen
6bd1a5ab80 Merge pull request #1675 from 0xProject/feature/contracts/TECRegistry-2
Coordinator Registry
2019-03-07 11:49:49 -08:00
Greg Hysen
93568f6fd0 Coordinator Registry + tests 2019-03-07 11:32:18 -08:00
David Sun
1a3bf81c19 linted + prettier 2019-03-07 11:21:30 -08:00
David Sun
2eeabe3998 add svg file for ethfinex 2019-03-07 11:08:25 -08:00
Amir Bandeali
b1d86a7a2d Update yarn.lock 2019-03-07 11:06:17 -08:00
Amir Bandeali
6cfc9ba47b Use != instead of < in loops 2019-03-07 10:56:12 -08:00
Amir Bandeali
350474540b Optimize for loops in LibAddressArray 2019-03-07 10:56:12 -08:00
Amir Bandeali
1136e58de7 Add txOrigin to approvals 2019-03-07 10:56:12 -08:00
Amir Bandeali
558ce4713c Optimize approval hashing 2019-03-07 10:34:10 -08:00
Amir Bandeali
69c6f50dfb Optimize transaction hashing 2019-03-07 10:30:17 -08:00
Greg Hysen
babe01321c Merge pull request #1677 from 0xProject/update/contracts/tecToCoordinator
Rename TEC to Coordinator in contracts
2019-03-07 10:28:47 -08:00
Greg Hysen
ff61dc4391 Updated coordinator name in package.json 2019-03-07 10:13:44 -08:00
Greg Hysen
4da6ede9d0 More tec -> coordinator changes 2019-03-07 10:11:15 -08:00
Greg Hysen
0b1bab873e Updated contracts-tec to contracts-coordinator in package.json 2019-03-07 09:47:59 -08:00
Greg Hysen
6c60341ce8 Changed coordinator domain name to "0x Protocol Coordinator" 2019-03-07 09:28:29 -08:00
Greg Hysen
e1c1878130 Ran linter 2019-03-07 09:11:26 -08:00
Greg Hysen
fea5a39740 Ran prettier 2019-03-07 08:57:30 -08:00
Greg Hysen
9f2221a885 Updated gitignore 2019-03-07 08:37:41 -08:00
Greg Hysen
977cd2505e updated constants for TEC to Coordinator rename 2019-03-07 08:34:11 -08:00
Greg Hysen
e3f85a7c0f Updated README for coordinator package 2019-03-07 08:34:11 -08:00
Greg Hysen
d81339722e Updated CHANGELOG for coordinator package 2019-03-07 08:34:11 -08:00
Greg Hysen
f5c09e02de Remaining TEC -> Coordinator renaming 2019-03-07 08:33:22 -08:00
Greg Hysen
5e102526ec Renamed tec package to coordinator package 2019-03-07 08:33:22 -08:00
Greg Hysen
3c2efd4b67 Rename TEC to Coordinator in contracts 2019-03-07 08:33:22 -08:00
Greg Hysen
7bb93a7c32 Merge pull request #1678 from 0xProject/fix/contracts/solidityUpgradeFix
Fix contracts after Solidity 0.5.5 update
2019-03-07 08:13:01 -08:00
Greg Hysen
ac8f4ae2f9 updated changelogs of contracts packages 2019-03-06 15:45:18 -08:00
Greg Hysen
1ff49188b1 Set evm version to byzantium to avoid using unsupported opcodes in solidity 0.5.5 2019-03-06 15:10:11 -08:00
David Sun
2c329023c2 Merge pull request #1666 from dave4506/feature/website/update-states
Updated stats on website
2019-03-03 18:49:24 -08:00
David Sun
4457a300bf updated 2019-03-03 18:48:37 -08:00
Leonid Logvinov
397496aff0 Publish
- 0x.js@6.0.3
 - @0x/abi-gen@2.0.6
 - @0x/abi-gen-wrappers@4.0.2
 - @0x/assert@2.0.6
 - @0x/asset-buyer@6.0.3
 - @0x/base-contract@5.0.2
 - @0x/connect@5.0.2
 - @0x/contract-wrappers@8.0.3
 - @0x/contracts-gen@1.0.5
 - @0x/dev-tools-pages@0.0.22
 - @0x/dev-utils@2.1.3
 - @0x/fill-scenarios@3.0.2
 - @0x/instant@1.0.17
 - @0x/json-schemas@3.0.6
 - @0x/metacoin@0.0.44
 - @0x/migrations@4.0.3
 - @0x/monorepo-scripts@1.0.27
 - @0x/order-utils@7.0.2
 - @0x/order-watcher@4.0.3
 - @0x/pipeline@1.0.14
 - @0x/react-docs@2.0.7
 - @0x/react-shared@2.0.7
 - @0x/sol-compiler@3.1.3
 - @0x/sol-coverage@3.0.0
 - @0x/sol-doc@2.0.7
 - @0x/sol-profiler@3.1.2
 - @0x/sol-trace@2.0.8
 - @0x/sol-tracing-utils@6.0.7
 - @0x/sra-spec@2.0.6
 - @0x/subproviders@4.0.2
 - @0x/testnet-faucets@1.0.73
 - @0x/utils@4.2.2
 - @0x/web3-wrapper@6.0.2
 - @0x/website@0.0.76
 - @0x/contracts-asset-proxy@1.0.9
 - @0x/contracts-erc20@1.0.9
 - @0x/contracts-erc721@1.0.9
 - @0x/contracts-exchange@1.0.9
 - @0x/contracts-exchange-forwarder@1.0.9
 - @0x/contracts-exchange-libs@1.1.3
 - @0x/contracts-extensions@2.0.8
 - @0x/contracts-multisig@2.0.8
 - @0x/contracts-tec@0.0.4
 - @0x/contracts-test-utils@3.0.8
 - @0x/contracts-utils@2.0.8
2019-03-01 14:34:26 -08:00
Leonid Logvinov
7458fe0d81 Updated CHANGELOGS 2019-03-01 14:34:15 -08:00
Leonid Logvinov
453c81f634 Merge pull request #1663 from 0xProject/fix/sol-profiler
Sol profiler improvements and bug fixes
2019-03-01 14:19:41 -08:00
Leonid Logvinov
eebce4b54d Fix linter errors 2019-03-01 13:59:56 -08:00
Fabio B
f7976e18f1 Update packages/sol-profiler/src/profiler_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-03-01 13:46:47 -08:00
Fabio B
d951fe9988 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-03-01 13:46:42 -08:00
Fabio B
fd4da78075 Update packages/sol-profiler/src/profiler_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-03-01 13:46:35 -08:00
Fabio B
a025ae3f54 Update packages/sol-profiler/src/profiler_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-03-01 13:46:27 -08:00
Jacob Evans
a75ba0d903 Merge pull request #1662 from 0xProject/bug/move-contracts-test-utils
Move contracts-test-utils to dev dependencies
2019-03-01 10:35:59 -05:00
Alex Svanevik
99318ae2ba Merge pull request #1658 from 0xProject/fix/pipeline/edps-rate-limiting
Added bottleneck for EDPS to deal with rate-limiting
2019-03-01 18:11:18 +08:00
Leonid Logvinov
8369bcb605 Fix linter issues 2019-02-28 22:37:32 -08:00
askeluv
338cc69034 Removed logging 2019-03-01 14:33:19 +08:00
Leonid Logvinov
4526c52fe8 Add PR numbers 2019-02-28 20:23:24 -08:00
Leonid Logvinov
81f9bda502 Add CHANGELOG entries 2019-02-28 20:19:47 -08:00
Leonid Logvinov
46bc5463ca Change the way we access the stack in traces 2019-02-28 20:19:05 -08:00
Leonid Logvinov
bb346537ba Make sol-profiler faster 2019-02-28 20:18:44 -08:00
F. Eugene Aumson
3b5f0d5c30 Adapt to Bloxy API change (#1659)
* Adapt to Bloxy API change

We were using the `days` parameter, but that's no longer available in
the API, so our fetching of previous days (before "today") was broken.

This change gets rid of the concept of "days", and uses the API's new
`from_date` and `till_date` parameters to fetch previous days' trades.

The change to the query in `getLastSeenTimestampAsync()` was necessary
because it was returning a string (despite the `as Array<{ tx_timestamp:
number }>` cast), which was later causing problems trying to pass that
value into `new Date()`.  It worked before because we were doing some
math operations on it (multiplying it by some numbers), so coercion was
saving us.  With the change from a raw query to a `typeorm` call, the
`numberToBigIntTransformer` specified in the `DexTrade` entity is now
doing the proper type conversion for us.

The new `MAX_DAYS` constant in `pull_competing_dex_trades.ts` is
necessary in order to avoid trying to pull data all the way back to 1969
:D, which induces the API to return an HTTP 503.

* Increase trades per query to match current API doc

This is needed in order to be able to pull more than a handful of days
of data at a time (at least, with the script the way its currently
written).
2019-02-28 20:28:00 -05:00
Leonid Logvinov
808ce969d9 Fix a bug with OpCode gas costs being incorrect or NaN 2019-02-28 16:53:59 -08:00
Leonid Logvinov
16f8339f3c Add HEX_BASE to constants 2019-02-28 16:52:18 -08:00
Leonid Logvinov
25d68c3904 Add opCodeToGasCost and opCodeToParamToStackOffset to constants 2019-02-28 16:51:29 -08:00
Leonid Logvinov
77ad8e1a80 Fix a bug when TruffleArtifactAdapter wasn't correctly parsing solc config in the pre 5.0 version of trufle 2019-02-28 16:46:08 -08:00
Jacob Evans
9e8c18075a Move fill-scenarios to devDependecies 2019-02-28 17:48:40 -05:00
Jacob Evans
4278cdfd29 Add CHANGELOG 2019-02-28 17:32:08 -05:00
Jacob Evans
142c2bd0f0 Move contracts-test-utils to dev dependencies 2019-02-28 16:50:23 -05:00
Jacob Evans
13ee8686bb Merge pull request #1660 from 0xProject/bug/log-utils-process
Check for process in browser environments
2019-02-28 16:45:54 -05:00
Jacob Evans
5c06df2635 Update changelog PR 2019-02-28 15:43:07 -05:00
Jacob Evans
d69bf76341 Update CHANGELOG 2019-02-28 15:28:09 -05:00
Jacob Evans
d0d1b295b4 Check for process in browser environments 2019-02-28 15:26:07 -05:00
askeluv
e450191548 Added bottleneck to deal with rate-limiting 2019-02-28 13:08:09 +08:00
Francesco Agosti
3aee83f3d8 Merge pull request #1633 from 0xProject/feature/pipeline/concepts-schema-and-radar-depth-table
[pipeline] Add concepts schema and radar orderbook USD price concept
2019-02-27 20:40:00 -08:00
fragosti
3610a2bc8d Run linter 2019-02-27 20:23:10 -08:00
fragosti
ab559d4620 Include new test path in package.json 2019-02-27 20:11:48 -08:00
fragosti
15d308d4c5 Remove isCli method 2019-02-27 19:34:35 -08:00
Alex Svanevik
e7ea66afb5 Merge pull request #1629 from 0xProject/etherscan-exchange-transactions
Pull exchange contract transactions from Etherscan
2019-02-28 08:30:05 +08:00
David Sun
d9a1d8bde6 Merge pull request #1655 from 0xProject/feature/extensions-page-freds-jank-pr-mirror
Feature/extensions page freds jank pr mirror
2019-02-27 16:38:41 -05:00
Leonid Logvinov
9ac4486403 Merge pull request #1656 from 0xProject/fix/1635
Allow project specific coverage ignore paths by specifying `config.ignoreFilesGlobs`
2019-02-27 13:35:11 -08:00
David Sun
428afabaa3 disabling lint for prettier 2019-02-27 16:21:00 -05:00
Leonid Logvinov
9162189fa6 Add PR numbers 2019-02-27 13:09:30 -08:00
Leonid Logvinov
154ca9b760 Merge branch 'development' into fix/1635 2019-02-27 13:09:04 -08:00
Leonid Logvinov
9fcead3973 Fix the docs 2019-02-27 13:07:03 -08:00
Leonid Logvinov
2fd9d0359c Ignore node_modules, test and interfaces coverage in contracts 2019-02-27 13:06:54 -08:00
Leonid Logvinov
4cf9e030a2 Add ignoreFilesGlobs config option to sol-coverage 2019-02-27 13:06:30 -08:00
David Sun
5570d14179 fixed build issues 2019-02-27 16:05:48 -05:00
David Sun
fd3c546994 changed links 2019-02-27 15:54:09 -05:00
Leonid Logvinov
e81ae05df9 Publish
- 0x.js@6.0.2
 - @0x/asset-buyer@6.0.2
 - @0x/contract-wrappers@8.0.2
 - @0x/instant@1.0.16
 - @0x/metacoin@0.0.43
 - @0x/migrations@4.0.2
 - @0x/order-watcher@4.0.2
 - @0x/pipeline@1.0.13
 - @0x/sol-compiler@3.1.2
 - @0x/sol-coverage@2.0.6
 - @0x/sol-doc@2.0.6
 - @0x/sol-profiler@3.1.1
 - @0x/sol-trace@2.0.7
 - @0x/sol-tracing-utils@6.0.6
 - @0x/testnet-faucets@1.0.72
 - @0x/website@0.0.75
 - @0x/contracts-asset-proxy@1.0.8
 - @0x/contracts-erc20@1.0.8
 - @0x/contracts-erc721@1.0.8
 - @0x/contracts-exchange@1.0.8
 - @0x/contracts-exchange-forwarder@1.0.8
 - @0x/contracts-exchange-libs@1.1.2
 - @0x/contracts-extensions@2.0.7
 - @0x/contracts-multisig@2.0.7
 - @0x/contracts-tec@0.0.3
 - @0x/contracts-test-utils@3.0.7
 - @0x/contracts-utils@2.0.7
2019-02-27 12:45:19 -08:00
Leonid Logvinov
cb394f3a1c Updated CHANGELOGS 2019-02-27 12:45:09 -08:00
David Sun
03ed057ff6 fixed linting + prettier issues 2019-02-27 15:34:24 -05:00
Leonid Logvinov
807290ff38 Merge pull request #1654 from 0xProject/fix/truffle-config-parsing
Fix a bug when TruffleArtifactAdapter was incorrectly parsing the truffle config of the newest version
2019-02-27 12:29:05 -08:00
Leonid Logvinov
40a4b4fa7a Add an explanatory comment 2019-02-27 12:28:41 -08:00
Leonid Logvinov
b7d2ad3651 Merge pull request #1653 from 0xProject/fix/remove-redundant-log
Remove redundant logging from sol-compiler
2019-02-27 12:26:45 -08:00
David Sun
faac286f70 fixed links 2019-02-27 15:21:07 -05:00
David Sun
c6c7f6f907 added title for extensions 2019-02-27 15:01:59 -05:00
fragosti
ccd0da58cb fix build errors 2019-02-27 11:34:04 -08:00
Francesco Agosti
500e5f1b5d Merge pull request #1630 from bakkenbaeck/website-updates
[WIP] Extensions page and tweaks to website
2019-02-27 11:09:57 -08:00
Fred Carlsen
ebb6177271 Update link to whitelist filter 2019-02-27 10:49:41 +01:00
Fred Carlsen
951c256980 Remove redundant fragment 2019-02-27 10:47:59 +01:00
Fred Carlsen
a134ef03dd Update illustrations and copy 2019-02-27 10:45:39 +01:00
Leonid Logvinov
f21a9d16d0 Fix a bug when TruffleArtifactAdapter was incorrectly parsing the truffle config of the newest version 2019-02-26 16:16:44 -08:00
fragosti
42c3bb00ec move to using require.main === module 2019-02-26 16:05:20 -08:00
Leonid Logvinov
0d0fcfe49a Remove redundant logging from sol-compiler 2019-02-26 15:03:06 -08:00
Leonid Logvinov
3f0db92be6 Fix prettier 2019-02-26 14:50:34 -08:00
Leonid Logvinov
ec24c79da1 Publish
- 0x.js@6.0.1
 - @0x/abi-gen@2.0.5
 - @0x/abi-gen-wrappers@4.0.1
 - @0x/assert@2.0.5
 - @0x/asset-buyer@6.0.1
 - @0x/base-contract@5.0.1
 - @0x/connect@5.0.1
 - @0x/contract-wrappers@8.0.1
 - @0x/contracts-gen@1.0.4
 - @0x/dev-tools-pages@0.0.21
 - @0x/dev-utils@2.1.2
 - @0x/fill-scenarios@3.0.1
 - @0x/instant@1.0.15
 - @0x/json-schemas@3.0.5
 - @0x/metacoin@0.0.42
 - @0x/migrations@4.0.1
 - @0x/monorepo-scripts@1.0.26
 - @0x/order-utils@7.0.1
 - @0x/order-watcher@4.0.1
 - @0x/pipeline@1.0.12
 - @0x/react-docs@2.0.6
 - @0x/react-shared@2.0.6
 - @0x/sol-compiler@3.1.1
 - @0x/sol-coverage@2.0.5
 - @0x/sol-doc@2.0.5
 - @0x/sol-profiler@3.1.0
 - @0x/sol-resolver@2.0.4
 - @0x/sol-trace@2.0.6
 - @0x/sol-tracing-utils@6.0.5
 - @0x/sra-spec@2.0.5
 - @0x/subproviders@4.0.1
 - @0x/testnet-faucets@1.0.71
 - @0x/types@2.1.1
 - @0x/utils@4.2.1
 - @0x/web3-wrapper@6.0.1
 - @0x/website@0.0.74
 - @0x/contracts-asset-proxy@1.0.7
 - @0x/contracts-erc20@1.0.7
 - @0x/contracts-erc721@1.0.7
 - @0x/contracts-exchange@1.0.7
 - @0x/contracts-exchange-forwarder@1.0.7
 - @0x/contracts-exchange-libs@1.1.1
 - @0x/contracts-extensions@2.0.6
 - @0x/contracts-multisig@2.0.6
 - @0x/contracts-tec@0.0.2
 - @0x/contracts-test-utils@3.0.6
 - @0x/contracts-utils@2.0.6
2019-02-26 14:45:52 -08:00
Leonid Logvinov
f5fffbea04 Updated CHANGELOGS 2019-02-26 14:45:42 -08:00
Amir Bandeali
fb0a2ef248 Merge pull request #1545 from 0xProject/feat/contracts/tec
TEC MVP
2019-02-26 14:24:30 -08:00
Leonid Logvinov
240f482e8e Merge pull request #1652 from 0xProject/fix/sol-compiler-settings
Fix a bug when combining sol-compiler settings from different sources
2019-02-26 14:15:37 -08:00
Leonid Logvinov
885031d3ce Add PR number 2019-02-26 14:15:23 -08:00
fragosti
eb212de70e run linter and add doc string 2019-02-26 14:05:18 -08:00
Amir Bandeali
68323d6def Fix geth tests 2019-02-26 14:00:21 -08:00
Leonid Logvinov
7c492071f1 Merge pull request #1647 from 0xProject/feature/sol-profiler-ganache
Sol-profiler ganache
2019-02-26 13:53:55 -08:00
fragosti
8fbdef2a1d Make job look at last timestamp, fix tests 2019-02-26 13:52:18 -08:00
Leonid Logvinov
8f64784781 Fix a bug when combining sol-compiler settings from different sources 2019-02-26 13:50:45 -08:00
David Sun
1bd6095c60 Merge pull request #1651 from dave4506/fix/website/add-temporary-seo
Added temporary metadata
2019-02-26 16:38:59 -05:00
David Sun
e133a5f0f3 added temporary metadata 2019-02-26 16:38:09 -05:00
Amir Bandeali
b47886416e Unpin deps when unnecessary 2019-02-26 13:29:18 -08:00
Amir Bandeali
c522d611d1 Fix typos 2019-02-26 13:29:18 -08:00
Amir Bandeali
f6d9b6b7aa Remove unused deps 2019-02-26 13:29:18 -08:00
Amir Bandeali
1de6bca12d Add TEC integration tests 2019-02-26 13:29:18 -08:00
Amir Bandeali
2de9b862d8 Add more verification test cases 2019-02-26 13:29:18 -08:00
Amir Bandeali
3c649df3df simplify approval verification logic 2019-02-26 13:29:18 -08:00
Amir Bandeali
9bf38d9e4d Add 'contains' function to LibAddressArray 2019-02-26 13:29:18 -08:00
Amir Bandeali
dee40f038d Add more approval verification tests 2019-02-26 13:29:18 -08:00
Amir Bandeali
d0aa907418 Add TEC revert reasons 2019-02-26 13:29:18 -08:00
Amir Bandeali
8dbdffc9b4 Fix abi decoding of 0x transaction data 2019-02-26 13:29:17 -08:00
Amir Bandeali
f409780455 Add ApprovalFactory class 2019-02-26 13:29:17 -08:00
Amir Bandeali
bebcd99b3b Add signature validator tests 2019-02-26 13:29:17 -08:00
Amir Bandeali
99aeaddf42 Make internal functions public 2019-02-26 13:29:17 -08:00
Amir Bandeali
793398216f Update deps versions 2019-02-26 13:29:17 -08:00
Amir Bandeali
b353ed3157 Update deps versions 2019-02-26 13:29:17 -08:00
Amir Bandeali
8637212a17 temp 2019-02-26 13:29:17 -08:00
Amir Bandeali
c42ce38e1c Bump dep versions 2019-02-26 13:29:17 -08:00
Amir Bandeali
76d228a603 Bump solidity version 2019-02-26 13:29:17 -08:00
Amir Bandeali
5cb52faa10 Do not verify orders with a null senderAddress 2019-02-26 13:29:17 -08:00
Amir Bandeali
e67e822845 Add tests for hashing libs 2019-02-26 13:29:17 -08:00
Amir Bandeali
a52686ca3b Fix README typos 2019-02-26 13:29:17 -08:00
Amir Bandeali
7a1e6cccfd Add public wrappers for libs 2019-02-26 13:29:17 -08:00
Amir Bandeali
1166b6c2fb Do not check approvals for orders where sender == feeRecipient 2019-02-26 13:29:17 -08:00
Amir Bandeali
7a6693694c Update README 2019-02-26 13:29:17 -08:00
Amir Bandeali
6ed423d1af Make all cancels permissionless 2019-02-26 13:29:17 -08:00
Amir Bandeali
8b69444602 Add tec package to relevant files 2019-02-26 13:29:17 -08:00
Amir Bandeali
7de5e8d9c8 Update READMEs 2019-02-26 13:29:17 -08:00
Amir Bandeali
844e3d1934 Implement TEC MVP 2019-02-26 13:29:17 -08:00
Amir Bandeali
9eafbbc0ae Update solidity versions of relevant contracts 2019-02-26 13:29:17 -08:00
Amir Bandeali
74677e3d54 Rename getTransactionHex to getTransactionHashHex for clarity 2019-02-26 13:29:17 -08:00
Amir Bandeali
57f4638742 Update CHANGELOGs 2019-02-26 13:29:17 -08:00
Amir Bandeali
c7a32f2d56 Update dep versions 2019-02-26 13:29:17 -08:00
Leonid Logvinov
d2dc64aa2d Rename idx to index 2019-02-26 13:25:26 -08:00
Fabio B
edb2a34c51 Update packages/sol-tracing-utils/src/utils.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-26 13:13:56 -08:00
Leonid Logvinov
dbd9b1c5c4 Add CHANGELOG entry 2019-02-26 11:00:37 -08:00
Leonid Logvinov
c3b758845d Refactor structLogs normalization to handle ganache 2019-02-26 10:55:58 -08:00
Leonid Logvinov
4d770549fc Fix stack content reporting in custom JS tracer 2019-02-26 10:55:40 -08:00
Leonid Logvinov
a67674bae1 Fix memory cost computing 2019-02-26 10:54:54 -08:00
Leonid Logvinov
462a61da73 Move structLogs normalization right after we fetch the trace 2019-02-26 10:54:00 -08:00
Leonid Logvinov
ae8a7f6320 Remove ganache profiling warning 2019-02-26 10:50:14 -08:00
Leonid Logvinov
a23c6a0996 Fix linter issues 2019-02-26 10:03:42 -08:00
Fred Carlsen
e6594cecce Fix jumping part of animated hero logo 2019-02-26 12:41:09 +01:00
askeluv
85ed5d27f5 Bumped up timeout to 4 mins 2019-02-26 19:37:59 +08:00
askeluv
6ac9e11245 Linting 2019-02-26 11:46:21 +08:00
askeluv
9fbd809344 Improved testing - added fixtures 2019-02-26 11:42:53 +08:00
David Sun
63a098d757 Merge pull request #1643 from dave4506/feature/remove-website-vote
Removed announcement
2019-02-25 20:23:18 -05:00
David Sun
b68d9ed672 removed announcement 2019-02-25 20:21:49 -05:00
Leonid Logvinov
5934eb0559 Publish
- 0x.js@6.0.0
 - @0x/abi-gen@2.0.4
 - @0x/abi-gen-templates@2.0.1
 - @0x/abi-gen-wrappers@4.0.0
 - @0x/assert@2.0.4
 - @0x/asset-buyer@6.0.0
 - @0x/base-contract@5.0.0
 - @0x/connect@5.0.0
 - @0x/contract-addresses@2.2.2
 - @0x/contract-wrappers@8.0.0
 - @0x/contracts-gen@1.0.3
 - @0x/dev-tools-pages@0.0.20
 - @0x/dev-utils@2.1.1
 - ethereum-types@2.1.0
 - @0x/fill-scenarios@3.0.0
 - @0x/instant@1.0.14
 - @0x/json-schemas@3.0.4
 - @0x/metacoin@0.0.41
 - @0x/migrations@4.0.0
 - @0x/monorepo-scripts@1.0.25
 - @0x/order-utils@7.0.0
 - @0x/order-watcher@4.0.0
 - @0x/pipeline@1.0.11
 - @0x/react-docs@2.0.5
 - @0x/react-shared@2.0.5
 - @0x/sol-compiler@3.1.0
 - @0x/sol-coverage@2.0.4
 - @0x/sol-doc@2.0.4
 - @0x/sol-profiler@3.0.0
 - @0x/sol-resolver@2.0.3
 - @0x/sol-trace@2.0.5
 - @0x/sol-tracing-utils@6.0.4
 - @0x/sra-spec@2.0.4
 - @0x/subproviders@4.0.0
 - @0x/testnet-faucets@1.0.70
 - @0x/types@2.1.0
 - @0x/typescript-typings@4.1.0
 - @0x/utils@4.2.0
 - @0x/web3-wrapper@6.0.0
 - @0x/website@0.0.73
 - @0x/contracts-asset-proxy@1.0.6
 - @0x/contracts-erc20@1.0.6
 - @0x/contracts-erc721@1.0.6
 - @0x/contracts-exchange@1.0.6
 - @0x/contracts-exchange-forwarder@1.0.6
 - @0x/contracts-exchange-libs@1.1.0
 - @0x/contracts-extensions@2.0.5
 - @0x/contracts-multisig@2.0.5
 - @0x/contracts-test-utils@3.0.5
 - @0x/contracts-utils@2.0.5
2019-02-25 13:35:29 -08:00
Leonid Logvinov
b998d719a6 Updated CHANGELOGS 2019-02-25 13:35:17 -08:00
Leonid Logvinov
33832244cf Merge pull request #1638 from 0xProject/feature/sol-profiler-improvements
Sol profiler improvements
2019-02-25 13:19:51 -08:00
Fabio B
df8ea3b65c Merge pull request #1641 from 0xProject/fixAddresses
Fix OrderValidator and Forwarder addresses in Python package
2019-02-25 15:57:21 -05:00
Leonid Logvinov
7067d4a499 Fix prettier 2019-02-25 12:53:42 -08:00
Leonid Logvinov
3e764eafd9 Use contracts-test-utils in metacoin 2019-02-25 12:52:21 -08:00
Leonid Logvinov
4169a41eda Rename traceInfo.data to traceInfo.dataIfExists 2019-02-25 12:40:10 -08:00
Leonid Logvinov
379eab19ad FIx CHANGELOGs 2019-02-25 12:35:57 -08:00
Fabio B
6cba1f3b61 Update packages/sol-profiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-25 12:34:18 -08:00
Fabio B
5dad2404d3 Update packages/ethereum-types/src/index.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-25 12:33:58 -08:00
Fabio B
a1b20eea2c Update packages/ethereum-types/src/index.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-25 12:33:50 -08:00
Fabio Berger
af075e7b8b Fix OrderValidator and Forwarder addresses in Python package 2019-02-25 15:05:18 -05:00
Amir Bandeali
ef0a699919 Merge pull request #1604 from 0xProject/feat/exchange-libs/solc5.0
Update exchange-libs and utils Solidity versions + bugfix
2019-02-25 10:29:52 -08:00
Amir Bandeali
8279ef0e05 Add more slice tests 2019-02-25 10:12:59 -08:00
Amir Bandeali
c1cee8e951 Run lerna link before building 2019-02-25 09:59:25 -08:00
Amir Bandeali
4c17373311 Update dep versions 2019-02-25 09:59:25 -08:00
Amir Bandeali
c20972de3f Update CHANGELOGs 2019-02-25 09:59:25 -08:00
Amir Bandeali
64401f1031 Fix bug in slice functions that disallow slicing the last byte of a byte array 2019-02-25 09:59:25 -08:00
Amir Bandeali
1f895d0f27 Make constants internal 2019-02-25 09:59:25 -08:00
Amir Bandeali
5aa8ea10c3 Upgrade solc version to 0.5.3 for exchange-libs and utils 2019-02-25 09:59:25 -08:00
Fred Carlsen
cf65d4a909 Prettier fixes 2019-02-25 15:32:57 +01:00
Fred Carlsen
079f627b34 Fix linting issues 2019-02-25 15:29:24 +01:00
Fred Carlsen
f6c6cbc343 Constrain icon size to container 2019-02-25 15:22:48 +01:00
Fred Carlsen
c6cdea77b6 Fix website errors related to props/children 2019-02-25 15:22:35 +01:00
Jacob Evans
b1fd3429ae Merge pull request #1639 from 0xProject/vote/zeip-23-pst-end-date
Change vote end date to end on PST 25/02/2019
2019-02-24 12:29:07 -08:00
Jacob Evans
dc161ef08d Change vote end date to end on PST 25/02/2019 2019-02-24 12:01:45 -08:00
Leonid Logvinov
9502e789b3 Move constants up 2019-02-22 19:47:29 -08:00
Leonid Logvinov
a71aed0233 Run prettier 2019-02-22 18:16:38 -08:00
Leonid Logvinov
eda8dc278b Remove excesive exports 2019-02-22 18:01:19 -08:00
Leonid Logvinov
23a7ffb167 Fix linter 2019-02-22 17:35:14 -08:00
Leonid Logvinov
ab11aaa694 Export ContractAbi from sol-tracing-utils 2019-02-22 16:58:57 -08:00
Leonid Logvinov
83b5a2709d Remove commented code 2019-02-22 16:57:50 -08:00
Leonid Logvinov
f67f94fd6b Rename logHeader to header 2019-02-22 16:28:04 -08:00
Leonid Logvinov
4e8ae037bb Add PR numbers 2019-02-22 16:23:04 -08:00
Leonid Logvinov
04d8f46ff3 Major sol-profiler overhaul 2019-02-22 16:16:03 -08:00
fragosti
3191de68b8 Fix typo in query 2019-02-22 16:13:48 -08:00
Leonid Logvinov
047de370d6 Add logUtils.table and logUtils.header 2019-02-22 16:12:34 -08:00
Leonid Logvinov
e21dc5f026 Add all existing opcodes to OpCode 2019-02-22 16:06:55 -08:00
fragosti
f3da56773e Run prettier 2019-02-22 12:02:58 -08:00
fragosti
5197758579 Add missing file 2019-02-22 10:36:30 -08:00
Fred Carlsen
d48af7c4c2 Add icons 2019-02-22 13:42:17 +01:00
Fred Carlsen
bbafe0fc46 Add link to extensions in footer 2019-02-22 13:27:18 +01:00
Fred Carlsen
9a91f917e0 Tweak cards + add links 2019-02-22 13:03:30 +01:00
Fred Carlsen
1f681f02ae More cleanup 2019-02-22 11:23:55 +01:00
Fred Carlsen
778a86e7eb Fix linting issues 2019-02-22 11:18:04 +01:00
Fabio B
78da033441 Merge pull request #1627 from 0xProject/supportEIP1193Providers
Support EIP1193 provider interface
2019-02-21 20:26:25 -08:00
askeluv
6eb923d22f Throw error when API key is missing + use response in parser test 2019-02-22 11:21:33 +08:00
fragosti
e602afcd5f add documentation 2019-02-21 18:24:11 -08:00
askeluv
bf1115d417 Backfills automatically + prettier 2019-02-22 09:45:25 +08:00
Fabio Berger
b51038b9e7 Merge branch 'development' into supportEIP1193Providers
* development:
  Demonstrate calling contracts with tuple arrays (#1615)
  removed default meta tags in public/index.html
  fixed linting issue
  updated documentTitle component
  added metadata for pages (incomplete)
  fixed title comment-out
  removed react-document-title in favor of using react-helmet for consistency and bug fix
2019-02-21 16:45:00 -08:00
Fabio Berger
44e0b58c66 Fix migration exported types 2019-02-21 16:44:38 -08:00
Fabio Berger
3f7d5274a2 Fix version 2019-02-21 16:29:50 -08:00
Fabio Berger
c8f5f6045e Fix CI failures 2019-02-21 16:27:38 -08:00
F. Eugene Aumson
6bcc2064a2 Demonstrate calling contracts with tuple arrays (#1615) 2019-02-21 16:24:54 -08:00
Fabio Berger
3f9872d8b3 Remove getZeroExProvider method since it can be confusing 2019-02-21 16:07:23 -08:00
Fabio Berger
5814cd5fae Export supportedProvider in interface since this package is also used by external devs 2019-02-21 16:04:11 -08:00
Fabio Berger
44f8c7c548 Add TODO about consolidating type checks 2019-02-21 16:03:51 -08:00
Fabio Berger
c2549308fe Remove superfluous standardization 2019-02-21 16:00:44 -08:00
Fabio Berger
cf1a3bf4e7 Fix node types version in monorepo-scripts since it's used in test-installation and the latest version has a bug 2019-02-21 15:58:02 -08:00
fragosti
f5d668af31 Add radar_orderbook_usd_prices concept 2019-02-21 15:45:36 -08:00
Fabio Berger
b7bd4e5c51 Try fixing publish ci failure 2019-02-21 15:26:35 -08:00
fragosti
62373f969c Add concepts migrations 2019-02-21 12:51:27 -08:00
David Sun
ceb651fdd1 Merge pull request #1631 from dave4506/fix/website/remove-deplicate-meta-tags
Removed default meta tags in public/index.html
2019-02-21 10:43:40 -05:00
David Sun
8fa0f4a232 removed default meta tags in public/index.html 2019-02-21 10:20:29 -05:00
Fred Carlsen
30f2e3b606 Remove placeholder extensions 2019-02-21 13:49:35 +01:00
Fred Carlsen
7d3d997083 Merge remote-tracking branch 'upstream/development' into website-updates 2019-02-21 13:45:40 +01:00
Fred Carlsen
3955e2c84a Tweak padding 2019-02-21 13:43:47 +01:00
Fred Carlsen
6a6c41df26 Tweak extensions width 2019-02-21 13:42:03 +01:00
Fred Carlsen
1dfd2aec50 Tweak banner 2019-02-21 13:41:33 +01:00
askeluv
8885f543ae Pull exchange contract transactions from Etherscan 2019-02-21 20:37:55 +08:00
Fred Carlsen
8804e6c2ca Tweak banner 2019-02-21 11:17:01 +01:00
Fred Carlsen
88b7c214f7 Add extensions page 2019-02-21 11:16:52 +01:00
David Sun
297f3da5db Merge pull request #1626 from dave4506/fix/website/document-title-consistency-issue
Fix bug with document titles + add rich metadata for documents
2019-02-20 23:42:41 -05:00
David Sun
ec4d634677 fixed linting issue 2019-02-20 23:24:05 -05:00
David Sun
0ddec99704 updated documentTitle component 2019-02-20 23:08:04 -05:00
Fabio Berger
64cec1de3b Major version bump packages with modified exported type definitions 2019-02-20 18:07:01 -08:00
Fabio Berger
fdaf5d1fc8 Merge branch 'development' into supportEIP1193Providers
* development:
  Add constraint name to down phase as well
  Give the constraint an explicit name of token_orderbook_snapshots_pkey
  Remove comments
  Fix inconsistently named constraint
2019-02-20 18:01:23 -08:00
Fabio Berger
6baf71dca5 Make deprecation notice a warning message if used 2019-02-20 18:00:43 -08:00
Fabio Berger
9d75a72a02 Add back test 2019-02-20 17:59:53 -08:00
Francesco Agosti
4bf66d6a63 Merge pull request #1628 from 0xProject/fix/pipeline/fix-test-db-incorrectly-named-constraint
Fix inconsistently named constraint in migration
2019-02-20 17:17:16 -08:00
fragosti
8d9a550107 Add constraint name to down phase as well 2019-02-20 17:01:02 -08:00
fragosti
a076278026 Give the constraint an explicit name of token_orderbook_snapshots_pkey 2019-02-20 16:37:44 -08:00
fragosti
998dac44ee Remove comments 2019-02-20 16:09:33 -08:00
fragosti
871e81bd71 Fix inconsistently named constraint 2019-02-20 16:03:29 -08:00
Fabio Berger
d892d16b51 Merge branch 'development' into supportEIP1193Providers
* development: (37 commits)
  Factor out redundant source param in parse order functions
  Fix marquee typo
  Throw error if cannot find error in table
  Integrate one-time dump and API for nonfungible.com (#1603)
  Change optional text props to mandatory in LedgerSignNote
  Add radar_orders parseRadarOrder test
  Add parser test for Radar orderbook parsing
  Moved calculateSlippage from parsers to transformers
  Show greater than less than when minority has a vote
  Prettier
  Recieved -> Received
  Fix style for address table
  Hide ledger sign note on error
  Revert broken formatting
  Added ledger sign notification
  Fix bug in ledger address selector where provider does not exist.
  fix null column constraint issue
  Add parsing radar order test
  Rename migration to what it is called on prod and qa
  Fix type bug around Radar response
  ...
2019-02-20 14:52:58 -08:00
Fabio Berger
4cbf2781e5 Fix types so docs render 2019-02-20 14:31:40 -08:00
Fabio Berger
69653b1c7c Fix yarn.lock 2019-02-20 14:31:31 -08:00
Francesco Agosti
39390865da Merge pull request #1612 from 0xProject/feature/pipeline/add-radar
[pipeline] Add Radar orders and maker_address column to token_orderbook_snapshots
2019-02-20 14:17:42 -08:00
fragosti
4952cd5afb Factor out redundant source param in parse order functions 2019-02-20 13:45:14 -08:00
Fabio Berger
e86df96bfe Fix doc gen 2019-02-20 13:20:32 -08:00
fragosti
ef5195db90 Fix marquee typo 2019-02-20 11:43:32 -08:00
fragosti
bc7e62db9f Throw error if cannot find error in table 2019-02-20 11:40:49 -08:00
Fred Carlsen
9a7ccc20e8 Add new 404 page 2019-02-20 16:41:42 +01:00
Alex Svanevik
154e7a6a8a Merge pull request #1601 from askeluv/feature/pipeline/edps-slippage
Slippage calculations from Ethereum DEX Prices Service (EDPS)
2019-02-20 22:51:23 +08:00
Fabio Berger
ba56019f2d Add missing exported types 2019-02-19 23:59:12 -08:00
Fabio Berger
31d289c504 Add type import 2019-02-19 23:56:28 -08:00
Fabio Berger
a42b22966a Standardize bowser deps 2019-02-19 23:41:30 -08:00
Fabio Berger
17db62d463 Standardize web3-provider-engine deps 2019-02-19 23:40:45 -08:00
Fabio Berger
d6d40ea839 Improve commenty 2019-02-19 23:38:58 -08:00
Fabio Berger
eca8410dbb Update CHANGELOGs 2019-02-19 23:38:53 -08:00
Fabio Berger
eb3a530e6c Fix website build 2019-02-19 23:20:38 -08:00
Fabio Berger
26e17074c2 Fix linter issues 2019-02-19 23:09:26 -08:00
Fabio Berger
6b775628d5 Prettier fixes 2019-02-19 22:48:09 -08:00
Fabio Berger
13eb9103a7 Add back support for Web3@1.0-beta-37 and below 2019-02-19 22:48:02 -08:00
Fabio Berger
1fa82c1077 Fix up missing Provider interfaces and refactor providerUtils.standardizeOrThrow() 2019-02-19 22:34:31 -08:00
David Sun
426190181b added metadata for pages (incomplete) 2019-02-19 23:33:48 -05:00
F. Eugene Aumson
1232a9a03d Integrate one-time dump and API for nonfungible.com (#1603)
* Add script for pulling NFT trade data from nonfungible.com

* corrections for current state of API

* change data model to match data source

* change primary key

* pull data from initial dump first, then API

* pull all supported NFT's, not just cryptokitties

* disable problematic data sources

* rename function to satisfy linter

* Rename table to nonfungible_dot_com_trades

* rename parser module to nonfungible_dot_com from non_fungible_dot_com, for consistency

* correct mistaken reference to Bloxy

* rename NonfungibleDotComTrade to ...TradeResponse

* `NftTrade` -> `NonfungibleDotComTrade`

* rename files to match prior object renaming

* use fetchAsync instead of axios

* improve fetchAsync error message: include URL

* avoid non-null contraints in API trades too, not just for trades from the one-time dump

* disable mythereum publisher
2019-02-19 19:07:42 -08:00
Jacob Evans
e643c13292 Merge pull request #1622 from 0xProject/fix/governance-ledger-provider
[Governance] Ledger address selector ZRX balance
2019-02-19 17:52:42 -08:00
Jacob Evans
522736e367 Change optional text props to mandatory in LedgerSignNote 2019-02-19 17:34:06 -08:00
fragosti
12fd9c29f0 Add radar_orders parseRadarOrder test 2019-02-19 17:19:12 -08:00
fragosti
0c871b67ca Add parser test for Radar orderbook parsing 2019-02-19 16:58:11 -08:00
askeluv
379e828fc1 Moved calculateSlippage from parsers to transformers 2019-02-20 08:55:21 +08:00
Fabio Berger
fe1e8575ea Fix comments 2019-02-19 16:35:14 -08:00
Fabio Berger
8f14099adc Put all Web3.js provider interfaces next to eachother 2019-02-19 16:17:14 -08:00
Fabio Berger
852c1396ae Fix comments 2019-02-19 16:16:56 -08:00
Fabio Berger
b0f9195b57 merge development 2019-02-19 16:02:41 -08:00
Fabio Berger
98236736e0 Fix remaining Provider to SupportedProvider type 2019-02-19 15:25:47 -08:00
Jacob Evans
8b93a2816c Show greater than less than when minority has a vote 2019-02-19 14:53:18 -08:00
Leonid Logvinov
76d8a991c0 Merge pull request #1625 from 0xProject/feature/sol-compiler-offline
Sol-compiler offline mode
2019-02-19 14:21:09 -08:00
Leonid Logvinov
9186af1433 Fix a PR number 2019-02-19 14:20:13 -08:00
Alex Browne
6a473f4c57 Merge pull request #1617 from 0xProject/fix/devnet-readme-dockerhub
Update README for devnet
2019-02-19 13:47:46 -08:00
Alex Browne
42224ab534 Update README.md 2019-02-19 13:46:48 -08:00
Fabio Berger
20bcf09459 Modify providerUtils such that it simply guarentees a common sendAsync method but does not create a new instance since website depends on other properties being available 2019-02-19 13:25:57 -08:00
David Sun
5d1dd536e9 fixed title comment-out 2019-02-19 16:13:26 -05:00
David Sun
169b8807f7 removed react-document-title in favor of using react-helmet for consistency and bug fix 2019-02-19 16:10:35 -05:00
Jacob Evans
5acdab849e Prettier 2019-02-19 13:09:05 -08:00
Fabio Berger
2417084145 Rename public interface provider to supportedProvider and our internal provider to Provider 2019-02-19 12:47:01 -08:00
Jacob Evans
c16e62b5bf Recieved -> Received 2019-02-19 11:28:09 -08:00
Leonid Logvinov
6fa7d90f1f Define offlineMode as false in all smart contracts packages 2019-02-19 10:38:24 -08:00
Leonid Logvinov
1a3fd0227d Implement sol-compiler offline mode 2019-02-19 10:35:52 -08:00
Steve Klebanoff
2259b7dfcf Merge pull request #1624 from 0xProject/fix/instant-svg
[instant] Reset svg style
2019-02-19 10:08:47 -08:00
Steve Klebanoff
33fd70d0e1 reset svg because etherscan has a global svg style 2019-02-19 09:40:25 -08:00
Jacob Evans
fc906bcaae Governance tweaks 2019-02-19 09:23:28 -08:00
Jacob Evans
184e111e39 Fix style for address table 2019-02-19 09:12:29 -08:00
Fred Carlsen
ab62f50f5c Hide ledger sign note on error 2019-02-19 15:53:07 +01:00
Fred Carlsen
3eac854356 Revert broken formatting 2019-02-19 15:20:47 +01:00
Fred Carlsen
f7892cd86b Merge remote-tracking branch 'upstream/development' into governance-tweaks 2019-02-19 13:32:43 +01:00
Fred Carlsen
6e0260385c Added ledger sign notification 2019-02-19 13:32:25 +01:00
Jacob Evans
44300dabb0 Fix bug in ledger address selector where provider does not exist.
This can happen in browsers without metamask or a injected provider
2019-02-18 20:04:55 -08:00
David Sun
580c3038c8 Merge pull request #1621 from dave4506/fix/website/announcement-spacing
Added padding fix to announcements
2019-02-18 21:45:02 -05:00
David Sun
2a9175e964 added padding fix 2019-02-18 20:55:27 -05:00
Fabio Berger
5db20bbbe8 Add support for EIP1193 providers and clean up provider standardization logic 2019-02-18 15:12:29 -08:00
David Sun
ae144dff39 Merge pull request #1619 from dave4506/feature/website/add-banner-component
Adding announcement component for hero (for vote)
2019-02-18 09:13:57 -05:00
Jacob Evans
9f533efc92 Merge pull request #1620 from 0xProject/governance-vote-updates
Governance vote updates
2019-02-18 00:53:14 -08:00
Jacob Evans
76e15c4166 Yarn lock update 2019-02-18 00:41:36 -08:00
Jacob Evans
62bb2daf16 Add og-zeip23 for social sharing 2019-02-18 00:14:05 -08:00
Jacob Evans
59e292030a Update I voted badge svg 2019-02-18 00:08:55 -08:00
Jacob Evans
533fc7e444 Remove unused input 2019-02-17 23:31:02 -08:00
Jacob Evans
e5c5338eb6 Add governance to the footer 2019-02-17 23:29:47 -08:00
Jacob Evans
9463acb131 Update copy of Risk 2019-02-17 23:12:22 -08:00
Jacob Evans
e69749350b Update the formatting of ZRX (showing whole ZRX) 2019-02-17 23:09:45 -08:00
Jacob Evans
42749187ff Update copy on the banner 2019-02-17 22:51:42 -08:00
Jacob Evans
d5c2038d58 Update copy on the governance page 2019-02-17 22:24:38 -08:00
Jacob Evans
5843a61c9f Remove rounding (up) in total balance string 2019-02-17 22:16:56 -08:00
Jacob Evans
ecde2c9d7f Add todos for cleanup on duplicated code. Fix styling and typo 2019-02-17 21:53:25 -08:00
Jacob Evans
abd597c7a6 Update ZEIP from strings to numbers 2019-02-17 18:24:48 -08:00
Jacob Evans
b35e1d350b Remove unused 2019-02-17 13:26:27 -08:00
Jacob Evans
918399458d Submit the voting comment 2019-02-17 13:24:27 -08:00
Jacob Evans
72d9b7028b Handle Coinbase wallet inconsitency 2019-02-17 13:06:29 -08:00
Jacob Evans
ed9790c840 Vote: Added instant. Updated failure modes 2019-02-17 12:22:29 -08:00
Fred Carlsen
fd04bc4820 Fix linting errors 2019-02-17 12:22:29 -08:00
Fred Carlsen
58a213b7f9 Prevent overflowing content on error modal 2019-02-17 12:22:29 -08:00
Fred Carlsen
7f8bbfb4bd Fallback from EIP712 when signing 2019-02-17 12:22:29 -08:00
Fred Carlsen
8a3e64b3cd Update tally when user votes 2019-02-17 12:22:29 -08:00
Fred Carlsen
572de86d06 Add error modal 2019-02-17 12:22:28 -08:00
Fred Carlsen
88c33fa4d4 Add default color to icons 2019-02-17 12:22:28 -08:00
Jacob Evans
ee1c6a1ce1 Update copy
Co-Authored-By: sjelfull <fred@sjelfull.no>
2019-02-17 12:22:28 -08:00
Jacob Evans
09e90bea8b Update proposal title
Co-Authored-By: sjelfull <fred@sjelfull.no>
2019-02-17 12:22:28 -08:00
Fred Carlsen
bf758412c1 Import SignatureType from @0x/types 2019-02-17 12:22:28 -08:00
Fred Carlsen
0bbbf5b431 Fix no tally to prevent rounding 2019-02-17 12:22:27 -08:00
Fred Carlsen
87b2236cfb Cleanup 2019-02-17 12:22:27 -08:00
Fred Carlsen
855d2bb87f Add suffix to const name 2019-02-17 12:22:27 -08:00
Fred Carlsen
13b54a3b4d Remove Kovan prefix 2019-02-17 12:22:27 -08:00
Fred Carlsen
5d24ef4849 Remove web3 types 2019-02-17 12:22:27 -08:00
Fred Carlsen
b2da451e8d Tweak tabel formating of addres table 2019-02-17 12:22:27 -08:00
Fred Carlsen
139b66fa76 Format more links 2019-02-17 12:22:26 -08:00
Fred Carlsen
390ed5d7f1 Fix countdown and format in locale aware date 2019-02-17 12:22:26 -08:00
Fred Carlsen
16b5fb6b56 Fix countdown 2019-02-17 12:22:26 -08:00
Fred Carlsen
6205d6c885 Fix linting errors 2019-02-17 12:22:26 -08:00
Fred Carlsen
e5ea65da82 Cleanup unused parts 2019-02-17 12:22:12 -08:00
Fred Carlsen
9caa5feff5 Add derivation path change 2019-02-17 12:22:11 -08:00
Fred Carlsen
7f616356d2 Reset to voting screen when done 2019-02-17 12:21:40 -08:00
Fred Carlsen
155b5dd42f Tweak whitespace 2019-02-17 12:21:40 -08:00
Fred Carlsen
41aaf428bf Cleanup 2019-02-17 12:21:40 -08:00
Fred Carlsen
a17cdf33ea Fire onvoted callback 2019-02-17 12:21:39 -08:00
Fred Carlsen
3d5e879d5f Fix tally 2019-02-17 12:21:39 -08:00
Fred Carlsen
1a73ad3a32 Fix React errors on modal 2019-02-17 12:21:39 -08:00
Fred Carlsen
abb5e7cd39 Fix key on links 2019-02-17 12:21:39 -08:00
Fred Carlsen
cdae6de52e Lint 2019-02-17 12:21:39 -08:00
Fred Carlsen
910fe77ca3 Fix error 2019-02-17 12:21:39 -08:00
Fred Carlsen
b9a93c82d7 Linting fixes 2019-02-17 12:21:38 -08:00
Fred Carlsen
1c040bd616 Rename variable 2019-02-17 12:21:38 -08:00
Fred Carlsen
166c537938 Show balance on confirmation step 2019-02-17 12:21:38 -08:00
Fred Carlsen
79c8de5fd0 Update tally endpoint 2019-02-17 12:21:38 -08:00
Fred Carlsen
7e6d2102a5 Remove back button 2019-02-17 12:21:37 -08:00
Fred Carlsen
4f7d6132fc Remove python code 2019-02-17 12:21:37 -08:00
Fred Carlsen
b7fcc70cd9 Prettier + close button 2019-02-17 12:21:37 -08:00
Fred Carlsen
43ad27931c Update content base 2019-02-17 12:21:37 -08:00
Fred Carlsen
68dc3f75eb Use AWS endpoint when deployed 2019-02-17 12:21:37 -08:00
Fred Carlsen
e67eb6d5b4 Set strong to bold fontweight 2019-02-17 12:21:37 -08:00
Fred Carlsen
2e060bc85f Initial governance commit 2019-02-17 12:21:36 -08:00
Fred Carlsen
22f80e4b19 Fix type 2019-02-17 12:20:09 -08:00
Fred Carlsen
1ef434f95e WIP governance page 2019-02-17 12:20:08 -08:00
Tristan King
5676702da6 Add initial v0x backend and test frontend 2019-02-17 12:19:32 -08:00
David Sun
2fe0539600 added spacing + mobile changes 2019-02-16 22:34:50 -05:00
David Sun
13df5adecd added announcement component 2019-02-15 13:24:28 -05:00
fragosti
f33f808dc7 fix null column constraint issue 2019-02-14 17:17:35 -08:00
Francesco Agosti
82ed9ef25e Merge pull request #1618 from dave4506/bug/website/credit-leads-fix
Fix for credit lead form data
2019-02-14 17:15:23 -08:00
David Sun
0aa26d791d fix for credit lead form data 2019-02-14 20:14:37 -05:00
Alex Browne
255f278f5e Update README for devnet 2019-02-14 16:57:02 -08:00
Leonid Logvinov
1c76f9a0ff Merge pull request #1616 from 0xProject/feature/devnode-ws
Add WS endpoint to devnode
2019-02-15 01:47:29 +01:00
Leonid Logvinov
9a308e25a3 Add WS endpoint to devnode 2019-02-14 16:41:24 -08:00
David Sun
4b52f8c823 Merge pull request #1610 from dave4506/feature/website/infrastructure-deals
Infrastructure deals page
2019-02-14 18:21:09 -05:00
fragosti
8f7145f80a Add parsing radar order test 2019-02-14 15:07:09 -08:00
David Sun
eb17f053f7 Merged latest development to branch 2019-02-14 16:22:18 -05:00
David Sun
304e714331 changes to spacing 2019-02-14 16:02:39 -05:00
David Sun
525685f942 fixed code styling 2019-02-14 15:51:48 -05:00
David Sun
e2477b66c6 added polish to copy and mobile bugs 2019-02-14 15:36:58 -05:00
fragosti
58d51e039c Rename migration to what it is called on prod and qa 2019-02-14 10:45:48 -08:00
fragosti
cb5b5167fc Fix type bug around Radar response 2019-02-14 10:40:10 -08:00
fragosti
7d68378c3c Fix volume calculation bug 2019-02-14 09:40:38 -08:00
fragosti
87da6a947d Have migration to maker_address column working 2019-02-14 09:22:50 -08:00
askeluv
0e644da6ac Fixed linting issues 2019-02-14 17:39:12 +08:00
askeluv
d61a7c360e Self-hosted EDPS 2019-02-14 17:12:31 +08:00
askeluv
ab286d851d Changed Maps to EdpsWrappers 2019-02-14 15:30:58 +08:00
fragosti
e8b60ab292 Use remainingFillableAmount instead of maker/takerAssetAmount for amount field for Radar orders 2019-02-13 13:41:20 -08:00
fragosti
1cb7e70b42 increment MAX_PER_PAGE to 10000 2019-02-13 13:31:45 -08:00
Francesco Agosti
25b9c22845 Merge pull request #1614 from 0xProject/feature/website/faux-vote-page
Add vote placeholder page
2019-02-13 12:26:12 -08:00
fragosti
47166104fa run linter 2019-02-13 12:01:53 -08:00
fragosti
d0e0622058 PR feedback 2019-02-13 11:38:39 -08:00
fragosti
87c75a1e43 Add vote placeholder page 2019-02-13 11:25:18 -08:00
fragosti
d1cc08f1d9 Attempt to add maker_address token_orderbook_snapshots 2019-02-13 11:03:40 -08:00
David Sun
6619626486 changed dogfood s3 bucket and fixed linting issues 2019-02-13 12:14:13 -05:00
David Sun
1681ba090c changed check box 2019-02-13 11:35:05 -05:00
askeluv
c36e1ad056 Changes made as per comments - still have two minor things to fix 2019-02-13 20:23:07 +08:00
fragosti
d79c7f70be fix linting error 2019-02-12 14:58:05 -08:00
fragosti
b7eb2e4746 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/pipeline/add-radar 2019-02-12 14:56:02 -08:00
fragosti
4db9b8b0e3 Add script for pulling radar orderbook 2019-02-12 14:49:32 -08:00
fragosti
f3a537d5c2 Add radar parser 2019-02-12 14:35:50 -08:00
David Sun
6a704b8a77 Merge pull request #1611 from dave4506/feature/website/add-forum-link-footer
Added forum link
2019-02-12 17:32:25 -05:00
David Sun
df896877f8 added forum link 2019-02-12 17:24:57 -05:00
David Sun
3cb2d3dfff adding free credits page (incomplete) 2019-02-12 16:58:55 -05:00
fragosti
d5f5e79661 Add radar data source 2019-02-12 10:41:47 -08:00
askeluv
82dffe9d0e Added remaining tests + fixed linting issues 2019-02-12 19:34:05 +08:00
askeluv
d7825dd7db Added test for entity 2019-02-12 16:06:53 +08:00
askeluv
c0a2f429b6 Added saving to database 2019-02-12 12:30:10 +08:00
Fabio Berger
e909faa3ef Publish
- 0x.js@5.0.0
 - @0x/abi-gen@2.0.3
 - @0x/abi-gen-wrappers@3.0.3
 - @0x/assert@2.0.3
 - @0x/asset-buyer@5.0.4
 - @0x/base-contract@4.0.3
 - @0x/connect@4.0.4
 - @0x/contract-wrappers@7.1.0
 - @0x/contracts-gen@1.0.2
 - @0x/dev-tools-pages@0.0.19
 - @0x/dev-utils@2.1.0
 - @0x/fill-scenarios@2.0.4
 - @0x/instant@1.0.13
 - @0x/json-schemas@3.0.3
 - @0x/metacoin@0.0.40
 - @0x/migrations@3.0.4
 - @0x/monorepo-scripts@1.0.24
 - @0x/order-utils@6.1.0
 - @0x/order-watcher@3.0.4
 - @0x/pipeline@1.0.10
 - @0x/react-docs@2.0.4
 - @0x/react-shared@2.0.4
 - @0x/sol-compiler@3.0.3
 - @0x/sol-coverage@2.0.3
 - @0x/sol-doc@2.0.3
 - @0x/sol-profiler@2.0.4
 - @0x/sol-trace@2.0.4
 - @0x/sol-tracing-utils@6.0.3
 - @0x/sra-spec@2.0.3
 - @0x/subproviders@3.0.3
 - @0x/testnet-faucets@1.0.69
 - @0x/utils@4.1.0
 - @0x/web3-wrapper@5.0.0
 - @0x/website@0.0.72
 - @0x/contracts-asset-proxy@1.0.5
 - @0x/contracts-erc20@1.0.5
 - @0x/contracts-erc721@1.0.5
 - @0x/contracts-exchange@1.0.5
 - @0x/contracts-exchange-forwarder@1.0.5
 - @0x/contracts-exchange-libs@1.0.5
 - @0x/contracts-extensions@2.0.4
 - @0x/contracts-multisig@2.0.4
 - @0x/contracts-test-utils@3.0.4
 - @0x/contracts-utils@2.0.4
2019-02-09 18:44:40 +00:00
Fabio Berger
28d9fdf798 Updated CHANGELOGS 2019-02-09 18:44:28 +00:00
Fabio Berger
e9bfc44b90 Remove react deps from highlight 2019-02-09 17:28:52 +00:00
Fabio B
2a772b71f1 Merge pull request #1569 from 0xProject/feature/utils/decodeArbitrary0xCalldata
0x Transaction Data Decoder
2019-02-09 14:29:20 +00:00
Greg Hysen
233869ed80 updated changelog.json for 0x.js / order-utils / web3-wrapper 2019-02-08 17:12:58 -08:00
Greg Hysen
a9aaae7f97 Deduped random value generation from salt generation 2019-02-08 17:12:58 -08:00
Greg Hysen
500b4940a3 Improvements and conventions in utils package + abi decoder 2019-02-08 17:12:54 -08:00
Greg Hysen
6d0dc47157 updated changelog for contract wrappers 2019-02-08 16:25:30 -08:00
Greg Hysen
56e7e7d644 updated exports for contract wrappers 2019-02-08 16:25:30 -08:00
Greg Hysen
93c128ee21 Added exports for doc generation 2019-02-08 16:25:30 -08:00
Greg Hysen
c72e3667b8 ran prettier and linter 2019-02-08 16:25:30 -08:00
Greg Hysen
6406126ae3 Merged tx decoder into AbiDecoder in utils and merged zeroex tx decoder into ContractWrappers. 2019-02-08 16:25:30 -08:00
Greg Hysen
6bde77bb57 fix doc generation in contract-wrappers 2019-02-08 16:25:30 -08:00
Greg Hysen
831a628379 ran linter 2019-02-08 16:25:30 -08:00
Greg Hysen
3d2babd059 Tests for transaction decoder 2019-02-08 16:25:30 -08:00
Greg Hysen
d9c4c74a56 Added tests for ZeroExTransactionDecoder 2019-02-08 16:25:30 -08:00
Greg Hysen
5a231fb057 Prep for txData decoder tests 2019-02-08 16:25:30 -08:00
Greg Hysen
63f41df327 started writing tests for zeroex tx decoder 2019-02-08 16:25:30 -08:00
Greg Hysen
171618d32b Added comments for transaction decoder 2019-02-08 16:25:30 -08:00
Greg Hysen
f7b58e7f64 moved ZeroExTransactionDecoder into contract wrappers 2019-02-08 16:25:30 -08:00
Greg Hysen
436d87da98 Ran prettier and linter 2019-02-08 16:25:30 -08:00
Greg Hysen
896874fb99 separated tx decode classes and types into separate files 2019-02-08 16:25:30 -08:00
Greg Hysen
a9f8e80b1c Abstractd out ZeroExTransactionDecoder 2019-02-08 16:25:30 -08:00
Greg Hysen
f93cd1bb48 Can query decoder by contract address / network id OR contract name 2019-02-08 16:25:30 -08:00
Greg Hysen
8fc3a6b828 Expanding search parameters for transaction decoder 2019-02-08 16:25:30 -08:00
Greg Hysen
100840b743 Utility function to decode arbitrary 0x calldata 2019-02-08 16:25:30 -08:00
David Sun
8c8cab9309 added page [WIP] still 2019-02-08 18:06:58 -05:00
F. Eugene Aumson
629a8d6328 Add migration to fix exchange events primary keys (#1593)
* Add migration to fix exchange events primary key

* correct comment: "foreign key" -> "primary key"

* Refine hack to handle only the expected error

* Add tx hash to erc20 approval events primary key
2019-02-08 13:21:41 -05:00
Fabio B
ffdaec9f9f Merge pull request #1602 from 0xProject/feat/allow_using_existing_ganache_snapshot
Allow using Web3Factory in-process Ganache with existing snapshot
2019-02-08 17:49:33 +00:00
Fabio Berger
c794153221 Add CHANGELOG entry 2019-02-08 13:22:11 +00:00
Fabio Berger
d01837f42c Allow using Web3Factory in-process Ganache with existing snapshot 2019-02-08 13:19:47 +00:00
askeluv
7ad4cb0078 [WIP] Slippage calculations from Ethereum DEX Prices Service (EDPS) 2019-02-08 18:54:38 +08:00
David Sun
ffd8349889 Merge pull request #1581 from dave4506/feature/instant/bignumber-coerce-type
Big number input to Instant coercion to version utilized by 0x packages
2019-02-07 21:06:43 -05:00
David Sun
f3716fd813 fixed config orderSource assignment 2019-02-07 20:41:37 -05:00
Greg Hysen
1170cf1896 Merge pull request #1592 from 0xProject/feature/abiEncoder/simplifiedSigParsing
Simplified signature parsing + signature tests
2019-02-07 15:18:37 -08:00
Greg Hysen
b9ee9d2bd5 replaced typeof with _.isString 2019-02-07 15:01:29 -08:00
Greg Hysen
21c3f75efc Changelog for utils package 2019-02-07 15:01:29 -08:00
Greg Hysen
eb5f7e36e9 Signature parsing tests 2019-02-07 15:00:07 -08:00
Greg Hysen
4079563f5d More robust/simple signature parsing, using a parse tree 2019-02-07 15:00:07 -08:00
David Sun
6dabed5938 updated order coercion utils architecture and testing 2019-02-07 16:45:56 -05:00
Fabio B
3939d516e6 Merge pull request #1586 from 0xProject/addAnalyticsToDevToolsPages
Add Heap and Google analytics to Dev Tools Pages
2019-02-07 21:18:41 +00:00
Fabio Berger
5aba9d698b Only include analytics on production builds 2019-02-07 14:54:12 +00:00
Fabio Berger
3dd652e7cf Merge branch 'development' into addAnalyticsToDevToolsPages
* development: (51 commits)
  Publish
  Updated CHANGELOGS
  Updated CHANGELOGS
  Update packages/sol-compiler/CHANGELOG.json
  Update packages/sol-compiler/CHANGELOG.json
  Move from devDep to dep
  Fix linter
  Update CHANGELOG
  Re-run yarn since fails again on first run
  Add PR numbers
  Omit remapping in compiler settings equality checks
  Omit remapping in compiler settings equality checks
  Fix a bug when ast and legacyAST were not present in the artifacts even if requested
  Update yarn.lock
  Remove the bin_paths and fetch the solidity release list from github repo
  Remove postinstall hack
  Fix the undefined opts bug
  Fix sol-compiler bug with remappings causing smart recompilation to now work
  re-add postinstall hack
  Fix deps versions
  ...
2019-02-07 14:28:24 +00:00
Leonid Logvinov
f003298ce4 Publish
- 0x.js@4.0.3
 - @0x/abi-gen@2.0.2
 - @0x/abi-gen-wrappers@3.0.2
 - @0x/assert@2.0.2
 - @0x/asset-buyer@5.0.3
 - @0x/base-contract@4.0.2
 - @0x/connect@4.0.3
 - @0x/contract-wrappers@7.0.2
 - @0x/contracts-gen@1.0.1
 - @0x/dev-tools-pages@0.0.18
 - @0x/dev-utils@2.0.2
 - @0x/fill-scenarios@2.0.3
 - @0x/instant@1.0.12
 - @0x/json-schemas@3.0.2
 - @0x/metacoin@0.0.39
 - @0x/migrations@3.0.3
 - @0x/monorepo-scripts@1.0.23
 - @0x/order-utils@6.0.1
 - @0x/order-watcher@3.0.3
 - @0x/pipeline@1.0.9
 - @0x/react-docs@2.0.3
 - @0x/react-shared@2.0.3
 - @0x/sol-compiler@3.0.2
 - @0x/sol-coverage@2.0.2
 - @0x/sol-doc@2.0.2
 - @0x/sol-profiler@2.0.3
 - @0x/sol-resolver@2.0.2
 - @0x/sol-trace@2.0.3
 - @0x/sol-tracing-utils@6.0.2
 - @0x/sra-spec@2.0.2
 - @0x/subproviders@3.0.2
 - @0x/testnet-faucets@1.0.68
 - @0x/types@2.0.2
 - @0x/utils@4.0.3
 - @0x/web3-wrapper@4.0.2
 - @0x/website@0.0.71
 - @0x/contracts-asset-proxy@1.0.4
 - @0x/contracts-erc20@1.0.4
 - @0x/contracts-erc721@1.0.4
 - @0x/contracts-exchange@1.0.4
 - @0x/contracts-exchange-forwarder@1.0.4
 - @0x/contracts-exchange-libs@1.0.4
 - @0x/contracts-extensions@2.0.3
 - @0x/contracts-multisig@2.0.3
 - @0x/contracts-test-utils@3.0.3
 - @0x/contracts-utils@2.0.3
2019-02-07 15:02:05 +01:00
Leonid Logvinov
5f5ee0041f Updated CHANGELOGS 2019-02-07 15:01:53 +01:00
Leonid Logvinov
88497ddc52 Updated CHANGELOGS 2019-02-07 14:42:20 +01:00
Fabio B
e921d5ec13 Merge pull request #1589 from 0xProject/feat/lock-contract-deps
Lock dep versions in contracts packages (again)
2019-02-07 13:28:57 +00:00
Leonid Logvinov
c55974a485 Merge pull request #1596 from 0xProject/fix/sol-compiler-args
Sol-compiler bug fixes
2019-02-07 14:18:55 +01:00
Fabio B
2ff0f545f5 Update packages/sol-compiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-07 14:17:41 +01:00
Fabio B
7f2a011c3e Update packages/sol-compiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-07 14:17:23 +01:00
Fabio Berger
8af9a38c8e Move from devDep to dep 2019-02-07 13:07:36 +00:00
Leonid Logvinov
b54bafe1c5 Fix linter 2019-02-07 13:35:50 +01:00
Fabio Berger
7a9ff3846e Merge development 2019-02-07 12:33:44 +00:00
Leonid Logvinov
53fe08a348 Update CHANGELOG 2019-02-07 13:30:00 +01:00
Fabio Berger
f118e86cfe Re-run yarn since fails again on first run 2019-02-07 12:29:05 +00:00
Leonid Logvinov
2e60d5341e Add PR numbers 2019-02-07 13:24:57 +01:00
Leonid Logvinov
2ef3af0003 Omit remapping in compiler settings equality checks 2019-02-07 13:20:21 +01:00
Leonid Logvinov
2b7699c26a Omit remapping in compiler settings equality checks 2019-02-07 13:20:03 +01:00
Leonid Logvinov
d567c58d3b Fix a bug when ast and legacyAST were not present in the artifacts even if requested 2019-02-07 13:10:08 +01:00
Fabio Berger
bede3d7e29 Update yarn.lock 2019-02-07 12:01:57 +00:00
Leonid Logvinov
64d6dae672 Remove the bin_paths and fetch the solidity release list from github repo 2019-02-07 12:58:46 +01:00
Fabio Berger
b001fe2b08 Remove postinstall hack 2019-02-07 11:58:06 +00:00
Leonid Logvinov
c20285dd36 Fix the undefined opts bug 2019-02-07 12:30:54 +01:00
Leonid Logvinov
7e19c944b9 Merge pull request #1575 from 0xProject/feature/contracts-gen
Contracts generator
2019-02-07 12:23:00 +01:00
Leonid Logvinov
fd4d3cff88 Fix sol-compiler bug with remappings causing smart recompilation to now work 2019-02-07 12:13:24 +01:00
Fabio Berger
5ff646ca8e re-add postinstall hack 2019-02-07 10:53:14 +00:00
Leonid Logvinov
88432a5e67 Fix deps versions 2019-02-07 11:49:59 +01:00
Leonid Logvinov
7519d60fb7 Fix linter issues 2019-02-07 11:29:04 +01:00
Leonid Logvinov
de23428069 Merge development 2019-02-07 11:15:37 +01:00
Amir Bandeali
9089bf2c5f Lock dep versions in contracts packages 2019-02-06 21:10:35 -08:00
Fabio Berger
2a344e26cc Publish
- 0x.js@4.0.2
 - @0x/asset-buyer@5.0.2
 - @0x/connect@4.0.2
 - @0x/contract-wrappers@7.0.1
 - @0x/dev-tools-pages@0.0.17
 - @0x/fill-scenarios@2.0.2
 - @0x/instant@1.0.11
 - @0x/migrations@3.0.2
 - @0x/monorepo-scripts@1.0.22
 - @0x/order-utils@6.0.0
 - @0x/order-watcher@3.0.2
 - @0x/pipeline@1.0.8
 - @0x/react-docs@2.0.2
 - @0x/react-shared@2.0.2
 - @0x/testnet-faucets@1.0.67
 - @0x/website@0.0.70
 - @0x/contracts-asset-proxy@1.0.3
 - @0x/contracts-erc20@1.0.3
 - @0x/contracts-erc721@1.0.3
 - @0x/contracts-exchange@1.0.3
 - @0x/contracts-exchange-forwarder@1.0.3
 - @0x/contracts-exchange-libs@1.0.3
 - @0x/contracts-extensions@2.0.2
 - @0x/contracts-multisig@2.0.2
 - @0x/contracts-test-utils@3.0.2
 - @0x/contracts-utils@2.0.2
2019-02-07 01:53:15 +00:00
Fabio Berger
af26403a86 Updated CHANGELOGS 2019-02-07 01:53:02 +00:00
Fabio B
3af6c8fe1d Merge pull request #1595 from 0xProject/fix-order-utils-doc-rendering
Stop exporting EIP712 schemas
2019-02-07 01:24:32 +00:00
Fabio Berger
b883b183a6 Stop exporting EIP712 schemas 2019-02-07 01:03:43 +00:00
Fabio Berger
ac58ace8cf Add CHANGELOG entry about faux publish of contract packages 2019-02-07 00:16:39 +00:00
Fabio Berger
a50eefc44e Fix paragraph rendering on wiki 2019-02-06 14:08:45 +00:00
Fabio Berger
dbb3c5e32b Publish
- 0x.js@4.0.1
 - @0x/abi-gen@2.0.1
 - @0x/abi-gen-wrappers@3.0.1
 - @0x/assert@2.0.1
 - @0x/asset-buyer@5.0.1
 - @0x/base-contract@4.0.1
 - @0x/connect@4.0.1
 - @0x/contract-wrappers@7.0.0
 - @0x/dev-tools-pages@0.0.16
 - @0x/dev-utils@2.0.1
 - @0x/fill-scenarios@2.0.1
 - @0x/instant@1.0.10
 - @0x/json-schemas@3.0.1
 - @0x/metacoin@0.0.38
 - @0x/migrations@3.0.1
 - @0x/monorepo-scripts@1.0.21
 - @0x/order-utils@5.0.0
 - @0x/order-watcher@3.0.1
 - @0x/pipeline@1.0.7
 - @0x/react-docs@2.0.1
 - @0x/react-shared@2.0.1
 - @0x/sol-compiler@3.0.1
 - @0x/sol-coverage@2.0.1
 - @0x/sol-doc@2.0.1
 - @0x/sol-profiler@2.0.2
 - @0x/sol-resolver@2.0.1
 - @0x/sol-trace@2.0.2
 - @0x/sol-tracing-utils@6.0.1
 - @0x/sra-spec@2.0.1
 - @0x/subproviders@3.0.1
 - @0x/testnet-faucets@1.0.66
 - @0x/types@2.0.1
 - @0x/utils@4.0.2
 - @0x/web3-wrapper@4.0.1
 - @0x/website@0.0.69
 - @0x/contracts-asset-proxy@1.0.2
 - @0x/contracts-erc20@1.0.2
 - @0x/contracts-erc721@1.0.2
 - @0x/contracts-exchange@1.0.2
 - @0x/contracts-exchange-forwarder@1.0.2
 - @0x/contracts-exchange-libs@1.0.2
 - @0x/contracts-extensions@2.0.1
 - @0x/contracts-multisig@2.0.1
 - @0x/contracts-test-utils@3.0.1
 - @0x/contracts-utils@2.0.1
2019-02-06 11:41:24 +00:00
Fabio Berger
265df31750 Updated CHANGELOGS 2019-02-06 11:41:12 +00:00
Fabio Berger
9bbe56df0b Fix react-highlight dep 2019-02-06 11:24:40 +00:00
Fabio Berger
879c795fc4 Fix react-highlight dep 2019-02-06 11:07:16 +00:00
Fabio B
8b5bb97537 Merge pull request #1587 from 0xProject/fix/abiEncoder/DefaultTypesOnNullInput
Handle ABI decoding NULL for all data types
2019-02-06 10:23:21 +00:00
Greg Hysen
3d7a635543 Added NULL decoding tests for return values 2019-02-05 21:33:07 -08:00
Greg Hysen
b3ae9e6e25 updated changelog for utils 2019-02-05 19:18:00 -08:00
Greg Hysen
023ea5b3a1 Ran prettier + linter 2019-02-05 18:10:17 -08:00
Greg Hysen
2ad6bd3945 Test cases for handling NULL input for all data types 2019-02-05 18:01:38 -08:00
Greg Hysen
2326dcdb12 Handle NULL input for all data types 2019-02-05 17:30:54 -08:00
David Sun
d95af455f1 added coercion util functions 2019-02-05 16:46:51 -05:00
Fabio Berger
8de955f3d8 Add Heap and Google analytics to Dev Tools Pages 2019-02-05 21:34:29 +00:00
Amir Bandeali
b5eb47f609 Merge pull request #1576 from 0xProject/feat/transaction-hash
Add transactionHashUtils to order-utils package
2019-02-05 10:03:30 -08:00
Amir Bandeali
af4ed0f39c Update python JSON schema for 0x transactions 2019-02-05 09:26:03 -08:00
Amir Bandeali
eac254f925 Fix outdated comments and make verifyingContractAddress a required part of the 0x tx schema 2019-02-05 09:26:03 -08:00
Amir Bandeali
8246dec843 Rename getTransactionHex to getTransactionHashHex for clarity 2019-02-05 09:26:03 -08:00
Amir Bandeali
4514da0646 Update CHANGELOGs 2019-02-05 09:26:03 -08:00
Amir Bandeali
9abd6f5695 Allow custom domains in eip712Utils 2019-02-05 09:23:09 -08:00
Amir Bandeali
a394967268 Use new transaction schema throughout monorepo 2019-02-05 09:23:09 -08:00
Amir Bandeali
c7c4cb9bc6 Add transaction hash utils 2019-02-05 09:23:09 -08:00
Amir Bandeali
1ada679663 Update ZeroExTransactionSchema 2019-02-05 09:23:09 -08:00
Amir Bandeali
9552676783 Add schema validation to getOrderHashBuff 2019-02-05 09:23:09 -08:00
Fabio B
69c7c03fb3 Merge pull request #1580 from 0xProject/fix/preSignedSignatureBug
Fix preSigned signature bug in SignatureUtils
2019-02-05 14:36:06 +00:00
Fabio Berger
224a58bdf2 Fix dep version 2019-02-05 14:19:48 +00:00
Fabio Berger
98427b715d Merge branch 'fix/preSignedSignatureBug' of github.com:0xProject/0x-monorepo into fix/preSignedSignatureBug
* 'fix/preSignedSignatureBug' of github.com:0xProject/0x-monorepo:
  Update packages/order-utils/CHANGELOG.json
2019-02-05 13:57:40 +00:00
Fabio Berger
a8078aa151 merge development 2019-02-05 13:55:05 +00:00
Leonid Logvinov
7b583cecb2 Publish
- 0x.js@4.0.0
 - @0x/abi-gen@2.0.0
 - @0x/abi-gen-templates@2.0.0
 - @0x/abi-gen-wrappers@3.0.0
 - @0x/assert@2.0.0
 - @0x/asset-buyer@5.0.0
 - @0x/base-contract@4.0.0
 - @0x/connect@4.0.0
 - @0x/contract-addresses@2.2.1
 - @0x/contract-wrappers@6.0.1
 - @0x/dev-tools-pages@0.0.15
 - @0x/dev-utils@2.0.0
 - ethereum-types@2.0.0
 - @0x/fill-scenarios@2.0.0
 - @0x/instant@1.0.9
 - @0x/json-schemas@3.0.0
 - @0x/metacoin@0.0.37
 - @0x/migrations@3.0.0
 - @0x/monorepo-scripts@1.0.20
 - @0x/order-utils@4.0.0
 - @0x/order-watcher@3.0.0
 - @0x/pipeline@1.0.6
 - @0x/react-docs@2.0.0
 - @0x/react-shared@2.0.0
 - @0x/sol-compiler@3.0.0
 - @0x/sol-coverage@2.0.0
 - @0x/sol-doc@2.0.0
 - @0x/sol-profiler@2.0.1
 - @0x/sol-resolver@2.0.0
 - @0x/sol-trace@2.0.1
 - @0x/sol-tracing-utils@6.0.0
 - @0x/sra-spec@2.0.0
 - @0x/subproviders@3.0.0
 - @0x/testnet-faucets@1.0.65
 - @0x/tslint-config@3.0.0
 - @0x/types@2.0.0
 - @0x/typescript-typings@4.0.0
 - @0x/utils@4.0.1
 - @0x/web3-wrapper@4.0.0
 - @0x/website@0.0.68
 - @0x/contracts-asset-proxy@1.0.1
 - @0x/contracts-erc20@1.0.1
 - @0x/contracts-erc721@1.0.1
 - @0x/contracts-exchange@1.0.1
 - @0x/contracts-exchange-forwarder@1.0.1
 - @0x/contracts-exchange-libs@1.0.1
 - @0x/contracts-extensions@2.0.0
 - @0x/contracts-multisig@2.0.0
 - @0x/contracts-test-utils@3.0.0
 - @0x/contracts-utils@2.0.0
2019-02-05 14:50:16 +01:00
Leonid Logvinov
f3d9520db2 Updated CHANGELOGS 2019-02-05 14:50:02 +01:00
Leonid Logvinov
9de4bf1225 Fix contracts-utils versions 2019-02-05 14:29:17 +01:00
Leonid Logvinov
3cb6744369 Update packages/order-utils/CHANGELOG.json
Co-Authored-By: fabioberger <kandinsky454@protonmail.ch>
2019-02-05 13:14:31 +00:00
Fabio Berger
e021460f03 Remove .only 2019-02-05 13:09:23 +00:00
Fabio Berger
0a93f3346f All CHANGELOG entry 2019-02-05 13:07:50 +00:00
Fabio Berger
332cc14dcd Add preSigned isValidSignature test for success case using smart contract & TS implementation 2019-02-05 13:07:40 +00:00
Leonid Logvinov
52e287fc7d Fix CHANGELOGs 2019-02-05 13:57:38 +01:00
Fabio Berger
7885b2e3f8 Fix test 2019-02-05 12:56:04 +00:00
Leonid Logvinov
e6683e46cc Add CHANGELOG entries to sol-tracing-utils 2019-02-05 13:47:27 +01:00
Fabio Berger
2447c72a5c Fix heap out of memory issue 2019-02-05 12:09:13 +00:00
Leonid Logvinov
4febabd3e7 Merge pull request #1583 from reserve-protocol/development
Fix default gas limit for fake txs in TraceCollectionSubprovider
2019-02-05 12:28:05 +01:00
Leonid Logvinov
4b4bfee1bc Merge pull request #1584 from reserve-protocol/patch
Hook eth_sendRawTransaction in addition to eth_sendTransaction
2019-02-05 12:26:58 +01:00
Fabio Berger
d7c9d73349 Merge branch 'development' into fix/preSignedSignatureBug
* development:
  update error msg for dependency version check
  CI test for dependencies to have the same version (#1556)
  Add missing comma
  Decode NULL as false
  Update blog link to not be /latest, and use constant in mobile nav
2019-02-05 11:16:45 +00:00
xianny
09a5b6e7a3 update error msg for dependency version check 2019-02-05 19:05:45 +08:00
Xianny
703aa38a17 CI test for dependencies to have the same version (#1556)
* add failing CI for dependencies with multiple versions

* update dependencies

* increase bundlewatch maxsize for 0x.js
2019-02-05 18:58:30 +08:00
Fabio B
b2f35057a5 Merge pull request #1582 from 0xProject/fix/utils/abiDecodeNullAsFalse
Decode NULL as False in Abi Encoder
2019-02-05 10:32:00 +00:00
Fabio Berger
a3198b7df8 Add missing comma 2019-02-05 09:33:16 +00:00
Greg Hysen
db900d180c Decode NULL as false 2019-02-04 16:32:14 -08:00
Jeremy Schlatter
3d2ed57c08 Hook eth_sendRawTransaction in addition to eth_sendTransaction 2019-02-04 14:33:13 -08:00
Jeremy Schlatter
d0b0c4a917 Fix default gas limit for fake txs in TraceCollectionSubprovider
This hex string is required to be prefixed with '0x'. If it does not have that
prefix, then the call to unmarshalTxData below will fail with:

	BigNumber Error: new BigNumber() not a number: 5b8d80

This default value is overridden if the incoming call already has a gas
estimate, in which case the parse error above does not happen. This is probably
why the error wasn't previously noticed.
2019-02-04 13:22:36 -08:00
Fabio Berger
a1bf5e8261 Merge branch 'development' into fix/preSignedSignatureBug
* development:
  Nit fixes to pipeline README
  fix typo
2019-02-04 19:33:08 +00:00
Steve Klebanoff
74293d5bc8 Merge pull request #1536 from 0xProject/fix/website/blog-link
[website] Change blog link
2019-02-04 08:59:03 -08:00
David Sun
59f48d6d57 working on big number coercion function 2019-02-04 11:19:18 -05:00
Fabio Berger
50cad8d260 Nit fixes to pipeline README 2019-02-04 16:04:19 +00:00
Fabio Berger
52f22aad81 Write failing preSign unit test 2019-02-04 16:03:48 +00:00
Fabio Berger
c03e24e10b Fix bug where passing in signerAddress instead of exchangeAddress 2019-02-04 16:03:25 +00:00
Fabio B
995a2ef8a0 Merge pull request #1567 from jeremyschlatter/patch-1
fix typo
2019-02-04 14:30:45 +00:00
Leonid Logvinov
4d75681357 Add @0x/types dependency 2019-02-04 13:11:20 +01:00
Leonid Logvinov
1a88eac9c7 Make the banner more visible 2019-02-04 13:00:15 +01:00
Leonid Logvinov
47357ddec8 Remove redundant dependencies 2019-02-04 12:58:19 +01:00
Fabio B
129ae3a737 Update packages/contracts-gen/src/index.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-04 12:56:18 +01:00
Fabio B
31d1390039 Update packages/contracts-gen/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-02-04 12:52:36 +01:00
Leonid Logvinov
6943bbcacb Temp 2019-02-04 10:38:02 +01:00
Francesco Agosti
1d3fff32a2 Merge pull request #1559 from 0xProject/feature/pipeline/fix-missing-dex-trades
[pipeline] Fix missing DEX Trades from Bloxy
2019-02-01 18:30:57 -08:00
Amir Bandeali
069c9fd4a6 Merge pull request #1568 from smithki/fix/contract-wrappers/wrong-default-address-for-order-validator-wrapper
Use correct "orderValidator" address in OrderValidatorWrapper constructor
2019-02-01 16:04:30 -08:00
fragosti
4f3cab4213 add row deletion step to migration 2019-02-01 15:50:04 -08:00
Fabio Berger
42c13ecafa Remove DDEX library from developer tools list 2019-02-01 20:12:43 +00:00
dave4506
70158c3a99 Merge pull request #1572 from dave4506/fix/instant/input-bug-firefox
Removed number selector for firefox inputs
2019-02-01 14:15:21 -05:00
Leonid Logvinov
ae8d2ae2cb Merge pull request #1542 from 0xProject/feature/solc-docker
Implement docker as another backend for sol-compiler
2019-02-01 19:58:29 +01:00
Leonid Logvinov
79adf5cec6 Merge development 2019-02-01 19:08:56 +01:00
David Sun
26d44a5392 ran prettier on codebase 2019-02-01 12:07:21 -05:00
David Sun
149f8bc9b3 removed number selector for firefox inputs 2019-01-31 21:12:13 -05:00
dave4506
78bdc2d6b4 Merge pull request #1552 from dave4506/feature/portal/fix-highlight-state-back-to-relayers
Added a highlight state to back button
2019-01-31 19:23:49 -05:00
David Sun
c9facdf825 changed button to medium blue 2019-01-31 18:56:31 -05:00
dave4506
4986a2f940 Merge pull request #1548 from dave4506/fix/website/market-making-svg-consistency
Fixed market making website svg consistency issues
2019-01-31 17:45:10 -05:00
Ian K Smith
9fd372da51 Add CHANGELOG.json entry 2019-01-31 15:04:22 -07:00
Ian K Smith
68194fde0a Use correct "orderValidator" address in order_validator_wrapper ctor 2019-01-31 14:55:06 -07:00
dave4506
155e73dc70 Merge pull request #1551 from dave4506/feature/instant/add-usdc
Added USDC support to instant
2019-01-31 16:37:14 -05:00
Jeremy Schlatter
76a1ff7c40 fix typo 2019-01-31 12:35:26 -08:00
Jacob Evans
da357f7599 Merge pull request #1533 from 0xProject/migrations/consolidate-owner-default
Remove owner from migrations
2019-01-31 16:24:11 +10:00
fragosti
4efe941937 remove extra quotes from google-site-verification 2019-01-30 17:22:33 -08:00
Francesco Agosti
612d2dbde1 Merge pull request #1563 from 0xProject/feature/website/fix-typos-add-metatag
[website] Fix website typos and add metatag
2019-01-30 16:24:57 -08:00
fragosti
0c9369bf04 fix typo 2019-01-30 15:31:34 -08:00
fragosti
94043380bb add site verification tag 2019-01-30 15:29:42 -08:00
fragosti
96e880d170 fix typos on landing 2019-01-30 15:28:55 -08:00
F. Eugene Aumson
3d8caa4694 Fix hang in Python CI test runs (#1560) 2019-01-30 15:51:59 -05:00
fragosti
4996ae8d9d run linter 2019-01-30 10:30:50 -08:00
fragosti
7b4a0d4f8a fix bloxy datasource getDexTradesAsync to allow for tx_hash repetitions in dedupe logic 2019-01-30 10:28:06 -08:00
fragosti
c2ad95fd94 update types to adhere to new dex trades and bloxy api format 2019-01-30 10:12:15 -08:00
fragosti
5ad2e9d6b6 write migration to add trade_index primary key to dex_trades 2019-01-30 10:06:04 -08:00
fragosti
8bac655dc1 Stop omitting trades because of duplicate tx hashes 2019-01-30 09:39:59 -08:00
Francesco Agosti
e29f130285 Merge pull request #1546 from dave4506/fix/change-asset-unavail-tokens-unavail
Changed error message from "Assets Unavailable" to "Tokens Unavailable"
2019-01-30 09:23:25 -08:00
Leonid Logvinov
f9d4afd713 Merge pull request #1558 from 0xProject/fix/sol-tracing-errors
Improve error messages when unable to find bytecode
2019-01-30 14:25:50 +01:00
Fabio B
d6b6f1e7d9 Update packages/sol-trace/src/revert_trace_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-30 14:25:43 +01:00
Leonid Logvinov
ea5e78b217 Improve error messages when unable to find bytecode 2019-01-30 14:12:31 +01:00
Leonid Logvinov
c9a7ef18dc Merge pull request #1557 from 0xProject/fix/sol-cov/property-range-of-null
Fix the `cannot read property range of null` bug
2019-01-30 14:11:53 +01:00
Leonid Logvinov
e23f90e41c Fix the cannot read property range of null bug 2019-01-30 14:04:19 +01:00
Leonid Logvinov
e1244648e0 Rename dependencyNameToPackagePath to dependencyNameToPath 2019-01-30 13:11:18 +01:00
Leonid Logvinov
8d72e253c8 Add a comment 2019-01-30 13:11:18 +01:00
Leonid Logvinov
33ed6a7c06 Remove + concatenation 2019-01-30 13:11:18 +01:00
Leonid Logvinov
c82a4a5760 Fail fast 2019-01-30 13:11:18 +01:00
Fabio B
445a629016 Update packages/sol-compiler/src/utils/compiler.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-30 13:08:10 +01:00
Fabio B
be7daae91a Update packages/ethereum-types/src/index.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-30 13:03:30 +01:00
David Sun
ba645692b0 updated svg asset 2019-01-29 16:19:00 -05:00
Leonid Logvinov
08f541535b Fix naming 2019-01-28 17:37:15 +01:00
Leonid Logvinov
3520d2584e Add 'useDockerisedSolc' to new packages 2019-01-28 17:27:53 +01:00
Leonid Logvinov
141ac0ca0b Merge development 2019-01-28 17:26:13 +01:00
Leonid Logvinov
0c12128f64 Temp CI 2019-01-28 17:24:44 +01:00
David Sun
1e939591ae added USDC as an option 2019-01-26 19:26:40 -05:00
Francesco Agosti
25e42c0ad4 Merge pull request #1549 from 0xProject/justinbarry-0x-monorepo-mirror
[instant] [mirror] Output Chrome 41 compatible version of 0x instant
2019-01-25 09:22:11 -08:00
Francesco Agosti
1c032a103d Merge pull request #1508 from justinbarry/development
Output Chrome 41 compatible version of 0x instant
2019-01-25 08:51:33 -08:00
Amir Bandeali
e0022cd98c Merge pull request #1547 from 0xProject/feat/contracts/lock-dependencies
Lock versions of all dependencies that are contracts packages
2019-01-24 19:47:56 -08:00
David Sun
68dbf8b2a7 added new svg assets and modified svg code to fix transparency 2019-01-24 22:31:16 -05:00
fragosti
a9ca1f3174 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into development 2019-01-24 17:35:25 -08:00
Amir Bandeali
bcff25c996 Lock versions of all dependencies that are contracts packages 2019-01-24 13:47:02 -08:00
David Sun
e272f8e1d9 changed error message 2019-01-24 15:44:42 -05:00
fragosti
5b06595a6b Merge branch 'development' of https://github.com/0xProject/0x-monorepo into development 2019-01-24 12:05:44 -08:00
fragosti
44aafe4d78 feat: add Marc to website 2019-01-24 12:05:22 -08:00
Steve Klebanoff
92cbff67d1 Merge pull request #1543 from 0xProject/fix/asset-buyer-test
[asset-buyer] Fix test (assetData string)
2019-01-23 15:33:05 -08:00
Steve Klebanoff
2166f57750 Assert that assetData is a string before we try to decode it 2019-01-23 12:51:26 -08:00
Francesco Agosti
726a52f3ee 0xproject -> 0x.org 2019-01-23 12:35:00 -08:00
Francesco Agosti
64424deb41 Update README.md 2019-01-23 12:33:10 -08:00
Amir Bandeali
69025da2dc Merge pull request #1539 from 0xProject/feat/contracts/split-packages
Split/rename/combine packages
2019-01-23 12:22:26 -08:00
Amir Bandeali
09cb3b7d50 Merge branch 'development' into feat/contracts/split-packages 2019-01-23 10:49:10 -08:00
Amir Bandeali
8566bb551b Fix geth tests in circleci config 2019-01-23 09:51:02 -08:00
Amir Bandeali
f631c2da06 Update package.json versions 2019-01-23 09:49:02 -08:00
Leonid Logvinov
19064f8cbb Add -setup_remote_docker to CI build steps 2019-01-23 17:09:54 +01:00
Leonid Logvinov
de36670bdc Make workspace path in NPMResolver optional 2019-01-23 17:02:02 +01:00
Leonid Logvinov
e8d68dc07f Implement docker as another backend for sol-compiler 2019-01-23 16:54:27 +01:00
Amir Bandeali
f81149ac2b Update all contract CHANGELOGs 2019-01-22 18:06:26 -08:00
Alex Browne
ef928aff31 Merge pull request #1537 from nitper/patch-1
[fix] allow devnet rpc to listen on any vhost
2019-01-22 16:24:29 -08:00
Jacob Evans
6f090a2fda Improve CHANGELOG 2019-01-23 11:11:32 +11:00
Benjamin
c690364ec6 Add docker-compose basic config (#1538)
Add docker-compose.yml config for 0x-devnet package. This can be expanded upon in future if necessary.
2019-01-22 15:23:11 -08:00
Leonid Logvinov
cc48433575 Merge pull request #1535 from 0xProject/feature/sol-tracing-monorepo-fixes
Sol tracing fixes
2019-01-22 23:35:31 +01:00
Amir Bandeali
fe1ef930ad Update DEPLOYS and READMEs within each package 2019-01-22 13:37:14 -08:00
Leonid Logvinov
8ce885089e Change strings to numbers in CHANGELOGs 2019-01-22 21:23:58 +01:00
Leonid Logvinov
3e910c0e03 Refactor out isInterfaceContract 2019-01-22 21:20:02 +01:00
Leonid Logvinov
7c47c52fac Fix a typo 2019-01-22 21:11:55 +01:00
nitper
744fa22f01 allow devnet rpc to listen on any vhost
geth's default value for `--rpcvhosts` is `localhost`, which does not work when trying to use the devnet in certain environments such as `docker-compose` or `gitlab-ci`
2019-01-22 14:14:12 -05:00
Steve Klebanoff
b3f996595f Update blog link to not be /latest, and use constant in mobile nav 2019-01-22 08:48:05 -08:00
Fabio B
148f12a753 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 15:10:37 +01:00
Fabio B
aedd6503d1 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 15:10:32 +01:00
Fabio B
c3ecbd3063 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 15:10:24 +01:00
Fabio B
3297b5ea34 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 15:10:17 +01:00
Fabio B
19f929761b Update packages/sol-tracing-utils/src/collect_coverage_entries.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 15:10:05 +01:00
Fabio B
d8890a03bb Update packages/sol-profiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 13:29:22 +01:00
Fabio B
4a6bdfae23 Update contracts/utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-22 13:29:07 +01:00
Leonid Logvinov
7015fc4dbc Fix tests 2019-01-22 13:02:16 +01:00
Amir Bandeali
ab4d4a69ec Update root tsconfig packages 2019-01-21 22:39:51 -08:00
Amir Bandeali
efbfd08aa0 Separate forwarder into own package 2019-01-21 21:41:22 -08:00
Amir Bandeali
f9c29c3e74 Cleanup package.json files 2019-01-21 21:41:21 -08:00
Amir Bandeali
0758f231e2 Split tokens package into erc20 and erc721 2019-01-21 21:41:21 -08:00
Amir Bandeali
9fa8619590 Move contents of examples and interfaces packages into corresponding packages 2019-01-21 21:41:21 -08:00
Amir Bandeali
174daa97c3 Add commands for building and testing all contracts 2019-01-21 21:41:21 -08:00
Amir Bandeali
43de20930b Update remaining pachages 2019-01-21 21:41:21 -08:00
Amir Bandeali
4a4c26a2e3 Split protocol package into exchange, asset-proxy, and multisig 2019-01-21 21:41:21 -08:00
Amir Bandeali
e2fe907de0 Rename libs to exchange-libs 2019-01-21 21:41:21 -08:00
Amir Bandeali
f9986a6342 Move LibAddressArray to utils package 2019-01-21 21:41:21 -08:00
Fabio B
8d367a09fe Merge pull request #1527 from 0xProject/improvements/website/dev_home
Add Python tools section to Dev Home and add missing Python packages
2019-01-21 18:26:23 +01:00
Leonid Logvinov
7e60138e9d Fix imports in TestContracts and testLibBytes to be relative. This way they show up correctly in coverage reports 2019-01-21 16:37:50 +01:00
Leonid Logvinov
e5c4390489 Fix a bug when some parts of the profiling report were missing because of the coverage ignore lines 2019-01-21 16:32:12 +01:00
Fabio Berger
dabcd2cf47 Fix linter issue 2019-01-21 16:14:17 +01:00
Leonid Logvinov
61910f264c Print reasonable warnings on bytecode collisions 2019-01-21 15:55:06 +01:00
Leonid Logvinov
ddb0e29253 SolCompilerArtifactAdapter now doesn't return the ContractData for interfaces 2019-01-21 15:52:37 +01:00
Leonid Logvinov
9d9ab2f1ee Cache bytecode lookup 2019-01-21 15:44:08 +01:00
Leonid Logvinov
ce65ac0c1c SolCompilerArtifactsAdapter now uses SolResolver under the hood which allows to resolve NPM dependencies properly 2019-01-21 15:28:39 +01:00
Jacob Evans
98203bcc8c Convert from to lower case.
fixes #1490
2019-01-21 16:02:20 +11:00
Jacob Evans
bee48d1d43 Remove partial type for TxData txDefaults 2019-01-21 15:52:39 +11:00
Jacob Evans
ebbb4df227 Remove owner from migrations 2019-01-21 15:16:16 +11:00
Fabio Berger
da7c969eeb Add entry for contract demo package 2019-01-18 22:41:55 +01:00
Fabio Berger
310d981990 Link all Python packages to Pypi 2019-01-18 22:37:13 +01:00
Fabio Berger
6275b7ba3b Remove .py suffix 2019-01-18 22:35:04 +01:00
Fabio Berger
b22a6b4e09 Create Python tools section and add missing Python packages to it 2019-01-18 13:12:19 +01:00
Leonid Logvinov
b5fd3c72a0 Merge pull request #1518 from 0xProject/feature/new-ganache
Update ganache version
2019-01-18 13:07:32 +01:00
Leonid Logvinov
bf65332763 Merge branch 'development' into feature/new-ganache 2019-01-18 13:07:19 +01:00
Leonid Logvinov
3973dec994 Merge pull request #1517 from 0xProject/feature/bignumber-8.0
Bignumber 8.0
2019-01-18 13:06:08 +01:00
Leonid Logvinov
c8212f1d4d Merge branch 'development' into feature/bignumber-8.0 2019-01-18 12:53:04 +01:00
Leonid Logvinov
e6fe728bcb Merge development 2019-01-18 12:46:16 +01:00
Fabio Berger
bef30e4209 Update footer 2019-01-18 12:36:48 +01:00
Fabio B
6c7f4c13fa Update packages/web3-wrapper/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-18 12:32:49 +01:00
Fabio B
662049914a Update packages/subproviders/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-18 12:32:41 +01:00
Greg Hysen
d7a5190d52 Merge pull request #1519 from hosyvietanh/patch-1
Allow matching of uint80 in evm_data_type
2019-01-18 01:07:28 -08:00
Steve Klebanoff
2b64661c61 Merge pull request #1512 from 0xProject/feature/instant/asset-buyer-check-liquidity
[instant] [asset-buyer] Helper methods for checking liquidity
2019-01-17 16:01:36 -08:00
Steve Klebanoff
9c29eecc30 Merge pull request #1525 from 0xProject/fix/dev-tools-pages-package
[dev-tools-pages] Remove dangling comma from package.json
2019-01-17 15:27:43 -08:00
Steve Klebanoff
25b58108bc remove dangling comma 2019-01-17 15:00:12 -08:00
Steve Klebanoff
fbde36d27b remove dangling comma 2019-01-17 14:56:44 -08:00
Steve Klebanoff
02b7a43909 Merge branch 'development' into feature/instant/asset-buyer-check-liquidity 2019-01-17 13:29:46 -08:00
Fabio Berger
e1e531a2a4 Remove react-snap from dev-tools-pages since it was messing up links on rendering pages 2019-01-17 20:59:39 +01:00
Fabio Berger
f6edf27856 Add hiring pitch to footer 2019-01-17 20:12:33 +01:00
Leonid Logvinov
277e09d061 Merge pull request #1524 from 0xProject/feature/istanbul-geth
Add notes about istanbul and Geth to website docs
2019-01-17 20:00:28 +01:00
Leonid Logvinov
1c9fb5f65f Add notes about istanbul and Geth to website docs 2019-01-17 19:59:35 +01:00
Fabio Berger
c29539aaf2 Add missing .png 2019-01-17 19:43:20 +01:00
Brandon Millman
4143baa27a Merge pull request #1523 from 0xProject/fix/react-shared/react-highlight-dep
[react-shared] Change react-highlight dep to reference fork by branch instead of commit
2019-01-17 10:26:26 -08:00
Leonid Logvinov
5816279d68 Publish
- 0x.js@3.0.3
 - @0x/asset-buyer@4.0.2
 - @0x/contract-wrappers@5.0.1
 - @0x/dev-tools-pages@0.0.14
 - @0x/instant@1.0.8
 - @0x/metacoin@0.0.36
 - @0x/monorepo-scripts@1.0.19
 - @0x/order-watcher@2.4.3
 - @0x/sol-coverage@1.0.3
 - @0x/sol-profiler@1.0.3
 - @0x/sol-trace@1.0.3
 - @0x/sol-tracing-utils@4.0.1
 - @0x/testnet-faucets@1.0.64
 - @0x/website@0.0.67
 - @0x/contracts-examples@1.0.6
 - @0x/contracts-extensions@1.2.3
 - @0x/contracts-interfaces@1.0.6
 - @0x/contracts-libs@1.0.6
 - @0x/contracts-multisig@1.0.6
 - @0x/contracts-protocol@2.2.3
 - @0x/contracts-test-utils@2.0.1
 - @0x/contracts-tokens@1.0.6
 - @0x/contracts-utils@1.0.6
2019-01-17 19:07:37 +01:00
Leonid Logvinov
0d877a8076 Updated CHANGELOGS 2019-01-17 19:07:25 +01:00
Brandon Millman
7b266bc762 Change react-highlight dep to reference fork by branch instead of commit 2019-01-17 10:03:23 -08:00
Fabio Berger
0e6aea856f http to https 2019-01-17 16:58:15 +01:00
Fabio B
e31d17ef79 Merge pull request #1509 from 0xProject/fix/dev-tools-pages/finalTouches
Dev Tools Pages - Final Touches
2019-01-17 16:56:01 +01:00
Fabio Berger
7b2a9ba698 Fix linter errors 2019-01-17 16:38:30 +01:00
Fabio Berger
87d08b0af6 Update yarn.lock 2019-01-17 16:24:11 +01:00
Fabio Berger
e68c5d5517 Enable "copy" button on all code snippets that should be copy-able 2019-01-17 16:24:03 +01:00
Leonid Logvinov
c09825660c Increase the Buffer size when fetching tags 2019-01-17 16:14:19 +01:00
Fabio Berger
293e937291 Merge branch 'development' into fix/dev-tools-pages/finalTouches
* development: (22 commits)
  Fix linter
  Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
  Update packages/sol-tracing-utils/CHANGELOG.json
  Update packages/sol-tracing-utils/CHANGELOG.json
  Add PR numbers
  Fix/simplify handling of revert trace snippets
  Fix a bug when TraceCollectionSubprovider was hanging on the fake Geth snapshot transaction
  Fix a bug when a custom Geth tracer didn't return stack entries for DELEGATECALL
  Revert devnet mining period from 1 to 0
  update team info, add brent
  Publish
  Updated CHANGELOGS
  Add commented-out pre-publish checks
  Add additional check to make sure user was added to our DockerHub org
  Update test for required amountAvailableToFill
  Add actual error message thrown
  Flag order-watcher as having a Docker image to publish
  Add publish to DockerHub step to publish flow
  Flesh out postpublish configs in packageJSON type
  Add pre-publish check to ensure publisher is logged in to docker cmdline
  ...
2019-01-17 15:59:00 +01:00
Fabio Berger
fe2f97dabd Add link to Truffle starter project 2019-01-17 15:58:41 +01:00
Leonid Logvinov
0b23aaca26 Merge pull request #1521 from 0xProject/feature/dev-tools-pre-release-fixes
0x Dev tools pre-release fixes
2019-01-17 15:53:17 +01:00
Leonid Logvinov
d92dc47df8 Last touches 2019-01-17 15:44:34 +01:00
Leonid Logvinov
8b69d918a9 Fix linter 2019-01-17 15:38:09 +01:00
Fabio Berger
3b79754b7a Remove incorrect section of docs 2019-01-17 15:37:43 +01:00
Fabio B
92ec4f5772 Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-17 15:06:42 +01:00
Fabio B
8528660f50 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-17 15:06:35 +01:00
Fabio B
edd4370cdb Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-17 15:06:29 +01:00
Leonid Logvinov
69aa1c2e91 Add PR numbers 2019-01-17 14:40:11 +01:00
Leonid Logvinov
fcdd0de9ee Fix/simplify handling of revert trace snippets 2019-01-17 14:37:15 +01:00
Leonid Logvinov
4c5bde1b54 Fix a bug when TraceCollectionSubprovider was hanging on the fake Geth snapshot transaction 2019-01-17 14:36:23 +01:00
Leonid Logvinov
83f77a2d56 Fix a bug when a custom Geth tracer didn't return stack entries for DELEGATECALL 2019-01-17 14:28:16 +01:00
Leonid Logvinov
cdac2d210e Revert devnet mining period from 1 to 0 2019-01-17 14:23:03 +01:00
Fabio Berger
737941e8c7 Add call-to-action docs button at end of instructions again 2019-01-17 13:29:47 +01:00
Fabio Berger
a873872cc7 Open 0x.org on different tab 2019-01-17 13:03:18 +01:00
Fabio Berger
56b8fd2074 Add fonts 2019-01-17 12:55:14 +01:00
Fabio Berger
b2ea4f6aaf Update requirement sections 2019-01-17 12:53:09 +01:00
hosyvietanh
ca5b024e03 Allow matching of uint80 in evm_data_type 2019-01-17 11:07:50 +07:00
Steve Klebanoff
92f5ad4f15 Use more specific helper method decodeAssetDataOrThrow 2019-01-16 17:12:08 -08:00
Steve Klebanoff
ff8250cd35 change helper method to return a boolean 2019-01-16 15:45:01 -08:00
Steve Klebanoff
466ec6b22a Change LiquidityForAssetData to return a BigNumber instead of a number to avoid losing precision 2019-01-16 14:16:49 -08:00
fragosti
beaf0a4a8a update team info, add brent 2019-01-16 11:33:57 -08:00
Fabio Berger
6871f36dad Update 0x url 2019-01-16 18:44:52 +01:00
Steve Klebanoff
a587718443 export type instead of interface for more succinct syntax 2019-01-16 09:41:12 -08:00
Steve Klebanoff
444250520a Clarify boolean variable name 2019-01-16 09:40:36 -08:00
Steve Klebanoff
bd5850f390 Merge branch 'development' into feature/instant/asset-buyer-check-liquidity 2019-01-16 09:38:38 -08:00
Steve Klebanoff
ce1c2eeab7 Remove accidental import 2019-01-16 09:37:10 -08:00
Fabio B
b08d6c3b4d Merge pull request #1510 from 0xProject/feature/monorepo-scripts/publishToDockerHub
Add DockerHub Publishing Step to Publish Flow
2019-01-16 18:35:55 +01:00
Steve Klebanoff
f269bc28cf Add PR number and fix description 2019-01-15 14:00:00 -08:00
Steve Klebanoff
af63934d2c Export types and add additional documentation 2019-01-15 13:57:31 -08:00
Steve Klebanoff
39816bef8f Merge pull request #1511 from 0xProject/fix/asset-buyer/zero-amount-available-test
Fix expectedAmountAvailableToFill  test
2019-01-15 13:04:55 -08:00
Steve Klebanoff
600b44c962 Merge branch 'development' into feature/instant/asset-buyer-check-liquidity 2019-01-15 10:43:55 -08:00
Steve Klebanoff
7a2b312d64 Merge branch 'development' into fix/asset-buyer/zero-amount-available-test 2019-01-15 10:38:23 -08:00
Leonid Logvinov
7d166dc7da Fix prettier 2019-01-15 17:34:44 +01:00
Leonid Logvinov
0720b8487c Fix a build issue 2019-01-15 17:13:20 +01:00
Leonid Logvinov
4404f92b38 Add CHANGELOG entries 2019-01-15 17:05:51 +01:00
Leonid Logvinov
0a27979464 Convert address strings to lower case before parsing them as BigNumbers 2019-01-15 16:25:26 +01:00
Leonid Logvinov
a3cb722469 Fix a bug when we didn't call isNaN function and assumed it's a property 2019-01-15 16:25:26 +01:00
Leonid Logvinov
2cca2d70d7 Add a throw reason in tests 2019-01-15 16:25:26 +01:00
Leonid Logvinov
17f313658d Add a NAN check when parsing BigNumber candidate 2019-01-15 16:25:26 +01:00
Leonid Logvinov
d304c062eb Convert address strings to lower case before parsing them as BigNumbers 2019-01-15 16:25:26 +01:00
Leonid Logvinov
3eef888e25 Update yarn.lock 2019-01-15 16:25:26 +01:00
Leonid Logvinov
20eab4257a Upgrade chai-bignumber 2019-01-15 16:25:25 +01:00
Leonid Logvinov
665dd0813e Remove unused imports 2019-01-15 16:25:25 +01:00
Leonid Logvinov
e84232cce8 Use new check for isBigNumber 2019-01-15 16:25:25 +01:00
Leonid Logvinov
de78d6a8ad Fix isBigNumber check for the new version 2019-01-15 16:25:25 +01:00
Leonid Logvinov
a085654aba Fix linting error 2019-01-15 16:25:25 +01:00
Leonid Logvinov
61c88455f4 Apply prettier 2019-01-15 16:25:25 +01:00
Leonid Logvinov
a084bbbed8 Rename cmp to comparedTo 2019-01-15 16:25:25 +01:00
Leonid Logvinov
eb393f0a66 Upgrade chai-bignumber 2019-01-15 16:25:25 +01:00
Leonid Logvinov
c3afc13dd6 Upgrade bignumber.js version 2019-01-15 16:25:24 +01:00
Leonid Logvinov
08b865d25b Add CHANGELOG entries 2019-01-15 16:19:28 +01:00
Leonid Logvinov
9932240a4d Merge branch 'development' into feature/new-ganache 2019-01-15 15:33:55 +01:00
Leonid Logvinov
f570f80674 Publish
- 0x.js@3.0.2
 - @0x/abi-gen@1.0.22
 - @0x/abi-gen-templates@1.0.2
 - @0x/abi-gen-wrappers@2.2.0
 - @0x/assert@1.0.23
 - @0x/asset-buyer@4.0.1
 - @0x/base-contract@3.0.13
 - @0x/connect@3.0.13
 - @0x/contract-addresses@2.2.0
 - @0x/contract-artifacts@1.3.0
 - @0x/contract-wrappers@5.0.0
 - @0x/dev-tools-pages@0.0.13
 - @0x/dev-utils@1.0.24
 - ethereum-types@1.1.6
 - @0x/fill-scenarios@1.1.2
 - @0x/instant@1.0.7
 - @0x/json-schemas@2.1.7
 - @0x/metacoin@0.0.35
 - @0x/migrations@2.4.0
 - @0x/monorepo-scripts@1.0.18
 - @0x/order-utils@3.1.2
 - @0x/order-watcher@2.4.2
 - @0x/pipeline@1.0.5
 - @0x/react-docs@1.0.25
 - @0x/react-shared@1.1.2
 - @0x/sol-compiler@2.0.2
 - @0x/sol-coverage@1.0.2
 - @0x/sol-doc@1.0.14
 - @0x/sol-profiler@1.0.2
 - @0x/sol-resolver@1.2.3
 - @0x/sol-trace@1.0.2
 - @0x/sol-tracing-utils@4.0.0
 - @0x/sra-spec@1.0.16
 - @0x/subproviders@2.1.11
 - @0x/testnet-faucets@1.0.63
 - @0x/tslint-config@2.0.2
 - @0x/types@1.5.2
 - @0x/typescript-typings@3.0.8
 - @0x/utils@3.0.1
 - @0x/web3-wrapper@3.2.4
 - @0x/website@0.0.66
 - @0x/contracts-examples@1.0.5
 - @0x/contracts-extensions@1.2.2
 - @0x/contracts-interfaces@1.0.5
 - @0x/contracts-libs@1.0.5
 - @0x/contracts-multisig@1.0.5
 - @0x/contracts-protocol@2.2.2
 - @0x/contracts-test-utils@2.0.0
 - @0x/contracts-tokens@1.0.5
 - @0x/contracts-utils@1.0.5
2019-01-15 15:21:53 +01:00
Leonid Logvinov
dbae6ec165 Updated CHANGELOGS 2019-01-15 15:21:42 +01:00
Fabio Berger
7c37d10d1f Merge branch 'development' into feature/monorepo-scripts/publishToDockerHub
* development: (87 commits)
  Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
  Make mapping namings direct
  Remove unused tslint disable
  Revert "Remove logAsyncErrors hack"
  Remove logAsyncErrors hack
  Refactor logAsyncErrors to follow our conventions
  Export Sources and SourceCodes out of tracing utils
  Replace console.log with logUtils.log (#1515)
  strict decoding of return values using generics
  makerAssetFillAmount -> takerAssetFillAmount
  Ran prettier
  Linter
  Fix build after rebase
  Style cleanup for Compressed Calldata in Contract Wrappers PR
  Use simpler `_.find` to locate fillOrderBai
  Updated dutch auction wrapper
  Added back abi-gen-wrappers
  Renamed signatureParser.ts to signature_parser.ts
  Renamed decode rule `structsAsObjects` to `shouldConvertStructsToObjects`
  circle build failed. New commit to resubmit job.
  ...
2019-01-15 15:13:24 +01:00
Fabio Berger
ae147e615a Merge branch 'development' into fix/dev-tools-pages/finalTouches
* development: (87 commits)
  Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
  Make mapping namings direct
  Remove unused tslint disable
  Revert "Remove logAsyncErrors hack"
  Remove logAsyncErrors hack
  Refactor logAsyncErrors to follow our conventions
  Export Sources and SourceCodes out of tracing utils
  Replace console.log with logUtils.log (#1515)
  strict decoding of return values using generics
  makerAssetFillAmount -> takerAssetFillAmount
  Ran prettier
  Linter
  Fix build after rebase
  Style cleanup for Compressed Calldata in Contract Wrappers PR
  Use simpler `_.find` to locate fillOrderBai
  Updated dutch auction wrapper
  Added back abi-gen-wrappers
  Renamed signatureParser.ts to signature_parser.ts
  Renamed decode rule `structsAsObjects` to `shouldConvertStructsToObjects`
  circle build failed. New commit to resubmit job.
  ...
2019-01-15 15:10:50 +01:00
Leonid Logvinov
18084588ea Merge pull request #1498 from 0xProject/fix/sol-cov
Sol tracing fixes
2019-01-15 14:45:02 +01:00
Fabio B
64d99dc07c Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-15 14:44:52 +01:00
Leonid Logvinov
91b57793c2 Update ganache version 2019-01-15 14:44:43 +01:00
Leonid Logvinov
63a63543be Make mapping namings direct 2019-01-15 13:37:10 +01:00
Leonid Logvinov
75a4bbc5f2 Remove unused tslint disable 2019-01-15 12:09:48 +01:00
Leonid Logvinov
c2ec4174b7 Revert "Remove logAsyncErrors hack"
This reverts commit 7ea274b731.
2019-01-15 12:09:17 +01:00
Leonid Logvinov
7ea274b731 Remove logAsyncErrors hack 2019-01-15 11:55:06 +01:00
Leonid Logvinov
d9675ad6d3 Refactor logAsyncErrors to follow our conventions 2019-01-15 11:48:04 +01:00
Leonid Logvinov
a8e32d8c87 Export Sources and SourceCodes out of tracing utils 2019-01-15 11:34:31 +01:00
Jacob Evans
16a2cf7be6 Merge pull request #1503 from 0xProject/feature/multi-asset-proxy-migration
Add MultiAssetProxy Migration
2019-01-15 13:27:07 +11:00
Jacob Evans
b4621f6a69 Merge pull request #1514 from 0xProject/bug/exchange-wrapper-matchOrders
Remove optimization from matchOrdersAsync in Exchange wrapper
2019-01-15 13:23:45 +11:00
F. Eugene Aumson
c859788fde Replace console.log with logUtils.log (#1515) 2019-01-14 18:21:12 -05:00
Greg Hysen
1c25d8e997 Merge pull request #1475 from 0xProject/feature/monorepo/useNewAbiEncoder
Use Compressed Calldata in Contract Wrappers
2019-01-14 11:48:17 -08:00
Francesco Agosti
fc89b97818 Merge pull request #1516 from 0xProject/fix/website/update-react-highlight
[website] Update react-highlight dep in website to latest commit
2019-01-14 11:33:35 -08:00
MarcZenn
1bff790628 removed implicit cached accounts dependency 2019-01-14 11:03:33 -08:00
Greg Hysen
b0817854e8 strict decoding of return values using generics 2019-01-14 10:49:44 -08:00
Greg Hysen
1907ecc02e makerAssetFillAmount -> takerAssetFillAmount 2019-01-14 10:49:44 -08:00
Greg Hysen
cf2dee60dc Ran prettier 2019-01-14 10:49:44 -08:00
Greg Hysen
80aa2884a3 Linter 2019-01-14 10:49:44 -08:00
Greg Hysen
3a28eb1c6a Fix build after rebase 2019-01-14 10:49:44 -08:00
Greg Hysen
82a44559f6 Style cleanup for Compressed Calldata in Contract Wrappers PR 2019-01-14 10:49:44 -08:00
Greg Hysen
892be49b98 Use simpler _.find to locate fillOrderBai 2019-01-14 10:49:44 -08:00
Greg Hysen
1cbc03ae43 Updated dutch auction wrapper 2019-01-14 10:49:44 -08:00
Greg Hysen
1c9a49cd08 Added back abi-gen-wrappers 2019-01-14 10:49:44 -08:00
Greg Hysen
4f53335db0 Renamed signatureParser.ts to signature_parser.ts 2019-01-14 10:49:44 -08:00
Greg Hysen
0b87aec9c6 Renamed decode rule structsAsObjects to shouldConvertStructsToObjects 2019-01-14 10:49:44 -08:00
Greg Hysen
6892f929fb circle build failed. New commit to resubmit job. 2019-01-14 10:49:44 -08:00
Greg Hysen
f39c03191c Ran linter 2019-01-14 10:49:44 -08:00
Greg Hysen
05adb38a09 Removed console log from handlebars 2019-01-14 10:49:44 -08:00
Greg Hysen
f73c68ee61 Created an interface for abi decoded fillOrder data 2019-01-14 10:49:44 -08:00
Greg Hysen
33f3405226 let -> const in callAsync 2019-01-14 10:49:44 -08:00
Greg Hysen
86caa4a0bb Ran prettier and linter 2019-01-14 10:49:44 -08:00
Greg Hysen
6d832deb62 Decodes revert reason as array to appease Geth 2019-01-14 10:49:44 -08:00
Greg Hysen
0b6c9c8468 Ran prettier 2019-01-14 10:49:44 -08:00
Greg Hysen
d1fd4421be Use string argument encoding with new encoder 2019-01-14 10:49:44 -08:00
Greg Hysen
b06f8239e1 Finished porting new abi encoder to contracts 2019-01-14 10:49:44 -08:00
Greg Hysen
7991de9ed0 Generalized create for signature / dataItems. Cleaner. 2019-01-14 10:49:44 -08:00
Greg Hysen
e9a82905e3 Abi Encoder tests fixed + added a signature parser for cases where MethodAbi/DataItems are not readily available 2019-01-14 10:49:44 -08:00
Greg Hysen
f8684d6a77 All contract tests working with new abi encoder 2019-01-14 10:49:44 -08:00
Greg Hysen
e4551c8f60 Works for almost all tests 2019-01-14 10:49:44 -08:00
Greg Hysen
2f1454e90e Working for almost every test 2019-01-14 10:49:29 -08:00
Greg Hysen
b89f986949 Ensure that addresses are lower case 2019-01-14 10:49:29 -08:00
Greg Hysen
285fb3dead Progress 2019-01-14 10:49:29 -08:00
Brandon Millman
923234eed1 Update react-highlight dep in website to latest commit 2019-01-14 10:44:23 -08:00
Fabio Berger
affd617054 Add commented-out pre-publish checks 2019-01-14 16:05:56 +01:00
Fabio Berger
84163517c6 Add additional check to make sure user was added to our DockerHub org 2019-01-14 15:24:00 +01:00
Leonid Logvinov
83b46cbf71 Rename mappins to have a direct naming scheme instead of a reverse one 2019-01-14 14:52:00 +01:00
Leonid Logvinov
4689309857 Add SourceCodes and Sources types 2019-01-14 14:43:14 +01:00
Leonid Logvinov
02543fdd0c Add a link to tracing examples 2019-01-14 14:43:14 +01:00
Fabio B
1f7179b178 Update packages/sol-tracing-utils/src/source_maps.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 14:29:01 +01:00
Fabio B
e14f1646d6 Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:54:50 +01:00
Fabio B
caba2faa92 Update packages/sol-tracing-utils/src/trace_info_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:52:26 +01:00
Fabio B
ed3b89f005 Update packages/sol-tracing-utils/src/trace_collection_subprovider.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:51:10 +01:00
Fabio B
1c279f97ce Update packages/sol-tracing-utils/src/source_maps.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:51:01 +01:00
Fabio B
b41bcd80ef Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:50:53 +01:00
Fabio B
45d70dd30b Update packages/sol-tracing-utils/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-14 13:50:45 +01:00
Leonid Logvinov
4b9648c7c9 Apply prettier 2019-01-14 13:13:45 +01:00
Leonid Logvinov
092a851bb3 Use custom JS tracer only if the node is geth 2019-01-14 12:53:14 +01:00
Leonid Logvinov
bd71f4a480 Add CHANGELOG entries 2019-01-14 12:46:37 +01:00
Leonid Logvinov
bf183af9a4 Merge development 2019-01-14 12:17:12 +01:00
Leonid Logvinov
2b8f0d887a Fix linter 2019-01-14 12:16:00 +01:00
Leonid Logvinov
2581bc93e5 Fix the bug with incorrect source maps parsing by changing contract data from an array to a mapping 2019-01-14 12:04:08 +01:00
Leonid Logvinov
8b62783f48 Add utils.isRangeEqual to sol-profiler 2019-01-14 11:50:05 +01:00
Leonid Logvinov
2345a3bdfe Add assembly statements to AST Visitor 2019-01-14 11:40:05 +01:00
Leonid Logvinov
ab5cd8f938 Use a custom JS tracer 2019-01-14 11:39:38 +01:00
Jacob Evans
b108b1119a Update prettier changelogs 2019-01-14 10:10:39 +11:00
Jacob Evans
b5420fde52 Update contract addresses 2019-01-14 10:09:12 +11:00
Jacob Evans
dc58c60841 Update hardcoded token addresses 2019-01-12 18:50:05 +11:00
Jacob Evans
043fb3f460 Group similar setup transactions 2019-01-12 18:50:05 +11:00
Jacob Evans
34cce04c43 Register ERC20/721 into MAP 2019-01-12 18:50:04 +11:00
Jacob Evans
6aae0c5b78 chore(python-packages): add MAP to python-packages 2019-01-12 18:50:04 +11:00
Jacob Evans
c15406173a chore(changelogs): Update changelogs with PR 2019-01-12 18:50:04 +11:00
Jacob Evans
e3b3f82c8c feature(migrations): Add MultiAssetProxy Migration 2019-01-12 18:49:16 +11:00
Jacob Evans
007a2d7deb Remove matchOrders optimization 2019-01-12 12:07:37 +11:00
Jacob Evans
5da40ab45e Prettier 2019-01-12 11:07:48 +11:00
Jacob Evans
54a1fd87db Update PR number 2019-01-12 10:27:48 +11:00
Francesco Agosti
797d7c7878 Merge pull request #1513 from 0xProject/fix/website/multiple-react-dom-versions-et-al
[website] Fix multiple react dom versions and layout issue
2019-01-11 15:23:51 -08:00
Jacob Evans
507c47c42c bug(exchange-wrapper): matchOrdersAsync input param mutation 2019-01-12 10:22:13 +11:00
fragosti
7fcdfe5de5 Revert "hack: force redux and redux-devtools to work for build"
This reverts commit 500d8fc86b.
2019-01-11 12:53:32 -08:00
fragosti
22b1c48c89 upgrade react in react-docs and react-shared, install dependencies in website that are mysteriously missing 2019-01-11 12:49:38 -08:00
fragosti
2197a531e3 Revert "fix: make version consisten for react, react-dom and styled-components'"
This reverts commit 89c5d657a7.
2019-01-11 12:22:13 -08:00
fragosti
4799b68972 feat: upgrade styled-components and remove ununsed basscss import 2019-01-11 12:00:02 -08:00
fragosti
500d8fc86b hack: force redux and redux-devtools to work for build 2019-01-11 11:57:26 -08:00
fragosti
89c5d657a7 fix: make version consisten for react, react-dom and styled-components' 2019-01-11 11:56:48 -08:00
fragosti
bc44774116 fix: use basscss from css file instead of module 2019-01-11 11:50:35 -08:00
Steve Klebanoff
8a8a5332d7 prettier changelog 2019-01-11 10:38:52 -08:00
Xianny
943c378309 Implement tslint enum-naming to enforce PascalCase on enum members (#1474) 2019-01-11 10:04:30 -08:00
Steve Klebanoff
8d3bbb8213 Disable promise-function-async for mocking async functions 2019-01-11 09:32:28 -08:00
Steve Klebanoff
a5e7ce9e1a Move calculateLiquidity to helper function 2019-01-11 09:28:51 -08:00
Steve Klebanoff
64a78149aa Update test for required amountAvailableToFill 2019-01-11 09:20:59 -08:00
Fabio Berger
cf3787edbb Publish
- 0x.js@3.0.1
 - @0x/abi-gen@1.0.21
 - @0x/abi-gen-wrappers@2.1.1
 - @0x/assert@1.0.22
 - @0x/asset-buyer@4.0.0
 - @0x/base-contract@3.0.12
 - @0x/connect@3.0.12
 - @0x/contract-wrappers@4.2.1
 - @0x/dev-tools-pages@0.0.12
 - @0x/dev-utils@1.0.23
 - ethereum-types@1.1.5
 - @0x/fill-scenarios@1.1.1
 - @0x/instant@1.0.6
 - @0x/json-schemas@2.1.6
 - @0x/metacoin@0.0.34
 - @0x/migrations@2.3.1
 - @0x/monorepo-scripts@1.0.17
 - @0x/order-utils@3.1.1
 - @0x/order-watcher@2.4.1
 - @0x/pipeline@1.0.4
 - @0x/react-docs@1.0.24
 - @0x/react-shared@1.1.1
 - @0x/sol-compiler@2.0.1
 - @0x/sol-coverage@1.0.1
 - @0x/sol-doc@1.0.13
 - @0x/sol-profiler@1.0.1
 - @0x/sol-resolver@1.2.2
 - @0x/sol-trace@1.0.1
 - @0x/sol-tracing-utils@3.0.0
 - @0x/sra-spec@1.0.15
 - @0x/subproviders@2.1.10
 - @0x/testnet-faucets@1.0.62
 - @0x/tslint-config@2.0.1
 - @0x/types@1.5.1
 - @0x/typescript-typings@3.0.7
 - @0x/utils@3.0.0
 - @0x/web3-wrapper@3.2.3
 - @0x/website@0.0.65
 - @0x/contracts-examples@1.0.4
 - @0x/contracts-extensions@1.2.1
 - @0x/contracts-interfaces@1.0.4
 - @0x/contracts-libs@1.0.4
 - @0x/contracts-multisig@1.0.4
 - @0x/contracts-protocol@2.2.1
 - @0x/contracts-test-utils@1.0.4
 - @0x/contracts-tokens@1.0.4
 - @0x/contracts-utils@1.0.4
2019-01-11 18:04:43 +01:00
Fabio Berger
89429c54a7 Updated CHANGELOGS 2019-01-11 18:04:33 +01:00
Steve Klebanoff
dbaed69d77 Add new version to CHANGELOG 2019-01-11 08:59:07 -08:00
Steve Klebanoff
faee751395 Merge branch 'development' into feature/instant/asset-buyer-check-liquidity 2019-01-11 08:53:15 -08:00
Steve Klebanoff
742e5e039d getLiquidityForAssetDataAsync helper method, and fix to assetBuyer to check for eth token in asset pairs 2019-01-11 08:14:57 -08:00
Fabio Berger
98579300c1 merge development 2019-01-11 17:14:12 +01:00
Fabio Berger
96ff5eef64 merge development 2019-01-11 17:12:55 +01:00
Fabio Berger
7f5a2c972b Add actual error message thrown 2019-01-11 16:55:37 +01:00
Fabio Berger
dad6404c7f Flag order-watcher as having a Docker image to publish 2019-01-11 16:52:28 +01:00
Fabio Berger
6dcf40f570 Add publish to DockerHub step to publish flow 2019-01-11 16:52:15 +01:00
Fabio Berger
43b0422804 Flesh out postpublish configs in packageJSON type 2019-01-11 16:51:54 +01:00
Fabio Berger
55ce0d9d17 Add pre-publish check to ensure publisher is logged in to docker cmdline 2019-01-11 16:50:41 +01:00
Fabio Berger
895460aea3 Update yarn.lock 2019-01-11 14:29:09 +01:00
Fabio Berger
7956127b29 Ensure the process exits 2019-01-11 14:29:02 +01:00
Fabio Berger
6fb2721294 Fix copy and links 2019-01-11 14:20:56 +01:00
Fabio Berger
ebb10e6604 Remove unused import 2019-01-11 14:15:24 +01:00
Fabio Berger
db878f4a7b Fix title and og tags for sol-coverage 2019-01-11 14:15:15 +01:00
Leonid Logvinov
bb992458a3 Revert CHANGELOG changes 2019-01-11 11:29:39 +01:00
Leonid Logvinov
66add14ca5 Remove generated wrappers 2019-01-11 11:28:44 +01:00
Leonid Logvinov
0b38513c3f Remove generated artifacts 2019-01-11 11:28:08 +01:00
Remco Bloemen
d9ac5b611a Generate blocks at interval for truffle 2019-01-11 11:26:38 +01:00
Remco Bloemen
e1b99b5e2f Use tracer for debug traces 2019-01-11 11:26:38 +01:00
Remco Bloemen
7af0818dff Capture errors in next callbacks 2019-01-11 11:26:38 +01:00
Remco Bloemen
296b3d6311 Throw error when source location is missing 2019-01-11 11:26:38 +01:00
Remco Bloemen
4d03c3035c Fix typo 2019-01-11 11:26:38 +01:00
Remco Bloemen
27c4d2522b Add tracer params type 2019-01-11 11:26:37 +01:00
Fabio Berger
4dbd3ea902 Re-add changelog for 0x.js 2019-01-11 11:26:37 +01:00
Fabio B
2cf57a48dd Merge pull request #1500 from 0xProject/update-prettier-version
Update prettier to version ^1.15.3
2019-01-11 11:18:18 +01:00
Alex Browne
a091b2c19d Rebase and re-apply prettier 2019-01-10 17:44:35 -08:00
Alex Browne
89e398fa39 Update prettier to version ^1.15.3 2019-01-10 17:41:13 -08:00
Steve Klebanoff
1192314510 Add helper functions and expose to umd object 2019-01-10 16:13:16 -08:00
Fabio Berger
583e690b7a Merge branch 'development' into fix/dev-tools-pages/finalTouches
* development: (49 commits)
  upgrade to ddex api v3 (#1507)
  Add new deployment related instructions to pipeline README (#1499)
  feature: implement logging and friendly wallet name for Opera
  Fix prettier
  Add missing dependencies
  Remove second yarn call
  Add .gitkeep
  Rename sol-trace-based-tools-common to sol-tracing-utils
  Update packages/sol-trace/README.md
  Update packages/sol-trace/CHANGELOG.json
  Update packages/sol-trace-based-tools-common/src/source_maps.ts
  Update packages/sol-trace-based-tools-common/CHANGELOG.json
  Update packages/sol-profiler/CHANGELOG.json
  Update packages/sol-coverage/CHANGELOG.json
  Update packages/monorepo-scripts/src/test_installation.ts
  chore: changelog update
  fix: account for undefined errors in promisify, not only null
  Clean up docs before publish
  In README's, don't mention non-existent tests (#1497)
  fix: use getBackendBaseUrl instead of hardcoded string
  ...
2019-01-11 00:47:57 +01:00
Fabio Berger
a516b00a03 Fix footer links 2019-01-11 00:45:26 +01:00
Steve Klebanoff
841ad8757c Add LiquidityRequestOpts type 2019-01-10 15:40:55 -08:00
Steve Klebanoff
127bd4bf9d Getting rid of unused params and adding documentation 2019-01-10 15:38:41 -08:00
Justin Barry
a8c3b4126e Output Chrome 41 compatible version of 0x instant
This is important for SEO as Googlebot is still using Chrome 41 to crawl
thick clients.
2019-01-10 14:25:50 -08:00
Steve Klebanoff
2360b8282f rename tokensAvailableInUnitAmount to tokensAvailableInBaseUnits and use test helpers 2019-01-10 14:00:16 -08:00
Steve Klebanoff
0dade8624c Adding more test coverage 2019-01-10 13:51:02 -08:00
Steve Klebanoff
a9fad77eb4 Implement liquidity checking w/ testing 2019-01-10 13:41:28 -08:00
Xianny
a5b7a35160 upgrade to ddex api v3 (#1507) 2019-01-10 13:07:52 -08:00
Alex Browne
53fc860d61 Add new deployment related instructions to pipeline README (#1499)
* Add new deployment related instructions to pipeline README

* Apply prettier

* Respond to PR feedback
2019-01-10 13:04:34 -08:00
Fabio Berger
dc20429bca Add deployment commands for the Dev tools pages 2019-01-10 20:14:51 +01:00
Francesco Agosti
749312c0e8 Merge pull request #1506 from 0xProject/feature/instant/opera-followups
[instant] Implement logging and friendly wallet name for Opera
2019-01-10 10:48:06 -08:00
fragosti
ffd14ab2f2 feature: implement logging and friendly wallet name for Opera 2019-01-10 09:47:46 -08:00
Francesco Agosti
bf332d578c Merge pull request #1501 from 0xProject/fix/utils/promisify-not-accounting-for-undefined-error
[utils] account for undefined errors in promisify, not only null (and fix instant in Opera)
2019-01-10 09:33:22 -08:00
Leonid Logvinov
6c22594882 Merge pull request #1492 from 0xProject/feature/sol-cov-sol-profiler-sol-trace-divorce
Refactor out sol-cov, sol-profiler and sol-trace into their separate packages
2019-01-10 14:35:13 +01:00
Leonid Logvinov
b8e3829fdb Fix prettier 2019-01-10 14:05:29 +01:00
Leonid Logvinov
c317a69e7e Add missing dependencies 2019-01-10 13:33:56 +01:00
Leonid Logvinov
4c60d59123 Remove second yarn call 2019-01-10 11:57:18 +01:00
Leonid Logvinov
cee2954245 Merge development 2019-01-10 11:56:15 +01:00
Leonid Logvinov
a8d9263062 Add .gitkeep 2019-01-10 11:42:50 +01:00
Leonid Logvinov
7ae9e79235 Rename sol-trace-based-tools-common to sol-tracing-utils 2019-01-10 11:21:05 +01:00
Fabio B
15c9479ebe Update packages/sol-trace/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:15:34 +01:00
Fabio B
03dea585b4 Update packages/sol-trace/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:15:26 +01:00
Fabio B
d7df402c42 Update packages/sol-trace-based-tools-common/src/source_maps.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:15:19 +01:00
Fabio B
052ed21e9c Update packages/sol-trace-based-tools-common/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:12:08 +01:00
Fabio B
36504646f9 Update packages/sol-profiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:11:52 +01:00
Fabio B
60cdbbccae Update packages/sol-coverage/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:11:43 +01:00
Fabio B
420333e3c3 Update packages/monorepo-scripts/src/test_installation.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2019-01-10 11:11:23 +01:00
fragosti
b639843115 chore: changelog update 2019-01-09 18:31:23 -08:00
fragosti
7a114a6ef1 fix: account for undefined errors in promisify, not only null 2019-01-09 18:26:18 -08:00
Steve Klebanoff
686f27a96f Merge pull request #1482 from 0xProject/feature/monorepo/release-notes
[monorepo-scripts] Automatically alert new release to Discord
2019-01-09 16:49:12 -08:00
Steve Klebanoff
6487fae113 Merge pull request #1437 from 0xProject/feature/instant/tell-amount-available
[instant] Tell user how much of an asset is available
2019-01-09 16:29:11 -08:00
Francesco Agosti
87c287a5e2 Merge pull request #1489 from 0xProject/fix/website/0x-org-endpoints
[website] Audit and fix 0x.org migration URLs
2019-01-09 12:03:28 -08:00
F. Eugene Aumson
e39ef60775 Clean up docs before publish 2019-01-09 12:12:20 -05:00
Steve Klebanoff
fb3605026e Merge branch 'development' into feature/instant/tell-amount-available 2019-01-09 08:54:55 -08:00
Fabio Berger
241be6de30 Rename sol-cov to sol-coverage, fix links 2019-01-09 17:30:34 +01:00
Fabio Berger
589b535b91 Add docLink 2019-01-09 17:30:01 +01:00
Fabio Berger
eb6b07e804 Update yarn.lock 2019-01-09 17:29:13 +01:00
F. Eugene Aumson
5b8c9122a2 In README's, don't mention non-existent tests (#1497) 2019-01-09 11:02:58 -05:00
Fabio B
08d0ff48c3 Merge pull request #1249 from bakkenbaeck/dev-tools-pages
Dev tools pages
2019-01-09 16:22:59 +01:00
F. Eugene Aumson
aa5af04447 Python contract demo, with lots of refactoring (#1485)
* Refine Order for Web3 compat. & add conversions

Changed some of the fields in the Order class so that it can be passed
to our contracts via Web3.

Added conversion utilities so that an Order can be easily converted to
and from a JSON-compatible dict (specifically by encoding/decoding the
`bytes` fields), to facilitate validation against the JSON schema.

Also modified JSON order schema to accept integers in addition to
stringified integers.

* Fixes for json_schemas

Has-types indicator file, py.typed, was not being included in package.

Schemas were not being properly gathered into package installation.

* Add test/demo of Exchange.getOrderInfo()

* web3 bug workaround

* Fix problem packaging contract artifacts

* Move contract addresses to their own package

* Move contract artifacts to their own package

* Add scripts to install, test & lint all components

* prettierignore files in local python dev env

* Correct missing coverage analysis for sra_client

* CI cache lint: don't save, re-use from test-python

* tag hacks as hacks

* correct merge mistake

* remove local strip_0x() in favor of eth_utils

* remove json schemas from old order_utils location

* correct merge mistake

* doctest json schemas via command-line, not code
2019-01-09 09:58:29 -05:00
Leonid Logvinov
39786c3ad5 Merge development 2019-01-09 15:19:59 +01:00
Fabio Berger
5b7eff217e Publish
- 0x.js@3.0.0
 - @0x/abi-gen@1.0.20
 - @0x/abi-gen-wrappers@2.1.0
 - @0x/assert@1.0.21
 - @0x/asset-buyer@3.0.5
 - @0x/base-contract@3.0.11
 - @0x/connect@3.0.11
 - @0x/contract-addresses@2.1.0
 - @0x/contract-artifacts@1.2.0
 - @0x/contract-wrappers@4.2.0
 - @0x/dev-tools-pages@0.0.11
 - @0x/dev-utils@1.0.22
 - @0x/fill-scenarios@1.1.0
 - @0x/instant@1.0.5
 - @0x/json-schemas@2.1.5
 - @0x/metacoin@0.0.33
 - @0x/migrations@2.3.0
 - @0x/monorepo-scripts@1.0.16
 - @0x/order-utils@3.1.0
 - @0x/order-watcher@2.4.0
 - @0x/pipeline@1.0.3
 - @0x/react-docs@1.0.23
 - @0x/react-shared@1.1.0
 - @0x/sol-compiler@2.0.0
 - @0x/sol-cov@2.1.17
 - @0x/sol-doc@1.0.12
 - @0x/sol-resolver@1.2.1
 - @0x/sra-spec@1.0.14
 - @0x/subproviders@2.1.9
 - @0x/testnet-faucets@1.0.61
 - @0x/types@1.5.0
 - @0x/utils@2.1.1
 - @0x/web3-wrapper@3.2.2
 - @0x/website@0.0.64
 - @0x/contracts-examples@1.0.3
 - @0x/contracts-extensions@1.2.0
 - @0x/contracts-interfaces@1.0.3
 - @0x/contracts-libs@1.0.3
 - @0x/contracts-multisig@1.0.3
 - @0x/contracts-protocol@2.2.0
 - @0x/contracts-test-utils@1.0.3
 - @0x/contracts-tokens@1.0.3
 - @0x/contracts-utils@1.0.3
2019-01-09 14:44:17 +01:00
Fabio Berger
0a6ead90d9 Updated CHANGELOGS 2019-01-09 14:44:03 +01:00
Leonid Logvinov
7f2727236d Pin @types/styled-components versions 2019-01-09 14:39:19 +01:00
Leonid Logvinov
d6644ed035 Add yarn.lock changes 2019-01-09 13:45:34 +01:00
Leonid Logvinov
a2eede2ec9 Remove accidentally commited files 2019-01-09 13:45:23 +01:00
Leonid Logvinov
2fa4ed1fb7 Merge pull request #1496 from 0xProject/feature/solc-5.0
Solc 5.0 support in sol-compiler
2019-01-09 13:22:20 +01:00
Leonid Logvinov
3733a29ee2 Add CHENGELOG entrie 2019-01-09 12:46:51 +01:00
Leonid Logvinov
62b5eef4a0 Update sol-compiler binPaths to include the newest solidity 2019-01-09 12:36:05 +01:00
Leonid Logvinov
377d6367e0 Update solc used by sol-compiler 2019-01-09 12:35:35 +01:00
Leonid Logvinov
a3b364dbdf Remove contracts dependency on solc 2019-01-09 12:34:45 +01:00
Leonid Logvinov
ea14913b41 Merge development 2019-01-09 12:02:25 +01:00
Fabio B
5dd55491b8 Merge pull request #1494 from 0xProject/feature/order-watcher/dockerize
Dockerize OrderWatcher WS Server
2019-01-09 11:27:22 +01:00
Fabio Berger
28aa12691e rename method 2019-01-09 11:06:15 +01:00
Leonid Logvinov
5868c91cfb Fix static tests 2019-01-09 10:54:32 +01:00
Leonid Logvinov
fd034cc1e4 Remove redundant semicolons 2019-01-09 10:21:58 +01:00
Jacob Evans
c1bf2754a8 Merge pull request #1439 from 0xProject/migrations/docker-image
Add Docker image and Snapshot commands for migrations
2019-01-09 12:55:42 +11:00
Chris Kalani
c388e6d2b8 Update README.md 2019-01-08 17:15:20 -08:00
Chris Kalani
622fa951ca Update README.md
Fixing logo
2019-01-08 17:13:04 -08:00
fragosti
d00dd07435 fix: use getBackendBaseUrl instead of hardcoded string 2019-01-08 16:45:35 -08:00
Xianny
27fc640a9e fetch and save copper (#1472)
Fetch and save Copper CRM
2019-01-08 13:50:51 -08:00
F. Eugene Aumson
4689f20b86 Move json_schemas to its own package (#1435)
* Move zero_ex.json_schemas to its own package

* Support ALL the schemas

* Stop installing packages as editable

* HACK: cp files because CircleCI isn't

* Add example usage to sra_client README

* Tweak special case: only strip Schema as suffix

* Correct doc titles

* Clarify what kind of support ticket was raised.

* Correct inconsistencies in JSON schema names

In both ref ID's and file names.

* Add entry point for validation of JSON strings
2019-01-08 14:28:32 -05:00
Fabio Berger
de927d7207 Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Remove beta note from asset-buyer
2019-01-08 20:16:48 +01:00
Fabio Berger
93121892d6 Fix typo 2019-01-08 20:16:34 +01:00
fragosti
16fc2c3776 fix: use new forum URL 2019-01-08 10:34:40 -08:00
Francesco Agosti
c3a7cbc57d Merge pull request #1493 from 0xProject/fix/asset-buyer/no-longer-beta
[asset-buyer] Remove beta note from asset-buyer
2019-01-08 18:33:53 +00:00
Fabio Berger
0cfeea7c8c Remove stray console 2019-01-08 17:15:05 +01:00
Leonid Logvinov
82f29c395a Fix the circleci image 2019-01-08 17:14:06 +01:00
Fabio Berger
e2df4b355b Add assertions to catch trying to add undefined schemas 2019-01-08 17:07:10 +01:00
Leonid Logvinov
03248244ff Bump up the chunk size 2019-01-08 17:03:42 +01:00
Steve Klebanoff
74ed0f4134 Remove beta note from asset-buyer 2019-01-08 08:02:33 -08:00
Leonid Logvinov
f05d2906e8 Split installation tests in chunks of 10 to not run out of memory 2019-01-08 16:00:05 +01:00
Fabio Berger
5e39eae84e Fixx request payload and expected responses 2019-01-08 15:37:50 +01:00
Fabio Berger
0ea8669552 Fixx OrderWatcher WS tests so they are completely independent from one another 2019-01-08 15:37:14 +01:00
Leonid Logvinov
2c974b5f3f Refactor out sol-cov, sol-profiler and sol-trace into their separate packages 2019-01-08 14:48:06 +01:00
Fabio Berger
1631031fa7 Merge branch 'development' into feature/order-watcher/dockerize
* development: (898 commits)
  Fixed merge conflict from development
  Ran prettier
  Doc generation working for changes by dutch auction wrapper
  added changelog entry for monorepo-scripts
  Hide dutch auction wrapper from docs -- hopefully this will prevent the "must export Web3Wrapper" error from doc generation
  relaxed version on contract-extension dependencies
  Added NetworkID 50 address for dutch auction wrapper
  removed manual updte of package.json version
  export dutch auction wrapper types from 0x.js
  Export dutch auction wrapper in 0x.js
  ran prettier
  Minor documentation updates to dutch auction wrapper
  `afterAuctionDetails` -> `auctionDetails`
  Added @todo for including dutch auction addresses once deployed
  Ran prettier & linter
  Removed redundant assignment
  removed needless newline on contract-wrappers changelog
  removed timestamp from changelog for abi-gen-wrappers
  added dutch auction address for testnets
  removed .only
  ...
2019-01-08 14:30:38 +01:00
Fabio Berger
0bcb81d3a9 Create server entry point and Dockerfile for OrderWatcher 2019-01-08 14:29:45 +01:00
fragosti
f412c36e23 fix: use old forum URL for now 2019-01-07 17:36:14 -08:00
fragosti
eae255b0ff chore: point to 0x.org website-api 2019-01-07 17:19:36 -08:00
fragosti
1f0f2076a9 fix: CORS issue by accessing 0x geth nodes through 0x.org endpoint 2019-01-07 17:09:36 -08:00
Greg Hysen
0ac36cef28 Merge pull request #1465 from 0xProject/feature/contracts/dutchAuctionWrapper
Dutch Auction Wrapper
2019-01-07 17:16:06 -07:00
Greg Hysen
04db7f0fae Fixed merge conflict from development 2019-01-07 15:50:48 -08:00
Greg Hysen
e39ae0350b Ran prettier 2019-01-07 15:50:48 -08:00
Greg Hysen
d0a0673694 Doc generation working for changes by dutch auction wrapper 2019-01-07 15:50:48 -08:00
Greg Hysen
3c62815fe3 added changelog entry for monorepo-scripts 2019-01-07 15:50:48 -08:00
Greg Hysen
37b6858869 Hide dutch auction wrapper from docs -- hopefully this will prevent the "must export Web3Wrapper" error from doc generation 2019-01-07 15:50:48 -08:00
Greg Hysen
641685a41e relaxed version on contract-extension dependencies 2019-01-07 15:50:48 -08:00
Greg Hysen
7ad23ef6dc Added NetworkID 50 address for dutch auction wrapper 2019-01-07 15:50:48 -08:00
Greg Hysen
5f2a7cb78f removed manual updte of package.json version 2019-01-07 15:50:48 -08:00
Greg Hysen
edb989fbf3 export dutch auction wrapper types from 0x.js 2019-01-07 15:50:48 -08:00
Greg Hysen
ff0093460d Export dutch auction wrapper in 0x.js 2019-01-07 15:50:48 -08:00
Greg Hysen
a00e416a19 ran prettier 2019-01-07 15:50:48 -08:00
Greg Hysen
77a2ca1ddc Minor documentation updates to dutch auction wrapper 2019-01-07 15:50:48 -08:00
Greg Hysen
61a3368826 afterAuctionDetails -> auctionDetails 2019-01-07 15:50:48 -08:00
Greg Hysen
55e3774480 Added @todo for including dutch auction addresses once deployed 2019-01-07 15:50:48 -08:00
Greg Hysen
c6ab380685 Ran prettier & linter 2019-01-07 15:50:48 -08:00
Greg Hysen
d6467d707f Removed redundant assignment 2019-01-07 15:50:48 -08:00
Greg Hysen
0893614859 removed needless newline on contract-wrappers changelog 2019-01-07 15:50:48 -08:00
Greg Hysen
dc940d692f removed timestamp from changelog for abi-gen-wrappers 2019-01-07 15:50:48 -08:00
Greg Hysen
e83a108c52 added dutch auction address for testnets 2019-01-07 15:50:48 -08:00
Greg Hysen
bbd4828340 removed .only 2019-01-07 15:50:48 -08:00
Greg Hysen
6de3a33f36 updated relevant changelogs 2019-01-07 15:50:48 -08:00
Greg Hysen
06139cbfe5 Added dutch auction utils to contract-wrappers 2019-01-07 15:50:48 -08:00
Greg Hysen
cb1bfa0f97 ran prettier + added changelog entry for contract wrappers 2019-01-07 15:50:48 -08:00
Greg Hysen
b249a50d8f ran prettier 2019-01-07 15:50:48 -08:00
Greg Hysen
0432212a34 dutch wrapper tests working 2019-01-07 15:50:48 -08:00
Greg Hysen
7203ca90cf all dutchie wrapper tests passing 2019-01-07 15:50:48 -08:00
Greg Hysen
5da748a062 Progress on dutch auction wrapper. Need to add auction data decoding to it. 2019-01-07 15:50:48 -08:00
Greg Hysen
09afee55ed Removed unnecessary fields from dutch auction artifacts 2019-01-07 15:50:48 -08:00
Greg Hysen
43b648e7dc Dutch wrapper 2019-01-07 15:50:48 -08:00
Greg Hysen
89fcbec43b changed name for confusion 2019-01-07 15:50:48 -08:00
Greg Hysen
c850046ea0 Dutch Auction Contract Wrapper 2019-01-07 15:50:48 -08:00
Alex Browne
7dda953bc9 Optimize SQL queries in pull_missing_blocks (#1458)
* Optimize SQL queries in pull_missing_blocks

* Update comment in pull_missing_blocks
2019-01-07 15:04:00 -08:00
Brandon Millman
b8f3fa9c8c chore(website): update copy on market making page 2019-01-07 13:21:42 -08:00
Brandon Millman
42e04012df fix(website): fix some copy on the market maker page 2019-01-07 13:03:45 -08:00
Brandon Millman
17f0878707 Merge pull request #1487 from 0xProject/feature/website/market-maker-page
[website] Add market making grant program page
2019-01-07 12:41:10 -08:00
Brandon Millman
e4bb6a4652 chore(website): fix linter 2019-01-07 12:19:21 -08:00
Amir Bandeali
3cdb85606a Merge pull request #1363 from 0xProject/feat/order-utils/abiEncoder
Add MAP support to order-utils, order-watcher, and types
2019-01-07 11:30:00 -08:00
Amir Bandeali
fd37e88bdb Use enums in pipeline 2019-01-07 11:11:19 -08:00
Amir Bandeali
24564b986d Minimize unnecessary type assertions 2019-01-07 10:31:11 -08:00
Amir Bandeali
a91bc415ed Fix linting errors 2019-01-07 10:31:11 -08:00
Amir Bandeali
ccdb81ac40 Add tests for MAP in order watcher 2019-01-07 10:31:11 -08:00
Amir Bandeali
d7f9e3f0a0 Do not export AssetData in 0x.js 2019-01-07 10:31:11 -08:00
Amir Bandeali
5720589515 Add tests for recursive MAP decoding 2019-01-07 10:31:11 -08:00
Amir Bandeali
70508f52a1 Update CHANGELOGs 2019-01-07 10:31:11 -08:00
Amir Bandeali
b90c3196a3 FIx linting errors 2019-01-07 10:31:11 -08:00
Amir Bandeali
1dda10b4f3 Add recursive MultiAsset decoding, store first address in pipeline 2019-01-07 10:31:11 -08:00
Amir Bandeali
0fba0b1a1b feat: Add balance and allowance checks for MultiAssetProxy 2019-01-07 10:31:11 -08:00
Amir Bandeali
df4f3d9eac feat: Add fields to OrderRelevantState and change AssetData to SingleAssetData 2019-01-07 10:31:11 -08:00
Amir Bandeali
de4916ccb8 Add individual balances and allowances to OrderRelevantState 2019-01-07 10:31:11 -08:00
Amir Bandeali
b797a45d4a Do not attempt to parse tokenAddress if decoding data from multiAssetProxy 2019-01-07 10:31:11 -08:00
Amir Bandeali
eeb07d76fc Fix transferFrom to work with MAP 2019-01-07 10:31:11 -08:00
Amir Bandeali
0abace337c Rename functions 2019-01-07 10:31:11 -08:00
Amir Bandeali
c6ff77bdd8 Add prefix to names of properties in EncodingRules and DecodingRules 2019-01-07 10:31:11 -08:00
Amir Bandeali
492e0ae345 feat: Export MultiAssetData in types 2019-01-07 10:31:11 -08:00
Amir Bandeali
8549252a2c Fix decoding and add tests 2019-01-07 10:31:11 -08:00
Amir Bandeali
aae32037da Run linter 2019-01-07 10:31:11 -08:00
Amir Bandeali
46359c098b Add support for MAP in fill-scenarios 2019-01-07 10:31:11 -08:00
Amir Bandeali
fc71d87d2b Update CHANGELOG 2019-01-07 10:31:11 -08:00
Amir Bandeali
67dfe6030c feat: Add support for MultiAssetProxy 2019-01-07 10:31:11 -08:00
Amir Bandeali
19e93440b3 fix: Add error message if assetProxyId is not ERC20 or ERC721 2019-01-07 10:31:11 -08:00
Amir Bandeali
0cb5209266 Add length check to MultiAsset encoding 2019-01-07 10:31:11 -08:00
Amir Bandeali
1553b366da Update CHANGELOGs 2019-01-07 10:31:11 -08:00
Amir Bandeali
d957cd5344 Use assetDataUtils instead of IAssetData for encoding MultiAsset values 2019-01-07 10:31:11 -08:00
Amir Bandeali
354f7053dc Use new AbiEncoder, add logic for encoding/decoding MultiAsset assetData 2019-01-07 10:31:11 -08:00
Amir Bandeali
4d5fcf8985 feat: Add MultiAsset types 2019-01-07 10:31:11 -08:00
Steve Klebanoff
80f1fe1373 Merge branch 'feature/monorepo/release-notes' of github.com:0xProject/0x-monorepo into feature/monorepo/release-notes 2019-01-07 09:45:21 -08:00
Steve Klebanoff
571bc736e5 Make error message less scary 2019-01-07 09:45:04 -08:00
Fabio B
99016cc5a6 Use explicit undefined check
Co-Authored-By: steveklebanoff <steve@0xproject.com>
2019-01-07 09:43:35 -08:00
Steve Klebanoff
71c9b2f718 Merge pull request #1484 from 0xProject/fix/sra-spec/title-tag
[sra-spec] Add title tag
2019-01-07 09:40:39 -08:00
Brandon Millman
79863d830e chore(website): update market making page copy 2019-01-06 21:40:39 -08:00
Brandon Millman
59ec243c26 feat(website): add contact us hero action to market maker page 2019-01-06 21:40:14 -08:00
Brandon Millman
5e8da70eae feat(website): implement market maker form 2019-01-06 20:45:46 -08:00
Brandon Millman
99b6ca5b4f feat(website): Add support for copper forms in the offers 2019-01-04 10:00:41 -08:00
Brandon Millman
4e4de07e69 feat(website): add link underneath the first feature in market maker page 2019-01-04 09:44:25 -08:00
Brandon Millman
1b65efb38c feat(website): update market maker page copy and links 2019-01-04 09:24:59 -08:00
Brandon Millman
ed0e6181bd feat(website): add market making section to developers dropdown 2019-01-04 09:09:34 -08:00
Steve Klebanoff
f1a7efc97e Return void and throw error instead of logging and returning boolean 2019-01-04 09:01:13 -08:00
Steve Klebanoff
442de09bbe Add async suffix 2019-01-04 08:54:44 -08:00
Steve Klebanoff
76dde294f1 Add PR number 2019-01-04 07:54:01 -08:00
Steve Klebanoff
4dded13259 fix(sra-spec): Add title tag 2019-01-04 07:47:41 -08:00
Brandon Millman
c82393d763 feature(website): add market making page 2019-01-03 16:18:33 -08:00
Steve Klebanoff
2111ea159e Merge pull request #1481 from 0xProject/fix/instant/dropdown-color
[instant] Dropdown hover 10% of primary color
2019-01-03 09:07:57 -08:00
Francesco Agosti
c1150824dc Merge pull request #1480 from 0xProject/feature/instant/performance-boost
[instant] No more laggy input
2019-01-03 13:36:18 +01:00
Steve Klebanoff
edb3a61387 Merge branch 'development' into feature/instant/tell-amount-available 2019-01-02 16:56:49 -08:00
Steve Klebanoff
89f67b9bec take out no-longer necessary test 2019-01-02 16:56:28 -08:00
Steve Klebanoff
9131ca1562 Use constant 2019-01-02 15:22:07 -08:00
Steve Klebanoff
92d45a19d1 await alerting discord 2019-01-02 15:19:38 -08:00
Steve Klebanoff
65af195054 Merge branch 'development' into feature/monorepo/release-notes 2019-01-02 15:17:26 -08:00
Steve Klebanoff
9f47f90c6e remove unused export 2019-01-02 15:16:45 -08:00
Steve Klebanoff
472f89bd3d feat(monorepo-scripts): Alert to discord when new publish happens 2019-01-02 14:46:31 -08:00
Steve Klebanoff
c62d862967 fix(instant): Dropdown hover should be 10% of primary color 2019-01-02 10:58:41 -08:00
fragosti
1ceb3c9664 feat: unmount the token selector when its not displaying 2019-01-02 19:07:02 +01:00
fragosti
4252a760f0 feat: dont re-render the token selector on every input change 2019-01-02 16:55:29 +01:00
fragosti
5721b25c3a feat: give all stateless components a displayName or make them private 2019-01-02 16:08:15 +01:00
fragosti
586a8ba8e7 feat: use PureComponent instead of Component 2019-01-02 16:01:40 +01:00
Francesco Agosti
1ddf1087dd Merge pull request #1470 from 0xProject/feature/website/0x-org-cleanup
[website] Remove @next dir, remove unused files.
2019-01-02 15:13:14 +01:00
Jacob Evans
72a56db5ab chore(python-packages): Change docker command in setup.py 2019-01-02 15:03:09 +11:00
MarcZenn
0010ca3e03 updated error msg 2018-12-31 11:21:47 -08:00
MarcZenn
9edb5dae88 passing network id to constructor 2018-12-31 11:12:25 -08:00
MarcZenn
85b49096dc first requested changes 2018-12-31 11:04:19 -08:00
Jacob Evans
646e856b51 Python ganache snapshot 2.2.2 2018-12-29 10:20:42 +11:00
F. Eugene Aumson
e62e61bf71 Add entry point for validation of JSON strings 2018-12-28 15:28:30 -05:00
F. Eugene Aumson
a3eab71908 Correct inconsistencies in JSON schema names
In both ref ID's and file names.
2018-12-28 15:08:15 -05:00
fragosti
dbbd0c5c92 feat: use kovan.0xproject.com instead of kovan.0x.org 2018-12-27 12:07:14 +01:00
fragosti
dc6d6024dc fix: merge conflict 2018-12-27 12:00:20 +01:00
Jacob Evans
9d5d0dbe14 Readme, read snapshot name from package.json 2018-12-27 12:45:29 +11:00
Steve Klebanoff
febf3489ba Merge pull request #1476 from 0xProject/fix/website/build-errors
[website] Fix duplicate props which made ci build break
2018-12-25 11:19:27 -08:00
Steve Klebanoff
cfb200e793 fix(website): Fix bad merge 2018-12-24 13:08:35 -08:00
Jacob Evans
2b7875571d Dockerfile defaults to latest 2018-12-24 13:22:39 +11:00
Jacob Evans
0a1701eac9 Copy latest published version to 0x_ganache_snapshot-latest.zip 2018-12-24 13:20:50 +11:00
Jacob Evans
bcd20081d3 Use new bucket, bind on 0.0.0.0 2018-12-24 13:14:16 +11:00
Steve Klebanoff
f17fe381bf Merge branch 'development' into feature/instant/tell-amount-available 2018-12-21 16:30:00 -08:00
Steve Klebanoff
26977f6408 Fix var name and use floor instead of .round(0, ROUND_DOWN) 2018-12-21 16:29:53 -08:00
Steve Klebanoff
c8c8219c05 Make amountAvailableToFill required 2018-12-21 16:26:07 -08:00
Steve Klebanoff
92150b78fc Merge pull request #1469 from 0xProject/fix/website/job-openings
[website] Tweak job listings
2018-12-21 16:11:56 -08:00
Steve Klebanoff
e144ebbb93 Merge branch 'development' into feature/instant/tell-amount-available 2018-12-21 14:57:16 -08:00
fragosti
c31f527116 fix: remove --json flag from build 2018-12-20 16:57:57 -08:00
fragosti
e68c67a01d feat: move over @next images as well, selectively delete 2018-12-20 16:39:31 -08:00
fragosti
ea781b8850 feat: remove unused files 2018-12-20 16:32:00 -08:00
fragosti
ba7c8d9244 feat: make project build by adding back old footer component 2018-12-20 16:28:19 -08:00
fragosti
a67b34700e feat: remove @next directory from all imports 2018-12-20 16:03:06 -08:00
fragosti
abdf91c691 feat: move all @next files to non @next directory 2018-12-20 16:01:53 -08:00
Brandon Millman
9b540fd8e5 Merge pull request #1434 from 0xProject/fix/instant/signature-denied
[instant] fix signature denial error message and add trust wallet detection
2018-12-20 15:35:26 -08:00
Steve Klebanoff
5ec1ae5f7f Merge pull request #1467 from 0xProject/fix/website/remove-placeholders
[website] Don't show placeholder text on contact page
2018-12-20 15:27:47 -08:00
Steve Klebanoff
bed5b275e4 Merge pull request #1466 from 0xProject/feature/website/remove-ts-warnings
[website] Fix TS errors
2018-12-20 15:27:27 -08:00
Brandon Millman
56af9b2aab Merge branch 'development' into fix/instant/signature-denied
* development: (914 commits)
  Unfix compiler version except for top level contracts
  Move OrderValidator to extensions
  Update CHANGELOG
  Remove assembly version of matchOrders
  Add getOrderInfo check before calling fillOrder
  Update comments and hard code function selector constants
  Fix build after rebase
  update comments
  Fix build and add back tests
  Update dependency paths
  Add OrderMatcher tests
  feat: Add OrderMatcher contract that takes spread in multiple assets by calling `matchOrders` followed by `fillOrder`
  Update CHANGELOG
  Use more efficient equality checks
  Add note about input validation
  Use more efficient check for overflow
  Check if amount == 0 before doing division
  Reapply prettier
  New relayers
  feat(sra_client.py): Test deployed pkg via tox
  ...
2018-12-20 15:21:28 -08:00
Steve Klebanoff
01e7850cd3 fix(website): Cleanup jobs section 2018-12-20 15:13:09 -08:00
Brandon Millman
b399aa25aa feat(instant): add new event for unknown buy errors 2018-12-20 15:05:54 -08:00
Amir Bandeali
0a84ee7488 Merge pull request #1468 from 0xProject/feature/contracts/unfix-compiler-version
Unfix Solidity compiler version except for top level contracts
2018-12-20 14:54:30 -08:00
Brandon Millman
7c7085c932 feature(contract-wrappers): add support for Trust Wallet signature denial errors when trying to sense signature denial from a provider 2018-12-20 14:45:06 -08:00
Brandon Millman
bbe9862aa6 fix(instant): add analytics to unknown error on executeBuyAsync 2018-12-20 14:43:14 -08:00
F. Eugene Aumson
7e12ae1bfc Clarify what kind of support ticket was raised. 2018-12-20 17:34:14 -05:00
Brandon Millman
080c6d3146 fix(instant): catch unknown errors from executeBuyAsync, report them and show could not submit transaction 2018-12-20 14:32:11 -08:00
Brandon Millman
2effc3e267 fix(instant): use isTrust property to determine if provider is trust wallet 2018-12-20 14:10:29 -08:00
Steve Klebanoff
970e670467 make percentage 100% 2018-12-20 14:07:04 -08:00
Steve Klebanoff
36240de897 give more space to job title and change apply link 2018-12-20 14:03:29 -08:00
Steve Klebanoff
e4e1c82ad2 Merge pull request #1463 from 0xProject/feature/website/new-logos
[website] Add new relayers
2018-12-20 13:20:20 -08:00
Amir Bandeali
9b521aeef5 Unfix compiler version except for top level contracts 2018-12-20 11:37:29 -08:00
Steve Klebanoff
1fa93fc8ce Merge pull request #1462 from bakkenbaeck/feature/website/0x-org
[website] Fixes
2018-12-20 11:17:42 -08:00
Amir Bandeali
12177270df Merge pull request #1464 from 0xProject/feature/contracts-extensions/orderValidator
Move OrderValidator to extensions
2018-12-20 10:49:15 -08:00
Steve Klebanoff
d20ed2247f Remove using label as placeholder 2018-12-20 10:46:57 -08:00
Amir Bandeali
f7fd9789ba Move OrderValidator to extensions 2018-12-20 10:27:39 -08:00
Steve Klebanoff
75ba724c28 Merge branch 'development' into feature/website/new-logos 2018-12-20 10:22:29 -08:00
Amir Bandeali
bc3093e635 Merge pull request #1117 from 0xProject/feature/contracts/orderMatcher
Implement OrderMatcher
2018-12-20 10:15:35 -08:00
Steve Klebanoff
5d3d596909 Don't allow compiling with errors 2018-12-20 10:12:45 -08:00
Steve Klebanoff
5b4d4d5537 Declare imported package which doesn't have types 2018-12-20 10:06:57 -08:00
Steve Klebanoff
521679c87c Fix types 2018-12-20 09:56:48 -08:00
Amir Bandeali
2a9e03b61e Merge pull request #1455 from 0xProject/fix/contracts/MAPupdates
Add validation to MAP
2018-12-20 09:56:06 -08:00
Steve Klebanoff
fb003903c7 Fix types 2018-12-20 09:21:29 -08:00
Amir Bandeali
fbfb6eb45e Update CHANGELOG 2018-12-20 09:13:36 -08:00
Amir Bandeali
58be23ac97 Remove assembly version of matchOrders 2018-12-20 09:13:36 -08:00
Amir Bandeali
90fcf59a32 Add getOrderInfo check before calling fillOrder 2018-12-20 09:13:36 -08:00
Amir Bandeali
e74b24bbdb Update comments and hard code function selector constants 2018-12-20 09:13:36 -08:00
Amir Bandeali
6b5b8fe8e0 Fix build after rebase 2018-12-20 09:13:36 -08:00
Amir Bandeali
0a5ecec3e2 update comments 2018-12-20 09:13:36 -08:00
Amir Bandeali
b6f4c5c7da Fix build and add back tests 2018-12-20 09:13:36 -08:00
Amir Bandeali
a6ec2a8c54 Update dependency paths 2018-12-20 09:13:36 -08:00
Amir Bandeali
2fa8b8d1d0 Add OrderMatcher tests 2018-12-20 09:13:36 -08:00
Amir Bandeali
b786836db6 feat: Add OrderMatcher contract that takes spread in multiple assets by calling matchOrders followed by fillOrder 2018-12-20 09:13:36 -08:00
Amir Bandeali
8e5f0f9c5c Update CHANGELOG 2018-12-20 09:11:30 -08:00
Amir Bandeali
99e32869e6 Use more efficient equality checks 2018-12-20 09:11:30 -08:00
Amir Bandeali
04729c44b4 Add note about input validation 2018-12-20 09:11:30 -08:00
Amir Bandeali
2a2260de45 Use more efficient check for overflow 2018-12-20 09:11:30 -08:00
Amir Bandeali
a7c3996627 Check if amount == 0 before doing division 2018-12-20 09:11:30 -08:00
Steve Klebanoff
6dbcdad1ff Fix TS error w/ children on portal 2018-12-20 09:03:30 -08:00
Steve Klebanoff
f94bdc496a Rename props and fix router types 2018-12-20 08:59:13 -08:00
Steve Klebanoff
97369c969c Fix StyledCommunityLink props 2018-12-20 08:28:58 -08:00
Steve Klebanoff
72e68c43e3 remove unused file 2018-12-19 15:58:05 -08:00
Steve Klebanoff
473537e6e7 remove unused instant pages 2018-12-19 15:56:12 -08:00
Fred Carlsen
ca3e0b26c6 Reapply prettier 2018-12-20 00:24:28 +01:00
Steve Klebanoff
2716374b25 New relayers 2018-12-19 15:23:42 -08:00
F. Eugene Aumson
ace968a4fc feat(sra_client.py): Test deployed pkg via tox 2018-12-19 18:18:44 -05:00
Fred Carlsen
e6f3693813 Disable fee slider when no address is put in 2018-12-20 00:16:39 +01:00
Fred Carlsen
531ed54961 Fix page titles 2018-12-20 00:06:39 +01:00
Fred Carlsen
5eb316f5d8 Merge remote-tracking branch 'upstream/feature/website/0x-org' into feature/website/0x-org
# Conflicts:
#	packages/website/ts/@next/components/button.tsx
#	packages/website/ts/@next/components/definition.tsx
#	packages/website/ts/@next/components/hero.tsx
#	packages/website/ts/@next/components/sections/landing/about.tsx
#	packages/website/ts/@next/pages/market_maker.tsx
2018-12-19 23:59:07 +01:00
Steve Klebanoff
97e21106e5 Merge pull request #1448 from 0xProject/feature/website/0x-org
[website][react-shared][instant] 0x org
2018-12-19 10:04:41 -08:00
Fabio B
6e4cb0246c Merge pull request #1453 from 0xProject/addUnenforcedConventions
Add unenforced coding rules to CONTRIBUTING.md
2018-12-19 17:29:02 +00:00
Steve Klebanoff
125a940560 Merge branch 'development' into feature/website/0x-org 2018-12-19 08:19:36 -08:00
Steve Klebanoff
a7f847bf3e Merge pull request #1457 from 0xProject/feature/website/0x-org-linting
[website] 0x org linting and prettier
2018-12-19 08:18:17 -08:00
Leonid Logvinov
b3978b641c Merge pull request #1461 from 0xProject/feature/sol-compiler-watch
Sol-compiler watch mode
2018-12-19 16:52:49 +01:00
Fabio Berger
94dc272335 Merge branch 'development' into addUnenforcedConventions
* development: (92 commits)
  Add missing CHANGELOG entry for OrderWatcher WS interface
  Bump up stale to close to 30 days
  Move onMessageAsync outside of tests and add comments
  Fix WS tests to remove race-condition and be more specific about the message expected
  Add temporary console.log to test failing on CI
  Make @0x/contracts-test-utils a dependency instead of a devDependency
  Fix test-publish failure in contracts packages
  Fixed solhint errors
  Added documentation to `LibAddressArray.append` and switched `if` to `require` smt
  Updated changelogs for new contracts
  Added `gas` field so tests pass on Geth;
  Added Changelog for new Extensions
  Updated comment `Execute fillOrder` -> `Execute exchange function`
  Explicit returns
  Prettier / Linter on contracts + TS
  Refactoring balance threshold filter
  Moved exchange calldata functions to separate mixin
  Less Assembly. More Solidity. Less Efficiency. More Readability.
  Run all tests for extensions
  Cleaned up tests for balance threshold filter
  ...
2018-12-19 15:17:46 +00:00
Fabio B
d456710441 Update packages/sol-compiler/src/compiler.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-19 15:57:30 +01:00
Fabio B
e886ef8c4b Update packages/sol-compiler/src/utils/compiler.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-19 15:57:19 +01:00
Leonid Logvinov
86a9375d04 Run prettier 2018-12-19 15:41:49 +01:00
Leonid Logvinov
f832e035da Run prettier 2018-12-19 15:41:49 +01:00
Leonid Logvinov
5656605355 Describe regexes 2018-12-19 15:41:49 +01:00
Leonid Logvinov
5c4a992b87 Add a NOTE comment 2018-12-19 15:41:49 +01:00
Leonid Logvinov
0abf1c71f6 Add a comment for SpyResolver 2018-12-19 15:41:49 +01:00
Leonid Logvinov
85be2fbf19 Move logWithTime to logUtils 2018-12-19 15:41:49 +01:00
Fabio B
69de1d05ef Update packages/sol-compiler/src/compiler.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-19 15:41:49 +01:00
Leonid Logvinov
237014e823 Disable linter no a hanging promise with a comment 2018-12-19 15:41:49 +01:00
Leonid Logvinov
85a8c6160f Mark the field as readonly 2018-12-19 15:41:49 +01:00
Leonid Logvinov
e2535027e9 Remove unused variables 2018-12-19 15:41:49 +01:00
Leonid Logvinov
87d157b805 Move logWithTime function to utils 2018-12-19 15:41:49 +01:00
Leonid Logvinov
56d48758d3 Add PR numbers 2018-12-19 15:41:49 +01:00
Leonid Logvinov
abfb358250 Add the sol-compiler watch command to all packages 2018-12-19 15:41:49 +01:00
Leonid Logvinov
657b698e1e Add sol-compiler watch mode 2018-12-19 15:41:48 +01:00
Leonid Logvinov
8ddf925a8f Add SpyResolver 2018-12-19 15:41:48 +01:00
Leonid Logvinov
c8eaa63cce Add to type in sol-resolver 2018-12-19 15:41:48 +01:00
Leonid Logvinov
b2edd84b0e Add missing contract libs to compiler.json config 2018-12-19 15:41:48 +01:00
Leonid Logvinov
bc27ee0deb Add includes section to typescript-typings package.json 2018-12-19 15:41:48 +01:00
Leonid Logvinov
c5632490f2 Refactor most of the sol-compiler methods into helper functions in utils and make resolver pluggable into them 2018-12-19 15:41:48 +01:00
Fabio B
89ea7b2a2d Merge pull request #1429 from 0xProject/website/addPySRA
Add Python SRA client to Developer home
2018-12-19 14:40:46 +00:00
Fabio Berger
b3bcd726b8 fix prettier 2018-12-19 14:19:37 +00:00
Fabio Berger
293dadc22a Merge branch 'development' into website/addPySRA
* development: (141 commits)
  Add missing CHANGELOG entry for OrderWatcher WS interface
  Bump up stale to close to 30 days
  Move onMessageAsync outside of tests and add comments
  Fix WS tests to remove race-condition and be more specific about the message expected
  Add temporary console.log to test failing on CI
  Make @0x/contracts-test-utils a dependency instead of a devDependency
  Fix test-publish failure in contracts packages
  Fixed solhint errors
  Added documentation to `LibAddressArray.append` and switched `if` to `require` smt
  Updated changelogs for new contracts
  Added `gas` field so tests pass on Geth;
  Added Changelog for new Extensions
  Updated comment `Execute fillOrder` -> `Execute exchange function`
  Explicit returns
  Prettier / Linter on contracts + TS
  Refactoring balance threshold filter
  Moved exchange calldata functions to separate mixin
  Less Assembly. More Solidity. Less Efficiency. More Readability.
  Run all tests for extensions
  Cleaned up tests for balance threshold filter
  ...
2018-12-19 14:16:35 +00:00
Fabio Berger
040b402b6d Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Move onMessageAsync outside of tests and add comments
  Fix WS tests to remove race-condition and be more specific about the message expected
  Add temporary console.log to test failing on CI
  Remove unused file
  Fix file name
  Consolidate use of isVerbose in orderWatcherConfig
  Add isVerbose option to enable/disable logging
  Fix schemas and tests
  Move OrderWatcher Websocket schemas to json-schemas and convert to JSON so that they are language agnostic
  Improve our compliance to the JSON RPC spec
  remove unused instance variable
  Ensure fileName matches class name, fix broadcast
  Respond to CR
  Respond to CR
  WIP: OrderWatcher WebSocket
2018-12-19 13:21:16 +00:00
Fabio Berger
5c24596d81 Add missing CHANGELOG entry for OrderWatcher WS interface 2018-12-19 13:21:06 +00:00
Fabio B
552007cafb Merge pull request #1427 from 0xProject/features/orderwatcher_ws
OrderWatcher WebSocket Server
2018-12-19 13:19:22 +00:00
Fabio Berger
d2ef88f638 Merge branch 'development' into features/orderwatcher_ws
* development: (74 commits)
  Bump up stale to close to 30 days
  Make @0x/contracts-test-utils a dependency instead of a devDependency
  Fix test-publish failure in contracts packages
  Fixed solhint errors
  Added documentation to `LibAddressArray.append` and switched `if` to `require` smt
  Updated changelogs for new contracts
  Added `gas` field so tests pass on Geth;
  Added Changelog for new Extensions
  Updated comment `Execute fillOrder` -> `Execute exchange function`
  Explicit returns
  Prettier / Linter on contracts + TS
  Refactoring balance threshold filter
  Moved exchange calldata functions to separate mixin
  Less Assembly. More Solidity. Less Efficiency. More Readability.
  Run all tests for extensions
  Cleaned up tests for balance threshold filter
  Removed deprecated README + comments
  removed unnecessary log
  removed `only` from tests
  solhint fixes
  ...
2018-12-19 13:05:59 +00:00
Fabio Berger
bce7ae78bc Bump up stale to close to 30 days 2018-12-19 13:05:47 +00:00
Fabio Berger
90ee70db23 Move onMessageAsync outside of tests and add comments 2018-12-19 12:49:51 +00:00
Fabio Berger
84c8b83694 Fix WS tests to remove race-condition and be more specific about the message expected 2018-12-19 12:18:53 +00:00
Leonid Logvinov
112724d881 Merge pull request #1459 from 0xProject/fix/contracts-test-publish
Fix test-publish failure in contracts packages
2018-12-19 12:15:22 +01:00
Fabio Berger
e2510ed28f Add temporary console.log to test failing on CI 2018-12-19 10:44:32 +00:00
Alex Browne
768e1d541c Make @0x/contracts-test-utils a dependency instead of a devDependency 2018-12-18 18:22:54 -08:00
Alex Browne
a650d695ce Fix test-publish failure in contracts packages 2018-12-18 16:26:10 -08:00
Steve Klebanoff
0eef07307e Declare interface and make isNoBorder optional 2018-12-18 14:49:30 -08:00
Steve Klebanoff
d69b3a0244 Type definition so TS knows it has defaultProps 2018-12-18 14:49:09 -08:00
Steve Klebanoff
fa5acd07b0 Move Hero to bottom, give interface explicit names 2018-12-18 14:36:46 -08:00
Steve Klebanoff
fa612fe173 Linting 2018-12-18 14:19:28 -08:00
Steve Klebanoff
e10b30886f includeEmpty -> shouldIncludeEmpty 2018-12-18 14:11:29 -08:00
Steve Klebanoff
441b5ac6f1 Get rid of unused import 2018-12-18 14:08:06 -08:00
Steve Klebanoff
96a8762704 Move imports and put action into var 2018-12-18 14:07:59 -08:00
Steve Klebanoff
09eac39040 Move imports 2018-12-18 14:07:53 -08:00
Steve Klebanoff
b96236cdb3 Remove comments 2018-12-18 13:57:26 -08:00
Steve Klebanoff
f6525efe95 Not assigning to variable because we never used the variable 2018-12-18 13:57:19 -08:00
Steve Klebanoff
9728267eac Removing unused interface 2018-12-18 13:57:03 -08:00
Steve Klebanoff
f097259266 Removing unused imports 2018-12-18 13:56:53 -08:00
Greg Hysen
38346a9aae Merge pull request #1383 from 0xProject/feature/contracts/balanceThresholdFilter
Balance Threshold Filter
2018-12-18 13:56:18 -08:00
Greg Hysen
ca0ab38521 Fixed solhint errors 2018-12-18 13:36:05 -08:00
Greg Hysen
d2a4fd5706 Added documentation to LibAddressArray.append and switched if to require smt 2018-12-18 13:36:05 -08:00
Greg Hysen
afe200c4e1 Updated changelogs for new contracts 2018-12-18 13:36:05 -08:00
Greg Hysen
00f5b94d0a Added gas field so tests pass on Geth; 2018-12-18 13:36:05 -08:00
Greg Hysen
1de92659ee Added Changelog for new Extensions 2018-12-18 13:36:05 -08:00
Greg Hysen
25722d8154 Updated comment Execute fillOrder -> Execute exchange function 2018-12-18 13:36:05 -08:00
Greg Hysen
bb4ce9b3ad Explicit returns 2018-12-18 13:36:05 -08:00
Greg Hysen
b524ac7af2 Prettier / Linter on contracts + TS 2018-12-18 13:36:05 -08:00
Greg Hysen
dea6f35b04 Refactoring balance threshold filter 2018-12-18 13:36:05 -08:00
Greg Hysen
f3a2e3b6f3 Moved exchange calldata functions to separate mixin 2018-12-18 13:36:05 -08:00
Greg Hysen
f91781a060 Less Assembly. More Solidity. Less Efficiency. More Readability. 2018-12-18 13:36:05 -08:00
Greg Hysen
22fd23643c Run all tests for extensions 2018-12-18 13:36:05 -08:00
Greg Hysen
a1266a3341 Cleaned up tests for balance threshold filter 2018-12-18 13:36:05 -08:00
Greg Hysen
34ff7fae9c Removed deprecated README + comments 2018-12-18 13:36:05 -08:00
Greg Hysen
d45c13bfa8 removed unnecessary log 2018-12-18 13:36:05 -08:00
Greg Hysen
dccca95c2c removed only from tests 2018-12-18 13:36:05 -08:00
Greg Hysen
fc684ad063 solhint fixes 2018-12-18 13:36:05 -08:00
Greg Hysen
6a0f5f39ee Prettier / Linter fixes for TS 2018-12-18 13:36:05 -08:00
Greg Hysen
4417c76b13 Ported Balance Threshold Filter to new contract directory structure 2018-12-18 13:36:05 -08:00
Greg Hysen
8799f9bb90 Test for ERC20 balance threshold 2018-12-18 13:36:05 -08:00
Greg Hysen
6d673ac942 Exchange Selectors - sorted 2018-12-18 13:36:05 -08:00
Greg Hysen
8d6219296a Removed Yes Token - its no longer needed to test Balance Threshold Filter 2018-12-18 13:36:05 -08:00
Greg Hysen
cb9ec18f96 Tests finished for balance threshold wrapper 2018-12-18 13:36:05 -08:00
Greg Hysen
1883f4d272 matchOrders test cases for balance threshold filter contract 2018-12-18 13:36:05 -08:00
Greg Hysen
93b9c251ed Tests for MatchOrders 2018-12-18 13:36:05 -08:00
Greg Hysen
3ad72d96f4 Tests for marketBuy invariants 2018-12-18 13:36:05 -08:00
Greg Hysen
4f977aa51d marketSellNoThrow tests 2018-12-18 13:36:05 -08:00
Greg Hysen
a2df428afb tests for marketSellOrders 2018-12-18 13:36:05 -08:00
Greg Hysen
e45a0ffdbf All tests running so far 2018-12-18 13:36:05 -08:00
Greg Hysen
51355209a2 Tests for batchFill variants 2018-12-18 13:36:05 -08:00
Greg Hysen
4b0d01ad72 tests for batchFillOrdes 2018-12-18 13:36:05 -08:00
Greg Hysen
a655f4b193 tests for fillOrder variants 2018-12-18 13:36:05 -08:00
Greg Hysen
7af2c751dc fillOrder tests with new wrapper 2018-12-18 13:36:05 -08:00
Greg Hysen
d882133e44 Wrappers for balance threshold filter + updated some tests to use the wrapper 2018-12-18 13:36:05 -08:00
Greg Hysen
7e7880aea0 Conformed to hex format for constructing offsets 2018-12-18 13:36:05 -08:00
Greg Hysen
18f028fb08 Removed unnecessary note 2018-12-18 13:36:05 -08:00
Greg Hysen
14c97b3ec3 Include threshold balance in constructor of BalanceThresholdFilter contract 2018-12-18 13:36:05 -08:00
Greg Hysen
58a382d9b6 Function Documentation 2018-12-18 13:36:05 -08:00
Greg Hysen
2be9b1ff08 Updated Balance Threshold Filter to use mixin pattern 2018-12-18 13:36:05 -08:00
Greg Hysen
1cdd82178f ComplianceForwarder renamed to BalanceThresholdFilter 2018-12-18 13:36:05 -08:00
Greg Hysen
dbf1de2e69 Revert reasons for balance threshold filter 2018-12-18 13:36:05 -08:00
Greg Hysen
ba986432ec Some comments 2018-12-18 13:36:05 -08:00
Greg Hysen
3bb147b0f1 Documented inline assembly functions 2018-12-18 13:36:05 -08:00
Greg Hysen
0556defa58 working on batch fills. Compliance part is finished. 2018-12-18 13:36:05 -08:00
Greg Hysen
4217d0cd7d cleanup 2018-12-18 13:36:05 -08:00
Greg Hysen
5863a29a91 cleaning 2018-12-18 13:36:05 -08:00
Greg Hysen
df0de07184 cleaning 2018-12-18 13:36:05 -08:00
Greg Hysen
28a5ed6a9a cleaning 2018-12-18 13:36:05 -08:00
Greg Hysen
c040ad0850 cleaning 2018-12-18 13:36:05 -08:00
Greg Hysen
8007ef6c0b cleaning I 2018-12-18 13:36:05 -08:00
Greg Hysen
a332c5e5c2 Code to validate addresses from order arrays 2018-12-18 13:36:05 -08:00
Greg Hysen
bab7569ed9 Refactoring asm 2018-12-18 13:36:05 -08:00
Greg Hysen
16bd0ce7ec generalized KYC extension passing all tests 2018-12-18 13:36:05 -08:00
Greg Hysen
61a906e9e7 Abstract address validation in asm 2018-12-18 13:36:05 -08:00
Greg Hysen
8c9d48477d Exchange selector contract - autogenerated 2018-12-18 13:36:05 -08:00
Greg Hysen
9f68ac7bbe Making progress on generalized forwarder 2018-12-18 13:36:05 -08:00
Greg Hysen
4e341582ae Extract makerAddress in assembly 2018-12-18 13:36:05 -08:00
Greg Hysen
37a1271af2 fillOrder -> executeTransaction rename 2018-12-18 13:36:05 -08:00
Greg Hysen
743c4c36eb Removed unnecessary comments in compliant forwarder 2018-12-18 13:36:05 -08:00
Greg Hysen
3f7bd24250 Wrapped up tests for compliant forwarder 2018-12-18 13:36:05 -08:00
Greg Hysen
33e41dd500 More tests + require instead of revert in compliance contract 2018-12-18 13:36:05 -08:00
Greg Hysen
989b5b0a98 Ran linter 2018-12-18 13:36:05 -08:00
Greg Hysen
a4ab038aa8 Ran prettier 2018-12-18 13:36:05 -08:00
Greg Hysen
e81f92bffa End-to-end test for compliant forwarder - works 2018-12-18 13:36:05 -08:00
Greg Hysen
003075a8a5 WIP - Tests for compliant forwarder 2018-12-18 13:36:05 -08:00
Greg Hysen
b4aca370de Writing tests for Compliant Forwarder 2018-12-18 13:36:05 -08:00
Greg Hysen
c854c99f20 template for Compliant Forwarder tests 2018-12-18 13:36:05 -08:00
Greg Hysen
0e0e05e0e0 Compile Compliant Forwarder contract 2018-12-18 13:36:04 -08:00
Greg Hysen
88595718c3 Yes Compliance Token 2018-12-18 13:36:04 -08:00
Greg Hysen
f104d91595 Broken commit -- saving current state of getting wyre compliance token contract setup 2018-12-18 13:36:04 -08:00
Greg Hysen
07c1a0121f Untested - Compliant Forwarder with Wyre "Yes Compliance" Token 2018-12-18 13:36:04 -08:00
Steve Klebanoff
67521da5c1 useAnchorTag -> shouldUseAnchorTag 2018-12-18 13:29:21 -08:00
Steve Klebanoff
9bd71aeeff run prettier on website 2018-12-18 13:24:53 -08:00
Steve Klebanoff
59d7efa78a Merge pull request #1456 from 0xProject/feature/website/0x-org-bb-fixes-rebase
[website] Bakken & Baeck 0x.org website fixes
2018-12-18 13:19:32 -08:00
Fred Carlsen
102b7154e0 Remove community and market maker route 2018-12-18 13:03:54 -08:00
Fred Carlsen
abbb6793cc Added routes 2018-12-18 13:03:51 -08:00
Fred Carlsen
7b117081d3 Added community and market maker routes 2018-12-18 13:03:47 -08:00
Fred Carlsen
342ecae34d Left-align hero on mobile 2018-12-18 13:03:42 -08:00
Fred Carlsen
b40551e2df Change cursor on dropdown triggers 2018-12-18 13:03:39 -08:00
Fred Carlsen
ffa57c3703 Tweak market maker 2018-12-18 13:03:35 -08:00
Fred Carlsen
630ecb98e1 Mobile tweaks 2018-12-18 13:03:30 -08:00
Fred Carlsen
ae27695d25 Prevent overflow on instant page 2018-12-18 13:03:25 -08:00
Steve Klebanoff
45d8b522f4 Merge branch 'development' into feature/website/0x-org 2018-12-18 12:49:22 -08:00
Fred Carlsen
aa5c2c249d Remove community and market maker route 2018-12-18 18:35:15 +01:00
Fred Carlsen
1ae9eedf9f Merge remote-tracking branch 'upstream/development' into feature/website/0x-org 2018-12-18 18:33:54 +01:00
Fabio Berger
622b9f662e Merge branch 'development' into features/orderwatcher_ws
* development: (107 commits)
  Fix OrderWatcher title to fix sidebar top
  Fix version picker so it doesn't overflow onto two lines
  Fix bug in pull_missing_blocks with incorrect start block (#1438)
  Pull approval events for ZRX and DAI (#1430)
  fix semicolon and apply prettier
  Fix dex order quote/base asset assigning (#1432)
  Apply prettier
  Publish
  Updated CHANGELOGS
  Rename contracts CHANGELOGs to DEPLOYs
  Move Forwarder CHANGELOG entries to extensions CHANGELOG
  Make contracts packages not private
  Publish
  Updated CHANGELOGS
  Show @ price in light grey
  Updated CHANGELOGS
  typeof -> isString
  add special case to scrape OHLCV for eth/usd (#1428)
  run linter
  simplify scaling input logic
  ...
2018-12-18 16:59:15 +00:00
Fabio Berger
e295eeb893 Remove unused file 2018-12-18 16:25:26 +00:00
Fabio Berger
67df5a433d Fix OrderWatcher title to fix sidebar top 2018-12-18 15:32:11 +00:00
Fabio Berger
18e55830b5 Fix version picker so it doesn't overflow onto two lines 2018-12-18 15:31:58 +00:00
Fabio Berger
7664f6a4fd Add unenforced coding rules to CONTRIBUTING.md 2018-12-18 14:46:21 +00:00
Fred Carlsen
cf553f2afe Added routes 2018-12-18 14:30:38 +01:00
Fred Carlsen
6cc0e6d55c Added community and market maker routes 2018-12-18 14:30:33 +01:00
Fred Carlsen
a6628cd363 Left-align hero on mobile 2018-12-18 14:30:10 +01:00
Fred Carlsen
6271133350 Change cursor on dropdown triggers 2018-12-18 14:08:35 +01:00
Fred Carlsen
55589698cf Tweak market maker 2018-12-18 14:05:10 +01:00
Fred Carlsen
ee0a226c43 Mobile tweaks 2018-12-18 14:04:44 +01:00
Fred Carlsen
d760b355ec Prevent overflow on instant page 2018-12-18 14:03:40 +01:00
Brandon Millman
4c9bdcd787 fix(website): fix broken copper form post link 2018-12-17 17:47:59 -08:00
Francesco Agosti
b7a8c871d2 Merge pull request #1452 from 0xProject/feature/website/0x-org-flawless
[website] 0x org flawless
2018-12-17 17:25:11 -08:00
fragosti
230236d4d7 fix: uppercase K 2018-12-17 17:24:46 -08:00
fragosti
2372925347 feat: update stats 2018-12-17 17:23:10 -08:00
Steve Klebanoff
df48539d41 Merge pull request #1449 from 0xProject/feature/website/0x-org-steve-links
[website] 0x.org Launch Kit and Ecosystem links
2018-12-17 17:15:43 -08:00
fragosti
90a1947c88 feat: make 0x.org #flawless 2018-12-17 17:13:34 -08:00
Alex Browne
44d9cc53b8 Fix bug in pull_missing_blocks with incorrect start block (#1438) 2018-12-17 17:07:22 -08:00
Steve Klebanoff
293e099cb3 Merge pull request #1451 from 0xProject/feature/website/0x-org-hide-links
[website] 0x.org Remove unused paths
2018-12-17 17:00:56 -08:00
Steve Klebanoff
e34aa4d859 Fix link 2018-12-17 17:00:06 -08:00
Steve Klebanoff
50110b3725 Merge branch 'feature/website/0x-org' into feature/website/0x-org-steve-links 2018-12-17 16:57:21 -08:00
Steve Klebanoff
e5815538e4 Use constants 2018-12-17 16:56:00 -08:00
Francesco Agosti
4fbc544b16 Merge pull request #1450 from 0xProject/feature/website/0x-org-about
[website] 0x org about
2018-12-17 16:53:20 -08:00
Steve Klebanoff
0aa7cbac92 Merge branch 'feature/website/0x-org' into feature/website/0x-org-hide-links 2018-12-17 16:37:55 -08:00
Steve Klebanoff
8b24b7c57c Remove community and market-maker URLs 2018-12-17 16:36:24 -08:00
Francesco Agosti
ed4573fe2c Merge pull request #1447 from 0xProject/feature/website/0x-org-jank-links
[website] Fix 0x org jank links
2018-12-17 16:33:57 -08:00
fragosti
7468be8f17 feat: redirect careers to jobs 2018-12-17 16:32:58 -08:00
fragosti
0dcada8e06 feat: add links to press page 2018-12-17 16:28:18 -08:00
fragosti
b255edc577 feat: remove download our presskit copy 2018-12-17 16:26:22 -08:00
fragosti
4ac1db1247 feat: add press mailto link 2018-12-17 16:25:22 -08:00
Steve Klebanoff
2c24cff950 Link homepage to Why#cases 2018-12-17 16:23:44 -08:00
fragosti
2107285a00 fix: use new AboutPageLayout API everywhere 2018-12-17 16:22:50 -08:00
Steve Klebanoff
095cec4342 Per Matt's sugestion change personalized to dedicated 2018-12-17 16:21:29 -08:00
fragosti
53529439c5 feat: update job titles 2018-12-17 16:20:49 -08:00
fragosti
3cf9cf98dc fix: mission and values link to new tab and not append 2018-12-17 16:19:43 -08:00
Steve Klebanoff
43cc7b6626 Ecosystem links 2018-12-17 16:14:30 -08:00
Steve Klebanoff
5defa94902 Prettify ecosystem 2018-12-17 16:09:55 -08:00
fragosti
e0116da559 feat: link to mission and values 2018-12-17 16:09:51 -08:00
Steve Klebanoff
c385627030 Capitalize K in Launch Kit 2018-12-17 16:02:25 -08:00
Steve Klebanoff
031eb8d6a0 Prettify dropdown 2018-12-17 16:02:16 -08:00
Steve Klebanoff
c5f85a365b Allow banner to open in new window 2018-12-17 16:01:21 -08:00
fragosti
a6fa15c94a feat: add react-shared release notes 2018-12-17 16:01:01 -08:00
Steve Klebanoff
14767f1a51 Prettify banner 2018-12-17 15:58:27 -08:00
Steve Klebanoff
d34d8cac5d Remove unused target 2018-12-17 15:58:05 -08:00
Steve Klebanoff
1e0aa55368 Merge branch 'feature/website/0x-org' into feature/website/0x-org-steve-links 2018-12-17 15:54:16 -08:00
fragosti
bb691aa4ed feat: more blog url fixes 2018-12-17 15:48:17 -08:00
fragosti
64e84a3510 feat: fix blog link 2018-12-17 15:39:22 -08:00
Steve Klebanoff
62f5c58d83 fragment and launchkit url 2018-12-17 15:39:02 -08:00
fragosti
4cf3172c90 feat: final footer polish 2018-12-17 15:34:21 -08:00
fragosti
8452c05952 Merge branch 'feature/website/0x-org' of https://github.com/0xProject/0x-monorepo into feature/website/0x-org-jank-links 2018-12-17 15:27:15 -08:00
Steve Klebanoff
8925317c95 Merge pull request #1444 from 0xProject/feature/website/0x-org-instant-config
[website] 0x.org Instant
2018-12-17 15:24:30 -08:00
Steve Klebanoff
248a3998cf prettify launch kit 2018-12-17 15:15:37 -08:00
fragosti
be3142a96a feat: fix footer links 2018-12-17 15:12:54 -08:00
Steve Klebanoff
4626921bb6 Merge pull request #1445 from 0xProject/feature/0x-org-stats
[website] 0x.org stats
2018-12-17 15:12:05 -08:00
Steve Klebanoff
2593f1b8d7 Merge pull request #1442 from 0xProject/feature/website/0x-org-analytics
[website] 0x.org: Allow manual triggering of error, and report newsletter errors to Rollbar
2018-12-17 15:11:35 -08:00
Brandon Millman
4e80c395b1 Merge pull request #1443 from 0xProject/feature/website/0x-org-portal-updated
[0x.org] fix portal
2018-12-17 14:50:36 -08:00
Steve Klebanoff
1f59c99532 total stats 2018-12-17 14:42:08 -08:00
fragosti
a77e5a1a12 feat: fix links in navbar and dropdown 2018-12-17 14:37:34 -08:00
Steve Klebanoff
35f7dd71e9 prettify about page 2018-12-17 14:37:18 -08:00
Brandon Millman
c4036d7d0f fix(website): update Animation component for styled components v4 2018-12-17 14:31:14 -08:00
Steve Klebanoff
6e0d622a15 Open all new instant links in new window 2018-12-17 14:17:36 -08:00
Steve Klebanoff
0e8f0d1d53 Fix URLs 2018-12-17 13:59:12 -08:00
Steve Klebanoff
c126d01fe3 Conditional getStartedClick working on features list 2018-12-17 13:44:19 -08:00
Steve Klebanoff
6d66476d35 Action takes in useAnchorTag 2018-12-17 13:44:08 -08:00
Steve Klebanoff
039b95c8c1 Janky but didn't want to mess anything else up, send in useAnchorTag boolean to force using anchortag 2018-12-17 13:43:37 -08:00
Brandon Millman
30ccddf0d5 Merge pull request #1441 from 0xProject/feature/website/0x-org-jobs-update
[0x.org] update jobs page to load positions from greenhouse
2018-12-17 13:40:54 -08:00
Steve Klebanoff
024e503657 Prettify button.tsx 2018-12-17 13:37:05 -08:00
Steve Klebanoff
37e5a8a8b7 Prettify file 2018-12-17 13:29:46 -08:00
Steve Klebanoff
592c171557 Custom getStartedLink based on screen size 2018-12-17 13:29:39 -08:00
fragosti
9df0ae90bc feat: use react-shared Link component 2018-12-17 13:28:49 -08:00
Steve Klebanoff
33e06fdf40 Run prettifier 2018-12-17 13:16:19 -08:00
fragosti
cce07acf9a feat: update developer dropdown links 2018-12-17 13:14:49 -08:00
Steve Klebanoff
d32f77ebb9 Add includeEmpty option 2018-12-17 13:01:15 -08:00
Steve Klebanoff
35cb769456 prettify file 2018-12-17 12:57:59 -08:00
Brandon Millman
9fdd6e56a7 fix(website): redirect /jobs to /about/jobs 2018-12-17 12:21:37 -08:00
Brandon Millman
2a0ba501e0 feature(website): implement loading jobs from greenhouse in jobs page 2018-12-17 12:21:36 -08:00
Brandon Millman
90d4a2b590 chore(website): yarn lock 2018-12-17 12:21:36 -08:00
Brandon Millman
f7581d60da fix(website): fix mis-replaced website api backend links 2018-12-17 12:21:03 -08:00
Steve Klebanoff
2cc03216bd manually trigger error and also send in newsletter errors 2018-12-17 12:00:15 -08:00
Steve Klebanoff
cd4e679db7 apply prettier 2018-12-17 11:58:49 -08:00
Alex Browne
28713bdb38 Pull approval events for ZRX and DAI (#1430) 2018-12-17 11:36:03 -08:00
Francesco Agosti
c0b469fdd9 Merge pull request #1440 from bakkenbaeck/feature/website/0x-org
Feature/website/0x org
2018-12-17 11:21:53 -08:00
Ezekiel Aquino
47db165afc Fixes hamburger icon bgcolor, jobs link 2018-12-17 19:56:10 +01:00
Fred Carlsen
f95401ad33 Add definition 2018-12-17 19:46:10 +01:00
Fred Carlsen
5209729eb1 Increase header tolerances 2018-12-17 19:39:37 +01:00
Fred Carlsen
31bbb0696c Show errors from serverside 2018-12-17 19:26:04 +01:00
Fred Carlsen
6ab8415198 Update community page 2018-12-17 19:26:04 +01:00
Fred Carlsen
5a6b538a13 Add community links 2018-12-17 19:26:03 +01:00
Fred Carlsen
42e63b32e3 Replace share image 2018-12-17 19:26:03 +01:00
Ezekiel Aquino
072c80f475 Removes content transform on mobile nav toggle 2018-12-17 18:30:00 +01:00
Ezekiel Aquino
fb623cf63b Untoggles nav on headroom unpin 2018-12-17 18:23:40 +01:00
Ezekiel Aquino
5e4defefb0 Adds headroom instead for toggling nav visibility 2018-12-17 18:06:58 +01:00
Fred Carlsen
8d76053210 Fix default margin 2018-12-17 18:04:51 +01:00
Fred Carlsen
b7d8362fb1 Update lock file 2018-12-17 18:04:36 +01:00
Fred Carlsen
73e8563413 Fix about intros 2018-12-17 18:03:50 +01:00
Ezekiel Aquino
312d864936 Fixes mobile nav overflow on mobile 2018-12-17 17:31:06 +01:00
Fred Carlsen
67caa377a4 Added Community page 2018-12-17 16:01:29 +01:00
Fred Carlsen
8234bd5409 Add def for react-scrollable-anchor 2018-12-17 16:01:16 +01:00
Fred Carlsen
3b8598b54b Prepare banner for light theme 2018-12-17 16:01:06 +01:00
Fred Carlsen
934d3b5d79 Tweak banner border on mobile 2018-12-17 14:32:05 +01:00
Fred Carlsen
5932589776 Fix cta links 2018-12-17 14:20:53 +01:00
Fred Carlsen
19e65965c8 Add market maker page 2018-12-17 14:19:10 +01:00
Fred Carlsen
8490c31fb7 Tweak configurator 2018-12-17 14:03:14 +01:00
Fred Carlsen
f242c4206f Update long term impact icon 2018-12-17 13:32:36 +01:00
Fred Carlsen
88240f6401 Fix liquidity source change 2018-12-17 13:31:41 +01:00
Fred Carlsen
7065a098e3 Update og image 2018-12-17 13:27:00 +01:00
Ezekiel Aquino
6fc80cd776 Fixes scrollable anchors in why page 2018-12-17 12:05:05 +01:00
Fred Carlsen
4611c65aa3 Fix wrong icon name 2018-12-17 11:57:05 +01:00
Fred Carlsen
d6866a6dae Adjust thick stroked svgs 2018-12-17 11:57:05 +01:00
Ezekiel Aquino
68be8ef861 Fix footer link hover states 2018-12-17 11:51:35 +01:00
Ezekiel Aquino
0c298b7be4 Fixes mobile button layout for Definition component 2018-12-17 11:48:32 +01:00
Ezekiel Aquino
6eb8256555 Resolves font flicker on route change
- Adds formular css to globally linked css
2018-12-17 11:42:00 +01:00
Fred Carlsen
240e3558fa Update client list + logos 2018-12-17 11:38:47 +01:00
Fred Carlsen
8988650c8b Fix newsletter input color in light theme 2018-12-17 11:30:11 +01:00
Fred Carlsen
28bad6567b Fix launch kit link 2018-12-17 11:19:59 +01:00
Fred Carlsen
1be948bd55 Fix stray tag 2018-12-17 11:17:24 +01:00
Fred Carlsen
c2b355c25e Fix typo 2018-12-17 11:16:31 +01:00
Fred Carlsen
d12e881e62 Fix homepage icon 2018-12-17 11:15:32 +01:00
Fred Carlsen
85edc297f6 Fix mobile links 2018-12-17 11:14:43 +01:00
Fred Carlsen
96d89ddade Fix portal link 2018-12-17 11:07:00 +01:00
Fred Carlsen
5b4b4123e5 Fix mobile nav placement 2018-12-17 11:04:24 +01:00
Jacob Evans
2a577e0475 Add Docker image and Snapshot commands 2018-12-17 15:44:24 +11:00
Fabio Berger
6382f98608 Fix file name 2018-12-16 18:05:20 -08:00
Fabio Berger
a12b9e82f6 Consolidate use of isVerbose in orderWatcherConfig 2018-12-16 18:00:23 -08:00
Fabio Berger
5d0e715d9a Add isVerbose option to enable/disable logging 2018-12-16 17:46:28 -08:00
Fabio Berger
896c8d17c1 Fix schemas and tests 2018-12-16 17:31:38 -08:00
Fabio Berger
ee4185ab46 Move OrderWatcher Websocket schemas to json-schemas and convert to JSON so that they are language agnostic 2018-12-16 16:52:37 -08:00
Fabio Berger
7661cfc85e Improve our compliance to the JSON RPC spec 2018-12-16 16:21:27 -08:00
Fabio Berger
f510f9df99 remove unused instance variable 2018-12-15 21:34:56 -08:00
Fabio Berger
7cafe396de Ensure fileName matches class name, fix broadcast 2018-12-15 21:34:35 -08:00
kao
6bb2ef9238 Respond to CR 2018-12-15 01:25:23 -08:00
Steve Klebanoff
737d1dc54d Merge pull request #1424 from 0xProject/feature/instant/usd-eth-toggle
[instant] ETH/USD toggle
2018-12-14 17:33:56 -08:00
Steve Klebanoff
aa9aa1f58a more documentation 2018-12-14 17:05:52 -08:00
fragosti
9b4d1a1e38 feat: update prod deploy destination 2018-12-14 16:37:19 -08:00
F. Eugene Aumson
c6815bddac Correct doc titles 2018-12-14 16:22:58 -08:00
Steve Klebanoff
2e2e157fc8 Fix for asset-buyer documentation 2018-12-14 16:20:45 -08:00
F. Eugene Aumson
6639201fdb Tweak special case: only strip Schema as suffix 2018-12-14 16:11:00 -08:00
F. Eugene Aumson
57ac2f28a4 Add example usage to sra_client README 2018-12-14 16:08:57 -08:00
Steve Klebanoff
8c5ff663a9 Merge branch 'development' into feature/instant/usd-eth-toggle 2018-12-14 15:58:34 -08:00
Steve Klebanoff
67422db4bd fix semicolon and apply prettier 2018-12-14 15:58:23 -08:00
Steve Klebanoff
219902a169 rename boolean var 2018-12-14 15:55:52 -08:00
Steve Klebanoff
ab10119c5a one more test for undefined 2018-12-14 15:34:45 -08:00
Steve Klebanoff
5981823ac1 Update asset-buyer changelog describing error change 2018-12-14 15:34:45 -08:00
Steve Klebanoff
69054d85e8 Only send in amountAvailableToFill if it's a non-zero amount, add additional tests and nest, and put error into its own file 2018-12-14 15:34:45 -08:00
Steve Klebanoff
3e596f6a8c Nesting errors 2018-12-14 15:34:45 -08:00
Steve Klebanoff
c3884dfa32 More tests for assetBuyerErrorMessage 2018-12-14 15:34:45 -08:00
Steve Klebanoff
a3d93d17cd Factor in slippage amount in InsufficientAssetLiquidityError error, and show in instant 2018-12-14 15:34:45 -08:00
Steve Klebanoff
c6c45095a8 feat(asset-buyer): Custom InsufficientAssetLiquidityError error
BREAKING CHANGE: A custom InsufficientAssetLiquidityError error is now raised when there is insufficient liquidity
2018-12-14 15:34:45 -08:00
Brandon Millman
7d5388edee chore(website): yarn lock 2018-12-14 14:46:30 -08:00
Brandon Millman
51b1cab72a fix(website) replace 0xproject.com with 0x.org 2018-12-14 14:46:05 -08:00
Brandon Millman
e3dcb7107b Merge pull request #1375 from bakkenbaeck/website
[WIP] Website
2018-12-14 14:42:55 -08:00
Fred Carlsen
f7ceb4cf58 Fix logo link 2018-12-14 23:38:21 +01:00
Fred Carlsen
e53f28c570 Merge remote-tracking branch 'upstream/development' into website
# Conflicts:
#	.gitignore
#	README.md
#	contracts/core/CHANGELOG.json
#	contracts/examples/package.json
#	contracts/extensions/package.json
#	contracts/interfaces/package.json
#	contracts/libs/package.json
#	contracts/multisig/package.json
#	contracts/protocol/CHANGELOG.json
#	contracts/protocol/DEPLOYS.json
#	contracts/protocol/package.json
#	contracts/test-utils/CHANGELOG.json
#	contracts/test-utils/CHANGELOG.md
#	contracts/test-utils/package.json
#	contracts/tokens/CHANGELOG.json
#	contracts/tokens/package.json
#	contracts/utils/package.json
#	packages/0x.js/CHANGELOG.json
#	packages/0x.js/CHANGELOG.md
#	packages/0x.js/package.json
#	packages/abi-gen-wrappers/CHANGELOG.json
#	packages/abi-gen-wrappers/CHANGELOG.md
#	packages/abi-gen-wrappers/package.json
#	packages/abi-gen/CHANGELOG.json
#	packages/abi-gen/CHANGELOG.md
#	packages/abi-gen/package.json
#	packages/assert/CHANGELOG.json
#	packages/assert/CHANGELOG.md
#	packages/assert/package.json
#	packages/asset-buyer/CHANGELOG.md
#	packages/asset-buyer/package.json
#	packages/base-contract/CHANGELOG.json
#	packages/base-contract/CHANGELOG.md
#	packages/base-contract/package.json
#	packages/connect/CHANGELOG.json
#	packages/connect/CHANGELOG.md
#	packages/connect/package.json
#	packages/contract-wrappers/CHANGELOG.json
#	packages/contract-wrappers/CHANGELOG.md
#	packages/contract-wrappers/package.json
#	packages/dev-tools-pages/package.json
#	packages/dev-utils/CHANGELOG.json
#	packages/dev-utils/CHANGELOG.md
#	packages/dev-utils/package.json
#	packages/ethereum-types/CHANGELOG.json
#	packages/ethereum-types/CHANGELOG.md
#	packages/ethereum-types/package.json
#	packages/fill-scenarios/CHANGELOG.json
#	packages/fill-scenarios/CHANGELOG.md
#	packages/fill-scenarios/package.json
#	packages/instant/package.json
#	packages/instant/src/types.ts
#	packages/json-schemas/CHANGELOG.json
#	packages/json-schemas/CHANGELOG.md
#	packages/json-schemas/package.json
#	packages/metacoin/package.json
#	packages/migrations/CHANGELOG.json
#	packages/migrations/CHANGELOG.md
#	packages/migrations/package.json
#	packages/order-utils/CHANGELOG.json
#	packages/order-utils/CHANGELOG.md
#	packages/order-utils/package.json
#	packages/order-watcher/CHANGELOG.json
#	packages/order-watcher/CHANGELOG.md
#	packages/order-watcher/package.json
#	packages/pipeline/package.json
#	packages/pipeline/src/ormconfig.ts
#	packages/pipeline/src/parsers/ddex_orders/index.ts
#	packages/pipeline/src/parsers/oasis_orders/index.ts
#	packages/pipeline/src/parsers/paradex_orders/index.ts
#	packages/pipeline/src/parsers/token_metadata/index.ts
#	packages/pipeline/src/scripts/pull_competing_dex_trades.ts
#	packages/pipeline/src/scripts/pull_ddex_orderbook_snapshots.ts
#	packages/pipeline/src/scripts/pull_idex_orderbook_snapshots.ts
#	packages/pipeline/src/scripts/pull_missing_blocks.ts
#	packages/pipeline/src/scripts/pull_oasis_orderbook_snapshots.ts
#	packages/pipeline/src/scripts/pull_paradex_orderbook_snapshots.ts
#	packages/pipeline/src/scripts/pull_trusted_tokens.ts
#	packages/pipeline/src/scripts/update_relayer_info.ts
#	packages/pipeline/src/utils/get_ohlcv_trading_pairs.ts
#	packages/pipeline/src/utils/index.ts
#	packages/pipeline/test/parsers/ddex_orders/index_test.ts
#	packages/pipeline/test/parsers/oasis_orders/index_test.ts
#	packages/pipeline/test/parsers/paradex_orders/index_test.ts
#	packages/react-docs/CHANGELOG.json
#	packages/react-docs/CHANGELOG.md
#	packages/react-docs/package.json
#	packages/react-shared/CHANGELOG.json
#	packages/react-shared/CHANGELOG.md
#	packages/react-shared/package.json
#	packages/sol-compiler/CHANGELOG.md
#	packages/sol-compiler/package.json
#	packages/sol-cov/CHANGELOG.json
#	packages/sol-cov/CHANGELOG.md
#	packages/sol-cov/package.json
#	packages/sol-doc/CHANGELOG.json
#	packages/sol-doc/CHANGELOG.md
#	packages/sol-doc/package.json
#	packages/sol-resolver/CHANGELOG.md
#	packages/sol-resolver/package.json
#	packages/sra-spec/CHANGELOG.json
#	packages/sra-spec/CHANGELOG.md
#	packages/sra-spec/package.json
#	packages/subproviders/CHANGELOG.json
#	packages/subproviders/CHANGELOG.md
#	packages/subproviders/package.json
#	packages/testnet-faucets/package.json
#	packages/types/CHANGELOG.md
#	packages/types/package.json
#	packages/typescript-typings/CHANGELOG.json
#	packages/typescript-typings/CHANGELOG.md
#	packages/typescript-typings/package.json
#	packages/utils/CHANGELOG.json
#	packages/utils/CHANGELOG.md
#	packages/utils/package.json
#	packages/web3-wrapper/CHANGELOG.json
#	packages/web3-wrapper/CHANGELOG.md
#	packages/web3-wrapper/package.json
#	packages/website/package.json
#	packages/website/public/index.html
#	packages/website/ts/pages/instant/fee_percentage_slider.tsx
#	yarn.lock
2018-12-14 23:24:08 +01:00
Fred Carlsen
5c083ba16b Add id prop 2018-12-14 23:16:59 +01:00
Fred Carlsen
4d5bfb5cc2 Jump down to configurator 2018-12-14 23:16:54 +01:00
Fred Carlsen
2adeed38d8 Fix default heading size 2018-12-14 23:16:44 +01:00
Brandon Millman
21a193e516 feature(instant): add trust wallet detection 2018-12-14 14:10:15 -08:00
Brandon Millman
926fcb296f fix(instant): treat executeBuyQuote errors as signature denials 2018-12-14 14:06:24 -08:00
Fred Carlsen
f6f441cbe6 Update routes 2018-12-14 23:03:51 +01:00
Fred Carlsen
b9fa158092 Update links and routes 2018-12-14 23:03:45 +01:00
F. Eugene Aumson
210840444d HACK: cp files because CircleCI isn't 2018-12-14 13:53:21 -08:00
F. Eugene Aumson
d92e143a7e Stop installing packages as editable 2018-12-14 13:53:21 -08:00
F. Eugene Aumson
087469f1f3 Support ALL the schemas 2018-12-14 13:53:21 -08:00
F. Eugene Aumson
b6c8126589 Move zero_ex.json_schemas to its own package 2018-12-14 13:53:15 -08:00
Fred Carlsen
8570616d97 Update links 2018-12-14 22:39:04 +01:00
Fred Carlsen
373ebdbe38 Copy fixes 2018-12-14 22:38:43 +01:00
Fred Carlsen
a1410409ff Add contact modal to pages with contact link 2018-12-14 22:37:01 +01:00
Fred Carlsen
32eab3acff Fix modal submit 2018-12-14 21:56:12 +01:00
kao
d9b5884834 Respond to CR 2018-12-14 12:52:55 -08:00
Fred Carlsen
76a4468b85 Change chapter link 2018-12-14 21:51:09 +01:00
Fred Carlsen
361dc29338 Fix xianny 2018-12-14 21:50:59 +01:00
Fred Carlsen
dbdd2fb7d0 Tweak modal confirmatino 2018-12-14 21:42:25 +01:00
Fred Carlsen
b07892bb48 Type fixes 2018-12-14 21:33:08 +01:00
zkao
6d45beccad Fix dex order quote/base asset assigning (#1432) 2018-12-14 12:15:35 -08:00
Fred Carlsen
f0581285d0 Type fixes 2018-12-14 20:53:29 +01:00
Fred Carlsen
04d4e797aa Type fixes 2018-12-14 20:41:50 +01:00
Fred Carlsen
ceddc01985 Type fixes 2018-12-14 20:20:27 +01:00
Fred Carlsen
1955c846f2 Fixes 2018-12-14 19:51:39 +01:00
Francesco Agosti
1efde6f59b Merge pull request #1415 from 0xProject/feature/instant/mobile-numeric-keyboard
[instant] Change input to number input, and simplify ScalingInput
2018-12-14 10:50:32 -08:00
Fred Carlsen
6af0cf87e1 Tweak mission 2018-12-14 19:19:50 +01:00
Fred Carlsen
101fd78cb2 Finish tweaking team 2018-12-14 19:19:50 +01:00
Leonid Logvinov
91d432aa56 Apply prettier 2018-12-14 10:14:09 -08:00
Ezekiel Aquino
dde2baf204 Cleanup 2018-12-14 18:57:49 +01:00
Ezekiel Aquino
96cb278cae Cleanup 2018-12-14 18:56:53 +01:00
Ezekiel Aquino
51777ed61d Cleanup ecosystem 2018-12-14 18:54:31 +01:00
Ezekiel Aquino
2b4c557a3f Cleanup select 2018-12-14 18:53:43 +01:00
Ezekiel Aquino
84321c41f3 Cleanup configurator 2018-12-14 18:52:38 +01:00
Ezekiel Aquino
f9dfecaf13 Cleanup 2018-12-14 18:50:09 +01:00
Ezekiel Aquino
d1f73da675 Cleanup 2018-12-14 18:49:08 +01:00
Ezekiel Aquino
94c7bf47db More Cleanup 2018-12-14 18:47:09 +01:00
Fred Carlsen
4e8d653f1f Add links to ecosystem 2018-12-14 18:15:07 +01:00
Fred Carlsen
c5b63ca441 Misc typing 2018-12-14 18:05:50 +01:00
Fred Carlsen
ea668d1376 Add missing colors 2018-12-14 18:05:50 +01:00
Fred Carlsen
086c70bcdc Change ecosystem route 2018-12-14 18:05:50 +01:00
Fred Carlsen
461c7efc26 Link ecosystem 2018-12-14 18:05:50 +01:00
Fred Carlsen
c145349af0 Replace launch kit icon 2018-12-14 18:05:49 +01:00
Fred Carlsen
df445eb53c Declare missing types 2018-12-14 18:05:49 +01:00
Fred Carlsen
eadad19cb5 Mobile tweaks jobs table 2018-12-14 18:05:49 +01:00
Fred Carlsen
d410c44b07 Add icon 2018-12-14 18:05:49 +01:00
Ezekiel Aquino
9fa9a30c4d More lint cleanup 2018-12-14 17:50:27 +01:00
Ezekiel Aquino
bdc8f9aa2a Cleanup 2018-12-14 17:43:56 +01:00
Ezekiel Aquino
6db28c5300 Fix mobile nav hamburger open state 2018-12-14 16:06:06 +01:00
Ezekiel Aquino
0dc9fc4ef7 More animation tweaks 2018-12-14 15:38:56 +01:00
Ezekiel Aquino
41ec26c927 cta boxes hover state 2018-12-14 15:36:42 +01:00
Ezekiel Aquino
51def6ee6b Adds mask to get in touch anim 2018-12-14 15:28:00 +01:00
Fred Carlsen
377b87071a Tweak configurator code width 2018-12-14 15:22:27 +01:00
Fred Carlsen
1782418f92 Fix borders on why page 2018-12-14 15:22:27 +01:00
Fred Carlsen
f3f78f63ec Fix hero landing 2018-12-14 15:22:27 +01:00
Fred Carlsen
a2cb815454 Misc feedbackTweak jobs page 2018-12-14 15:22:27 +01:00
Fred Carlsen
ef200b1ce6 Copy updates 2018-12-14 15:22:27 +01:00
Ezekiel Aquino
f6c173a97e Edits animation 2018-12-14 15:02:01 +01:00
Ezekiel Aquino
ef403108fb Edits CTA landing section 2018-12-14 14:59:35 +01:00
Fred Carlsen
8a06dccbbf Tweak launch kit 2018-12-14 14:01:33 +01:00
Fred Carlsen
4590d07e7f Tweak launch kit + add icons 2018-12-14 14:01:33 +01:00
Fred Carlsen
ba89429aec Tweak definition 2018-12-14 14:00:26 +01:00
Ezekiel Aquino
ee38031696 Fixes borders in why page sections 2018-12-14 13:47:40 +01:00
Ezekiel Aquino
8948029dd7 REplaces links as navlinks in header 2018-12-14 13:32:18 +01:00
Ezekiel Aquino
e78ddd4d5a Slight tweak to landing animation 2018-12-14 13:30:36 +01:00
Ezekiel Aquino
f179dc3ca7 Hide extensions from product menu 2018-12-14 13:28:24 +01:00
Ezekiel Aquino
166a6c85fd Slower instant transition, high res images 2018-12-14 13:27:47 +01:00
Ezekiel Aquino
c7c07a7c01 Landing page animation delay 2018-12-14 13:17:23 +01:00
Ezekiel Aquino
f083cafcc7 Scrolls doc to top/ensures overfow on document on route change 2018-12-14 13:01:31 +01:00
Ezekiel Aquino
fab3a90d5a Adds mission office photo 2018-12-14 12:55:22 +01:00
Fred Carlsen
a04c54b4d8 Delete old launch kit 2018-12-14 12:49:59 +01:00
Fred Carlsen
388c7afb50 Added launch kit page 2018-12-14 12:49:59 +01:00
Fred Carlsen
51f2711796 Add hero icon size 2018-12-14 12:49:59 +01:00
Fred Carlsen
907aa7a844 Fix typedef 2018-12-14 12:49:59 +01:00
Fred Carlsen
9695be13c3 Update olafs pic 2018-12-14 12:49:59 +01:00
Ezekiel Aquino
f452fc5bc7 Resolves some sitewrap warnings [TO DO] 2018-12-14 11:49:32 +01:00
Fred Carlsen
106df4cdaf Linting fix 2018-12-14 11:41:05 +01:00
Fred Carlsen
ed6d83c0a7 Linting error 2018-12-14 11:38:32 +01:00
Fred Carlsen
66480ccb1e Linting fixes 2018-12-14 11:34:14 +01:00
Ezekiel Aquino
7a10f03496 Removes button / link outlines globally 2018-12-14 11:15:19 +01:00
Ezekiel Aquino
64c168eafc Hides mobile nav on desktop, adds flexwrap maxwidth 2018-12-14 11:10:01 +01:00
Leonid Logvinov
44e516ac65 Publish
- @0x/contracts-examples@1.0.2
 - @0x/contracts-extensions@1.0.2
 - @0x/contracts-interfaces@1.0.2
 - @0x/contracts-libs@1.0.2
 - @0x/contracts-multisig@1.0.2
 - @0x/contracts-protocol@2.1.59
 - @0x/contracts-tokens@1.0.2
 - @0x/contracts-utils@1.0.2
2018-12-13 14:58:57 -08:00
Leonid Logvinov
d018f6d9cc Updated CHANGELOGS 2018-12-13 14:58:48 -08:00
Leonid Logvinov
d5e15b05fb Rename contracts CHANGELOGs to DEPLOYs 2018-12-13 14:49:58 -08:00
Leonid Logvinov
59fad5845c Move Forwarder CHANGELOG entries to extensions CHANGELOG 2018-12-13 14:43:40 -08:00
Leonid Logvinov
545101f7a5 Make contracts packages not private 2018-12-13 14:36:34 -08:00
Leonid Logvinov
2abd8fe4ee Publish
- 0x.js@2.0.8
 - @0x/abi-gen@1.0.19
 - @0x/abi-gen-wrappers@2.0.2
 - @0x/assert@1.0.20
 - @0x/asset-buyer@3.0.4
 - @0x/base-contract@3.0.10
 - @0x/connect@3.0.10
 - @0x/contract-wrappers@4.1.3
 - @0x/dev-tools-pages@0.0.10
 - @0x/dev-utils@1.0.21
 - ethereum-types@1.1.4
 - @0x/fill-scenarios@1.0.16
 - @0x/instant@1.0.4
 - @0x/json-schemas@2.1.4
 - @0x/metacoin@0.0.32
 - @0x/migrations@2.2.2
 - @0x/order-utils@3.0.7
 - @0x/order-watcher@2.2.8
 - @0x/pipeline@1.0.2
 - @0x/react-docs@1.0.22
 - @0x/react-shared@1.0.25
 - @0x/sol-compiler@1.1.16
 - @0x/sol-cov@2.1.16
 - @0x/sol-doc@1.0.11
 - @0x/sol-resolver@1.1.1
 - @0x/sra-spec@1.0.13
 - @0x/subproviders@2.1.8
 - @0x/testnet-faucets@1.0.60
 - @0x/tslint-config@2.0.0
 - @0x/types@1.4.1
 - @0x/typescript-typings@3.0.6
 - @0x/utils@2.0.8
 - @0x/web3-wrapper@3.2.1
 - @0x/website@0.0.63
 - @0x/contracts-examples@1.0.1
 - @0x/contracts-extensions@1.0.1
 - @0x/contracts-interfaces@1.0.1
 - @0x/contracts-libs@1.0.1
 - @0x/contracts-multisig@1.0.1
 - @0x/contracts-protocol@2.1.58
 - @0x/contracts-test-utils@1.0.2
 - @0x/contracts-tokens@1.0.1
 - @0x/contracts-utils@1.0.1
2018-12-13 14:28:27 -08:00
Leonid Logvinov
3c578cfda9 Updated CHANGELOGS 2018-12-13 14:28:17 -08:00
Steve Klebanoff
6878705676 Show @ price in light grey 2018-12-13 14:27:27 -08:00
Leonid Logvinov
597b2f38f5 Updated CHANGELOGS 2018-12-13 14:04:56 -08:00
Steve Klebanoff
9697d66b66 typeof -> isString 2018-12-13 13:31:30 -08:00
Xianny
8906c30f37 add special case to scrape OHLCV for eth/usd (#1428) 2018-12-13 13:13:28 -08:00
fragosti
9cd859a68a run linter 2018-12-13 13:03:45 -08:00
fragosti
33c6e40b70 simplify scaling input logic 2018-12-13 12:45:38 -08:00
Brandon Millman
5744a7f61b Merge pull request #1418 from 0xProject/feature/website/integrate-instant-docs-track
[website] add 0x Instant as a track in the docs
2018-12-13 11:43:02 -08:00
F. Eugene Aumson
f9a6c45a03 fix(sra_client.py): Fix version badge in README
* Correct Python SRA client version badge

* Fix spacing for prettier
2018-12-13 11:36:28 -08:00
Leonid Logvinov
f8e84260b5 Bump contracts-test-utils version to match the one on npm 2018-12-13 11:33:55 -08:00
Leonid Logvinov
5a45bc5e7b Revert version bump to unpublished contracts packages 2018-12-13 11:10:24 -08:00
Brandon Millman
80f03ef987 fix(website): update copy of instant track in dev home 2018-12-13 11:00:54 -08:00
Fred Carlsen
e48887bc6f Tweak slider 2018-12-13 19:40:17 +01:00
Fred Carlsen
52272cd290 Hide configurator on smaller screens 2018-12-13 19:40:17 +01:00
Ezekiel Aquino
ac1786585e [WIP] cleanup, typing 2018-12-13 18:44:18 +01:00
Ezekiel Aquino
f4a95c295c WIP Begin cleanup, adds mediaquery component 2018-12-13 18:23:12 +01:00
Fred Carlsen
142d29ba57 Tweak padding 2018-12-13 17:48:58 +01:00
Fred Carlsen
d84c740274 Tweak margin on banner 2018-12-13 17:41:21 +01:00
Fred Carlsen
1c413e632b Styled configurator 2018-12-13 17:38:32 +01:00
Steve Klebanoff
9a1d2c055e Fix SectionHeaderProps 2018-12-13 08:31:40 -08:00
Ezekiel Aquino
803086da57 Cleans up as much as old layout 2018-12-13 17:27:40 +01:00
Ezekiel Aquino
2a242e357f Removes line-height normal on buttons because it messes with alignment 2018-12-13 16:51:53 +01:00
Ezekiel Aquino
1647400a49 Just forces that header button to behave 2018-12-13 16:50:19 +01:00
Ezekiel Aquino
41a8dd3e28 Fix missed Link 2018-12-13 16:41:42 +01:00
Ezekiel Aquino
81690d1ce5 Removes <Link> component, clean up Button.tsx 2018-12-13 16:39:19 +01:00
Fred Carlsen
f846e2f6e0 Cleanup 2018-12-13 16:08:44 +01:00
Fred Carlsen
bfc8a3ccee Tweak slides on mobile 2018-12-13 16:03:03 +01:00
Fred Carlsen
daf334a588 Links on mobile 2018-12-13 16:02:51 +01:00
Fred Carlsen
4d0c59649e Add smoother transitions on slider 2018-12-13 14:49:27 +01:00
Fred Carlsen
a1737f8d93 Feedback from harry 2018-12-13 14:47:15 +01:00
Fred Carlsen
455f244ec5 Hook up newsletter form to api 2018-12-13 13:56:25 +01:00
Fred Carlsen
6f7e27bd7f Tweak z-index 2018-12-13 13:53:10 +01:00
Ezekiel Aquino
ea57367473 Switches client logos 2018-12-13 13:51:25 +01:00
Ezekiel Aquino
088c471b78 Switches landing page icons 2018-12-13 13:39:33 +01:00
Fred Carlsen
9fda63cf74 Mobile tweaks to contactm modal 2018-12-13 13:36:01 +01:00
Fred Carlsen
4cf900631c Update icon and copy 2018-12-13 13:36:01 +01:00
Fred Carlsen
fed79b2fde Update icons 2018-12-13 13:36:01 +01:00
Ezekiel Aquino
d2e29fb081 Refactors mobile nav, theming 2018-12-13 13:18:51 +01:00
Ezekiel Aquino
b4b1d54e49 WIP refactor mobileNavMenu 2018-12-13 12:33:45 +01:00
Ezekiel Aquino
a852a4077d Increase figure font size in landing page stats 2018-12-13 11:53:00 +01:00
Fred Carlsen
1c0bf710a4 Add types 2018-12-13 11:38:03 +01:00
Fred Carlsen
f4e9103b6f Add advisors 2018-12-13 11:37:32 +01:00
Fred Carlsen
f8e95ae483 Added full team 2018-12-13 11:34:24 +01:00
Ezekiel Aquino
70df5a0a17 About pages wrapwidths 2018-12-13 11:26:52 +01:00
Ezekiel Aquino
79dac62646 WIP hero page animation test 2018-12-13 11:03:48 +01:00
Ezekiel Aquino
5bd185e831 Adds images in instant page 2018-12-13 10:54:18 +01:00
kao
687749460d WIP: OrderWatcher WebSocket
Currently incomplete. Main challenge is to figure out how to test
a client + server setup in the single-threaded javascript environment.
2018-12-12 22:39:07 -08:00
MarcZenn
a7eaa10220 remove trezor-connect module 2018-12-12 19:05:23 -08:00
MarcZenn
5a46ce55b6 prettier again 2018-12-12 18:32:30 -08:00
MarcZenn
dbebbecab1 restore CI builds 2018-12-12 18:20:30 -08:00
Steve Klebanoff
193cd67d6b A little bit of scaling logic for not cutting off text 2018-12-12 17:43:27 -08:00
Steve Klebanoff
8d54772389 show < 0.00001 ETH when amount gets really small 2018-12-12 17:35:04 -08:00
Steve Klebanoff
0f8acedf02 Merge pull request #1410 from 0xProject/fix/instant/zero-quote
[instant] Don't update heartbeat if amount is 0
2018-12-12 17:34:42 -08:00
Fabio Berger
ddf3bb7c04 Add Python SRA client to Developer home 2018-12-12 17:26:54 -08:00
Alex Browne
3a8f3e01b6 Fix bug that occurs when token metadata decimals is undefined. (#1426)
* Fix bug that occurs when token metadata decimals is undefined.

* move toBigNumberOrNull to utils
2018-12-12 16:49:01 -08:00
Steve Klebanoff
167a3fbc11 Use BN equals and call function 2018-12-12 15:57:28 -08:00
Leonid Logvinov
f9d436cd21 Merge pull request #1425 from 0xProject/feature/async-suffix
Check for an Async suffix in functions, not just methods.
2018-12-12 15:54:00 -08:00
Steve Klebanoff
2e7d363f2c Use helper function to check for error 2018-12-12 15:46:46 -08:00
Leonid Logvinov
1534505652 Fix linter errors 2018-12-12 15:32:41 -08:00
MarcZenn
c7593e66bf ran prettier 2018-12-12 15:02:41 -08:00
MarcZenn
d52dc69279 init trezor subprovider w/ trezor connect client api 2018-12-12 14:42:36 -08:00
Steve Klebanoff
9e5e1f568b show as <$0.01 when less than a cent in USD, and also show 1 significant digit if rounded amount is 0 2018-12-12 14:25:56 -08:00
Steve Klebanoff
65579c0236 Abstract SectionHeader and make 12px per Chris's comment and figma design 2018-12-12 13:43:08 -08:00
Ezekiel Aquino
be045dad9b Edits landing page animation 2018-12-12 20:37:11 +01:00
Ezekiel Aquino
885c22676b Tests landing page animation WIP 2018-12-12 20:34:12 +01:00
Leonid Logvinov
a1186f052d Add PR number 2018-12-12 11:02:51 -08:00
Leonid Logvinov
0e76d66f24 Fix linter errors 2018-12-12 10:59:31 -08:00
Leonid Logvinov
2b523a36c5 Check functions Async suffix 2018-12-12 10:54:49 -08:00
Fred Carlsen
723dd2bcde WIP configurator 2018-12-12 19:45:36 +01:00
Ezekiel Aquino
a900593c88 Tests transition in instant 2018-12-12 19:11:55 +01:00
Steve Klebanoff
756dc1e95e Linting 2018-12-12 10:07:45 -08:00
Steve Klebanoff
68faaaba5f Analytics events for ETH/USD toggle and failure to fetch eth usd price 2018-12-12 10:04:23 -08:00
Ezekiel Aquino
48fdb567cb Adds a bit more whitespace to that scroll image 2018-12-12 19:01:58 +01:00
Ezekiel Aquino
bd5a0616c4 Whitespace on instant image thing, other changes 2018-12-12 18:59:47 +01:00
Steve Klebanoff
0690e68a83 Change base currency to ETH if we can't get USD price 2018-12-12 09:54:06 -08:00
Steve Klebanoff
fb99b5ce9d Show error when fetching usd prices 2018-12-12 09:51:15 -08:00
Steve Klebanoff
aa8dfa88e1 Make primary value in total cost bold 2018-12-12 09:37:39 -08:00
Steve Klebanoff
99941972a3 Small clean up 2018-12-12 09:29:23 -08:00
Steve Klebanoff
8a5609718a Refactor BaseCurrencyChoice to be done in helper function 2018-12-12 09:26:00 -08:00
Steve Klebanoff
aeefdeaef7 Remove unused util 2018-12-12 09:25:48 -08:00
Fred Carlsen
7b4e536e86 Add more profile pics 2018-12-12 18:20:30 +01:00
Fabio Berger
52f733626e Update the a newer version of our Lerna fork with CI fixx 2018-12-12 18:20:30 +01:00
Alex Browne
c8c68fb75a Make pull_missing_blocks script consider all events with block numbers (#1420) 2018-12-12 18:20:29 +01:00
Alex Browne
1364880812 Fix project references for contracts packages (#1419)
- Removed /packages/contracts
- Removed /contracts/core
- Added `yarn build:ts` to CI tests
- Added each contracts "project" to root tsconfig.json
2018-12-12 18:20:29 +01:00
F. Eugene Aumson
ddc1f34c30 feat(sra_client.py)
* Code generation scripts

* Generated code

* Change test config to hit 0x-launch-kit

* Ran prettier on generated code

* First test case, of get_asset_pairs()

* Use launch kit docker image to faciliate CI tests

* Fix markdown rendering for GitHub and PyPI

* Add URL for PyPI to link back to GitHub

* Add one-line package description to README.md

* Remove git_push.sh

* Remove unimplemented tests

* Add sra_client to top-level README package list

* Remove repeated-everywhere long description

* Add shorcuts for publishing

* Remove TypeScript examples
2018-12-12 18:20:29 +01:00
Leonid Logvinov
cdca07d829 Remove accidentally commited files 2018-12-12 18:20:29 +01:00
zkao
59b7e25389 track idex orderbook snapshots (#1397)
* Track Idex and Oasis Orderbook Snapshots
2018-12-12 18:20:29 +01:00
Fabio Berger
87ab8f036c Publish
- 0x.js@2.0.7
 - @0x/abi-gen@1.0.18
 - @0x/abi-gen-wrappers@2.0.1
 - @0x/assert@1.0.19
 - @0x/asset-buyer@3.0.3
 - @0x/base-contract@3.0.9
 - @0x/connect@3.0.9
 - @0x/contract-wrappers@4.1.2
 - @0x/dev-tools-pages@0.0.9
 - @0x/dev-utils@1.0.20
 - ethereum-types@1.1.3
 - @0x/fill-scenarios@1.0.15
 - @0x/instant@1.0.3
 - @0x/json-schemas@2.1.3
 - @0x/metacoin@0.0.31
 - @0x/migrations@2.2.1
 - @0x/monorepo-scripts@1.0.15
 - @0x/order-utils@3.0.6
 - @0x/order-watcher@2.2.7
 - @0x/pipeline@1.0.1
 - @0x/react-docs@1.0.21
 - @0x/react-shared@1.0.24
 - @0x/sol-compiler@1.1.15
 - @0x/sol-cov@2.1.15
 - @0x/sol-doc@1.0.10
 - @0x/sol-resolver@1.1.0
 - @0x/sra-spec@1.0.12
 - @0x/subproviders@2.1.7
 - @0x/testnet-faucets@1.0.59
 - @0x/types@1.4.0
 - @0x/typescript-typings@3.0.5
 - @0x/utils@2.0.7
 - @0x/web3-wrapper@3.2.0
 - @0x/website@0.0.62
 - @0x/contracts-examples@1.0.1
 - @0x/contracts-extensions@1.0.1
 - @0x/contracts-interfaces@1.0.1
 - @0x/contracts-libs@1.0.1
 - @0x/contracts-multisig@1.0.1
 - @0x/contracts-protocol@2.1.57
 - @0x/contracts-test-utils@1.0.1
 - @0x/contracts-tokens@1.0.1
 - @0x/contracts-utils@1.0.1
2018-12-12 18:20:29 +01:00
Fabio Berger
b151b6fe69 Updated CHANGELOGS 2018-12-12 18:19:40 +01:00
Alex Browne
8f911206f7 Refactor event scraping and add support for scraping ERC20 approval events (#1401)
* Refactor event scraping and add support for scraping ERC20 approval events

* Add tests for data_sources/contract-wrappers/utils
2018-12-12 18:19:40 +01:00
F. Eugene Aumson
3496725db6 fix(order_utils.py): Remove stale comment 2018-12-12 18:19:40 +01:00
Leonid Logvinov
ed588decc6 Move OrderValidator to the protocol package 2018-12-12 18:19:39 +01:00
Leonid Logvinov
50e0336018 Revert accidental change 2018-12-12 18:19:39 +01:00
Fabio B
d07e6cb1d6 Update contracts/examples/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-12 18:19:39 +01:00
Brandon Millman
ca86f18e7d Add link to rexrelay integration example in instant README 2018-12-12 18:19:39 +01:00
Brandon Millman
72e94b3307 chore: fix typo in instant README 2018-12-12 18:19:39 +01:00
Brandon Millman
7c33c91d59 chore: remove extra newline 2018-12-12 18:19:39 +01:00
Brandon Millman
0f1197c14b Update instant README with more integration links 2018-12-12 18:19:39 +01:00
Brandon Millman
4858c0c484 Fix typo in top level README 2018-12-12 18:19:39 +01:00
Brandon Millman
5865b4848d Update top level README packages list with instant 2018-12-12 18:19:39 +01:00
Leonid Logvinov
c9af7dc9e5 Revert access changes 2018-12-12 18:19:39 +01:00
Brandon Millman
6e023e6ea3 Update instant README 2018-12-12 18:19:33 +01:00
Fabio Berger
9176e1f53b Add CHANGELOG entry 2018-12-12 18:19:33 +01:00
Fabio Berger
0dbe2a91a8 Actually pass the signature, not the signature index to a wallet contract's isValidSignature call 2018-12-12 18:19:33 +01:00
Leonid Logvinov
8afac3a92c Re-use solhint configuration 2018-12-12 18:19:33 +01:00
Leonid Logvinov
07a0170f34 Change contracts publish config 2018-12-12 18:19:33 +01:00
Xianny
1dc67b2874 perform null check on token metadata (#1412) 2018-12-12 18:19:33 +01:00
Leonid Logvinov
f09e577885 Updated CHANGELOGS 2018-12-12 18:19:33 +01:00
Leonid Logvinov
2c58b8a886 Rename core package to protocol 2018-12-12 18:19:33 +01:00
Leonid Logvinov
cb53cd05e6 Add coreArtifacts to forwarder wrapper 2018-12-12 18:19:32 +01:00
Leonid Logvinov
982d59d45d Combine duplicate imports 2018-12-12 18:19:32 +01:00
xianny
b76a14d51d change to camelCase 2018-12-12 18:19:32 +01:00
Leonid Logvinov
e8231767ec Refactor our extensions package 2018-12-12 18:19:32 +01:00
Brandon Millman
2b7dabeb6e fix(instant): hide loaders when no token or buy amount is chosen 2018-12-12 18:19:32 +01:00
Leonid Logvinov
dde3a0366b Refactor out examples 2018-12-12 18:19:32 +01:00
Steve Klebanoff
8e071db074 Don't throw error if can't find icon for token 2018-12-12 18:19:31 +01:00
kao
93422eab55 Implement prefer-template tslint rule 2018-12-12 18:19:31 +01:00
fragosti
74e07b63de feat: only use display name from provider in ui 2018-12-12 18:19:31 +01:00
fragosti
7dd0b3a5da feat: refactor provider name and displayName logic 2018-12-12 18:19:31 +01:00
fragosti
b59f20482e feat: log walletDisplayName to Heap 2018-12-12 18:19:31 +01:00
xianny
98aa7a2c54 lint: remove unused variable 2018-12-12 18:19:31 +01:00
Fabio Berger
7527c61af5 Fix linter 2018-12-12 18:19:31 +01:00
xianny
bc6492e352 refresh rate limit every second instead of every minute 2018-12-12 18:19:31 +01:00
xianny
5c4a2461b8 cleanup: stray import, rename variable 2018-12-12 18:19:31 +01:00
xianny
183edee4ac query CC with larger batch size 2018-12-12 18:19:31 +01:00
Fabio Berger
c513082071 Add PR number 2018-12-12 18:19:26 +01:00
Fabio Berger
23a6dfac3c Remove excess commas 2018-12-12 18:19:26 +01:00
Fabio Berger
e368106932 fix: txData returned so that value and gasPrice are BigNumbers to avoid precision errors 2018-12-12 18:19:26 +01:00
Fabio Berger
785981ce58 Update yarn.lock 2018-12-12 18:19:26 +01:00
Fabio B
60bbb9b520 Update contracts/interfaces/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-12 18:19:26 +01:00
xianny
fb81570678 rename variable and define default in only 1 location 2018-12-12 18:19:26 +01:00
xianny
56b82bbc8b upgrade throttling code 2018-12-12 18:19:26 +01:00
fragosti
05217bb1a2 feat: change color of doctype tag in configurator 2018-12-12 18:19:26 +01:00
Fabio Berger
075fa315e7 Switch out whitepaper with 0x protocol specification 2018-12-12 18:19:26 +01:00
Fabio Berger
fc5f0c9863 Switch out RocketChat icon with Discord icon 2018-12-12 18:19:25 +01:00
fragosti
13e89d027c feat: disable slider when no affiliate info 2018-12-12 18:19:25 +01:00
Leonid Logvinov
ea8f35b743 Refactor out tokens from core contracts package 2018-12-12 18:19:06 +01:00
Leonid Logvinov
9365a3bc75 Refactor our protocol interfaces into @0x/contracts-interfaces 2018-12-12 18:19:06 +01:00
Alex Browne
363095f2fe Change type of transactions.gas_used and gas_price to BigNumber/numeric 2018-12-12 18:19:01 +01:00
Alex Browne
b57b6c04cc Fix prettier 2018-12-12 18:19:00 +01:00
Alex Browne
e1d77d6e10 Address PR feedback 2018-12-12 18:18:56 +01:00
Xianny
da51f6e56f pull OHLCV records from Crypto Compare (#1349)
* [WIP] pull OHLCV records from Crypto Compare

* lint

* refactor to pull logic out of script and into modules

* add entity test for ohlcv_external entity

* implement rate limit and chronological backfill for ohlcv

* add unit tests; cleanup variable names

* Fetch OHLCV pairs params from events table

* better method names

* fix outdated test

* lint

* Clean up after review

* oops

* fix failing test

* better filtering of most recent records

* fix bug when generating pairs

* fix default earliest backfill date

* fix bug with retrieving backfill time

* prettier
2018-12-12 18:18:37 +01:00
Alex Browne
5d0f82c3c6 Introduce framework for running basic tests for entities (#1344)
* Introduce framework for running basic tests for entities

* Add pipeline tests to CircleCI config

* Make pipeline tests more configurable and fix CircleCI config

* Add coverage dir to pipeline package

* Add basic tests for all exchange event entities

* Add tests for remaining entities

* Create separate test scripts in package.json and add new info to README

* Update db_setup.ts to revert migrations even if you are using docker

* Automatically pull the postgres image if needed

* Add comment about why NumberToBigIntTransformer is needed
2018-12-12 18:17:51 +01:00
Jake Ellowitz
1878a0c4b0 updating comment for 0x trusted tokens 2018-12-12 18:17:33 +01:00
Jake Ellowitz
b538fabdef metadata and trusted sources in same raw table 2018-12-12 18:17:26 +01:00
Jake Ellowitz
01716e0d51 Pull token metadata re trusted tokens 2018-12-12 18:17:13 +01:00
Alex Browne
7cd3f3cead Add script for pulling missing block data 2018-12-12 18:17:05 +01:00
Alex Browne
9d9b5edc9c Add support for pulling Cancel and CancelUpTo events 2018-12-12 18:16:55 +01:00
Alex Browne
09a0ca659e Add transactionHash to CancelUpToEvent and CancelEvent entities 2018-12-12 18:16:50 +01:00
Alex Browne
1d189d112e Add homepage_url to relayers 2018-12-12 18:16:46 +01:00
Alex Browne
829b7cb712 Change some column types from varchar to numeric 2018-12-12 18:16:21 +01:00
Alex Browne
fb8267d85e Rename taker and maker amounts in sra_orders 2018-12-12 18:16:08 +01:00
Alex Browne
d842078997 Implement scraping sra orders from radar relay 2018-12-12 18:16:08 +01:00
Alex Browne
7f574949a4 Update schema for sra_orders 2018-12-12 18:15:56 +01:00
Jake Ellowitz
caeb59a9ae Pointing entities to raw schema
Fix linter issues
2018-12-12 18:15:56 +01:00
Jake Ellowitz
ea95de7d9d Mapping dev schema to initial migration 2018-12-12 18:15:56 +01:00
Alex Browne
52f2ee6e79 Configure linter with --format stylish and fix linter errors 2018-12-12 18:15:50 +01:00
Steve Klebanoff
ad3d20b342 Default to USD 2018-12-12 09:15:18 -08:00
Alex Browne
4fa4f13813 Rename Transaction.ts to transaction.ts
Rename Relayer.ts to relayer.ts

Rename Block.ts to block.ts
2018-12-12 18:15:10 +01:00
Alex Browne
f5f01c0c3e Add better error handling for immediately invoked async functions 2018-12-12 18:15:10 +01:00
Steve Klebanoff
3b9e8e669f Refactor OrderDetails to use private instance methods 2018-12-12 09:14:25 -08:00
Alex Browne
99d90bb665 Rename table and column names 2018-12-12 18:14:08 +01:00
Alex Browne
9d8c423b98 Reorganize entities. Make scripts work from any directory. 2018-12-12 18:14:08 +01:00
Alex Browne
d24b2a5a69 Split index.ts into multiple scripts in scripts/ and detect last known block when pulling events 2018-12-12 18:14:01 +01:00
Alex Browne
aa63632fff Remove unused function parameter in index.ts script 2018-12-12 18:13:46 +01:00
Alex Browne
d86f5c4fbd Use bigint for gasUsed and gasPrice in Transaction 2018-12-12 18:13:46 +01:00
Alex Browne
0a69752d20 Update relayer code to use new relayer-registry format 2018-12-12 18:13:46 +01:00
Alex Browne
f6ebdd1a3f Implement fetching and parsing relayer info 2018-12-12 18:13:26 +01:00
Alex Browne
e2f222b08f Implement support for getting and parsing blocks and transactions 2018-12-12 18:13:11 +01:00
Alex Browne
50924d62cb chore: Fix tslint config. 2018-12-12 18:12:53 +01:00
Alex Browne
da5e8b09d9 Fix bugs in merge_v2_events script and disable verbose logging 2018-12-12 18:12:53 +01:00
Alex Browne
fff1e2cfa7 Rename index.ts -> merge_v2_events 2018-12-12 18:12:43 +01:00
Alex Browne
1544e5ed9f Update script to work with existing v1 pipeline data 2018-12-12 18:12:43 +01:00
Alex Browne
4912affbe8 Update pipeline to use new @0x npm org for imports 2018-12-12 18:12:36 +01:00
Alex Browne
c52ab47185 Update to use ContractWrappers + Infura instead of Etherscan 2018-12-12 18:12:30 +01:00
Alex Browne
f082a3f768 Rebase and update to use new modularized artifacts 2018-12-12 18:12:24 +01:00
Alex Browne
27c229a146 Add tests for SRA order conversion 2018-12-12 18:12:18 +01:00
Alex Browne
43c2b81604 Re-add missing tests 2018-12-12 18:12:18 +01:00
Alex Browne
2a133f2c55 Add soruceUrl to SraOrder entity 2018-12-12 18:12:18 +01:00
Alex Browne
4570bc2729 Add preliminary support for scraping orders from SRA endpoints (no pagination, only RR support for now) 2018-12-12 18:12:18 +01:00
Alex Browne
8702a35467 For event entities, rename address -> contractAddress and make it a primary key 2018-12-12 18:12:11 +01:00
Alex Browne
07f80500fa Implement scraping and parsing exchange CancelUpTo events 2018-12-12 18:12:11 +01:00
Alex Browne
97fc4257a0 Use multi-primary keys for event and filter null logIndexes 2018-12-12 18:12:11 +01:00
Alex Browne
25f1b7701f Implement scraping and parsing exchange cancel events 2018-12-12 18:12:11 +01:00
Alex Browne
6b889aeeed Make event parsing more functional and less class-based 2018-12-12 18:12:06 +01:00
Alex Browne
8e0dcb204f Re-organize event parsing and decoding 2018-12-12 18:12:06 +01:00
Alex Browne
0dc000183a Add support for decoding asset data 2018-12-12 18:12:06 +01:00
Alex Browne
90e1028d2f Add typeorm and begin inserting database records 2018-12-12 18:12:01 +01:00
Alex Browne
ed3737c1f1 Make contractAbi a parameter of getContractEventsAsync 2018-12-12 18:11:53 +01:00
Alex Browne
c9dc69bed6 Add tests for etherscan events 2018-12-12 18:11:53 +01:00
Alex Browne
cd7e41bd5b Restructure pipeline package. Create data-sources dir 2018-12-12 18:11:53 +01:00
Alex Browne
c46d2f8f9d Remove old code. Create function for getting contract events via etherscan 2018-12-12 18:11:52 +01:00
Alex Browne
eb1317a59a Rebase pipeline branch off development 2018-12-12 18:11:46 +01:00
Ezekiel Aquino
98325e1cfb Tests animations on about page headers 2018-12-12 17:39:45 +01:00
Fred Carlsen
356b7df534 Fix link line height 2018-12-12 17:36:36 +01:00
Ezekiel Aquino
2340813149 Tests addAnimation method 2018-12-12 17:27:24 +01:00
Steve Klebanoff
8923817b2f Move header to helper 2018-12-12 08:25:20 -08:00
Steve Klebanoff
7aacf1f5a4 Render OrderDetailsRow directly 2018-12-12 08:23:40 -08:00
Ezekiel Aquino
405667fa83 tries out some transitions 2018-12-12 17:20:00 +01:00
Fred Carlsen
0a3162915f Add checkmark 2018-12-12 17:15:51 +01:00
Fred Carlsen
8bcbb64a01 Fix full width slider 2018-12-12 17:15:51 +01:00
Fred Carlsen
ceafe5ed84 Fix jobs link 2018-12-12 17:15:50 +01:00
Fred Carlsen
f788fea095 Fix bg on banner button 2018-12-12 17:15:50 +01:00
Fred Carlsen
88094002d3 Fix border on button 2018-12-12 17:15:50 +01:00
Fred Carlsen
e57a5a6f82 Update team page with pics so far 2018-12-12 17:15:50 +01:00
Ezekiel Aquino
d1ceb2e561 Adds themed footer styling 2018-12-12 17:03:32 +01:00
Ezekiel Aquino
ec2bb616e1 Adds margin to textwrap in definition to have padding when scaled to narrow screen widths 2018-12-12 16:58:16 +01:00
Ezekiel Aquino
bf56a2c7c4 Header mobile styling 2018-12-12 16:47:12 +01:00
Ezekiel Aquino
52b9f4ef3b Increase footer padding-top 2018-12-12 16:18:24 +01:00
Ezekiel Aquino
7845fdbd9c introduces wrapwidth to section component 2018-12-12 16:13:25 +01:00
Fred Carlsen
6d2da94f8a Fix header link active state 2018-12-12 16:06:48 +01:00
Fred Carlsen
20deb01e01 Remove trailing whitespace 2018-12-12 16:06:48 +01:00
Ezekiel Aquino
3d9fc6c865 Removes wrap width on mobile 2018-12-12 16:04:00 +01:00
Ezekiel Aquino
1d5473eece Fixes fullwidth sections 2018-12-12 16:02:43 +01:00
Fred Carlsen
4b4db3802a Add esc support 2018-12-12 15:51:51 +01:00
Fred Carlsen
5eeb848974 Add interface 2018-12-12 15:50:02 +01:00
Fred Carlsen
5df789bd05 Added contact modal 2018-12-12 15:50:01 +01:00
Fred Carlsen
74959cf354 Fix lodash import 2018-12-12 15:49:23 +01:00
Fred Carlsen
39ceff3d6e Type fixes 2018-12-12 15:49:23 +01:00
Ezekiel Aquino
fa501e9c93 Edits jobs page, wip current openings 2018-12-12 15:45:52 +01:00
Ezekiel Aquino
94c90cc49a Cleanup press page, siteWrap 2018-12-12 15:19:11 +01:00
Ezekiel Aquino
d8e03b87d6 Team page grid responsive style 2018-12-12 15:06:37 +01:00
Ezekiel Aquino
f06c17cccc Edits team page 2018-12-12 15:00:03 +01:00
Ezekiel Aquino
ffff1d5fff Edits aboutLayout, mission.tsx 2018-12-12 14:50:31 +01:00
Ezekiel Aquino
fa389f18cd Fix section/wrap overflows 2018-12-12 14:30:54 +01:00
Ezekiel Aquino
7d5aeacb1c Fix banner linting 2018-12-12 14:29:37 +01:00
Ezekiel Aquino
0df51c37d1 Edits banner, types newlayout 2018-12-12 14:28:33 +01:00
Ezekiel Aquino
bb2581612a Adds more types to newLayout 2018-12-12 13:55:12 +01:00
Ezekiel Aquino
3844ce9b60 Types newlayout, cleans up instant 2018-12-12 13:51:40 +01:00
Ezekiel Aquino
0c5fa5892c Fixes fullwidth prop on new layout section 2018-12-12 13:43:06 +01:00
Ezekiel Aquino
b04a9b9296 Re-adds icon in rebased instant page 2018-12-12 13:38:00 +01:00
Ezekiel Aquino
2bf831132a Fixes icons in rebase (why) 2018-12-12 13:35:44 +01:00
Fred Carlsen
6e62b108a9 Added a bunch of types 2018-12-12 13:32:42 +01:00
Fred Carlsen
6262e06afd Remove old dropdown 2018-12-12 13:32:42 +01:00
Ezekiel Aquino
b1f4bb722d More layout changes 2018-12-12 13:32:42 +01:00
Ezekiel Aquino
c5db8f25d3 WIP 2018-12-12 13:32:20 +01:00
Fred Carlsen
965b1ff32f Remove import 2018-12-12 13:24:06 +01:00
Fred Carlsen
7f7403cf72 Remove old loop 2018-12-12 13:08:58 +01:00
Fred Carlsen
088ca6ce7c Added a bunch of types 2018-12-12 13:08:52 +01:00
Fred Carlsen
5df160ffb9 Remove old dropdown 2018-12-12 13:08:31 +01:00
Fred Carlsen
80efe70247 WIP mobile slider 2018-12-12 12:46:30 +01:00
Fred Carlsen
6c4c666d9b WIP mobile slider 2018-12-12 12:35:22 +01:00
Fred Carlsen
1175a18ccc Add content and images to why 2018-12-12 12:06:12 +01:00
Fred Carlsen
19f662c196 Add icons to 0x instant 2018-12-12 12:00:23 +01:00
Fabio B
78a6d23659 Merge pull request #1422 from 0xProject/fix/ci/lernaIssue
CI Lerna Fix
2018-12-11 18:20:45 -08:00
Fabio Berger
f4dc8b12f7 Update the a newer version of our Lerna fork with CI fixx 2018-12-11 17:50:25 -08:00
Alex Browne
5cff911035 Make pull_missing_blocks script consider all events with block numbers (#1420) 2018-12-11 17:31:16 -08:00
Alex Browne
b3fa0c8dac Fix project references for contracts packages (#1419)
- Removed /packages/contracts
- Removed /contracts/core
- Added `yarn build:ts` to CI tests
- Added each contracts "project" to root tsconfig.json
2018-12-11 17:09:00 -08:00
Steve Klebanoff
5f7ed71937 Delete old interface and rename BaseCurrencyChoice 2018-12-11 17:06:27 -08:00
Steve Klebanoff
b1a73f5c74 Refactor out custom components 2018-12-11 17:03:07 -08:00
MarcZenn
1c65fa212d restore unit tests 2018-12-11 16:59:25 -08:00
F. Eugene Aumson
318e7d5b57 feat(sra_client.py)
* Code generation scripts

* Generated code

* Change test config to hit 0x-launch-kit

* Ran prettier on generated code

* First test case, of get_asset_pairs()

* Use launch kit docker image to faciliate CI tests

* Fix markdown rendering for GitHub and PyPI

* Add URL for PyPI to link back to GitHub

* Add one-line package description to README.md

* Remove git_push.sh

* Remove unimplemented tests

* Add sra_client to top-level README package list

* Remove repeated-everywhere long description

* Add shorcuts for publishing

* Remove TypeScript examples
2018-12-11 16:57:53 -08:00
Leonid Logvinov
a939433bd2 Remove accidentally commited files 2018-12-11 16:54:07 -08:00
zkao
42be1a429f track idex orderbook snapshots (#1397)
* Track Idex and Oasis Orderbook Snapshots
2018-12-11 15:48:54 -08:00
Fabio Berger
96b8100a78 Publish
- 0x.js@2.0.7
 - @0x/abi-gen@1.0.18
 - @0x/abi-gen-wrappers@2.0.1
 - @0x/assert@1.0.19
 - @0x/asset-buyer@3.0.3
 - @0x/base-contract@3.0.9
 - @0x/connect@3.0.9
 - @0x/contract-wrappers@4.1.2
 - @0x/dev-tools-pages@0.0.9
 - @0x/dev-utils@1.0.20
 - ethereum-types@1.1.3
 - @0x/fill-scenarios@1.0.15
 - @0x/instant@1.0.3
 - @0x/json-schemas@2.1.3
 - @0x/metacoin@0.0.31
 - @0x/migrations@2.2.1
 - @0x/monorepo-scripts@1.0.15
 - @0x/order-utils@3.0.6
 - @0x/order-watcher@2.2.7
 - @0x/pipeline@1.0.1
 - @0x/react-docs@1.0.21
 - @0x/react-shared@1.0.24
 - @0x/sol-compiler@1.1.15
 - @0x/sol-cov@2.1.15
 - @0x/sol-doc@1.0.10
 - @0x/sol-resolver@1.1.0
 - @0x/sra-spec@1.0.12
 - @0x/subproviders@2.1.7
 - @0x/testnet-faucets@1.0.59
 - @0x/types@1.4.0
 - @0x/typescript-typings@3.0.5
 - @0x/utils@2.0.7
 - @0x/web3-wrapper@3.2.0
 - @0x/website@0.0.62
 - @0x/contracts-examples@1.0.1
 - @0x/contracts-extensions@1.0.1
 - @0x/contracts-interfaces@1.0.1
 - @0x/contracts-libs@1.0.1
 - @0x/contracts-multisig@1.0.1
 - @0x/contracts-protocol@2.1.57
 - @0x/contracts-test-utils@1.0.1
 - @0x/contracts-tokens@1.0.1
 - @0x/contracts-utils@1.0.1
2018-12-11 15:38:43 -08:00
Fabio Berger
e2b0c4d116 Updated CHANGELOGS 2018-12-11 15:38:32 -08:00
Alex Browne
b4cdb14b9b Refactor event scraping and add support for scraping ERC20 approval events (#1401)
* Refactor event scraping and add support for scraping ERC20 approval events

* Add tests for data_sources/contract-wrappers/utils
2018-12-11 15:16:05 -08:00
Steve Klebanoff
ee7d6fb3af Show as 0 when selected 2018-12-11 14:55:32 -08:00
Steve Klebanoff
286474ca76 Remove unused component 2018-12-11 14:43:07 -08:00
Steve Klebanoff
5cbe04acab feat(instant): ETH/USD toggle 2018-12-11 14:37:45 -08:00
Fred Carlsen
585c789124 Tweak slider 2018-12-11 23:01:26 +01:00
F. Eugene Aumson
d37680610b fix(order_utils.py): Remove stale comment 2018-12-11 12:39:19 -08:00
Leonid Logvinov
e6c1c2a658 Merge pull request #1413 from 0xProject/feature/contracts-monorepo-7
Contracts monorepo 7
2018-12-11 10:04:17 -08:00
Leonid Logvinov
36736f82d4 Move OrderValidator to the protocol package 2018-12-11 09:44:39 -08:00
Leonid Logvinov
7b72b0c762 Revert accidental change 2018-12-11 09:32:44 -08:00
Fabio B
184acd874e Update contracts/examples/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-11 09:31:00 -08:00
Fred Carlsen
8a761ce2bc Lint 2018-12-11 17:18:58 +01:00
Fred Carlsen
bc8981cbb2 Added team data + image placeholder 2018-12-11 17:18:58 +01:00
Ezekiel Aquino
26c9cd3cb2 dropdown z-index 2018-12-11 17:02:29 +01:00
Ezekiel Aquino
25f66f96b6 Removes headroom 2018-12-11 17:00:44 +01:00
Ezekiel Aquino
0948ed7a87 WIP Adds infinite scroll image on instant page 2018-12-11 16:42:46 +01:00
Ezekiel Aquino
bc64c9566c Header changes, mobile alignments 2018-12-11 16:18:27 +01:00
Fred Carlsen
d068956b69 Adjust h4 heading weight 2018-12-11 16:11:08 +01:00
Fred Carlsen
1e5bc143be Add slider mockup 2018-12-11 16:11:08 +01:00
Fred Carlsen
ec72a4b68c Rename form file 2018-12-11 16:11:08 +01:00
Ezekiel Aquino
1f4af537c0 Button transitions 2018-12-11 15:46:16 +01:00
Ezekiel Aquino
91c4191985 Edits mobile aligment 2018-12-11 15:21:19 +01:00
Ezekiel Aquino
1d6e66d937 Change header button color based on theme 2018-12-11 15:16:59 +01:00
Ezekiel Aquino
79d31895fb Removes overflow-x on document 2018-12-11 15:12:31 +01:00
Ezekiel Aquino
1d4d254496 Cleanup about pages 2018-12-11 15:09:46 +01:00
Ezekiel Aquino
528d882ec4 Creates about page wrapper component, clean up 2018-12-11 14:54:19 +01:00
Fred Carlsen
2471d4098f Add missing keys 2018-12-11 14:40:55 +01:00
Fred Carlsen
33b36eaf07 Add keys to chapters 2018-12-11 14:35:17 +01:00
Fred Carlsen
27bf0d8a16 Add form handler 2018-12-11 14:35:17 +01:00
Fred Carlsen
b5372ade3c Adjust heading weight 2018-12-11 14:35:16 +01:00
Fabio B
eec9957831 Merge pull request #1414 from 0xProject/fix/signature-utils/walletSignature
[order-utils] Fix Wallet Signature Verification
2018-12-11 05:22:26 -08:00
Ezekiel Aquino
1b7c9b0775 WIP about pages 2018-12-11 14:21:41 +01:00
Ezekiel Aquino
a4d9434290 Dropdown menu theming 2018-12-11 13:33:51 +01:00
Fred Carlsen
e001988dbe Pull in image from children 2018-12-11 12:55:58 +01:00
Fred Carlsen
54c9709bf0 Added image loop 2018-12-11 12:55:58 +01:00
Fred Carlsen
cc0fb833fe Fix keys 2018-12-11 12:55:58 +01:00
Ezekiel Aquino
96ebad7568 Fix layout, Adds button hovers 2018-12-11 12:26:51 +01:00
Ezekiel Aquino
3fb74be4ba WIP Header styling, hidden on mobile 2018-12-11 12:18:36 +01:00
Ezekiel Aquino
86acca5e1c WIP dropdown menus 2018-12-11 12:11:22 +01:00
Ezekiel Aquino
cb2b45bf04 Loop through products dropdown data 2018-12-11 10:59:37 +01:00
Ezekiel Aquino
3652b8270a Clean up header 2018-12-11 10:48:28 +01:00
Ezekiel Aquino
0a05ef36a6 Cleanup header 2018-12-11 10:47:48 +01:00
Ezekiel Aquino
11c864e20d Adds intermediate large heading size 2018-12-11 10:33:48 +01:00
Brandon Millman
c46870d296 feature(website): add 0x Instant as a track in the docs 2018-12-10 19:31:45 -08:00
fragosti
6e54514013 feat: change input to number input 2018-12-10 17:30:32 -08:00
Brandon Millman
4200064eab Add link to rexrelay integration example in instant README 2018-12-10 16:11:08 -08:00
Leonid Logvinov
e72742f1f7 Merge branch 'development' into feature/contracts-monorepo-7 2018-12-10 16:10:49 -08:00
Brandon Millman
253bf4df6a chore: fix typo in instant README 2018-12-10 16:08:23 -08:00
Brandon Millman
dbc4417b19 chore: remove extra newline 2018-12-10 16:07:16 -08:00
Brandon Millman
74bbebeb01 Update instant README with more integration links 2018-12-10 16:06:26 -08:00
Brandon Millman
40c0eebd38 Fix typo in top level README 2018-12-10 15:54:30 -08:00
Brandon Millman
5d6fabf528 Update top level README packages list with instant 2018-12-10 15:52:43 -08:00
Leonid Logvinov
928b253c81 Revert access changes 2018-12-10 15:47:13 -08:00
Leonid Logvinov
b4c7f4f57f Upgrade solhint version 2018-12-10 15:46:45 -08:00
Brandon Millman
fc09968062 Update instant README 2018-12-10 15:36:04 -08:00
Fabio Berger
89755fe3c2 Add CHANGELOG entry 2018-12-10 15:33:37 -08:00
Fabio Berger
8fd7a9e1f5 Actually pass the signature, not the signature index to a wallet contract's isValidSignature call 2018-12-10 15:31:59 -08:00
Leonid Logvinov
5e6d1779cb Re-use solhint configuration 2018-12-10 15:24:11 -08:00
Leonid Logvinov
c580f4ddcb Change contracts publish config 2018-12-10 15:13:36 -08:00
Xianny
7be2dab9d5 perform null check on token metadata (#1412) 2018-12-10 15:08:13 -08:00
Leonid Logvinov
86f1697934 Updated CHANGELOGS 2018-12-10 15:06:05 -08:00
Francesco Agosti
d578b4959d Merge pull request #1404 from 0xProject/feature/instant/better-provider-fallback
[instant] Refactor provider name and provider display name logic, log the display name
2018-12-10 14:50:28 -08:00
Leonid Logvinov
9f5eeed309 Rename core package to protocol 2018-12-10 14:44:49 -08:00
Leonid Logvinov
14ea4ee1d3 Add coreArtifacts to forwarder wrapper 2018-12-10 14:29:15 -08:00
Leonid Logvinov
6d523835ae Combine duplicate imports 2018-12-10 11:38:03 -08:00
Ezekiel Aquino
e18be3160e WIP dropdown header 2018-12-10 20:02:48 +01:00
Xianny
02e14f88d2 Fix/pipeline/ohlcv ratelimit (#1403)
Use time-based throttling and increase batch size of CC query
2018-12-10 11:01:35 -08:00
xianny
096c4c8f2b change to camelCase 2018-12-10 10:57:36 -08:00
Brandon Millman
d050a1bd53 Merge pull request #1411 from 0xProject/fix/instant/hide-loaders
[instant] Hide loaders when no token or buy amount is chosen
2018-12-10 10:54:08 -08:00
Leonid Logvinov
924c2705b2 Refactor our extensions package 2018-12-10 10:53:25 -08:00
Fabio B
6c86cc8ab8 Merge pull request #1405 from 0xProject/tslint-changes
Implement prefer-template tslint rule
2018-12-10 18:29:17 +00:00
Fred Carlsen
6ef5f28f81 Remove padding for now 2018-12-10 19:19:38 +01:00
Brandon Millman
dc21c79f2b fix(instant): hide loaders when no token or buy amount is chosen 2018-12-10 10:17:41 -08:00
Ezekiel Aquino
beffcd990c WIP Updates dropdown menus 2018-12-10 19:13:52 +01:00
Leonid Logvinov
b88ff0a19f Refactor out examples 2018-12-10 10:01:38 -08:00
Steve Klebanoff
8d93413a5d Merge pull request #1409 from 0xProject/fix/instant/custom-erc20
[instant] Don't throw error if can't find icon for token
2018-12-10 09:55:44 -08:00
Ezekiel Aquino
c622498e50 Edits footer styling 2018-12-10 18:20:08 +01:00
Steve Klebanoff
a0ea0415dd fix(instant): Don't update heartbeat if amount is 0 2018-12-10 09:16:15 -08:00
Leonid Logvinov
a39e0f13be Merge pull request #1388 from 0xProject/feature/contracts-monorepo-6
Contracts monorepo 6
2018-12-10 18:09:59 +01:00
Leonid Logvinov
190d9244cc Merge pull request #1385 from 0xProject/feature/contracts-monorepo-5
Refactor our protocol interfaces into `@0x/contracts-interfaces`
2018-12-10 18:09:33 +01:00
Ezekiel Aquino
d56df4fdaf Optical margin adjustment to landing page 2018-12-10 18:08:55 +01:00
Ezekiel Aquino
7226944dfd Weightier headers, switches icons in mission page 2018-12-10 18:01:57 +01:00
Steve Klebanoff
9d8ab43f91 Don't throw error if can't find icon for token 2018-12-10 09:00:05 -08:00
Ezekiel Aquino
7aee687e6b Updates margins in why, change link component 2018-12-10 17:56:04 +01:00
Fred Carlsen
4138c580bc Add bundle analyzer 2018-12-10 17:51:52 +01:00
Fred Carlsen
a3f12cd4de Add missing separator 2018-12-10 17:51:27 +01:00
Fred Carlsen
a208cba4e8 Add lazyloading + banner 2018-12-10 17:51:27 +01:00
Ezekiel Aquino
8d0b6702c0 Edits why page, removes zenscroll 2018-12-10 17:38:23 +01:00
Ezekiel Aquino
9abd1b79e1 More visual tweaks to instant page 2018-12-10 16:46:53 +01:00
Ezekiel Aquino
bd725eee86 Starts refining isntant page 2018-12-10 16:38:03 +01:00
Fred Carlsen
88c18bd2e6 Update lock file 2018-12-10 16:30:41 +01:00
Fred Carlsen
9dc32c2bca Tweaks 2018-12-10 16:30:41 +01:00
Ezekiel Aquino
bdd287559c Mobile styling on why page 2018-12-10 16:19:12 +01:00
Ezekiel Aquino
194f785939 Refinements to Why page 2018-12-10 16:07:36 +01:00
Fred Carlsen
086568bddf Remove unnecessary dep 2018-12-10 15:55:44 +01:00
Fred Carlsen
3506c0e501 Refactor press highlgihts 2018-12-10 15:55:28 +01:00
Fred Carlsen
93eb31f7a0 Add separator to mission 2018-12-10 15:43:31 +01:00
Fred Carlsen
934117bfe4 Refactor positions 2018-12-10 15:43:31 +01:00
Fred Carlsen
7c33f94836 Mute paragraphs by default 2018-12-10 15:43:31 +01:00
Fred Carlsen
74d0eb40c5 Add links to jobs 2018-12-10 15:43:31 +01:00
Ezekiel Aquino
23987c0fa1 Adds initial scrollto methods in why page, adds stickywrap 2018-12-10 15:30:31 +01:00
Fred Carlsen
cc1b71651d Add active styling to chapter link 2018-12-10 15:20:09 +01:00
Fred Carlsen
5e1892f383 Add padding to banner 2018-12-10 15:20:09 +01:00
Ezekiel Aquino
93d1f2255e Refines footer, newsletterForm 2018-12-10 15:00:35 +01:00
Fred Carlsen
727ced0684 Tweak banner 2018-12-10 14:49:12 +01:00
Fred Carlsen
0ff13edb58 Tweak icons on why 2018-12-10 14:49:12 +01:00
Fred Carlsen
0341ced3f3 Add link to mission 2018-12-10 14:49:12 +01:00
Fred Carlsen
4f6c95b0ca Remove unneeded props 2018-12-10 14:49:12 +01:00
Fred Carlsen
c4ee6836fa Correct icon interface 2018-12-10 14:49:12 +01:00
Ezekiel Aquino
55ed406746 Use defined paddings 2018-12-10 14:26:32 +01:00
Ezekiel Aquino
f93e77e77c Refines landingpage 2018-12-10 14:12:38 +01:00
Fred Carlsen
3ac6da7db1 Added banner 2018-12-10 13:38:06 +01:00
Fred Carlsen
3e93442a43 Remove borderColor prop 2018-12-10 13:38:05 +01:00
Fred Carlsen
a617c801bc Add arrow to link 2018-12-10 13:38:05 +01:00
Ezekiel Aquino
7d9ab27b9d Divides landing into section components, cleanup 2018-12-10 13:11:31 +01:00
Ezekiel Aquino
c686c241c0 Removes percentage paddings on mobile 2018-12-10 12:14:25 +01:00
Ezekiel Aquino
a1889e2a23 Replaces icons in landing, text styling 2018-12-10 12:12:43 +01:00
Ezekiel Aquino
37a1483359 Adds withArrow button 2018-12-10 12:07:08 +01:00
Ezekiel Aquino
80811c9cca Async load icons, adds margins 2018-12-10 11:53:01 +01:00
Fred Carlsen
14d342c3e0 Bind dev server to 0.0.0.0 2018-12-10 11:35:53 +01:00
Fred Carlsen
394105b860 Add options to svg loader 2018-12-10 11:35:53 +01:00
Fred Carlsen
1752aa63da Comment out bg on code 2018-12-10 11:35:53 +01:00
Ezekiel Aquino
9636fd1b76 Adds size definition to Icon 2018-12-10 11:23:54 +01:00
Ezekiel Aquino
16f69ad718 Refactors <Icon> 2018-12-10 11:22:00 +01:00
Fred Carlsen
03ca825639 Cleanup 2018-12-10 11:19:42 +01:00
Fred Carlsen
c995586063 WIP mobile header + developer dropdown 2018-12-10 11:19:20 +01:00
Fred Carlsen
8dd738629a Added global link color to theme 2018-12-10 11:05:16 +01:00
Fabio B
a286228b20 Merge pull request #1402 from 0xProject/web3-wrapper/numberBigNumberMixup
Fix `value` and `gasPrice` precision bug by returning them as BigNumbers
2018-12-08 21:57:06 +00:00
kao
f14603ca4d Implement prefer-template tslint rule 2018-12-07 17:06:52 -08:00
fragosti
4e33d2b481 feat: only use display name from provider in ui 2018-12-07 12:21:06 -08:00
fragosti
b74b4eb053 feat: refactor provider name and displayName logic 2018-12-07 11:29:37 -08:00
fragosti
57dc5b6fc0 feat: log walletDisplayName to Heap 2018-12-07 11:14:01 -08:00
xianny
5febb595e9 lint: remove unused variable 2018-12-07 10:03:17 -08:00
MarcZenn
be88eb00f8 clean up 2018-12-07 10:02:35 -08:00
Fabio Berger
1a44d86c59 Fix linter 2018-12-07 17:55:38 +00:00
xianny
2bea70a0a6 refresh rate limit every second instead of every minute 2018-12-07 09:53:49 -08:00
xianny
41f90c697b cleanup: stray import, rename variable 2018-12-07 09:48:26 -08:00
xianny
7d2b5a28e3 Merge branch 'fix/pipeline/ohlcv-ratelimit' of github.com:0xProject/0x-monorepo into fix/pipeline/ohlcv-ratelimit
Rebased onto development
2018-12-07 09:44:24 -08:00
xianny
7b1471ffe8 query CC with larger batch size 2018-12-07 09:43:55 -08:00
xianny
8b3b4d983f rename variable and define default in only 1 location 2018-12-07 09:43:55 -08:00
xianny
ac971685b3 upgrade throttling code 2018-12-07 09:43:55 -08:00
Fabio Berger
4034eb7655 Add PR number 2018-12-07 15:30:36 +00:00
Fabio Berger
ccd8d4ac30 Remove excess commas 2018-12-07 15:25:07 +00:00
Fabio Berger
84f1d1107a fix: txData returned so that value and gasPrice are BigNumbers to avoid precision errors 2018-12-07 15:24:01 +00:00
marcmartinez
65c60f5386 [WIP] trezor subprovider 2018-12-07 07:06:40 -08:00
Fabio Berger
c0637a744b Update yarn.lock 2018-12-07 14:48:13 +00:00
Fred Carlsen
701ea77a79 Mobile tweaks 2018-12-07 13:51:45 +01:00
Fred Carlsen
b68f3eb772 Break heading on why properly 2018-12-07 13:48:10 +01:00
Fred Carlsen
47e8bc8e43 Add viewbox to icons 2018-12-07 12:43:47 +01:00
Fabio B
51b1de041e Update contracts/interfaces/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-07 11:11:36 +01:00
Fred Carlsen
eb137cf576 Mobile tweaks 2018-12-07 11:00:34 +01:00
xianny
897ba6591d rename variable and define default in only 1 location 2018-12-06 13:20:08 -08:00
xianny
10eb819c75 upgrade throttling code 2018-12-06 12:07:55 -08:00
Francesco Agosti
aa4fcebdc7 Merge pull request #1399 from 0xProject/feature/website/disable-slider-if-no-address-configurator
[website] Disable slider when no affiliate info
2018-12-06 12:02:25 -08:00
fragosti
ac166ce32e feat: change color of doctype tag in configurator 2018-12-06 11:47:02 -08:00
Fred Carlsen
f88ff698a4 Remove hardcoded min-width
This breaks smaller viewports than 355px. Should be handled in a local scope by css, not global inline styles.
2018-12-06 15:11:18 +01:00
Fabio Berger
dcad94df4c Switch out whitepaper with 0x protocol specification 2018-12-06 14:10:35 +00:00
Fabio Berger
a699a12161 Switch out RocketChat icon with Discord icon 2018-12-06 13:28:03 +00:00
Fred Carlsen
49a1f84e16 Slash the zeroes 2018-12-06 13:29:20 +01:00
Fred Carlsen
23675b4901 Update lock file 2018-12-06 13:19:33 +01:00
Fred Carlsen
950c56d7b8 Migrate away from injectGlobal 2018-12-06 13:19:24 +01:00
Fred Carlsen
4b166828b8 Import configurator in new instant page 2018-12-06 13:19:00 +01:00
fragosti
c1698aa634 fix: add comma to affiliateInfo config in configurator 2018-12-06 12:06:35 +01:00
Steve Klebanoff
ae6f7cc454 feat(instant): More aggressive error reporting 2018-12-06 12:06:35 +01:00
fragosti
506c736d4f fix: remove target=_blank from instant link 2018-12-06 12:06:35 +01:00
Xianny
0dbb866918 Fix/pipeline/ohlcv (#1393)
The OHLCV script in data pipeline quits early when we get no data from Crypto Compare. Sometimes Crypto Compare gives us a valid empty response (e.g. when we query for way back in time) and we need to just continue. This adds better filtering for the types of Crypto Compare responses to detect when we should continue and when we should really quit.
2018-12-06 12:06:35 +01:00
fragosti
e82f807d7c feat: change New notification to point to instant 2018-12-06 12:06:35 +01:00
fragosti
b586ecdf92 chore: run prettier 2018-12-06 12:06:35 +01:00
fragosti
ff8029402d fix: ensure copy button is above code 2018-12-06 12:06:35 +01:00
fragosti
92361ae811 feat: notify user they've copied to clipboard on copy 2018-12-06 12:06:35 +01:00
fragosti
cba8dc8a75 chore: make default fee percentage in configurator 0 2018-12-06 12:06:35 +01:00
Alex Browne
ef1e5eacbd Fix RadarRelay timestamps (#1391)
* Fixing rr timestamps

* Apply prettier
2018-12-06 12:06:35 +01:00
fragosti
7ba47c47bb feat: lowercase keys in additionalAssetMetaDataMap 2018-12-06 12:06:35 +01:00
fragosti
f8f3a3b3cc chore: add coingecko css example to externall.css 2018-12-06 12:06:35 +01:00
fragosti
b6e79fd9e0 fix: call toLowerCase in asset creation logic 2018-12-06 12:06:35 +01:00
fragosti
b39f511755 fix: input placeholder css specificity increase 2018-12-06 12:06:35 +01:00
Steve Klebanoff
43d1f61d28 Takeout console.log 2018-12-06 12:06:35 +01:00
Steve Klebanoff
37e3f481dd Only include localhost in host domains if in development mode 2018-12-06 12:06:35 +01:00
Steve Klebanoff
5acf053f8b Use dotenv in development 2018-12-06 12:06:35 +01:00
Fabio Berger
b3038787ea Replace Rocket.chat with Discord 2018-12-06 12:06:35 +01:00
Fabio Berger
b9305f6ab7 Fix mixed up chinese translations 2018-12-06 12:06:35 +01:00
Alex Browne
21cbf05362 Change type of transactions.gas_used and gas_price to BigNumber/numeric 2018-12-06 12:06:35 +01:00
Alex Browne
a3718803a0 Fix prettier 2018-12-06 12:06:35 +01:00
Alex Browne
6742142ca5 Address PR feedback 2018-12-06 12:06:35 +01:00
Fabio B
b7e06a2282 Use a string template in packages/pipeline/src/scripts/pull_missing_events.ts
Co-Authored-By: albrow <stephenalexbrowne@gmail.com>
2018-12-06 12:06:35 +01:00
Fabio B
4c65bbbb8f Fix typo in packages/pipeline/src/parsers/bloxy/index.ts
Co-Authored-By: albrow <stephenalexbrowne@gmail.com>
2018-12-06 12:06:35 +01:00
fragosti
105da3f814 chore: run linter 2018-12-06 12:06:35 +01:00
Alex Browne
4a5b72a5ab Fix linter 2018-12-06 12:06:35 +01:00
fragosti
2d6c46b83c feat: add copy code feature 2018-12-06 12:06:35 +01:00
Xianny
6f5787b2c4 pull OHLCV records from Crypto Compare (#1349)
* [WIP] pull OHLCV records from Crypto Compare

* lint

* refactor to pull logic out of script and into modules

* add entity test for ohlcv_external entity

* implement rate limit and chronological backfill for ohlcv

* add unit tests; cleanup variable names

* Fetch OHLCV pairs params from events table

* better method names

* fix outdated test

* lint

* Clean up after review

* oops

* fix failing test

* better filtering of most recent records

* fix bug when generating pairs

* fix default earliest backfill date

* fix bug with retrieving backfill time

* prettier
2018-12-06 12:06:34 +01:00
zkao
f96711bac3 Token_orderbook_snapshots for Ddex and Paradex(#1354)
* Implements the TokenOrderbookSnapshot Table

* Scripts, Data Sources and Entities to pull Ddex and Paradex API data.
2018-12-06 12:05:38 +01:00
Alex Browne
ddd246a945 Add script for parsing competing dex trades from Bloxy (#1355) 2018-12-06 12:05:38 +01:00
Alex Browne
d14d38dabd Introduce framework for running basic tests for entities (#1344)
* Introduce framework for running basic tests for entities

* Add pipeline tests to CircleCI config

* Make pipeline tests more configurable and fix CircleCI config

* Add coverage dir to pipeline package

* Add basic tests for all exchange event entities

* Add tests for remaining entities

* Create separate test scripts in package.json and add new info to README

* Update db_setup.ts to revert migrations even if you are using docker

* Automatically pull the postgres image if needed

* Add comment about why NumberToBigIntTransformer is needed
2018-12-06 12:05:38 +01:00
Alex Browne
3ca876c574 [pipeline] Add additional documentation to the README (#1328) 2018-12-06 12:04:25 +01:00
Alex Browne
6d2f4b91a9 Reduce number of blocks per query in pull_missing_events 2018-12-06 12:04:25 +01:00
Jake Ellowitz
6739261a7e updating comment for 0x trusted tokens 2018-12-06 12:04:25 +01:00
Jake Ellowitz
72c45d9ea9 metadata and trusted sources in same raw table 2018-12-06 12:04:25 +01:00
Jake Ellowitz
75df8a0e8b Pull token metadata re trusted tokens 2018-12-06 12:04:25 +01:00
Alex Browne
f3c28afedd Add script for pulling missing block data 2018-12-06 12:04:25 +01:00
Alex Browne
80ab797d3a Check for special characters in table name in pull_missing_events 2018-12-06 12:04:25 +01:00
Alex Browne
d6dff5f86a Add support for pulling Cancel and CancelUpTo events 2018-12-06 12:04:25 +01:00
Alex Browne
4a715c30fd Add transactionHash to CancelUpToEvent and CancelEvent entities 2018-12-06 12:04:25 +01:00
Alex Browne
65bb8bdb5e Optimize database operations in pull_missing_events script 2018-12-06 12:04:25 +01:00
Alex Browne
5237e9c2ed Add homepage_url to relayers 2018-12-06 12:04:25 +01:00
Alex Browne
6bab2f70b9 Add workaround for broken save method 2018-12-06 12:04:25 +01:00
Alex Browne
a0a41b1b5d Fix chunk size in pull_missing_events 2018-12-06 12:04:25 +01:00
Alex Browne
f07dc5ae6d Use built-in chunk feature of TypeORM save method 2018-12-06 12:04:25 +01:00
Alex Browne
8cb6c2b51b Change some column types from varchar to numeric 2018-12-06 12:04:25 +01:00
Alex Browne
1f87bd8cf6 Add raw schema prefix to query in pull_missing_events 2018-12-06 12:04:25 +01:00
Alex Browne
a2aeca7b66 Rename taker and maker amounts in sra_orders 2018-12-06 12:04:25 +01:00
Alex Browne
e394c4fe1d Implement scraping sra orders from radar relay 2018-12-06 12:04:25 +01:00
Alex Browne
5c655eeda7 Preliminary work for adding RR order book scraping 2018-12-06 12:04:25 +01:00
Alex Browne
d932448563 Update schema for sra_orders 2018-12-06 12:04:25 +01:00
Jake Ellowitz
7f782b6af0 Pointing entities to raw schema
Fix linter issues
2018-12-06 12:04:25 +01:00
Jake Ellowitz
a3f4264790 Mapping dev schema to initial migration 2018-12-06 12:04:25 +01:00
Alex Browne
b818a62d74 Configure linter with --format stylish and fix linter errors 2018-12-06 12:04:25 +01:00
Alex Browne
e69cdfb7b5 Configure TypeORM for migrations. Add new package.json scripts. 2018-12-06 12:04:25 +01:00
Alex Browne
45da317e15 Rename Transaction.ts to transaction.ts
Rename Relayer.ts to relayer.ts

Rename Block.ts to block.ts
2018-12-06 12:04:25 +01:00
Alex Browne
c21cf55b86 Add better error handling for immediately invoked async functions 2018-12-06 12:04:25 +01:00
Alex Browne
2dfdc19c9e Rename table and column names 2018-12-06 12:04:25 +01:00
Alex Browne
012134001a Reorganize entities. Make scripts work from any directory. 2018-12-06 12:04:24 +01:00
Alex Browne
0f869b0545 Split index.ts into multiple scripts in scripts/ and detect last known block when pulling events 2018-12-06 12:04:24 +01:00
Alex Browne
774971c98c Remove unused function parameter in index.ts script 2018-12-06 12:04:24 +01:00
Alex Browne
25b6e7092f Use bigint for gasUsed and gasPrice in Transaction 2018-12-06 12:04:24 +01:00
Alex Browne
62412b8551 Update relayer code to use new relayer-registry format 2018-12-06 12:04:24 +01:00
Alex Browne
374d513090 Remove outdated info from README 2018-12-06 12:04:24 +01:00
Alex Browne
a72463dbdb Add build:ci to pipeline package.json 2018-12-06 12:04:24 +01:00
Alex Browne
b159d4e0ec Implement fetching and parsing relayer info 2018-12-06 12:04:24 +01:00
Alex Browne
1402a3dfae Implement support for getting and parsing blocks and transactions 2018-12-06 12:04:24 +01:00
Alex Browne
64865bc10f chore: Fix tslint config. 2018-12-06 12:04:24 +01:00
Alex Browne
ef00ac6f51 Fix bugs in merge_v2_events script and disable verbose logging 2018-12-06 12:04:24 +01:00
Alex Browne
7a7c66b0ec Enable verbose logging 2018-12-06 12:04:24 +01:00
Alex Browne
0166c29625 Rename index.ts -> merge_v2_events 2018-12-06 12:04:24 +01:00
Alex Browne
9c35d53694 Update script to work with existing v1 pipeline data 2018-12-06 12:04:24 +01:00
Alex Browne
8701f9a7b0 Update pipeline to use new @0x npm org for imports 2018-12-06 12:04:24 +01:00
Alex Browne
427c2cd164 Update to use ContractWrappers + Infura instead of Etherscan 2018-12-06 12:04:24 +01:00
Alex Browne
8c0dfc1936 Rebase and update to use new modularized artifacts 2018-12-06 12:04:24 +01:00
Alex Browne
392e89fcbb Add tests for SRA order conversion 2018-12-06 12:04:24 +01:00
Alex Browne
44c1947740 Re-add missing tests 2018-12-06 12:04:24 +01:00
Alex Browne
5719eb28f7 Add soruceUrl to SraOrder entity 2018-12-06 12:04:24 +01:00
Alex Browne
ce7027d11f Add preliminary support for scraping orders from SRA endpoints (no pagination, only RR support for now) 2018-12-06 12:04:24 +01:00
Alex Browne
3ba98e2192 For event entities, rename address -> contractAddress and make it a primary key 2018-12-06 12:04:24 +01:00
Alex Browne
1ae3592e45 Implement scraping and parsing exchange CancelUpTo events 2018-12-06 12:04:24 +01:00
Alex Browne
dc04d025af Use multi-primary keys for event and filter null logIndexes 2018-12-06 12:04:24 +01:00
Alex Browne
5262d3b1f2 Implement scraping and parsing exchange cancel events 2018-12-06 12:04:24 +01:00
Alex Browne
7d9afce13b Make event parsing more functional and less class-based 2018-12-06 12:04:24 +01:00
Alex Browne
c99b71f354 Re-organize event parsing and decoding 2018-12-06 12:04:24 +01:00
Alex Browne
0133bec07d Add support for decoding asset data 2018-12-06 12:04:24 +01:00
Alex Browne
bd7bde9bb0 Add typeorm and begin inserting database records 2018-12-06 12:04:23 +01:00
Alex Browne
a6e5d126c3 Make contractAbi a parameter of getContractEventsAsync 2018-12-06 12:03:11 +01:00
Alex Browne
8e7ea4695b Add tests for etherscan events 2018-12-06 12:03:11 +01:00
Alex Browne
cc5ea80aa3 Restructure pipeline package. Create data-sources dir 2018-12-06 12:03:11 +01:00
Alex Browne
d1026a64ba Remove old code. Create function for getting contract events via etherscan 2018-12-06 12:03:11 +01:00
Alex Browne
dda44500c5 Rebase pipeline branch off development 2018-12-06 12:01:16 +01:00
fragosti
7b81bd831f fix: instant linting issues 2018-12-06 11:59:27 +01:00
fragosti
44312478fa chore: fix linter issues 2018-12-06 11:58:38 +01:00
fragosti
92f56c63ac chore: remove shark relay from possible SRA endpoints 2018-12-06 11:58:38 +01:00
fragosti
3d69063bf6 hack: make min-height of line-number container 98% to prevent scrollbar from appearing in code demo 2018-12-06 11:58:38 +01:00
fragosti
4e03c754e7 fix: use WebsitePaths type and update wiki link to new link 2018-12-06 11:58:38 +01:00
fragosti
87eaa91410 fix: reset available tokens when sra endpoint is changed 2018-12-06 11:58:38 +01:00
fragosti
8f5c92b143 fix: make select box-shadow darker 2018-12-06 11:58:38 +01:00
fragosti
77cc1a95bb fix: do not show select all if no tokens are available 2018-12-06 11:58:37 +01:00
fragosti
27cb0386a3 feat: update configurator snippet to actually work if copy and pasted 2018-12-06 11:58:37 +01:00
fragosti
42d6284cf7 fix: change liquiditySource to orderSource 2018-12-06 11:58:37 +01:00
fragosti
893e9f2731 feat: update relayer list 2018-12-06 11:58:37 +01:00
fragosti
7a6339ae38 polish: make configurator inputs look more like mocks 2018-12-06 11:58:37 +01:00
fragosti
fbb27b1fb2 feat: fetch asset meta data from the asset meta data map 2018-12-06 11:58:37 +01:00
fragosti
7f8dc8bb1b fix: address to lowercase and explore the docs leads to correct wiki 2018-12-06 11:58:37 +01:00
fragosti
c47b42d7c1 feat: create more dank slider 2018-12-06 11:58:37 +01:00
fragosti
3bdcf7857f feat: make (optional) label inline 2018-12-06 11:56:11 +01:00
fragosti
80a25e4b38 feat: add fee percentage slider 2018-12-06 11:56:11 +01:00
fragosti
4d7e5b4e5d feat: add fee percentage slier 2018-12-06 11:56:11 +01:00
fragosti
659ae0dcca feat: implement basic feeRecipient address in config generator 2018-12-06 11:56:11 +01:00
fragosti
7a52168cd8 fix: use correct styles even when syntax highlighter component removes classnames on second render 2018-12-06 11:56:11 +01:00
fragosti
566953d5e1 feat: implement code generation 2018-12-06 11:56:11 +01:00
fragosti
a849af8a48 feat: implement multi token select component 2018-12-06 11:56:11 +01:00
fragosti
cc235aac38 feat: implement available token fetching 2018-12-06 11:56:11 +01:00
fragosti
ec24bf8401 feat: add MultiSelect component skeleton 2018-12-06 11:56:11 +01:00
fragosti
9ebb096025 feat: add Select component and use for configurator 2018-12-06 11:56:11 +01:00
fragosti
f8b925c9ad feat: move instant base config to types file 2018-12-06 11:56:11 +01:00
fragosti
a20d547814 feat: implement configurator layout 2018-12-06 11:53:46 +01:00
fragosti
3dcb874e08 feat: factor out ActionLink component from features 2018-12-06 11:53:46 +01:00
fragosti
6b952c4236 feat: improve styling of code demo component 2018-12-06 11:53:46 +01:00
fragosti
9e1a94266e feat: have basic code syntax highlighting working 2018-12-06 11:53:46 +01:00
fragosti
179f093c26 feat: disable slider when no affiliate info 2018-12-05 23:33:04 -08:00
fragosti
6438241144 fix: add comma to affiliateInfo config in configurator 2018-12-05 23:08:18 -08:00
Steve Klebanoff
c185618224 Merge pull request #1398 from 0xProject/feature/instant/more-error-reporting
[instant] More aggressive error reporting
2018-12-05 20:11:23 -08:00
Steve Klebanoff
b0e7b82dd9 feat(instant): More aggressive error reporting 2018-12-05 17:50:23 -08:00
fragosti
cae0e02bc6 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into development 2018-12-05 16:18:45 -08:00
fragosti
83c1b7aec5 fix: remove target=_blank from instant link 2018-12-05 16:18:34 -08:00
Xianny
78d0ab1aa2 Fix/pipeline/ohlcv (#1393)
The OHLCV script in data pipeline quits early when we get no data from Crypto Compare. Sometimes Crypto Compare gives us a valid empty response (e.g. when we query for way back in time) and we need to just continue. This adds better filtering for the types of Crypto Compare responses to detect when we should continue and when we should really quit.
2018-12-05 16:05:06 -08:00
Francesco Agosti
21122f0137 Merge pull request #1369 from 0xProject/feature/website/instant-configurator
[website][instant] Instant configurator
2018-12-05 15:44:54 -08:00
fragosti
c282c2fcc4 feat: change New notification to point to instant 2018-12-05 15:26:27 -08:00
Steve Klebanoff
e6acc0416a Merge pull request #1389 from 0xProject/fix/instant-rollbar-localhost
[instant] Don't report localhost errors to Rollbar
2018-12-05 13:48:54 -08:00
fragosti
ea6547cb75 chore: run prettier 2018-12-05 13:04:42 -08:00
Francesco Agosti
e839e698f9 Merge pull request #1392 from 0xProject/fix/instant/pre-release-hotfixes
[instant] CSS leakage and non-lowercase defaultAssetData fix
2018-12-05 12:45:16 -08:00
fragosti
b7603bef19 fix: ensure copy button is above code 2018-12-05 12:44:23 -08:00
fragosti
fb221e4ca9 feat: notify user they've copied to clipboard on copy 2018-12-05 12:41:57 -08:00
fragosti
1f8c09779d chore: make default fee percentage in configurator 0 2018-12-05 12:34:24 -08:00
fragosti
f9e73d2a6f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/instant-configurator 2018-12-05 12:33:34 -08:00
Alex Browne
08eb0b91b6 Fix RadarRelay timestamps (#1391)
* Fixing rr timestamps

* Apply prettier
2018-12-05 12:27:32 -08:00
fragosti
f2c5a8e2f1 feat: lowercase keys in additionalAssetMetaDataMap 2018-12-05 12:16:55 -08:00
fragosti
55ebf405a0 chore: add coingecko css example to externall.css 2018-12-05 11:56:54 -08:00
fragosti
92d4c1d09e fix: call toLowerCase in asset creation logic 2018-12-05 11:52:27 -08:00
fragosti
3454bbfd65 fix: input placeholder css specificity increase 2018-12-05 11:39:10 -08:00
Alex Browne
b2dd5495bc Merge pull request #1377 from 0xProject/feature/pipeline-cleanup-mega-rebase
Merge all pipeline code into development
2018-12-05 11:08:19 -08:00
Steve Klebanoff
69d4e330cf Takeout console.log 2018-12-05 10:17:18 -08:00
Steve Klebanoff
9eff857416 Only include localhost in host domains if in development mode 2018-12-05 09:45:34 -08:00
Steve Klebanoff
37dbb4d06f Use dotenv in development 2018-12-05 09:45:23 -08:00
Ezekiel Aquino
a9895c55f9 [WIP] Adds paragraph sizes 2018-12-05 18:07:28 +01:00
Ezekiel Aquino
682b0dd8f4 Implements desktop/mobile font sizing 2018-12-05 17:20:44 +01:00
Fabio B
72a30260d8 Merge pull request #1387 from 0xProject/switchRocketChatForDiscord
Switch all website links from RocketChat for Discord
2018-12-05 15:30:26 +00:00
Fred Carlsen
00dbddc1aa Merge remote-tracking branch 'upstream/development' into website
# Conflicts:
#	packages/website/package.json
#	packages/website/ts/style/colors.ts
2018-12-05 16:15:44 +01:00
Leonid Logvinov
a365ab11d2 Refactor out tokens from core contracts package 2018-12-05 15:21:03 +01:00
Leonid Logvinov
48021a227f Refactor our protocol interfaces into @0x/contracts-interfaces 2018-12-05 13:13:35 +01:00
Fabio Berger
0a618f6f4d Replace Rocket.chat with Discord 2018-12-05 11:46:28 +00:00
Fabio Berger
d0b2ee7fc1 Fix mixed up chinese translations 2018-12-05 11:35:38 +00:00
Leonid Logvinov
b411e2250a Merge pull request #1384 from 0xProject/feature/contracts-monorepo-3
Contracts monorepo 4 feat
2018-12-05 09:39:10 +01:00
Jacob Evans
740b73276f chore: Remove increaseTimeAsync from DutchAuction.
Dutch auctions can be made in the past so we do not need to artificially increase time
2018-12-05 18:13:48 +11:00
Alex Browne
e0348f9c04 Change type of transactions.gas_used and gas_price to BigNumber/numeric 2018-12-04 20:20:49 -08:00
Alex Browne
2e704ac01a Fix prettier 2018-12-04 20:08:32 -08:00
Alex Browne
00f86ca0f7 Address PR feedback 2018-12-04 20:04:08 -08:00
Fabio B
549f5e4655 Use a string template in packages/pipeline/src/scripts/pull_missing_events.ts
Co-Authored-By: albrow <stephenalexbrowne@gmail.com>
2018-12-04 19:56:23 -08:00
Fabio B
ebdc539da7 Fix typo in packages/pipeline/src/parsers/bloxy/index.ts
Co-Authored-By: albrow <stephenalexbrowne@gmail.com>
2018-12-04 19:31:19 -08:00
Steve Klebanoff
2f50cca480 Merge pull request #1382 from 0xProject/fix/instant/center-powered-by
[instant] Center powered by and change to text to Connect
2018-12-04 17:41:42 -08:00
Brandon Millman
0a944244cf Merge pull request #1379 from 0xProject/fix/instant/overlay-color
[instant] add stable class name to overlay close button and adjust overlay color
2018-12-04 17:37:53 -08:00
Steve Klebanoff
9aff0dfed0 Merge pull request #1381 from 0xProject/feature/magic-input-error
[instant] Magic input to trigger error for production Rollbar testing
2018-12-04 17:26:04 -08:00
Steve Klebanoff
40ac4509ca Wallet prompt tweaks per Chris's comment 2018-12-04 17:24:34 -08:00
Steve Klebanoff
4e7031e96d Merge pull request #1371 from 0xProject/feature/instant/log-decimals-and-add-event-properties
feat(instant): More event properties for tracking
2018-12-04 17:20:58 -08:00
Steve Klebanoff
0af1bf11c8 Use git sha and npm version from constants 2018-12-04 17:11:58 -08:00
Steve Klebanoff
d579ba1eda Please unlock -> Click to connect 2018-12-04 16:45:09 -08:00
Steve Klebanoff
f327d7b4d9 fix(instant): center powered by 0x svg 2018-12-04 16:41:47 -08:00
Steve Klebanoff
04226106a2 ethBalanceInUnitAmount -> lastEthBalanceInUnitAmount 2018-12-04 16:33:49 -08:00
Steve Klebanoff
a138ee7e83 Add GIT_SHA and NPM_VERSION constants, report git and npm version in error 2018-12-04 16:10:56 -08:00
Steve Klebanoff
1cc043d7a9 feat(instant): input to trigger error for rollbar testing 2018-12-04 15:58:36 -08:00
Steve Klebanoff
a8a6baf964 Merge pull request #1380 from 0xProject/instant/fix/heap-analytics-id-prod
[instant] Ensure build process receives build arguments
2018-12-04 15:58:13 -08:00
Francesco Agosti
243a099858 Merge pull request #1376 from 0xProject/feature/instant/padding-spacing-polish
[instant] Reduce vertical padding in instant
2018-12-04 15:53:46 -08:00
fragosti
5c29b918df chore: run linter 2018-12-04 15:45:23 -08:00
Brandon Millman
feb715a08b fix(instant): remove extra container around the button 2018-12-04 15:44:48 -08:00
Steve Klebanoff
1b4c477ddb Ensure build process receives build arguments
See https://github.com/entropitor/dotenv-cli/issues/8
2018-12-04 15:42:56 -08:00
Brandon Millman
8b659dbd77 feat(instant): give a stable class name to the close button on the overlay 2018-12-04 15:36:51 -08:00
Alex Browne
8721d4ed7a Fix linter 2018-12-04 15:23:15 -08:00
Brandon Millman
14ad091e83 fix(instant): lighten the overlay color to 0.7 opacity from 0.9 2018-12-04 15:20:26 -08:00
fragosti
ce013489ec feat: add copy code feature 2018-12-04 14:30:31 -08:00
Xianny
8c21a700ba pull OHLCV records from Crypto Compare (#1349)
* [WIP] pull OHLCV records from Crypto Compare

* lint

* refactor to pull logic out of script and into modules

* add entity test for ohlcv_external entity

* implement rate limit and chronological backfill for ohlcv

* add unit tests; cleanup variable names

* Fetch OHLCV pairs params from events table

* better method names

* fix outdated test

* lint

* Clean up after review

* oops

* fix failing test

* better filtering of most recent records

* fix bug when generating pairs

* fix default earliest backfill date

* fix bug with retrieving backfill time

* prettier
2018-12-04 14:26:03 -08:00
zkao
87ffa5d7ab Token_orderbook_snapshots for Ddex and Paradex(#1354)
* Implements the TokenOrderbookSnapshot Table

* Scripts, Data Sources and Entities to pull Ddex and Paradex API data.
2018-12-04 14:25:42 -08:00
Alex Browne
7198b441e0 Add script for parsing competing dex trades from Bloxy (#1355) 2018-12-04 14:25:42 -08:00
Alex Browne
3d211c415b Introduce framework for running basic tests for entities (#1344)
* Introduce framework for running basic tests for entities

* Add pipeline tests to CircleCI config

* Make pipeline tests more configurable and fix CircleCI config

* Add coverage dir to pipeline package

* Add basic tests for all exchange event entities

* Add tests for remaining entities

* Create separate test scripts in package.json and add new info to README

* Update db_setup.ts to revert migrations even if you are using docker

* Automatically pull the postgres image if needed

* Add comment about why NumberToBigIntTransformer is needed
2018-12-04 14:25:38 -08:00
Alex Browne
4061731245 [pipeline] Add additional documentation to the README (#1328) 2018-12-04 14:24:48 -08:00
Alex Browne
96fdb9b766 Reduce number of blocks per query in pull_missing_events 2018-12-04 14:24:48 -08:00
Jake Ellowitz
1aa3f9d69f updating comment for 0x trusted tokens 2018-12-04 14:24:48 -08:00
Jake Ellowitz
dea89c4e22 metadata and trusted sources in same raw table 2018-12-04 14:24:48 -08:00
Jake Ellowitz
c6af5131b0 Pull token metadata re trusted tokens 2018-12-04 14:24:48 -08:00
Alex Browne
9986717671 Add script for pulling missing block data 2018-12-04 14:24:48 -08:00
Alex Browne
5cad2ad174 Check for special characters in table name in pull_missing_events 2018-12-04 14:24:48 -08:00
Alex Browne
24fd2d9730 Add support for pulling Cancel and CancelUpTo events 2018-12-04 14:24:48 -08:00
Alex Browne
0397ff8b22 Add transactionHash to CancelUpToEvent and CancelEvent entities 2018-12-04 14:24:48 -08:00
Alex Browne
1a25862086 Optimize database operations in pull_missing_events script 2018-12-04 14:24:48 -08:00
Alex Browne
b771020f88 Add homepage_url to relayers 2018-12-04 14:24:48 -08:00
Alex Browne
b42cf0c797 Add workaround for broken save method 2018-12-04 14:24:48 -08:00
Alex Browne
8076333795 Fix chunk size in pull_missing_events 2018-12-04 14:24:48 -08:00
Alex Browne
b0a2c10e11 Use built-in chunk feature of TypeORM save method 2018-12-04 14:24:48 -08:00
Alex Browne
303bbc42f4 Change some column types from varchar to numeric 2018-12-04 14:24:48 -08:00
Alex Browne
10e93bb01f Add raw schema prefix to query in pull_missing_events 2018-12-04 14:24:48 -08:00
Alex Browne
a948305e7a Rename taker and maker amounts in sra_orders 2018-12-04 14:24:48 -08:00
Alex Browne
26280e4aba Implement scraping sra orders from radar relay 2018-12-04 14:24:48 -08:00
Alex Browne
55bbe1954b Preliminary work for adding RR order book scraping 2018-12-04 14:24:48 -08:00
Alex Browne
2cbb82eb04 Update schema for sra_orders 2018-12-04 14:24:48 -08:00
Jake Ellowitz
96134003e1 Pointing entities to raw schema
Fix linter issues
2018-12-04 14:25:00 -08:00
Jake Ellowitz
599a3f9b96 Mapping dev schema to initial migration 2018-12-04 14:24:48 -08:00
Alex Browne
688d277b30 Configure linter with --format stylish and fix linter errors 2018-12-04 14:24:48 -08:00
Alex Browne
329c68f610 Configure TypeORM for migrations. Add new package.json scripts. 2018-12-04 14:24:48 -08:00
Alex Browne
6fb333f200 Rename Transaction.ts to transaction.ts
Rename Relayer.ts to relayer.ts

Rename Block.ts to block.ts
2018-12-04 14:24:55 -08:00
Alex Browne
410a924495 Add better error handling for immediately invoked async functions 2018-12-04 14:24:48 -08:00
Alex Browne
53cc9e9bed Rename table and column names 2018-12-04 14:24:48 -08:00
Alex Browne
ccad046eb6 Reorganize entities. Make scripts work from any directory. 2018-12-04 14:24:48 -08:00
Alex Browne
954c3b9272 Split index.ts into multiple scripts in scripts/ and detect last known block when pulling events 2018-12-04 14:24:48 -08:00
Alex Browne
9cb89725c9 Remove unused function parameter in index.ts script 2018-12-04 14:24:48 -08:00
Alex Browne
830d0f3b21 Use bigint for gasUsed and gasPrice in Transaction 2018-12-04 14:24:48 -08:00
Alex Browne
8248fbb231 Update relayer code to use new relayer-registry format 2018-12-04 14:24:48 -08:00
Alex Browne
dca2a4e9c2 Remove outdated info from README 2018-12-04 14:24:48 -08:00
Alex Browne
21d4807206 Add build:ci to pipeline package.json 2018-12-04 14:24:48 -08:00
Alex Browne
5e22a862b7 Implement fetching and parsing relayer info 2018-12-04 14:24:48 -08:00
Alex Browne
bb440b683a Implement support for getting and parsing blocks and transactions 2018-12-04 14:24:48 -08:00
Alex Browne
d959b3e234 chore: Fix tslint config. 2018-12-04 14:24:49 -08:00
Alex Browne
aeff948c9a Fix bugs in merge_v2_events script and disable verbose logging 2018-12-04 14:24:48 -08:00
Alex Browne
7945d2ea62 Enable verbose logging 2018-12-04 14:24:48 -08:00
Alex Browne
af2546bc58 Rename index.ts -> merge_v2_events 2018-12-04 14:24:48 -08:00
Alex Browne
3a19faa5ff Update script to work with existing v1 pipeline data 2018-12-04 14:24:48 -08:00
Alex Browne
bbe1a843ef Update pipeline to use new @0x npm org for imports 2018-12-04 14:24:48 -08:00
Alex Browne
91e7485ecc Update to use ContractWrappers + Infura instead of Etherscan 2018-12-04 14:24:44 -08:00
Alex Browne
6c00dd6f39 Rebase and update to use new modularized artifacts 2018-12-04 14:24:06 -08:00
Alex Browne
ada78d140b Add tests for SRA order conversion 2018-12-04 14:24:06 -08:00
Alex Browne
6aca4e8272 Re-add missing tests 2018-12-04 14:24:06 -08:00
Alex Browne
dd093daf91 Add soruceUrl to SraOrder entity 2018-12-04 14:24:06 -08:00
Alex Browne
9ab55ccec0 Add preliminary support for scraping orders from SRA endpoints (no pagination, only RR support for now) 2018-12-04 14:24:06 -08:00
Alex Browne
71a015f2aa For event entities, rename address -> contractAddress and make it a primary key 2018-12-04 14:24:06 -08:00
Alex Browne
b0de2a388f Implement scraping and parsing exchange CancelUpTo events 2018-12-04 14:24:06 -08:00
Alex Browne
40610830da Use multi-primary keys for event and filter null logIndexes 2018-12-04 14:24:06 -08:00
Alex Browne
60bc27c616 Implement scraping and parsing exchange cancel events 2018-12-04 14:24:06 -08:00
Alex Browne
2207f09ce2 Make event parsing more functional and less class-based 2018-12-04 14:24:06 -08:00
Alex Browne
fe523e1f3f Re-organize event parsing and decoding 2018-12-04 14:24:06 -08:00
Alex Browne
9e9104578c Add support for decoding asset data 2018-12-04 14:24:06 -08:00
Alex Browne
4e6919a6e5 Add typeorm and begin inserting database records 2018-12-04 14:24:03 -08:00
Alex Browne
d71fa65359 Make contractAbi a parameter of getContractEventsAsync 2018-12-04 14:23:32 -08:00
Alex Browne
75d3f24835 Add tests for etherscan events 2018-12-04 14:23:32 -08:00
Alex Browne
2b7f94c00f Restructure pipeline package. Create data-sources dir 2018-12-04 14:23:32 -08:00
Alex Browne
cd73a047ef Remove old code. Create function for getting contract events via etherscan 2018-12-04 14:23:29 -08:00
Alex Browne
57e7119c0d Rebase pipeline branch off development 2018-12-04 14:21:42 -08:00
fragosti
8ad114c5e5 fix: instant linting issues 2018-12-04 14:11:28 -08:00
fragosti
340493a0b1 polish: reduce vertical padding in instant 2018-12-04 13:36:47 -08:00
fragosti
01e1e5ac3b chore: fix linter issues 2018-12-04 12:59:16 -08:00
fragosti
cb9f7a0664 chore: remove shark relay from possible SRA endpoints 2018-12-04 12:53:09 -08:00
fragosti
3e4b77757e hack: make min-height of line-number container 98% to prevent scrollbar from appearing in code demo 2018-12-04 12:49:37 -08:00
fragosti
110d05f645 fix: use WebsitePaths type and update wiki link to new link 2018-12-04 12:43:39 -08:00
fragosti
36f22ba069 fix: reset available tokens when sra endpoint is changed 2018-12-04 12:23:25 -08:00
fragosti
b7d804e949 fix: make select box-shadow darker 2018-12-04 11:26:51 -08:00
fragosti
f576f78b4a fix: do not show select all if no tokens are available 2018-12-04 11:22:49 -08:00
fragosti
dfe5752411 feat: update configurator snippet to actually work if copy and pasted 2018-12-04 10:58:43 -08:00
Leonid Logvinov
b1a8a5521e Merge pull request #1374 from 0xProject/feature/contracts-monorepo-4
Contracts monorepo 4
2018-12-04 17:22:25 +01:00
Leonid Logvinov
323195f4ad De-nest libs contracts 2018-12-04 17:18:10 +01:00
Leonid Logvinov
c43ba6b3c7 Merge pull request #1373 from 0xProject/feature/contracts-monorepo-3
Contracts monorepo III
2018-12-04 17:05:57 +01:00
Ezekiel Aquino
b552c2bd0c Cleanup 2018-12-04 17:00:30 +01:00
Ezekiel Aquino
ae9614ba36 Fixes Link component to user ReactRouterLink 2018-12-04 16:47:58 +01:00
Ezekiel Aquino
871ec6cfbc Adds sa bit of polish to landing page 2018-12-04 16:41:01 +01:00
Ezekiel Aquino
3c7dca37f5 Adds padding prop to text elements 2018-12-04 16:30:12 +01:00
Leonid Logvinov
8d0192c1eb Enable libs tests on CI 2018-12-04 16:07:59 +01:00
Leonid Logvinov
ac5a3fae9b Import TestLibs contract from @0x/contracts-libs 2018-12-04 16:07:59 +01:00
Leonid Logvinov
9e01f4c9a3 Refactor out libs into @0x/contracts-libs 2018-12-04 16:07:59 +01:00
Ezekiel Aquino
8acb25f577 Refactors buttons/links/header 2018-12-04 15:45:04 +01:00
Ezekiel Aquino
eec40080a0 Refactors Button component 2018-12-04 15:17:33 +01:00
Leonid Logvinov
18489161c6 Add missing dependency 2018-12-04 15:03:50 +01:00
Ezekiel Aquino
4da419cf75 Fixes all lint issues, cleanup 2018-12-04 14:58:37 +01:00
Leonid Logvinov
d63576f495 Fix homepage link 2018-12-04 14:49:01 +01:00
Leonid Logvinov
f0213f9a8e Enable contract utils tests 2018-12-04 14:42:18 +01:00
Leonid Logvinov
e8d0aff333 Refactor @0x/contracts-utils from @0x/contracts-core 2018-12-04 14:41:18 +01:00
Leonid Logvinov
79f5e36edb Merge pull request #1311 from 0xProject/feature/contracts-monorepo-2
Contracts monorepo II
2018-12-04 13:53:15 +01:00
Leonid Logvinov
a872763413 Fix calldata related linter errors 2018-12-04 13:45:19 +01:00
Leonid Logvinov
55ebb04f03 Add missing dependency 2018-12-04 13:41:17 +01:00
Leonid Logvinov
6d312f0230 Fix merge conflict 2018-12-04 13:25:37 +01:00
Leonid Logvinov
240a8a50d3 Merge branch 'development' into feature/contracts-monorepo-2 2018-12-04 12:42:28 +01:00
Leonid Logvinov
672a4b93ba Don't start the provider by default 2018-12-04 12:10:03 +01:00
fragosti
ea4155e5fa fix: change liquiditySource to orderSource 2018-12-03 18:00:30 -08:00
fragosti
d12b99883b Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/instant-configurator 2018-12-03 17:52:44 -08:00
fragosti
1498e013d0 feat: update relayer list 2018-12-03 17:52:35 -08:00
Jacob Evans
a1e985a1ca Merge pull request #1225 from 0xProject/feature/contracts/dutch-auction
Implement Basic Dutch Auction
2018-12-04 12:44:19 +11:00
fragosti
cd44dc7beb polish: make configurator inputs look more like mocks 2018-12-03 17:37:32 -08:00
fragosti
db21ae3af1 feat: fetch asset meta data from the asset meta data map 2018-12-03 17:29:31 -08:00
Brandon Millman
8c146ce231 Merge pull request #1372 from 0xProject/fix/instant/single-asset
[instant] render token selector when only one asset is available
2018-12-03 17:08:32 -08:00
Steve Klebanoff
703cea6173 Merge pull request #1370 from 0xProject/feature/instant/explicitly-enable-heap-dev
[instant] Must explicitly specify when want to send to heap when developing
2018-12-03 16:52:06 -08:00
fragosti
1ce84f9bb2 fix: address to lowercase and explore the docs leads to correct wiki 2018-12-03 16:51:55 -08:00
fragosti
48bfe92740 feat: create more dank slider 2018-12-03 16:47:52 -08:00
Brandon Millman
e592b27f77 fix(instant): render token selector when only one asset is available 2018-12-03 16:36:27 -08:00
Steve Klebanoff
1107b84949 updating .env example 2018-12-03 16:10:13 -08:00
Steve Klebanoff
7a03df946d feat(instant): Add eth balance, eth address, token symbol and decimals to event properties 2018-12-03 16:01:37 -08:00
fragosti
d8a3fc0be0 feat: make (optional) label inline 2018-12-03 15:07:24 -08:00
Brandon Millman
2601d16efb Merge pull request #1367 from 0xProject/fix/instant/dai
[asset-buyer][instant] support DAI in instant
2018-12-03 15:07:23 -08:00
Jacob Evans
098a531de8 chore: Move to new structure 2018-12-04 09:58:37 +11:00
Steve Klebanoff
239116eec4 feat(instant): have to use INSTANT_HEAP_FORCE_DEVELOPMENT to report to heap in development 2018-12-03 14:53:25 -08:00
fragosti
e966641d14 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/instant-configurator 2018-12-03 14:51:55 -08:00
Francesco Agosti
e9fe7dcf54 Merge pull request #1353 from 0xProject/feature/website/instant-marketing
[website] instant marketing page shell
2018-12-03 14:51:27 -08:00
fragosti
7086bd32ee Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/instant-configurator 2018-12-03 14:48:15 -08:00
fragosti
50bfbda79a feat: add fee percentage slider 2018-12-03 14:30:38 -08:00
Steve Klebanoff
50df67e751 Merge pull request #1295 from 0xProject/feature/instant/rollbar-env
[instant] Rollbar
2018-12-03 14:24:58 -08:00
Jacob Evans
247266b969 chore: SafeMath and if statement in getAuctionDetails 2018-12-04 09:14:00 +11:00
Jacob Evans
0bffc3d10e chore: Add RevertReasons for DutchAuction. Test revert reasons 2018-12-04 09:14:00 +11:00
Jacob Evans
a882a39937 chore: Use SafeMath where possible 2018-12-04 09:13:59 +11:00
Jacob Evans
6b1fea602e chore: Clean up documentation 2018-12-04 09:13:59 +11:00
Jacob Evans
afa24aa122 chore: Work around for Ganache timestamp bug 2018-12-04 09:13:59 +11:00
Jacob Evans
a5eb1bcc20 chore: Return excess to buyer 2018-12-04 09:13:59 +11:00
Jacob Evans
54aaee8e42 chore: update documentation 2018-12-04 09:13:59 +11:00
Jacob Evans
7934d77def chore: taker address and zrx fee test 2018-12-04 09:13:58 +11:00
Jacob Evans
cb8601676d chore: Rename price to amount. Encode parameters in makerAssetData 2018-12-04 09:13:58 +11:00
Jacob Evans
98d9a9c648 chore: time movement for geth 2018-12-04 09:13:58 +11:00
Jacob Evans
da8c27c286 feat: Dutch Auction 2018-12-04 09:13:58 +11:00
fragosti
de1c296d28 feat: add fee percentage slier 2018-12-03 12:54:29 -08:00
Brandon Millman
f076cdb832 Merge pull request #1365 from 0xProject/fix/instant/token-selector
[instant] various polish items
2018-12-03 12:48:42 -08:00
fragosti
a192b309f3 feat: implement basic feeRecipient address in config generator 2018-12-03 12:24:37 -08:00
Brandon Millman
c52d48d4db fix(instant): remove screenshot from dev index.html 2018-12-03 10:47:40 -08:00
Brandon Millman
5edc3bfd33 feat(instant): update DAI token color 2018-12-03 10:43:03 -08:00
Brandon Millman
cd4241fac8 fix(asset-buyer): update SRA order provider to include DAI 2018-12-03 10:42:25 -08:00
Francesco Agosti
3662ab2524 Merge pull request #1364 from 0xProject/feature/instant/allow-env-vars-in-env-file
[instant] Add dotenv to make env dependencies more explicit
2018-12-03 10:32:51 -08:00
Brandon Millman
57986c0e1e Merge pull request #1366 from 0xProject/feature/instant/provider-name
[instant] provide a custom wallet display name option
2018-12-03 09:56:10 -08:00
Fred Carlsen
5bf7b9b8f3 Added ecosystem page 2018-12-03 16:13:39 +01:00
Fred Carlsen
950dae0437 Added launch kit 2018-12-03 16:01:06 +01:00
Fred Carlsen
05ef537de0 Adjust team lists 2018-12-03 15:36:33 +01:00
Fred Carlsen
68d7ce1968 Add map to jobs 2018-12-03 15:31:30 +01:00
Fred Carlsen
59eca8d748 ADd content to jobs 2018-12-03 15:31:22 +01:00
Fred Carlsen
06304b30c9 Tweak line heights 2018-12-03 15:31:17 +01:00
Fred Carlsen
03962352df Updated sublinks on about 2018-12-03 14:43:43 +01:00
Fred Carlsen
1c03c9168b Added press logo 2018-12-03 14:43:26 +01:00
Fred Carlsen
b6be92e40b Updated press content 2018-12-03 14:43:19 +01:00
Fred Carlsen
06d4abf1ba Adjust thumb 2018-12-03 14:31:47 +01:00
Fred Carlsen
9349e50bb4 Add skeleton for team, press, jobs 2018-12-03 14:29:36 +01:00
Fred Carlsen
bf672272ce Update boolean values 2018-12-03 14:29:22 +01:00
Fred Carlsen
b9fbb3a725 Add color to interface 2018-12-03 14:28:49 +01:00
Fred Carlsen
64d52e2113 Misc fixes to layout 2018-12-03 14:28:42 +01:00
Fred Carlsen
e0475ce84e Added project logos 2018-12-03 14:00:54 +01:00
Leonid Logvinov
1785769916 Refactour out the contracts testing options into a separate markdown file 2018-12-03 13:50:11 +01:00
Leonid Logvinov
c5e43f8da5 Use lodash _.startsWith 2018-12-03 13:40:06 +01:00
Leonid Logvinov
8a42cea978 Remove contracts package authors from package.json 2018-12-03 13:38:46 +01:00
Fabio B
8c69a8f1fb Update packages/sol-resolver/src/resolvers/npm_resolver.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-03 13:35:57 +01:00
Fabio B
9194537085 Update packages/sol-resolver/src/resolvers/npm_resolver.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-03 13:35:03 +01:00
Fabio B
91397bf8a5 Update packages/sol-compiler/src/compiler.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-03 13:34:55 +01:00
Fabio B
a355001d13 Update packages/sol-compiler/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-03 13:34:45 +01:00
Fabio B
a6046bd5bb Update contracts/multisig/README.md
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-12-03 13:34:21 +01:00
Leonid Logvinov
7e4f2c6bdc Move more devDependencies of contracts-tst-utils to dependencies 2018-12-03 13:30:57 +01:00
Leonid Logvinov
958f4aa8e8 Update contracts-test-utils README 2018-12-03 13:22:08 +01:00
Leonid Logvinov
74dac18e47 Make chai-as-promised a dependency 2018-12-03 13:19:48 +01:00
Leonid Logvinov
bcb4808c96 Make sol-cov a dependency of @0x/contracts/test-utils 2018-12-03 13:09:15 +01:00
Fred Carlsen
64c5181c14 Lint fix 2018-12-03 12:51:51 +01:00
Leonid Logvinov
754be75dbf Fix hardcoded path in release notes fetching 2018-12-03 12:48:53 +01:00
Ezekiel Aquino
6f333f2b55 Fix isFullWidth type declaration in layout 2018-12-03 12:21:57 +01:00
Ezekiel Aquino
7f77347ea4 Changes boolean props to follow is[Property] syntax 2018-12-03 12:19:50 +01:00
Leonid Logvinov
5d70fe053d Rename contract_templates to abi-gen-templates 2018-12-03 12:15:53 +01:00
Leonid Logvinov
8fda11ec3a Update yarn.lock 2018-12-03 12:09:29 +01:00
Leonid Logvinov
a5b6ce6114 Fix merge conflict 2018-12-03 12:09:29 +01:00
Leonid Logvinov
0d3fb79c05 Remove unused dependencies 2018-12-03 12:09:29 +01:00
Leonid Logvinov
e70d897282 Fix package description 2018-12-03 12:09:29 +01:00
Leonid Logvinov
c638823373 Fix a typo in a prettierignore 2018-12-03 12:09:29 +01:00
Leonid Logvinov
f8399fee2f Clean up READMEs 2018-12-03 12:09:29 +01:00
Leonid Logvinov
52e63effea Remove .solhintignore 2018-12-03 12:09:29 +01:00
Leonid Logvinov
a219a8c911 Remove CHANGELOG entries 2018-12-03 12:09:29 +01:00
Leonid Logvinov
de39ec3c97 Remove duplicates combinatorial utils from core contracts 2018-12-03 12:09:28 +01:00
Leonid Logvinov
665a855548 Ignore generated files in multisig contracts 2018-12-03 12:09:28 +01:00
Leonid Logvinov
91d2cbfa0a Run both core and multisig contracts tests on CI 2018-12-03 12:09:28 +01:00
Leonid Logvinov
68b0f71d26 Fix linter issues 2018-12-03 12:09:28 +01:00
Leonid Logvinov
91c89d90a5 Use assetProxyOwner instead of the multisig in the core contracts tests 2018-12-03 12:09:28 +01:00
Leonid Logvinov
980e3cb82f Remove multisig contracts from the core list of contracts 2018-12-03 12:09:28 +01:00
Leonid Logvinov
eefb1cfe5d Fix an issue when we tried to append base contracts path to absolute imports (NPM) in sol-compiler 2018-12-03 12:09:28 +01:00
Leonid Logvinov
5b0746a8ef Add support for scoped packages resolving to NPMResoler 2018-12-03 12:09:28 +01:00
Leonid Logvinov
0faa8b3231 Refactor contracts-core into contracts-multisig, contracts-core and contracts-test-utils 2018-12-03 12:09:28 +01:00
Leonid Logvinov
450c72035f Replace packages/contracts with contracts/core 2018-12-03 12:09:28 +01:00
Leonid Logvinov
5a16e78b54 Merge pull request #1310 from 0xProject/feature/contracts-monorepo
Contracts monorepo I
2018-12-03 12:07:41 +01:00
Leonid Logvinov
6d0c71ef30 Move MultiAssetProxy to the contracts monorepo 2018-12-03 11:52:21 +01:00
Leonid Logvinov
e015f470dd Remove generated files 2018-12-03 11:33:05 +01:00
Leonid Logvinov
d142413745 Rename calldata to callData because solhint doesn't like calldata (probably reserved keyword) and goes nuts 2018-12-03 11:33:04 +01:00
Leonid Logvinov
e339e1182d Update yarn.lock 2018-12-03 11:31:54 +01:00
Leonid Logvinov
9bee3eba76 Add contracts to yarn workspaces 2018-12-03 11:31:54 +01:00
Leonid Logvinov
866c946b92 Replace packages/contracts with contracts/core 2018-12-03 11:31:54 +01:00
Leonid Logvinov
8f9a246f48 Add contracts/* to monorepo routes 2018-12-03 11:31:54 +01:00
Leonid Logvinov
4668b0732c Move packages/contracts to contracts/core 2018-12-03 11:31:53 +01:00
Ezekiel Aquino
9ed30fbcca Adds note to layout section 2018-12-03 11:24:22 +01:00
Ezekiel Aquino
1fab30ef80 A bit of formatting, centeres instant text 2018-12-03 11:15:34 +01:00
Ezekiel Aquino
62eba1e820 Uses layout elems in header 2018-12-03 11:10:33 +01:00
Ezekiel Aquino
78703ab370 Some comments and cleanup 2018-12-03 10:54:48 +01:00
Brandon Millman
f4e0f74a6d feat(instant): provide a custom wallet display name 2018-12-01 01:15:01 -08:00
Brandon Millman
6f44944ffd fix(instant): darken overlay color 2018-12-01 00:47:07 -08:00
Brandon Millman
074944247d feat(instant): add token symbol to buy button text 2018-12-01 00:22:09 -08:00
Brandon Millman
593ed12d91 fix(instant): update zrx icon 2018-12-01 00:06:36 -08:00
Brandon Millman
c0f4a35cfd fix(instant): DGD and DGX colors 2018-12-01 00:04:57 -08:00
Brandon Millman
800016b430 fix(instant) various token selector fixes 2018-12-01 00:03:07 -08:00
fragosti
937235c4fd feat: add dotenv to make env dependencies more explicit 2018-11-30 16:26:19 -08:00
fragosti
4b6ac96a8d fix: use correct styles even when syntax highlighter component removes classnames on second render 2018-11-30 16:01:16 -08:00
Francesco Agosti
502e9c7be4 Merge pull request #1362 from 0xProject/fix/instant/push-to-history-broken-when-no-onpopstate
[instant] Fix push to history issue on second full render of instant
2018-11-30 16:00:30 -08:00
Steve Klebanoff
91b0fd9517 Fix variable name 2018-11-30 14:19:07 -08:00
Steve Klebanoff
6a3f295b1f Take out https:// prefix 2018-11-30 14:16:49 -08:00
Steve Klebanoff
d9b4b0e0f3 Merge branch 'development' into feature/instant/rollbar-env 2018-11-30 14:16:02 -08:00
Steve Klebanoff
c342940b5d get rid of double private def 2018-11-30 14:09:51 -08:00
Steve Klebanoff
b19700221f update with new CDN 2018-11-30 14:09:43 -08:00
Steve Klebanoff
ef041d1603 Merge branch 'feature/instant/prod-env-switches-cdn' into feature/instant/rollbar-env 2018-11-30 14:09:23 -08:00
fragosti
e47dd4a83e chore: lint 2018-11-30 13:47:47 -08:00
fragosti
9ebe8d63c8 fix: push to history edge case for second render where onpopstate is not defined on first render 2018-11-30 13:34:03 -08:00
Steve Klebanoff
94d81bd562 Merge pull request #1359 from 0xProject/feature/instant/prod-env-switches-cdn
[instant] CDN-approach to identifying environments
2018-11-30 13:12:06 -08:00
Steve Klebanoff
34b2f4736e removing unused references 2018-11-30 12:58:42 -08:00
Steve Klebanoff
f8daacc19a Merge pull request #1342 from 0xProject/feature/instant/misc-close-analytics
[instant] Close and View Transaction analytics events
2018-11-30 12:52:06 -08:00
Steve Klebanoff
d77efb611e Remove env var check for INSTANT_HEAP_ANALYTICS_ID_PRODUCTION since this is only needed on discharge 2018-11-30 12:49:07 -08:00
Steve Klebanoff
de8dcf9a72 takeout console.log 2018-11-30 12:47:16 -08:00
Steve Klebanoff
12d34707b7 Merge branch 'development' into feature/instant/prod-env-switches-cdn 2018-11-30 12:47:05 -08:00
Steve Klebanoff
ab631060a0 cdn -> dischargeTarget, and report to heap 2018-11-30 12:42:40 -08:00
Francesco Agosti
f496096ce1 Merge pull request #1348 from 0xProject/feature/instant/cdn-setup
[instant] Remove commonjs bundle, productionize UMD bundle
2018-11-30 12:36:22 -08:00
fragosti
fc2055cd93 feat: remove instant from project references 2018-11-30 12:26:59 -08:00
Francesco Agosti
ca22d87290 Merge pull request #1351 from 0xProject/fix/instant/instant-bounces-on-error
[instant] Fix instant bouncing around / height changes, don't allow labels to wrap
2018-11-30 12:19:54 -08:00
fragosti
d6ba7298d4 chore: deploy_live -> deploy_production 2018-11-30 11:59:59 -08:00
fragosti
ea11e8c62d Merge branch 'development' of https://github.com/0xProject/0x-monorepo into fix/instant/instant-bounces-on-error 2018-11-30 11:58:05 -08:00
fragosti
a7fc5975c1 feat: update tsconfig 2018-11-30 11:28:26 -08:00
fragosti
09813cb1d8 fix: address PR feedback 2018-11-30 11:20:07 -08:00
fragosti
9e69257b0d feat: implement code generation 2018-11-30 11:08:49 -08:00
fragosti
e65096ee7a feat: implement multi token select component 2018-11-30 10:25:36 -08:00
Daniel Pyrathon
a1d4aa66bc feat(order_utils.py): schema resolver cache (#1317)
* Implemented basic functionality for using cache layer of LocalRefResolver

* Use `importlib` instead of `imp`, since it's been deprecated. Legacy `load_module()` reloads modules even if they are already imported, causing tests to fail when run in non-deterministic ordering, so we replace it with `import_module()`
2018-11-30 12:59:37 -05:00
Steve Klebanoff
6c941eebea add missing import from merge 2018-11-30 08:40:25 -08:00
Ezekiel Aquino
435d9e47e3 ThemeProvider 2018-11-30 17:07:51 +01:00
Ezekiel Aquino
5c12e664a9 WIP themeprovider 2018-11-30 16:25:54 +01:00
Fred Carlsen
46422ff783 Linting 2018-11-30 16:04:13 +01:00
Fred Carlsen
3a13286585 Added about / mission 2018-11-30 16:04:13 +01:00
Fred Carlsen
c98c8b1ded Prevent compiler from stopping on ts warning 2018-11-30 16:04:12 +01:00
Fred Carlsen
de0b5772bf Linting 2018-11-30 16:04:12 +01:00
Fred Carlsen
dbf62ae205 Correct font-weight for heading 2018-11-30 16:04:12 +01:00
Ezekiel Aquino
7962e4050c Breakpoint on padding 2018-11-30 15:23:26 +01:00
Ezekiel Aquino
6bf9889429 Types return on layout methods 2018-11-30 15:11:09 +01:00
Fred Carlsen
7f8b9ef1f7 Add cta 2018-11-30 15:09:57 +01:00
Fred Carlsen
e91fffd005 Make buttons align 2018-11-30 15:09:57 +01:00
Fred Carlsen
7314fd7252 Link products to 0x instant for now 2018-11-30 15:09:57 +01:00
Fred Carlsen
247a69aaec Added 0x instant skeleton 2018-11-30 15:09:57 +01:00
Fred Carlsen
d78ac3f157 Fix icon warnings 2018-11-30 15:09:57 +01:00
Fred Carlsen
315584ef51 Contain images 2018-11-30 15:09:57 +01:00
Ezekiel Aquino
57e539ed41 Allows margin to be passed variable integers as values, adds comments 2018-11-30 15:07:42 +01:00
Ezekiel Aquino
db1babd5be Makes ts happy with running a function on an optional property value 2018-11-30 14:56:19 +01:00
Ezekiel Aquino
bb63c5c86f Adds proposal for padding prop on Wrappers 2018-11-30 14:55:13 +01:00
Ezekiel Aquino
82d6f2150b Adds wrapGrid, bit of cleanup 2018-11-30 14:35:17 +01:00
Ezekiel Aquino
5f177108d1 Cleanup 2018-11-30 14:19:23 +01:00
Ezekiel Aquino
46aa446a61 Just fixes those warnings on icons 2018-11-30 14:19:23 +01:00
Fred Carlsen
0883f7087b Remove double reference 2018-11-30 14:18:11 +01:00
Fred Carlsen
e782262572 Add route links to header 2018-11-30 14:17:02 +01:00
Ezekiel Aquino
2ba14d656e Some cleanup, reindent 2018-11-30 14:13:31 +01:00
Ezekiel Aquino
0c2848c418 Adds ts caching 2018-11-30 14:04:39 +01:00
Ezekiel Aquino
47ef28f88f Adds awcache to gitignore 2018-11-30 14:04:39 +01:00
Fred Carlsen
e81bd1b7f0 Speed up ts loading with cache 2018-11-30 13:57:33 +01:00
Fred Carlsen
929eb45699 Linting 2018-11-30 13:36:01 +01:00
Fred Carlsen
4456ba0f6a Fix tag 2018-11-30 13:10:15 +01:00
Fred Carlsen
d6329a83d5 Linting errors 2018-11-30 13:08:36 +01:00
Ezekiel Aquino
203baa4541 Replaces Text elements in why route 2018-11-30 12:28:56 +01:00
Ezekiel Aquino
e13406cbf4 Just makes it render 2018-11-30 12:15:20 +01:00
Ezekiel Aquino
df213ac0d5 Text and landing 2018-11-30 12:13:24 +01:00
Fred Carlsen
4d7db045e9 Tweak text 2018-11-30 12:05:56 +01:00
Fred Carlsen
849b744185 Linting + typing 2018-11-30 12:05:51 +01:00
Fred Carlsen
7161e8fed9 Tweak submit position 2018-11-30 12:05:40 +01:00
Fred Carlsen
1105d76861 Linting format 2018-11-30 12:05:31 +01:00
Fred Carlsen
9b6d738ab1 Tweak global styles 2018-11-30 12:05:21 +01:00
Fred Carlsen
d586c1f67a Added coin icon 2018-11-30 12:05:14 +01:00
Fred Carlsen
fff4dd7e94 Export svgs as typed pure components 2018-11-30 12:05:08 +01:00
Fred Carlsen
c2d9585150 Linter fixes 2018-11-30 10:47:26 +01:00
Fred Carlsen
3586dde480 Started on why 0x 2018-11-30 09:58:20 +01:00
Fred Carlsen
d6b92e5786 Add center prop to text 2018-11-30 09:58:20 +01:00
Fred Carlsen
ab24dcc290 Hide trade button on mobile 2018-11-30 09:58:20 +01:00
Fred Carlsen
189920eab9 Added newsletter form to footer 2018-11-30 09:58:20 +01:00
Fred Carlsen
83499176d9 Adjust global font size 2018-11-30 09:58:20 +01:00
Fred Carlsen
5294c31997 Format styles 2018-11-30 09:58:20 +01:00
fragosti
f1354632a1 feat: implement available token fetching 2018-11-29 18:42:25 -08:00
fragosti
7fe27e903b feat: add MultiSelect component skeleton 2018-11-29 17:21:53 -08:00
fragosti
f80768cae0 feat: add Select component and use for configurator 2018-11-29 15:57:35 -08:00
Steve Klebanoff
702dbbae54 Merge branch 'development' into feature/instant/misc-close-analytics 2018-11-29 15:45:35 -08:00
Steve Klebanoff
fc3641b499 Merge pull request #1343 from 0xProject/feature/instant/quote-analytics
[instant] Quote analytics
2018-11-29 15:44:07 -08:00
Steve Klebanoff
e59d47eac8 Take out old --env 2018-11-29 15:32:05 -08:00
Steve Klebanoff
d99bdcf036 cdn approach to identifyign environments 2018-11-29 15:13:55 -08:00
Steve Klebanoff
4616c51e19 Fix build command 2018-11-29 14:36:05 -08:00
Steve Klebanoff
d4c439b277 Merge pull request #1345 from 0xProject/fix/instant/progress-bar-bg
[instant] Progress bar background
2018-11-29 14:34:14 -08:00
fragosti
0af07bcf49 feat: move instant base config to types file 2018-11-29 14:10:12 -08:00
fragosti
a41dfa9ae0 feat: implement configurator layout 2018-11-29 13:45:40 -08:00
fragosti
09e2157639 feat: factor out ActionLink component from features 2018-11-29 13:45:29 -08:00
fragosti
6f394128d4 feat: improve styling of code demo component 2018-11-29 13:01:41 -08:00
Steve Klebanoff
bd03df8af0 feat(instant): Cleaner config-specific setup 2018-11-29 12:05:20 -08:00
fragosti
ea61c7a5db feat: have basic code syntax highlighting working 2018-11-29 11:23:16 -08:00
Amir Bandeali
a864328ecf Merge pull request #1303 from 0xProject/feature/contracts/optimizedAbiEncoder
Optimized ABI Encoder
2018-11-29 10:06:04 -08:00
Steve Klebanoff
2b87d20290 Set .env in builds, and update profile to use 0xproject 2018-11-29 09:55:30 -08:00
Fabio Berger
b68273e592 Fix import export so that it works with doc gen 2018-11-29 17:30:21 +00:00
Steve Klebanoff
5c66f9117f assetAmount -> assetBuyAmount 2018-11-29 08:19:39 -08:00
Steve Klebanoff
64e2b91482 Merge pull request #1346 from 0xProject/fix/instant/token-selector-hover
[instant] Half opacity on clickable text hover
2018-11-29 08:16:34 -08:00
Steve Klebanoff
ecc417069d Merge pull request #1347 from 0xProject/fix/instant/input-react-warning
[instant] Fix uncontrolled input warning for token selector
2018-11-29 08:15:33 -08:00
Ezekiel Aquino
b461147389 Adds buttonWrapper 2018-11-29 15:51:27 +01:00
Ezekiel Aquino
1d0d4ca147 Removes text-decoration on buttons 2018-11-29 15:46:12 +01:00
Ezekiel Aquino
2103d5c3ed Cleans up Button 2018-11-29 15:45:30 +01:00
Fred Carlsen
a21bca7cf4 Cleanup button component 2018-11-29 15:34:26 +01:00
Fred Carlsen
200da7d22c Fix type def 2018-11-29 15:26:21 +01:00
Ezekiel Aquino
a114cf5c2e Introduces WrapCentered 2018-11-29 15:17:00 +01:00
Ezekiel Aquino
4bc5881e9a Tests flush width sections 2018-11-29 15:08:24 +01:00
Ezekiel Aquino
a9d413728e Ooops fixes that 2018-11-29 14:59:20 +01:00
Ezekiel Aquino
e10d34cdfc Enables fullwidth sections. As in edge-to-edge 2018-11-29 14:58:30 +01:00
Ezekiel Aquino
96b9ffc847 Adds fullWidth prop to sections 2018-11-29 14:52:13 +01:00
Fred Carlsen
9d850cea14 Updated text 2018-11-29 14:39:07 +01:00
Ezekiel Aquino
0e7329bcec Tweaks button 2018-11-29 14:36:35 +01:00
Ezekiel Aquino
b564f090f9 Edits button.js 2018-11-29 14:34:06 +01:00
Ezekiel Aquino
ec099dd009 Adds notes to button 2018-11-29 14:33:27 +01:00
Fred Carlsen
0577a0dbc5 Remove export of interface 2018-11-29 14:26:52 +01:00
Fred Carlsen
1bba985124 Add text and illustrations for home 2018-11-29 14:18:19 +01:00
Fred Carlsen
8bcb5b00ba Add transparent button 2018-11-29 14:18:04 +01:00
Fred Carlsen
d0fa615f32 Add transparent button 2018-11-29 13:31:04 +01:00
Fred Carlsen
ef6cffd9d9 Fix linting and typing errors in footer 2018-11-29 11:48:47 +01:00
Fred Carlsen
aa4234a38c WIP landing and button changes 2018-11-29 10:55:34 +01:00
Ezekiel Aquino
9b794c00ea Quick test responsive cols 2018-11-29 09:58:08 +01:00
Ezekiel Aquino
03289293c3 Fixes interface syntax 2018-11-29 09:33:06 +01:00
Ezekiel Aquino
0736ba7159 Adds key to mapped footer elems 2018-11-29 09:23:19 +01:00
Ezekiel Aquino
44ac385e8b Make dev layout guidelines less obtrusive 2018-11-29 09:12:12 +01:00
Ezekiel Aquino
512b483b6f Refactors footer to use layout system 2018-11-29 09:06:39 +01:00
Ezekiel Aquino
5a9755da9b Fix colwidth layout calc 2018-11-29 08:53:25 +01:00
Ezekiel Aquino
be39c5ba99 Moves content wrap to layout.tsx 2018-11-29 08:52:13 +01:00
Ezekiel Aquino
0c5b645e86 Edits column width calc method 2018-11-29 08:46:49 +01:00
Greg Hysen
bcb2af2861 Ran prettier 2018-11-28 17:30:02 -08:00
Francesco Agosti
906bba7d75 Merge pull request #1352 from 0xProject/fix/instant/token-symbol-size
[instant] Notify of the used font size for re-renders of scaling input
2018-11-28 17:06:33 -08:00
Greg Hysen
b15531fe68 Changelog for ABI Encoder 2018-11-28 16:40:03 -08:00
fragosti
42e83ae643 fix: add clarification to NOTE in README 2018-11-28 16:39:27 -08:00
fragosti
b55f7aef7f feat: add URL to other parts of README 2018-11-28 16:38:21 -08:00
Greg Hysen
04503200e5 Linter / Prettier 2018-11-28 16:38:11 -08:00
Greg Hysen
2da7cadefa Explicit imports for calldata 2018-11-28 16:38:11 -08:00
Greg Hysen
b8ea322541 Explicit imports for abstract data types. 2018-11-28 16:38:11 -08:00
Greg Hysen
a172ab158e Explicit imports for EVM Data Types 2018-11-28 16:38:11 -08:00
Greg Hysen
5c13353fb2 Optimize calldata by default. 2018-11-28 16:38:11 -08:00
Greg Hysen
d6645b8a91 Explicit encoding rules in tests. 2018-11-28 16:38:11 -08:00
Greg Hysen
029b8d5950 Changed constants to an exported enum; this is 0x convention 2018-11-28 16:38:11 -08:00
Greg Hysen
14c094d050 Use SolidityTypes from ethereum-types package. 2018-11-28 16:38:11 -08:00
Greg Hysen
f196dc9e35 Use ethUti.isValidAddress in encoder 2018-11-28 16:38:11 -08:00
Greg Hysen
e7bdf4717d Fixed build error: was using this instead of class name to reference a static function that used to be an instance method. 2018-11-28 16:38:11 -08:00
Greg Hysen
f479212410 Style cleanup. Improved wording of some error messages. 2018-11-28 16:38:11 -08:00
Greg Hysen
ffb8b0a619 Changed remaining instances of implicit bool casts to explicit lodash calls 2018-11-28 16:38:11 -08:00
Greg Hysen
1f693ea121 Changed from <string>.startsWith to _.startsWith 2018-11-28 16:38:11 -08:00
Greg Hysen
3f545da9f8 Switched implicit conversions to explicit lodash calls 2018-11-28 16:38:11 -08:00
Greg Hysen
f31d4ddffd Replaced null/undefined checks with lodash 2018-11-28 16:38:11 -08:00
Greg Hysen
2e79ce26cb Tests use to.be.deep.equal instead of JSON 2018-11-28 16:38:11 -08:00
Greg Hysen
ad1b5af4e5 Ran prettier 2018-11-28 16:38:11 -08:00
Greg Hysen
feb551a02e Comments to Set datatype 2018-11-28 16:38:11 -08:00
Greg Hysen
a8d707b462 Linter on Calldata 2018-11-28 16:38:11 -08:00
Greg Hysen
3bf5a4e83f Moved some consts outside of a loop 2018-11-28 16:38:11 -08:00
Greg Hysen
50344fa24a Added inline documentation for Calldata class 2018-11-28 16:38:11 -08:00
Greg Hysen
bab1c92c70 Linter for Calldata Block Iterator 2018-11-28 16:38:11 -08:00
Greg Hysen
8f73f53c95 Moved calldata iterator logic into its own iterator clas 2018-11-28 16:38:11 -08:00
Greg Hysen
9a51af46ee Payload -> Blob, Dependent -> Pointer, Member -> Set 2018-11-28 16:38:11 -08:00
Greg Hysen
bb4d02e413 Comments for Address 2018-11-28 16:38:11 -08:00
Greg Hysen
22ce3e2e29 Comments for Array 2018-11-28 16:38:11 -08:00
Greg Hysen
acd364b71c Comments and inline documentation for dynamic bytes 2018-11-28 16:38:11 -08:00
Greg Hysen
ebaf9dd275 Removed abstract Number class. 2018-11-28 16:38:11 -08:00
Greg Hysen
d2d89adbdd Abstracted out encoding/decoding of numeric values into its own utility. Could be useful elsewhere. 2018-11-28 16:38:11 -08:00
Greg Hysen
58a2dfbc4d Final rounds on evm data types 2018-11-28 16:38:11 -08:00
Greg Hysen
173fc1dcef Moved encoder selector check into DataType 2018-11-28 16:38:11 -08:00
Greg Hysen
dd8bb6d08b Made default encoding/decoding rules global to all modules in encoder 2018-11-28 16:38:11 -08:00
Greg Hysen
dc7092e1eb Removed mapDataItemToDataType from Factory. Now its just ::create() 2018-11-28 16:38:11 -08:00
Greg Hysen
c638151b73 Some minor cleanup in ABI Encoder 2018-11-28 16:38:11 -08:00
Greg Hysen
978a58105c Prepended front to function names in Queue 2018-11-28 16:38:11 -08:00
Greg Hysen
dcc439c2e3 Ran prettier 2018-11-28 16:38:11 -08:00
Greg Hysen
a895dacd4e moved abi encoder constants into utils dir 2018-11-28 16:38:11 -08:00
Greg Hysen
5a748fb4e5 Split ABI Encoder/Decoder tests into separate files 2018-11-28 16:38:11 -08:00
Greg Hysen
fee67326ad Merge above 2018-11-28 16:38:11 -08:00
Greg Hysen
a47901370b Ran prettier 2018-11-28 16:38:11 -08:00
Greg Hysen
d4d917f350 Ran prettier 2018-11-28 16:38:11 -08:00
Greg Hysen
aed8b083b5 Split Calldata into multiple files - 1 class per file 2018-11-28 16:38:11 -08:00
Greg Hysen
e6ab6f38ba Split EVM data types and factory into separate files 2018-11-28 16:38:11 -08:00
Greg Hysen
5934e5a57b Renaming some EVM data types for clarity 2018-11-28 16:38:11 -08:00
Greg Hysen
29d63cdf97 Fixed linter errors in package.json 2018-11-28 16:38:11 -08:00
Greg Hysen
62e6b22789 Fixed linter errors on tests 2018-11-28 16:38:11 -08:00
Greg Hysen
0ed1819143 Fixed linter errors on evm_data_types 2018-11-28 16:38:11 -08:00
Greg Hysen
406b5739be Fixed linter errors on data_type.ts 2018-11-28 16:38:11 -08:00
Greg Hysen
fbbca8e283 Ran prettier on utils 2018-11-28 16:38:11 -08:00
Greg Hysen
0f7abcd59b Moved global constants to separate file 2018-11-28 16:38:11 -08:00
Greg Hysen
2164b34bf9 Ran linter on Calldata 2018-11-28 16:38:11 -08:00
Greg Hysen
b0ebc6fa14 Tests for decoding return values + Ability to encode return values 2018-11-28 16:38:11 -08:00
Greg Hysen
6daa79ec12 Arrays nested in tuples 2018-11-28 16:38:10 -08:00
Greg Hysen
acd570b2b3 Multidimensional Array tests 2018-11-28 16:38:10 -08:00
Greg Hysen
0d65c9da4a Optimizer Tests 2018-11-28 16:38:10 -08:00
Greg Hysen
67dd062a2f Cleaning up optimizer tests 2018-11-28 16:38:10 -08:00
Greg Hysen
0c0bcb44d3 All 71 tests passing. Both for function encoding and individual types. 2018-11-28 16:38:10 -08:00
Greg Hysen
b213cb3974 Temporary change for testing functions 2018-11-28 16:38:10 -08:00
Greg Hysen
5b187935dc tests for String 2018-11-28 16:38:10 -08:00
Greg Hysen
d70d07366f Tests for Static Bytes 2018-11-28 16:38:10 -08:00
Greg Hysen
9a0bd05c4c Unsigned Integers 2018-11-28 16:38:10 -08:00
Greg Hysen
666075a87e Tests for Integer (tested 256 / 32 bit integers) 2018-11-28 16:38:10 -08:00
Greg Hysen
b28f26916f Tests for Bool 2018-11-28 16:38:10 -08:00
Greg Hysen
a2ad15be0d Tests for Address 2018-11-28 16:38:10 -08:00
Greg Hysen
a630312074 Tests for Tuple 2018-11-28 16:38:10 -08:00
Greg Hysen
bc538c71fc Tests - Encode/Decode Array 2018-11-28 16:38:10 -08:00
Greg Hysen
880540f4b8 Fixed issue with decoding negative ints with width < 256 2018-11-28 16:38:10 -08:00
Greg Hysen
8a8b904a29 Use new ABI Encoder for contracts 2018-11-28 16:38:10 -08:00
Greg Hysen
ebd4dbc6c6 Exports AbiEncoder as 1 unit 2018-11-28 16:38:10 -08:00
Greg Hysen
1f9ea7ed1b Removed unnecessary imports from abi encoder tets 2018-11-28 16:38:10 -08:00
Greg Hysen
5b0d554f7b Moved Abi Encoder into utils package 2018-11-28 16:38:10 -08:00
Greg Hysen
71c050375b Restructured to use index.ts for easier imports by client 2018-11-28 16:38:10 -08:00
Greg Hysen
1f22ce6061 Removed config.ts 2018-11-28 16:38:10 -08:00
Greg Hysen
3ae434c31e Adding optimizer tests 2018-11-28 16:38:10 -08:00
Greg Hysen
063871e549 removed old log messages 2018-11-28 16:38:10 -08:00
Greg Hysen
2d2255e9af Cleaner interface for encoding/decoding. Moved encode/decode parameters into a struct. 2018-11-28 16:38:10 -08:00
Greg Hysen
93e967c3b3 Some tests 2018-11-28 16:38:10 -08:00
Greg Hysen
b71577cc52 More robust implementation for optimizer 2018-11-28 16:38:10 -08:00
Greg Hysen
27cb966991 Alias now points to dependency, not pointer 2018-11-28 16:38:10 -08:00
Greg Hysen
457cb1dc84 optimizer works for basic case 2018-11-28 16:38:10 -08:00
Greg Hysen
7c733662e2 Annotated calldata (draft). 2018-11-28 16:38:10 -08:00
Greg Hysen
52474a0b8e decoding with objects as structs works 2018-11-28 16:38:10 -08:00
Greg Hysen
2a6b358717 Decoder works for uints with width less than 256 2018-11-28 16:38:10 -08:00
Greg Hysen
c5d252ba4a decoding works for most cases 2018-11-28 16:38:10 -08:00
Greg Hysen
9b1f56c968 Decoding works for some basic typs 2018-11-28 16:38:10 -08:00
Greg Hysen
13d456fda1 removed old code 2018-11-28 16:38:10 -08:00
Greg Hysen
a9e3d489d6 Tests for nested tuples -- couldnt test because not supported by reference ABI encoder 2018-11-28 16:38:10 -08:00
Greg Hysen
707a93e9f9 Refactor passing all regression tests 2018-11-28 16:38:10 -08:00
Greg Hysen
bb7dd23738 passing 18 tests 2018-11-28 16:38:10 -08:00
Greg Hysen
59206c387e Works for types with default widths 2018-11-28 16:38:10 -08:00
Greg Hysen
20f1526c7d arrays working 2018-11-28 16:38:10 -08:00
Greg Hysen
addfe85f08 passing tests slowly but surely 2018-11-28 16:38:10 -08:00
Greg Hysen
58177060a4 works for simple case 2018-11-28 16:38:10 -08:00
Greg Hysen
3027e6bc0d resolved issue with value.greaterThan 2018-11-28 16:38:10 -08:00
Greg Hysen
41e01e9806 making progress on basic example 2018-11-28 16:38:10 -08:00
Greg Hysen
0835cf0ea2 Refactor Builds! 2018-11-28 16:38:10 -08:00
Greg Hysen
1f7fbcf52c Should build? TBD! 2018-11-28 16:38:10 -08:00
Greg Hysen
2802aed79c refactored implementation done but not tested 2018-11-28 16:38:10 -08:00
Greg Hysen
78498b7019 Initial port -- wont compile yet 2018-11-28 16:38:10 -08:00
Greg Hysen
1ca23b35ab complex type tesst 2018-11-28 16:38:10 -08:00
Greg Hysen
8b91727364 types with default widths 2018-11-28 16:38:10 -08:00
Greg Hysen
8f61f6d0f9 Arrays of tuples 2018-11-28 16:38:10 -08:00
Greg Hysen
180d1ca63a multidimensional arrays with dynamic objects 2018-11-28 16:38:10 -08:00
Greg Hysen
e59669c949 multidimensional arrays with static type 2018-11-28 16:38:10 -08:00
Greg Hysen
687e6ccdd3 Got the crazy ABI working 2018-11-28 16:38:10 -08:00
Greg Hysen
3bc45395cc static vs dynamic tuple differentatiion 2018-11-28 16:38:10 -08:00
Greg Hysen
e95aa617b6 All existing ABI tests passing 2018-11-28 16:38:10 -08:00
Greg Hysen
637ab1076a ABI Encoding for all combinations of arrays 2018-11-28 16:38:10 -08:00
Greg Hysen
a13099bde3 hack for static arrays 2018-11-28 16:38:10 -08:00
Greg Hysen
1600820dea static array abi tests 2018-11-28 16:38:10 -08:00
Greg Hysen
993c5f4b4a Another passing simple Abi 2 2018-11-28 16:38:10 -08:00
Greg Hysen
af27dd6fe4 tests for tuple 2018-11-28 16:38:10 -08:00
Greg Hysen
02f37fa2d9 Works for encoding arrays 2018-11-28 16:38:10 -08:00
Greg Hysen
2b4febe337 switched from depth-first to breadth-first param binding 2018-11-28 16:38:10 -08:00
Greg Hysen
9f35096fa9 corrected selector for Array 2018-11-28 16:38:10 -08:00
Greg Hysen
39fa26b2f3 arrays with dynamic size 2018-11-28 16:38:10 -08:00
Greg Hysen
7de7fe7823 Array of basic types works 2018-11-28 16:38:10 -08:00
Greg Hysen
5053c19599 constructor for an Array + a test -- appears to work 2018-11-28 16:38:10 -08:00
Greg Hysen
f35cf03030 implemented bytes (dynamic) 2018-11-28 16:38:10 -08:00
Greg Hysen
91a08b9fdd Static bytes tests 2018-11-28 16:38:10 -08:00
Greg Hysen
cef254fa8c tests for unsigned integer 2018-11-28 16:38:10 -08:00
Greg Hysen
e2b115a15c refactored UInt/Int 2018-11-28 16:38:10 -08:00
Greg Hysen
f6cf3de1c4 Implemented int 2018-11-28 16:38:10 -08:00
Greg Hysen
ef5ba0375a Implemented bool type 2018-11-28 16:38:10 -08:00
Greg Hysen
dfa9e435af Implemented Address 2018-11-28 16:38:10 -08:00
Greg Hysen
fc0e7b1132 cleaner bind 2018-11-28 16:38:10 -08:00
Greg Hysen
b99252baae ABI encodes some basic types correctly 2018-11-28 16:38:10 -08:00
Greg Hysen
7196046e2f Prints full ABI encoding for subset of types, with off by factor of 2 for offsets 2018-11-28 16:38:10 -08:00
Greg Hysen
96bcc7e332 Going towards first calldata impl 2018-11-28 16:38:10 -08:00
Greg Hysen
d5dbd8cd68 tests for String 2018-11-28 16:38:10 -08:00
Greg Hysen
bce62056d9 cleaner name/type for pointer 2018-11-28 16:38:10 -08:00
Greg Hysen
331cca37e2 works for assigning value to uint 2018-11-28 16:38:10 -08:00
Greg Hysen
a1cff862c9 Fixed width parsing for UINT 2018-11-28 16:38:10 -08:00
Greg Hysen
79126f3b4a renamed 2018-11-28 16:38:10 -08:00
Greg Hysen
77d6594ecb Plugging away at encoder 2018-11-28 16:38:10 -08:00
fragosti
7625935222 feat: write version info directly to exported object 2018-11-28 16:36:52 -08:00
Brandon Millman
0f01e31cc3 feat(website): implement rest of links 2018-11-28 14:59:23 -08:00
Amir Bandeali
1eb19ca1ec Merge pull request #1224 from 0xProject/feature/contracts/multiAssetProxy
Implement MultiAssetProxy
2018-11-28 14:33:07 -08:00
Steve Klebanoff
6222c952c3 Merge branch 'development' into feature/instant/quote-analytics 2018-11-28 14:25:42 -08:00
Steve Klebanoff
b9c983b4d6 Use base unit value 2018-11-28 14:24:02 -08:00
Steve Klebanoff
208ee935c8 Move fetch origin out of options 2018-11-28 14:17:26 -08:00
Steve Klebanoff
ec01893e9c fetchedVia -> fetchOrigin 2018-11-28 14:11:53 -08:00
Steve Klebanoff
f4cc14f438 QuoteFetchedVia -> QuoteFetchOrigin 2018-11-28 14:11:06 -08:00
Steve Klebanoff
e5b09ba2fd Merge pull request #1341 from 0xProject/feature/instant/install-analytics
[instant] Install Wallet analytic events
2018-11-28 14:01:07 -08:00
Steve Klebanoff
105dcd73e4 fix(instant): Progress bar background color should be 10% primary color 2018-11-28 13:58:41 -08:00
Brandon Millman
63cb312c7f feat(website): implement link directly to configure 2018-11-28 13:46:41 -08:00
fragosti
85d1dba1ef fix: notify of the used font size for re-renders of scaling input 2018-11-28 13:35:38 -08:00
Brandon Millman
e1c237a8e4 feat(website): optionally show configurator 2018-11-28 13:25:53 -08:00
Brandon Millman
9608d6fc71 feature(website): add configurator shell 2018-11-28 13:23:28 -08:00
fragosti
7479a7db58 fix: dont allow price labels to wrap 2018-11-28 13:16:09 -08:00
fragosti
6e3378d79f fix: instant height change on loading state change 2018-11-28 13:09:19 -08:00
fragosti
1375d694ac fix: instant error no longer makes instant move 2018-11-28 13:09:05 -08:00
Brandon Millman
045336042f fix(website): instant marketing page need more background color 2018-11-28 12:57:07 -08:00
Brandon Millman
0a1425d8d8 fix(website): instant marketing page shadows 2018-11-28 12:52:01 -08:00
Brandon Millman
7daf995e0d fix(website): change instant marketing page styling to non mono font except the 0 in 0x 2018-11-28 11:10:17 -08:00
fragosti
8b05db3510 feat: add deploy_live command 2018-11-28 11:07:32 -08:00
Brandon Millman
c2fd6745ee chore(website): random fixes for mobile optimization 2018-11-28 10:59:54 -08:00
Brandon Millman
a747abcb73 feat(website): add extra assets for instant marketing page 2018-11-28 10:59:54 -08:00
Brandon Millman
92a4b09b05 feat(website): fix screenshots in marketing page for small screens 2018-11-28 10:59:54 -08:00
Brandon Millman
6c76731408 feat(website): need more section for instant marketing page 2018-11-28 10:59:54 -08:00
Brandon Millman
3d88b7f289 feature(website): add links to instant marketing page 2018-11-28 10:59:54 -08:00
Brandon Millman
d3e6f78fdb fix(website): update instant page CTA font 2018-11-28 10:59:54 -08:00
Brandon Millman
16ddd21a5f feat(website): instant features section 2018-11-28 10:59:54 -08:00
Brandon Millman
6c43fa8f72 feat(website): add screenshots to instant page 2018-11-28 10:59:54 -08:00
Brandon Millman
8a4e5dfb68 feat(website): implement introducing 0x instant header 2018-11-28 10:59:54 -08:00
Brandon Millman
f83c4c51c7 feat(website): add header and footer to instant page 2018-11-28 10:59:54 -08:00
Brandon Millman
7a726e2740 feat(website): scaffolding for instant page 2018-11-28 10:59:54 -08:00
fragosti
5415d1589e feat: write version info to window 2018-11-28 10:58:41 -08:00
Steve Klebanoff
3c000e70e3 Linting 2018-11-28 10:48:38 -08:00
Steve Klebanoff
06b2f12b10 fix(instant): Fix uncontrolled input warning for token selector 2018-11-28 10:38:24 -08:00
Steve Klebanoff
1b23c430fc fix(instant): Half opacity instead of darkening on hover for clickable text 2018-11-28 10:25:04 -08:00
Steve Klebanoff
ca894935f2 Take out asset name and data as we can use the selected event properties 2018-11-28 10:07:11 -08:00
Fred Carlsen
23bfad6c40 Add index to list 2018-11-28 18:25:49 +01:00
Fred Carlsen
850c441c70 Start on text component 2018-11-28 18:25:40 +01:00
Fabio B
53f8e1b3b4 Add troubleshooting section to dev-utils section 2018-11-28 16:56:48 +00:00
Fred Carlsen
dc434bdff0 Left align logo 2018-11-28 17:52:14 +01:00
Fred Carlsen
0afd490aec Linting errors 2018-11-28 17:51:34 +01:00
Fred Carlsen
c8520c45cb Fix linting errors 2018-11-28 17:49:48 +01:00
Fred Carlsen
ec6b47ded0 Add footer 2018-11-28 17:46:43 +01:00
Ezekiel Aquino
36d94b894a Test with max widths 2018-11-28 17:43:27 +01:00
Ezekiel Aquino
a18a11da92 Adds section margins 2018-11-28 17:35:13 +01:00
Ezekiel Aquino
4bad973877 Samples full width wraps 2018-11-28 17:32:27 +01:00
Ezekiel Aquino
38e12c2405 [WIP] Proposed layout modules 2018-11-28 17:29:12 +01:00
Fred Carlsen
f9a7cc94e1 Fix key in loop 2018-11-28 17:11:17 +01:00
Fred Carlsen
3382077768 Add bgColor and removePadding props to container 2018-11-28 17:08:59 +01:00
Fred Carlsen
b9cbc87882 Change bg color 2018-11-28 17:08:41 +01:00
Fred Carlsen
d05d5ac10d Fix linting errors 2018-11-28 16:35:59 +01:00
Fred Carlsen
a1fe30e210 Tweak links in header 2018-11-28 16:33:10 +01:00
Fred Carlsen
56ca19dc9b Add ehader 2018-11-28 16:26:56 +01:00
Fred Carlsen
969674a5ce Add container and button 2018-11-28 16:26:42 +01:00
Fred Carlsen
d2a418b368 Fix font references 2018-11-28 16:26:05 +01:00
Fred Carlsen
081859f334 Ignore osx metadata files 2018-11-28 15:21:11 +01:00
Fred Carlsen
1cc06dd9e6 Fix type error in Text component 2018-11-28 15:19:00 +01:00
Fred Carlsen
d642082058 Add styled-component types 2018-11-28 15:19:00 +01:00
Ezekiel Aquino
d3aebd0b79 Renames font-files, adds font-face declaration in globalStyles 2018-11-28 15:02:46 +01:00
Ezekiel Aquino
7b90f095ff Adds very basic SiteWrap and global styling 2018-11-28 14:45:26 +01:00
Ezekiel Aquino
df6c1ae059 Updates styled-components, react typings 2018-11-28 14:45:26 +01:00
Fred Carlsen
5578c70cd6 WIP button 2018-11-28 14:04:38 +01:00
Ezekiel Aquino
3e2c93f5a0 Adds initial /next route to index.tsx 2018-11-28 13:42:02 +01:00
Fred Carlsen
471a4e981a Add @next folder structure 2018-11-28 13:33:46 +01:00
Fred Carlsen
6b4112527f Add svg loader 2018-11-28 13:17:48 +01:00
Fred Carlsen
3a9f8a7296 Add Formular font and normalize 2018-11-28 13:17:00 +01:00
Fred Carlsen
bbb3e5afcc Add brand colors 2018-11-28 13:13:27 +01:00
Jacob Evans
4861e48059 Publish
- 0x.js@2.0.6
 - @0x/abi-gen-templates@1.0.1
 - @0x/abi-gen-wrappers@2.0.0
 - @0x/asset-buyer@3.0.2
 - @0x/base-contract@3.0.8
 - @0x/connect@3.0.8
 - @0x/contract-addresses@2.0.0
 - @0x/contract-artifacts@1.1.2
 - @0x/contract-wrappers@4.1.1
 - contracts@2.1.56
 - @0x/dev-tools-pages@0.0.8
 - @0x/dev-utils@1.0.19
 - @0x/fill-scenarios@1.0.14
 - @0x/instant@1.0.2
 - @0x/metacoin@0.0.30
 - @0x/migrations@2.2.0
 - @0x/order-utils@3.0.4
 - @0x/order-watcher@2.2.6
 - @0x/react-docs@1.0.20
 - @0x/react-shared@1.0.23
 - @0x/sol-compiler@1.1.14
 - @0x/sol-cov@2.1.14
 - @0x/sol-doc@1.0.9
 - @0x/subproviders@2.1.6
 - @0x/testnet-faucets@1.0.58
 - @0x/web3-wrapper@3.1.6
 - @0x/website@0.0.61
2018-11-28 21:49:55 +11:00
Jacob Evans
c0b9214138 Updated CHANGELOGS 2018-11-28 21:49:26 +11:00
Jacob Evans
9266df43a4 chore: Add Ganache to NetworkId enum 2018-11-28 20:08:34 +11:00
Jacob Evans
dac0bee95c Merge pull request #1318 from 0xProject/bug/testnets/rinkeby-exchange
[testnet][contract-addresses] Rinkeby and Ganache
2018-11-28 16:06:44 +11:00
Amir Bandeali
708f4e9bb8 Update CHANGELOG 2018-11-27 16:09:51 -08:00
Amir Bandeali
0b9e9eb0e4 Don't load assetProxy if currentProxyid is equal to the last seen proxyid 2018-11-27 16:09:51 -08:00
Amir Bandeali
743c43f768 Add Exchange tests with MultiAsset orders 2018-11-27 16:09:51 -08:00
Amir Bandeali
7b51eddc03 Fix linting errors 2018-11-27 16:09:51 -08:00
Amir Bandeali
6f92f0a7b5 Add more tests for MAP 2018-11-27 16:09:51 -08:00
Amir Bandeali
b773d5e592 feat: Add and revert reasons 2018-11-27 16:09:51 -08:00
Amir Bandeali
a0bc97b589 Add initial MultiAssetProxy tests 2018-11-27 16:09:51 -08:00
Amir Bandeali
d146e15ff3 Fix async loops in erc721Wrapper 2018-11-27 16:09:51 -08:00
Amir Bandeali
037e63ab49 Factor offsets into calldata locations 2018-11-27 16:09:51 -08:00
Amir Bandeali
8b80d28029 feat: Implement MultiAssetProxy 2018-11-27 16:09:51 -08:00
Steve Klebanoff
d3739488ae Tracking quote errors 2018-11-27 15:28:38 -08:00
Jacob Evans
494adedeef chore: Update CHANGELOG 2018-11-28 10:17:15 +11:00
Jacob Evans
f0ed0c6a35 chore: Redeploy Rinkeby using testnet Exchange contract. Add Ganache contract addresses back 2018-11-28 10:17:09 +11:00
Steve Klebanoff
c5d6b925e4 feat(instant): Quote fetch tracking 2018-11-27 15:13:32 -08:00
Steve Klebanoff
856f4b473b feat(instant): Close and View Transaction analytics events 2018-11-27 14:14:30 -08:00
Steve Klebanoff
b95d73d176 Merge branch 'development' into feature/instant/install-analytics 2018-11-27 13:34:19 -08:00
Steve Klebanoff
462a5face9 feat(instant): Install Wallet analytics 2018-11-27 13:33:34 -08:00
Steve Klebanoff
47a87e57f1 Merge pull request #1335 from 0xProject/feature/instant/dropdown-analytics
[instant] Add analytics events for payment dropdown
2018-11-27 13:31:02 -08:00
F. Eugene Aumson
768c28f328 fix(order_utils.py): unpin pylint version (#1337)
The version was pinned in order to work around a bug in pylint.  That
bug has been fixed and released.
2018-11-27 14:49:28 -05:00
Steve Klebanoff
b50187f59c Track install wallet clicked 2018-11-27 11:25:51 -08:00
Steve Klebanoff
96a46bcb4b Merge branch 'development' into feature/instant/dropdown-analytics 2018-11-27 11:10:20 -08:00
Steve Klebanoff
4653e4c011 Merge pull request #1336 from 0xProject/fix/instant/clipboard
[instant] Fix copy to clipboard
2018-11-27 10:48:26 -08:00
Brandon Millman
372a242ea2 Merge pull request #1327 from 0xProject/feature/instant/events-buy
[instant] Add buy events to instant
2018-11-27 10:46:10 -08:00
Steve Klebanoff
fb1893626f Merge pull request #1330 from 0xProject/feature/instant/stable-css-classes
[instant] Add stable CSS classes
2018-11-27 10:42:05 -08:00
Steve Klebanoff
5fd837cc4f Merge branch 'development' into feature/instant/dropdown-analytics 2018-11-27 10:38:26 -08:00
Steve Klebanoff
435e62a94d fix(instant): Fix copy to clipboard 2018-11-27 10:32:54 -08:00
Brandon Millman
598db72523 Merge branch 'development' into feature/instant/events-buy
* development:
  Make explicit functions
  Linting
  Fix props
  Set selected asset to none
  Track numberAvailableAssets, selectedAssetName, selectedAssetData event properties
  Fix dupe merge issue
  feat(instant): Event tracking for token selector
  Token selector searched
  Token Selector open, closed, chose
2018-11-27 10:29:45 -08:00
Steve Klebanoff
4ebc561986 Merge branch 'development' into feature/instant/stable-css-classes 2018-11-27 10:24:12 -08:00
Steve Klebanoff
d23fd23e91 Merge pull request #1329 from 0xProject/feature/instant/token-picker-events
[instant] Token Selector events
2018-11-27 10:23:28 -08:00
Brandon Millman
6e2523625f feat(instant): change event properties to ms times instead of unix timestamps 2018-11-27 10:17:59 -08:00
Steve Klebanoff
23274f9b48 Merge branch 'development' into feature/instant/token-picker-events 2018-11-27 10:10:22 -08:00
Brandon Millman
7efa71eaf6 Merge branch 'development' into feature/instant/events-buy
* development:
  fix(instant): make package private
  Add stale bot config
2018-11-27 10:06:39 -08:00
Steve Klebanoff
9c27feeff6 Make explicit functions 2018-11-27 10:00:21 -08:00
Steve Klebanoff
be787a0fd1 feat(instant): Add analytics events for payment dropdown 2018-11-27 09:50:56 -08:00
Steve Klebanoff
ee5b6ad77f Linting 2018-11-27 09:16:26 -08:00
Steve Klebanoff
e08fb72cf1 Use constants 2018-11-27 09:01:49 -08:00
Fred Carlsen
9b0020a884 Merge remote-tracking branch 'upstream/development' into website 2018-11-27 16:19:36 +01:00
Fred Carlsen
ec12e46e3f Add fix for assertion error to devserver config 2018-11-27 15:40:37 +01:00
Leonid Logvinov
fdc4a4e5fa Merge pull request #1325 from 0xProject/feature/stale
Add stale bot config
2018-11-27 13:21:43 +01:00
Brandon Millman
ef2c5159dd fix(instant): make package private 2018-11-27 01:20:09 -08:00
Brandon Millman
f0f991245c Merge branch 'development' into feature/instant/events-buy
* development:
  fix: add --exclude-missing flag to yarn clean command
  Update CHANGELOG
  fix: remove getApproved check from OrderValidator since approval is removed after a single transfer
  Add comment
  Force scaling input component to rerender when a different asset is chosen
  Send in explicit props
  feat(instant): Add more event properties to heap
  Move out generating of event properties, and send in orderSource
  autofocus -> hasAutoFocus
  fix(instant): Right align amounts
  fix(instant): Autofocus text amount input
2018-11-26 23:11:05 -08:00
Brandon Millman
d3b0162dc9 feat(instant): add expectedEndTimeUnix and actualEndTimeUnix to buy events 2018-11-26 23:08:20 -08:00
Steve Klebanoff
f3d08c13eb Add stable CSS classes 2018-11-26 17:13:35 -08:00
Amir Bandeali
10cc46779e Merge pull request #1149 from 0xProject/fix/contracts/orderValidator
fix: remove getApproved check from OrderValidator
2018-11-26 17:06:10 -08:00
Steve Klebanoff
80a53aedf2 Fix props 2018-11-26 16:53:50 -08:00
Steve Klebanoff
1b96867df8 Merge pull request #1294 from 0xProject/feature/header-tweaks
[instant] Header tweaks
2018-11-26 16:01:04 -08:00
Steve Klebanoff
0192127e5d Set selected asset to none 2018-11-26 15:53:39 -08:00
Steve Klebanoff
7610130f73 Track numberAvailableAssets, selectedAssetName, selectedAssetData event properties 2018-11-26 15:51:40 -08:00
Amir Bandeali
218c0d9f51 Merge pull request #1326 from 0xProject/fix/yarnClean
fix: add --exclude-missing flag to yarn clean command
2018-11-26 15:29:43 -08:00
Steve Klebanoff
d5898a3a05 Fix dupe merge issue 2018-11-26 15:12:51 -08:00
Steve Klebanoff
b055055253 Merge branch 'development' into feature/instant/token-picker-events 2018-11-26 15:11:16 -08:00
Steve Klebanoff
6e3d70af56 Merge pull request #1299 from 0xProject/feature/instant/open-close-events
[instant] Add more event properties
2018-11-26 15:10:50 -08:00
Steve Klebanoff
ae570dba05 feat(instant): Event tracking for token selector 2018-11-26 15:04:02 -08:00
Brandon Millman
2795849dd3 feat(instant): add buyQuote properties to buy events 2018-11-26 14:49:50 -08:00
Brandon Millman
fad48b8b6c feat(instant): add txHash to relevant buy events 2018-11-26 14:48:07 -08:00
Brandon Millman
685d83d6d0 feat(instant): implement buy events without associated properties 2018-11-26 14:48:07 -08:00
fragosti
35d8525f55 feat: update README to reflect lack of commonjs module 2018-11-26 17:37:21 -05:00
fragosti
faf80f8595 feat: make package private 2018-11-26 17:37:03 -05:00
Steve Klebanoff
9206f2d288 Token selector searched 2018-11-26 13:27:40 -08:00
Steve Klebanoff
2fec7613c4 Token Selector open, closed, chose 2018-11-26 13:20:16 -08:00
Amir Bandeali
2f026cd1b6 fix: add --exclude-missing flag to yarn clean command 2018-11-26 13:11:30 -08:00
Steve Klebanoff
6eec84d21b Merge branch 'development' into feature/instant/open-close-events 2018-11-26 13:07:02 -08:00
Steve Klebanoff
5f6a5e28e7 Merge branch 'development' into feature/header-tweaks 2018-11-26 13:06:36 -08:00
fragosti
825911ed89 feat: Add Xianny to about page 2018-11-26 13:15:32 -05:00
Leonid Logvinov
a72d418ddb Add stale bot config 2018-11-26 19:07:55 +01:00
Amir Bandeali
cf5fd8ff42 Update CHANGELOG 2018-11-26 09:47:55 -08:00
Amir Bandeali
994c6032bb fix: remove getApproved check from OrderValidator since approval is removed after a single transfer 2018-11-26 09:45:38 -08:00
Steve Klebanoff
271adcdb7e Merge branch 'development' into feature/instant/rollbar-env 2018-11-26 09:18:48 -08:00
Steve Klebanoff
717a3bce8c EMBEDDED_DOMAINS -> HOST_DOMAINS 2018-11-26 09:12:51 -08:00
Steve Klebanoff
1494a70bad Merge branch 'development' into feature/instant/open-close-events 2018-11-26 09:02:16 -08:00
Fabio B
6d565f4bff Merge pull request #1324 from 0xProject/addCommandLineInterfaceToMigrations
Add CLI interface to @0x/migrations
2018-11-26 16:14:16 +00:00
Fabio Berger
c6592148a7 Rename node-endpoint to rpc-url for clarity 2018-11-26 15:57:49 +00:00
Fabio Berger
6e39f11db1 Merge branch 'development' into addCommandLineInterfaceToMigrations
* development:
  fix(order_utils.py): work aroud pylint bug (#1322)
2018-11-26 15:18:41 +00:00
F. Eugene Aumson
ee86cd1dcc fix(order_utils.py): work aroud pylint bug (#1322) 2018-11-26 10:18:02 -05:00
Fabio Berger
420a677828 merge development 2018-11-26 15:08:57 +00:00
Fabio Berger
9da43878b1 Add CHANGELOG entry to migrations 2018-11-26 15:04:27 +00:00
Fabio Berger
527f074e59 Fix typo 2018-11-26 15:03:58 +00:00
Fabio Berger
eefd9d9dd2 Add command-line interface to @0x/migrations 2018-11-26 14:59:27 +00:00
Leonid Logvinov
2648f5ba65 Merge pull request #1323 from 0xProject/feature/contributing-autolabeler
Remove the instruction to prefix PRs with package name from PULL_REQUEST_TEMPLATE.md
2018-11-26 15:54:50 +01:00
Leonid Logvinov
1b45aa5974 Remove the instruction to prefix PRs with package name from a/PULL_REQUEST_TEMPLATE.md 2018-11-26 15:52:04 +01:00
Leonid Logvinov
dcf19e5226 Merge pull request #1320 from 0xProject/feature/autolabeler
Add autolabeler config
2018-11-26 15:42:48 +01:00
Leonid Logvinov
c5c852f54f Add autolabeler config 2018-11-26 15:38:18 +01:00
Leonid Logvinov
7b15217694 Merge pull request #1305 from 0xProject/feature/contract-templates
[@0x/contract-templates] Make contract-templates an npm package
2018-11-26 14:12:13 +01:00
Leonid Logvinov
8caded1d1d Merge pull request #1319 from 0xProject/revert-1312-feature/build-fix-instant
Revert "[@0x/instant] Fix CI build broken by instant installation tests"
2018-11-26 14:11:04 +01:00
Leonid Logvinov
ebc3116909 Revert "[@0x/instant] Fix CI build broken by instant installation tests" 2018-11-26 14:09:24 +01:00
Leonid Logvinov
387d7199d1 Merge pull request #1312 from 0xProject/feature/build-fix-instant
[@0x/instant] Fix CI build broken by instant installation tests
2018-11-26 14:00:25 +01:00
Jacob Evans
dc965da64e Merge pull request #1309 from 0xProject/bug/contract-artifacts/testnet-exchange
[contract-artifacts] Use Testnet Exchange artifact
2018-11-26 21:23:19 +11:00
Jacob Evans
1d83d99d87 Merge pull request #1308 from 0xProject/bug/web3-wrapper/unmarshall-parity-receipt
[web3-wrapper] Only unmarshall receipt if blockNumber present
2018-11-26 21:21:36 +11:00
Jacob Evans
09a683557b chore: Update CHANGELOGS use mainnet ZRX amount in Forwarder. 2018-11-26 09:57:43 +11:00
Jacob Evans
99e92a346b chore: Fund forwarder in migrations 2018-11-26 09:37:31 +11:00
Leonid Logvinov
9ddd45e2c6 Rename contract-templates to abi-gen-templates 2018-11-23 15:22:16 +01:00
Leonid Logvinov
0c0a1db114 Fix the lerna paremeter name from cdVersions to cd-versions 2018-11-23 14:51:21 +01:00
Leonid Logvinov
b1474973cd Copy assets in referenced in instant on commonjs build 2018-11-23 14:48:49 +01:00
Jacob Evans
f0f6b26c3b bug: Use Testnet Exchange over mainnet 2018-11-23 18:17:51 +11:00
Jacob Evans
03b3b80a65 bug: Only unmarshall receipt if blockNumber present.
https://github.com/paritytech/parity-ethereum/issues/1180
Parity can return a pending transaction receipt with a number of null values
2018-11-23 15:31:00 +11:00
Leonid Logvinov
06cc66005c Make contract-templates an npm package 2018-11-22 14:48:15 +01:00
Steve Klebanoff
b0792a85a4 Add comment 2018-11-21 14:33:12 -08:00
Francesco Agosti
a5359df002 Merge pull request #1281 from 0xProject/feature/instant/push-to-history
[instant] Close/open Instant on correct history changes. Provide option to disable.
2018-11-21 17:24:48 -05:00
Steve Klebanoff
10c9d0b723 Force scaling input component to rerender when a different asset is chosen 2018-11-21 14:24:13 -08:00
Brandon Millman
5c81f07d46 Merge pull request #1300 from 0xProject/feature/instant/events-account
[instant] Implement account related events
2018-11-21 14:20:01 -08:00
Steve Klebanoff
0adc8f5053 Merge branch 'development' into feature/header-tweaks 2018-11-21 14:14:27 -08:00
Brandon Millman
804de89796 chore(instant): revert usage of event properties 2018-11-21 13:52:55 -08:00
Fabio Berger
83a043e639 Merge branch 'development'
* development: (81 commits)
  Publish
  Updated CHANGELOGS
  print out error message and stack
  immediately return the patch incremented version if no changelog entries exist
  Put python package above TS/JS packages
  Reduce title size
  reduce text side in README
  Improve top-level README
  Fix prettier
  remove unused flag
  Add CHANGELOG entry
  Fix additional comments
  Improve comments
  Add migrations, contract-addresses and contract-artifacts to Developers home
  Create migrations doc reference page
  Add additional CHANGELOG to types package
  Add CHANGELOG entry
  Fix prettier
  Fix `SimpleContractArtifact` type
  Update abi-gen-wrappers
  ...
2018-11-21 21:19:31 +00:00
Steve Klebanoff
c6ae7b8d3f Host whitelist so we don't get errors from embedded site 2018-11-21 13:19:26 -08:00
Brandon Millman
6604e2db20 chore(instant): refactor usage of event properties in heap 2018-11-21 13:16:34 -08:00
Fabio Berger
f46a49fd13 Publish
- 0x.js@2.0.5
 - @0x/abi-gen@1.0.17
 - @0x/abi-gen-wrappers@1.1.0
 - @0x/assert@1.0.18
 - @0x/asset-buyer@3.0.1
 - @0x/base-contract@3.0.7
 - @0x/connect@3.0.7
 - @0x/contract-addresses@1.2.0
 - @0x/contract-wrappers@4.1.0
 - contracts@2.1.55
 - @0x/dev-tools-pages@0.0.7
 - @0x/dev-utils@1.0.18
 - @0x/fill-scenarios@1.0.13
 - @0x/instant@1.0.1
 - @0x/json-schemas@2.1.2
 - @0x/metacoin@0.0.29
 - @0x/migrations@2.1.0
 - @0x/monorepo-scripts@1.0.14
 - @0x/order-utils@3.0.3
 - @0x/order-watcher@2.2.5
 - @0x/react-docs@1.0.19
 - @0x/react-shared@1.0.22
 - @0x/sol-compiler@1.1.13
 - @0x/sol-cov@2.1.13
 - @0x/sol-doc@1.0.8
 - @0x/sol-resolver@1.0.17
 - @0x/sra-spec@1.0.11
 - @0x/subproviders@2.1.5
 - @0x/testnet-faucets@1.0.57
 - @0x/types@1.3.0
 - @0x/utils@2.0.6
 - @0x/web3-wrapper@3.1.5
 - @0x/website@0.0.60
2018-11-21 21:09:47 +00:00
Fabio Berger
707af1ec58 Updated CHANGELOGS 2018-11-21 21:09:37 +00:00
Brandon Millman
31d1b4ba67 chore(instant): refactor account tracking logic in middleware to be more readable 2018-11-21 12:30:52 -08:00
Steve Klebanoff
d750225554 Send in explicit props 2018-11-21 11:10:17 -08:00
Steve Klebanoff
93672c01af Linting 2018-11-21 10:54:10 -08:00
Steve Klebanoff
921d9d7ed5 Merge branch 'development' into feature/instant/rollbar-env 2018-11-21 10:47:31 -08:00
Steve Klebanoff
b2e1be5cfe Better env var names for source map plugin 2018-11-21 10:44:50 -08:00
Steve Klebanoff
95a80a0e75 Shorter validateRollbarPresence logic 2018-11-21 10:35:53 -08:00
Steve Klebanoff
e2a16f3f33 Use ROLLBAR_ENABLED constant, and change ROLLBAR_ENVIRONMENT to INSTANT_ENVIRONMENT 2018-11-21 10:25:10 -08:00
fragosti
ed91c6c874 fix: multiple render and closes edge case for onpopstate render 2018-11-21 12:44:28 -05:00
Steve Klebanoff
70c9908249 Report when cant update balance 2018-11-21 09:43:01 -08:00
Steve Klebanoff
ffa2f4554b Takeout redundant check, and make function name more clear 2018-11-21 09:41:44 -08:00
Steve Klebanoff
22a3124662 Move rollbar setup into function, move setting up into provider 2018-11-21 09:35:24 -08:00
Fabio Berger
68c15de890 print out error message and stack 2018-11-21 17:27:40 +00:00
Fabio Berger
71d15a68c1 immediately return the patch incremented version if no changelog entries exist 2018-11-21 17:27:27 +00:00
Steve Klebanoff
35b5051148 Always report unexpected errors. Move error message generation into helper function, and add tests 2018-11-21 09:23:19 -08:00
Fabio B
3273117888 Merge pull request #1301 from 0xProject/feature/migrationsDocRef
Add Migrations Doc Ref
2018-11-21 17:06:32 +00:00
Fabio Berger
8ea2eb9102 Put python package above TS/JS packages 2018-11-21 17:05:11 +00:00
fragosti
b494a4a4db chore: clean up index.umd.ts a bit 2018-11-21 11:55:32 -05:00
fragosti
e0beb7fb38 feat: add more to instant dev env 2018-11-21 11:42:07 -05:00
fragosti
fc123871ad Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/push-to-history 2018-11-21 10:43:36 -05:00
Fabio Berger
f27fef0295 Reduce title size 2018-11-21 15:17:04 +00:00
Fabio Berger
36974a9557 reduce text side in README 2018-11-21 15:16:26 +00:00
Fabio Berger
584dc6217d Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Add additional CHANGELOG to types package
  Add CHANGELOG entry
  Fix prettier
  Fix `SimpleContractArtifact` type
  Update abi-gen-wrappers
  Add @0x/types to dependencies of `@0x/abi-gen-wrappers`
  Allow a `SimpleContractArtifact` to be passed into `deployFrom0xArtifactAsync`
  Update issue template
  fix(instant): Use new valid svg image for instant
  isDisabled -> isInputDisabled
  Allow user to select other token on success
  fix: do not use document on import
  fix(instant): Don't allow changing of assets when order processing
  fix: npmignore file ignoring index.d.ts
  fix: specify new location of index.js in package.json
  feat: fix instant build and add to project references
  chore: make instant public
2018-11-21 15:14:26 +00:00
Fabio Berger
edf07d9b5b Improve top-level README 2018-11-21 15:13:58 +00:00
Francesco Agosti
f66b695a47 Merge pull request #1283 from 0xProject/feature/instant/make-instant-public-and-fix-publishing
[instant] Make package public and fix publishing
2018-11-21 06:38:21 -08:00
Fabio Berger
61b3305af3 Fix prettier 2018-11-21 13:26:58 +00:00
August Skare
21d9783ef8 fix puppeteer options for react-snap 2018-11-21 14:09:47 +01:00
Fabio Berger
e2b3c98d25 remove unused flag 2018-11-21 11:56:45 +00:00
Fabio Berger
39429dde68 Add CHANGELOG entry 2018-11-21 11:54:24 +00:00
Fabio Berger
baf69a60eb Fix additional comments 2018-11-21 11:53:50 +00:00
Fabio Berger
a90be44c9f Improve comments 2018-11-21 11:48:07 +00:00
Fabio Berger
fb7ac81945 Add migrations, contract-addresses and contract-artifacts to Developers home 2018-11-21 11:47:45 +00:00
Fabio Berger
db26ca977f Create migrations doc reference page 2018-11-21 11:47:24 +00:00
August Skare
89ce87f9f1 fix casing for entries in webpack 2018-11-21 12:36:58 +01:00
Fabio B
a8803431b3 Merge pull request #1298 from 0xProject/fix/artifact-type-error
Fix Artifact Interface Type Issue
2018-11-21 11:16:26 +00:00
Fabio Berger
2821bac3a3 Add additional CHANGELOG to types package 2018-11-21 10:44:20 +00:00
Fabio Berger
716168132a Add CHANGELOG entry 2018-11-21 10:39:10 +00:00
August Skare
592e1a3e6f Merge branch 'development' into dev-tools-pages 2018-11-21 08:19:29 +01:00
Brandon Millman
351e0e6f5f feat(instant): implement account related events 2018-11-20 22:38:49 -08:00
Fabio Berger
0244d04a55 Fix prettier 2018-11-21 00:11:25 +00:00
Fabio Berger
895281989c Fix SimpleContractArtifact type 2018-11-20 23:43:05 +00:00
Fabio Berger
21f39079c8 Update abi-gen-wrappers 2018-11-20 23:42:35 +00:00
Fabio Berger
c2ebcfb023 Add @0x/types to dependencies of @0x/abi-gen-wrappers 2018-11-20 23:15:53 +00:00
Steve Klebanoff
15f05733be Merge pull request #1290 from 0xProject/fix/instant/disable-token-picker
[instant] Don't allow changing of assets when order in progress
2018-11-20 15:08:27 -08:00
Steve Klebanoff
7741edbbcc Merge pull request #1296 from 0xProject/fix/instant/svg-warning
[instant] Replace "Powered By 0x" svg
2018-11-20 15:08:07 -08:00
Steve Klebanoff
1593b94aac feat(instant): Add more event properties to heap 2018-11-20 15:07:37 -08:00
Fabio Berger
4b64d8c3aa Allow a SimpleContractArtifact to be passed into deployFrom0xArtifactAsync 2018-11-20 23:06:46 +00:00
Steve Klebanoff
6124d80c89 Move out generating of event properties, and send in orderSource 2018-11-20 14:59:23 -08:00
Fabio Berger
48aec9ef47 Update issue template 2018-11-20 22:38:36 +00:00
Steve Klebanoff
1a7b167f63 fix(instant): Use new valid svg image for instant 2018-11-20 14:23:55 -08:00
Steve Klebanoff
b7eb2e887d isDisabled -> isInputDisabled 2018-11-20 13:59:09 -08:00
Steve Klebanoff
094aabfcee Linting 2018-11-20 13:28:28 -08:00
Steve Klebanoff
eca63b1a58 Merge branch 'development' into feature/header-tweaks 2018-11-20 13:26:00 -08:00
Steve Klebanoff
f5db4be521 Ensure we publish Instant with rollbar settings 2018-11-20 13:19:16 -08:00
Steve Klebanoff
d79c754a5b TODO note 2018-11-20 13:18:53 -08:00
Steve Klebanoff
934570d12f Explicit error reporting 2018-11-20 13:18:47 -08:00
Steve Klebanoff
748e3c0c53 Force source maps on staging and dogfood 2018-11-20 13:14:20 -08:00
Steve Klebanoff
728617fed2 feat(instant): Report errors to rollbar 2018-11-20 12:06:10 -08:00
Steve Klebanoff
05d45e7146 Use sourcemap loader 2018-11-20 12:05:48 -08:00
Steve Klebanoff
d2dd5f93d2 Introduce rollbar plugin 2018-11-20 11:39:31 -08:00
Steve Klebanoff
ac1ffe53df Send in rollbar environment 2018-11-20 11:21:16 -08:00
Steve Klebanoff
2bda6dd719 autofocus -> hasAutoFocus 2018-11-20 10:36:23 -08:00
Steve Klebanoff
cd4600b081 fix(instant): Right align amounts 2018-11-20 10:20:16 -08:00
Steve Klebanoff
83f4fa92a5 fix(instant): Autofocus text amount input 2018-11-20 10:19:59 -08:00
Steve Klebanoff
7ad5dbc59d Allow user to select other token on success 2018-11-20 09:51:14 -08:00
Steve Klebanoff
ba41fc9275 Merge pull request #1272 from 0xProject/feature/instant/heap
[instant] Base heap integration
2018-11-20 09:23:34 -08:00
Steve Klebanoff
36e888c3a5 Merge pull request #1287 from 0xProject/feature/instant/add-powered-by
[instant] Add "Powered By 0x"
2018-11-20 09:05:28 -08:00
Leonid Logvinov
6939182348 Merge pull request #1292 from 0xProject/feature/nonce-tx-opts
Add `nonce` to `TxOpts`
2018-11-20 16:54:36 +01:00
Fabio B
7a38a196ad Update packages/contract-wrappers/src/types.ts
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-11-20 16:42:49 +01:00
Fabio B
0c91bf1415 Update packages/contract-wrappers/CHANGELOG.json
Co-Authored-By: LogvinovLeon <logvinov.leon@gmail.com>
2018-11-20 16:32:34 +01:00
Leonid Logvinov
e1bc3f3f2d Add nonce to TxOpts 2018-11-20 15:59:33 +01:00
August Skare
99176c2d54 comment for commented BundleAnalyzerPlugin webpack plugin 2018-11-20 15:41:39 +01:00
Leonid Logvinov
e5cfc94cd2 Merge pull request #1291 from 0xProject/feature/web3-unmarshalling
[@0x/web3-wrapper] Properly unmarshall `TransactionReceiptRPC` to `TransactionReceipt`
2018-11-20 15:37:48 +01:00
August Skare
ad0083dfa0 fix type for svg icon in footer 2018-11-20 15:30:49 +01:00
August Skare
6919409c2b typedef for context data 2018-11-20 15:28:18 +01:00
August Skare
f360b2edd6 fix import order 2018-11-20 15:27:56 +01:00
Leonid Logvinov
22cfdd9f0b Properly unmarshall TransactionReceiptRPC to TransactionReceipt 2018-11-20 15:22:06 +01:00
August Skare
339ec3e8eb uniq export names for animations 2018-11-20 15:18:09 +01:00
August Skare
b0c22a222e use lodash.map insted of array.map 2018-11-20 15:15:17 +01:00
August Skare
ea18050589 use lodash isUndefined function 2018-11-20 15:10:59 +01:00
Steve Klebanoff
0ba34f587c Import via TS 2018-11-19 17:12:32 -08:00
Steve Klebanoff
e86982bd41 Add ability to import SVGs in TS 2018-11-19 17:12:21 -08:00
fragosti
6de499459c fix: do not use document on import 2018-11-19 17:10:47 -08:00
Steve Klebanoff
3169b72406 fix(instant): Don't allow changing of assets when order processing 2018-11-19 17:04:15 -08:00
Steve Klebanoff
db6b2cbb05 Fix linting 2018-11-19 16:38:56 -08:00
Steve Klebanoff
a1b7f0ad83 Use anchor instead of Text 2018-11-19 16:36:51 -08:00
fragosti
b62fbd0b13 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/push-to-history 2018-11-19 16:30:11 -08:00
Steve Klebanoff
578a46c57f feat(instant): Add powered by 0x image 2018-11-19 16:28:40 -08:00
fragosti
9ab55fd07d fix: npmignore file ignoring index.d.ts 2018-11-19 16:22:05 -08:00
Steve Klebanoff
497385818b Check for instant heap production credentials in pre-publish step 2018-11-19 15:38:09 -08:00
Steve Klebanoff
c30ae762bf Merge branch 'development' into feature/instant/heap 2018-11-19 14:48:36 -08:00
Brandon Millman
953f8c119b Merge pull request #1276 from 0xProject/test/instant/bundle-size
[asset-buyer][instant] downgrade lodash to be consistent with the rest of 0x packages
2018-11-19 12:44:06 -08:00
Brandon Millman
6119bd3115 Merge pull request #1271 from 0xProject/feature/instant/icons
[instant] Add icons to token selector
2018-11-19 12:41:50 -08:00
Steve Klebanoff
1880c7c27d Linting: rename variable 2018-11-19 12:14:27 -08:00
Steve Klebanoff
8772d91699 Get heap analytics id from ENV variable 2018-11-19 12:02:31 -08:00
Brandon Millman
9b725a645d feat(instant): support custom iconUrls 2018-11-19 10:12:40 -08:00
Steve Klebanoff
2bfd03e64f Change disabled analytics name, add assertion, and always set 2018-11-19 09:54:59 -08:00
Steve Klebanoff
e23f90b82c No need to explicit send in NODE_ENV 2018-11-19 09:48:34 -08:00
Steve Klebanoff
0648e270fe Merge branch 'development' into feature/instant/heap 2018-11-19 09:47:58 -08:00
Brandon Millman
3d6711bd38 Merge branch 'development' into feature/instant/icons
* development: (37 commits)
  Add 0x-order-utils.py library to developers home
  Fixes to CONTRIBUTING.md
  Improve our CONTRIBUTING.md instructions
  fix(order_utils.py): publish docs to S3, not RTD (#1264)
  fix: make instant package private
  feat: refer to map file in postpublish configs
  feat: add new bundle name to bundle watch
  fix: tslint ignore rule in wrong place
  Update blog post feature
  Fix disclaimer on mobile
  Add smart contract docs to Developer Home
  Add Apache license link
  Fix capitalization in title
  Remove excess semi-colon
  Point directly to README for docs link
  Update icons
  Update LICENSE
  Fix disclaimer
  Add blogpost URL
  Add disclaimer
  ...
2018-11-19 09:32:39 -08:00
Fabio Berger
99541f89f7 Add 0x-order-utils.py library to developers home 2018-11-19 17:07:18 +00:00
August Skare
117726c6d8 fix imports after renaming 2018-11-19 17:35:22 +01:00
August Skare
31d07fdac8 rename all files and directories to lowercase 2018-11-19 17:27:00 +01:00
Fabio Berger
4cb138ab37 Fixes to CONTRIBUTING.md 2018-11-19 14:34:21 +00:00
Fabio Berger
8b8e277b75 Improve our CONTRIBUTING.md instructions 2018-11-19 14:28:10 +00:00
August Skare
881655bb57 separate component for inlinecode component 2018-11-19 15:18:07 +01:00
August Skare
38949f7ea4 added missing ; 2018-11-19 15:14:01 +01:00
August Skare
8d3e6f77b7 cleand up code component 2018-11-19 15:13:52 +01:00
August Skare
5865d1f62c strict check for children in contentblock 2018-11-19 14:56:40 +01:00
Fabio Berger
8175192f60 Merge branch 'development'
* development: (957 commits)
  fix(order_utils.py): publish docs to S3, not RTD (#1264)
  fix: make instant package private
  feat: refer to map file in postpublish configs
  feat: add new bundle name to bundle watch
  fix: tslint ignore rule in wrong place
  Update blog post feature
  Fix disclaimer on mobile
  Add smart contract docs to Developer Home
  Add Apache license link
  Fix capitalization in title
  Remove excess semi-colon
  Point directly to README for docs link
  Update icons
  Update LICENSE
  Fix disclaimer
  Add blogpost URL
  Add disclaimer
  Add launch kit to Developer home list of tools
  feat: Deploy contracts to Rinkeby
  fix: fix exceeds block gas limit error
  ...
2018-11-19 12:49:16 +00:00
August Skare
e2607980eb type function call for Container in Animation class 2018-11-19 09:57:18 +01:00
August Skare
f519f5744e remove new-lines between methods in classes 2018-11-19 09:55:03 +01:00
August Skare
fa24ec1a04 clean up tabs component 2018-11-19 09:50:19 +01:00
August Skare
6e1014a647 remove unnecessary children in Interface 2018-11-19 09:47:34 +01:00
August Skare
0b46f44ad3 fix typings for components in header 2018-11-19 09:32:53 +01:00
August Skare
b811b51af9 use styled-components theme in logo insted of color prop 2018-11-19 09:15:50 +01:00
August Skare
b88e2c5483 removed unused prop def from footer component 2018-11-19 09:07:05 +01:00
August Skare
cd333e0977 rename copied to didCopy in Code state 2018-11-19 09:05:22 +01:00
August Skare
62706d83c4 remove constructor from Code component 2018-11-19 09:04:00 +01:00
August Skare
284252e7a4 less verbose tslint disable rule 2018-11-19 08:56:59 +01:00
August Skare
3ad857be6c fix timeout type in animation component 2018-11-19 08:53:25 +01:00
Jacob Evans
94de441de7 Merge pull request #1278 from 0xProject/feature/contract-addresses/rinkeby
Deploy contracts to Rinkeby
2018-11-19 11:29:09 +11:00
F. Eugene Aumson
43443d6057 fix(order_utils.py): publish docs to S3, not RTD (#1264)
Publishing to readthedocs.io (RTD) wasn't working, for various reasons.

Changed to publish docs to S3.
2018-11-17 07:07:25 -05:00
fragosti
4caacc78a1 fix: specify new location of index.js in package.json 2018-11-16 18:05:32 -08:00
fragosti
302d172aad feat: fix instant build and add to project references 2018-11-16 17:50:47 -08:00
fragosti
21046e4349 chore: make instant public 2018-11-16 17:19:09 -08:00
Francesco Agosti
9914f7edef Merge pull request #1282 from 0xProject/fix/instant/release-notes-bug
[instant] (temporarily) make instant private
2018-11-16 17:17:48 -08:00
fragosti
1426145946 fix: make instant package private 2018-11-16 17:06:06 -08:00
fragosti
6fe4aef6f7 feat: refer to map file in postpublish configs 2018-11-16 17:05:11 -08:00
Steve Klebanoff
3f0d94c838 Add way to disable via props 2018-11-16 16:44:23 -08:00
fragosti
9384c507ac feat: add isInstantRendered check to safeguard against double renders and double removes 2018-11-16 16:33:02 -08:00
Steve Klebanoff
097bfe581d Better way of reporting Fallback provider 2018-11-16 16:21:38 -08:00
fragosti
ac942faa25 chore: use lodash where relevant 2018-11-16 16:14:10 -08:00
fragosti
654c13df8a fix: bug where we did not call onClose config 2018-11-16 16:07:37 -08:00
fragosti
6e2fbcdb3e feat: add URL override param 2018-11-16 15:58:41 -08:00
fragosti
51dce30088 feat: add assert for shouldDisablePushToHistory 2018-11-16 15:48:55 -08:00
fragosti
a4f6cd21bd feat: be more specific with callback name 2018-11-16 15:45:02 -08:00
Steve Klebanoff
1564415e5d Specify fallback web3 provider in analytics 2018-11-16 15:41:54 -08:00
fragosti
9a53a29b1f feat: allow integrator to disable pushstate logic 2018-11-16 15:41:21 -08:00
Steve Klebanoff
83a6d7b97d Remove old function 2018-11-16 15:29:59 -08:00
Steve Klebanoff
e8be70da10 Widget -> Instant 2018-11-16 15:29:07 -08:00
Steve Klebanoff
4d7bd15334 Trigger Wallet Ready when address changed 2018-11-16 15:25:29 -08:00
fragosti
f7914af9c5 feat: rename props to config 2018-11-16 15:23:44 -08:00
fragosti
848193074a feat: close and open instant based on history changes 2018-11-16 15:21:04 -08:00
Steve Klebanoff
31ffa65f59 Getting rid of unused function, and using track prefix 2018-11-16 15:06:11 -08:00
Steve Klebanoff
21ae0c46e1 Move ip import back 2018-11-16 14:51:57 -08:00
Francesco Agosti
d64bc28ba6 Merge pull request #1275 from 0xProject/feature/instant/productionize-publish-flow
[instant] Productionize publish flow
2018-11-16 11:47:58 -08:00
fragosti
b6e6607c46 feat: add new bundle name to bundle watch 2018-11-16 11:32:05 -08:00
fragosti
d8c6b36cff fix: tslint ignore rule in wrong place 2018-11-16 11:18:17 -08:00
Fabio Berger
e00c41ad88 Update blog post feature 2018-11-16 18:59:17 +00:00
Steve Klebanoff
9c182fe6e4 Merge branch 'development' into feature/instant/heap 2018-11-16 10:26:01 -08:00
Steve Klebanoff
cbcb954c30 Disable tslint for unused function so we can include this for future tracking events 2018-11-16 10:21:51 -08:00
Steve Klebanoff
42565869a4 Report on git sha and npm version of build 2018-11-16 10:19:16 -08:00
Steve Klebanoff
85a99203d0 null -> undefined 2018-11-16 10:14:42 -08:00
Steve Klebanoff
988bb398bc Add initials to TODO note 2018-11-16 10:14:00 -08:00
Steve Klebanoff
ed62271cda Take out old TODO 2018-11-16 10:13:32 -08:00
Steve Klebanoff
74254636b4 Remove unused import 2018-11-16 10:11:00 -08:00
Steve Klebanoff
db7f74f99f Switch heap id on environment, and make sure app id is what we expect 2018-11-16 10:10:55 -08:00
Steve Klebanoff
45a1899ead Add access to environment variables 2018-11-16 10:10:43 -08:00
Fabio Berger
1626e284cd Fix disclaimer on mobile 2018-11-16 18:00:53 +00:00
Fabio Berger
c5d208c90e Add smart contract docs to Developer Home 2018-11-16 17:44:52 +00:00
Fabio Berger
a3ccd42093 Add Apache license link 2018-11-16 17:38:39 +00:00
Fabio Berger
cb3e7b4120 Fix capitalization in title 2018-11-16 17:38:30 +00:00
Fabio Berger
7e58f21a74 Remove excess semi-colon 2018-11-16 17:33:25 +00:00
Steve Klebanoff
3add465edb We may not know num available assets available when wallet ready, so not trackin there 2018-11-16 09:20:44 -08:00
Steve Klebanoff
df71dba8ed Make user and event properties more specific 2018-11-16 09:16:20 -08:00
Fabio Berger
5c4ad3505a Point directly to README for docs link 2018-11-16 17:02:09 +00:00
Steve Klebanoff
37d60dc39e Typesafe analytic actions 2018-11-16 08:51:41 -08:00
August Skare
7fec2f630c fixed base link styling color 2018-11-16 16:18:03 +01:00
Fabio B
59c473dc33 Merge pull request #1253 from 0xProject/launchKitLanding
0x Launch kit landing page
2018-11-16 15:04:34 +00:00
Fabio Berger
5f9c7d8cfa Update icons 2018-11-16 14:43:59 +00:00
Leonid Logvinov
9a6bc4f05f Update LICENSE 2018-11-16 15:41:13 +01:00
Fabio Berger
ef860c5a58 Fix disclaimer 2018-11-16 14:39:32 +00:00
Fabio Berger
d19a9acd6b Add blogpost URL 2018-11-16 14:30:42 +00:00
Fabio Berger
416fec7a97 Add disclaimer 2018-11-16 14:27:11 +00:00
Fabio Berger
25d0b1e6e5 Merge branch 'development' into launchKitLanding
* development: (110 commits)
  fix: fix exceeds block gas limit error
  chore(instant): fix lint error
  fix: remove unused vars
  Send in affiliate info as option
  Have heartbeat update not trigger errors
  fix: remove redundant handler
  feat: make onUnlockWalletClick different based on ON
  chore: remove wallet panel content for mobile
  feat: use blue for wallet prompt on mobile
  feat: use stable version of bowser
  fix: add http to external url string
  feat: make onUnlockWalletClick different based on ON
  chore: remove wallet panel content for mobile
  feat: use blue for wallet prompt on mobile
  feat: use stable version of bowser
  feat: expose webpack-dev-server content to local network
  fix(website): remove node env definition from webpack
  fix(website): currentProvider called on undefined
  chore: update yarn lock
  feat: use capital values for enums
  ...
2018-11-16 13:52:20 +00:00
Fabio Berger
e36fc4e6ae Add launch kit to Developer home list of tools 2018-11-16 13:51:09 +00:00
August Skare
c081081448 Merge branch 'development' into dev-tools-pages 2018-11-16 11:28:24 +01:00
Jacob Evans
0a5364ff35 feat: Deploy contracts to Rinkeby 2018-11-16 21:20:48 +11:00
August Skare
54bd7df900 fix linting + code syntax for statless components 2018-11-16 11:05:30 +01:00
August Skare
5afef5fe82 update styled-component and styled-component typings 2018-11-16 11:04:55 +01:00
Jacob Evans
cabb7432b9 Merge pull request #1277 from akfork/hotfix/fix-ganache-gas-limit
[ganache]: fix exceeds block gas limit error
2018-11-16 20:36:42 +11:00
Akagi201
9726c375af fix: fix exceeds block gas limit error 2018-11-16 17:10:37 +08:00
Brandon Millman
f582cc327b fix(instant): change lodash version to the same as other 0x packages 2018-11-15 19:08:24 -08:00
Brandon Millman
7534c0f19e fix(asset-buyer): change lodash version to the same as other 0x packages 2018-11-15 19:07:43 -08:00
Brandon Millman
004e197863 feat(instant): add icons to token selector 2018-11-15 18:54:17 -08:00
Brandon Millman
ae1fb97794 chore(instant): fix lint error 2018-11-15 18:00:59 -08:00
fragosti
79397d4b15 fix: remove private config line 2018-11-15 16:52:25 -08:00
fragosti
b7fd0ee74c Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/productionize-publish-flow 2018-11-15 16:44:19 -08:00
fragosti
3931202d4a fix: remove unused vars 2018-11-15 16:43:53 -08:00
fragosti
2cf3d4ff83 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/productionize-publish-flow 2018-11-15 16:42:24 -08:00
fragosti
bc14ae5d8b chore: run linter 2018-11-15 16:39:36 -08:00
fragosti
d4a8cd1f1c feat: change version to 1.0.0 2018-11-15 16:29:06 -08:00
fragosti
e9b298931a chore: update gitignore 2018-11-15 16:25:31 -08:00
fragosti
f8681a7780 fix: deploy commands 2018-11-15 16:20:06 -08:00
fragosti
fb3c2e1fb0 feat: rename bundle to instant.js and move build to umd dir 2018-11-15 16:13:35 -08:00
fragosti
9adfd1f323 feat: add npmignore 2018-11-15 15:38:19 -08:00
Steve Klebanoff
8c96720080 Merge pull request #1273 from 0xProject/fix/instant/heartbeat-errors
[instant] Don't show errors from heartbeat buy quote calls
2018-11-15 15:29:22 -08:00
fragosti
d0609d7131 feat: change webpack config and make instant public 2018-11-15 15:22:44 -08:00
Steve Klebanoff
33a156d9b5 Send in affiliate info as option 2018-11-15 15:12:43 -08:00
Fabio Berger
20e3a22d5d fix linter issue 2018-11-15 22:58:57 +00:00
Francesco Agosti
312dfb9572 Merge pull request #1266 from 0xProject/feature/instant/fix-mobile-specific-content
[instant] Fix mobile specific content
2018-11-15 14:35:13 -08:00
Steve Klebanoff
447b0f91f9 Have heartbeat update not trigger errors 2018-11-15 14:20:19 -08:00
Steve Klebanoff
ed26f5af98 Move variable assignments around to be more clear 2018-11-15 13:54:35 -08:00
Fabio Berger
28d105a1af Add support for responsive left 2018-11-15 20:47:34 +00:00
Fabio Berger
fd4a782bdd Update call-to-action links 2018-11-15 20:47:11 +00:00
fragosti
587739f8e1 Merge branch 'feature/instant/fix-mobile-specific-content' of https://github.com/0xProject/0x-monorepo into feature/instant/fix-mobile-specific-content 2018-11-15 12:44:54 -08:00
fragosti
4da574560d fix: remove redundant handler 2018-11-15 12:41:49 -08:00
fragosti
f9e0123986 feat: make onUnlockWalletClick different based on ON 2018-11-15 12:41:49 -08:00
fragosti
f4cc152cfb chore: remove wallet panel content for mobile 2018-11-15 12:41:49 -08:00
fragosti
29747a0487 feat: use blue for wallet prompt on mobile 2018-11-15 12:41:49 -08:00
fragosti
b01db9141b feat: use stable version of bowser 2018-11-15 12:41:49 -08:00
Steve Klebanoff
71aeb7cddc Linting 2018-11-15 11:35:47 -08:00
Francesco Agosti
34d86647bf Merge pull request #1265 from 0xProject/feature/instant/expose-webpack-dev-server
[instant ] Expose webpack-dev-server content to local network
2018-11-15 11:34:17 -08:00
Steve Klebanoff
a8863ac85e Take out console.logs 2018-11-15 11:33:04 -08:00
Steve Klebanoff
ca9bb45327 Move where we track widget opened, and report on networkId and providerName 2018-11-15 11:29:11 -08:00
Steve Klebanoff
450814ad80 Introduce ANALYTICS_ENABLED constant 2018-11-15 11:28:44 -08:00
Steve Klebanoff
0a38bf8fd6 Report ETH in units 2018-11-15 11:24:48 -08:00
Steve Klebanoff
2e61050a22 Use pure functions instead of class 2018-11-15 10:48:20 -08:00
Brandon Millman
1dd903ddcc Merge pull request #1263 from 0xProject/fix/website/node-env
[website] Fix currentProvider called on undefined and NODE_ENV production warning
2018-11-15 10:46:53 -08:00
Steve Klebanoff
61f227e123 feat(instant): Heap middleware and first tracking events 2018-11-15 10:43:42 -08:00
fragosti
633d17ffde fix: add http to external url string 2018-11-15 09:41:20 -08:00
Steve Klebanoff
20ed4fbbd4 First pass on widget version of heap 2018-11-15 08:19:58 -08:00
fragosti
39bb855a9c feat: make onUnlockWalletClick different based on ON 2018-11-14 16:27:27 -08:00
fragosti
b2a26ef21a chore: remove wallet panel content for mobile 2018-11-14 16:18:16 -08:00
fragosti
d895b0296f feat: use blue for wallet prompt on mobile 2018-11-14 16:15:29 -08:00
fragosti
b45167422b feat: use stable version of bowser 2018-11-14 16:00:03 -08:00
fragosti
8e81b0680f feat: expose webpack-dev-server content to local network 2018-11-14 15:48:25 -08:00
Brandon Millman
408bbdb52e fix(website): remove node env definition from webpack 2018-11-14 15:25:40 -08:00
Brandon Millman
f2a6feff29 fix(website): currentProvider called on undefined 2018-11-14 15:25:40 -08:00
Brandon Millman
7ccf9cd48e chore: update yarn lock 2018-11-14 15:25:40 -08:00
Francesco Agosti
8afcba7ba1 Merge pull request #1257 from 0xProject/feature/instant/different-install-wallet-copy-for-mobile
[instant] Adapt content to operating system, browser and provider type
2018-11-14 15:20:49 -08:00
Brandon Millman
2eef766aff Merge pull request #1258 from 0xProject/fix/instant/contract-call
[instant] Catch errors coming from calls to the orderValidator contract
2018-11-14 15:20:31 -08:00
fragosti
fe23bf9e51 feat: use capital values for enums 2018-11-14 14:54:41 -08:00
fragosti
1aae112d0e Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/different-install-wallet-copy-for-mobile 2018-11-14 14:39:23 -08:00
Brandon Millman
504f4d9eb9 fix(instant): fix tabIndex attribute error 2018-11-14 14:02:34 -08:00
F. Eugene Aumson
daf5719f08 fix(order_utils.py): lazy load contract artifacts (#1262) 2018-11-14 17:00:41 -05:00
Brandon Millman
e9754b4c08 Merge pull request #1261 from 0xProject/fix/instant/erc20-picker-list
[instant] Fix a bunch of low hanging bugs
2018-11-14 13:30:17 -08:00
Brandon Millman
adce627888 fix(instant): match token search on prefix 2018-11-14 10:00:18 -08:00
Brandon Millman
7688037fb8 fix(instant): border radius 2018-11-14 10:00:18 -08:00
Brandon Millman
997912a8f8 fix(instant): fix tabbing into erc20 token selector 2018-11-14 10:00:18 -08:00
F. Eugene Aumson
b961cb1952 fix(order_utils.py): validate order w/json schema (#1260) 2018-11-14 12:56:31 -05:00
F. Eugene Aumson
e1d64def20 feat(order_utils.py): sign_hash() (#1254)
Also moved is_valid_signature() into main package module, for
simplicity.

Also consolidated a handul of in-line pylint disable directives into the
.pylintrc config file.
2018-11-14 10:41:52 -05:00
Leonid Logvinov
fe1b7f15e8 Publish
- 0x.js@2.0.4
 - @0x/abi-gen@1.0.16
 - @0x/abi-gen-wrappers@1.0.5
 - @0x/assert@1.0.17
 - @0x/asset-buyer@3.0.0
 - @0x/base-contract@3.0.6
 - @0x/connect@3.0.6
 - @0x/contract-wrappers@4.0.2
 - contracts@2.1.54
 - @0x/dev-tools-pages@0.0.6
 - @0x/dev-utils@1.0.17
 - @0x/fill-scenarios@1.0.12
 - @0x/instant@0.0.7
 - @0x/json-schemas@2.1.1
 - @0x/metacoin@0.0.28
 - @0x/migrations@2.0.4
 - @0x/order-utils@3.0.2
 - @0x/order-watcher@2.2.4
 - @0x/react-docs@1.0.18
 - @0x/react-shared@1.0.21
 - @0x/sol-compiler@1.1.12
 - @0x/sol-cov@2.1.12
 - @0x/sol-doc@1.0.7
 - @0x/sra-spec@1.0.10
 - @0x/subproviders@2.1.4
 - @0x/testnet-faucets@1.0.56
 - @0x/utils@2.0.5
 - @0x/web3-wrapper@3.1.4
 - @0x/website@0.0.59
2018-11-14 16:16:46 +01:00
Leonid Logvinov
3f647c259a Updated CHANGELOGS 2018-11-14 16:16:32 +01:00
Leonid Logvinov
06dcf24496 Merge pull request #1259 from 0xProject/feature/ow-zrx-bug
[@0x/order-watcher] Fix a bug in an order removal when maker token is ZRX
2018-11-14 16:04:25 +01:00
Leonid Logvinov
77c77631e1 Add a comment 2018-11-14 16:03:19 +01:00
Leonid Logvinov
b0e9f58033 Fix a bug in an order-watcher order removal when maker token is ZRX 2018-11-14 15:41:58 +01:00
fragosti
80e7e84a06 fix: do not remove payment dropdown when confirmation pending 2018-11-13 19:49:06 -08:00
fragosti
15105cde0f refactor: move wallet panel content os switching logic into two methods 2018-11-13 19:44:31 -08:00
fragosti
921ef90a14 feat: dont show payment dropdown content on mobile 2018-11-13 19:34:34 -08:00
fragosti
1a1caa1ca2 feat: center title label with circle 2018-11-13 18:04:44 -08:00
Brandon Millman
af6aa2df93 fix(instant): catch errors coming from calls to the orderValidator contract 2018-11-13 18:03:09 -08:00
fragosti
fe1746c7ac chore: remove unused import 2018-11-13 17:50:15 -08:00
fragosti
d19c8ae9b1 feat: add coinbase wallet app logo to wallet prompt 2018-11-13 17:46:58 -08:00
fragosti
84215f75e0 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/different-install-wallet-copy-for-mobile 2018-11-13 17:31:54 -08:00
Francesco Agosti
4fc457b78b Merge pull request #1242 from 0xProject/feature/instant/metamask-connect-flow
[instant] Install/Unlock MetaMask, connect PaymentDropdown to redux state
2018-11-13 17:31:38 -08:00
fragosti
2f6b1273aa Merge branch 'feature/instant/metamask-connect-flow' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-13 17:12:51 -08:00
fragosti
da9de70bbc Merge https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-13 17:09:58 -08:00
fragosti
35bfd493e8 feat: display the correct provider type and change unlock / install prompt content 2018-11-13 17:08:11 -08:00
Steve Klebanoff
b174a891bc Merge pull request #1255 from 0xProject/feature/instant/metamask-connect-flow-input-fix
[instant] Fix input bug
2018-11-13 16:19:15 -08:00
Steve Klebanoff
bb79a5e324 linting 2018-11-13 15:18:29 -08:00
Steve Klebanoff
9e0c232a73 Remove ConnectedZeroExInstantContainer, introduce ConnectedBuyOrderProgressOrPaymentMethod 2018-11-13 15:07:21 -08:00
Brandon Millman
e02dc13805 Merge pull request #1252 from 0xProject/fix/asset-buyer/price-per-token
[asset-buyer][instant] Fix incorrect token prices for non 18-decimal tokens
2018-11-13 14:35:09 -08:00
fragosti
c8b2a975f4 feat: change install wallet panel content based on browser and os 2018-11-13 14:30:27 -08:00
Brandon Millman
820ab062a6 chore(instant): fix prettier 2018-11-13 14:18:19 -08:00
F. Eugene Aumson
7b4f63a39c feat(order_utils.py) generate_order_hash_hex() (#1234) 2018-11-13 16:30:12 -05:00
fragosti
8a64599ca5 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/different-install-wallet-copy-for-mobile 2018-11-13 13:00:52 -08:00
Fabio Berger
9b1ec5baaa Move benefits to language files and fix copy 2018-11-13 21:00:37 +01:00
Brandon Millman
3a3fe0e69a Merge branch 'development' into fix/asset-buyer/price-per-token
* development:
  Publish
  Updated CHANGELOGS
  Fix a bug when undefined was been tried to convert to an array
  feat(instant): add extra asset metadata
  chore: fix linter error
  Improve logo spacing
  fix: lowercase supplied address before comparing with derived addresses (which are not checksummed)
  Remove unused instance variable
  update yarn.lock
  Increase logo size
  Replace remaining scroll-links with Link component
  Adjust paddin
  Fix menuItem background colors depending on the context
  Remove "Home" menu item, instead make different parts of logo link to different sections of the website
  Rename tutorial to match verb structure
  chore: Make `External exports` clickable on sidebar
  style: reduce border size on version dropdown
  style: make line-height of sidebar title 26px, make sure still bottom aligned with version picker
  Update yarn.lock
  style: remove small gap under topbar
2018-11-13 11:38:20 -08:00
Fabio B
5c21d3f6af Merge pull request #1244 from 0xProject/developerSectionNits
Remaining Developer Section Design Nits
2018-11-13 20:36:48 +01:00
Brandon Millman
baba78f545 chore(asset-buyer): update changelog to major version bump 2018-11-13 11:36:19 -08:00
fragosti
f03afe6f1b Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-13 10:46:19 -08:00
Leonid Logvinov
a824264da2 Publish
- 0x.js@2.0.3
 - @0x/abi-gen-wrappers@1.0.4
 - @0x/asset-buyer@2.2.2
 - @0x/base-contract@3.0.5
 - @0x/connect@3.0.5
 - @0x/contract-wrappers@4.0.1
 - contracts@2.1.53
 - @0x/dev-tools-pages@0.0.5
 - @0x/dev-utils@1.0.16
 - @0x/fill-scenarios@1.0.11
 - @0x/instant@0.0.6
 - @0x/metacoin@0.0.27
 - @0x/migrations@2.0.3
 - @0x/order-utils@3.0.1
 - @0x/order-watcher@2.2.3
 - @0x/react-docs@1.0.17
 - @0x/react-shared@1.0.20
 - @0x/sol-compiler@1.1.11
 - @0x/sol-cov@2.1.11
 - @0x/sol-doc@1.0.6
 - @0x/subproviders@2.1.3
 - @0x/testnet-faucets@1.0.55
 - @0x/web3-wrapper@3.1.3
 - @0x/website@0.0.58
2018-11-13 19:41:43 +01:00
Leonid Logvinov
a66c03aa21 Updated CHANGELOGS 2018-11-13 19:41:25 +01:00
fragosti
bed134c1da chore: PR feedback 2018-11-13 10:37:42 -08:00
fragosti
d36cf58b82 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-13 10:37:27 -08:00
Brandon Millman
5527de62ff chore(instant): update selectedAssetAmount in the redux state to be named selectedAssetUnitAmount 2018-11-13 10:29:21 -08:00
Leonid Logvinov
11f0bebd7f Fix a bug when undefined was been tried to convert to an array 2018-11-13 19:27:44 +01:00
Fabio Berger
954fe3f549 update yarn.lock 2018-11-13 17:14:21 +01:00
Fabio Berger
4a444591c1 Implement 0x launch kit landing page 2018-11-13 17:14:13 +01:00
Fabio B
3fb29041b0 Merge pull request #1248 from 0xProject/fixLowercaseAddressBug
Fix lowercase address bug in LedgerSubprovider and MnemonicSubprovider
2018-11-13 15:03:30 +01:00
August Skare
0c222f9890 Merge branch 'development' into dev-tools-pages 2018-11-13 10:14:04 +01:00
August Skare
e43988aa44 Merge branch 'development' into dev-tools-pages 2018-11-13 09:52:41 +01:00
Brandon Millman
161a935003 Merge pull request #1251 from 0xProject/feature/instant/asset-data-map
[instant] Add extra asset metadata
2018-11-12 21:48:34 -08:00
Brandon Millman
e8afc66a5a chore(asset-buyer): update changelog 2018-11-12 20:51:37 -08:00
Brandon Millman
49a9345bf4 feat(instant): calculate per unit eth amount to populate OrderDetails component 2018-11-12 20:50:28 -08:00
Brandon Millman
d73faf1b81 fix(asset-buyer): output assetEthAmount instead of ethPerAssetPrice in BuyQuoteInfos 2018-11-12 20:50:27 -08:00
fragosti
0c6110b736 chore: run linter 2018-11-12 18:50:18 -08:00
fragosti
2da258f5be feat: use Omit type to improve type defitions in some containers 2018-11-12 18:48:20 -08:00
fragosti
e9bf7206bd chore: remove unused constant 2018-11-12 18:34:45 -08:00
fragosti
2b4dcb419e fix: rename handler creator name 2018-11-12 17:48:13 -08:00
fragosti
c67632dff5 feat: make all button fontsizes 16px by default 2018-11-12 17:42:56 -08:00
fragosti
01b36b4949 fix: remove requirement of default case in all switch statements 2018-11-12 17:30:28 -08:00
fragosti
711b307e6c feat: prevent eth balance blink 2018-11-12 17:09:28 -08:00
fragosti
1ab19a7c23 Merge branch 'feature/instant/asset-data-map' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-12 15:11:36 -08:00
fragosti
7068f7b4d1 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-12 15:10:46 -08:00
fragosti
79f0324abc feat: integrate wallet flow with heartbeat and other branches 2018-11-12 13:30:47 -08:00
Brandon Millman
b82148ea60 feat(instant): add extra asset metadata 2018-11-12 13:26:09 -08:00
Fabio B
add1cfd261 Merge pull request #1227 from WyseNynja/patch-1
[web3-wrapper] start jsonRpcRequestId at 1, not 0
2018-11-12 20:43:00 +01:00
Bryan Stitt
cdf78494d5 Update CHANGELOG.json 2018-11-12 09:12:59 -08:00
Bryan Stitt
789f573452 Merge branch 'development' into patch-1 2018-11-12 09:10:40 -08:00
Bryan Stitt
22f217807d Update CHANGELOG.json 2018-11-12 09:08:23 -08:00
Fabio B
08797392e0 Update packages/order-watcher/CHANGELOG.json
Co-Authored-By: WyseNynja <bryan@stitthappens.com>
2018-11-12 09:08:02 -08:00
Leonid Logvinov
853c77dc09 Update packages/order-watcher/CHANGELOG.json
Co-Authored-By: WyseNynja <bryan@stitthappens.com>
2018-11-12 09:07:54 -08:00
Leonid Logvinov
0ebbbdfca4 Publish
- 0x.js@2.0.2
 - @0x/abi-gen-wrappers@1.0.3
 - @0x/assert@1.0.16
 - @0x/asset-buyer@2.2.1
 - @0x/base-contract@3.0.4
 - @0x/connect@3.0.4
 - @0x/contract-wrappers@4.0.0
 - contracts@2.1.52
 - @0x/dev-tools-pages@0.0.4
 - @0x/dev-utils@1.0.15
 - @0x/fill-scenarios@1.0.10
 - @0x/instant@0.0.5
 - @0x/json-schemas@2.1.0
 - @0x/metacoin@0.0.26
 - @0x/migrations@2.0.2
 - @0x/order-utils@3.0.0
 - @0x/order-watcher@2.2.2
 - @0x/react-docs@1.0.16
 - @0x/react-shared@1.0.19
 - @0x/sol-compiler@1.1.10
 - @0x/sol-cov@2.1.10
 - @0x/sol-doc@1.0.5
 - @0x/sra-spec@1.0.9
 - @0x/subproviders@2.1.2
 - @0x/testnet-faucets@1.0.54
 - @0x/web3-wrapper@3.1.2
 - @0x/website@0.0.57
2018-11-12 14:30:26 +01:00
Leonid Logvinov
085d34834b Updated CHANGELOGS 2018-11-12 14:30:14 +01:00
Leonid Logvinov
b866ce787c Merge pull request #1250 from 0xProject/feature/json-schemas-connect
Move @0x/connect schemas to @0x/json-schemas
2018-11-12 14:04:28 +01:00
Leonid Logvinov
4d5bc8b8ee Fix static tests 2018-11-12 13:54:38 +01:00
Leonid Logvinov
7f013515e7 Add PR number 2018-11-12 13:53:39 +01:00
Fabio Berger
a4a46dc076 chore: fix linter error 2018-11-12 13:50:23 +01:00
Leonid Logvinov
33dbdb0184 Move connect schemas to JSON Schemas 2018-11-12 13:44:24 +01:00
Fabio Berger
0d565fe32f Improve logo spacing 2018-11-12 13:27:14 +01:00
Fabio Berger
320460feb9 fix: lowercase supplied address before comparing with derived addresses (which are not checksummed) 2018-11-12 13:21:25 +01:00
Fabio Berger
dbce3f8935 Remove unused instance variable 2018-11-12 13:20:41 +01:00
Fabio B
c41622c20a Merge pull request #1235 from 0xProject/fixOrderValidation
[order-utils] Fix order validation method
2018-11-12 12:17:27 +01:00
Fabio Berger
348556a544 Add fixes affecting the public interface to the CHANGELOGs 2018-11-12 12:07:19 +01:00
Fabio Berger
6fa6579c31 Use correctly formatted signature so that it rejects with the expected reason and not because the signature is mal-formatted 2018-11-12 11:57:54 +01:00
Fabio B
6f61268514 Merge pull request #1246 from 0xProject/bug/web3-wrapper/eth-call-null
[web3-wrapper] Throws when contract returns null
2018-11-12 10:42:28 +01:00
Fabio Berger
8efc6c2112 Remove unnecessary conversion to BigNumber 2018-11-12 10:25:33 +01:00
Fabio Berger
b21c1bea46 Use rejectedWith 2018-11-12 10:23:42 +01:00
Fabio Berger
fd7ba3ecea Use RevertReason when possible 2018-11-12 10:22:22 +01:00
Fabio Berger
8aeb18bcc3 rename param 2018-11-12 10:22:03 +01:00
August Skare
ee91f56bbe remove unused dependecies 2018-11-12 08:24:21 +01:00
Brandon Millman
9e4a594eb1 Merge pull request #1238 from 0xProject/fix/website/code-splitting
[website] Fix code splitting
2018-11-11 21:21:36 -08:00
Brandon Millman
3b421ef796 fix(website): fix code splitting 2018-11-11 20:58:47 -08:00
Jacob Evans
e0c4f58970 bug(web3-wrapper): throws when contract returns null 2018-11-12 13:55:46 +11:00
Amir Bandeali
df8fd36c94 Merge pull request #1241 from 0xProject/feature/contracts/changelogs
Add CHANGELOG.json to contracts package
2018-11-11 15:57:21 -08:00
Bryan Stitt
76b3caa124 Update CHANGELOG.json 2018-11-11 15:13:42 -08:00
Bryan Stitt
0101cd73aa Merge branch 'development' into patch-1 2018-11-11 15:13:09 -08:00
Bryan Stitt
6ef628613e update changelog 2018-11-11 15:09:59 -08:00
Amir Bandeali
bc960fe8f8 Add CHANGELOG comment to README 2018-11-11 14:57:24 -08:00
Amir Bandeali
517c620397 Add CHANGELOG.json 2018-11-11 14:57:24 -08:00
Fabio Berger
498be7ac41 update yarn.lock 2018-11-11 22:11:40 +01:00
Fabio Berger
0391f93490 merge development 2018-11-11 22:11:10 +01:00
Fabio Berger
399a7d5fec Increase logo size 2018-11-11 22:07:58 +01:00
Fabio Berger
0d201173ef Replace remaining scroll-links with Link component 2018-11-11 17:51:00 +01:00
Fabio Berger
2d43f312c8 Adjust paddin 2018-11-11 16:50:08 +01:00
Fabio Berger
1ec8a4115f Fix menuItem background colors depending on the context 2018-11-11 16:48:31 +01:00
Fabio Berger
753b33aec5 Remove "Home" menu item, instead make different parts of logo link to different sections of the website 2018-11-11 15:31:52 +01:00
Fabio Berger
7626d1d6fe Rename tutorial to match verb structure 2018-11-11 14:54:07 +01:00
Fabio Berger
d3592d362e address linter errors 2018-11-11 13:02:45 +01:00
fragosti
a8a1ea92a6 fix: no longer refer to error account state 2018-11-09 16:30:38 -08:00
fragosti
ff027ee36a Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-09 16:22:36 -08:00
Brandon Millman
397b4e2890 Merge pull request #1239 from 0xProject/feature/instant/privacy-mode
[instant] Handle privacy mode in wallets
2018-11-09 16:21:32 -08:00
fragosti
ba292ead45 fix: set all button font sizes in buy flow to 16px 2018-11-09 16:20:39 -08:00
fragosti
5355f3c538 fix: remove unused ProgressBar from BuyOrderProgress and fix issue where payment method is not shown for pending metamask confirmation 2018-11-09 16:16:04 -08:00
fragosti
478330c12d fix: minimize height difference between different states 2018-11-09 16:06:58 -08:00
Brandon Millman
38896c9358 feat(instant): handle privacy mode in wallets 2018-11-09 16:04:29 -08:00
Steve Klebanoff
26cbe7ae66 Merge pull request #1237 from 0xProject/feature/instant/buy-quote-heartbeat
[instant] Heartbeats for account info and buy quotes
2018-11-09 16:02:09 -08:00
Steve Klebanoff
fd83ca2cb8 linting 2018-11-09 15:52:25 -08:00
fragosti
b1376059d3 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-09 15:43:03 -08:00
Steve Klebanoff
4072076965 Don't start heartbeat if no account 2018-11-09 15:40:13 -08:00
fragosti
2bba01c664 feat: toggle wallet connection color 2018-11-09 15:40:02 -08:00
Steve Klebanoff
93054ae52b Lodash noop 2018-11-09 15:28:29 -08:00
Steve Klebanoff
5c1b1a1203 Using built in intervalUtils instead of rolling own 2018-11-09 15:28:08 -08:00
fragosti
433fb3597d feat: refactor button styles and add href to Text 2018-11-09 15:26:57 -08:00
Steve Klebanoff
acb7e876b2 Update account more frequently 2018-11-09 15:19:16 -08:00
Steve Klebanoff
2c585bfbdc feat(instant): Dismissible overlay error messages
Adds dismissible overlay to error messages on mobile
2018-11-09 15:15:57 -08:00
Fabio Berger
1f0ac47bd9 Move signature validation into OrderValidationUtils.validateOrderFillableOrThrowAsync 2018-11-10 00:14:48 +01:00
fragosti
7460f2796a feat: add more info section to the metamask panel 2018-11-09 15:11:47 -08:00
fragosti
7249cc7b49 feat: allow href prop on button 2018-11-09 15:08:01 -08:00
fragosti
b598827708 feat: implement basic StandardModalContent with accompanying InstallWalletPanelContent 2018-11-09 14:57:29 -08:00
fragosti
128abb39dd feat: add padding to close icon to increase tap area 2018-11-09 14:21:41 -08:00
fragosti
79a533940e feat: open metamask sliding panel if locked on click 2018-11-09 14:20:14 -08:00
Fabio Berger
773cf3cd14 Merge branch 'development' into fixOrderValidation
* development: (25 commits)
  Publish
  Updated CHANGELOGS
  fix(instant): fix bug where we potentially fetch balance for the wrong account
  fix: Lock Ledger hw-transport to 4.24.0
  fix: wrong prop names used
  chore: PR feedback
  fix: broken features because of merge
  fix: remove default props, fix lint problems
  chore: convert payment method to stateless component
  feat: add boxShadow on dropdown hover
  fix: various style issues
  fix: remove all:initial rule from all div based ui compoennts
  fix: token selector scrolling container height
  chore(instant): fix lint errors
  feat(instant): fetch balance at startup
  feat(instant): fetch account address at startup and drive account state changes
  chore: cleanup
  fix: restore button to previous state
  feat: implement copy-to-clipboard
  feat: add MetaMask sign, refactor Circle
  ...
2018-11-09 23:20:06 +01:00
Fabio Berger
53d0f5b98e Revert comment change 2018-11-09 23:15:34 +01:00
fragosti
3a51bd1e69 feat: create connect metamask 2018-11-09 13:56:04 -08:00
fragosti
3f1f19e344 feat: connect payment method to state and display different content based on account state 2018-11-09 13:41:32 -08:00
fragosti
3aa831ad77 feat: add account payment method container 2018-11-09 13:29:28 -08:00
fragosti
3fd667b3be feat: make zero ex instant container switch between progress and payment 2018-11-09 13:23:01 -08:00
fragosti
fa7bd072d0 feat: refactor progress bar code to expose static progress bar 2018-11-09 13:19:59 -08:00
Steve Klebanoff
cc8debe53b Linting and renaming variables 2018-11-09 11:39:36 -08:00
Steve Klebanoff
36b8c9c5dd Use interface like named parameters here 2018-11-09 11:28:08 -08:00
Steve Klebanoff
474db7c18d Emulate named parameters with interface 2018-11-09 11:22:46 -08:00
fragosti
daa011f7cb feat: implement CurrentStandardSlidingPanel and put it in the main container 2018-11-09 11:15:32 -08:00
Steve Klebanoff
39657b633b Make sure we only update price when they are not in the middle of an order 2018-11-09 11:04:44 -08:00
Steve Klebanoff
2e8f74abce Use existing functions instead of writing our own 2018-11-09 10:40:47 -08:00
fragosti
239eada7d9 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-09 10:34:14 -08:00
Steve Klebanoff
df91d34315 Merge branch 'development' into feature/instant/buy-quote-heartbeat 2018-11-09 10:06:22 -08:00
Fabio Berger
3980bf39a9 Keep more helpful error messages, and stop swallowing errors when returning contract error 2018-11-09 18:50:25 +01:00
Jacob Evans
b4a11de097 Publish
- 0x.js@2.0.1
 - @0x/abi-gen@1.0.15
 - @0x/abi-gen-wrappers@1.0.2
 - @0x/assert@1.0.15
 - @0x/asset-buyer@2.2.0
 - @0x/base-contract@3.0.3
 - @0x/connect@3.0.3
 - @0x/contract-addresses@1.1.0
 - @0x/contract-artifacts@1.1.0
 - @0x/contract-wrappers@3.0.1
 - contracts@2.1.51
 - @0x/dev-tools-pages@0.0.3
 - @0x/dev-utils@1.0.14
 - ethereum-types@1.1.2
 - @0x/fill-scenarios@1.0.9
 - @0x/instant@0.0.4
 - @0x/json-schemas@2.0.1
 - @0x/metacoin@0.0.25
 - @0x/migrations@2.0.1
 - @0x/monorepo-scripts@1.0.13
 - @0x/order-utils@2.0.1
 - @0x/order-watcher@2.2.1
 - @0x/react-docs@1.0.15
 - @0x/react-shared@1.0.18
 - @0x/sol-compiler@1.1.9
 - @0x/sol-cov@2.1.9
 - @0x/sol-doc@1.0.4
 - @0x/sol-resolver@1.0.16
 - @0x/sra-spec@1.0.8
 - @0x/subproviders@2.1.1
 - @0x/testnet-faucets@1.0.53
 - @0x/tslint-config@1.0.10
 - @0x/types@1.2.1
 - @0x/typescript-typings@3.0.4
 - @0x/utils@2.0.4
 - @0x/web3-wrapper@3.1.1
 - @0x/website@0.0.56
2018-11-09 16:28:52 +11:00
Jacob Evans
a22d78e273 Updated CHANGELOGS 2018-11-09 16:28:35 +11:00
fragosti
a50f0ca997 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/metamask-connect-flow 2018-11-08 17:38:46 -08:00
Brandon Millman
12bc6f5d58 Merge pull request #1232 from 0xProject/feature/instant/account-state-change
[instant] Request account address and balance at mount
2018-11-08 17:35:54 -08:00
Brandon Millman
b147cd8885 fix(instant): fix bug where we potentially fetch balance for the wrong account 2018-11-08 17:22:21 -08:00
Steve Klebanoff
d703c13f8e Variable name cleanup 2018-11-08 17:21:17 -08:00
Steve Klebanoff
3dacc6157b Remove unneeded Promise.resolve 2018-11-08 17:20:15 -08:00
Steve Klebanoff
fd12bdbbd5 Remove old TODO 2018-11-08 17:13:33 -08:00
Steve Klebanoff
297a62fe80 move files around and rename 2018-11-08 17:13:22 -08:00
Steve Klebanoff
1e39d56cf7 wip: BuyQuote heartbeat 2018-11-08 17:09:26 -08:00
Jacob Evans
ca6f99da61 Merge pull request #1236 from 0xProject/fix/subproviders/lock-ledger-4.24.0
[subproviders] Lock Ledger hw-transport to 4.24.0
2018-11-09 12:00:17 +11:00
fragosti
39ae21d693 feat: allow panel children to fill entire content / remove title from panel component 2018-11-08 16:58:44 -08:00
Steve Klebanoff
e45b6c7e98 Make heartbeat more generic 2018-11-08 16:54:45 -08:00
fragosti
fc138cd73d feat: add metamask logo 2018-11-08 16:40:21 -08:00
fragosti
990d510d05 feat: add lock icon 2018-11-08 16:40:21 -08:00
Francesco Agosti
3eac119399 Merge pull request #1230 from 0xProject/feature/instant/dropdown-ui
[instant] Dropdown Component Skeleton
2018-11-08 16:29:34 -08:00
Jacob Evans
8755737344 fix: Lock Ledger hw-transport to 4.24.0 2018-11-09 11:28:53 +11:00
fragosti
cd44470a29 fix: wrong prop names used 2018-11-08 16:15:57 -08:00
Steve Klebanoff
dd4d3b10cf wip: abstract out updating buy quote 2018-11-08 16:14:00 -08:00
Brandon Millman
211163b372 Merge branch 'development' into feature/instant/account-state-change
* development:
  [instant] Viewport specific errors (#1228)
  Added more comments
  Include wholeNumberSchema in sra-spec schemas
  chore(instant): fix linter
  Fix isNode
  fix(instant): update buy quote at start up in the case of default amount
  fix: apply css reset to overlay as well
  fix(website): turn off production flag when building locally
  chore: linter
  fix: progress bar
  fix: use fontSize prop in button
  feat: make instant resistant to external styles
  feat: add faux externall css file
  Add upstream issue
  Use const require instead of import
  Fix tslint issues
  Use detect-node
  Set curstom inspect printer in BigNumber
2018-11-08 16:09:38 -08:00
fragosti
f44c5b2292 chore: PR feedback 2018-11-08 16:08:20 -08:00
fragosti
5d74421e43 fix: broken features because of merge 2018-11-08 15:53:21 -08:00
Fabio Berger
eb5f514d25 Merge branch 'development' into fixOrderValidation
* development: (51 commits)
  [instant] Viewport specific errors (#1228)
  Added more comments
  Include wholeNumberSchema in sra-spec schemas
  chore(instant): fix linter
  Fix isNode
  fix(instant): update buy quote at start up in the case of default amount
  chore(instant): increase max bundle size for bundle watch
  Small code review tweaks
  fix: apply css reset to overlay as well
  fix(website): turn off production flag when building locally
  feat(instant): add Account to the ProviderState
  feat(instant): fallback to an empty wallet provider when none is injected
  [order_utils.py] is_signature_valid, via Exchange contract (#1216)
  chore: linter
  fix: progress bar
  fix: use fontSize prop in button
  feat: make instant resistant to external styles
  chore(instant): update OrderState enum to follow capitalization conventions
  feat: add faux externall css file
  Take out unneeded conditionals
  ...
2018-11-09 00:46:32 +01:00
Fabio Berger
57318a6ef2 Remove unused validateFillOrKill method 2018-11-09 00:46:07 +01:00
Fabio Berger
857a35d4f7 Fix validateOrderFillableOrThrowAsync method so it also checks order signature, cancelled, cancelledUpTo, and throws helpful error messages 2018-11-09 00:45:48 +01:00
fragosti
4f4d901eca Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/dropdown-ui 2018-11-08 15:42:46 -08:00
fragosti
6a84877f9a fix: remove default props, fix lint problems 2018-11-08 15:39:30 -08:00
Steve Klebanoff
117e2f583f [instant] Viewport specific errors (#1228)
feat(instant): Shows different error animation based on viewport
2018-11-08 15:37:56 -08:00
fragosti
b074fe2de5 chore: convert payment method to stateless component 2018-11-08 15:34:53 -08:00
fragosti
3dad385533 feat: add boxShadow on dropdown hover 2018-11-08 15:33:32 -08:00
fragosti
15a12cfa22 fix: various style issues 2018-11-08 15:29:18 -08:00
Remco Bloemen
c448a409c1 Merge pull request #977 from 0xProject/feature/utils/prettybignum
Set custom inspect printer in BigNumber
2018-11-09 00:27:53 +01:00
Remco Bloemen
dfef33bc41 Added more comments 2018-11-09 00:19:11 +01:00
fragosti
27ea271842 fix: remove all:initial rule from all div based ui compoennts 2018-11-08 15:10:32 -08:00
fragosti
316f3e2e76 fix: token selector scrolling container height 2018-11-08 15:04:03 -08:00
Steve Klebanoff
624f5cee8d linting 2018-11-08 15:01:59 -08:00
Steve Klebanoff
7acaae37a9 feat(instant): Heartbeat for updating account info 2018-11-08 14:57:39 -08:00
Remco Bloemen
fd73c17db1 Merge remote-tracking branch 'origin/development' into feature/utils/prettybignum 2018-11-08 23:49:10 +01:00
Fabio Berger
689f8f1fbc Include wholeNumberSchema in sra-spec schemas 2018-11-08 23:48:19 +01:00
Brandon Millman
5ffd20214c Merge pull request #1231 from 0xProject/fix/instant/default-amount-quote
[instant] Update buy quote at start up in the case of default amount
2018-11-08 14:28:22 -08:00
fragosti
3395b8d095 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/dropdown-ui 2018-11-08 11:25:25 -08:00
Francesco Agosti
b388d54962 Merge pull request #1220 from 0xProject/feature/instant/prevent-css-leakage
[instant] Prevent CSS leakage
2018-11-08 11:19:51 -08:00
fragosti
c27194a357 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/prevent-css-leakage 2018-11-08 11:04:16 -08:00
Brandon Millman
8493d619b4 chore(instant): fix linter 2018-11-08 10:34:36 -08:00
Brandon Millman
adcfe51190 Merge pull request #1226 from 0xProject/fix/website/build-time
[website] Turn off production flag when building locally
2018-11-08 10:10:44 -08:00
Remco Bloemen
d71362af99 Merge remote-tracking branch 'origin/development' into feature/utils/prettybignum 2018-11-08 18:32:40 +01:00
Remco Bloemen
a5665a6875 Fix isNode 2018-11-08 18:31:22 +01:00
Brandon Millman
7a99b2099d fix(instant): update buy quote at start up in the case of default amount 2018-11-08 00:18:04 -08:00
Brandon Millman
c84e163edb chore(instant): fix lint errors 2018-11-07 23:43:37 -08:00
Brandon Millman
cde192df0d feat(instant): fetch balance at startup 2018-11-07 23:41:25 -08:00
Brandon Millman
d0c009adff feat(instant): fetch account address at startup and drive account state changes 2018-11-07 23:41:25 -08:00
Brandon Millman
f6abc007ff Merge pull request #1221 from 0xProject/feature/instant/fallback-provider
[instant] Ensure we always have a provider from initial state
2018-11-07 23:40:43 -08:00
fragosti
88eb642aa5 chore: cleanup 2018-11-07 22:21:51 -08:00
fragosti
8b09286173 fix: restore button to previous state 2018-11-07 22:17:27 -08:00
fragosti
bfe708533f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/dropdown-ui 2018-11-07 22:14:00 -08:00
fragosti
d7742029c7 feat: implement copy-to-clipboard 2018-11-07 22:08:40 -08:00
fragosti
1151371e57 feat: add MetaMask sign, refactor Circle 2018-11-07 21:54:26 -08:00
fragosti
ecb92a44bc feat: create PaymentMethodDropdown 2018-11-07 21:38:54 -08:00
fragosti
f7642c06f0 chore: remove unused props 2018-11-07 21:05:07 -08:00
fragosti
94d1e427c1 fix: height of token selector overflow div 2018-11-07 20:57:57 -08:00
fragosti
4181a040b5 feat: refactor out overlay component and use it to implement click-outside 2018-11-07 20:53:25 -08:00
fragosti
c0d8ceca82 feat: implement basic dropdown component 2018-11-07 20:30:45 -08:00
Steve Klebanoff
771f8a6a6c Merge pull request #1219 from 0xProject/feature/instant/mobile-full-bleed
[instant] Mobile full view
2018-11-07 17:40:35 -08:00
Brandon Millman
54b51830d0 chore(instant): increase max bundle size for bundle watch 2018-11-07 17:16:41 -08:00
Bryan Stitt
801004be66 start jsonRpcRequestId at 1, not 0
I'm trying to use the 0x-watcher against a parity websocket rpc and getting an error that I think is the same as https://github.com/ethereum/web3.js/issues/1967
2018-11-07 16:39:07 -08:00
Steve Klebanoff
c6e7ad5a53 Small code review tweaks 2018-11-07 16:06:41 -08:00
fragosti
6d5f65b77e fix: apply css reset to overlay as well 2018-11-07 15:42:48 -08:00
Brandon Millman
370452238f fix(website): turn off production flag when building locally 2018-11-07 15:41:05 -08:00
Brandon Millman
28df5bfd94 feat(instant): add Account to the ProviderState 2018-11-07 14:25:23 -08:00
fragosti
eb8f7b0ef5 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/prevent-css-leakage 2018-11-07 10:58:39 -08:00
Brandon Millman
dfbf10c94b feat(instant): fallback to an empty wallet provider when none is injected 2018-11-07 09:32:49 -08:00
F. Eugene Aumson
95b2898b9c [order_utils.py] is_signature_valid, via Exchange contract (#1216)
First support for signature validation, done via Exchange contract's
isValidSignature() method.
2018-11-07 11:20:46 -05:00
August Skare
52b49fee24 better positioning of hero animation 2018-11-07 13:08:08 +01:00
August Skare
31f096248d lower deboune on animation resize 2018-11-07 13:01:53 +01:00
August Skare
d91c41b29c fix alignment on list bullest 2018-11-07 12:45:25 +01:00
August Skare
c27a2b64ef visual tweaks in code component 2018-11-07 12:39:47 +01:00
August Skare
fdaffb67e8 styling adjustment in uniq components 2018-11-07 12:39:33 +01:00
August Skare
d32bf15b69 align 0x logo in footer 2018-11-07 10:19:33 +01:00
August Skare
7536648f7a right align icons in trace component 2018-11-07 10:16:13 +01:00
August Skare
eb2fa8e4af more spacing on footer items 2018-11-07 10:13:49 +01:00
August Skare
5d3d2736f5 break compiler cards on an earlier breakpoint 2018-11-07 09:51:42 +01:00
August Skare
0574794496 new og images 2018-11-07 09:48:49 +01:00
August Skare
3a23e795ac new hero animation using bodymovin and lottie 2018-11-07 09:48:10 +01:00
August Skare
2dfca078fd copy changes 2018-11-07 09:10:25 +01:00
Brandon Millman
094f710662 Merge pull request #1217 from 0xProject/fix/asset-buyer/lower-default-expiry-buffer
[asset-buyer] Lower default expiryBuffer from 5 minutes to 2 minutes
2018-11-06 22:53:09 -08:00
fragosti
d1186e08b4 chore: linter 2018-11-06 16:31:52 -08:00
fragosti
cab71fd4d1 fix: progress bar 2018-11-06 16:16:01 -08:00
fragosti
4cf6fbc6a3 fix: use fontSize prop in button 2018-11-06 16:05:12 -08:00
fragosti
10da1e24e1 feat: make instant resistant to external styles 2018-11-06 15:59:16 -08:00
Brandon Millman
c30dca6961 chore(instant): update OrderState enum to follow capitalization conventions 2018-11-06 15:42:54 -08:00
fragosti
42c441fafa feat: add faux externall css file 2018-11-06 15:12:25 -08:00
Steve Klebanoff
6861cd7462 Take out unneeded conditionals 2018-11-06 15:09:00 -08:00
Steve Klebanoff
d59027f0bc remove unused dependecny 2018-11-06 15:02:44 -08:00
Steve Klebanoff
d1444f228d remove unused import 2018-11-06 14:57:15 -08:00
Steve Klebanoff
9cc7090e28 remove old comment 2018-11-06 14:56:42 -08:00
Steve Klebanoff
a73522e7f1 Merge branch 'development' into feature/instant/mobile-full-bleed 2018-11-06 14:54:36 -08:00
Steve Klebanoff
d941901e32 Hide X when small 2018-11-06 14:26:15 -08:00
Steve Klebanoff
eb3fda059a Fix mobile view of selecting assets 2018-11-06 14:21:23 -08:00
Brandon Millman
0823bd24d6 fix(asset-buyer): lower default expiryBuffer from 5 minutes to 2 minutes 2018-11-06 14:08:30 -08:00
Steve Klebanoff
897c15fd28 Get rid of unused properties 2018-11-06 14:07:55 -08:00
Steve Klebanoff
006a13448f new MediaChoice approach for setting conditional css properties 2018-11-06 14:05:49 -08:00
Steve Klebanoff
88c7d907fa better function definiton 2018-11-06 13:56:29 -08:00
Steve Klebanoff
e8814ecbe7 proof of concept working 2018-11-06 13:52:16 -08:00
Steve Klebanoff
f90486c99c wip: mediachoice experiment 2018-11-06 11:34:04 -08:00
Steve Klebanoff
a2bc62b17a feat(instant): when on mobile, show mobile specific styling that takes up whole screen 2018-11-06 10:26:39 -08:00
Francesco Agosti
ce4081bb18 Merge pull request #1210 from 0xProject/feature/instant/beta-bucket
[instant] Break up deploy into deploy-dogfood and deploy-staging
2018-11-06 09:37:04 -08:00
Francesco Agosti
b7a111366b Merge pull request #1213 from 0xProject/feature/instant/more-testnet-liquidity
[instant] Add GNT and MKR testnet orders, fix typo
2018-11-06 09:36:40 -08:00
Steve Klebanoff
f6487122d1 Putting back in old heights as not necessary for full bleed 2018-11-06 09:26:45 -08:00
Steve Klebanoff
7c9d47451b Merge pull request #1211 from 0xProject/chore/import-ui-directly
[instant] chore: Import UI components directly
2018-11-06 08:30:31 -08:00
August Skare
9006e8fced fix issues in code element 2018-11-06 14:39:48 +01:00
August Skare
6b8f8580d8 fix large button on small screens 2018-11-06 14:33:31 +01:00
Brandon Millman
8b06b36274 chore(instant): fix lint error 2018-11-05 23:56:54 -08:00
Steve Klebanoff
188e317504 wip: height 100% 2018-11-05 17:23:09 -08:00
Steve Klebanoff
ecae3f9c48 wip: full display of mobile hard coded 2018-11-05 17:19:37 -08:00
fragosti
543ff7739a fix: remove unused import 2018-11-05 16:58:54 -08:00
fragosti
18d24f8db1 chore: move to underscores 2018-11-05 16:47:52 -08:00
fragosti
58a65d0ed9 chore: clarify a comment 2018-11-05 16:43:35 -08:00
fragosti
338594d3e5 feat: add GNT and MKR testnet orders, fix typo 2018-11-05 16:37:49 -08:00
Steve Klebanoff
e4f9ae6ad5 fix(instant): fix provided orders 2018-11-05 16:29:44 -08:00
Steve Klebanoff
7e2acb6e7e add extra space 2018-11-05 13:35:23 -08:00
Steve Klebanoff
04e70df330 remove unused import 2018-11-05 10:06:22 -08:00
Steve Klebanoff
eb46570a38 chore(instant): import UI components directly 2018-11-05 09:42:22 -08:00
fragosti
bb9c21fb14 chore: prettier and linter 2018-11-02 17:26:04 -07:00
fragosti
245fa95424 fix: typo in README 2018-11-02 17:16:49 -07:00
fragosti
16fa0fdda1 feat: break up deploy into deploy-dogfood and deploy-staging 2018-11-02 17:12:33 -07:00
Francesco Agosti
66261102de Merge pull request #1204 from 0xProject/feature/instant/maker-asset-datas-interface
[instant] Add `availableAssetDatas` to render method, fetch from asset-buyer if not specified, implement basic token selection
2018-11-02 16:26:16 -07:00
fragosti
6748c36b03 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/maker-asset-datas-interface 2018-11-02 15:51:42 -07:00
Steve Klebanoff
d0f20a4fd5 Merge pull request #1206 from 0xProject/fix/instant/decimal-fields-scaling-amount-input-bn
[instant] Fix decimal input issues on instant
2018-11-02 15:45:58 -07:00
Steve Klebanoff
f5c7a3c26a linting 2018-11-02 15:34:44 -07:00
Steve Klebanoff
cfa748e206 Merge branch 'development' into fix/instant/decimal-fields-scaling-amount-input-bn 2018-11-02 15:34:37 -07:00
Steve Klebanoff
8284f9c2ba Use generic Maybe 2018-11-02 15:33:00 -07:00
Brandon Millman
18fef7ade4 Merge pull request #1209 from 0xProject/feature/instant/optional-provider
[instant] Provide optional provider API, fallback to injected provider
2018-11-02 15:17:04 -07:00
Brandon Millman
5fc2483be7 feat(instant): pass in provider through props, fallback to injected provider 2018-11-02 14:39:12 -07:00
fragosti
d5521ea5e0 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/maker-asset-datas-interface 2018-11-02 14:38:18 -07:00
fragosti
cc4ccda623 chore: address PR comments 2018-11-02 14:21:04 -07:00
Steve Klebanoff
389665d3a1 linting 2018-11-02 13:30:34 -07:00
Steve Klebanoff
d160792923 Merge branch 'development' into fix/instant/decimal-fields-scaling-amount-input-bn 2018-11-02 13:28:52 -07:00
fragosti
819ba14303 fix: change assetdatas for OMG and REP to be all lower case, make MKR blue 2018-11-02 13:26:59 -07:00
Steve Klebanoff
b0f2ab45e9 onChange -> onAmountChange 2018-11-02 13:25:59 -07:00
Steve Klebanoff
620f439816 Move MaybeBigNumber functions into helper 2018-11-02 13:22:10 -07:00
Steve Klebanoff
6a57a7b5be Merge pull request #1208 from 0xProject/fix/instant/zero-NaN
[instant] Fix NaN issue with zero input
2018-11-02 13:12:25 -07:00
fragosti
1f3055c1bc feat: reset input after token selection 2018-11-02 13:03:10 -07:00
Brandon Millman
ec83a1d9e7 Merge pull request #1207 from 0xProject/feature/instant/affiliate-fee
[instant][asset-buyer] Implement affiliateInfo prop
2018-11-02 12:43:53 -07:00
Brandon Millman
b895b855cb feat(instant): add affiliateInfo overrides to dev url 2018-11-02 12:03:15 -07:00
Steve Klebanoff
a770ea56ea fix(instant): dont get buy quote for zero value 2018-11-02 11:48:59 -07:00
Brandon Millman
5e66cc8a40 feat(instant): implement affiliateFeeInfo prop 2018-11-02 10:57:24 -07:00
Brandon Millman
4fda2a2d04 fix(asset-buyer): fix default values being overriden and incorrect fee rounding 2018-11-02 09:59:17 -07:00
Steve Klebanoff
e7e9c2a2eb Merge branch 'development' into feature/instant/simulated-progress-bar 2018-11-02 09:43:11 -07:00
fragosti
7619bc4f13 fix: dont include assetData in render options 2018-11-01 19:01:56 -07:00
fragosti
515b8712a1 chore: prettier and linter 2018-11-01 18:59:28 -07:00
fragosti
e2ff7b7c84 feat: add basic token search functionality 2018-11-01 18:55:37 -07:00
fragosti
209b2c9dcb feat: improve position of close X in token selector 2018-11-01 18:38:25 -07:00
fragosti
cdaa1407da feat: implement search bar UI 2018-11-01 18:36:34 -07:00
fragosti
92706a4b43 feat: add name param to all ERC20AssetMetaData 2018-11-01 17:59:51 -07:00
fragosti
ab245fe7de feat: implement basic token selection UI 2018-11-01 17:52:15 -07:00
Steve Klebanoff
f5623632d8 Have ScalingAmountInput trigger onChange with MaybeBigNumber and keep string value as state 2018-11-01 17:29:59 -07:00
fragosti
7de33c5dd9 feat: implement panel title and close 2018-11-01 16:52:31 -07:00
fragosti
180f176716 feat: use withTheme to use ColorOption to color Icon 2018-11-01 16:41:08 -07:00
Steve Klebanoff
a2e1bf0e62 Getting rid of BigNumberInput in favor of BigNumber 2018-11-01 16:32:14 -07:00
fragosti
ad96e953ce feat: use new Icon component functionality 2018-11-01 16:16:54 -07:00
fragosti
695d1453ac Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/maker-asset-datas-interface 2018-11-01 16:13:43 -07:00
Brandon Millman
7c30fd4b2d Merge pull request #1205 from 0xProject/feature/instant/render-overlay
[instant] Dismissible overlay
2018-11-01 15:38:02 -07:00
Francesco Agosti
5573b092a9 Merge pull request #1203 from 0xProject/feature/instant/token-selection-panel
[instant][asset-buyer] Add more assetMetaData and expose new asset-buyer API: `getAvailableAssetDatasAsync`
2018-11-01 15:36:39 -07:00
Brandon Millman
d16499da4e Remove alternate hover styling from button and move into icon component 2018-11-01 15:25:34 -07:00
fragosti
c50c4a4669 fix: make maxPerPage for the SRA getAvailableMakerAssetDatasAsync call a local var 2018-11-01 15:11:03 -07:00
fragosti
32de4862ba Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/token-selection-panel 2018-11-01 15:01:05 -07:00
Steve Klebanoff
f341626e29 Merge branch 'development' into feature/instant/simulated-progress-bar 2018-11-01 14:33:43 -07:00
Brandon Millman
c2645b26b4 feat(instant): add interactive overlay presentation to umd bundle 2018-11-01 14:15:30 -07:00
fragosti
ce19ec207b fix: remove assetData from default params 2018-11-01 14:14:39 -07:00
Steve Klebanoff
7858dafce4 linting: moving order of imports 2018-11-01 14:14:00 -07:00
Francesco Agosti
0955feb023 Merge pull request #1201 from 0xProject/feature/instant/basic-token-modal
[instant] Add `Select Token` mode, animation abstractions, and basic token selection panel
2018-11-01 13:57:29 -07:00
fragosti
9fd931f799 feat: better handle errors in async fetches 2018-11-01 13:49:09 -07:00
fragosti
57fba86154 chore: remove unneeded optional syntax 2018-11-01 13:40:23 -07:00
fragosti
0a3af4eb22 chore: add clarification to _generateSelectAssetClickHandler 2018-11-01 13:38:12 -07:00
fragosti
7fc1a88680 fix: better name method 2018-11-01 13:34:23 -07:00
fragosti
9f5f31d39f feat: add asserts for new API additions 2018-11-01 13:24:32 -07:00
fragosti
bda9d4c1b0 feat: auto-close panel when a token is selected 2018-11-01 13:16:48 -07:00
fragosti
b55ba3a318 feat: add states to the erc20 input for no assets or only 1 asset 2018-11-01 13:10:51 -07:00
Steve Klebanoff
dc655fd903 Better styling of estimated time 2018-11-01 12:08:48 -07:00
Steve Klebanoff
82b6a81a22 removing unused imports 2018-11-01 11:35:53 -07:00
Steve Klebanoff
f9d13cd43a Move file to new file to reflect the new export name 2018-11-01 11:32:18 -07:00
Steve Klebanoff
771e01162d Rename export 2018-11-01 11:30:13 -07:00
Steve Klebanoff
61a1a0be97 Move BuyOrderProgress to its own component 2018-11-01 11:29:33 -07:00
Steve Klebanoff
3430896eb7 Remove old TODO 2018-11-01 11:17:41 -07:00
Steve Klebanoff
cd79a2fad1 Use new constants 2018-11-01 11:15:34 -07:00
Steve Klebanoff
f82d16a5b0 Use primary color instead of black 2018-11-01 11:15:07 -07:00
Steve Klebanoff
9990f8720c maxWidth -> toWidth, and make from and to width consistent units 2018-11-01 10:50:37 -07:00
Steve Klebanoff
544ddd44a0 Getting rid of TimedProgress state 2018-11-01 10:46:34 -07:00
Steve Klebanoff
66b485c7d4 Minor cleanup
Don't export beginningState, and updating prop name in comment
2018-11-01 10:04:04 -07:00
Steve Klebanoff
9ef6f82a95 Take out old ended variable 2018-11-01 09:59:37 -07:00
Steve Klebanoff
a148db5022 Fix test name 2018-11-01 09:52:34 -07:00
Steve Klebanoff
f9a38fcb32 ended -> hasEnded 2018-11-01 09:51:27 -07:00
fragosti
3f918622bc feat: implement basic erc20 token selector 2018-10-31 19:50:37 -07:00
fragosti
6091ee732d feat: modify public API to allow for passing in available assets, or fetch assets from SRA 2018-10-31 19:21:06 -07:00
Steve Klebanoff
906909e33f Rename to SelectedAssetProgress 2018-10-31 16:54:52 -07:00
Steve Klebanoff
d192a7d466 Removing old extra param 2018-10-31 16:49:52 -07:00
Steve Klebanoff
096f9decee Removing old simulated progress bar, and adding documentation to TimedProgressBar 2018-10-31 16:49:41 -07:00
Steve Klebanoff
ae84dac463 WIP of new timedprogressbar using CSS animations 2018-10-31 16:46:24 -07:00
fragosti
8c33692560 chore: add to changelog 2018-10-31 15:58:21 -07:00
Francesco Agosti
44a34ee541 Merge pull request #1197 from 0xProject/feature/instant/add-new-order-and-rep
[instant] Add REP to assetMetaDataMap and add it to provided orders
2018-10-31 15:56:28 -07:00
fragosti
76f88a0a62 feat: expose new getAvailableAssetDatasAsync API
BREAKING CHANGE: the `OrderProvider` now requires a new method `getAvailableMakerAssetDatasAsync` and the `StandardRelayerAPIOrderProvider` requires the network id at init.
2018-10-31 15:40:30 -07:00
Brandon Millman
c1defba429 Merge pull request #1199 from 0xProject/feature/website/metmask-breaking-change
[website] Prepare website for breaking MetaMask change for EIP 1102
2018-10-31 14:26:21 -07:00
fragosti
c1ad1d203d chore: remove unused import 2018-10-31 14:15:03 -07:00
fragosti
3061afdafb feat: add more asestMetaDatas 2018-10-31 14:14:12 -07:00
fragosti
59ad2b75c1 chore: remove unused import 2018-10-31 13:29:20 -07:00
fragosti
935e5da78e Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/basic-token-modal 2018-10-31 13:15:13 -07:00
fragosti
28ded5d02d fix: address PR comments 2018-10-31 12:18:03 -07:00
fragosti
27258fe3d4 chore: address PR feedback 2018-10-31 11:55:48 -07:00
Steve Klebanoff
ad0129fa02 Revert "Remove default in state reducer"
This reverts commit cc2719492d.
2018-10-31 11:31:55 -07:00
Steve Klebanoff
5911879639 Merge branch 'development' into feature/instant/simulated-progress-bar 2018-10-31 11:06:14 -07:00
Steve Klebanoff
cc2719492d Remove default in state reducer
This allows us to ensure that we explicitly handle every action type
2018-10-31 09:25:18 -07:00
Steve Klebanoff
d675547208 Explicit actions for setting different order states
This allows us to dispatch updates with less syntax, and allows us to not have to send in progress info when setting failure and success
2018-10-31 09:14:50 -07:00
Steve Klebanoff
d938ba4606 Remove unused import 2018-10-31 08:37:21 -07:00
Steve Klebanoff
9a5b52036b Tick less often, and let CSS style the transition 2018-10-31 08:14:44 -07:00
Steve Klebanoff
229f11f164 Nice formatting of displayed time 2018-10-30 20:18:21 -07:00
fragosti
91f8487947 feat: implement sliding panel 2018-10-30 16:57:42 -07:00
Steve Klebanoff
0e1e9b27f6 Takeout unneeded div 2018-10-30 16:45:04 -07:00
Steve Klebanoff
9787d1085d Get rid of old demo 2018-10-30 16:43:58 -07:00
Steve Klebanoff
1c0569cfc6 Use simulated progress bar for txn 2018-10-30 16:40:51 -07:00
Steve Klebanoff
9cc82308e5 Always return estimated time, just use default if not known 2018-10-30 16:39:52 -07:00
Steve Klebanoff
5d6fde356a Merge pull request #1198 from 0xProject/feature/instant/gas-estimate
[instant] Gas price estimate
2018-10-30 15:58:18 -07:00
Steve Klebanoff
96fcbeaba6 Showing time 2018-10-30 15:55:53 -07:00
Steve Klebanoff
d21487d0c0 Show estimated time 2018-10-30 15:47:35 -07:00
Steve Klebanoff
dc90136529 Remove old files 2018-10-30 15:43:38 -07:00
Steve Klebanoff
abaa39a5e2 Simulated Progress component working 2018-10-30 15:39:58 -07:00
fragosti
4456c3ee14 feat: allow for flexible position in position animation component 2018-10-30 15:32:43 -07:00
fragosti
a49bf353f8 feat: refactor animation code 2018-10-30 15:21:58 -07:00
Steve Klebanoff
05f059492b WIP: beginning of simulated progress bar component 2018-10-30 14:48:09 -07:00
Steve Klebanoff
13b41c976b Placeholder for estimated time 2018-10-30 13:51:18 -07:00
Steve Klebanoff
bcb633e5cb Making prettier 2018-10-30 13:34:47 -07:00
Steve Klebanoff
05b74ba1c8 Dispatching progress 2018-10-30 13:27:28 -07:00
Brandon Millman
a918e7099d fix(website): prepare website for breaking MetaMask change for eip 1102 2018-10-30 12:50:54 -07:00
Steve Klebanoff
12dad41143 Remove old TODO 2018-10-30 10:58:47 -07:00
Steve Klebanoff
9a0595a607 Rename functions and get rid of old unused function 2018-10-30 10:58:39 -07:00
Steve Klebanoff
37405038e8 Stall at 95 percent 2018-10-30 10:56:11 -07:00
Steve Klebanoff
25039a036c WIP: Progress ticker with finishing 2018-10-30 10:18:00 -07:00
August Skare
eb9d802146 rename pesudo element in code gutter 2018-10-30 09:07:25 +01:00
August Skare
6b11ca6c1d fix code highlighting with ... 2018-10-30 09:05:52 +01:00
August Skare
4c8178fc30 remove outline on buttons 2018-10-30 08:42:32 +01:00
August Skare
4616d6f59d button tweaks 2018-10-30 08:39:24 +01:00
August Skare
5cb944fe1b optional copy button in code component 2018-10-30 08:27:31 +01:00
August Skare
50c4909f22 change footer copy 2018-10-30 08:24:14 +01:00
August Skare
dd8b9bf987 fix link to 0x in header 2018-10-30 08:21:39 +01:00
Steve Klebanoff
728f70f51b store estimated time in Ms on state 2018-10-29 20:08:46 -07:00
Steve Klebanoff
f9eba65aee return estimated state 2018-10-29 20:06:31 -07:00
fragosti
d0a0af5130 feat: add 'Select Token' UI to asset amount input 2018-10-29 18:38:23 -07:00
fragosti
4cba70f32e feat: add chevron icon and add it to asset amount input 2018-10-29 17:48:17 -07:00
Steve Klebanoff
5901ee7e96 Move tslint disable line 2018-10-29 17:18:56 -07:00
Steve Klebanoff
09ee7d84f7 Add comment and use constant 2018-10-29 17:17:04 -07:00
Steve Klebanoff
2ad2644b6b Use polyfilled fetch from utils 2018-10-29 17:11:15 -07:00
Steve Klebanoff
30454fe467 async suffix and use polyfill fetch util 2018-10-29 17:11:02 -07:00
fragosti
475698ed92 feat: add basic panel component and other small improvements 2018-10-29 17:02:46 -07:00
Steve Klebanoff
274e4b3bcd Introduce constants for eth gas station and coinbase 2018-10-29 16:53:18 -07:00
Steve Klebanoff
a49fc27042 Comment for warming up cache 2018-10-29 16:49:13 -07:00
fragosti
17f024056a chore: add changelog 2018-10-29 15:50:54 -07:00
fragosti
10e6c3cd90 feat: remove isValidProvided orders validation 2018-10-29 15:48:45 -07:00
Steve Klebanoff
cd419edf69 linting 2018-10-29 15:37:30 -07:00
fragosti
ac72df4188 chore: remove console log 2018-10-29 15:30:25 -07:00
Steve Klebanoff
9610ada446 Use constant that exists now 2018-10-29 15:23:16 -07:00
Steve Klebanoff
8ab8c27998 gas price estimator 2018-10-29 15:21:30 -07:00
Brandon Millman
48ff13e3e2 Merge pull request #1196 from 0xProject/feature/instant/default-gas-price
[instant] Add default gasPrice of 6 gwei to transactions
2018-10-29 15:17:29 -07:00
Brandon Millman
25ca3d4c29 feat(instant): add default gasPrice of 6 gwei to transactions 2018-10-29 13:18:53 -07:00
fragosti
02a975dde4 feat: add augur provided order 2018-10-29 13:17:16 -07:00
Brandon Millman
aeec8f47ef feat(instant): add default gasPrice of 6 gwei to transactions 2018-10-29 12:52:32 -07:00
Brandon Millman
fdf9e860de Merge pull request #1187 from 0xProject/feature/instant/fixed-orders-in-render-method
[instant] Add ability to toggle render settings through URL, flash error on incorrect network, provided liquidity
2018-10-29 10:58:11 -07:00
Brandon Millman
3f35239b27 fix(instant): fix spelling error and BigNumber gte operation 2018-10-29 10:40:11 -07:00
Brandon Millman
aab9bedd7f Merge branch 'development' into feature/instant/fixed-orders-in-render-method
* development:
  Has Sufficient Funds/Balance -> Has Sufficient ETH
  When transaction too low, treat as validation error. also modify callback: errorMessage could be AssetBuyError as well
  onPendingValidation -> onValidationPending
  linting
  Simpler way of validaitng has enough eth
  questionmark syntax instead of '| undefined'
  Validate enough ETH when user clicks buy
  acccount for no address
  move funct into util
  move imports
  yarn.lock changes
  feat(instant): Show message if user doesn't have enough ETH
  ethDecimals -> ETH_DECIMALS
2018-10-29 10:37:56 -07:00
Steve Klebanoff
4e4291eccd Merge pull request #1193 from 0xProject/feature/not-enough-eth
[instant] Not enough ETH error message
2018-10-29 10:12:44 -07:00
Steve Klebanoff
7ed44f7b2f Has Sufficient Funds/Balance -> Has Sufficient ETH 2018-10-29 09:07:40 -07:00
Steve Klebanoff
8288e8cce9 When transaction too low, treat as validation error. also modify callback: errorMessage could be AssetBuyError as well 2018-10-29 09:03:39 -07:00
Steve Klebanoff
1bb7a28690 onPendingValidation -> onValidationPending 2018-10-29 08:56:49 -07:00
August Skare
0e3cd82348 Fixes/august (#12)
* fix button dimensions

* fix footer hover color

* breakout in trace component

* fix padding on button on small screens

* fix title with content on small screens

* sizing adjustment in intro component

* intro component adjustments

* container size adjustments

* meta og images

* fixed gutter size

* trace component fix + breakout fix

* show copy button if touch device

* responsive hero animation
2018-10-29 08:15:20 +00:00
August Skare
3d4041ecd3 Feature/feedbacktweaks (#11)
* Fix typo

* Fix 1px line showing in middle of divs

* Increase inline code padding by 2px

* Make masonry block not full width on screens larger than mobile

* Align list items

* Change button text to copied if it's been copied
2018-10-29 08:13:03 +00:00
Brandon Millman
8d1689073b Merge branch 'development' into feature/instant/fixed-orders-in-render-method
* development:
  fix(instant): refactor some props to use isDisabled instead of disabled
  linting imports
  feat(instant): Disable input when processing
  Add back debounce
  Make doesBuyQuoteMatchState in reducer less strict
  fix(instant): prevent outdated quote requests from overriding the correct quote
  selected asset buy order state button -> selected asset buy order state buttons
  buy order state button -> buy order state buttons
  feat(order_utils.py): ERC721 asset data codec (#1186)
  Add note about tslint false positive
  tsx -> ts
  Get BuyOrderState one big connected component, and let user view failure
  Show View Transaction button on failure, and allow setting of width for Try Again button and View Txn button
  Added string to constants
  chore: Update contract-wrappers CHANGELOG.json
  fix(contract-wrappers): Fix tslint errors that were lingering due to misconfiguration
  chore: Add --format stylish to tslint
2018-10-28 19:07:53 -07:00
Steve Klebanoff
3052c8d303 linting 2018-10-26 19:55:42 -07:00
Steve Klebanoff
ff295daa5c Simpler way of validaitng has enough eth 2018-10-26 19:53:15 -07:00
Steve Klebanoff
bb307a55d3 questionmark syntax instead of '| undefined' 2018-10-26 19:23:42 -07:00
Steve Klebanoff
ae6202ed3d Merge pull request #1194 from 0xProject/feature/instant/input-to-fixed
[instant] Disable input when processing
2018-10-26 19:22:26 -07:00
Brandon Millman
0e55f76db8 fix(instant): refactor some props to use isDisabled instead of disabled 2018-10-26 16:24:16 -07:00
Steve Klebanoff
667b1e03dd Validate enough ETH when user clicks buy 2018-10-26 15:51:23 -07:00
Brandon Millman
4f5ab1a72d Refactor error handling such that errorMessage lives on the top level state 2018-10-26 15:45:17 -07:00
Steve Klebanoff
6ad8ac6a48 Merge branch 'development' into feature/not-enough-eth 2018-10-26 15:34:51 -07:00
Steve Klebanoff
86febc3cce acccount for no address 2018-10-26 15:34:35 -07:00
Steve Klebanoff
e73fceaa20 Merge pull request #1189 from 0xProject/feature/instant/txn-failure
[instant] View txn on failure
2018-10-26 15:33:56 -07:00
Steve Klebanoff
cacfcc291a linting imports 2018-10-26 15:22:28 -07:00
Steve Klebanoff
e1ae551560 move funct into util 2018-10-26 15:20:04 -07:00
Steve Klebanoff
476cbbb6cb move imports 2018-10-26 15:03:56 -07:00
Steve Klebanoff
1880c34ce0 feat(instant): Disable input when processing 2018-10-26 13:46:14 -07:00
Alex Browne
cc7321cb5b Merge pull request #1178 from 0xProject/fix/linter-improvements
Add --format stylish to tslint and fix linter errors in contract-wrappers.
2018-10-26 13:34:21 -07:00
Brandon Millman
ae64fc15e0 Merge pull request #1188 from 0xProject/fix/instant/quote-race-conditions
[instant] Make sure quote updates are consistent with the current state
2018-10-26 13:24:04 -07:00
Brandon Millman
6f4dbc71f2 Add back debounce 2018-10-26 13:11:47 -07:00
Brandon Millman
4bd4ff46cf Make doesBuyQuoteMatchState in reducer less strict 2018-10-26 13:10:15 -07:00
Brandon Millman
edfb56de6c fix(instant): prevent outdated quote requests from overriding the correct quote 2018-10-26 13:10:15 -07:00
Steve Klebanoff
03007e420c selected asset buy order state button -> selected asset buy order state buttons 2018-10-26 12:54:44 -07:00
Steve Klebanoff
7fa1f25e06 buy order state button -> buy order state buttons 2018-10-26 12:53:04 -07:00
Steve Klebanoff
341d7b3407 yarn.lock changes 2018-10-26 12:48:56 -07:00
Steve Klebanoff
9be4c47499 Merge branch 'development' into feature/not-enough-eth 2018-10-26 12:47:24 -07:00
Steve Klebanoff
9512978de9 feat(instant): Show message if user doesn't have enough ETH 2018-10-26 12:43:44 -07:00
Steve Klebanoff
ffecba21f4 ethDecimals -> ETH_DECIMALS 2018-10-26 12:43:08 -07:00
F. Eugene Aumson
af91a56a55 feat(order_utils.py): ERC721 asset data codec (#1186) 2018-10-26 15:13:42 -04:00
fragosti
51da5311b5 fix: init BigNumberInput not BigNumber when initializing state 2018-10-26 11:47:46 -07:00
fragosti
a414dc9b83 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/fixed-orders-in-render-method 2018-10-26 11:41:09 -07:00
F. Eugene Aumson
0f63071696 fix(order_utils.py): tweaks for first publish (#1185) 2018-10-26 14:27:57 -04:00
fragosti
951a5271e1 fix: justify error message left 2018-10-26 11:22:14 -07:00
Francesco Agosti
4c5b26db18 Merge pull request #1175 from 0xProject/feature/instant/input-fees-rounding
[instant] Create a ScalingInput component and use it in the amount input and upgrade to styled-components v4
2018-10-26 11:14:00 -07:00
Alex Browne
e1306f55ed Add note about tslint false positive 2018-10-26 10:52:12 -07:00
Amir Bandeali
d2bf23de71 Merge pull request #1192 from 0xProject/feature/contract-addresses/updateForwarder
Feature/contract addresses/update forwarder
2018-10-26 10:34:33 -07:00
fragosti
3206e1528b feat: add assertions to render method 2018-10-26 10:24:50 -07:00
Steve Klebanoff
68182fb6c4 tsx -> ts 2018-10-26 09:17:40 -07:00
Amir Bandeali
80711eafeb Update CHANGELOGs 2018-10-26 09:14:06 -07:00
Amir Bandeali
cbe595af54 feat: update addresses for Forwarder 2018-10-26 09:08:15 -07:00
Amir Bandeali
dcae27c1a4 feat: update artifact for Forwarder 2018-10-26 09:08:15 -07:00
Fabio Berger
81fb8d614f chore: Make External exports clickable on sidebar 2018-10-26 17:19:53 +02:00
Fabio Berger
3e8d9510ec Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  fix(website): round makerAssetToken amount in FillOrder component
2018-10-26 14:39:05 +02:00
Fabio Berger
a3d4482c4a Update yarn.lock 2018-10-26 14:38:57 +02:00
Kadinsky
1c5745dbd9 Merge pull request #1190 from 0xProject/fix/website/fill-order-rounding
[website] Round makerAssetToken amount in FillOrder component
2018-10-26 14:37:02 +02:00
Fabio Berger
3e75daafa1 style: reduce border size on version dropdown 2018-10-26 14:01:15 +02:00
Fabio Berger
6696aa46ee style: make line-height of sidebar title 26px, make sure still bottom aligned with version picker 2018-10-26 14:01:00 +02:00
Fabio Berger
14a9770d57 Update yarn.lock 2018-10-26 13:52:39 +02:00
Fabio Berger
b8d2cc1221 style: remove small gap under topbar 2018-10-26 13:52:29 +02:00
August Skare
89e439c521 update content in tabs 2018-10-26 09:59:10 +02:00
August Skare
0f97771d5a fix props drilling to far down 2018-10-26 09:33:30 +02:00
August Skare
74f0515370 alernate prop on inlinecode component 2018-10-26 09:23:09 +02:00
August Skare
f17c7e4a22 fix button position in code component 2018-10-26 08:50:20 +02:00
August Skare
5fe98c816d fix scrollbars in code components 2018-10-26 08:48:17 +02:00
August Skare
f75cfd8aa4 fixed links in footer 2018-10-26 08:44:27 +02:00
August Skare
7577d96671 new hover styling 2018-10-26 08:38:10 +02:00
August Skare
58f5b6d0ad new favicons 2018-10-26 08:29:21 +02:00
August Skare
a11348ce6b fix line-height in lead component 2018-10-26 08:24:44 +02:00
August Skare
a4825d8748 center logo text 2018-10-26 08:22:29 +02:00
August Skare
e3c0363db1 update codeblock in trace component 2018-10-26 08:18:04 +02:00
August Skare
3fdc6e5e47 text color in trace component 2018-10-26 08:15:43 +02:00
August Skare
2ef8204ab4 14px fontsize on code 2018-10-26 08:13:04 +02:00
August Skare
72b4ee76fb update text color on dark background 2018-10-26 08:10:31 +02:00
August Skare
3901380ffb update content on copiler page 2018-10-26 08:08:40 +02:00
Brandon Millman
22d0c76bf1 fix(website): round makerAssetToken amount in FillOrder component 2018-10-25 22:49:47 -07:00
fragosti
30809e646b Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/input-fees-rounding 2018-10-25 18:57:30 -07:00
fragosti
27d9e516e1 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/fixed-orders-in-render-method 2018-10-25 18:53:22 -07:00
fragosti
948d62200a feat: change network to networkId 2018-10-25 18:53:16 -07:00
Steve Klebanoff
39f92e4c95 Get BuyOrderState one big connected component, and let user view failure 2018-10-25 18:46:33 -07:00
fragosti
d5d99b9d2e chore: dont override toString of BigNumber and other PR feedback 2018-10-25 18:35:06 -07:00
Steve Klebanoff
4a96dbe085 Merge pull request #1184 from 0xProject/feature/instant/view-processings-txn
[instant] View Processing Transaction
2018-10-25 15:51:05 -07:00
Steve Klebanoff
ced4c893ba Show View Transaction button on failure, and allow setting of width for Try Again button and View Txn button 2018-10-25 15:42:35 -07:00
fragosti
a2d09a68b0 chore: add to asset-buyer changelog.json 2018-10-25 15:03:30 -07:00
fragosti
98cf046b4c revert: change to contract-addresses 2018-10-25 14:57:08 -07:00
Steve Klebanoff
e3510f3bcf Merge branch 'feature/instant/view-processings-txn' into feature/instant/txn-failure 2018-10-25 14:54:19 -07:00
Steve Klebanoff
89e59cca28 cleanup code 2018-10-25 14:48:59 -07:00
fragosti
0515a914e0 fix: dont fail for mainnet assetData and non-mainnet network 2018-10-25 14:48:37 -07:00
Steve Klebanoff
f04eba7773 Added string to constants 2018-10-25 14:46:30 -07:00
Steve Klebanoff
cd06c0e913 Added string to constants 2018-10-25 14:44:25 -07:00
fragosti
23b1656692 feat: support defaultAssetBuyAmount setting 2018-10-25 14:37:34 -07:00
fragosti
d06b40bd8a chore: use parseInt instead of + 2018-10-25 14:23:31 -07:00
fragosti
de18fa0069 chore: remove console log 2018-10-25 14:20:59 -07:00
fragosti
1a10715fcb feat: flash an error if the wrong network is detected 2018-10-25 14:19:40 -07:00
Steve Klebanoff
062187f28d better type names 2018-10-25 13:58:32 -07:00
Steve Klebanoff
e55d8802e1 Rework OrderState to have more simple definition 2018-10-25 13:53:35 -07:00
Steve Klebanoff
3adc6b6daa Making failure txHash required 2018-10-25 13:36:45 -07:00
Steve Klebanoff
c5e8bb1763 txnHash -> txHash 2018-10-25 13:32:37 -07:00
Steve Klebanoff
acefeff5f0 new try/catch pattern and new prop names per code review feedback 2018-10-25 13:18:17 -07:00
fragosti
2a1c2a55ed feat: supply render options from URL 2018-10-25 11:43:53 -07:00
Steve Klebanoff
45d828e154 take out unused imports 2018-10-25 09:25:49 -07:00
Steve Klebanoff
dc3b867b35 Take out old TODO 2018-10-25 09:22:49 -07:00
August Skare
fb24a18f3f fix dom elements type in intro 2018-10-25 14:15:47 +02:00
August Skare
1899493ca8 breakpoint on medium in intro component 2018-10-25 14:15:47 +02:00
August Skare
1581ced6ec add json support to highlight 2018-10-25 14:15:47 +02:00
Megan Pearson
5e8f53c7b7 Updates intro component 2018-10-25 14:15:47 +02:00
Megan Pearson
370d15ed1d Merge remote-tracking branch 'origin/dev-tools-pages' into dev-tools-pages 2018-10-25 14:12:17 +02:00
Megan Pearson
43b792f307 Fixed typos 2018-10-25 14:12:01 +02:00
Megan Pearson
b844126516 Updates intro component (#10)
* Updates intro component

* Remove unused Inner

* Use Breakout component in Intro
2018-10-25 13:04:50 +01:00
August Skare
43e55a963b Feature/syntaxhighlighting (#9)
* wip code highlighting of lines

* Implements gutter component

* WIP: Profiler with gutter

* cleaned up highlight code

* Removes before content for gutter styling

* Styles gutter

* Add correct Profiler code content

* Adds color variable for gutter gray

* refactor code component width gutter and diffing
2018-10-25 12:19:56 +01:00
Megan Pearson
9cf055c159 Add highlighter.js; basic styling for .diff classes; Start of code block in cov 2018-10-25 13:13:00 +02:00
Megan Pearson
16b5157078 Updates Intro Component to use IntroBody and IntroAside 2018-10-25 13:12:38 +02:00
August Skare
1ae9f68db8 Content (#7)
* optional children in List component

* added real content to trace page

* added real content to cov page

* add support for json highlighting

* real content on compiler page

* real content on profiler page

* remove unused import

* remove list from compiler page

* wrap code components in pages with breakout component

* fix font size on text

* fix typo
2018-10-25 12:10:35 +01:00
August Skare
e5d3e3b33a Feature/tweaks (#8)
* show copy button on focs

* change base link styling

* text-decoration underline on basic links

* basic hover and focus styles on button and tabs

* add links in footer

* change breakpoints vars

* medium breakpoint on footer
2018-10-25 10:54:53 +01:00
August Skare
1c8ea1336e Feature/animations (#6)
* test animation

* test two part video

* new video test

* replace videos with gifs

* rename videos folder to images

* sol-cov gifs

* renames variables

* compiler gif

* change in hero srcset

* better positioning of hero image
2018-10-25 10:50:09 +01:00
Steve Klebanoff
b7f4062ac8 feat(instant): Be able to view transaction when transaction is in progress 2018-10-24 16:17:01 -07:00
Steve Klebanoff
73f5ea2906 Associate txnhash with processing state 2018-10-24 16:04:09 -07:00
Alex Browne
11bc10a3ae Merge pull request #1151 from 0xProject/fix-update-migrations-readme
Update migrations README.
2018-10-24 14:51:36 -07:00
Alex Browne
e45ce4c167 Merge pull request #1182 from 0xProject/albrow-codeowners
Add albrow to CODEOWNERS
2018-10-24 14:45:26 -07:00
Brandon Millman
85b7362073 Merge pull request #1176 from 0xProject/fix/asset-buyer/rounding-errors
[asset-buyer] Fix calculation for ETH and ZRX amount to cover orders
2018-10-24 14:30:18 -07:00
fragosti
46a8aad87a feat: no longer require separate orders and feeOrders args in getAssetBuyerForProvidedOrders
BREAKING_CHANGE: `getAssetBuyerForProvidedOrders` factory function now takes 3 args instead of 4
2018-10-24 14:12:24 -07:00
fragosti
ab2759f431 chore: update comments 2018-10-24 13:47:00 -07:00
fragosti
379f7c7883 chore: use alternate syntax for styled 2018-10-24 13:44:00 -07:00
fragosti
c7a063ca47 fix: weird linting error that depends on types 2018-10-24 13:38:28 -07:00
Steve Klebanoff
db3ad83ebc Introduce new OrderProcessState 2018-10-24 13:24:35 -07:00
Steve Klebanoff
979527a5ee Merge pull request #1180 from 0xProject/feature/instant/metamask-denial
[instant]Message when signature denied
2018-10-24 13:22:04 -07:00
fragosti
2d9c961d4f feat: change to increasing input width by a constant amount per additional character 2018-10-24 13:05:52 -07:00
fragosti
11f7f2d29f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/input-fees-rounding 2018-10-24 12:57:25 -07:00
fragosti
c5554fe30c chore: run linter 2018-10-24 12:57:20 -07:00
fragosti
6da6540c03 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/input-fees-rounding 2018-10-24 12:56:11 -07:00
Steve Klebanoff
059868e994 Merge pull request #1179 from 0xProject/feature/instant/processing-state
[instant] Success and Processing state
2018-10-24 12:53:18 -07:00
fragosti
f89b314a94 fix: address PR feedback 2018-10-24 12:52:32 -07:00
Alex Browne
06ba26a6d3 Merge pull request #1181 from snario/patch-1
Update README.md
2018-10-24 12:43:38 -07:00
Alex Browne
e50decfa8a Add albrow to CODEOWNERS 2018-10-24 12:41:43 -07:00
Liam Horne
78fb43f59c Update README.md 2018-10-24 15:23:44 -04:00
Steve Klebanoff
09f0bf7f00 Get rid of react-shared as a dependency, write own etherscanUtil 2018-10-24 11:50:05 -07:00
Steve Klebanoff
05ce8aa124 feat: Message when denying signing transaction 2018-10-24 10:42:52 -07:00
Steve Klebanoff
ce5bc3c1c9 Message when signature denied 2018-10-24 10:38:56 -07:00
Steve Klebanoff
33d8044f02 bumping up max bundle size for now (introducing react-shared added a lot), will optimize later 2018-10-24 09:55:13 -07:00
Steve Klebanoff
fefb64442a Get rid of unused import 2018-10-24 09:04:10 -07:00
Steve Klebanoff
119c4e2dc6 Revert "commiting addtl changes to yarn.lock from running yarn"
This reverts commit c1f9f2e8d9.
2018-10-24 08:48:19 -07:00
Steve Klebanoff
c1f9f2e8d9 commiting addtl changes to yarn.lock from running yarn 2018-10-24 08:47:39 -07:00
Steve Klebanoff
38f47a380b Merge branch 'development' into feature/instant/processing-state 2018-10-24 08:46:58 -07:00
Steve Klebanoff
8635f8d732 Merge pull request #1170 from 0xProject/feature/instant/failure-state
[instant] Failure state
2018-10-24 08:38:03 -07:00
fragosti
47737d4d0f feat: cover more token symbol edge cases 2018-10-23 20:05:43 -07:00
Alex Browne
b737313d16 chore: Update contract-wrappers CHANGELOG.json 2018-10-23 18:36:15 -07:00
Alex Browne
9c26334eff fix(contract-wrappers): Fix tslint errors that were lingering due to misconfiguration 2018-10-23 18:30:58 -07:00
Alex Browne
2c04ee3f5e chore: Add --format stylish to tslint 2018-10-23 18:30:11 -07:00
Steve Klebanoff
4df8e60f42 rename container 2018-10-23 17:36:25 -07:00
Steve Klebanoff
df7a1bd8de rename action to resetAmount 2018-10-23 17:32:32 -07:00
Steve Klebanoff
657ae0cf57 null -> undefined 2018-10-23 17:32:20 -07:00
Steve Klebanoff
d43f89fa0a move buy order state to its own component 2018-10-23 17:28:27 -07:00
fragosti
2e184f081e feat: add title attribute to label 2018-10-23 17:17:10 -07:00
Steve Klebanoff
3cd9f40e63 Merge branch 'development' into feature/instant/failure-state 2018-10-23 17:15:23 -07:00
fragosti
8e501e5ec7 feat: add formatted symbol for asset uitl 2018-10-23 17:08:34 -07:00
Steve Klebanoff
4c4286ac66 feat(instant): Procesing and Success states 2018-10-23 17:06:45 -07:00
Francesco Agosti
4a72dc6c6f Merge pull request #1159 from 0xProject/feature/instant/beta-render-et-al
[instant] Pass in liquiditySource, assetData and other settings from render
2018-10-23 17:00:54 -07:00
fragosti
7ccfa8a8af feat: support half-written decimal numbers in BigNumberInput 2018-10-23 16:59:31 -07:00
fragosti
751b87af96 fix: remove unused callback info 2018-10-23 16:28:08 -07:00
Alex Browne
2110ac32b7 Merge pull request #1177 from 0xProject/fix/web3-wrapper-transaction-type
Make getTransactionByHashAsync return the correct type
2018-10-23 16:25:51 -07:00
Alex Browne
c2e8390d21 chore: Fix linter 2018-10-23 16:12:48 -07:00
Alex Browne
075f3c9bfe chore(web3-wrapper): Update CHANGELOG.json 2018-10-23 16:00:40 -07:00
Alex Browne
6027e275b1 fix(web3-wrapper): Make getTransactionByHashAsync return the correct type 2018-10-23 15:56:20 -07:00
fragosti
a5edb0b421 polish: improve scaling significantly 2018-10-23 15:54:18 -07:00
Brandon Millman
da54fc3296 chore(asset-buyer): fix lint errors 2018-10-23 15:32:55 -07:00
fragosti
053e147afc fix: remove the concept of initial with from scaling input and remove phase 2018-10-23 15:19:01 -07:00
fragosti
f0c79473bd fix: dont allow heading to change height when input size changes 2018-10-23 15:01:22 -07:00
fragosti
864f89c535 chore: incorportate pr feedback 2018-10-23 14:13:06 -07:00
Brandon Millman
4db33ba2b3 feat(asset-buyer): update buyQuoteCalculator to match rounding behavior in contracts 2018-10-23 14:06:21 -07:00
Brandon Millman
37f87ab267 Merge pull request #1147 from 0xProject/feature/asset-buyer/signing-request-error
[asset-buyer][contract-wrappers] Throw SignatureRequestDenied and TransactionValueTooLow errors from AssetBuyer
2018-10-23 10:33:33 -07:00
Amir Bandeali
104b2ed759 Merge pull request #1162 from 0xProject/fix/contracts/forwarderRounding
[WIP] Round up for Market Buys in Forwarding Contract.
2018-10-23 10:31:06 -07:00
Amir Bandeali
56953320b3 Run prettier and linter 2018-10-23 10:07:48 -07:00
Brandon Millman
af2bf053bc feat(contract-wrappers): relax requirement for throwing ContractWrappersError.SignatureRequestDenied 2018-10-23 10:02:00 -07:00
Brandon Millman
117ee19370 feat(asset-buyer): throw SignatureRequestDenied and TransactionValueTooLow errors when executing buy 2018-10-23 10:02:00 -07:00
Brandon Millman
dcd428a4a2 feat(monorepo-scripts): add ForwarderWrapperError to IGNORED_EXCESSIVE_TYPES in docGenConfigs 2018-10-23 10:01:46 -07:00
Greg Hysen
e086c7b8e6 Round up for Market Buys in Forwarding Contract. Includes new test cases + regression testing. 2018-10-23 09:56:03 -07:00
F. Eugene Aumson
1f0c7f8fbe feat(order_utils.py): ERC20 asset data encoding and decoding
In addition to the ERC20 codec, also:

Stopped ignoring type errors on 3rd party imports, by including
interface stubs for them;
Removed the unimplemented signature-utils module, which was just a
stand-in when the python project support was first put in place.

https://github.com/0xProject/0x-monorepo/pull/1144
2018-10-23 12:08:16 -04:00
August Skare
a4de585feb Feature/colors (#5)
* fix color variables

* rename link var to type
2018-10-23 12:34:35 +01:00
Megan Pearson
e624759bc7 Merge pull request #4 from bakkenbaeck/feature/moreresponsive
Feature/moreresponsive
2018-10-23 10:18:12 +02:00
August Skare
0836ab370e Update margin-bottom
Co-Authored-By: mepearso <megan.e.pearson@gmail.com>
2018-10-23 10:17:48 +02:00
Megan Pearson
66848ef80f Responsive Compiler 2018-10-23 09:59:09 +02:00
Megan Pearson
f0b9365ca9 Responsive intro, again 2018-10-23 09:59:09 +02:00
Megan Pearson
614ca51cb1 Adds wide prop for full width sections 2018-10-23 09:58:34 +02:00
Megan Pearson
f31f9eb24e Implements Lead typography 2018-10-23 09:57:53 +02:00
Brandon Millman
b75fe10c79 feat(contract-wrappers): export ForwarderWrapperError and ContractWrapperError.SignatureRequestDenied 2018-10-22 22:44:13 -07:00
fragosti
b7a5e40c62 chore: run linter 2018-10-22 17:56:50 -07:00
fragosti
28f0deb3eb chore: final adjustments 2018-10-22 17:42:28 -07:00
fragosti
bdf623dab5 chore: refactor ScalingInput 2018-10-22 16:54:08 -07:00
fragosti
921492e818 feature: reduce font size by a percentage instead of a constant 2018-10-22 16:45:48 -07:00
Steve Klebanoff
194cbc3ba9 Make icon a bit better 2018-10-22 15:57:16 -07:00
Brandon Millman
1ba207f1fe fix(website): asset-buyer usage documentation formatting 2018-10-22 15:33:55 -07:00
fragosti
c5014af7fe chore: run linter 2018-10-22 15:27:35 -07:00
Steve Klebanoff
579a49ba91 Placing order button 2018-10-22 14:28:22 -07:00
Steve Klebanoff
071f9a5a73 Spinner: change prop names and fix svg props 2018-10-22 14:28:02 -07:00
Steve Klebanoff
4bf1ca0d17 Making SecondaryButton accept children instead of text prop 2018-10-22 14:27:38 -07:00
fragosti
5e67756037 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/beta-render-et-al 2018-10-22 14:26:35 -07:00
fragosti
48e4452a04 feat: add tests for assetUtils 2018-10-22 14:20:20 -07:00
Kadinsky
be97eebe02 Merge pull request #1173 from 0xProject/fixSchemaBug
Fix number schema bug
2018-10-22 23:01:30 +02:00
fragosti
37c5165319 feat: add asset tests 2018-10-22 14:01:08 -07:00
fragosti
15ed3b35df chore: change order of code to be clearer 2018-10-22 13:50:08 -07:00
Brandon Millman
19f9649e74 Merge pull request #1174 from 0xProject/fix/website/kovan
[website] Fix broken order signing on portal and broken loading on kovan
2018-10-22 13:49:52 -07:00
Steve Klebanoff
d52a04e725 Spinner no longer wobbly 2018-10-22 13:18:37 -07:00
Steve Klebanoff
daf447361f WIP: spinner 2018-10-22 13:11:29 -07:00
Brandon Millman
1a3b1607b1 fix(website): create correct subprovider for metamask 2018-10-22 10:56:39 -07:00
Brandon Millman
2bb53d5b1d fix(website): do not fetch balances for empty tokens 2018-10-22 10:56:11 -07:00
Brandon Millman
38eaacdd44 Update yarn.lock 2018-10-22 10:55:34 -07:00
fragosti
77a4d7e2b7 feat: have basic scaling amount input working 2018-10-22 10:50:25 -07:00
Megan Pearson
bc029df082 Merge branch 'feature/variables' into dev-tools-pages 2018-10-22 17:05:27 +02:00
Megan Pearson
63b53acd48 Merge branch 'dev-tools-pages' into feature/variables 2018-10-22 14:28:05 +02:00
Megan Pearson
50eee9a657 Merge branch 'feature/alternate-main' into dev-tools-pages 2018-10-22 14:11:20 +02:00
Megan Pearson
917952bc2a Remove unused imports 2018-10-22 14:04:23 +02:00
August Skare
00afb2440d remove contentBlock from content component 2018-10-22 13:27:49 +02:00
August Skare
8cf720986e rename Main to Content 2018-10-22 13:27:49 +02:00
August Skare
97c54f84f0 remove container from all pages 2018-10-22 13:27:49 +02:00
August Skare
e485a98143 support dark alternative of Main component 2018-10-22 13:27:49 +02:00
Megan Pearson
1e29f2875d Remove font size adjustment for small screens from Beta 2018-10-22 13:27:35 +02:00
Megan Pearson
61cd36cc96 Responsive footer 2018-10-22 13:27:35 +02:00
Megan Pearson
a9b4c1cba8 Responsive font sizes in typography and globalstyles 2018-10-22 13:27:35 +02:00
Megan Pearson
5187017f21 Responsive trace 2018-10-22 13:27:35 +02:00
Megan Pearson
73ea2dac6d Responsive header 2018-10-22 13:27:35 +02:00
Megan Pearson
e9232bf070 Exports media breakpoints 2018-10-22 13:27:35 +02:00
Megan Pearson
ee3538262d Changed name of export to colors and updates components 2018-10-22 13:27:35 +02:00
Megan Pearson
47b281b754 Implements color variables and updates components 2018-10-22 13:27:35 +02:00
Megan Pearson
dfa03feb43 Responsive Intro 2018-10-22 11:55:02 +02:00
Megan Pearson
49beb6b7a3 Add light prop to code 2018-10-22 09:53:58 +02:00
Megan Pearson
6066db8f42 Responsive list 2018-10-22 09:53:22 +02:00
August Skare
68c1818139 breakout container for small screens 2018-10-22 09:20:54 +02:00
August Skare
12087b6b70 ligt theme on code 2018-10-22 09:11:37 +02:00
August Skare
15a3c234c5 dont shrink icons in trace component 2018-10-22 09:05:07 +02:00
August Skare
bf7443c985 button styling on small screens 2018-10-22 09:02:59 +02:00
August Skare
6c39d498c2 code fontsize on small screens 2018-10-22 08:52:21 +02:00
August Skare
cacb8acf76 hero spacing adjustment on small screen 2018-10-22 08:46:46 +02:00
August Skare
c1082b9b08 spacing adjustments on contentblock and main components 2018-10-22 08:40:38 +02:00
August Skare
d3c5c68296 remove padding on Trace component on small breakpoint 2018-10-22 08:40:07 +02:00
August Skare
39fd3fd866 spacing adjustment in footer 2018-10-22 08:29:41 +02:00
August Skare
7ed95d3954 don't shrink icons in footer 2018-10-22 08:27:41 +02:00
August Skare
4dc91c86ae keep fonts folder in git 2018-10-22 08:21:34 +02:00
Fabio Berger
dbf75a43c3 Add wholeNumberSchema test 2018-10-21 20:31:35 +02:00
Fabio Berger
39c7f3dc88 chore: fix file name 2018-10-21 20:30:53 +02:00
Fabio Berger
01f82ddf78 chore: Add whole number to next json-schema doc md section 2018-10-21 20:24:38 +02:00
Fabio Berger
24b5b35a74 chore: link to schemas at a particular commit so it doesn't change when they are updated 2018-10-21 20:22:51 +02:00
Fabio Berger
4dfbc6747e Fix links 2018-10-21 20:08:22 +02:00
Fabio Berger
528ae4376e revert unrelated change 2018-10-21 19:27:42 +02:00
Fabio Berger
e0149618f3 Add changelog 2018-10-21 19:26:06 +02:00
Fabio Berger
632d7b6fc1 fix: improve schemas by enforcing that amounts that must be whole numbers (e.g Order asset amounts) no longer allow decimal numbers 2018-10-21 19:24:19 +02:00
Fabio Berger
b9dccf9da3 chore: add whole number schema 2018-10-21 19:20:36 +02:00
Fabio Berger
7e24c04c0b fix: Update address to ZRX token to newly deployed 'mintable' ZRX token on Kovan/Ropsten 2018-10-20 15:01:29 +01:00
Steve Klebanoff
a766d78706 Remove hack fix 2018-10-19 16:41:39 -07:00
Steve Klebanoff
bf0a4bd91b feat(instant): Add failure state and icon 2018-10-19 16:41:39 -07:00
Steve Klebanoff
51779fec38 linting 2018-10-19 16:11:01 -07:00
Steve Klebanoff
ac2d93ab22 Small refacotor of icons or amounts part 2018-10-19 16:06:42 -07:00
Steve Klebanoff
092d010c2d Render failure icon 2018-10-19 15:57:11 -07:00
Steve Klebanoff
30b0770993 Merge branch 'feature/instant/beta-render-et-al' into feature/instant/failure-state 2018-10-19 15:40:44 -07:00
fragosti
a017f5e385 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/beta-render-et-al 2018-10-19 15:01:54 -07:00
fragosti
6510454337 feat: add scaling input component 2018-10-19 14:58:12 -07:00
Steve Klebanoff
d2766d7ced Selected Asset button 2018-10-19 14:49:38 -07:00
Steve Klebanoff
6c79a858df WIP: clear buy quote working 2018-10-19 13:51:57 -07:00
fragosti
f06541ec94 fix: animation component typing 2018-10-19 13:46:31 -07:00
fragosti
d5105b5c9f feat: user better syntax for defining ui components 2018-10-19 13:45:12 -07:00
Steve Klebanoff
17b282b1d7 wip: retry button 2018-10-19 13:42:42 -07:00
fragosti
43ad2fe23b feat: upgrade to styled-components v4 2018-10-19 13:34:42 -07:00
Amir Bandeali
2c308c0f4c Merge pull request #1168 from 0xProject/feature/contracts/updateReadme
Update links, remove 1.0 from contracts README
2018-10-19 13:29:04 -07:00
Amir Bandeali
d8001e696e Update links, remove 1.0 from README 2018-10-19 13:12:25 -07:00
Steve Klebanoff
aeb607d485 Merge pull request #1161 from 0xProject/feature/instant/order-details-loading-state
[instant] Order details loading state
2018-10-19 12:28:52 -07:00
Steve Klebanoff
c070142dc0 linting 2018-10-19 12:08:33 -07:00
Steve Klebanoff
6f80c7e6d9 arrow function syntax so no need to bind 2018-10-19 12:05:57 -07:00
Steve Klebanoff
48dd9569f7 Icon component for Instant 2018-10-19 11:58:52 -07:00
Kadinsky
c66e2f6704 Merge pull request #1164 from 0xProject/additionalDevFixes
Additional Developer Section Fixes
2018-10-19 19:47:58 +01:00
Fabio Berger
b49e5c76e4 Use em for all 2018-10-19 19:38:20 +01:00
Fabio Berger
ce4da870d7 chore: use Text 2018-10-19 19:38:12 +01:00
Steve Klebanoff
6588cf919e dont export PlainPlaceholder 2018-10-19 10:34:44 -07:00
Steve Klebanoff
2f4e498a09 Refactor to make placeholder logic more straightforward 2018-10-19 10:32:37 -07:00
Steve Klebanoff
66465816ca Getting rid of displayName, and rename usdSection -> _renderUsdSection 2018-10-19 10:19:48 -07:00
Fabio Berger
bce9031868 chore: use colors module 2018-10-19 17:44:49 +01:00
fragosti
100f446031 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/beta-render-et-al 2018-10-19 09:44:47 -07:00
Fabio Berger
0de654bbd5 fix: scroll lag on doc reference and wiki pages by using react-scroll spy and only updating the sidebar menu items whose active state had changed 2018-10-19 17:40:55 +01:00
Francesco Agosti
eb3a4d2fab Merge pull request #1148 from 0xProject/feature/instant/discharge
[instant] Create dogfood url and deployment workflow
2018-10-19 09:38:36 -07:00
fragosti
48f1e6057c chore: run linter 2018-10-19 09:23:58 -07:00
Fabio Berger
d129c922ed Use media module 2018-10-19 17:22:33 +01:00
fragosti
6f2217570f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/discharge 2018-10-19 09:19:37 -07:00
Fabio Berger
90ba8e0e8d Remove unused listeners 2018-10-19 17:09:13 +01:00
August Skare
7d7f54c751 Feature/build step (#2)
* BundleAnalyzerPlugin

* lazy load highlight.js

* seperate bundles for each page

* prerender apps to html on build

* preload important font files

* dont prerender code copy button

* fix woff2 variant of font

* added missing doctype

* remove metatags component
2018-10-19 16:05:09 +02:00
August Skare
580e574c84 Feature/build step (#2)
* BundleAnalyzerPlugin

* lazy load highlight.js

* seperate bundles for each page

* prerender apps to html on build

* preload important font files

* dont prerender code copy button

* fix woff2 variant of font

* added missing doctype

* remove metatags component
2018-10-19 15:02:15 +01:00
Leonid Logvinov
669ea191a5 Merge pull request #1165 from 0xProject/fix/release-notes-versions
Fix the package versions in release notes
2018-10-19 15:44:52 +02:00
Leonid Logvinov
3f2b6482c3 Fix the package versions in release notes 2018-10-19 15:36:46 +02:00
Megan Pearson
736e1717fa Merge branch 'feature/responsive' into feature/variables 2018-10-19 15:36:38 +02:00
Megan Pearson
d6ac1a4f78 Remove font size adjustment for small screens from Beta 2018-10-19 15:32:02 +02:00
Megan Pearson
8a7c61c6f4 Responsive footer 2018-10-19 15:31:26 +02:00
Fabio Berger
16ba01cd2e chore: fix dropdown bug on Firefox and reduced duplicate code 2018-10-19 14:05:37 +01:00
Fabio Berger
7282e3ce03 style: Switch out homepage image with improved one from Ben 2018-10-19 14:04:17 +01:00
Megan Pearson
9a024fdacf Responsive font sizes in typography and globalstyles 2018-10-19 14:30:38 +02:00
Megan Pearson
135a623b1f Responsive trace 2018-10-19 14:29:59 +02:00
Fabio Berger
977e20edc3 style: make sure sideBar bottom padding is on scrollable content, not container 2018-10-19 13:27:16 +01:00
Kadinsky
17643d98aa Merge pull request #1163 from 0xProject/devSectionFixes
Developer Section Fixes
2018-10-19 12:34:26 +01:00
Fabio Berger
724f3b9cf7 Improve sidebar logic to handle MS Edge, Firefox differences between Windows & Mac 2018-10-19 12:25:31 +01:00
Fabio Berger
a7a17c85dc chore: improve sidebar scroll 2018-10-19 11:48:15 +01:00
Fabio Berger
7742df8614 chore: Replace state with styled-components for hover detection 2018-10-19 11:27:42 +01:00
Megan Pearson
ba0b9b259f Responsive header 2018-10-19 11:59:03 +02:00
Fabio Berger
26cd5ec149 style: accomodate different scrollbar widths on Firefox vs. Chrome/Safari 2018-10-19 10:46:55 +01:00
Fabio Berger
da0c5dd9d3 chore: Fix scroll issue by bumping version and installing from new branch 2018-10-19 10:35:34 +01:00
Megan Pearson
45a24738b5 Exports media breakpoints 2018-10-19 11:33:41 +02:00
Megan Pearson
585ca203b0 Changed name of export to colors and updates components 2018-10-19 11:32:59 +02:00
Fabio Berger
a60cf44d45 style: fix doc reference package name capitalization 2018-10-19 10:16:01 +01:00
Fabio Berger
62f219ea74 Merge branch 'development' into devSectionFixes
* development:
  chore: Update list of published packages in top-level README
2018-10-19 10:09:23 +01:00
Fabio Berger
c26b3f5dfc copy: consistently name ERCdEX with correct capitalization 2018-10-19 10:05:19 +01:00
Fabio Berger
0eb9769cd4 Switch tutorial descriptions 2018-10-19 10:00:30 +01:00
Fabio Berger
eca862f818 copy: Networked liquidity -> shared liquidity 2018-10-19 09:56:34 +01:00
Fabio Berger
3f43f9bb4c fix: Make sure page scrollable on mobile 2018-10-19 09:44:52 +01:00
Fabio Berger
ee6bb229e0 Don't show topBar menu items in sidebar on wiki 2018-10-19 09:44:27 +01:00
Megan Pearson
561f441a5b Implements color variables and updates components 2018-10-19 09:37:14 +02:00
fragosti
f3a6800306 fix: dont force NFTs to uppercase their name 2018-10-18 18:08:49 -07:00
fragosti
7bc2df5602 feat: add network to state and use it where relevant 2018-10-18 17:42:32 -07:00
Steve Klebanoff
1737411ab7 Show order failed messaging when order fails 2018-10-18 17:16:28 -07:00
fragosti
7a8adf9db5 feat: use color from metaData instead of default primaryColor 2018-10-18 16:35:59 -07:00
fragosti
ad6dc8e891 fix: refactor ZeroExInstant state creation logic and fix bug 2018-10-18 16:04:51 -07:00
fragosti
44635f34f0 fix: error test undefined case 2018-10-18 15:54:53 -07:00
fragosti
b4fb6b5ff3 fix: add error message and move more logic to assetUtils 2018-10-18 15:48:35 -07:00
fragosti
c87e68f833 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/beta-render-et-al 2018-10-18 15:42:33 -07:00
Steve Klebanoff
ff1f0a9678 undefined -> null to follow convention 2018-10-18 15:33:14 -07:00
Steve Klebanoff
aa0e07b058 pulsating -> isPulsating 2018-10-18 15:33:14 -07:00
Steve Klebanoff
a42347a776 Allow more than 1 class per file
Felt silly that refactoring a component defined as a function to a class with a helper function caused a tslint violation
2018-10-18 15:33:14 -07:00
Steve Klebanoff
8ff5e19269 Move USD section into helper function 2018-10-18 15:33:14 -07:00
Steve Klebanoff
8a6e077664 feat(instant): Indicate that order details section is loading by having pulsing placeholder 2018-10-18 15:32:32 -07:00
Alex Browne
f9d8610383 Merge pull request #1160 from 0xProject/fix/published-packages-list
Update list of published packages in top-level README
2018-10-18 13:50:55 -07:00
Steve Klebanoff
b4af27dd44 Moved LatestErrorDisplay to types file and gave generic name 2018-10-18 13:48:28 -07:00
Steve Klebanoff
9aa6753823 Rename update function to set function since it doesnt take a parameter 2018-10-18 13:42:59 -07:00
Steve Klebanoff
94ace00e0c fix camel casing of updateBuyOrderState 2018-10-18 13:38:04 -07:00
Steve Klebanoff
12b6877aeb Pulsating holder element showing, even if amount is empty 2018-10-18 13:31:11 -07:00
Kadinsky
65d85ca500 Merge pull request #1158 from 0xProject/docSectionFixes
Update Doc Ref Markdown Sections
2018-10-18 21:15:31 +01:00
Alex Browne
3f0059d4bb chore: Update list of published packages in top-level README 2018-10-18 13:10:49 -07:00
Steve Klebanoff
4b348e1e60 quoteState -> quoteRequestState 2018-10-18 11:09:23 -07:00
fragosti
a764dfa789 feat: MVP of passing in sraApiUrl, assetData and other settings from render method 2018-10-18 10:43:41 -07:00
Fabio Berger
c2038eae5b Merge branch 'development' into docSectionFixes
* development:
  Remove 0x.js -> monorepo-scripts dependency
  Don't attempt publishing if no packages need it
2018-10-18 17:42:24 +01:00
Fabio Berger
c4ae91c7c5 Update doc ref markdown sections 2018-10-18 17:31:38 +01:00
Leonid Logvinov
857eb95ac0 Merge pull request #1157 from 0xProject/feature/fix-monorepo-scripts
Don't attempt publishing if no packages need it
2018-10-18 16:39:00 +02:00
Leonid Logvinov
4fd3f12aeb Remove 0x.js -> monorepo-scripts dependency 2018-10-18 16:25:13 +02:00
Leonid Logvinov
a7336d3c65 Don't attempt publishing if no packages need it 2018-10-18 16:16:27 +02:00
Leonid Logvinov
8b62b350b1 Publish
- 0x.js@2.0.0
 - @0x/abi-gen@1.0.14
 - @0x/abi-gen-wrappers@1.0.1
 - @0x/assert@1.0.14
 - @0x/asset-buyer@2.1.0
 - @0x/base-contract@3.0.2
 - @0x/connect@3.0.2
 - @0x/contract-addresses@1.0.1
 - @0x/contract-artifacts@1.0.1
 - @0x/contract-wrappers@3.0.0
 - contracts@2.1.50
 - @0x/dev-tools-pages@0.0.2
 - @0x/dev-utils@1.0.13
 - ethereum-types@1.1.1
 - @0x/fill-scenarios@1.0.8
 - @0x/instant@0.0.3
 - @0x/json-schemas@2.0.0
 - @0x/metacoin@0.0.24
 - @0x/migrations@2.0.0
 - @0x/monorepo-scripts@1.0.12
 - @0x/order-utils@2.0.0
 - @0x/order-watcher@2.2.0
 - @0x/react-docs@1.0.14
 - @0x/react-shared@1.0.17
 - @0x/sol-compiler@1.1.8
 - @0x/sol-cov@2.1.8
 - @0x/sol-doc@1.0.3
 - @0x/sol-resolver@1.0.15
 - @0x/sra-spec@1.0.7
 - @0x/subproviders@2.1.0
 - @0x/testnet-faucets@1.0.52
 - @0x/tslint-config@1.0.9
 - @0x/types@1.2.0
 - @0x/typescript-typings@3.0.3
 - @0x/utils@2.0.3
 - @0x/web3-wrapper@3.1.0
 - @0x/website@0.0.55
2018-10-18 16:03:00 +02:00
Leonid Logvinov
71d1e6b0ec Updated CHANGELOGS 2018-10-18 16:02:49 +02:00
Leonid Logvinov
7e49db2301 Fix ethereum-types versions 2018-10-18 15:52:32 +02:00
Leonid Logvinov
4b95e3d684 Merge pull request #1156 from 0xProject/feature/0x/npm-domain
Move package org from 0xproject to 0x
2018-10-18 15:46:33 +02:00
Leonid Logvinov
392d339443 Add index signature to FakeTokenRegistry 2018-10-18 15:37:22 +02:00
Leonid Logvinov
ece76e5874 Fix prettier issues 2018-10-18 15:27:07 +02:00
August Skare
30f7f83573 added trace component to trace view 2018-10-18 15:25:08 +02:00
Fabio Berger
8cb6d99f17 chore: update yarn.lock 2018-10-18 14:18:39 +01:00
Fabio Berger
ac377490dc chore: add missing import 2018-10-18 14:09:02 +01:00
Fabio Berger
058c887353 chore: missing converts 2018-10-18 14:08:26 +01:00
Fabio Berger
0affc7682f chore: fix imports 2018-10-18 14:06:12 +01:00
Fabio Berger
1c68bdabaa chore: fix dep 2018-10-18 14:03:09 +01:00
Fabio Berger
683c6f22af chore: add missing imports 2018-10-18 14:03:00 +01:00
Fabio Berger
8c6de7f69d chore: replace @0xproject with @0x in .tsx files 2018-10-18 13:59:40 +01:00
Fabio Berger
4bf50a0496 update outdated package and tsconfig issue 2018-10-18 13:59:21 +01:00
Fabio Berger
745d368130 Remove old 0x.js from website 2018-10-18 13:50:03 +01:00
Jacob Evans
aa4a474e1d chore: update ethers import in utils 2018-10-18 23:11:56 +11:00
August Skare
97646571a1 tweaking header and hero position and sizing 2018-10-18 14:09:02 +02:00
August Skare
ac60d45969 compiler component in compiler view 2018-10-18 14:08:46 +02:00
August Skare
afa52e280c intro component on cov view 2018-10-18 13:59:16 +02:00
August Skare
c57c9752a2 intro component in profiler view 2018-10-18 13:58:07 +02:00
Jacob Evans
ff99f84f15 chore: update yarn.lock 2018-10-18 22:51:59 +11:00
Jacob Evans
10ff723287 chore: change abi-gen-wrappers ethereum-types version 2018-10-18 22:31:06 +11:00
Jacob Evans
56ef712d26 chore: change circleci config from 0xproject to 0x 2018-10-18 22:31:06 +11:00
Jacob Evans
2735fb4fa6 chore: change README.md from 0xproject to 0x 2018-10-18 22:30:09 +11:00
August Skare
b158a6d722 initial commit 2018-10-18 13:28:44 +02:00
Jacob Evans
88c929a408 chore: change tslint.json from 0xproject to 0x 2018-10-18 22:28:38 +11:00
Jacob Evans
9f924e459c chore: change package org from 0xproject to 0x 2018-10-18 22:27:31 +11:00
Leonid Logvinov
9e8bca69a8 Merge pull request #1155 from 0xProject/feature/RIP-sra-report
Remove sra-report
2018-10-18 13:24:49 +02:00
Kadinsky
325af82217 Merge pull request #1154 from 0xProject/dev-section-redesign
[BASE_BRANCH] Developer section redesign
2018-10-18 12:20:50 +01:00
Leonid Logvinov
f8876ab60b Remove sra-report 2018-10-18 13:15:39 +02:00
Kadinsky
47dc384ea3 Merge pull request #1140 from 0xProject/reSkinReferenceDocs
Move Doc Reference Pages & Wiki into Developer Section of Website
2018-10-18 12:14:32 +01:00
Leonid Logvinov
f74080fe0d Fix prettier 2018-10-18 13:06:09 +02:00
Fabio Berger
e7c6f2a357 Add styled-components dep 2018-10-18 12:04:19 +01:00
Fabio Berger
56cb2470cc chore: fix up asset-buyer doc and add to Dev Home 2018-10-18 12:01:01 +01:00
Leonid Logvinov
ea65fa4f65 Merge pull request #1153 from 0xProject/feature/enable-linter
Enable linter on generated abi-gen wrappers
2018-10-18 12:48:53 +02:00
Leonid Logvinov
d5daa68703 Enable linter on generated abi-gen wrappers 2018-10-18 12:46:06 +02:00
Fabio Berger
28863f9a6f merge dev-section-redesign 2018-10-18 11:36:41 +01:00
Fabio Berger
cdd650d0eb merge development 2018-10-18 11:35:07 +01:00
Kadinsky
bd8ba14bf4 Merge pull request #1152 from 0xProject/feature/website/hide-v1-volume
[website] Add expanded and minimized display types to relayer grid
2018-10-18 11:32:07 +01:00
Fabio Berger
6ab6a9aa2b Update react-scroll hash to avoid collision with older, unfixed branch 2018-10-18 11:28:48 +01:00
Kadinsky
d0df074721 Merge pull request #1142 from 0xProject/feature/instant/asset-buyer-errors
[instant] Asset buyer errors
2018-10-18 11:12:24 +01:00
Fabio Berger
612e8db930 Update changelogs for unpublished packages 2018-10-18 10:39:37 +01:00
Jacob Evans
376034ac7e Update changelog entries for unpublished packages 2018-10-18 20:03:22 +11:00
Brandon Millman
95775dca1f feat(website): add expanded and minimized display types to relayer grid 2018-10-18 00:10:33 -07:00
Alex Browne
9f61735f94 fix(migrations): Update README.md.
Removed older v1 and v2-testnet-beta scripts from the README.
2018-10-17 17:36:18 -07:00
Jacob Evans
86aa5f9643 Merge pull request #1150 from 0xProject/fix/publishing/doc-gen-order-utils-constant
fix(order-utils): remove constants export
2018-10-18 11:20:19 +11:00
Jacob Evans
02cf99fa36 fix(order-utils): remove constants export 2018-10-18 11:07:00 +11:00
Steve Klebanoff
6ea386a7af selectedAssetBuyState -> buyOrderState 2018-10-17 16:50:21 -07:00
Steve Klebanoff
1d38b75d6f fix type 2018-10-17 16:49:57 -07:00
Steve Klebanoff
01b98c3ed0 ReactNode as default for formatters, and show bold dash 2018-10-17 16:46:01 -07:00
Steve Klebanoff
6cf8d57aee add concept of quoteState 2018-10-17 16:41:35 -07:00
Steve Klebanoff
7b43cd14b3 error test 2018-10-17 14:44:40 -07:00
Steve Klebanoff
f2f7598c0e asset data util tests 2018-10-17 14:44:40 -07:00
Steve Klebanoff
ae4f1a093a handle other errors 2018-10-17 14:44:40 -07:00
Steve Klebanoff
2b495a7935 bigger emoji 2018-10-17 14:44:40 -07:00
Steve Klebanoff
155858de6e creating big error util file per francescos comment in PR 2018-10-17 14:44:40 -07:00
Steve Klebanoff
d052342df7 use lodash isUndefined per PR comment 2018-10-17 14:44:40 -07:00
Steve Klebanoff
32fa1bcc38 export assetDataUtil big obj 2018-10-17 14:44:40 -07:00
Steve Klebanoff
187bbc7fc1 latestErrorDismissed -> latestErrorDisplay enum 2018-10-17 14:44:40 -07:00
Steve Klebanoff
d46b288733 use redux dev tools from package 2018-10-17 14:44:40 -07:00
Steve Klebanoff
dfc5d7d860 get rid of unused marginLeft and marginRight props 2018-10-17 14:44:39 -07:00
Steve Klebanoff
1d07949087 linting, removing unused imports 2018-10-17 14:44:39 -07:00
Steve Klebanoff
db77cd10c5 feat(instant): Handle AssetBuyer errors 2018-10-17 14:44:39 -07:00
Steve Klebanoff
f36352be47 move z-index setting to zero instant container, and add ability for zindex to be set on container 2018-10-17 14:44:39 -07:00
Steve Klebanoff
18c9907d6f feat(instant): add sliding error 2018-10-17 14:44:39 -07:00
fragosti
91ca80b248 prettify discharge file 2018-10-17 14:01:32 -07:00
fragosti
59743d32da feat: create dogfood url and deployment workflow 2018-10-17 13:44:13 -07:00
Fabio Berger
ac68f8db44 refactor: fix anchor so it doesn't keep re-rendering the anchor icon 2018-10-17 20:18:28 +01:00
Kadinsky
5ec4b27200 Merge pull request #1145 from 0xProject/refactorSchemasToJSON
Move json-schema schemas to JSON files
2018-10-17 19:01:29 +01:00
Brandon Millman
b2012bf161 Merge pull request #1139 from 0xProject/feature/website/asset-buyer-docs
[asset-buyer][monorepo-scripts][website] Add asset-buyer documentation
2018-10-17 10:57:57 -07:00
Brandon Millman
81505ba56c Fix duplicate BuyQuoteInfo 2018-10-17 10:44:25 -07:00
Brandon Millman
75e3b44d9e Update asset-buyer usage wording 2018-10-17 10:33:05 -07:00
Brandon Millman
84057934c6 Merge branch 'development' into feature/website/asset-buyer-docs
* development: (31 commits)
  Update CODEOWNERS
  Update CODEOWNERS
  Update CODEOWNERS
  Add leo to CODEOWNERS on some packages
  fix(monorepo-scripts): Format date as UTC not local time.
  Bump max bundle size for instant
  fix: dont use enum string as type as typedoc gets confused
  feat: export AssetData from order-utils
  feat: export AssetData from utils
  chore: temporarily increase the bundle size for instant
  Remove order-utils from dependencies
  Run tests on circle CI
  Add tests for format and use toFixed instead of round for usd
  Remove expiry buffer seconds option from AssetBuyer init
  Add ts-optchain and use it instead of lodash get
  Hide USD price when ETH-USD price is not available
  Rename OrderDetailsRow to EthAmountRow
  fix: add Steve's github account to about page, and capitalize AppFolio correctly
  Put boundNoop in a util file
  Add tnxHash to buy button callbacks
  ...
2018-10-17 10:30:29 -07:00
Fabio Berger
bdae4ba2a2 chore: tslint fix 2018-10-17 18:23:06 +01:00
Fabio Berger
87fabbb943 chore: Fix remaining necessary casts 2018-10-17 17:36:21 +01:00
Fabio Berger
a31f3b542f Add necessary cast 2018-10-17 17:18:00 +01:00
Fabio Berger
f7de26f65c chore: make abi type prop always of type string to fix TypeDoc issue related to reading in artifacts from JSON files 2018-10-17 17:13:32 +01:00
Fabio Berger
852f50d1a0 chore: Re-cast to EventAbi after checking the the type is set to 'event' 2018-10-17 17:09:35 +01:00
Fabio Berger
f3f97896ed chore: add resolveJsonModule to TypeDoc tsconfig.json 2018-10-17 16:18:51 +01:00
Fabio Berger
7c87d2e38b chore: Update TypeDoc to 0.13.0 (supports TS v3.1) 2018-10-17 16:18:28 +01:00
Fabio Berger
03b20eed29 nit: remove todo 2018-10-17 15:58:10 +01:00
Fabio Berger
4d275cc591 nit: don't init scrolledToId 2018-10-17 15:55:05 +01:00
Fabio Berger
e18f66e5b7 nit: use styled-component instead of react-state for onHover 2018-10-17 15:53:28 +01:00
Fabio Berger
4ca89fc9f1 nit: use ObjectMap 2018-10-17 15:53:01 +01:00
Fabio Berger
f2e5a9635b chore: make linter ignore json schemas 2018-10-17 15:33:50 +01:00
Leonid Logvinov
c767404ad0 Merge pull request #1146 from 0xProject/feature/codeowners
Add leo to CODEOWNERS on some packages
2018-10-17 16:25:31 +02:00
Kadinsky
492df3108c Update CODEOWNERS 2018-10-17 16:25:17 +02:00
Kadinsky
7db53cf92c Update CODEOWNERS 2018-10-17 16:25:10 +02:00
Kadinsky
7fab0a5a86 Update CODEOWNERS 2018-10-17 16:25:05 +02:00
Fabio Berger
41bb38a776 Merge branch 'refactorSchemasToJSON' of github.com:0xProject/0x-monorepo into refactorSchemasToJSON
* 'refactorSchemasToJSON' of github.com:0xProject/0x-monorepo:
  chore: remove schemas from include section
2018-10-17 14:22:23 +01:00
Fabio Berger
b7d7c5f38b chore: Add json schemas to prettier ignore 2018-10-17 14:20:49 +01:00
Leonid Logvinov
0ecaa90ffd Add leo to CODEOWNERS on some packages 2018-10-17 15:15:04 +02:00
Leonid Logvinov
abc00b05c3 chore: remove schemas from include section 2018-10-17 14:04:01 +01:00
Fabio Berger
d87643fdfa Update schemas markdown section for v2 docs 2018-10-17 14:02:38 +01:00
Fabio Berger
bd00f1279b Add CHANGELOG entry 2018-10-17 13:54:27 +01:00
Fabio Berger
9176e535aa Fix sra-spec & connect 2018-10-17 13:52:43 +01:00
Fabio Berger
7d9009bb96 Convert all schemas to json files, so it's easier for devs in other languages to use it 2018-10-17 13:28:26 +01:00
Jacob Evans
78e6063d92 Merge pull request #1143 from 0xProject/fix/monorepo-scripts/changelog-utc
[monorepo-scripts] Format changelog dates as UTC timezone +0:00
2018-10-17 20:34:10 +11:00
Jacob Evans
0013bafc62 fix(monorepo-scripts): Format date as UTC not local time.
Down under is in the future and causes many conflicts when formatting the timestamp in the local context. All previous releases jumped a day ahead. By setting this to UTC we will have consistent formatted dates in the changelogs no matter where one publishes from.

npm-cli-login fails on node 10 as a deprecation in node 9 has finished. This package appears to be unmaintained so we now have a fork with a fix
2018-10-17 14:25:02 +11:00
Francesco Agosti
336e456984 Merge pull request #1131 from 0xProject/feature/instant/move-features-over-from-zrx-buyer
[instant][types][order-utils][asset-buyer] Move over and clean up features from zrx-buyer
2018-10-16 18:18:41 -07:00
fragosti
32beeae2f0 Bump max bundle size for instant 2018-10-16 18:03:13 -07:00
fragosti
eda0b3e693 fix: dont use enum string as type as typedoc gets confused 2018-10-16 17:48:25 -07:00
Steve Klebanoff
35b001b081 Merge pull request #1138 from 0xProject/feature/add-steves-github
[website] Add Steve's github
2018-10-16 17:42:06 -07:00
fragosti
8ba65346d4 feat: export AssetData from order-utils 2018-10-16 17:00:53 -07:00
fragosti
009b5b575c feat: export AssetData from utils 2018-10-16 17:00:18 -07:00
fragosti
d2adbc3647 chore: temporarily increase the bundle size for instant 2018-10-16 16:59:53 -07:00
fragosti
6a89935e3b Remove order-utils from dependencies 2018-10-16 16:58:21 -07:00
Fabio Berger
62f4bb2117 chore: Add topBar menu in wiki mobile sidebar menu 2018-10-17 00:55:47 +01:00
Fabio Berger
ce43724bd4 chore: Rename "Documentation" to "Docs" in mobile menu 2018-10-17 00:39:55 +01:00
Fabio Berger
18c31a3bc0 chore: Add topBar menu items to mobile drawer 2018-10-17 00:37:56 +01:00
fragosti
c328616330 Run tests on circle CI 2018-10-16 16:20:23 -07:00
fragosti
2610868589 Add tests for format and use toFixed instead of round for usd 2018-10-16 16:13:23 -07:00
Fabio Berger
fdefa5952c chore: componentize the sidebar header 2018-10-16 23:25:51 +01:00
Fabio Berger
7f2636fd05 chore: Add missing responsive classes 2018-10-16 22:34:00 +01:00
Fabio Berger
fb7d0b9d0b chore: Fix logo on mobile topBar 2018-10-16 22:09:04 +01:00
fragosti
dbf5be6c21 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/move-features-over-from-zrx-buyer 2018-10-16 11:15:17 -07:00
Brandon Millman
aa1085c8f3 feat(website): add asset-buyer documentation 2018-10-16 10:00:49 -07:00
Brandon Millman
55be070dcf feat(monorepo-scripts): add AssetBuyer to CLASSES_WITH_HIDDEN_CONSTRUCTORS 2018-10-16 10:00:49 -07:00
Brandon Millman
2c286ad897 feat(monorepo-scripts): add AssetBuyerError to IGNORED_EXCESSIVE_TYPES 2018-10-16 10:00:49 -07:00
Brandon Millman
4976b34738 feat(asset-buyer): add missing types to public interface 2018-10-16 10:00:49 -07:00
Brandon Millman
7aab4d10de feat(asset-buyer): add hooks for documentation 2018-10-16 10:00:41 -07:00
Fabio Berger
2305109170 chore: fix linter 2018-10-16 17:42:58 +01:00
Fabio Berger
9bae3e51d9 chore: initalize _urlIntervalCheckId 2018-10-16 17:09:17 +01:00
Fabio Berger
c84c92663d Merge branch 'dev-section-redesign' into reSkinReferenceDocs
* dev-section-redesign: (87 commits)
  Added note about restriction on `testDirectory`
  fix(dev-utils): Make chai a dev dependency since exported interface depends on it
  Add changelog entries
  fix(subproviders): make web3-provider-engine types a 'dependency' so it's available to users of the library
  fix(sra-spec): make @loopback/openapi-v3-types a 'dependency' so it's available to users of the library
  fix(sol-cov): make @types/solidity-parser-antlr a 'dependency' so it's available to users of the library
  fix(dev-utils): make web3-provider-engine types a 'dependency' so it's available to users of the library
  fix(0x.js): make web3-provider-engine types a 'dependency' so it's available to users of the library
  fix(monorepo-scripts): Move the creation of the `.installation-test` directory OUTSIDE of the monorepo root, so that the installed packages can't reference the hoisted node_modules folder
  Remove ContractNotFound errors in contract-wrappers
  Update prettierignore
  Update website to use the new unsubscribeAll method in contract-wrappers
  In abi-gen-wrappers, ./wrappers -> ./src/generated-wrappers
  In contract-wrappers, remove setProvider and add unsubscribeAll method.
  take out explicit children definition in props
  Update json-schemas for contract-wrappers
  Add OrThrow suffix to getContractAddressesForNetwork
  remove unused import
  Update CHANGELOG.json for all changed packages
  Remove ContractAddresses from packages/types (mistake after rebase)
  ...
2018-10-16 16:59:02 +01:00
Fabio Berger
c333d093b5 merge development 2018-10-16 16:58:24 +01:00
Fabio Berger
55a3bc8cb6 chore: don't use Container in react-shared, react-docs yet 2018-10-16 16:43:43 +01:00
Fabio Berger
e6e883e05a chore: remove unused prop 2018-10-16 16:38:59 +01:00
Fabio Berger
17fb4d5b57 chore: Remove unused prop 2018-10-16 16:38:05 +01:00
Fabio Berger
05f7b73307 chore: convert to stateless component 2018-10-16 16:36:06 +01:00
Fabio Berger
bf51728466 chore: simplify 2018-10-16 16:35:55 +01:00
Fabio Berger
6ad98420a0 style: improve menu & logo alignment 2018-10-16 16:12:26 +01:00
Fabio Berger
afe6181757 chore: Implement newest topBar 2018-10-16 15:53:24 +01:00
Fabio Berger
ce68e20e82 chore: remove unused imports 2018-10-16 15:41:58 +01:00
Fabio Berger
f35156517d chore: get menu onHover darken back 2018-10-16 15:35:56 +01:00
Fabio Berger
72f5719b34 Added note about restriction on testDirectory 2018-10-16 15:17:49 +01:00
Fabio Berger
be45a30851 chore: change landing "build on 0x" to link to developer home, not 0x.js docs 2018-10-16 14:36:26 +01:00
Fabio Berger
13f8801e08 chore: remove wiki from main website topBar 2018-10-16 14:35:55 +01:00
Fabio Berger
ad235912d7 chore: Replace FAQ with Developer home in footer 2018-10-16 14:35:33 +01:00
Fabio Berger
6ff35172d6 Replace sandbox with wiki in developer popover 2018-10-16 14:35:10 +01:00
Kadinsky
e624587050 Merge pull request #1105 from 0xProject/feature/contracts-artifacts-re-org
Reorganize and modularize generated contract wrappers and artifacts
2018-10-16 14:21:46 +01:00
Fabio Berger
5938e8a52d fix(dev-utils): Make chai a dev dependency since exported interface depends on it 2018-10-16 13:55:13 +01:00
Fabio Berger
fca5260eb1 Add changelog entries 2018-10-16 13:33:30 +01:00
Fabio Berger
021041165a fix(subproviders): make web3-provider-engine types a 'dependency' so it's available to users of the library 2018-10-16 13:26:44 +01:00
Fabio Berger
6c9277867d fix(sra-spec): make @loopback/openapi-v3-types a 'dependency' so it's available to users of the library 2018-10-16 13:26:09 +01:00
Fabio Berger
75b0781969 fix(sol-cov): make @types/solidity-parser-antlr a 'dependency' so it's available to users of the library 2018-10-16 13:25:26 +01:00
Fabio Berger
eab88cbe7c fix(dev-utils): make web3-provider-engine types a 'dependency' so it's available to users of the library 2018-10-16 13:24:47 +01:00
Fabio Berger
2e56e2cc05 fix(0x.js): make web3-provider-engine types a 'dependency' so it's available to users of the library 2018-10-16 13:24:24 +01:00
Fabio Berger
8cffe65047 fix(monorepo-scripts): Move the creation of the .installation-test directory OUTSIDE of the monorepo root, so that the installed packages can't reference the hoisted node_modules folder 2018-10-16 13:22:15 +01:00
Alex Browne
5bdfad9b41 Remove ContractNotFound errors in contract-wrappers 2018-10-16 00:23:43 -07:00
Alex Browne
3c5812c5d2 Update prettierignore 2018-10-16 00:00:22 -07:00
fragosti
d268e19124 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/move-features-over-from-zrx-buyer 2018-10-15 18:53:15 -07:00
fragosti
875f621f20 Remove expiry buffer seconds option from AssetBuyer init 2018-10-15 18:13:09 -07:00
fragosti
f2e5fd8846 Add ts-optchain and use it instead of lodash get 2018-10-15 18:07:19 -07:00
Alex Browne
5509bf5aeb Update website to use the new unsubscribeAll method in contract-wrappers 2018-10-15 18:04:29 -07:00
Alex Browne
2c63909d5d In abi-gen-wrappers, ./wrappers -> ./src/generated-wrappers 2018-10-15 17:50:13 -07:00
fragosti
18667d739c Hide USD price when ETH-USD price is not available 2018-10-15 17:39:52 -07:00
Alex Browne
6f8e98e537 In contract-wrappers, remove setProvider and add unsubscribeAll method. 2018-10-15 17:35:25 -07:00
fragosti
fa18db84d9 Rename OrderDetailsRow to EthAmountRow 2018-10-15 17:33:27 -07:00
Steve Klebanoff
05bf7a8280 Merge pull request #1135 from 0xProject/feature/instant-sliding-error
[instant] Generic sliding error component
2018-10-15 17:30:39 -07:00
Steve Klebanoff
f8edef66e4 fix: add Steve's github account to about page, and capitalize AppFolio correctly 2018-10-15 17:22:15 -07:00
Steve Klebanoff
b0a2cacd82 take out explicit children definition in props 2018-10-15 17:11:43 -07:00
Alex Browne
e093864bff Update json-schemas for contract-wrappers 2018-10-15 17:09:35 -07:00
fragosti
ac3bfdfe5f Put boundNoop in a util file 2018-10-15 17:06:28 -07:00
fragosti
fcf3451448 Add tnxHash to buy button callbacks 2018-10-15 17:06:06 -07:00
Alex Browne
38b146c395 Add OrThrow suffix to getContractAddressesForNetwork 2018-10-15 14:22:48 -07:00
fragosti
43f8f2abbd feat: add changelog entries for changed packages 2018-10-15 14:20:31 -07:00
Fabio Berger
fb0e0473de chore: move wiki to Developers section 2018-10-15 22:18:44 +01:00
Steve Klebanoff
45ff83d852 remove unused import 2018-10-15 14:15:58 -07:00
Alex Browne
e3af06ab10 Update CHANGELOG.json for all changed packages 2018-10-15 14:11:20 -07:00
fragosti
e7130af6a9 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/move-features-over-from-zrx-buyer 2018-10-15 14:11:05 -07:00
Alex Browne
be1a597250 Remove ContractAddresses from packages/types (mistake after rebase) 2018-10-15 14:10:31 -07:00
Steve Klebanoff
f13d061dd2 move z-index setting to zero instant container, and add ability for zindex to be set on container 2018-10-15 14:04:53 -07:00
Alex Browne
00db096d2e Fix bug introduced during rebase 2018-10-15 13:44:21 -07:00
Steve Klebanoff
7325e16698 get rid of unused marginLeft and marginRight props 2018-10-15 13:41:36 -07:00
Steve Klebanoff
14b47f3a9f better private function syntax 2018-10-15 13:39:00 -07:00
Alex Browne
f0e4837983 Fix failing doc generation tests 2018-10-15 13:38:59 -07:00
Alex Browne
003ab1e5b3 Fix linter errors in contract-wrappers 2018-10-15 13:38:59 -07:00
Alex Browne
24673be1cd Add resolveJsonModule: true to test_installation.ts 2018-10-15 13:38:59 -07:00
Alex Browne
7a6cace1ec Create CHANGELOG.json for three new packages 2018-10-15 13:38:59 -07:00
Alex Browne
8dc73d3d85 Add README.md for each new package 2018-10-15 13:38:59 -07:00
Alex Browne
d76d8abc1d Update .gitignore and .prettierignore 2018-10-15 13:38:59 -07:00
Alex Browne
c83dec22c9 Improve error handling for unknown network ids in contract-wrappers 2018-10-15 13:38:59 -07:00
Alex Browne
974ec23ecd Apply various PR feedback 2018-10-15 13:38:33 -07:00
Alex Browne
68f150eff2 Remove as any hack from artifacts in contracts package 2018-10-15 13:38:33 -07:00
Alex Browne
0e1cd9784b Use contractAddresses directly in revert_validation_test.ts 2018-10-15 13:38:33 -07:00
Alex Browne
6d79e30266 Update .gitattributes 2018-10-15 13:38:33 -07:00
Alex Browne
1e9ea09f08 Introduce new contract-addresses package and use it everywhere 2018-10-15 13:38:33 -07:00
Alex Browne
fa346d9461 Remove networks/addresses from contract-artifacts package 2018-10-15 13:37:57 -07:00
Alex Browne
33e65c322e Remove unused abi-gen dependencies 2018-10-15 13:37:57 -07:00
Alex Browne
770cf52933 Remove unused copyfiles dependencies 2018-10-15 13:37:57 -07:00
Alex Browne
1b8b2c0b9b Appease linter 2018-10-15 13:37:57 -07:00
Alex Browne
6c8fb370dc Update order-watcher to use new migrations functions 2018-10-15 13:37:57 -07:00
Alex Browne
a48e0a08bf Add new runMigrationsOnce method to migrations. Update contract-wrappers to use it. 2018-10-15 13:37:57 -07:00
Alex Browne
ecdd6e3303 Fix linter errors in contract-wrappers 2018-10-15 13:37:57 -07:00
Alex Browne
17c6661e2d Cleanup migrations and contracts package. Make contracts private again. 2018-10-15 13:37:57 -07:00
Alex Browne
141121004c Remove generated artifacts in the contracts package 2018-10-15 13:37:57 -07:00
Alex Browne
3af7d1ad02 Add missing dependency to abi-gen-wrappers 2018-10-15 13:37:56 -07:00
Alex Browne
255da32d29 Update testnet-faucets and website to work with new artifacts and abi-gen wrappers 2018-10-15 13:37:56 -07:00
Alex Browne
29063cab18 update order-watcher to use new artifacts and abi-gen wrappers packages 2018-10-15 13:37:56 -07:00
Alex Browne
3da032fb24 update asset-buyer to use new artifacts and abi-gen wrappers packages 2018-10-15 13:36:59 -07:00
Alex Browne
d0b37fcab5 update fill-scenarios to use new artifacts and abi-gen wrappers packages 2018-10-15 13:36:59 -07:00
Alex Browne
57d9fcf9e5 update order-utils to use new artifacts and abi-gen wrappers packages 2018-10-15 13:36:59 -07:00
Alex Browne
2bd7b0f66b update contract_wrappers to use new artifacts and abi-gen wrappers packages 2018-10-15 13:36:59 -07:00
Alex Browne
8f0ceaf1d8 Create abi-gen-wrappers package 2018-10-15 13:36:59 -07:00
Alex Browne
1da3604351 Create contract-artifacts package (needed to solve dependency cycle) 2018-10-15 13:36:59 -07:00
Alex Browne
3a7bb97ad1 Remove artifacts from migrations package and update contract-wrappers accordingly 2018-10-15 13:36:59 -07:00
Alex Browne
2aa73fc839 Add generated contract wrappers in contracts package to gitignore 2018-10-15 13:36:10 -07:00
Alex Browne
33335a6791 Automatically collapse contract artifacts by adding them to .gitattributes 2018-10-15 13:36:10 -07:00
Alex Browne
5b1b423b5e Change @0xproject/contracts version number back to 2.1.48 2018-10-15 13:36:10 -07:00
Alex Browne
90f5e4d197 Update .prettierignore 2018-10-15 13:36:09 -07:00
Alex Browne
026ad1f9a1 Update contract-wrappers package to use new contracts package for generated files 2018-10-15 13:36:09 -07:00
Alex Browne
81c4887241 Move generated contract wrappers and artifacts into contracts package 2018-10-15 13:36:09 -07:00
Steve Klebanoff
20d60e2368 dont need constructor just to set state
git status
2018-10-15 13:33:30 -07:00
Steve Klebanoff
58ad7d7caf change to ? syntax instead of number | undefined 2018-10-15 13:15:02 -07:00
Steve Klebanoff
af49514397 suggestions from code review: renaming timeoutNumber to timeoutId, sharing interface, renaming component 2018-10-15 13:12:52 -07:00
Steve Klebanoff
2aa4761d6d add semicolons 2018-10-15 10:28:26 -07:00
Brandon Millman
83a36aff3f feat: update CODEOWNERS for asset-buyer, instant, and website 2018-10-15 09:58:03 -07:00
Fabio Berger
8b8c958203 chore: fix padding issue 2018-10-15 17:46:42 +01:00
Fabio Berger
6bf27ac57f chore: replace Github with Wiki in topBar and refactor so can display internal & external links 2018-10-15 17:43:45 +01:00
Fabio Berger
ce151f630d feat: highlighted sidebar as you scroll on doc reference pages 2018-10-15 17:35:40 +01:00
Fabio Berger
96d145f54f chore: Remove unused state 2018-10-15 16:49:46 +01:00
Fabio Berger
c9a0c7872d Chore: Only render one sidebar at a time 2018-10-15 16:48:39 +01:00
Fabio Berger
a5e435d831 fix: menu item overflow issue 2018-10-15 12:58:09 +01:00
Fabio Berger
6ada38248e chore: improve rendering of sidebar top section on mobile 2018-10-15 12:49:47 +01:00
August Skare
c616b53c9c update react and styled-components 2018-10-15 13:40:49 +02:00
Fabio Berger
40512ea608 chore: Export Stats from types, not indirectly from OrderWatcher 2018-10-15 12:38:02 +01:00
Fabio Berger
60208091a4 chore: fix missed class rename 2018-10-15 12:35:38 +01:00
Fabio Berger
29437c5761 chore: Export stats type from 0x.js 2018-10-15 12:26:23 +01:00
Kadinsky
79db7147a4 Merge pull request #1118 from BEcorp/development
[order-watcher] Public function getStats
2018-10-15 12:25:24 +01:00
Fabio Berger
b3a323efa1 fix: Nested a tag warning in console by not rendering a tags within type definition popovers 2018-10-15 12:20:30 +01:00
Fabio Berger
bf9af95654 chore: improve colors 2018-10-15 11:57:16 +01:00
Fabio Berger
eee0640b07 chore: many small stylistic changes 2018-10-15 11:27:56 +01:00
Fabio Berger
4298da118f chore: improve styling of sidebar 2018-10-15 11:23:02 +01:00
Fabio Berger
bd763ebb34 chore: fix key issue 2018-10-15 11:22:22 +01:00
Fabio Berger
3fbf9c4285 chore: round border of code snippets 2018-10-15 11:22:00 +01:00
Brandon Millman
23fb8dab13 Merge pull request #1134 from 0xProject/feature/contract-wrappers/forwarder-wrapper-validation
[contract-wrappers] Add optional validation to the forwarder wrapper
2018-10-14 23:39:53 -07:00
Fabio Berger
9b1f765ced chore: only show sidebar once docs have loaded 2018-10-13 17:11:47 +01:00
Fabio Berger
d85daab967 fix: Dropdown component so that re-clicking the activeNode when dropdown is open, closes it 2018-10-13 17:09:46 +01:00
Fabio Berger
11941b08b6 Fix sidebar top so long titles display correctly 2018-10-13 17:09:04 +01:00
Fabio Berger
6f77b90836 Chore: remove unused imports 2018-10-13 16:32:36 +01:00
Fabio Berger
2b2f5d6169 Fix: Make width variable 2018-10-13 16:32:26 +01:00
Fabio Berger
1d30a2f91d Remove doc menus from main topBar 2018-10-13 16:29:24 +01:00
Fabio Berger
6baadc746e Implement new version dropdown and remove it from nestedTopBar 2018-10-13 16:29:14 +01:00
Andrew Maurer
69e9dbd683 Merge branch 'development' into development 2018-10-13 11:09:50 -04:00
Fabio Berger
e0e011eb66 Fix sidebar shifting onHover due to scrollbar width 2018-10-13 15:10:25 +01:00
amaurer
dc56ce4549 Exported Stats in OW package 2018-10-13 08:47:37 -04:00
Steve Klebanoff
0aef2c8ade feat(instant): add sliding error 2018-10-12 16:26:26 -07:00
Steve Klebanoff
7102a23b0a feat: add Steve to team page 2018-10-12 16:26:26 -07:00
fragosti
f39541436a feat: model asset meta data and add dynamic assetData state 2018-10-12 16:11:30 -07:00
fragosti
ccf021b8bf feat: use new AssetData type from types package 2018-10-12 14:52:42 -07:00
fragosti
025614a7fd feat: Add AssetData type as union of ERC721AssetData and ERC20AssetData 2018-10-12 14:52:18 -07:00
Brandon Millman
22abd1dfcf feat(contract-wrappers): add optional validation to the forwarder wrapper
Similar to the approach taken in exchange wrapper, make a call to an rpc
node in order to simulate the transaction before actually sending the
transaction. The decorator will parse revert reasons and other types of
errors into canonical errors that a consumer of the library expects when
interacting with a contract wrapper.
2018-10-12 14:42:31 -07:00
F. Eugene Aumson
a424c2adfa fix: linter 2018-10-12 16:05:41 -04:00
F. Eugene Aumson
55f9348d0a fix: use python's extsplit, not manual splicing 2018-10-12 16:00:45 -04:00
F. Eugene Aumson
2afa38c927 feat(python/order_utils): project stub
An empty project, with respect to functionality, but one configured with
a test framework, linters, CI integration, etc.

https://app.asana.com/0/836857747873847/839549782781239/f
2018-10-12 15:50:48 -04:00
F. Eugene Aumson
92fd0a9d24 feat: project stub for python order utilities
An empty project, with respect to functionality, but one configured with
a test framework, linters, CI integration, etc.

https://app.asana.com/0/836857747873847/839549782781239/f
2018-10-12 15:31:19 -04:00
Fabio Berger
a5eb346dd1 fix: Remove unnecessary onClick prop from NestedSidebar, since one can listen to container element onClick 2018-10-12 19:44:51 +01:00
Fabio Berger
a4604cb2f2 Pass down sidebar instead of sectionNameToLinks 2018-10-12 19:44:18 +01:00
Kadinsky
11033c78f5 Merge pull request #1132 from 0xProject/removeRollbarUMD
fix(website): replace Rollbar UMD with regular npm package
2018-10-12 20:13:11 +02:00
fragosti
f3391e1250 feat: make redux actions type-sage 2018-10-12 11:00:36 -07:00
fragosti
09c5ae4e65 feat: have coinbase API return BigNumber for eth-usd price endpoint 2018-10-12 09:55:33 -07:00
amaurer
cd04a21e29 Fixes per converstaion, stats interface to pub 2018-10-12 11:55:31 -04:00
Fabio Berger
3ca9439481 Make all doc reference pages responsive 2018-10-12 17:42:41 +02:00
Fabio Berger
36f202f7b4 Improve loading 2018-10-12 16:38:25 +02:00
Fabio Berger
a86ca6257f If sidebar menu item links to internal page, no longer open in new tab 2018-10-12 15:59:23 +02:00
Fabio Berger
16386bc99e Add Getting starter sidebar header 2018-10-12 15:55:00 +02:00
Fabio Berger
de20ef1a49 Refactor Home so that Dev section chrome is reusable across pages 2018-10-12 15:54:44 +02:00
fragosti
03b235bb42 feat: populate order details with information from worst buy quote 2018-10-11 17:35:22 -07:00
fragosti
1c92ae0ed0 fix: export BuyQuoteInfo from asset-buyer 2018-10-11 17:34:43 -07:00
fragosti
0edd9b32ba feat: debounce the fetching of new quotes 2018-10-11 15:35:39 -07:00
fragosti
63652df3b9 feat: adjust amount input width 2018-10-11 15:05:20 -07:00
Steve Klebanoff
5c76c8586d Merge pull request #1128 from 0xProject/feature/add-steve-to-team
[website] add Steve to team page
2018-10-11 12:41:32 -07:00
Alex Browne
f3cba233ad Use medium+ resource class for build-website (#1129) 2018-10-11 11:27:28 -07:00
Fabio Berger
dcdc411ab7 chore: update yarn.lock 2018-10-11 14:58:39 +02:00
Fabio Berger
7f217dcb3c style: Make width of developer section same as rest of website (1064px) 2018-10-11 14:58:29 +02:00
Fabio Berger
295a8c760a merge dev-section-redesign 2018-10-11 14:25:47 +02:00
Fabio Berger
1cfcc82ea9 Merge branch 'development' into dev-section-redesign
* development: (62 commits)
  Fix linter error
  Upgrade ethereum-types
  Lint and update deps
  Be more explicit with falsiness
  Add type to cssRuleIfExists
  Fix issue where we throw if non-numeric characters are used in input
  Upgrade to more recent types, fix yarn.lock
  [fix]: [testnet-faucet] Exit 1 on build fail
  Explains tools we want them to use
  Add note about button
  Add dev-tools-pages bundles to gitignore
  Improve README
  Fix button and center
  Increase max bundle size for instant
  Add stuff
  Initial project scaffolding
  Change tslint config to remove conflicts with prettier
  fix: [testnet-faucet] Signing of orders
  Update the CHANGELOG
  Add comments for expiryBuffer
  ...
2018-10-11 14:23:45 +02:00
Fabio Berger
a1a0d120be Update yarn.lock 2018-10-11 14:19:25 +02:00
Fabio Berger
2e3624d888 fix(website): replace Rollbar UMD with regular npm package 2018-10-11 13:57:07 +02:00
Fabio Berger
9b147f1495 fix(website): remove deadzone between "Developers" menu item and dropdown so it never closes when hovering between the two 2018-10-11 13:49:56 +02:00
Fabio Berger
636ce6331b fix(website): Avoid hover activated dropdown from closing when activeNode is clicked 2018-10-11 13:33:49 +02:00
Leonid Logvinov
8941b6cee5 Merge pull request #1125 from 0xProject/feature/starter-dev-tools-pages
Initial project scaffolding for dev tools pages
2018-10-11 12:44:00 +02:00
Leonid Logvinov
e4351789d2 Fix linter error 2018-10-11 12:23:19 +02:00
fragosti
19f61906d3 feat: Move over features from zrx-buyer 2018-10-10 18:28:12 -07:00
Francesco Agosti
a5a033c359 Merge pull request #1114 from 0xProject/feature/instant/redux-styles-container
[instant] Add styles and redux to instant
2018-10-10 18:27:54 -07:00
fragosti
50442c3ebb Upgrade ethereum-types 2018-10-10 17:25:17 -07:00
fragosti
9fe88b2146 Lint and update deps 2018-10-10 17:14:17 -07:00
fragosti
c8e7d225ca Be more explicit with falsiness 2018-10-10 16:55:59 -07:00
fragosti
0aa7bfab0d Add type to cssRuleIfExists 2018-10-10 16:48:27 -07:00
fragosti
7bc9cd8c94 Fix issue where we throw if non-numeric characters are used in input 2018-10-10 16:43:55 -07:00
fragosti
0a3c543d5d Upgrade to more recent types, fix yarn.lock 2018-10-10 16:31:14 -07:00
Jacob Evans
01ccd8ff1a [fix]: [testnet-faucet] Exit 1 on build fail
If we detect any compilation errors then exit with 1
2018-10-11 09:56:49 +11:00
Steve Klebanoff
f73e6a75b1 feat: add Steve to team page 2018-10-10 15:21:41 -07:00
Fabio Berger
a300a451c8 Explains tools we want them to use 2018-10-10 22:50:20 +02:00
Fabio Berger
2a95d3269d Add note about button 2018-10-10 22:44:03 +02:00
Fabio Berger
c8fd1ae05c Add dev-tools-pages bundles to gitignore 2018-10-10 22:40:56 +02:00
Fabio Berger
19a657c38b Improve README 2018-10-10 22:40:14 +02:00
Fabio Berger
7418932432 Fix button and center 2018-10-10 22:31:18 +02:00
fragosti
aec0dd3835 Increase max bundle size for instant 2018-10-10 10:38:04 -07:00
Fabio Berger
fb882b0c77 Add stuff 2018-10-10 17:22:31 +02:00
Leonid Logvinov
6c0d317380 Initial project scaffolding 2018-10-10 16:20:14 +02:00
Fabio Berger
0fd158ac64 Replace Rollbar UMD with regular import 2018-10-10 16:06:32 +02:00
fragosti
a165f5d25b Change tslint config to remove conflicts with prettier 2018-10-09 18:41:31 -07:00
fragosti
2bd8cbb80c Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/redux-styles-container 2018-10-09 18:25:14 -07:00
Brandon Millman
afb34da729 Merge pull request #1116 from 0xProject/feature/asset-buyer/api-tweaks
[asset-buyer] Fix order expiration calc bug and expose gas options to executeBuyQuote
2018-10-09 18:15:33 -07:00
Jacob Evans
402089db4e fix: [testnet-faucet] Signing of orders
Signing of orders changed in order-utils but forgot to update testnet faucet
2018-10-10 11:31:27 +11:00
Brandon Millman
8155d311af Merge branch 'development' into feature/asset-buyer/api-tweaks
* development:
  Define bundlewatch.ci.repoBranchBase
  Stop accesing ethers private methods
  Fix merge conflicts
  Fix ethers build issue
  Upgrade ethers.js version
  Fix branch name
  Add max sizes
  Use bundlewatch instead of bundlesize
  Move Metamask Error to OrderErrors
  Update the exported types for the packages which touch RPC providers
  Throw and handle errors from Providers.
  Clarifies use of schemas outside of Javascript/TypeScript.
  Detect MM on signature validation failure.
  Return SignedOrder from signing utils.
  Update 0x.js Changelog
  Add eth_signTypedData support to our wallet subproviders
  Move SignTypedData to utils package
  Introduce Metamask Subprovider.
  Expose eth_signTypedData functionality for order signing
2018-10-09 17:04:54 -07:00
Brandon Millman
cd8e6d9cdf Update the CHANGELOG 2018-10-09 16:36:19 -07:00
Brandon Millman
f2fdb6e47d Add comments for expiryBuffer 2018-10-09 14:28:54 -07:00
fragosti
941448d65c Fix empty input bug 2018-10-09 12:11:12 -07:00
fragosti
764f402eb9 Center 0x instant 2018-10-09 12:00:55 -07:00
Leonid Logvinov
bd06ebde8d Merge pull request #1122 from 0xProject/feature/new-ethers
Upgrade ethers.js version
2018-10-09 16:28:44 +02:00
Leonid Logvinov
fbd7115500 Define bundlewatch.ci.repoBranchBase 2018-10-09 16:11:29 +02:00
Leonid Logvinov
f93774f855 Stop accesing ethers private methods 2018-10-09 16:01:34 +02:00
Leonid Logvinov
d21e6f3aaf Fix merge conflicts 2018-10-09 16:01:34 +02:00
Leonid Logvinov
22160df2d2 Fix ethers build issue 2018-10-09 16:01:34 +02:00
Leonid Logvinov
31ee8870b8 Upgrade ethers.js version 2018-10-09 16:01:34 +02:00
Leonid Logvinov
9876f6cc34 Merge pull request #1123 from 0xProject/feature/artifacts
Use bundlewatch instead of bundlesize
2018-10-09 16:01:14 +02:00
Leonid Logvinov
6f600029a2 Fix branch name 2018-10-09 14:57:14 +02:00
Leonid Logvinov
1bc4d47663 Add max sizes 2018-10-09 14:29:40 +02:00
Leonid Logvinov
6bfe7d7b7e Use bundlewatch instead of bundlesize 2018-10-09 14:15:52 +02:00
Leonid Logvinov
7d2c975d73 Merge branch 'development' 2018-10-09 13:13:10 +02:00
Jacob Evans
024bcf492d Merge pull request #1102 from 0xProject/feature/0x.js/eip712-sign-typed-data
[0x.js][order-utils][web3-wrapper] Expose eth_signTypedData functionality for order signing
2018-10-09 21:17:11 +11:00
Jacob Evans
75b9e63919 Move Metamask Error to OrderErrors 2018-10-09 20:58:30 +11:00
Fabio Berger
6c9f7839c3 Merge branch 'development' into dev-section-redesign
* development:
  Clarifies use of schemas outside of Javascript/TypeScript.
  Fix typo
  Add asset-buyer to published packages section in README
  Publish
  Updated CHANGELOGS
  Update BuyQuote interface
  Add missing default options
  Remove unused constants
  Add fee order with a takerFee
  Add additional order factory methods and refactor test to use them
  Add comments about buy quote calculation
  Update CHANGELOG
  Fix linter
  Add additional test for slippage
  Add buy_quote_calculator_test
2018-10-09 11:42:35 +02:00
Jacob Evans
7f554303b4 Update the exported types for the packages which touch RPC providers 2018-10-09 20:29:41 +11:00
Jacob Evans
9e8031d5e3 Throw and handle errors from Providers.
In web3 wrapper when a response contains an error field we throw this rather than return response.result which is often undefined.
In Signature Utils we handle the error thrown when a user rejects the signing dialogue to prevent double signing.
Exposed the ZeroExTransaction JSON schema.
In Website only use the MetamaskSubprovider if we can detect the provider is Metamask
2018-10-09 19:01:36 +11:00
Fabio Berger
3ac9dac4f0 Merge pull request #1121 from nebkor/development
Clarifies use of schemas outside of Javascript/TypeScript.
2018-10-09 08:50:21 +02:00
Fabio Berger
9654397b29 Merge pull request #1103 from 0xProject/doc-overview-page
Implement Developer Home
2018-10-08 19:12:52 +01:00
Joe Ardent
34c00eaeb3 Clarifies use of schemas outside of Javascript/TypeScript. 2018-10-07 21:28:11 -07:00
Jacob Evans
e1236a4846 Detect MM on signature validation failure.
Report a developer friendly error in this event to educate them on the compatability wrapper MetamaskSubprovider
2018-10-08 11:13:04 +11:00
amaurer
e5192507ab Fixed accidental carriage return removal in index.ts 2018-10-07 12:31:51 -04:00
amaurer
2e1222556f Changed getWatchedOrders to getStats and returns Stats object 2018-10-07 12:24:42 -04:00
amaurer
9171f9ec60 Fix lint issues 2018-10-06 11:04:48 -04:00
amaurer
d0fed1ae46 Fixed linting issue 2018-10-06 10:43:36 -04:00
amaurer
ee0f2e46ee Update order-watcher changelog 2018-10-06 10:32:07 -04:00
amaurer
c833b4f494 Added comments to new getWatchCounts function 2018-10-06 10:23:16 -04:00
amaurer
bd3f101ab8 Added orderWatchCount to return total count of orders watched. 2018-10-06 10:06:34 -04:00
Brandon Millman
f9f8e06c1c Fix incorrect affiliate fee calculations and associated tests 2018-10-05 15:42:19 -07:00
Brandon Millman
cb1311ecc5 Increase default expiryBufferSeconds from 15 to 300 (5 minutes) 2018-10-05 15:25:54 -07:00
Brandon Millman
9ba00a1077 Add comments for gasPrice and gasLimit 2018-10-05 15:24:11 -07:00
fragosti
405234133b Fix order expiration calc bug and expose gas options to executeBuyQuote 2018-10-05 13:40:26 -07:00
Fabio Berger
6cc9631ef6 remove unused import 2018-10-05 17:58:54 +01:00
Fabio Berger
2966ab12e0 Move valid-url import to react-shared 2018-10-05 17:58:34 +01:00
Fabio Berger
3ce665eeab Fix comment 2018-10-05 17:58:22 +01:00
Fabio Berger
03bfc7dd40 Fix liinter 2018-10-05 17:34:46 +01:00
Fabio Berger
a5d0066d00 Convert TutorialButton to styled component 2018-10-05 17:28:03 +01:00
Fabio Berger
df7210163a Convert more divs to containers and text components 2018-10-05 15:33:15 +01:00
Fabio Berger
ded6742ddd remove inline style 2018-10-05 15:06:59 +01:00
Fabio Berger
fa6bd34899 Remove type prop and instead infer it from the value of to 2018-10-05 14:55:28 +01:00
Fabio Berger
5f2cd33da0 Remove style prop from Link 2018-10-05 13:54:37 +01:00
Fabio Berger
e0355a2e39 Rename scroll container 2018-10-05 12:03:15 +01:00
Fabio Berger
f7aee9c7a9 Remove containerId option and throw if passing in shouldOpenInNewTab with type ReactScroll 2018-10-05 12:00:24 +01:00
Fabio Berger
e7de4b953f Apply props to all link variants when possible 2018-10-05 11:51:52 +01:00
Fabio Berger
d98de363eb Render paragraphs with spans so we don't get margin added 2018-10-05 11:46:35 +01:00
Fabio Berger
055763cceb Fix bug where wiki links in dev dropdown weren't working when on the wiki 2018-10-05 11:13:33 +01:00
Fabio Berger
60ba8d57d4 Fix react warning 2018-10-05 10:13:19 +01:00
Jacob Evans
75d274f330 Return SignedOrder from signing utils.
Create a helper back in EIP712Utils for code cleanup.
Moved constants in order-utils into the constants object
2018-10-05 17:12:17 +10:00
fragosti
d7b6d8222f Apply linter 2018-10-04 19:32:33 -07:00
fragosti
1eb8d17ce3 Create SelectedAssetInputAmount 2018-10-04 19:24:10 -07:00
Jacob Evans
6e462b7dba Update 0x.js Changelog 2018-10-05 12:03:01 +10:00
Jacob Evans
3e2fe40a11 Add eth_signTypedData support to our wallet subproviders 2018-10-05 12:02:09 +10:00
Jacob Evans
2a82ff48c0 Move SignTypedData to utils package 2018-10-05 12:00:41 +10:00
Jacob Evans
07926ded6e Introduce Metamask Subprovider.
MM has a number of inconsistencies with other providers when implementing the JSON RPC interface. This subprovider wraps those nuances so they do not leak into the rest of our code
2018-10-05 12:00:41 +10:00
Jacob Evans
adcfaa2e80 Expose eth_signTypedData functionality for order signing 2018-10-05 11:59:24 +10:00
fragosti
c5084f023a Add Input and AmountInput component 2018-10-04 18:57:40 -07:00
fragosti
bf0437324d Add border radios 2018-10-04 18:06:19 -07:00
fragosti
1001dfcc30 Add box shadow and default box-sizing: border-box to container 2018-10-04 18:02:42 -07:00
fragosti
98f8c77494 Add BuyButton and other small improvement 2018-10-04 17:48:10 -07:00
fragosti
d9b7aa2e4b Add faux order details section 2018-10-04 17:22:36 -07:00
fragosti
0cfe5637c0 Create zrx instant container heading 2018-10-04 16:27:04 -07:00
Brandon Millman
119f8c9449 Fix typo 2018-10-04 16:25:30 -07:00
Brandon Millman
e5153737d8 Merge branch 'development'
* development: (939 commits)
  Add asset-buyer to published packages section in README
  Publish
  Updated CHANGELOGS
  Update BuyQuote interface
  force re-build
  Add website build to instructions
  Revert format and re-add changes
  Build website in parallel with other tests since no other test relies on it being built to run
  Add back sourceMap support for both dev/prod
  Upgrade webpack
  Add missing default options
  Remove unused constants
  Add fee order with a takerFee
  Add additional order factory methods and refactor test to use them
  Add comments about buy quote calculation
  Update CHANGELOG
  Fix linter
  Add additional test for slippage
  Add buy_quote_calculator_test
  Add 0x Instant to bundle analysis
  ...
2018-10-04 16:06:05 -07:00
Brandon Millman
b04b649ec0 Add asset-buyer to published packages section in README 2018-10-04 16:03:16 -07:00
fragosti
e2220a939f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/redux-styles-container 2018-10-04 16:00:10 -07:00
fragosti
831b4a1193 apply prettier 2018-10-04 15:57:48 -07:00
Brandon Millman
b5d88079d9 Publish
- 0x.js@1.0.8
 - @0xproject/abi-gen@1.0.13
 - @0xproject/assert@1.0.13
 - @0xproject/asset-buyer@2.0.0
 - @0xproject/base-contract@3.0.1
 - @0xproject/connect@3.0.1
 - @0xproject/contract-wrappers@2.0.2
 - contracts@2.1.49
 - @0xproject/dev-utils@1.0.12
 - ethereum-types@1.0.11
 - @0xproject/fill-scenarios@1.0.7
 - @0xproject/instant@0.0.2
 - @0xproject/json-schemas@1.0.7
 - @0xproject/metacoin@0.0.23
 - @0xproject/migrations@1.0.14
 - @0xproject/monorepo-scripts@1.0.11
 - @0xproject/order-utils@1.0.7
 - @0xproject/order-watcher@2.1.1
 - @0xproject/react-docs@1.0.13
 - @0xproject/react-shared@1.0.15
 - @0xproject/sol-compiler@1.1.7
 - @0xproject/sol-cov@2.1.7
 - @0xproject/sol-doc@1.0.2
 - @0xproject/sol-resolver@1.0.14
 - @0xproject/sra-report@1.0.13
 - @0xproject/sra-spec@1.0.6
 - @0xproject/subproviders@2.0.7
 - @0xproject/testnet-faucets@1.0.51
 - @0xproject/tslint-config@1.0.8
 - @0xproject/types@1.1.4
 - @0xproject/typescript-typings@3.0.2
 - @0xproject/utils@2.0.2
 - @0xproject/web3-wrapper@3.0.3
 - @0xproject/website@0.0.54
2018-10-04 15:52:06 -07:00
Brandon Millman
266440f7c3 Updated CHANGELOGS 2018-10-04 15:51:56 -07:00
fragosti
d2e4a150d9 Fix currupted yarn lock file 2018-10-04 15:47:19 -07:00
fragosti
00eb3211c9 Remove deps we probably dont need 2018-10-04 15:20:06 -07:00
fragosti
1e3ab76e9a Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/redux-styles-container 2018-10-04 15:03:14 -07:00
fragosti
ba2ba628e8 Fix linting problems 2018-10-04 15:02:06 -07:00
fragosti
a8b01fedb1 Improve utilities and try to use them in simple form component 2018-10-04 14:59:07 -07:00
Brandon Millman
ab28e6af35 Merge pull request #1113 from 0xProject/feature/asset-buyer/tests
[asset-buyer] Rework min / max rate calc and add tests
2018-10-04 14:49:25 -07:00
Brandon Millman
63d97f4c88 Update BuyQuote interface 2018-10-04 14:37:34 -07:00
fragosti
85c34b17aa Add Flex and Container component 2018-10-04 14:04:56 -07:00
Fabio Berger
85045267fe remove stray logs 2018-10-04 19:26:50 +01:00
Fabio Berger
c9bfb86960 merge base branch 2018-10-04 19:03:01 +01:00
Fabio Berger
3991e66a58 merge developmemnt 2018-10-04 18:59:55 +01:00
Fabio Berger
2da7626b53 Merge pull request #1115 from 0xProject/upgradeWebpack
Upgrade Webpack
2018-10-04 18:30:54 +01:00
Fabio Berger
98db4b1543 force re-build 2018-10-04 16:46:12 +01:00
Fabio Berger
bc067baf0d Add website build to instructions 2018-10-04 16:44:54 +01:00
Fabio Berger
3624c63a46 Revert format and re-add changes 2018-10-04 16:43:52 +01:00
Fabio Berger
08ba4ffd61 Build website in parallel with other tests since no other test relies on it being built to run 2018-10-04 16:35:30 +01:00
Fabio Berger
d5379ab320 Add back sourceMap support for both dev/prod 2018-10-04 15:58:50 +01:00
Fabio Berger
c613b6741d Upgrade webpack 2018-10-04 15:47:43 +01:00
Brandon Millman
4394036e34 Add missing default options 2018-10-03 23:46:07 -07:00
Brandon Millman
a7a007435c Remove unused constants 2018-10-03 23:23:53 -07:00
Brandon Millman
24e0fbd7b9 Add fee order with a takerFee 2018-10-03 23:22:38 -07:00
Brandon Millman
059162a90a Add additional order factory methods and refactor test to use them 2018-10-03 23:22:13 -07:00
Brandon Millman
250a9a4809 Add comments about buy quote calculation 2018-10-03 22:54:32 -07:00
fragosti
4b8348da8c Add some ui components 2018-10-03 16:20:39 -07:00
Francesco Agosti
f7917cfa65 Merge pull request #1112 from 0xProject/feature/instant/umd-upload-and-bundle-size
Add 0x Instant to bundle analysis
2018-10-03 15:17:55 -07:00
fragosti
48e7aa6e77 Add Inter UI font 2018-10-03 15:16:59 -07:00
Brandon Millman
10f54893ef Update CHANGELOG 2018-10-03 14:59:06 -07:00
Brandon Millman
93736c1567 Fix linter 2018-10-03 14:52:44 -07:00
Brandon Millman
260db053fe Add additional test for slippage 2018-10-03 14:51:24 -07:00
Brandon Millman
57b4396193 Add buy_quote_calculator_test 2018-10-03 14:51:24 -07:00
F. Eugene Aumson
a21cf0ad83 Merge pull request #1108 from 0xProject/bug/every-artifact-has-every-source
fix(sol-compiler): persist artifacts with only relevant sources
2018-10-03 17:44:50 -04:00
fragosti
15f20cc18e Add redux to 0x instant 2018-10-03 14:28:07 -07:00
fragosti
700b7068a1 Add styled-components with theme 2018-10-03 14:08:08 -07:00
fragosti
748091c768 Add 0x Instant to bundle analysis 2018-10-03 12:19:41 -07:00
Fabio Berger
d0b2b4d0aa Convert more divs to Containers 2018-10-03 19:00:59 +01:00
Fabio Berger
4184c5db85 Use Container and Text where possible 2018-10-03 17:30:23 +01:00
Fabio Berger
7197f26494 rename for clarity 2018-10-03 17:25:23 +01:00
Fabio Berger
46764c2d3f Fix linter 2018-10-03 17:23:43 +01:00
Fabio Berger
a7955c0964 Remove todo 2018-10-03 17:19:39 +01:00
Fabio Berger
1bef42cdcb Improve comment 2018-10-03 17:17:16 +01:00
Fabio Berger
8d6bffa96c Use nestedSidebarMenu component for Dev home 2018-10-03 17:03:05 +01:00
Fabio Berger
72b1c60f39 Fix nit 2018-10-03 16:44:18 +01:00
Fabio Berger
751e8eafe4 Remove stray console.log 2018-10-03 16:41:44 +01:00
Fabio Berger
437612f8b8 Use same Link UI component for react-scroll links 2018-10-03 16:37:59 +01:00
F. Eugene Aumson
f614a2425f fix: comment need for sourceCodes pruning 2018-10-03 10:57:37 -04:00
F. Eugene Aumson
39a336ca6d fix: use original source ID's from compiler output
Previously, was generating fresh source ID's but per @LogvinovLeon 's
comment (cited below) that will likely break existing source code
mappings.

Changed to use the original source code mapping ID's that were generated
by the compiler

https://app.asana.com/0/684263176955174/842516551768097/f
https://github.com/0xProject/0x-monorepo/pull/1108
https://github.com/0xProject/0x-monorepo/pull/1108#pullrequestreview-161059063
2018-10-03 10:44:19 -04:00
Fabio Berger
ab855cdd1c remove stray console 2018-10-03 14:43:25 +01:00
Fabio Berger
688325491f Make whole bottom bar clickable not just the text 2018-10-03 14:37:49 +01:00
Fabio Berger
6d8427a024 Don't make opening links in new tab a default 2018-10-03 14:26:30 +01:00
Fabio Berger
80a6e6fe8d Decrease size of section descriptions 2018-10-03 14:26:16 +01:00
Fabio Berger
55d61b0dc7 Add border underneath logo while user is scrolling 2018-10-03 12:14:22 +01:00
Fabio Berger
f13c482161 Align logo and menu 2018-10-03 11:43:17 +01:00
Fabio Berger
188564a343 Add padding to bottom of scroll area 2018-10-03 11:28:56 +01:00
Fabio Berger
773220f840 Fix link 2018-10-03 11:27:28 +01:00
Fabio Berger
0c80fea821 Make tutorial buttons also open in a new tab 2018-10-03 10:52:48 +01:00
Fabio Berger
4fb7b35153 Convert remaining Links to new UI component 2018-10-03 10:52:37 +01:00
Alex Browne
37c55302e7 Fix some small bugs in compiler.ts 2018-10-02 17:29:47 -07:00
Francesco Agosti
bce43a0050 Merge pull request #1109 from 0xProject/feature/instant/init
[instant] Initialize the package with dev environment and tests etc..
2018-10-02 17:07:23 -07:00
Brandon Millman
678deccfca Merge pull request #1086 from 0xProject/feature/asset-buyer/improve-asset-buyer-manager
[asset-buyer] Improve API and README
2018-10-02 17:07:12 -07:00
fragosti
81b08c0339 Fix typo in build:ci 2018-10-02 16:34:19 -07:00
Brandon Millman
efe173e4f7 Update README 2018-10-02 16:30:46 -07:00
fragosti
cca12b7170 Make package private 2018-10-02 16:27:21 -07:00
fragosti
49e494ab8d Ignore bundles in public dir 2018-10-02 16:24:07 -07:00
Brandon Millman
42083e1408 Fix linter errors 2018-10-02 16:23:54 -07:00
fragosti
3cd7253f7b Add to README 2018-10-02 16:17:44 -07:00
Brandon Millman
343b922ec1 Merge branch 'development' into feature/asset-buyer/improve-asset-buyer-manager
* development: (178 commits)
  Change cache key back to repo from repo-built
  Change the lint command back
  Merge build & install
  Remove deps cache all together
  Cache all nested node_modules directories
  Explicitly specify yarn cache folder
  Ignore linter issues
  Fix linter issue
  Separate deps and built caches
  Build tslint rules before running linter
  Cache yarn cache directory without node modules
  Run linter before prettier as it fails more often
  Add yarn cache path
  Split CI install and build steps
  Move bundle-size out of static tests and don't wait for a build with static tests
  Introduce a build:ci command that doesn't build webpack bundles
  Measure only one bundle size as they're the same
  Fix linter errors
  Fix no_website CI builds
  Check bundle size on CI
  ...
2018-10-02 16:13:16 -07:00
Brandon Millman
6deb027bdf Clean up interfaces and exports 2018-10-02 16:10:41 -07:00
fragosti
ad56c9ea78 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/instant/init 2018-10-02 16:10:15 -07:00
fragosti
dde918e9a0 Add public dir 2018-10-02 16:06:25 -07:00
fragosti
8990b92dd6 Add build:ci command 2018-10-02 16:02:35 -07:00
Brandon Millman
75679835a7 Remove static methods to retrieve assetDatas from SRA 2018-10-02 15:52:27 -07:00
fragosti
2540660262 Add dev environment 2018-10-02 15:48:00 -07:00
Brandon Millman
75d6970e6c Add AssetUnavailable error 2018-10-02 15:44:11 -07:00
F. Eugene Aumson
98c1952956 fix: persist artifacts with only relevant sources
https://github.com/0xProject/0x-monorepo/pull/1108
https://app.asana.com/0/684263176955174/842516551768097/f
2018-10-02 17:50:58 -04:00
Brandon Millman
b3a868da0e Merge AssetBuyer and AssetBuyerManager 2018-10-02 13:54:57 -07:00
fragosti
20f18c3054 Clean up package json 2018-10-02 13:34:32 -07:00
fragosti
a64bee9f83 Tests are working with coverage 2018-10-02 13:29:14 -07:00
Fabio Berger
c07412a992 Use new Link UI component everywhere, and add complementary ALink type 2018-10-02 20:10:59 +01:00
Leonid Logvinov
f1ecb8c5cb Merge pull request #1104 from 0xProject/feature/bundlesize
Bundle size reporting
2018-10-02 15:29:49 +02:00
Leonid Logvinov
a4153144db Change cache key back to repo from repo-built 2018-10-02 15:09:25 +02:00
Leonid Logvinov
d6e0dc4bd2 Change the lint command back 2018-10-02 15:09:25 +02:00
Leonid Logvinov
fed7e0c858 Merge build & install 2018-10-02 15:09:25 +02:00
Leonid Logvinov
8ee34c49a9 Remove deps cache all together 2018-10-02 15:09:25 +02:00
Leonid Logvinov
194a5de564 Cache all nested node_modules directories 2018-10-02 15:09:25 +02:00
Leonid Logvinov
cc7710abd2 Explicitly specify yarn cache folder 2018-10-02 15:09:25 +02:00
Leonid Logvinov
10f3ee32a4 Ignore linter issues 2018-10-02 15:09:25 +02:00
Leonid Logvinov
8c985eb579 Fix linter issue 2018-10-02 15:09:24 +02:00
Leonid Logvinov
3a93c8a6e0 Separate deps and built caches 2018-10-02 15:09:24 +02:00
Leonid Logvinov
86cc98b245 Build tslint rules before running linter 2018-10-02 15:09:24 +02:00
Leonid Logvinov
ddc0813d90 Cache yarn cache directory without node modules 2018-10-02 15:09:24 +02:00
Leonid Logvinov
a02e6c0441 Run linter before prettier as it fails more often 2018-10-02 15:09:24 +02:00
Leonid Logvinov
52ac84335c Add yarn cache path 2018-10-02 15:09:24 +02:00
Leonid Logvinov
97616eb8e4 Split CI install and build steps 2018-10-02 15:09:24 +02:00
Leonid Logvinov
9e3d1cd63d Move bundle-size out of static tests and don't wait for a build with static tests 2018-10-02 15:09:24 +02:00
Leonid Logvinov
f4e4eef48e Introduce a build:ci command that doesn't build webpack bundles 2018-10-02 15:09:24 +02:00
Leonid Logvinov
16720d4fc7 Measure only one bundle size as they're the same 2018-10-02 15:09:24 +02:00
Leonid Logvinov
f884cc826f Fix linter errors 2018-10-02 15:09:23 +02:00
Leonid Logvinov
1059acf56f Fix no_website CI builds 2018-10-02 15:09:23 +02:00
Leonid Logvinov
c3be851c18 Check bundle size on CI 2018-10-02 15:09:23 +02:00
Leonid Logvinov
00051ae5bb Add a command to run bundle size reporter 2018-10-02 15:09:23 +02:00
Leonid Logvinov
9ad4a135d2 Merge pull request #1106 from 0xProject/feature/postpublish-cleanup
Update package.json versions to match the npm ones
2018-10-02 15:08:43 +02:00
Leonid Logvinov
f80faf0b48 Update package.json versions to match the npm ones 2018-10-02 14:45:16 +02:00
Leonid Logvinov
8b7888b736 Updated CHANGELOGS 2018-10-02 12:37:34 +02:00
Leonid Logvinov
a9ec51ac10 Remove 0x.js bundles from .npmignore 2018-10-02 12:13:38 +02:00
Fabio Berger
0c99680396 Improve mobile padding 2018-10-02 10:51:41 +01:00
Fabio Berger
91afc37d2a Fix hovering 2018-10-02 10:30:44 +01:00
Fabio Berger
b79e3eaec6 Simplify helper methods 2018-10-02 09:15:41 +01:00
Fabio Berger
94766cbe19 Use colors module 2018-10-02 09:15:33 +01:00
Fabio Berger
d435341f9b Use container instead of div 2018-10-02 09:11:50 +01:00
Fabio Berger
c42b340042 Move more copy to translation files 2018-10-02 09:07:53 +01:00
Fabio Berger
3a9791e794 Make menuSubsectionsBySection optional 2018-10-01 22:26:06 +01:00
Fabio Berger
0d57ed6c93 Rename for clarity 2018-10-01 22:25:45 +01:00
Fabio Berger
457ed57d70 Move constants before configs and add TODO comment 2018-10-01 22:08:59 +01:00
Fabio Berger
67a2359014 Add comment about link component 2018-10-01 22:07:03 +01:00
Fabio Berger
136ef38277 Move colors to colors.ts file 2018-10-01 22:04:21 +01:00
Fabio Berger
42f6842844 Fix bug where button wouldn't be highlighted after hitting browser back button despite the cursor resting above it 2018-10-01 22:04:06 +01:00
Fabio Berger
8daf2df6e6 Prefer basscss over style 2018-10-01 22:03:23 +01:00
Fabio Berger
6a33c4685e Further shorten description 2018-10-01 22:02:57 +01:00
Brandon Millman
c1fb0d7fdf Add Jason to website 2018-10-01 11:52:49 -07:00
Fabio Berger
67e689158f Add missing yarn.lock changes 2018-10-01 17:53:30 +01:00
Fabio Berger
dbbf04bc7d Fix bug in sol-doc 2018-10-01 17:53:19 +01:00
Fabio Berger
bad6761e13 Merge pull request #1099 from 0xProject/solidityDocRefImprovements
Solidity Doc Improvements
2018-10-01 16:37:44 +01:00
Fabio Berger
0febb085c5 Fix linter 2018-10-01 16:29:29 +01:00
Fabio Berger
011cadc1ff Disable max file size tslint rule for types file 2018-10-01 16:21:51 +01:00
Fabio Berger
6ffdc318e7 Disable max file line count tslint rule for types file 2018-10-01 16:10:22 +01:00
Fabio Berger
733bb28c1c Fix bug where main content scrollbar wasn't showing up after navigating back in browser history via keyboard shortcut 2018-10-01 14:45:28 +01:00
Fabio Berger
3d1c2cb296 Fix incorrect merge errors 2018-10-01 13:49:43 +01:00
Fabio Berger
c7371cc048 Hide .svg file contents from PR review diff 2018-10-01 13:31:07 +01:00
Fabio Berger
7fdde15a5d Revert command name 2018-10-01 13:28:33 +01:00
Fabio Berger
8651b7bc25 fix merge 2018-10-01 13:16:00 +01:00
Fabio Berger
e7ab9938ce merge 2018-10-01 13:11:27 +01:00
Fabio Berger
9c6bb4245d Merge branch 'dev-section-redesign' into doc-overview-page
* dev-section-redesign:
  Publish
  Updated CHANGELOGS
  Un-nest the interface to fix the doc rendering
2018-10-01 13:08:06 +01:00
Fabio Berger
d4089a1794 Update react-scroll to include fix of using history.replaceState instead of history.pushState 2018-10-01 12:53:31 +01:00
Fabio Berger
de7470d936 merge development 2018-09-30 07:31:34 +01:00
Fabio Berger
b9eb2b3918 Add test that structs are documented in separate section 2018-09-29 14:22:49 +01:00
Fabio Berger
2b6a9911f5 Add test for methodSignature gen for methods with param/return structs 2018-09-29 14:22:33 +01:00
Fabio Berger
005b7a55e8 Fix tests 2018-09-29 14:22:05 +01:00
Fabio Berger
ac14dd2b29 Publish
- 0x.js@1.0.7
 - @0xproject/abi-gen@1.0.12
 - @0xproject/assert@1.0.12
 - @0xproject/asset-buyer@1.0.2
 - @0xproject/base-contract@3.0.0
 - @0xproject/connect@3.0.0
 - @0xproject/contract-wrappers@2.0.1
 - contracts@2.1.48
 - @0xproject/dev-utils@1.0.11
 - ethereum-types@1.0.9
 - @0xproject/fill-scenarios@1.0.6
 - @0xproject/json-schemas@1.0.5
 - @0xproject/metacoin@0.0.22
 - @0xproject/migrations@1.0.13
 - @0xproject/monorepo-scripts@1.0.10
 - @0xproject/order-utils@1.0.6
 - @0xproject/order-watcher@2.1.0
 - @0xproject/react-docs@1.0.12
 - @0xproject/react-shared@1.0.13
 - @0xproject/sol-compiler@1.1.6
 - @0xproject/sol-cov@2.1.6
 - @0xproject/sol-doc@1.0.1
 - @0xproject/sol-resolver@1.0.12
 - @0xproject/sra-report@1.0.12
 - @0xproject/sra-spec@1.0.5
 - @0xproject/subproviders@2.0.6
 - @0xproject/testnet-faucets@1.0.50
 - @0xproject/types@1.1.2
 - @0xproject/typescript-typings@3.0.0
 - @0xproject/utils@2.0.0
 - @0xproject/web3-wrapper@3.0.2
 - @0xproject/website@0.0.53
2018-09-28 19:16:07 +01:00
Fabio Berger
c354129b6f Updated CHANGELOGS 2018-09-28 19:15:38 +01:00
Fabio Berger
c7e26cd448 Un-nest the interface to fix the doc rendering 2018-09-28 18:59:28 +01:00
Fabio Berger
822b848dd7 Rename website yarn watch_without_deps to yarn dev 2018-09-28 18:44:34 +01:00
Fabio Berger
033340e304 Fix typo 2018-09-28 18:38:10 +01:00
Fabio Berger
9ae60d0abe Export class instead of function 2018-09-28 17:20:24 +01:00
Fabio Berger
2bf05193b4 Convert package descriptions to markdown and linkify them 2018-09-28 15:48:16 +01:00
Fabio Berger
b865492137 Fix minor scrolling issue 2018-09-28 15:28:29 +01:00
Fabio Berger
4d23cf85b9 Add mobile menu to overview page 2018-09-28 15:17:28 +01:00
Fabio Berger
54f535b375 Add back ability to listen for menu click events from the sidebar 2018-09-28 15:16:17 +01:00
Fabio Berger
155a4a8f06 Add sidebar menu, proper scrolling and mobile-optimize 2018-09-28 14:28:39 +01:00
Fabio Berger
12cfa6b450 Make sidebar menu item formatting optional so package names (with hyphens) render properly 2018-09-28 14:28:06 +01:00
Fabio Berger
10bd255e9d Shorten tutorial descriptions 2018-09-28 14:27:12 +01:00
Fabio Berger
e664768890 Import ObjectMap from types now that it's moved 2018-09-28 13:32:04 +01:00
fragosti
2471e10346 Have React setup with basic build working 2018-09-28 13:09:16 +02:00
Fabio Berger
ba7de7204d merge development 2018-09-28 12:08:12 +01:00
Fabio Berger
005a2e12ba Fix badge alignment 2018-09-28 11:33:30 +01:00
Fabio Berger
6dff24906e Fix network badges for V1 and add them for V2 2018-09-28 11:05:13 +01:00
Fabio Berger
398b292636 Add more basic types 2018-09-28 11:04:51 +01:00
Fabio Berger
545472a38f Fix section headers 2018-09-28 10:50:55 +01:00
Fabio Berger
28f5cd0641 Only add Stucts section if there are any 2018-09-28 10:30:24 +01:00
Fabio Berger
144561c53b Fix missing devdoc comments in output by fixing improper encoding of methodSignatures 2018-09-28 10:28:57 +01:00
Jacob Evans
a737cfa004 Merge pull request #1090 from 0xProject/bug/contract-wrappers/handle-revert-with-reason
[contract-wrappers] Test revert with reason when decoding call result
2018-09-28 00:21:15 +00:00
Jacob Evans
21f6072186 Handle revert with reason when decoding call result
We use in-process ganache which throws on an RPC error. This means all of our tests get a nice revert error thrown when testing against ganache. This is not possible with RPC providers and a revert with reason result is returned. Our callAsync doesn't handle this and attempts to decode the revert with reason error log as a successful log, which results in an error while decoding.

This only works with our fork of ethers https://github.com/ethers-io/ethers.js/pull/188 and will need to be re-worked when updating to Ethers.js 4
2018-09-28 09:59:58 +10:00
Alex Browne
94badedad4 Remove yarn postinstall hack (#1098) 2018-09-27 15:34:01 -07:00
Fabio Berger
8531f52456 Switch over remaining usage of sections.types for typeSectionName 2018-09-27 23:32:29 +01:00
Fabio Berger
092b184f45 Fix linter 2018-09-27 23:30:11 +01:00
Fabio Berger
b2ff7bda02 Explain cast to any 2018-09-27 23:24:05 +01:00
Fabio Berger
e0ff3484cf Improve switch case 2018-09-27 23:20:21 +01:00
Fabio Berger
95e84aae49 Improve comment 2018-09-27 23:18:32 +01:00
Fabio Berger
338b7d2ec0 Alphabetize 2018-09-27 23:16:55 +01:00
Fabio Berger
37ab789e84 Remove excessive type 2018-09-27 23:14:34 +01:00
Fabio Berger
957af23a64 Include structs section so that we can render struct params/return values properly with a popover 2018-09-27 23:02:12 +01:00
Fabio Berger
d4077ae970 Fix linter 2018-09-27 23:01:12 +01:00
Fabio Berger
17d4b467d4 Only show arguments if the params are named (i.e not generated getters) 2018-09-27 23:00:25 +01:00
Fabio Berger
ac878d8fdb Improve keys 2018-09-27 23:00:01 +01:00
Fabio Berger
ac04dbf7e4 Re-use interface component for rendering structs but label it differently 2018-09-27 19:50:02 +01:00
Fabio Berger
cfddea931d Make sure basic solidity types are colored orange 2018-09-27 19:49:07 +01:00
Fabio Berger
a6672e0190 Don't render colon for auto-generated getters 2018-09-27 19:43:10 +01:00
Fabio Berger
5347bf587f Render fallback functions better 2018-09-27 18:55:01 +01:00
Fabio Berger
63ffdb3895 Improve key 2018-09-27 18:52:51 +01:00
Fabio Berger
e7b1374f23 Fix dropdown menu item so it says "0x smart contracts" not "smart contract" 2018-09-27 18:52:37 +01:00
Fabio Berger
ceff5c9c2b Rename for clarity 2018-09-27 18:52:14 +01:00
Fabio Berger
dddfe8ae50 Add typeSectionName to docsInfo so we don't use hard-coded "Types" 2018-09-27 18:51:30 +01:00
Fabio Berger
c0498944c3 Add more robust key 2018-09-27 18:40:38 +01:00
Fabio Berger
5cc11912a7 Pull in only contracts we want rendered on the doc page 2018-09-27 18:39:27 +01:00
Leonid Logvinov
bf3795d2ac Merge pull request #1097 from 0xProject/feature/export-expiration-watcher
Export ExpirationWatcher from OrderWatcher
2018-09-27 12:53:36 +02:00
Leonid Logvinov
bc48bc99c3 Add PR number 2018-09-27 12:53:05 +02:00
Leonid Logvinov
51bfd1ca5e Export ExpirationWatcher from OrderWatcher 2018-09-27 12:48:48 +02:00
Leonid Logvinov
9160cd4983 Merge pull request #1069 from 0xProject/feature/ts-ethers
Upgrade to TS version of ethers
2018-09-27 12:47:00 +02:00
Fabio Berger
c55a419178 Split _genMethodDoc into it and _genFallbackDoc for clarity. Add isFallback boolean 2018-09-27 10:57:42 +01:00
Leonid Logvinov
63d79faa85 Fix linter errors 2018-09-27 11:51:11 +02:00
Fabio Berger
70e412e375 Merge pull request #1096 from 0xProject/fixIsValidECSignature
Add address normalization to isValidECSignature method
2018-09-27 10:29:18 +01:00
Leonid Logvinov
a51919db0e Remove ethers.js carret as it's a beta version 2018-09-27 11:24:03 +02:00
Leonid Logvinov
60971be35a Throw revert reasons from contract wrappers 2018-09-27 11:21:47 +02:00
Leonid Logvinov
cb99ebf78a Throw revert reasons from contract wrappers 2018-09-27 11:21:39 +02:00
Fabio Berger
6f02a3f40d Fix PR nr 2018-09-27 10:05:04 +01:00
Fabio Berger
0591f1d32a Add address normalization to isValidECSignature method 2018-09-27 10:03:54 +01:00
Fabio Berger
1402119c84 Remove RC version warnings 2018-09-26 22:48:30 +01:00
Francesco Agosti
a162281529 Merge pull request #1094 from 0xProject/feature/website/coinbase-wallet-portal-fixes-and-clay-title
[website] Use coinbase wallet instead of Toshi, fix portal layout, update Clay's title
2018-09-26 18:20:06 +02:00
F. Eugene Aumson
8c18a8fefc Merge pull request #1093 from feuGeneA/sol-doc-fixes
[sol-doc] fixes
2018-09-26 12:16:33 -04:00
fragosti
48f6452c3b remove items-center classname 2018-09-26 17:58:48 +02:00
fragosti
bd002caadd Change clay to Ecosystem Development Lead 2018-09-26 17:56:09 +02:00
fragosti
d6090921a8 Update everything to Coinbase Wallet instead of Toshi 2018-09-26 17:55:40 +02:00
Francesco Agosti
78a693e092 Merge pull request #1088 from 0xProject/fix/website/relayers-column
[website] When number of relayers is less than number of columns, reduce column…
2018-09-26 17:40:12 +02:00
F. Eugene Aumson
3f61d27656 fix: add bin file for sol-doc cli 2018-09-26 11:28:53 -04:00
F. Eugene Aumson
30525d15f4 Merge pull request #1004 from feuGeneA/sol-doc
[ethereum-types, react-docs, sol-compiler, sol-doc, types, typescript-typings, website] Add new Solidity documentation generation utility
2018-09-26 10:15:53 -04:00
Fabio Berger
f3ad64aa1c Move more text over to translation files 2018-09-26 14:52:58 +01:00
Francesco Agosti
c429409ed7 Merge pull request #1091 from 0xProject/feature/sra-spec/order-config-to-post-and-other-bugs
[connect][sra-spec] Update sra-spec and connect to have /order_config be a POST and other small improvements
2018-09-26 15:34:26 +02:00
F. Eugene Aumson
2bdaa58d71 fix: use latest versions of @0xproject packages 2018-09-26 09:22:06 -04:00
F. Eugene Aumson
75826fd559 Merge remote-tracking branch 'upstream/development' into sol-doc 2018-09-26 09:19:02 -04:00
F. Eugene Aumson
0ce6f03ed5 fix: disable tslint max-file-line-count...
before, tslint was saying "ERROR:
/home/gene/0x-monorepo/packages/types/src/index.ts[598, 2]: This file
has 599 lines, which exceeds the maximum of 500 lines allowed. Consider
breaking this file up into smaller parts."

https://github.com/0xProject/0x-monorepo/pull/1004#issuecomment-424704651
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-26 09:14:28 -04:00
Leonid Logvinov
5d73eebf6a Merge branch 'development' into feature/ts-ethers 2018-09-26 14:55:52 +02:00
Fabio Berger
13aa98f0f3 Merge pull request #1092 from 0xProject/addFlagToPublishReleases
Add Flag to publish releases command-line tool
2018-09-26 13:50:08 +01:00
Fabio Berger
d8c68b000b Implement dev home 2018-09-26 13:38:22 +01:00
Fabio Berger
a8d8f90d23 Fix logo to link to docs home 2018-09-26 13:37:58 +01:00
Fabio Berger
ac1005b5a8 Use new link component in Developer dropdown 2018-09-26 13:37:46 +01:00
Fabio Berger
a9b4027dc4 Create a link ui component that abstracts away interval vs. internal links 2018-09-26 13:37:25 +01:00
Fabio Berger
3504e875cc Move /docs endpoint before longer ones so doesn't overtake other doc endpoints 2018-09-26 13:35:41 +01:00
Fabio Berger
4a94f8b1ca Merge branch 'development' into addFlagToPublishReleases
* development:
  Add weijie and rahul
  Change news link
2018-09-26 13:18:20 +01:00
Fabio Berger
f8532b3f51 Typo 2018-09-26 13:15:42 +01:00
Fabio Berger
b244f3e2c0 Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Add weijie and rahul
  Change news link
2018-09-26 13:14:23 +01:00
Fabio Berger
f33ecfd2fc Support passing in package names into publish_release_notes command-line for when publishing must be done manually 2018-09-26 13:11:12 +01:00
fragosti
f15751d800 Add to changelog 2018-09-26 14:06:53 +02:00
fragosti
e5e439adb9 Change /order_config endpoint to POST 2018-09-26 14:01:51 +02:00
fragosti
2d8f423cee Update examples 2018-09-26 13:57:41 +02:00
fragosti
5905fdb73b Fix erroneous ERC721 proxy id 2018-09-26 13:22:39 +02:00
fragosti
4ed9323804 Fix development flow 2018-09-26 13:19:01 +02:00
Francesco Agosti
d77c6e13b0 Merge pull request #1089 from 0xProject/feature/website/new-hires-sept-v2-announcement
[website] new hires and 0x v2 news link
2018-09-25 23:04:12 +02:00
fragosti
4e10f2c6f2 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/new-hires-sept-v2-announcement 2018-09-25 23:02:33 +02:00
F. Eugene Aumson
d3edb9721c Merge remote-tracking branch 'upstream/development' into sol-doc 2018-09-25 16:34:44 -04:00
Fabio Berger
1b35a6e3b5 Publish
- 0x.js@1.0.6
 - @0xproject/abi-gen@1.0.11
 - @0xproject/assert@1.0.11
 - @0xproject/asset-buyer@1.0.1
 - @0xproject/base-contract@2.0.5
 - @0xproject/connect@2.0.4
 - @0xproject/contract-wrappers@2.0.0
 - contracts@2.1.47
 - @0xproject/dev-utils@1.0.10
 - ethereum-types@1.0.8
 - @0xproject/fill-scenarios@1.0.5
 - @0xproject/json-schemas@1.0.4
 - @0xproject/metacoin@0.0.21
 - @0xproject/migrations@1.0.12
 - @0xproject/order-utils@1.0.5
 - @0xproject/order-watcher@2.0.0
 - @0xproject/react-docs@1.0.11
 - @0xproject/react-shared@1.0.12
 - @0xproject/sol-compiler@1.1.5
 - @0xproject/sol-cov@2.1.5
 - @0xproject/sol-resolver@1.0.11
 - @0xproject/sra-report@1.0.11
 - @0xproject/sra-spec@1.0.4
 - @0xproject/subproviders@2.0.5
 - @0xproject/testnet-faucets@1.0.49
 - @0xproject/types@1.1.1
 - @0xproject/typescript-typings@2.0.2
 - @0xproject/utils@1.0.11
 - @0xproject/web3-wrapper@3.0.1
 - @0xproject/website@0.0.52
2018-09-25 21:34:14 +01:00
Fabio Berger
900a8aee76 Updated CHANGELOGS 2018-09-25 21:33:55 +01:00
F. Eugene Aumson
de9f5d350f fix: call out a HACK in comments
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r220010054
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:40 -04:00
F. Eugene Aumson
e45f0b0eaf fix: update smart contract doc intros
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r220009790
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r220009909
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:40 -04:00
F. Eugene Aumson
2e7b218f40 fix: comments
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219990314
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r220007992
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:40 -04:00
F. Eugene Aumson
7fbfd9ccd9 fix: print error and exit process; don't re-throw
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219979003
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:40 -04:00
F. Eugene Aumson
1db5ff617f fix: split line for readability
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219978696
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:40 -04:00
F. Eugene Aumson
ac5376a1ca fix: rename JSON_TABWIDTH to JSON_TAB_WIDTH
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219977842
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:39 -04:00
F. Eugene Aumson
600ffd93a6 fix: use latest versions of @0xproject packages
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219977747
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 16:31:26 -04:00
fragosti
22597674d2 Add weijie and rahul 2018-09-25 22:29:16 +02:00
Fabio Berger
adf5acd5c4 Update yarn.lock 2018-09-25 21:23:06 +01:00
fragosti
055bcb52f8 Change news link 2018-09-25 22:04:12 +02:00
F. Eugene Aumson
6174267f69 fix: explain why tslint rule is disabled
https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219976511
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 15:51:32 -04:00
F. Eugene Aumson
e8c8d3e722 fix: rename SupportedDocJson field to SolDoc
from Solidity

https://github.com/0xProject/0x-monorepo/pull/1004#discussion_r219976199
https://github.com/0xProject/0x-monorepo/pull/1004
2018-09-25 15:51:03 -04:00
Brandon Millman
d20f713fad When number of relayers is less than number of columns, reduce column number to number of relayers 2018-09-25 21:08:32 +02:00
Fabio Berger
b40861747b Properly render function generic types that don't extend another type 2018-09-25 17:34:22 +01:00
Fabio Berger
b73df28454 Merge pull request #1087 from 0xProject/addTxHashToOrderState
Add transactionHash to OrderState and emit it from OrderWatcher
2018-09-25 16:37:24 +01:00
Fabio Berger
5afc739397 Add changelog entry 2018-09-25 16:37:08 +01:00
Fabio Berger
9eecf3683b Add transactionHash to OrderState and emit it from OrderWatcher subscription 2018-09-25 16:10:13 +01:00
Fabio Berger
7570f3db51 Merge pull request #1080 from 0xProject/upgradeBlockstream
Fix dropped events issue in Order-watcher and Contract-wrappers subscriptions
2018-09-25 14:59:37 +01:00
fragosti
04dd4ce6d1 Add to CHANGELOG 2018-09-25 14:10:38 +02:00
Fabio Berger
977d55c61b merge development 2018-09-25 13:07:14 +01:00
fragosti
ebe731ea86 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/asset-buyer/improve-asset-buyer-manager 2018-09-25 14:06:07 +02:00
fragosti
b853f04972 Make package public again, but add warning 2018-09-25 14:01:16 +02:00
fragosti
49cdd85b1d Add AssetBuyerManager to README 2018-09-25 13:58:48 +02:00
fragosti
47f8b5d6fc Use options object convention everywhere, and make package private 2018-09-25 13:55:07 +02:00
Leonid Logvinov
78ef98c27c Publish
- 0x.js@1.0.5
 - @0xproject/abi-gen@1.0.10
 - @0xproject/assert@1.0.10
 - @0xproject/asset-buyer@1.0.0
 - @0xproject/base-contract@2.0.4
 - @0xproject/connect@2.0.3
 - @0xproject/contract-wrappers@1.0.5
 - contracts@2.1.46
 - @0xproject/dev-utils@1.0.9
 - @0xproject/fill-scenarios@1.0.4
 - @0xproject/json-schemas@1.0.3
 - @0xproject/metacoin@0.0.20
 - @0xproject/migrations@1.0.11
 - @0xproject/order-utils@1.0.4
 - @0xproject/order-watcher@1.0.5
 - @0xproject/react-docs@1.0.10
 - @0xproject/react-shared@1.0.11
 - @0xproject/sol-compiler@1.1.4
 - @0xproject/sol-cov@2.1.4
 - @0xproject/sol-resolver@1.0.10
 - @0xproject/sra-report@1.0.10
 - @0xproject/sra-spec@1.0.3
 - @0xproject/subproviders@2.0.4
 - @0xproject/testnet-faucets@1.0.48
 - @0xproject/types@1.1.0
 - @0xproject/utils@1.0.10
 - @0xproject/web3-wrapper@3.0.0
 - @0xproject/website@0.0.51
2018-09-25 13:48:55 +02:00
Leonid Logvinov
411813d8d9 Updated CHANGELOGS 2018-09-25 13:48:44 +02:00
Leonid Logvinov
64f41259eb Merge pull request #1085 from 0xProject/feature/export-sra-types
[sra-types] Move SRA types from @0xproject/connect to @0xproject/types
2018-09-25 13:36:47 +02:00
Fabio Berger
fc3acec669 Fix lint issues 2018-09-25 12:32:20 +01:00
Leonid Logvinov
b85db17e75 Move SRA types from @0xproject/connect to @0xproject/sra-types 2018-09-25 13:12:12 +02:00
Fabio Berger
a05530f821 Fix prettier 2018-09-25 12:06:37 +01:00
Fabio Berger
173b36c54c Fix prettier 2018-09-25 12:06:28 +01:00
Fabio Berger
55ca971186 Decode logs received from blockstream 2018-09-25 12:05:44 +01:00
Fabio Berger
284930eb58 Add missing type 2018-09-25 11:30:27 +01:00
Fabio Berger
902691e289 Update changelogs 2018-09-25 11:29:36 +01:00
Fabio Berger
0afe55f2ff Refactor blockstream integration to use the proper callback method interface 2018-09-25 11:20:09 +01:00
Fabio Berger
21910a7129 Add entry about newly exposed method 2018-09-25 11:02:49 +01:00
Fabio Berger
9c89d1e99b Expose method to send raw JSON RPC payloads 2018-09-25 10:45:11 +01:00
Alex Browne
408f573188 Use the 0xorg DockerHub account instead of albrow (#1084) 2018-09-24 14:31:26 -07:00
F. Eugene Aumson
574270d061 fix: increase mocha timeout value
prior CI runs were failing because of this.
2018-09-24 17:17:28 -04:00
F. Eugene Aumson
9af5e3ba8e fix: add CHANGELOG.json 2018-09-24 17:17:19 -04:00
fragosti
89033e01e8 Provide convenience methods on AssetBuyerManager 2018-09-24 23:14:07 +02:00
Alex Browne
6f2ab23bd0 Feature/custom verdaccio dockerfile (#1083)
Create custom verdaccio docker image
2018-09-24 13:54:25 -07:00
fragosti
264b25c58d Rename StandardRelayerAPIAssetBuyerManager to just AssetBuyerManager and generalize it 2018-09-24 22:21:25 +02:00
F. Eugene Aumson
2116548eed Merge remote-tracking branch 'upstream/development' into sol-doc 2018-09-24 13:30:37 -04:00
F. Eugene Aumson
57fca16d7b fix: use contract name for constructor method name
and for its return value
2018-09-24 13:24:03 -04:00
F. Eugene Aumson
a900255820 fix: document indexed event arguments 2018-09-24 13:05:35 -04:00
F. Eugene Aumson
bd7565ceda fix: save v1 contract doc/deploy commands
For posterity, save commands needed to use sol-doc to generate and
deploy documentation objects for v1 contracts.
2018-09-24 12:36:26 -04:00
F. Eugene Aumson
880cd6e440 fix: document return value's type, not its name 2018-09-24 12:29:02 -04:00
Francesco Agosti
b830c28d83 Merge pull request #1037 from 0xProject/feature/forwarder-helper/sra-and-rpc
[asset-buyer] Create new AssetBuyer class
2018-09-24 17:47:59 +02:00
Francesco Agosti
4a316571ff Merge pull request #1073 from 0xProject/fix/website/signing-order-validation-bug
[website] Fix order creation and fill flow in Portal
2018-09-24 17:23:13 +02:00
Fabio Berger
5e1a2bd972 Merge development 2018-09-24 15:53:34 +01:00
Fabio Berger
fc33eacd2c Merge pull request #1082 from 0xProject/fixGetBlocks
Fix block fetch error if block not found
2018-09-24 15:49:58 +01:00
fragosti
748a8a8ae3 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into fix/website/signing-order-validation-bug 2018-09-24 16:48:47 +02:00
Fabio Berger
7516959c9f Add comments for clarity 2018-09-24 15:14:14 +01:00
Fabio Berger
311b925919 Add to doc comment why a block might not be returned to the caller 2018-09-24 15:14:07 +01:00
Fabio Berger
5d88a56452 Add PR nr 2018-09-24 15:11:29 +01:00
Fabio Berger
ebddf82819 Add CHANGELOG entry for change to getBlockAsync 2018-09-24 15:02:47 +01:00
Fabio Berger
d0448c2bbd Fix bug where if block wasn't found, getBlockAsync would throw. Now it returns undefined 2018-09-24 15:02:06 +01:00
fragosti
d8d1c98a40 Upgrade all deps 2018-09-24 15:53:34 +02:00
fragosti
f49b231e91 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/forwarder-helper/sra-and-rpc 2018-09-24 15:45:06 +02:00
fragosti
7a43e19116 Improve README 2018-09-24 15:43:02 +02:00
fragosti
e4b664bafa Add expiry buffer 2018-09-24 13:17:38 +02:00
F. Eugene Aumson
98d06d6d25 BREAKING CHANGE: document contracts from sol-doc
Change website to accept smart contract documentation in the format
generated by sol-doc rather than that generated by Doxity.
2018-09-22 11:29:27 -04:00
F. Eugene Aumson
9f0dfb1e1a feat: make sol-doc only document what's requested
if a list of contracts-to-document is passed into sol-doc, then the
output should only contain documentation for the contracts requested.

if an empty/undefined list is passed, then it should document all
contracts that were found.
2018-09-22 10:55:46 -04:00
F. Eugene Aumson
37cb18e1da fix: rename variable 2018-09-22 10:21:27 -04:00
F. Eugene Aumson
3e5d427d4e feat: add sol-doc command-line interface
modified sol-compiler to output progress/warning/error/etc messages to
stderr rather than stdout, so that sol-doc can put its output (and
nothing else) to stdout.

for posterity, added sol-doc cli usage as npm scripts to package.json.
2018-09-22 10:14:49 -04:00
Fabio Berger
8bce407aec Add order-utils to README list 2018-09-21 17:36:05 +01:00
fragosti
7a5376621f Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/forwarder-helper/sra-and-rpc 2018-09-21 17:20:48 +02:00
Leonid Logvinov
29f6adc2ed Publish
- 0x.js@1.0.4
 - @0xproject/abi-gen@1.0.9
 - @0xproject/assert@1.0.9
 - @0xproject/base-contract@2.0.3
 - @0xproject/connect@2.0.2
 - @0xproject/contract-wrappers@1.0.4
 - contracts@2.1.45
 - @0xproject/dev-utils@1.0.8
 - ethereum-types@1.0.7
 - @0xproject/fill-scenarios@1.0.3
 - @0xproject/forwarder-helper@1.0.4
 - @0xproject/json-schemas@1.0.2
 - @0xproject/metacoin@0.0.19
 - @0xproject/migrations@1.0.10
 - @0xproject/monorepo-scripts@1.0.9
 - @0xproject/order-utils@1.0.3
 - @0xproject/order-watcher@1.0.4
 - @0xproject/react-docs@1.0.9
 - @0xproject/react-shared@1.0.10
 - @0xproject/sol-compiler@1.1.3
 - @0xproject/sol-cov@2.1.3
 - @0xproject/sol-resolver@1.0.9
 - @0xproject/sra-report@1.0.9
 - @0xproject/sra-spec@1.0.2
 - @0xproject/subproviders@2.0.3
 - @0xproject/testnet-faucets@1.0.47
 - @0xproject/types@1.0.2
 - @0xproject/typescript-typings@2.0.1
 - @0xproject/utils@1.0.9
 - @0xproject/web3-wrapper@2.0.3
 - @0xproject/website@0.0.50
2018-09-21 16:59:27 +02:00
Leonid Logvinov
5446de6308 Updated CHANGELOGS 2018-09-21 16:59:16 +02:00
fragosti
5e84e9689f Small typos 2018-09-21 16:53:18 +02:00
Leonid Logvinov
9540db2aad Merge pull request #1081 from 0xProject/fix/node-types-unpin
Don't depend on a specific version of node types
2018-09-21 16:45:03 +02:00
Leonid Logvinov
7dd28d6fab Don't depend on a specific version of node types 2018-09-21 16:37:20 +02:00
fragosti
1bfaefb240 Add order provider response validation 2018-09-21 16:24:45 +02:00
fragosti
c48cf3ab3b Make asset buyer map private 2018-09-21 16:03:47 +02:00
fragosti
c64dcec772 More renaming 2018-09-21 15:58:04 +02:00
Fabio Berger
45dc2be083 Fix prettier 2018-09-21 14:53:25 +01:00
Fabio Berger
31f6fc065f Add changelog entries 2018-09-21 14:24:50 +01:00
fragosti
8dea48ebef Renamed orderFetcherResponseProcessor to orderProviderResponseProcessoer 2018-09-21 15:21:44 +02:00
fragosti
97150cf55f Add labels to TODOs 2018-09-21 14:56:54 +02:00
Fabio Berger
b0484eafe3 Upgrade blockstream to version that supports fetching logs by blockHash, fixing reliability issues 2018-09-21 13:46:10 +01:00
Fabio Berger
1b799e98e8 Add blockHash to FilterObject now that EIP234 is supported 2018-09-21 13:45:06 +01:00
Fabio Berger
e6840c60c7 Add assertion that one cannot specify both blockHash & fromBlock/toBlock to getLogsAsync 2018-09-21 13:43:06 +01:00
Fabio Berger
ba59879e7f Merge pull request #1079 from 0xProject/fixAwaitTxMined
Fix awaitTransactionMinedAsync for new Parity version
2018-09-21 11:36:58 +01:00
Leonid Logvinov
f3deabccf4 Add CHANGELOG entries 2018-09-21 12:10:25 +02:00
Leonid Logvinov
393f9e5a29 Fix the way we detect BN's 2018-09-21 12:05:13 +02:00
Fabio Berger
c10807c4e3 Add PR number 2018-09-21 11:04:30 +01:00
Fabio Berger
4e8ec2359d Also make sure the transactionReceipt contains a blockNumber when checking if a transaction has been mined. 2018-09-21 10:56:31 +01:00
Leonid Logvinov
79cf6969f9 Fix linter issue 2018-09-21 11:48:06 +02:00
Leonid Logvinov
3167bfde1a Remove unused import 2018-09-21 11:47:30 +02:00
Fabio Berger
cbd72b6e3d Merge pull request #1077 from PhABC/patch-1
[ethereum-types] Add BigNumber[] in ContractEventArg Type Definition
2018-09-21 00:01:25 +01:00
fragosti
fcca63a2dc Move some logic to order utils 2018-09-20 23:39:55 +02:00
Philippe Castonguay
90e28220fa Set ContractEventArg type definition to any 2018-09-20 16:19:08 -04:00
fragosti
35c324f67c Add utility to get assetDatas 2018-09-20 19:00:23 +02:00
F. Eugene Aumson
301e491952 Merge remote-tracking branch 'upstream/development' into sol-doc 2018-09-20 12:51:30 -04:00
fragosti
03e18ff7c6 Rename OrderFetcher to OrderProvider and other small improvements 2018-09-20 15:10:15 +02:00
fragosti
d23487bda9 Update descriptions for methods on AssetBuyer 2018-09-20 14:27:20 +02:00
fragosti
3238925aa4 Add better description to README 2018-09-20 14:09:11 +02:00
Philippe Castonguay
abd308455a Add BigNumber[] support in ContractEventArg
Currently, my contract has events that take a BigNumber array and typescript complains that ContractEventArg does not support this.
2018-09-19 20:17:00 -04:00
fragosti
a44f77a838 Implement StandardRelayerAPIAssetBuyerManager 2018-09-19 18:38:50 +02:00
Leonid Logvinov
5b6c91bb3f Fixes for the breaking changes in ethers 2018-09-19 17:56:23 +02:00
Leonid Logvinov
6701ec68bd Upgrade contract_templates to work with ethers 4.0 2018-09-19 17:56:23 +02:00
Leonid Logvinov
7b259c3f4c Remove types for ethers.js 2018-09-19 17:56:23 +02:00
Leonid Logvinov
ecbdf5f12b Upgrade to TS version of ethers 2018-09-19 17:56:23 +02:00
Fabio Berger
3e70ab015b Publish
- 0x.js@1.0.3
 - @0xproject/connect@2.0.1
 - @0xproject/contract-wrappers@1.0.3
 - contracts@2.1.44
 - @0xproject/fill-scenarios@1.0.2
 - @0xproject/forwarder-helper@1.0.3
 - @0xproject/migrations@1.0.9
 - @0xproject/order-utils@1.0.2
 - @0xproject/order-watcher@1.0.3
 - @0xproject/testnet-faucets@1.0.46
 - @0xproject/website@0.0.49
2018-09-19 16:13:24 +01:00
Fabio Berger
dab7f1a739 Updated CHANGELOGS 2018-09-19 16:13:15 +01:00
Fabio Berger
f6438725eb Update changelog entries 2018-09-19 15:59:17 +01:00
fragosti
a03b1d4d6c Move ObjectMap to shared types 2018-09-19 16:48:57 +02:00
fragosti
14345ab24e Rename forceOrderRefresh to shouldForceOrderRefresh 2018-09-19 16:02:52 +02:00
fragosti
60e2dfdbda Calculate min and max rates in buy quote 2018-09-19 15:58:30 +02:00
Fabio Berger
83ffbd05be Merge pull request #1074 from 0xProject/reduceBundleSizes
Reduce published packages bundle sizes
2018-09-19 14:50:01 +01:00
Fabio Berger
88be6b5e0d Add back in evm.bytecode.object since it's needed to generate contract-wrappers 2018-09-19 13:55:09 +01:00
Fabio Berger
aa47f85f48 Make higher-order packages copy over trimmed down artifacts 2018-09-19 12:57:45 +01:00
Fabio Berger
fec9c8f1c6 Create trimmed artifacts of v2 contracts 2018-09-19 12:53:00 +01:00
fragosti
93f7e33f6a Add isValidPercentage assert 2018-09-19 00:57:05 +02:00
fragosti
fd4b4f8f82 Make ForwaderWrapper take in a number for feePercentage instead of BigNumber 2018-09-18 23:56:07 +02:00
fragosti
0003666050 make the slippage percentage customizable by integrator 2018-09-18 16:42:52 +02:00
fragosti
b947609ff1 Restrict orders field of AssetBuyerOrdersAndFillableAmounts to SignedOrder for consistency 2018-09-18 16:26:50 +02:00
fragosti
38afd108f8 Fix order expired bug 2018-09-18 16:07:47 +02:00
fragosti
65f709d50a Move all constants to own file 2018-09-18 16:07:08 +02:00
fragosti
f5dbf212e3 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/forwarder-helper/sra-and-rpc 2018-09-18 15:58:47 +02:00
fragosti
f6e1bf78c8 Add yarn.lock 2018-09-18 14:33:47 +02:00
fragosti
950f279508 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into fix/website/signing-order-validation-bug 2018-09-18 14:15:31 +02:00
fragosti
e46807c28b Fix order creation and fill flow in Portal 2018-09-18 13:55:31 +02:00
Fabio Berger
e2559798df Publish
- 0x.js@1.0.2
 - @0xproject/contract-wrappers@1.0.2
 - @0xproject/forwarder-helper@1.0.2
 - @0xproject/migrations@1.0.8
 - @0xproject/order-watcher@1.0.2
 - @0xproject/testnet-faucets@1.0.45
 - @0xproject/website@0.0.48
2018-09-18 11:18:28 +01:00
Fabio Berger
ccc18620bf Updated CHANGELOGS 2018-09-18 11:18:19 +01:00
Fabio Berger
febe00db4f Merge pull request #1072 from 0xProject/addMissingEtherTokenConfig
Add missing mainnet addresses to ZRXToken & WETH artifacts
2018-09-18 11:05:28 +01:00
Fabio Berger
6f36048a8e Add CHANGELOG entries about bug fix 2018-09-18 10:43:18 +01:00
Fabio Berger
2457ecb7e7 Add missing mainnet addresses to ZRXToken & WETH artifacts 2018-09-18 10:29:27 +01:00
F. Eugene Aumson
30622631ff use Array.join rather than string concatenation 2018-09-17 19:31:47 -04:00
F. Eugene Aumson
4bab402e95 doc constructors as returning a Reference...
...not an Intrinsic
2018-09-17 19:31:45 -04:00
F. Eugene Aumson
91de15d50e remove stale comments 2018-09-17 19:31:42 -04:00
F. Eugene Aumson
d40a670d0b add newline to delimit interface declaration 2018-09-17 19:31:40 -04:00
F. Eugene Aumson
4ade674ada test multiple return values from a solidity method 2018-09-17 19:31:37 -04:00
F. Eugene Aumson
401ef2edef minorly tweak comments 2018-09-17 19:31:34 -04:00
F. Eugene Aumson
9201273939 add and test support for return comment 2018-09-17 19:31:32 -04:00
F. Eugene Aumson
5b07669bd0 add and test support for fallback functions 2018-09-17 19:31:30 -04:00
F. Eugene Aumson
3c7155afb0 test all the natspec stuff we use in our contracts 2018-09-17 19:31:23 -04:00
Jacob Evans
2378747570 Merge pull request #1063 from 0xProject/feature/0x.js/update-readme-import
0xjs README/website docs update
2018-09-17 23:59:27 +02:00
F. Eugene Aumson
a75981da14 test w/&w/out devdoc content in contract 2018-09-17 17:49:14 -04:00
F. Eugene Aumson
d5f964b58e test w/&w/out passing in contractsToCompile 2018-09-17 17:49:03 -04:00
Jacob Evans
2df569b727 Folder 1.0.0 -> 1.0.1 2018-09-17 21:33:50 +00:00
Jacob Evans
65aecc0024 Rename to v1->v0 v2->v1 2018-09-17 23:23:27 +02:00
Fabio Berger
ce51edcf80 Implement new responsive, dev section header and home scaffolding 2018-09-17 16:55:22 +01:00
Fabio Berger
fe38adfa08 Merge pull request #1027 from 0xProject/dev-dropdown
New Topbar Developers Dropdown
2018-09-17 15:36:59 +01:00
Fabio Berger
92ee7c2194 Use Container instead of div 2018-09-17 15:09:31 +01:00
Fabio Berger
074082ec94 Fix forwarder package.json 2018-09-17 12:53:05 +01:00
Fabio Berger
6b9f0af828 Add 0x.js 2.0.0 async and installation sections 2018-09-17 12:52:25 +01:00
Fabio Berger
bfabf765e3 Update decoration error 2018-09-17 12:52:12 +01:00
Fabio Berger
e74f736eff Update 0x.js README 2018-09-17 12:52:04 +01:00
Fabio Berger
45483557a5 Remove doc commands from forwarder-helper package for now 2018-09-17 12:45:27 +01:00
Brandon Millman
a22d2dc7ee Add factory method for specific assetData to buy and add comments 2018-09-15 15:05:27 +02:00
Brandon Millman
9ec2b5a2d5 Add factory method on AssetBuyer for specific token address 2018-09-15 14:53:04 +02:00
Brandon Millman
af40989f5f Add factory method on AssetBuyer for provided orders 2018-09-15 14:47:44 +02:00
Brandon Millman
d57619b5db Export the order fetchers 2018-09-15 14:16:08 +02:00
Brandon Millman
c692115cdc Fix lint errors 2018-09-15 14:14:55 +02:00
Brandon Millman
dfe58e4975 Delete old test 2018-09-15 14:14:55 +02:00
Brandon Millman
4e59be9afc Implement ProvidedOrderFetcher 2018-09-15 14:14:55 +02:00
Brandon Millman
190bf2599c Implement StandardRelayerAPIOrderFetcher 2018-09-15 14:14:55 +02:00
Brandon Millman
f1a22e9bd7 Flesh out the AssetBuyer class 2018-09-15 14:14:48 +02:00
Brandon Millman
7b46cef83d Create initial AssetBuyer class 2018-09-15 14:14:48 +02:00
Brandon Millman
8da7d39998 Update readme, changelog, and package.json with rename 2018-09-15 14:14:48 +02:00
Brandon Millman
91702bbae2 Move packages/forwarder-helper into packages/asset-buyer 2018-09-15 14:14:48 +02:00
Brandon Millman
90674d9038 Various clean up 2018-09-15 14:14:48 +02:00
Brandon Millman
c0a14a4a41 Catch standard relayer api errors 2018-09-15 14:14:48 +02:00
Brandon Millman
8d6132736b Remove taker address as param and filter out non-open orders 2018-09-15 14:14:48 +02:00
Brandon Millman
8687b9533c Add getForwarderHelperForMakerAssetDataAsync method to forwarderHelperFactory 2018-09-15 14:14:48 +02:00
Alex Browne
07942a7aec Merge pull request #1061 from 0xProject/feature/ci-resource-classes
Bump CircleCI resource class for build and test-publish
2018-09-13 14:49:11 +02:00
Jacob Evans
3d1b7c10e8 Remove note about RC versions 2018-09-13 14:32:46 +02:00
Jacob Evans
cf46d2c704 0xjs README/website docs update 2018-09-13 13:58:05 +02:00
Alex Browne
4434856add Bump CircleCI resource class for build and test-publish 2018-09-12 17:23:11 +02:00
fragosti
52d511df21 Change Davids description 2018-09-12 11:53:11 +02:00
fragosti
50f58f9121 Add images for David Sacks and Gene 2018-09-12 11:48:03 +02:00
fragosti
7a20c7b946 Fix David Sacks links 2018-09-12 11:46:42 +02:00
fragosti
ce0e60ed84 Merge branch 'feature/website/add-gene' into development 2018-09-12 11:43:16 +02:00
fragosti
4ad0a6c7b7 Add david sacks 2018-09-12 11:42:58 +02:00
fragosti
b8d8651e43 Add Gene info to website 2018-09-12 11:16:13 +02:00
F. Eugene Aumson
cbb5a425df Merge branch 'development' into sol-doc 2018-09-11 19:00:11 -04:00
Francesco Agosti
45b68832aa Merge pull request #1064 from 0xProject/patch/website/new-token-addresses
[website] Fix minting for new tokens on testnets
2018-09-07 16:12:50 +02:00
fragosti
6dfcaaf889 Clear localstorage 2018-09-07 13:12:53 +02:00
fragosti
8131c5d6bc Fix minting for new tokens on testnets 2018-09-07 13:05:11 +02:00
Amir Bandeali
df5779b6d1 Link bug bounty section to wiki 2018-09-05 12:10:39 -07:00
Amir Bandeali
4a5a0c8c78 Update README with directory structure and bug bounty 2018-09-05 11:37:48 -07:00
Jacob Evans
b3a17624c8 Merge pull request #1060 from 0xProject/feature/testnet-faucets/v2
[testnet-faucets] update to v2
2018-09-05 18:33:50 +01:00
Jacob Evans
e63841a604 Check token exists for network for user params 2018-09-05 18:11:57 +01:00
Jacob Evans
7ec95e8c29 Remove unused name and symbol 2018-09-05 16:04:52 +01:00
Jacob Evans
b217495465 Floor expiration time 2018-09-05 15:57:40 +01:00
Jacob Evans
db6ddc0c4b [testnet-faucets] update to v2 2018-09-05 15:13:21 +01:00
Fabio Berger
174b360593 Publish
- 0x.js@1.0.1
 - @0xproject/abi-gen@1.0.8
 - @0xproject/assert@1.0.8
 - @0xproject/base-contract@2.0.2
 - @0xproject/connect@2.0.0
 - @0xproject/contract-wrappers@1.0.1
 - contracts@2.1.43
 - @0xproject/dev-utils@1.0.7
 - ethereum-types@1.0.6
 - @0xproject/fill-scenarios@1.0.1
 - @0xproject/forwarder-helper@1.0.1
 - @0xproject/json-schemas@1.0.1
 - @0xproject/metacoin@0.0.18
 - @0xproject/migrations@1.0.7
 - @0xproject/monorepo-scripts@1.0.8
 - @0xproject/order-utils@1.0.1
 - @0xproject/order-watcher@1.0.1
 - @0xproject/react-docs@1.0.8
 - @0xproject/react-shared@1.0.9
 - @0xproject/sol-compiler@1.1.2
 - @0xproject/sol-cov@2.1.2
 - @0xproject/sol-resolver@1.0.8
 - @0xproject/sra-report@1.0.8
 - @0xproject/sra-spec@1.0.1
 - @0xproject/subproviders@2.0.2
 - @0xproject/testnet-faucets@1.0.44
 - @0xproject/tslint-config@1.0.7
 - @0xproject/types@1.0.1
 - @0xproject/typescript-typings@2.0.0
 - @0xproject/utils@1.0.8
 - @0xproject/web3-wrapper@2.0.2
 - @0xproject/website@0.0.47
2018-09-05 11:16:45 +01:00
Fabio Berger
481a752e70 Updated CHANGELOGS 2018-09-05 11:16:34 +01:00
Fabio Berger
38acdfd632 Update CHANGELOG's to publish non-RC versions 2018-09-05 11:06:11 +01:00
Francesco Agosti
561e525778 Merge pull request #1058 from 0xProject/fix/connect/use-big-number-in-requests
[connect] Use BigNumber instead of string where appropriate in OrderConfigRequest
2018-09-04 17:25:51 -07:00
fragosti
69eb820d0d Change orderConfig from POST to GET like in spec 2018-09-04 15:49:30 -07:00
Alex Browne
447f16fc4f Merge pull request #1057 from 0xProject/deployment/copy-testnet-artifacts
Remove/rename/update all artifacts in preparation for v2 launch
2018-09-04 18:31:48 -04:00
Alex Browne
1769609245 Update order-watcher/package.json 2018-09-04 18:17:51 -04:00
Alex Browne
e1dcdac1bb add packages/sol-cov/test/fixtures/artifacts to .prettierignore 2018-09-04 18:14:59 -04:00
Alex Browne
9d45d19c80 More small artifacts updates/changes 2018-09-04 18:10:23 -04:00
Alex Browne
9858bb0ce4 Fix bug in contracts tests 2018-09-04 18:10:13 -04:00
fragosti
a3527a77a6 Add to CHANGELOG 2018-09-04 14:49:39 -07:00
fragosti
33a45fa739 Use BigNumber instead of string where appropriate in OrderConfigRequest 2018-09-04 14:44:56 -07:00
Alex Browne
e70882a657 More small chnages/bug fixes 2018-09-04 17:22:22 -04:00
Alex Browne
e456332da7 Rename and update some artifact locations 2018-09-04 16:47:28 -04:00
Alex Browne
4ed84c5dc5 Rename 2.0.0-beta-testnet to 2.0.0-testnet 2018-09-04 16:11:17 -04:00
Alex Browne
2fe3f40be9 Add missing testnet addresses to 2.0.0-mainnet artifacts 2018-09-04 16:09:59 -04:00
Alex Browne
44bfdb718f Copy artifacts from 2.0.0-beta-testnet that do not appear in 2.0.0-mainnet 2018-09-04 16:09:44 -04:00
Alex Browne
3524efc41c Merge pull request #1055 from 0xProject/deployment/2.0.0-beta-testnet/ropsten
Ropsten/Kovan Contract deployment
2018-09-04 15:54:48 -04:00
Francesco Agosti
01210c291c Merge pull request #1044 from 0xProject/feature/website/update-portal-v2
[website] Update portal for v2
2018-09-04 12:37:53 -07:00
Jacob Evans
192d4b4dbf Merge branch 'deployment/2.0.0-beta-testnet/ropsten' of github.com:0xProject/0x-monorepo into deployment/2.0.0-beta-testnet/ropsten 2018-09-04 20:32:43 +01:00
Jacob Evans
68246fc335 Revert Forwarder address for Ganache 2018-09-04 20:29:01 +01:00
Fabio Berger
7ef86636aa merge development 2018-09-04 20:26:02 +01:00
Fabio Berger
a5859c6cee Merge pull request #1038 from 0xProject/feature/contracts/mainnetMigrations
Mainnet migrations
2018-09-04 20:23:48 +01:00
Fabio Berger
3463903d02 Merge branch 'deployment/2.0.0-beta-testnet/ropsten' of github.com:0xProject/0x-monorepo into deployment/2.0.0-beta-testnet/ropsten
* 'deployment/2.0.0-beta-testnet/ropsten' of github.com:0xProject/0x-monorepo:
  Revert the exchange address change
  Tslint magic-number
2018-09-04 20:22:32 +01:00
Jacob Evans
4b0f1a8431 Remove Rinkeby from Exchange.json 2018-09-04 20:21:50 +01:00
Jacob Evans
603e8aa671 Revert the exchange address change 2018-09-04 20:18:23 +01:00
fragosti
6eb980abe2 Add to changelog 2018-09-04 12:11:17 -07:00
fragosti
46b168e10f Run linter 2018-09-04 12:09:24 -07:00
Jacob Evans
508e6ccf89 Tslint magic-number 2018-09-04 19:57:05 +01:00
fragosti
a173c5fc38 Merge branch 'feature/website/update-portal-v2' of https://github.com/0xProject/0x-monorepo into feature/website/update-portal-v2 2018-09-04 11:55:42 -07:00
fragosti
f5237f7971 Use order parser utils from order utils 2018-09-04 11:55:08 -07:00
Amir Bandeali
6f7a5d00e6 Update prettierignore 2018-09-04 11:47:26 -07:00
Fabio Berger
4061723863 merge back weth9 2018-09-04 19:42:54 +01:00
Jacob Evans
ab1b52ba87 Ropsten/Kovan Contract deployment 2018-09-04 19:41:05 +01:00
Fabio Berger
16e94ecb40 Merge branch 'deployment/2.0.0-beta-testnet/ropsten' of github.com:0xProject/0x-monorepo into deployment/2.0.0-beta-testnet/ropsten
* 'deployment/2.0.0-beta-testnet/ropsten' of github.com:0xProject/0x-monorepo:
  Ropsten/Kovan Contract deployment
2018-09-04 19:35:48 +01:00
Jacob Evans
6bb2c5877c Ropsten/Kovan Contract deployment 2018-09-04 19:29:40 +01:00
fragosti
a14450f367 Add order parsers to order-util 2018-09-04 11:22:31 -07:00
Amir Bandeali
85df313a7a Update mainnet artifacts 2018-09-04 11:07:56 -07:00
Amir Bandeali
66ed6b9b88 Update mainnet configs 2018-09-04 11:07:56 -07:00
Amir Bandeali
9304d09da6 Add mainnet migrations 2018-09-04 11:07:56 -07:00
fragosti
e61dbbb6cf Merge https://github.com/0xProject/0x-monorepo into feature/website/update-portal-v2 2018-09-04 10:53:18 -07:00
Fabio Berger
1690f59857 Remove unused imports and console.log 2018-09-04 18:42:50 +01:00
Fabio Berger
c916dd6ebb Add back order validation logic 2018-09-04 18:39:53 +01:00
Fabio Berger
8a683b8541 Fix imports 2018-09-04 18:37:41 +01:00
Fabio Berger
4883b8be10 remove console log 2018-09-04 18:37:33 +01:00
Fabio Berger
51760f9bdd merge development 2018-09-04 18:37:24 +01:00
Fabio Berger
6a619a4084 Merge pull request #1054 from 0xProject/addValidationMethods
Temporarily Add Back Validation Methods
2018-09-04 18:04:03 +01:00
Jacob Evans
feeafa193a Ropsten/Kovan Contract deployment 2018-09-04 18:01:21 +01:00
Fabio Berger
8d8528996a Export abstract fetchers 2018-09-04 17:44:27 +01:00
Amir Bandeali
965d609829 Merge pull request #1050 from 0xProject/refactor/contracts/multisig
Update MultiSig and add more tests
2018-09-04 09:12:16 -07:00
Leonid Logvinov
a52714bcf3 Merge pull request #1052 from 0xProject/feature/remove-types
[typescript-typings] Remove types that were moved to DefinitelyTyped
2018-09-04 17:54:54 +02:00
Fabio Berger
bbfd7647a8 Export missing type 2018-09-04 16:52:21 +01:00
Fabio Berger
0aba5a3be4 Merge branch 'development' into addValidationMethods
* development:
  Remove unused imports
2018-09-04 16:51:27 +01:00
Fabio Berger
61bf5864a8 Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Remove unused imports
2018-09-04 16:51:15 +01:00
Fabio Berger
56847a53f4 Add PR nr 2018-09-04 16:41:43 +01:00
Fabio Berger
8324ab3af7 Update yarn.lock 2018-09-04 16:27:26 +01:00
Fabio Berger
d496a7585c Add validateFillOrderThrowIfInvalidAsync and validateOrderFillableOrThrowAsync to ExchangeWrapper 2018-09-04 16:27:16 +01:00
Fabio Berger
8d7f2a993a Import fetchers from contract-wrappers 2018-09-04 16:24:01 +01:00
Fabio Berger
ed786f3e8f Export fetchers from contract-wrappers 2018-09-04 16:23:29 +01:00
Fabio Berger
539c243733 Move fetchers to contract-wrappers 2018-09-04 16:23:02 +01:00
Leonid Logvinov
40e0c829b3 Fix the version 2018-09-04 17:06:09 +02:00
Amir Bandeali
e34b1f2f8b Remove TODOs that will not be addressed 2018-09-04 07:57:47 -07:00
Amir Bandeali
f6b6619c08 Fix geth tests 2018-09-04 07:57:47 -07:00
Amir Bandeali
e480e08aa4 Add test for external_call visibility 2018-09-04 07:57:47 -07:00
Amir Bandeali
652cf7a976 Add MultiSigWalletWithTimeLock revert reasons to tests 2018-09-04 07:57:47 -07:00
Amir Bandeali
7a8ab6fbe8 Update MultiSigWalletWithTimeLock to 0.4.24 2018-09-04 07:57:47 -07:00
Amir Bandeali
9deec8ec35 Add more tests for MultiSigWalletWithTimeLock 2018-09-04 07:57:47 -07:00
Amir Bandeali
3f1586045c Add test for executeRemoveAuthorizedAddressAtIndex when called by non-owner 2018-09-04 07:57:47 -07:00
Amir Bandeali
ada5563b1f Update to most recent multisig 2018-09-04 07:57:47 -07:00
Leonid Logvinov
6b41a570a5 Change doc gen configs 2018-09-04 16:36:18 +02:00
Leonid Logvinov
cebf6bfb34 Move types used in public interfaces to dependencies 2018-09-04 16:36:18 +02:00
Leonid Logvinov
47a1b48ad8 Add temporarily missing web3-provider-engine types in website 2018-09-04 16:36:18 +02:00
Leonid Logvinov
ef82a9d2a6 Add CHANGELOG entry 2018-09-04 16:36:18 +02:00
Leonid Logvinov
ba6351841d Add temporarily missing web3-provider-engine types in subproviders 2018-09-04 16:36:18 +02:00
Leonid Logvinov
cdc786a1e3 Remove types for web3-provider-engine from typescript-typings 2018-09-04 16:36:18 +02:00
Leonid Logvinov
3ea137a78f Remove types for eth-lightwallet from typescript-typings 2018-09-04 16:36:18 +02:00
Leonid Logvinov
b525ccc825 Remove types for detect-node from typescript-typings 2018-09-04 16:36:18 +02:00
Leonid Logvinov
77acbdd3ea Remove types for ganache-core from typescript-typings 2018-09-04 16:36:18 +02:00
Leonid Logvinov
c13190ceab Remove types for newman from typescript-typings 2018-09-04 16:36:18 +02:00
Leonid Logvinov
78d4fc59a5 Merge pull request #1053 from 0xProject/fix/linter_issues
[website] Remove unused imports
2018-09-04 16:35:54 +02:00
Leonid Logvinov
f9e86c057d Remove unused imports 2018-09-04 16:08:35 +02:00
Amir Bandeali
1d8e133a30 Merge pull request #1051 from 0xProject/fix/contracts/style
Apply styling fixes to contracts
2018-09-03 21:22:03 -07:00
Amir Bandeali
99fbf384fd Apply styling fixes 2018-09-03 20:55:37 -07:00
Amir Bandeali
cb4fcf4de7 Revert in Forwarder constructor if ERC20 proxy isn't registered 2018-09-03 20:35:00 -07:00
F. Eugene Aumson
800dd5fb4f ammend generated docs with solc's devdoc output 2018-08-31 16:18:17 -04:00
F. Eugene Aumson
3dc4eb4421 rename 2 variables 2018-08-31 15:28:12 -04:00
F. Eugene Aumson
75664b6651 make postinstall symlink hack cross platform 2018-08-31 11:49:14 -04:00
F. Eugene Aumson
327b4ba554 satisfy linter 2018-08-31 11:18:43 -04:00
F. Eugene Aumson
50b725c687 introduce named vars to clarify return statements 2018-08-31 09:33:26 -04:00
F. Eugene Aumson
72419816a8 Merge remote-tracking branch 'upstream/development' into sol-doc 2018-08-31 09:22:05 -04:00
F. Eugene Aumson
9a4e6da02f enable sol-doc tests in circleci 2018-08-31 09:15:41 -04:00
F. Eugene Aumson
823b6c4d7d transform solc's ABI output into doc types 2018-08-31 09:12:27 -04:00
Brandon Millman
675964dc5c Merge pull request #1048 from 0xProject/feature/website/patch-v2-landing
[website] Final tweaks for landing page
2018-08-30 17:26:47 -07:00
Brandon Millman
6432f85eb0 Wording change for first benefit 2018-08-30 17:14:17 -07:00
Francesco Agosti
66eef758c6 Merge pull request #1047 from 0xProject/feature/re-add-no-unused-variables
Re-add no-unused-variable tslint rule
2018-08-30 15:38:21 -07:00
Brandon Millman
c64f0ba34b Tweaks to benefits and use cases 2018-08-30 15:26:03 -07:00
Brandon Millman
6deffb6b28 Update yarn lock 2018-08-30 15:19:33 -07:00
Greg Hysen
5802713801 Merge pull request #1046 from 0xProject/fix/contracts/roundingFeeTestsMatchOrders
Test cases for rounding fees in matchOrders
2018-08-30 14:27:01 -07:00
Brandon Millman
11df29fa8e Update exchange ABI for decoding logs 2018-08-30 14:23:09 -07:00
Brandon Millman
f4a41e80b8 Remove LogError legacy stuff 2018-08-30 14:04:55 -07:00
Brandon Millman
5c655b55d3 Update comment for validation 2018-08-30 14:01:04 -07:00
Brandon Millman
63c15b6f4f Remove commented out block 2018-08-30 14:00:10 -07:00
Brandon Millman
4f2bc29744 Remove cancel check 2018-08-30 13:59:42 -07:00
fragosti
2cac431c41 Final tweaks for landing page 2018-08-30 13:53:30 -07:00
fragosti
80b7a7842c run prettier 2018-08-30 13:47:33 -07:00
Brandon Millman
8c7cec9822 Merge pull request #1040 from 0xProject/feature/website/v2-tweaks
[website] Landing page tweaks for v2 launch
2018-08-30 13:46:37 -07:00
Brandon Millman
971a4087d2 Update yarn lock 2018-08-30 13:36:44 -07:00
Brandon Millman
660e670d38 Update generate and fill order flows 2018-08-30 13:36:44 -07:00
Brandon Millman
052824f4e3 Token registry from old 0x version 2018-08-30 13:36:44 -07:00
fragosti
1d5ef4d0ca Fix unused vars for react-shared and website 2018-08-30 13:28:07 -07:00
Brandon Millman
a6440b94f4 Fix import 2018-08-30 13:24:24 -07:00
Brandon Millman
01685b7622 Fix contract not deployed on network bug in ContractWrapper class 2018-08-30 13:24:24 -07:00
Brandon Millman
397fefa8d7 Update typings version 2018-08-30 13:24:24 -07:00
Brandon Millman
82a01ef020 Initial changes for v2 portal 2018-08-30 13:24:24 -07:00
Brandon Millman
a224ce347e Revert whats new text 2018-08-30 13:21:07 -07:00
Amir Bandeali
81ba2a8411 Merge pull request #1045 from 0xProject/feature/contracts/cancelOrderInternal
Add cancelOrderInternal, use within batchCancelOrders
2018-08-30 13:07:51 -07:00
Amir Bandeali
a6e8b28da5 Merge pull request #1043 from 0xProject/feature/contracts/edgeCaseTests
Add edge case tests
2018-08-30 13:07:19 -07:00
Brandon Millman
e90dbf66f3 Add new exchange everywhere graphic 2018-08-30 12:29:47 -07:00
Greg Hysen
0be2219beb Test cases for rounding fees in matchOrders 2018-08-30 12:23:11 -07:00
Amir Bandeali
09b4d5e0e4 Add cancelOrderInternal, use within batchCancelOrders 2018-08-30 12:10:24 -07:00
Brandon Millman
60f1bcf51f Remove unused render methods in landing page 2018-08-30 12:09:54 -07:00
Brandon Millman
431ac3b401 Update yarn lock 2018-08-30 12:05:29 -07:00
Francesco Agosti
50781bd77a Merge pull request #1042 from 0xProject/feature/website/v2-tweaks-fra
[website] Add rotating text to landing header and careers button to topbar
2018-08-30 11:55:28 -07:00
fragosti
c3361bb86e Remove conflict strings 2018-08-30 11:52:08 -07:00
fragosti
fd5ad69c26 Add careers page to top bar 2018-08-30 11:49:27 -07:00
fragosti
b1f97a27f3 Final tweaks 2018-08-30 11:49:27 -07:00
fragosti
febddcb356 Remove redundant import 2018-08-30 11:49:27 -07:00
fragosti
74d5af34eb Add TypedText component and use it on landing page 2018-08-30 11:49:27 -07:00
fragosti
365890291f Add generic title changes 2018-08-30 11:48:49 -07:00
Brandon Millman
0368de701f Added todo comments for missing items 2018-08-30 11:44:09 -07:00
Brandon Millman
f5e7b7e7e0 Add title header to use cases section 2018-08-30 11:39:25 -07:00
Brandon Millman
038c21324e Make hero image responsive 2018-08-30 11:39:25 -07:00
Brandon Millman
5d008ee83e Update what's new styling 2018-08-30 11:39:25 -07:00
F. Eugene Aumson
8d122006ba move export to top of file 2018-08-30 12:34:27 -04:00
F. Eugene Aumson
0e45497acb rename variables 2018-08-30 12:28:09 -04:00
Amir Bandeali
d0f6933980 Add tests for token that returns >32 bytes 2018-08-30 09:27:28 -07:00
Amir Bandeali
14793f30b5 Add more proxy tests 2018-08-30 09:27:28 -07:00
Amir Bandeali
86319291e3 Update used addresses for authorizable tests 2018-08-30 09:27:28 -07:00
Amir Bandeali
afa2dd7374 Add test for fillOrder and dispatchTransferFrom where maker == taker 2018-08-30 09:26:44 -07:00
F. Eugene Aumson
fe7a62ba9a add named var to make if condition more readable 2018-08-30 12:02:46 -04:00
F. Eugene Aumson
b88a56e6b7 reduce proximity b/w instantiation and use of var 2018-08-30 12:02:46 -04:00
F. Eugene Aumson
297cbd996d remove unnecessary class SolidityDocFormat 2018-08-30 12:02:42 -04:00
F. Eugene Aumson
f55234b4a0 comment public interface 2018-08-30 11:30:43 -04:00
F. Eugene Aumson
f76c88c549 remove unused constructor parameter 2018-08-30 11:24:41 -04:00
F. Eugene Aumson
863966787f dev-depend on @0xproject/tslint-config 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
7ed31d2fba correct package.json's privacy specification 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
6273339f7c add named references for returned objects 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
29f2ae605e re-word comment: 'construction' -> 'instantiation' 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
6450844d7f rename method _addHexPrefixes 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
9834395a48 remove mistaken TODO 2018-08-30 10:43:43 -04:00
F. Eugene Aumson
f429032eef move shared doc types from react-docs to @0x/types 2018-08-30 10:43:36 -04:00
F. Eugene Aumson
5088b7f23c hack postinstall to correct types package symlink
yarn is not doing this properly :( even on v1.9.4.
confirmed with @albrow .
2018-08-30 10:08:35 -04:00
fragosti
1312e4caf2 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into feature/website/v2-tweaks 2018-08-29 16:39:25 -07:00
Amir Bandeali
eb4517d737 Merge pull request #1041 from 0xProject/refactor/contracts/assetProxyOwnerVersion
Update AssetProxyOwner to 0.4.24, remove redundant code
2018-08-29 15:57:53 -07:00
Amir Bandeali
d80701c277 Fix geth tests 2018-08-29 15:35:09 -07:00
Amir Bandeali
bf3ab1127d Remove unused imports 2018-08-29 14:42:42 -07:00
Amir Bandeali
dcb12b6ad6 Update AssetProxyOwner to 0.4.24 2018-08-29 14:12:10 -07:00
Francesco Agosti
f87420a776 Merge pull request #1023 from 0xProject/website/feature/react-16
[website] Upgrade all the things to React 16
2018-08-29 14:04:17 -07:00
Greg Hysen
6cedf5362b Merge pull request #1039 from 0xProject/fix/contracts/audit2Fixes
Fixes as-per Audit for LibBytes + ERC20 Proxy Comments
2018-08-29 13:53:49 -07:00
Greg Hysen
aa833ef074 Typos in LibBytes tests 2018-08-29 13:26:46 -07:00
Greg Hysen
5f1c9cfee5 Reverted syntax used by readBytes4 in AssetProxyOwner to be compatible with Solidity v0.4.10 2018-08-29 13:15:40 -07:00
Greg Hysen
62b93cf2eb More tests for LibBytes 2018-08-29 13:14:51 -07:00
Brandon Millman
b1c5f6e8f1 Update use cases section 2018-08-29 12:45:24 -07:00
Brandon Millman
3bc9b309f6 Update tokenization section 2018-08-29 12:45:24 -07:00
Brandon Millman
6924a2b681 Update benefits 2018-08-29 12:45:24 -07:00
Brandon Millman
d93d4c34f5 Update whats new 2018-08-29 12:45:24 -07:00
Brandon Millman
557267477e Add new header image 2018-08-29 12:45:16 -07:00
Brandon Millman
b9f7979e91 Replace projects section with relayers 2018-08-29 12:45:15 -07:00
Greg Hysen
8c803ab232 Updated comments for ERC20 proxy to clarify how we load the token address from calldata (3.18 from audit) 2018-08-29 12:25:06 -07:00
F. Eugene Aumson
28246abec3 remove unneeded entries from doc gen config 2018-08-29 15:23:32 -04:00
fragosti
422e5e4dd7 Apply prettier 2018-08-29 11:57:52 -07:00
fragosti
2aea820d89 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into website/feature/react-16 2018-08-29 11:42:44 -07:00
Greg Hysen
1c3b2b7141 Updated readBytes4 to match spec + added unit tests. These are 3.5/3.6 from audit 2018-08-29 11:39:52 -07:00
Alex Browne
e7d5ceb9c5 feat: Add support for TypeScript project references (#991)
* Update all package.json and tsconfig.json

* fix(contracts): Make test/utils/web3_wrapper.ts compatible with project refs

* Fix webpack config for 0x.js

* Fix linter errors by adding rootDir to tsconfig.json as needed

* Add build:ts and watch:ts commands to package.json

* Update sra-spec to work with project references

* Update tsconfig.json with latest new/removed packages

* Add TypeScript as devDependency at root

* Add missing rootDir to forwarder-helper package

* Use a separate tsconfig file for typedoc

* Fix linter errors

* Apply PR feedback (add comments)

* Fix 0x.js tsconfig
2018-08-29 11:15:30 -07:00
Fabio Berger
e6511c9c05 Fix linter 2018-08-29 17:45:51 +01:00
F. Eugene Aumson
a1959df911 add devdoc support to solc typings, and use it 2018-08-29 08:51:01 -04:00
F. Eugene Aumson
775d1efd46 add package sol-doc 2018-08-29 08:50:55 -04:00
fragosti
68af0e9eb7 Change VersionDropDown to use material-ui 3 2018-08-28 18:08:06 -07:00
fragosti
a18d0f6229 Upgrade version of react-shared in website 2018-08-28 17:49:15 -07:00
fragosti
031807df9c Upgrade react-copy-to-clipboard 2018-08-28 15:52:09 -07:00
fragosti
72710be04b Remove react-tap-event-plugin from react-shared 2018-08-28 15:37:20 -07:00
fragosti
ac135d55d3 Upgrade material ui in react-docs 2018-08-28 15:32:15 -07:00
fragosti
1d55e94659 Update lockfile 2018-08-28 15:27:24 -07:00
fragosti
86284f1c7e Merge branch 'development' of https://github.com/0xProject/0x-monorepo into website/feature/react-16 2018-08-28 15:25:08 -07:00
fragosti
61a4ae7fc4 Update material-ui in react-shared 2018-08-28 15:15:54 -07:00
fragosti
55fab3d98f Revert "Simplify dropdown component"
This reverts commit 91a9014a50.
2018-08-28 15:07:29 -07:00
fragosti
de11b62e30 Revert "Have new Popover component working in React 16"
This reverts commit 5785ec0713.
2018-08-28 15:07:28 -07:00
fragosti
8e14e65b60 Revert "Enable hovering state for dropdown"
This reverts commit ac1640140c.
2018-08-28 15:07:24 -07:00
fragosti
2d1d14d2e4 Upgrade material ui to 0.20.0 2018-08-28 15:04:34 -07:00
Brandon Millman
f44644ad90 Merge pull request #1022 from 0xProject/feature/contract-wrappers/order-validator
[contract-wrappers] Write wrapper for OrderValidator contract
2018-08-28 14:20:57 -07:00
fragosti
ac1640140c Enable hovering state for dropdown 2018-08-28 13:53:49 -07:00
Greg Hysen
1402a0aa22 Merge pull request #1036 from 0xProject/fix/contracts/calculateFillResults
Making rounding consistent in calculateFillResults
2018-08-28 13:51:38 -07:00
Amir Bandeali
f225f9e7c8 Making rounding consistent in calculateFillResults 2018-08-28 13:25:05 -07:00
Amir Bandeali
14fdb71a71 safeGetPartialAmount (#1035)
* Added Test "Should transfer correct amounts when left order is fully filled and values pass isRoundingErrorCeil but fail isRoundingErrorFloor"

* Added RoundingError exception to reference function for getPartialAmount

* Added RoundingError exception to reference function for getPartialAmount

* Added isRoundingErrorCeil to getPartialAmountCeil reference funtion

* Computed new values  for "Should give right maker a better buy price when correct price is not integral" that does not have a rounding error

* Almost all tests for match orders are passing after adding isRoundingErrorCeil check

* WIP commit: Added rounding error checks to getPartialAmount

* WIP commit: Added rounding error checks to getPartialAmount

* Use safe versions of getPartialAmount

* Update Exchange internals tests

* Run linter

* Found new values for "Should transfer correct amounts when right order fill amount deviates from amount derived by `Exchange.fillOrder`"

* Fixed merge conflicts

* Run all tests

* Cleaned up some comments on match Orders tests

* Fix tests for geth
2018-08-28 13:00:49 -07:00
Brandon Millman
9c4c4fb19a Export missing types and add OrderValidatorWrapper to hidden constructors 2018-08-28 12:03:21 -07:00
F. Eugene Aumson
849e203812 add interface to return compiler output...
...rather than persisting it to the filesystem.
2018-08-28 14:24:26 -04:00
F. Eugene Aumson
80ed724f3a rename var compiledData to compiledContract 2018-08-28 14:24:26 -04:00
F. Eugene Aumson
5c056b57b7 extract method _getContractNamesToCompile() 2018-08-28 14:24:26 -04:00
F. Eugene Aumson
4779ebfd20 split method 2018-08-28 14:24:26 -04:00
Fabio Berger
60ef45722c Remove temporary borders 2018-08-28 17:18:48 +01:00
Fabio Berger
61bfbb86e1 Implement dev topbar 2018-08-28 17:18:40 +01:00
Fabio Berger
bc8cc35d18 Fix prettier 2018-08-28 17:13:29 +01:00
Fabio Berger
4a524a5f27 Merge branch 'dev-dropdown' into doc-overview-page
* dev-dropdown:
  Update to latest react-shared
  Use translation helper
  Use generatic ObjectMap type
  fix(contracts): Catch cases where the actual error differs from the expected error (#1032)
  Add clarifying comments
  Remove redundant mstores from fillOrderNoThrow
  fix(contracts): Use correct error message for division by zero
2018-08-28 16:04:02 +01:00
Fabio Berger
ee1e50a722 Swap out link 2018-08-28 16:03:27 +01:00
Fabio Berger
ca0567ad09 Begin implementing doc home page 2018-08-28 16:03:18 +01:00
Fabio Berger
9fd46c7900 Update to latest react-shared 2018-08-28 15:52:41 +01:00
Fabio Berger
4a40edbbb7 Merge branch 'development' into dev-dropdown
* development:
  fix(contracts): Catch cases where the actual error differs from the expected error (#1032)
  Add clarifying comments
  Remove redundant mstores from fillOrderNoThrow
  fix(contracts): Use correct error message for division by zero
2018-08-28 11:19:20 +01:00
Fabio Berger
2997ba208f Use translation helper 2018-08-28 11:19:12 +01:00
Fabio Berger
cc2000e776 Use generatic ObjectMap type 2018-08-28 11:19:01 +01:00
fragosti
5785ec0713 Have new Popover component working in React 16 2018-08-27 18:29:35 -07:00
Alex Browne
2eab0e30b7 fix(contracts): Catch cases where the actual error differs from the expected error (#1032)
* Catch cases where the actual error differs from the expected error

* Add tests for testWithReferenceFuncAsync

* Small style and comment fixes
2018-08-27 16:07:38 -07:00
Brandon Millman
2c846ff145 Add OrderValidatorWrapper to public interface 2018-08-27 16:06:34 -07:00
Brandon Millman
ca0dfc6610 Add contract-wrappers changelog entry for OrderValidatorWrapper 2018-08-27 13:57:48 -07:00
Brandon Millman
0fd44ee2c1 Fix broken test 2018-08-27 13:53:51 -07:00
Brandon Millman
7271fc0bab Add getBalancesAndAllowances to wrapper 2018-08-27 13:49:44 -07:00
Brandon Millman
6c039bbeb1 Update OrderValidator artifact to include getBalancesAndAllowances function 2018-08-27 13:43:19 -07:00
Brandon Millman
38e6d26145 Add params to all function comments 2018-08-27 13:31:12 -07:00
Brandon Millman
b0f210dea9 Add getERC721Owner to wrapper 2018-08-27 13:21:14 -07:00
Brandon Millman
f7469080f9 Update getOrdersAndTradersInfo to return an array instead 2018-08-27 13:21:10 -07:00
Amir Bandeali
fb5ea5d99f Merge pull request #1030 from 0xProject/fix/contracts/forwarderFillOrderNoThrow
Remove redundant mstores from fillOrderNoThrow
2018-08-27 13:07:57 -07:00
Brandon Millman
be2f4cbdca Add getBalanceAndAllowance to wrapper 2018-08-27 13:04:54 -07:00
Brandon Millman
68f2dc11b4 Add getTraderInfo and getTradersInfo to wrapper 2018-08-27 13:04:54 -07:00
Brandon Millman
d6c670dfcb Add getOrderAndTraderInfoAsync to wrapper 2018-08-27 13:04:54 -07:00
Brandon Millman
0736c41357 Add test for order validator 2018-08-27 13:04:54 -07:00
Brandon Millman
898bd75a18 Remove some unused variables in forwarder wrapper test 2018-08-27 13:04:54 -07:00
Brandon Millman
260313a6ae Initial OrderValidator wrapper 2018-08-27 13:04:54 -07:00
Amir Bandeali
6a99bfa68e Add clarifying comments 2018-08-27 12:01:58 -07:00
Amir Bandeali
f60adbdd72 Remove redundant mstores from fillOrderNoThrow 2018-08-27 11:54:20 -07:00
Alex Browne
1be310cef4 Merge pull request #1031 from 0xProject/fix/internal-tests-division-by-zero-assertion
Use correct error message for division by zero
2018-08-27 11:48:47 -07:00
Alex Browne
ff4f86f1d6 fix(contracts): Use correct error message for division by zero 2018-08-27 11:19:25 -07:00
Fabio Berger
b8241c0f80 Merge branch 'development' into dev-dropdown
* development: (120 commits)
  Exit with non-error code at end of publishRelease
  Publish
  Updated CHANGELOGS
  Fix prettier
  Update changelog files for RC packages
  Skip doc generation for local publishes since we test this in a separate CI test
  Fix typo
  Use absolute path
  Run yarn a second time if the first fails
  Try relative to root dir
  Fix command
  Move md files to lib folder during build
  Change exit code to failure
  Fix sra-spec `main` and `types` in package.json
  Actual relative path
  Try relative path
  Issue #1025 BlockParam unroll
  Fix command
  Move md files to lib folder during build
  Fix sra-spec `main` and `types` in package.json
  ...
2018-08-27 15:28:57 +01:00
Fabio Berger
f4a4fefe42 Exit with non-error code at end of publishRelease 2018-08-27 15:02:12 +01:00
Fabio Berger
00a4fa5f7c Publish
- 0x.js@1.0.1-rc.6
 - @0xproject/abi-gen@1.0.7
 - @0xproject/assert@1.0.7
 - @0xproject/base-contract@2.0.1
 - @0xproject/connect@2.0.0-rc.2
 - @0xproject/contract-wrappers@1.0.1-rc.5
 - contracts@2.1.42
 - @0xproject/dev-utils@1.0.6
 - @0xproject/fill-scenarios@1.0.1-rc.5
 - @0xproject/forwarder-helper@1.0.1-rc.2
 - @0xproject/json-schemas@1.0.1-rc.6
 - @0xproject/metacoin@0.0.17
 - @0xproject/migrations@1.0.6
 - @0xproject/monorepo-scripts@1.0.7
 - @0xproject/order-utils@1.0.1-rc.6
 - @0xproject/order-watcher@1.0.1-rc.5
 - @0xproject/react-docs@1.0.7
 - @0xproject/react-shared@1.0.8
 - @0xproject/sol-compiler@1.1.1
 - @0xproject/sol-cov@2.1.1
 - @0xproject/sol-resolver@1.0.7
 - @0xproject/sra-report@1.0.7
 - @0xproject/sra-spec@1.0.1-rc.6
 - @0xproject/subproviders@2.0.1
 - @0xproject/testnet-faucets@1.0.43
 - @0xproject/types@1.0.1-rc.6
 - @0xproject/utils@1.0.7
 - @0xproject/web3-wrapper@2.0.1
 - @0xproject/website@0.0.46
2018-08-27 14:48:24 +01:00
Fabio Berger
4475fefd07 Updated CHANGELOGS 2018-08-27 14:47:56 +01:00
Fabio Berger
cd08a9c121 Fix prettier 2018-08-27 13:43:29 +01:00
Fabio Berger
b0c4eb8333 Update changelog files for RC packages 2018-08-27 13:16:31 +01:00
Fabio Berger
368dbda8f0 Merge pull request #1028 from 0xProject/fix-ci
Fix `test_publish` CI Test
2018-08-27 13:09:11 +01:00
Fabio Berger
bc4149683e Skip doc generation for local publishes since we test this in a separate CI test 2018-08-27 12:39:10 +01:00
Fabio Berger
6174d9ebb7 Fix typo 2018-08-27 12:34:34 +01:00
Fabio Berger
fe7a8be98c Move colors to colors module 2018-08-27 12:30:30 +01:00
Fabio Berger
925d5aa09b Add developers dropdown to topBar 2018-08-27 12:17:33 +01:00
Fabio Berger
a26237da66 Implement Developers dropdown 2018-08-27 12:17:23 +01:00
Fabio Berger
791eae24c0 Add ability to specify styling to popover container 2018-08-27 12:16:58 +01:00
Fabio Berger
e10561b4a5 Fix translation capitalizations to not capitalize single letters with sentences (i.e 'a' in 'Build a Relayer') 2018-08-27 12:16:29 +01:00
Fabio Berger
e718123478 Add missing translations needed for dev dropdown 2018-08-27 12:13:20 +01:00
Fabio Berger
e4fc8a8414 Use absolute path 2018-08-27 12:05:55 +01:00
Fabio Berger
907972c466 Merge branch 'development' into fix-ci
* development:
  Run yarn a second time if the first fails
2018-08-27 11:43:35 +01:00
Fabio Berger
49f5fe635f Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Run yarn a second time if the first fails
2018-08-27 11:43:22 +01:00
Fabio Berger
77290c1efa Run yarn a second time if the first fails 2018-08-27 10:51:38 +01:00
Fabio Berger
4ac43a9fd2 Try relative to root dir 2018-08-27 10:38:06 +01:00
Fabio Berger
cc77d1dd49 merge development 2018-08-27 10:35:16 +01:00
Fabio Berger
51161784e8 Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Fix command
  Move md files to lib folder during build
  Change exit code to failure
  Fix sra-spec `main` and `types` in package.json
  Issue #1025 BlockParam unroll
  fix: Use yarn version 1.9.4 on CI
2018-08-27 10:34:45 +01:00
Fabio Berger
cb7660fbe7 Merge pull request #1009 from 0xProject/fix/ci-yarn-1.9.4
fix: Use yarn version 1.9.4 on CI
2018-08-27 10:33:02 +01:00
Fabio Berger
82e51b8787 Fix command 2018-08-27 10:15:27 +01:00
Fabio Berger
fffa96bba7 Move md files to lib folder during build 2018-08-27 10:15:13 +01:00
Fabio Berger
e6cb2e0fcd Change exit code to failure 2018-08-27 10:14:43 +01:00
Fabio Berger
38abeaed9c Fix sra-spec main and types in package.json 2018-08-27 10:13:17 +01:00
Fabio Berger
90c9e3496a Actual relative path 2018-08-27 10:10:07 +01:00
Fabio Berger
9fc8a6e214 Try relative path 2018-08-27 10:09:51 +01:00
Fabio Berger
9df87a199a Merge pull request #1026 from 0xProject/fix/contract-wrappers/block-param-literal
[contract_templates] Issue #1025 BlockParam unroll
2018-08-27 10:07:06 +01:00
Jacob Evans
7e9ba50502 Issue #1025 BlockParam unroll
BlockParam unrolls into number | BlockParamLiteral, though BlockParamLiteral does not get imported. This results in type build errors in downstream projects where tslint checks libs
2018-08-27 15:59:43 +10:00
Fabio Berger
41559c39b9 Fix command 2018-08-26 23:43:19 +01:00
Fabio Berger
6a6b424c86 Move md files to lib folder during build 2018-08-26 23:35:47 +01:00
Fabio Berger
3a5c6ed00f Fix sra-spec main and types in package.json 2018-08-26 23:05:04 +01:00
Fabio Berger
db54588d05 Add BlockParamLiteral to template 2018-08-26 22:00:51 +01:00
Fabio Berger
52fde551e4 Remove check since this method is now used in multiple places 2018-08-26 21:16:32 +01:00
Fabio Berger
40cf805e5e Also use failure exit code if unexpected error occurs 2018-08-26 20:54:15 +01:00
Fabio Berger
09d6496135 Change exit code to failure 2018-08-26 20:53:21 +01:00
Fabio Berger
c4dadf4bfd Combine imports 2018-08-26 17:49:06 +01:00
Fabio Berger
35ba3e6f7c Bumop 0x.js version 2018-08-26 17:35:17 +01:00
Fabio Berger
3ac182ee91 Fix file path to main and types in package.json 2018-08-26 17:12:13 +01:00
Amir Bandeali
00e7c70b4d Merge pull request #986 from 0xProject/feature/contracts/assertions
Add more assertions to assertValidFill
2018-08-24 20:03:28 -07:00
Amir Bandeali
0aa9ed3839 Merge pull request #1008 from 0xProject/fix/contracts/robustMatching
Robustness in Order Matching
2018-08-24 19:00:53 -07:00
Remco Bloemen
d652deea23 Merge branch 'fix/contracts/robustMatching' of github.com:0xProject/0x.js into fix/contracts/robustMatching 2018-08-24 18:54:15 -07:00
Greg Hysen
878db3b849 Added comments to order matching 2018-08-24 18:48:29 -07:00
Greg Hysen
ec2e726be0 Rephrased some of the math in MixinMatchOrders to improve readability 2018-08-24 18:20:26 -07:00
Greg Hysen
287830d6e0 Run all tests 2018-08-24 18:20:26 -07:00
Greg Hysen
c7a7ae7e18 Give right maker better price when correct value is not integral 2018-08-24 18:20:26 -07:00
Greg Hysen
1c7ba6a315 Extract only fill event logs 2018-08-24 18:20:26 -07:00
Greg Hysen
0a6f107243 Added temporary @todo to MixinMatchOrders 2018-08-24 18:20:25 -07:00
Greg Hysen
a93f95c55e Wording in MixinMatchOrders 2018-08-24 18:20:25 -07:00
Greg Hysen
6833e243b7 Addressed linter errors in match order tesster 2018-08-24 18:20:25 -07:00
Greg Hysen
81dc893d1d Removed a redundant comment from matchOrders 2018-08-24 18:20:25 -07:00
Greg Hysen
f8e565bc06 Tests for matchOrders edge cases 2018-08-24 18:20:25 -07:00
Greg Hysen
ba15fb6a06 Swapped direction of expect values to match output in failure cases 2018-08-24 18:20:25 -07:00
Greg Hysen
1e6b83719a Renaming verify -> assert in order matching 2018-08-24 18:20:25 -07:00
Greg Hysen
9fcb2dda73 Fixed a function comment 2018-08-24 18:20:25 -07:00
Greg Hysen
9a5ec8d030 Added function signature comments 2018-08-24 18:20:25 -07:00
Greg Hysen
ac872e5181 Added expect messages for checking left/right order states 2018-08-24 18:20:25 -07:00
Greg Hysen
70863cca08 Ran prettier and linter 2018-08-24 18:20:25 -07:00
Greg Hysen
5a1dce15be Updated all existing match order tests to use new format 2018-08-24 18:19:43 -07:00
Greg Hysen
d291256158 Passes comprehensive test 2018-08-24 18:18:30 -07:00
Greg Hysen
8c706ac639 Verify logs 2018-08-24 18:18:30 -07:00
Greg Hysen
f697814849 First balance test with intentional values 2018-08-24 18:18:30 -07:00
Greg Hysen
ca5c9e77c0 Ironing out the new set of test cases for order matchubng 2018-08-24 18:17:27 -07:00
Greg Hysen
a32b201afe Rounding for fees in match orders addressed, plus example 2018-08-24 18:17:27 -07:00
Greg Hysen
0ecdf1e213 All existing tests pass. 2018-08-24 18:17:26 -07:00
Greg Hysen
057891b342 Added fees to matchOrders (previously in calculateFillResults 2018-08-24 18:17:26 -07:00
Greg Hysen
407f63ef20 Removed calculateFillResults from matchOrders workflow. Eliminates compounded rounding errors. 2018-08-24 18:17:26 -07:00
Amir Bandeali
f938c989e3 Merge pull request #1002 from 0xProject/feature/contracts/mutex
[contracts] Add mutexes and reentrancy guards
2018-08-24 18:15:22 -07:00
Amir Bandeali
c8500cab10 Fix build 2018-08-24 17:30:56 -07:00
Amir Bandeali
c28c3db63f Only use one nonReentrant modifier, remove modifier from fillOrderNoThrow variations 2018-08-24 17:30:56 -07:00
Amir Bandeali
a09ee90739 Add tests for matchOrders 2018-08-24 17:30:56 -07:00
Amir Bandeali
7d5a23969d Add reentrancy tests for fillOrder and wrapper functions 2018-08-24 17:30:56 -07:00
Amir Bandeali
56c3c29feb Update ReentrantERC20Token with new functions and check that revert is occuring for correct reason 2018-08-24 17:30:56 -07:00
Amir Bandeali
c75212bef0 Add nonReentrant modifiers on functions that use getCurrentContextAddress only, add lockMutex modifier on functions that make external calls 2018-08-24 17:30:56 -07:00
Amir Bandeali
6d0dedc62c Split modifiers into check only and check, lock, unlock 2018-08-24 17:30:56 -07:00
Amir Bandeali
cf12daea2f Add ReentrantToken 2018-08-24 17:30:56 -07:00
Amir Bandeali
6f88e9bdbd Add internal fill functions, add reentrancy guard to public functions that make external calls 2018-08-24 17:30:56 -07:00
Amir Bandeali
d8cb56caa3 Add ReentrancyGuard contract 2018-08-24 17:30:56 -07:00
Amir Bandeali
044415e23d Remove redundant sload from getCurrentContextAddress 2018-08-24 17:30:56 -07:00
Remco Bloemen
6b866d6053 Revert maker not equal taker check 2018-08-24 17:29:52 -07:00
Amir Bandeali
74ce893f52 Merge pull request #1003 from 0xProject/feature/contracts/roundup
[contracts] Add getPartialAmountCeil and isRoundingErrorCeil
2018-08-24 17:29:09 -07:00
Amir Bandeali
cc1fac9bbe Fix linting errors 2018-08-24 17:02:42 -07:00
Amir Bandeali
94e01be9ed Merge pull request #1021 from 0xProject/feature/contracts/skipselftransfer
[Contracts] Skip self transfers
2018-08-24 16:58:46 -07:00
fragosti
91a9014a50 Simplify dropdown component 2018-08-24 16:48:48 -07:00
Remco Bloemen
e215992859 Fix mixin api 2018-08-24 16:46:24 -07:00
Remco Bloemen
e6f5cac878 Fix double definition of error 2018-08-24 16:46:24 -07:00
Remco Bloemen
29971f36cf Split into assertFillable and assertValidFill 2018-08-24 16:46:24 -07:00
Remco Bloemen
3e4493b389 Disallow self filling 2018-08-24 16:46:24 -07:00
Remco Bloemen
749c6ecc30 Add revert reasons to types 2018-08-24 16:46:24 -07:00
Remco Bloemen
e6e7bae445 Remove BUG_ from revert reasons 2018-08-24 16:46:23 -07:00
Remco Bloemen
a1d8943552 Document accetable price check 2018-08-24 16:46:23 -07:00
Remco Bloemen
07e56b3cc7 Fix taker overpay check 2018-08-24 16:46:23 -07:00
Remco Bloemen
b16f5f55fb Check fillable early 2018-08-24 16:46:23 -07:00
Remco Bloemen
d92fd43791 Update for new assertValidFill signature 2018-08-24 16:46:23 -07:00
Remco Bloemen
e706fa76ac Add overfill and price assertion to assertValidFill 2018-08-24 16:46:23 -07:00
Remco Bloemen
11328bd93d Skip self-transfers 2018-08-24 16:26:48 -07:00
Remco Bloemen
bc686fcbf3 Stylistic fixes 2018-08-24 16:17:02 -07:00
Remco Bloemen
80291caf7c Append -Floor to getPartialAmount and isRoundingError 2018-08-24 16:16:44 -07:00
Brandon Millman
cd5e9a5115 Merge pull request #1018 from 0xProject/fix/migrations/order-validator-testnet
[migrations] Add testnet network info to OrderValidator artifact
2018-08-24 16:06:10 -07:00
fragosti
ad161a973e Change all onTouchTap to onClick 2018-08-24 15:59:14 -07:00
fragosti
103e1aa250 Upgrade typescript version used by sra-spec 2018-08-24 15:45:43 -07:00
fragosti
641d86cb98 Add typescript dependency to typescript-typings (no idea how it was working) 2018-08-24 15:40:04 -07:00
fragosti
813b2ca1fb Bump react-highlight in react-shared once more 2018-08-24 15:29:22 -07:00
fragosti
ec96c3bb77 Upgrade react-shared used by website to one that depends on react 16 2018-08-24 15:15:55 -07:00
fragosti
65120e84e2 Upgrade react-highlight to version that depends on React 16 2018-08-24 15:11:14 -07:00
Amir Bandeali
82b51db17e Merge pull request #1015 from 0xProject/feature/contracts/removeCallerSigType
Remove SignatureType.Caller
2018-08-24 15:09:39 -07:00
fragosti
374ee2db32 Upgrade react in react-docs 2018-08-24 15:05:46 -07:00
Brandon Millman
3557cd93fc Add testnet network info to OrderValidator artifact 2018-08-24 14:42:07 -07:00
Amir Bandeali
0629a7d143 Remove remaining Trezor references 2018-08-24 14:40:00 -07:00
Greg Hysen
a27112cbef SignatureType.Trezor -> SignatureType.EthSign in Signature Validator tests 2018-08-24 14:40:00 -07:00
Greg Hysen
d039a1adda Fixed linter in signatureUtils 2018-08-24 14:40:00 -07:00
Greg Hysen
bb4d449e92 Test case for Trezor Model T signature 2018-08-24 14:40:00 -07:00
Greg Hysen
241534a63d Fixed trezor personal message in client+contracts; added a test using message signed by Trezor One (firmware v1.6.2) 2018-08-24 14:40:00 -07:00
Amir Bandeali
1932aff35c Remove Trezor SignatureType 2018-08-24 14:40:00 -07:00
Amir Bandeali
4f27991959 Remove SigntureType.Caller from signingUtils 2018-08-24 14:39:08 -07:00
Amir Bandeali
8ce4f9c784 Remove SignatureType.Caller 2018-08-24 14:39:08 -07:00
Amir Bandeali
7351bf0b14 Merge pull request #1012 from 0xProject/feature/contracts/staticcall
Use staticcall for external function calls in MixinSignatureValidator
2018-08-24 14:38:54 -07:00
fragosti
48ab151ec2 Update react and remove tap event plugin [deprecated] 2018-08-24 14:20:55 -07:00
Remco Bloemen
f6080367fe Disambiguate the operator precedence 2018-08-24 14:11:45 -07:00
Remco Bloemen
7f78d7da9d Add tests 2018-08-24 14:09:51 -07:00
Remco Bloemen
6734f2f1bc Add docs 2018-08-24 14:09:51 -07:00
Remco Bloemen
0fb7617a78 Fix incorect modulus 2018-08-24 14:09:51 -07:00
Remco Bloemen
4219af1430 Add DIVISION_BY_ZERO to getPartialAmount for consistency 2018-08-24 14:09:51 -07:00
Remco Bloemen
c109d1f545 Remove .only 2018-08-24 14:09:51 -07:00
Remco Bloemen
50fab9feb3 Improve getPartialAmountCeil docs 2018-08-24 14:09:51 -07:00
Remco Bloemen
3dad6ee55e Add tests for getPartialAmountCeil 2018-08-24 14:09:51 -07:00
Remco Bloemen
5d70df771b Add isRoundingErrorCeil 2018-08-24 14:09:50 -07:00
Remco Bloemen
ab5df342e1 Add getPartialAmountCeil 2018-08-24 14:09:50 -07:00
Amir Bandeali
6a9669a409 Rethrow Wallet and Validator errors 2018-08-24 14:06:46 -07:00
Remco Bloemen
e68942ee78 Handle zero case 2018-08-24 13:45:10 -07:00
Remco Bloemen
4159e45aff Update tests 2018-08-24 13:45:10 -07:00
Remco Bloemen
92497d7df4 Fix isRoundingError 2018-08-24 13:45:10 -07:00
fragosti
44a430802e Merge branch 'development' of https://github.com/0xProject/0x-monorepo into website/feature/react-16 2018-08-24 13:38:30 -07:00
Amir Bandeali
070eff6f3a Rename TestStaticCall => TestStaticCallReceiver 2018-08-24 13:32:04 -07:00
Amir Bandeali
681ed822ec Revert if undefined function called in AssetProxies 2018-08-24 13:19:07 -07:00
Amir Bandeali
0a1ae2c311 Remove pragma experimental v0.5.0 and use staticcall is assembly 2018-08-24 13:19:07 -07:00
Amir Bandeali
c5f8b9c2d2 Add pragma experimental v0.5.0 to SignatureValidator and add tests 2018-08-24 13:19:07 -07:00
fragosti
6b03cfd40d Add new react and types 2018-08-24 12:05:54 -07:00
Francesco Agosti
7f36574a57 Merge pull request #1011 from 0xProject/sra-api/rename/sra-spec
[sra-spec] Rename the sra-api package to sra-spec
2018-08-24 12:00:39 -07:00
fragosti
b637ca105a Merge branch 'development' of https://github.com/0xProject/0x-monorepo into sra-api/rename/sra-spec 2018-08-24 11:16:28 -07:00
fragosti
9ffddb47b8 Merge branch 'development' of https://github.com/0xProject/0x-monorepo into sra-api/rename/sra-spec 2018-08-24 11:14:34 -07:00
fragosti
7bcaac4e10 Ignore api.json in public 2018-08-24 11:11:56 -07:00
Fabio Berger
7f585a15f5 Publish
- 0x.js@1.0.1-rc.4
 - @0xproject/abi-gen@1.0.6
 - @0xproject/assert@1.0.6
 - @0xproject/base-contract@2.0.0
 - @0xproject/connect@2.0.0-rc.1
 - @0xproject/contract-wrappers@1.0.1-rc.4
 - contracts@2.1.41
 - @0xproject/dev-utils@1.0.5
 - ethereum-types@1.0.5
 - @0xproject/fill-scenarios@1.0.1-rc.4
 - @0xproject/forwarder-helper@1.0.1-rc.1
 - @0xproject/json-schemas@1.0.1-rc.5
 - @0xproject/metacoin@0.0.16
 - @0xproject/migrations@1.0.5
 - @0xproject/monorepo-scripts@1.0.6
 - @0xproject/order-utils@1.0.1-rc.4
 - @0xproject/order-watcher@1.0.1-rc.4
 - @0xproject/react-docs@1.0.6
 - @0xproject/react-shared@1.0.7
 - @0xproject/sol-compiler@1.1.0
 - @0xproject/sol-cov@2.1.0
 - @0xproject/sol-resolver@1.0.6
 - @0xproject/sra-api@1.0.1-rc.5
 - @0xproject/sra-report@1.0.6
 - @0xproject/subproviders@2.0.0
 - @0xproject/testnet-faucets@1.0.42
 - @0xproject/tslint-config@1.0.6
 - @0xproject/types@1.0.1-rc.5
 - @0xproject/typescript-typings@1.0.5
 - @0xproject/utils@1.0.6
 - @0xproject/web3-wrapper@2.0.0
 - @0xproject/website@0.0.45
2018-08-24 19:11:27 +01:00
Fabio Berger
b38ef579fb Updated CHANGELOGS 2018-08-24 19:11:10 +01:00
Fabio Berger
8427db36e9 Merge branch 'development' of github.com:0xProject/0x-monorepo into development
* 'development' of github.com:0xProject/0x-monorepo:
  Add documentation for connect v2
2018-08-24 18:59:01 +01:00
Fabio Berger
2d1c88c20d Updated api.json 2018-08-24 18:58:34 +01:00
Fabio Berger
029ea52979 Small fixes to publish script 2018-08-24 18:58:12 +01:00
Francesco Agosti
a2b6255f40 Merge pull request #1010 from 0xProject/feature/website/connect-2-docs
[website] Add documentation for connect v2
2018-08-24 10:35:45 -07:00
fragosti
d4592c0a60 Run prettier 2018-08-24 10:20:17 -07:00
Fabio Berger
fb6d511811 Added missing entry for RC package 2018-08-24 17:44:14 +01:00
Fabio Berger
c1b4fe999c Excessive command 2018-08-24 17:41:33 +01:00
Fabio Berger
1354f794a1 Merge pull request #1014 from 0xProject/feature/json-schemas/remove-superfluous-id
[json-schemas] Remove superflous id from relayer api fee recipients json schema
2018-08-24 16:32:04 +01:00
fragosti
8f6a96740e Remove superflous id from relayer api fee recipients json schema 2018-08-24 08:25:34 -07:00
fragosti
1d6699585e Add sra-spec to prettier ignore 2018-08-23 17:53:21 -07:00
Brandon Millman
e96f36751a Merge pull request #997 from 0xProject/feature/forwarder-helper/init
[forwarder-helper] Initial scaffolding for the forwarder-helper package
2018-08-23 17:42:48 -07:00
fragosti
a75c298de0 Point to new s3 bucket 2018-08-23 17:31:11 -07:00
fragosti
d603d8da47 Rename sra-api to sra-spec 2018-08-23 17:30:20 -07:00
fragosti
1040826b8b Add documentation for connect v2 2018-08-23 17:17:45 -07:00
Alex Browne
a551d0a6dd fix: Use yarn version 1.9.4 on CI 2018-08-23 16:45:18 -07:00
Brandon Millman
21c37ba62f Upgrade changelog version to get around test-publis CI job 2018-08-23 16:15:08 -07:00
Brandon Millman
2c660e62d3 Merge pull request #1006 from 0xProject/fix/0x.js/uglify-plugin
[0x.js] Update uglify plugin to support es6
2018-08-23 15:21:54 -07:00
Brandon Millman
6b667f8eca Remove CHANGELOG.md 2018-08-23 14:56:39 -07:00
Brandon Millman
d52c1310b2 Update uglify plugin to support es6 2018-08-23 14:42:03 -07:00
Brandon Millman
6338b5bd3c Move sorting phase into its own utils file 2018-08-23 13:47:24 -07:00
Brandon Millman
2713cca6ac Remove legacy docs stuff 2018-08-23 11:10:40 -07:00
Brandon Millman
57c104119c Merge branch 'development' into feature/forwarder-helper/init
* development: (187 commits)
  Remove trailing slash
  Fix linter
  Stop nesting interfaces and add necessary type exports
  Remove duplicate type and remove nested interface
  Add support for rending the Tuple type
  Add missing keyu
  Remove excessive timestamp
  Improve doc commebnt
  Remove docs catch-all endpoint
  Fix comments
  Look for all TS mapped types
  Add catch and exit with non-zero
  Remove superfluous dep
  Fix CHANGELOG entry
  Fix double assignment
  Upgrade Typedoc to 0.12.0, which works with TS 3.x
  Fix prettier issues
  Enable dry run of release publishing and handle git tags existing
  update yarn.lock
  Missing/superfluous type exports from connect
  ...
2018-08-23 10:58:33 -07:00
Brandon Millman
cd5c73550b Update _sortedConfigs naming 2018-08-23 10:53:59 -07:00
Brandon Millman
68b060cb6a Update yarn lock 2018-08-23 10:53:40 -07:00
Brandon Millman
7ad1a18a4a Merge branch 'development' into feature/forwarder-helper/init
* development: (31 commits)
  Update CI config to check development instead of v2-prototype branch
  fix: Make non-interactive npm login for publish tests more robust
  Run prettier
  Remove comment in updates json-schemas doc
  Add documentation for json-schemas
  Fix typo
  Remove artifacts
  Update variable names, make release candidate
  Update more names in docs
  Improve documentation
  Pin sra-report to 0xproject/connect v1.0.4
  Run prettier
  lint everything
  Update websocket for SRA v2
  Remove default query parameters
  Add networkId request param option
  Rename websocket files and types
  Use uuid as string for requestId
  Update changelogs
  Add fee recipients test
  ...
2018-08-23 10:52:09 -07:00
Fabio Berger
6e27324a34 Merge pull request #924 from 0xProject/wrap-typedoc
Improved Docs & Removed monorepo-scripts from packages
2018-08-23 18:12:39 +01:00
Fabio Berger
8eb4b6f917 Remove trailing slash 2018-08-23 17:50:42 +01:00
Fabio Berger
0ca64e394b Fix linter 2018-08-23 17:37:40 +01:00
Fabio Berger
c4c47d9665 Stop nesting interfaces and add necessary type exports 2018-08-23 17:28:27 +01:00
Fabio Berger
f9b222c127 Remove duplicate type and remove nested interface 2018-08-23 17:06:38 +01:00
Fabio Berger
28f077b16f Add support for rending the Tuple type 2018-08-23 16:55:41 +01:00
Fabio Berger
3563fabe88 Add missing keyu 2018-08-23 16:15:47 +01:00
Fabio Berger
1ca176e992 Remove excessive timestamp 2018-08-23 15:12:43 +01:00
Fabio Berger
52e2c60361 Improve doc commebnt 2018-08-23 15:12:34 +01:00
Fabio Berger
ae154f43df Remove docs catch-all endpoint 2018-08-23 15:08:12 +01:00
Fabio Berger
610caef73f Fix comments 2018-08-23 15:08:02 +01:00
Fabio Berger
29a9e1fc4e Look for all TS mapped types 2018-08-23 14:53:32 +01:00
Fabio Berger
ae937cfcce Add catch and exit with non-zero 2018-08-23 14:53:16 +01:00
Fabio Berger
6c7dca7d07 Remove superfluous dep 2018-08-23 14:53:04 +01:00
Fabio Berger
aa9efd79db Fix CHANGELOG entry 2018-08-23 14:52:52 +01:00
Fabio Berger
f0f4f873a9 Fix double assignment 2018-08-23 14:29:32 +01:00
Fabio Berger
0577ab96b8 Upgrade Typedoc to 0.12.0, which works with TS 3.x 2018-08-23 14:29:22 +01:00
Fabio Berger
15a34dca79 Fix prettier issues 2018-08-23 13:58:49 +01:00
Fabio Berger
2b38163274 Enable dry run of release publishing and handle git tags existing 2018-08-23 13:56:40 +01:00
Brandon Millman
572ad4615a Fix prettier 2018-08-22 23:02:44 -07:00
Alex Browne
b013cf2e14 Merge pull request #1001 from 0xProject/fix/npm-login-with-package
fix: Make non-interactive npm login for publish tests more robust
2018-08-22 17:20:14 -07:00
Alex Browne
3e56990db7 Update CI config to check development instead of v2-prototype branch 2018-08-22 16:58:48 -07:00
Alex Browne
2de7a49000 fix: Make non-interactive npm login for publish tests more robust 2018-08-22 16:40:10 -07:00
Brandon Millman
44ca6c4b71 Fix lint errors 2018-08-22 15:39:03 -07:00
Brandon Millman
bfabdf6010 Prettier 2018-08-22 15:39:03 -07:00
Brandon Millman
cbcf8e8477 Add changelog entry and fix order-util changelog PR numbers 2018-08-22 15:39:03 -07:00
Brandon Millman
b0b3f9e339 Add assertions to factory 2018-08-22 15:39:03 -07:00
Brandon Millman
a5c7ddcff5 Add more comments 2018-08-22 15:39:03 -07:00
Brandon Millman
6cef847a27 Write initial forwarderHelperFactory 2018-08-22 15:39:03 -07:00
Brandon Millman
68dfd1bb22 Add tests for getMarketBuyOrdersInfo 2018-08-22 15:39:03 -07:00
Brandon Millman
67d33ec10c Fix rounding bug in marketUtils 2018-08-22 15:39:03 -07:00
Brandon Millman
05ba049f59 Add test for sorting that happens in constructor 2018-08-22 15:39:03 -07:00
Brandon Millman
867ff3c5ec Update yarn lock 2018-08-22 15:39:03 -07:00
Brandon Millman
c2454d1428 Add more TODO items 2018-08-22 15:39:03 -07:00
Brandon Millman
7e0e195c88 Make config public readonly 2018-08-22 15:39:03 -07:00
Brandon Millman
e8a1950a74 Add ForwarderHelperImplConfig 2018-08-22 15:39:03 -07:00
Brandon Millman
3c973ba9f6 Remove marketSell and add to marketBuy implementation 2018-08-22 15:39:03 -07:00
Brandon Millman
2ef867f398 Add stubs for ForwarderHelper interface in ForwarderHelperImpl 2018-08-22 15:39:03 -07:00
Brandon Millman
90f2813d0e Flesh out types 2018-08-22 15:39:03 -07:00
Brandon Millman
dd9c4b6e5d Initial skeleton of forwarder-helper package 2018-08-22 15:39:03 -07:00
Remco Bloemen
e40a4addc9 Add upstream issue 2018-08-21 15:00:13 -07:00
Remco Bloemen
ad0fe2f079 Use const require instead of import 2018-08-21 14:45:14 -07:00
Remco Bloemen
9b4f5dfdda Fix tslint issues 2018-08-21 14:32:31 -07:00
Remco Bloemen
71a61a4dc3 Use detect-node 2018-08-21 14:28:21 -07:00
Remco Bloemen
1053aed74d Set curstom inspect printer in BigNumber 2018-08-21 14:14:22 -07:00
Alex Browne
88766a02c7 Merge branch 'development' 2018-08-13 18:42:09 -07:00
Fabio Berger
8162394797 Merge branch 'development'
* development: (175 commits)
  small README fixes
  Update docs list in README
  Add manual postpublish command to all public packages and update CHANGELOG.json
  Fix postpublish util to ignore namespace
  Fix release notes bug
  Should print out `lerna publish` stdout so we can see if anything went wrong
  Publish
  Updated CHANGELOGS
  Generate CHANGELOG.json files
  Fix hasty find/replace
  Default to 4sp
  Update moment, no longer need separate moment types
  Move prettify command to utils and also call it on CHANGELOG.md
  Add prettier run on generated CHANGELOG.json and fix scripts
  Remove semi-colons from monorepo-scripts package.json
  Get rid of ; in top-level package.json
  Fix TSLint error
  Make dry-run configurable from top-level package.json
  Improve naming
  Run prettier, update deployer CHANGELOG
  ...
2018-04-02 21:23:07 +09:00
Fabio Berger
fd001186dd Merge branch 'development'
* development:
  Update deployer version since manual re-publish
  Add new entry into CHANGELOG
  Fix bad merge
  Update yarn.lock
  Change title
  Add Blake and Zach to About page
  Re-size Jacob and Tom's images
  WIP
  Fix bad merge
  Fix yarn.lock
  Fix quotation marks
  Update README and CHANGELOG
  Add scaffolding for sra-report collection unit tests
2018-03-20 11:11:07 +00:00
Fabio Berger
128fef8838 Merge branch 'master' of github.com:0xProject/0x-monorepo
* 'master' of github.com:0xProject/0x-monorepo:
2018-03-19 01:18:01 +01:00
Fabio Berger
1e25a0654a Merge branch 'development'
* development:
  Manually publish 0x.js back to a working state
  Publish
  Publish
  Fix 0x.js assets
  Remove assets from connect and _bundles from packages that don't generate the folder
  Publish
  Fix packages that aren't working as expected
2018-03-19 01:17:37 +01:00
Fabio Berger
82b0ff6008 Merge branch 'development'
* development: (269 commits)
  Make new packages default to public on publish
  Add new public packages to top-level README
  Update top-level package.json
  Fix incorrect new versions
  Fix path to assets
  Publish
  Updated CHANGELOGS
  Fix quotation marks
  Add a complex test for ast visitor
  Move opcodes to constants
  Fix issue with bundling subproviders for the browser by ignoring the `ganache-core` dependency
  Add changelog entry about pragma addition
  Add pragma above command-line script
  Add tests for sol-cov
  Updated CHANGELOGs
  Add SignedOrder, Order, and ECSignature types to the types package
  Keep console.log in monorepo-scripts
  Enable coverage for all other packages with tests
  Fix parallel coverage results reporting
  Fix linter issuesx
  ...
2018-03-18 20:14:02 +01:00
Brandon Millman
ca7c3630f9 Merge branch 'development'
* development: (114 commits)
  Prettier sra-report README
  Add new packages to top level README
  Updated @0xproject/utils in top level package.json
  Publish
  Updated CHANGELOGs
  Detail tests in the README
  Add support for ropsten and rinkeby
  Fix yarn.lock
  Update list of packages and organize them alphabetically
  Fix prettier issues
  Add support for going back to previous hashes via the browser back button to wiki
  Scroll to previous hashed elements when user clicks back button
  Add back strict null checks to react-shared package and fix issues
  remove ability to have implicit dependencies and add missing deps
  update license
  remove no-implicit-this
  Add example & screenshot to npmignore
  Remove `;` to be nice to windows users
  Use unencoded @ symbol, browser will fix
  Fix external type links
  ...
2018-03-08 10:47:23 -08:00
Brandon Millman
260bb8218f Merge branch 'master' of github.com:0xProject/0x-monorepo
* 'master' of github.com:0xProject/0x-monorepo: (171 commits)
  Fix bugs in postpublish_utils.js
  Update @0xproject/utils in top-level package.json
  Changelog tweaks
  Publish
  Updated CHANGELOGS
  Fix typo
  Add PR number to changelog entry
  Add changelog update to subproviders package
  Add `numberOfAccounts` param to `LedgerSubprovider` method `getAccountsAsync` and add tests
  Remove unnecessary type assertion
  Fix comments
  Add comments
  Don't need any external packages for 0x connect docs yet
  Instead of adding `@0xproject/types` to tsconfig.json, let's only add it when calling TypeDoc
  Fix styling
  Make prettier ignore postpublish_utils
  Update yarn.lock
  Update yarn.lock
  Update all mentions of the repo name being `0x.js` to `0x-monorepo`
  Add hack comment
  ...
2018-03-08 10:47:13 -08:00
Fabio Berger
a691de7d55 Merge branch 'development'
* development:
  Fix bugs in postpublish_utils.js
2018-03-05 06:13:18 +01:00
Fabio Berger
5674c484e2 Merge branch 'development'
* development: (175 commits)
  Update @0xproject/utils in top-level package.json
  Changelog tweaks
  Publish
  Updated CHANGELOGS
  Fix typo
  Add PR number to changelog entry
  Add changelog update to subproviders package
  Add `numberOfAccounts` param to `LedgerSubprovider` method `getAccountsAsync` and add tests
  Remove unnecessary type assertion
  Fix comments
  Add comments
  Don't need any external packages for 0x connect docs yet
  Instead of adding `@0xproject/types` to tsconfig.json, let's only add it when calling TypeDoc
  Fix styling
  Make prettier ignore postpublish_utils
  Update yarn.lock
  Update yarn.lock
  Update all mentions of the repo name being `0x.js` to `0x-monorepo`
  Add hack comment
  Add comment about typeDoc versions
  ...
2018-03-04 19:38:55 +01:00
Brandon Millman
9286dc284c Merge branch 'development'
* development:
  Publish
  Updated CHANGELOGs
  Do not JSON parse empty reponse
  Fix incorrect comment on WebSocketOrderbookChannel constructor
  Fix broken postpublish script in connect
2018-02-16 23:00:54 -07:00
Brandon Millman
624b71bd39 Merge branch 'development'
* development: (45 commits)
  Updated top level @0xproject/utils dependency
  Publish
  Updated CHANGELOGs
  Add an enforced minimum for the heartbeat interval
  Add Rinkeby network to smart contract docs
  Updated CHANGELOG
  Add configurable heartbeat to WebSocketOrderbookChannel
  remove hard-coded color
  Remove section links until they go somewhere
  Add more padding on top of section title
  Add hack comment explaining param count short-cut
  replace repeated conditionals with variable
  Remove unneeded props
  use const over hard-coding
  uncomment dev logic
  Re-design docs pages
  Add icons for all doc pages
  Re-designed Wiki and half-redesigned docs pages
  Prettier fixes
  Rename variables
  ...
2018-02-16 10:01:01 -07:00
Fabio Berger
b7ea605a3b Merge branch 'development'
* development: (57 commits)
  Update utils in top-level package.json
  Publish
  Fix version in CHANGELOG
  Update changelog version
  Fix changelog version
  Fix changelogs
  Add `yarn-error.log` to all .npmignore
  Add PR number to CHANGELOGs
  ignore all files starting with dots in all sub-packages
  Remove top level .npmignore
  Add npmignore to web3-wrapper and update CHANGELOG
  Add npmignore and remove .gitignore
  Add npmignore to utils and update CHANGELOG
  Add npmignore to types and update CHANGELOG
  cleanup npmignorex
  Add npmignore to subproviders and update CHANGELOG
  Add npmignore to json-schemas and update CHANGELOG
  Add npmignore to dev-utils and update CHANGELOG
  Add npmignore to deployer along with a changelog
  Add tslint.json to deployer package and fix all tslint issues
  ...
2018-02-09 16:36:13 -08:00
Brandon Millman
489a787de8 Merge branch 'development'
* development: (199 commits)
  Update @0xproject/utils version in top level package.json
  Publish
  Update CHANGELOGs
  Fix wiki styling
  Prettier
  Addressed review comments
  Update Subprovider README
  Fix Remco's github name in CODEOWNERS
  Only show faucet error if not on a testnet
  Organize async task queues by network
  Fix ABI error message
  Move isTestNetwork into utils and also check it from showing ZRX request button
  Stop using definite assignment assertion cause prettier doesn't handle that
  Special-case ZRXToken snake case conversion
  Fix linter errors
  Generate contract wrappers on pre-build
  Add missing async
  Remove noImplicitThis
  Tslint disable no-consecutive-blank-lines in generated files
  Change compiled sources in contracts
  ...
2018-02-07 13:37:53 -08:00
Fabio Berger
84150036ed Merge branch 'development'
* development: (78 commits)
  Publish
  Add PR number
  Add config file specifically in prettier command and fix files
  Fix prettier
  Fix prettier
  Add shouldAddPersonalMessagePrefix param to signOrderHashAsync instead of trying to infer whether to add it or not from the nodeVersion
  Publish
  Move @0xproject/types to dependencies
  Updated web3-typescript-typings changelog
  Fixed getTransactionReceipt not returning null
  Run prettier
  Update changelog
  Add Rinkeby addresses to artifacts
  Fix bad merge on package.json
  Respond to GH comments and add /info endpoint
  Publish
  Update yarn.lock
  Update the CHANGELOG
  Fix the bug making it impossible to specify the custom ZRX address
  Change package name to @0xproject/testnet-faucets
  ...
2018-01-30 13:59:47 +01:00
Brandon Millman
619123720c Merge branch 'development'
* development: (31 commits)
  Publish
  Update CHANGELOG
  Fix the typos
  Added PR number to web3 typings changelog
  Update the CHANGELOG
  Fix fillOrdersUpTo balances validation
  Add a regression test for fillUpToValidation
  Fix web3 typing defaultAccount not allowing `undefined`
  Sort packages alphabetically in README
  Add postpublish scripts
  Return after checking for an error and add an explanatory comment
  Stop appending /v0 to HttpClient api endpoint urls
  Add chai-as-promised-typescript-typings
  Remove redundant type refs
  Improve HttpClient errors
  Add web3-typescript-typings and chai-as-promised-typescript-typings to the main monorepo
  Import chai-as-promised-typescript-typings
  Fix @bmilman linkedin link
  Add new team photos
  Add a CHANGELOG to a website
  ...
2018-01-17 22:49:31 -08:00
Leonid Logvinov
cc98ff9fe6 Merge branch 'development' 2018-01-11 13:17:12 +01:00
Leonid Logvinov
39d159f38c Merge branch 'development' 2017-12-20 17:25:03 +01:00
Leonid Logvinov
ca8eb90cec Merge branch 'development' 2017-12-15 16:07:05 +01:00
Leonid Logvinov
f8e3e28d85 Merge branch 'development' 2017-12-14 17:52:23 +01:00
Leonid Logvinov
4d868489bd Merge branch 'development' 2017-12-13 16:06:31 +01:00
Brandon Millman
b06f09f6af Merge branch 'development'
* development: (115 commits)
  Publish
  Add scope to abi-gen dependency in 0x.js
  Add @0xproject scope to abi-gen package name
  Add yarn install to lerna:publish command
  Make contracts package private
  Update connect changelog
  remove console.log
  Update README.md
  Fix unit test
  Add missing params
  Debug CircleCi failure
  Update yarn.lock
  Inline network module
  Add todo
  Stop supporting different file extensions in abi-gen
  Refactor networkId out of web3Wrapper
  Update connect types in preperation for publishing
  Add link to random id generator
  Remove `prebuild` command and add `test:circleci`
  Make sure we don't pass empty maker into getOrderHashHex
  ...
2017-12-08 14:21:59 -08:00
Brandon Millman
bf00f5f945 Merge branch 'development'
* development: (156 commits)
  Publish
  Update CHANGELOG.md
  Redeclare Order, SignedOrder, and ECSignature types in connect, remove 0x.js dependency
  Add SignedOrder and TokenTradeInfo to public interface and fix a HttpClient comment
  Add TokenTradeInfo to public types
  Rename @0xproject/connect to 0x Connect
  Rename packageName to displayName for clarity
  Fix phantom `Contracts` section issue
  Add 0x Connect to footer
  Update 0x.js to 0.27.1
  Fix connect documentation introduction and installation wording
  Lock the 0x.js version used in website
  rename for clarity
  remove unused code
  Add 0x Connect Docs to the menu and topBar
  Add connect docs
  Add subPackageName and get rid of hard-coded 0x.js in sourceLink
  Publish
  Refactor the topLevel documentation react components for 0x.js and Smart contracts into a single component
  Export TransactionOpts type
  ...
2017-11-29 12:55:34 -08:00
Brandon Millman
6ceb6cc301 Merge branch 'development'
* development: (143 commits)
  Fix connect CHANGELOG version
  Publish
  Fix npm auth issues
  Revert "Publish"
  Publish
  Add actual version to CHANGELOG
  Add blockchainLifecycle management to the ExpirationWatcher test
  Update connect CHANGELOG.md in preperation for publishing
  Add TODO comment before BigNumber.config() call
  Prepare connect package for publishing
  Last renames
  Refactor while condition
  Fix tests
  Fix a typo in  postpublish utils tags -> tag
  Publish
  Revert "Publish"
  Publish
  Add instanceOf assertion
  Rename toDecimal to hexToDecimal
  Add PR numbers
  ...
2017-11-22 15:23:27 -08:00
Fabio Berger
00a6afaa8e Re-add changelog for 0x.js 2017-11-13 16:27:43 -05:00
2580 changed files with 163913 additions and 156629 deletions

View File

@@ -1,257 +1,414 @@
version: 2
jobs:
build:
docker:
- image: circleci/node:9
environment:
CONTRACTS_COMMIT_HASH: '9ed05f5'
working_directory: ~/repo
steps:
- checkout
- run: echo 'export PATH=$HOME/CIRCLE_PROJECT_REPONAME/node_modules/.bin:$PATH' >> $BASH_ENV
- restore_cache:
name: Restore Yarn Package Cache
keys:
- yarn-packages-{{ .Branch }}-{{ checksum "yarn.lock" }}
- yarn-packages-{{ .Branch }}
- yarn-packages-master
- yarn-packages-
- run:
name: yarn
command: yarn --frozen-lockfile install || true
- run:
name: yarn
command: yarn --frozen-lockfile install
- save_cache:
name: Save Yarn Package Cache
key: yarn-packages-{{ .Branch }}-{{ checksum "yarn.lock" }}
paths:
- node_modules/
- run: >
if [ -z "$(git diff --name-only v2-prototype packages/website)" ]; then
yarn build --exclude website
else
yarn build
fi
- save_cache:
key: repo-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo
test-contracts-ganache:
docker:
- image: circleci/node:9
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn wsrun test:circleci contracts
test-contracts-geth:
docker:
- image: circleci/node:9
- image: albrow/0x-devnet
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
# HACK(albrow): we need to sleep 10 seconds to ensure the devnet is
# initialized
- run: sleep 10 && TEST_PROVIDER=geth yarn wsrun test contracts
test-publish:
docker:
- image: circleci/node:9
- image: verdaccio/verdaccio
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn test:publish:circleci
test-doc-generation:
docker:
- image: circleci/node:9
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn test:generate_docs:circleci
test-rest:
docker:
- image: circleci/node:9
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn wsrun test:circleci @0xproject/abi-gen
- run: yarn wsrun test:circleci @0xproject/assert
- run: yarn wsrun test:circleci @0xproject/base-contract
- run: yarn wsrun test:circleci @0xproject/connect
- run: yarn wsrun test:circleci @0xproject/contract-wrappers
- run: yarn wsrun test:circleci @0xproject/dev-utils
- run: yarn wsrun test:circleci @0xproject/json-schemas
- run: yarn wsrun test:circleci @0xproject/metacoin
- run: yarn wsrun test:circleci @0xproject/order-utils
- run: yarn wsrun test:circleci @0xproject/order-watcher
- run: yarn wsrun test:circleci @0xproject/sol-compiler
- run: yarn wsrun test:circleci @0xproject/sol-cov
- run: yarn wsrun test:circleci @0xproject/sra-report
- run: yarn wsrun test:circleci @0xproject/subproviders
- run: yarn wsrun test:circleci @0xproject/web3-wrapper
- run: yarn wsrun test:circleci @0xproject/utils
- save_cache:
key: coverage-abi-gen-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/abi-gen/coverage/lcov.info
- save_cache:
key: coverage-assert-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/assert/coverage/lcov.info
- save_cache:
key: coverage-base-contract-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/base-contract/coverage/lcov.info
- save_cache:
key: coverage-connect-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/connect/coverage/lcov.info
- save_cache:
key: coverage-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/contract-wrappers/coverage/lcov.info
- save_cache:
key: coverage-dev-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/dev-utils/coverage/lcov.info
- save_cache:
key: coverage-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/json-schemas/coverage/lcov.info
- save_cache:
key: coverage-metacoin-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/metacoin/coverage/lcov.info
- save_cache:
key: coverage-order-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/order-utils/coverage/lcov.info
- save_cache:
key: coverage-order-watcher-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/order-watcher/coverage/lcov.info
- save_cache:
key: coverage-sol-compiler-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sol-compiler/coverage/lcov.info
- save_cache:
key: coverage-sol-cov-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sol-cov/coverage/lcov.info
- save_cache:
key: coverage-sra-report-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sra-report/coverage/lcov.info
- save_cache:
key: coverage-subproviders-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/subproviders/coverage/lcov.info
- save_cache:
key: coverage-web3-wrapper-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/web3-wrapper/coverage/lcov.info
static-tests:
working_directory: ~/repo
docker:
- image: circleci/node:9
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn prettier:ci
- run: yarn lerna run lint
submit-coverage:
docker:
- image: circleci/node:9
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-abi-gen-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-assert-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-base-contract-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-connect-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-dev-utils-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-metacoin-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-order-utils-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-order-watcher-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sol-compiler-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sol-cov-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sra-report-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-subproviders-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-web3-wrapper-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-contracts-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn report_coverage
build:
resource_class: medium+
docker:
- image: circleci/node:9-browsers
environment:
CONTRACTS_COMMIT_HASH: '9ed05f5'
working_directory: ~/repo
steps:
- checkout
- run: echo 'export PATH=$HOME/CIRCLE_PROJECT_REPONAME/node_modules/.bin:$PATH' >> $BASH_ENV
- run:
# HACK(albrow): Without this, yarn commands will sometimes
# fail with a "permission denied" error.
name: Set npm path
command: npm set prefix=/home/circleci/npm && echo 'export PATH=$HOME/circleci/npm/bin:$PATH' >> /home/circleci/.bashrc
- run:
name: install-yarn
command: npm install --global yarn@1.9.4
- run:
name: yarn
command: yarn --frozen-lockfile --ignore-engines install || yarn --frozen-lockfile --ignore-engines install
- setup_remote_docker
- run: yarn build:ci:no_website
- run: yarn build:ts
- save_cache:
key: repo-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo
- save_cache:
key: python-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/python-contract-wrappers/generated
build-website:
resource_class: medium+
docker:
- image: circleci/node:9-browsers
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: cd packages/website && yarn build:prod
test-contracts-ganache:
docker:
- image: circleci/node:9-browsers
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn wsrun test:circleci @0x/contracts-multisig @0x/contracts-utils @0x/contracts-exchange-libs @0x/contracts-erc20 @0x/contracts-erc721 @0x/contracts-erc1155 @0x/contracts-extensions @0x/contracts-asset-proxy @0x/contracts-exchange @0x/contracts-exchange-forwarder @0x/contracts-coordinator @0x/contracts-dev-utils
test-contracts-geth:
docker:
- image: circleci/node:9-browsers
- image: 0xorg/devnet
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
# HACK(albrow): we need to sleep 10 seconds to ensure the devnet is
# initialized
- run: sleep 10 && TEST_PROVIDER=geth yarn wsrun test:circleci @0x/contracts-multisig @0x/contracts-utils @0x/contracts-exchange-libs @0x/contracts-erc20 @0x/contracts-erc721 @0x/contracts-erc1155 @0x/contracts-extensions @0x/contracts-asset-proxy @0x/contracts-exchange @0x/contracts-exchange-forwarder @0x/contracts-coordinator @0x/contracts-dev-utils
test-publish:
resource_class: medium+
docker:
- image: circleci/node:9-browsers
- image: 0xorg/verdaccio
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn test:publish:circleci
test-doc-generation:
docker:
- image: circleci/node:9-browsers
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn test:generate_docs:circleci
test-rest:
docker:
- image: circleci/node:9-browsers
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn wsrun test:circleci @0x/contracts-test-utils
- run: yarn wsrun test:circleci @0x/abi-gen
- run: yarn wsrun test:circleci @0x/asset-buyer
- run: yarn wsrun test:circleci @0x/contract-artifacts
- run: yarn wsrun test:circleci @0x/assert
- run: yarn wsrun test:circleci @0x/base-contract
- run: yarn wsrun test:circleci @0x/connect
- run: yarn wsrun test:circleci @0x/contract-wrappers
- run: yarn wsrun test:circleci @0x/dev-utils
- run: yarn wsrun test:circleci @0x/json-schemas
- run: yarn wsrun test:circleci @0x/metacoin
- run: yarn wsrun test:circleci @0x/order-utils
- run: yarn wsrun test:circleci @0x/order-watcher
- run: yarn wsrun test:circleci @0x/sol-compiler
- run: yarn wsrun test:circleci @0x/sol-tracing-utils
- run: yarn wsrun test:circleci @0x/sol-doc
- run: yarn wsrun test:circleci @0x/subproviders
- run: yarn wsrun test:circleci @0x/web3-wrapper
- run: yarn wsrun test:circleci @0x/utils
- run: yarn wsrun test:circleci @0x/instant
- save_cache:
key: coverage-abi-gen-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/abi-gen/coverage/lcov.info
- save_cache:
key: coverage-assert-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/assert/coverage/lcov.info
- save_cache:
key: coverage-asset-buyer-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/asset-buyer/coverage/lcov.info
- save_cache:
key: coverage-base-contract-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/base-contract/coverage/lcov.info
- save_cache:
key: coverage-connect-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/connect/coverage/lcov.info
- save_cache:
key: coverage-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/contract-wrappers/coverage/lcov.info
- save_cache:
key: coverage-dev-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/dev-utils/coverage/lcov.info
- save_cache:
key: coverage-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/json-schemas/coverage/lcov.info
- save_cache:
key: coverage-metacoin-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/metacoin/coverage/lcov.info
- save_cache:
key: coverage-order-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/order-utils/coverage/lcov.info
- save_cache:
key: coverage-order-watcher-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/order-watcher/coverage/lcov.info
- save_cache:
key: coverage-sol-compiler-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sol-compiler/coverage/lcov.info
- save_cache:
key: coverage-sol-tracing-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sol-tracing-utils/coverage/lcov.info
- save_cache:
key: coverage-sol-doc-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/sol-doc/coverage/lcov.info
- save_cache:
key: coverage-subproviders-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/subproviders/coverage/lcov.info
- save_cache:
key: coverage-web3-wrapper-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/packages/web3-wrapper/coverage/lcov.info
test-python:
working_directory: ~/repo
docker:
- image: circleci/python
- image: 0xorg/ganache-cli:2.2.2
- image: 0xorg/launch-kit-ci
environment:
RPC_URL: http://localhost:8545
NETWORK_ID: 50
WHITELIST_ALL_TOKENS: True
command: bash -c "until curl -sfd'{\"method\":\"net_listening\"}' http://localhost:8545 | grep true; do continue; done; forever ts/lib/index.js"
steps:
- checkout
- run: sudo chown -R circleci:circleci /usr/local/bin
- run: sudo chown -R circleci:circleci /usr/local/lib/python3.7
- restore_cache:
key: installed-py-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
key: python-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
- run:
command: |
cd python-packages
python -m ensurepip
./pre_install
./install
- save_cache:
key: installed-py-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
paths:
- '/usr/local/bin'
- '/usr/local/lib/python3.7/site-packages'
- run:
command: |
cd python-packages
./cmd_pkgs_in_dep_order.py coverage run setup.py test
- save_cache:
key: coverage-python-contract-addresses-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/contract_addresses/.coverage
- save_cache:
key: coverage-python-contract-artifacts-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/contract_artifacts/.coverage
- save_cache:
key: coverage-python-contract-demo-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/contract_demo/.coverage
- save_cache:
key: coverage-python-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/json_schemas/.coverage
- save_cache:
key: coverage-python-order-utils-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/order_utils/.coverage
- save_cache:
key: coverage-python-sra-client-{{ .Environment.CIRCLE_SHA1 }}
paths:
- ~/repo/python-packages/sra_client/.coverage
test-rest-python:
working_directory: ~/repo
docker:
- image: circleci/python
steps:
- checkout
- run: sudo chown -R circleci:circleci /usr/local/bin
- run: sudo chown -R circleci:circleci /usr/local/lib/python3.7
- restore_cache:
key: installed-py-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
- run:
command: |
cd python-packages/order_utils
python -m ensurepip
python -m pip install .
- save_cache:
key: installed-py-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
paths:
- '/usr/local/bin'
- '/usr/local/lib/python3.7/site-packages'
- '.eggs'
- '.mypy_cache'
- '.pytest_cache'
- '.tox'
- run:
command: |
cd python-packages/order_utils
tox
static-tests-python:
working_directory: ~/repo
docker:
- image: circleci/python
steps:
- checkout
- run: sudo chown -R circleci:circleci /usr/local/bin
- run: sudo chown -R circleci:circleci /usr/local/lib/python3.7
- restore_cache:
key: installed-py-{{ .Branch }}-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
key: python-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
- run:
command: |
python -m ensurepip
cd python-packages
./pre_install
./install
./lint
static-tests:
working_directory: ~/repo
docker:
- image: circleci/node:9-browsers
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn lerna run lint
- run: yarn prettier:ci
- run: yarn deps_versions:ci
- run: cd packages/0x.js && yarn build:umd:prod
- run: yarn bundlewatch
submit-coverage:
docker:
- image: circleci/node:9-browsers
working_directory: ~/repo
steps:
- restore_cache:
keys:
- repo-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-abi-gen-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-assert-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-asset-buyer-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-base-contract-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-connect-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-contract-wrappers-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-dev-utils-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-metacoin-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-order-utils-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-order-watcher-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sol-compiler-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sol-tracing-utils-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-sol-doc-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-subproviders-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-web3-wrapper-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-contracts-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-json-schemas-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-contract-addresses-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-contract-artifacts-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-contract-demo-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-sra-client-{{ .Environment.CIRCLE_SHA1 }}
- restore_cache:
keys:
- coverage-python-order-utils-{{ .Environment.CIRCLE_SHA1 }}
- run: yarn report_coverage
workflows:
version: 2
main:
jobs:
- build
- test-contracts-ganache:
requires:
version: 2
main:
jobs:
- build
- test-contracts-geth:
requires:
- build
- test-rest:
requires:
- build
- static-tests:
requires:
- build
- test-publish:
requires:
- build
- test-doc-generation:
requires:
- build
- submit-coverage:
requires:
- test-rest
- build-website:
requires:
- build
- test-contracts-ganache:
requires:
- build
# TODO(albrow): Tests always fail on Geth right now because our fork
# is outdated. Uncomment once we have updated our Geth fork.
# - test-contracts-geth:
# requires:
# - build
- test-rest:
requires:
- build
- static-tests:
requires:
- build
- test-publish:
requires:
- build
- test-doc-generation:
requires:
- build
- submit-coverage:
requires:
- test-rest
- test-python
- static-tests-python:
requires:
- test-python
- test-python:
requires:
- build
# skip python tox run for now, as we don't yet have multiple test environments to support.
#- test-rest-python

6
.gitattributes vendored
View File

@@ -1 +1,7 @@
*.sol linguist-language=Solidity
# Automatically collapse generated files in GitHub.
*.svg linguist-generated=true
packages/contract-artifacts/artifacts/*json linguist-generated=true
packages/abi-gen-wrappers/src/generated-wrappers/*.ts liguist-generated=true

43
.github/autolabeler.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
python: ['python-packages']
contracts: ['contracts']
@0x/sol-doc: ['packages/sol-doc']
@0x/sol-resolver: ['packages/sol-resolver']
@0x/contracts-gen: ['packages/contracts-gen']
@0x/sra-spec: ['packages/sra-spec']
@0x/subproviders: ['packages/subproviders']
@0x/contract-addresses: ['packages/contract-addresses']
@0x/migrations: ['packages/migrations']
@0x/web3-wrapper: ['packages/web3-wrapper']
@0x/sol-compiler: ['packages/sol-compiler']
@0x/types: ['packages/types']
@0x/instant: ['packages/instant']
@0x/abi-gen-templates: ['packages/abi-gen-templates']
@0x/abi-gen: ['packages/abi-gen']
@0x/website: ['packages/website']
@0x/sol-coverage: ['packages/sol-coverage']
@0x/sol-profiler: ['packages/sol-profiler']
@0x/sol-trace: ['packages/sol-trace']
@0x/sol-tracing-utils: ['packages/sol-tracing-utils']
@0x/utils: ['packages/utils']
@0x/tslint-config: ['packages/tslint-config']
@0x/asset-buyer: ['packages/asset-buyer']
@0x/order-watcher: ['packages/order-watcher']
@0x/react-docs: ['packages/react-docs']
@0x/order-utils: ['packages/order-utils']
@0x/react-shared: ['packages/react-shared']
@0x/assert: ['packages/assert']
@0x/base-contract: ['packages/base-contract']
@0x/typescript-typings: ['packages/typescript-typings']
0x.js: ['packages/0x.js']
@0x/abi-gen-wrappers: ['packages/abi-gen-wrappers']
@0x/metacoin: ['packages/metacoin']
@0x/contract-artifacts: ['packages/contract-artifacts']
@0x/dev-utils: ['packages/dev-utils']
@0x/contract-wrappers: ['packages/contract-wrappers']
@0x/json-schemas: ['packages/json-schemas']
@0x/ethereum-types: ['ethereum-types']
@0x/connect: ['packages/connect']
@0x/fill-scenarios: ['packages/fill-scenarios']
@0x/dev-tools-pages: ['packages/dev-tools-pages']
@0x/testnet-faucets: ['packages/testnet-faucets']
@0x/monorepo-scripts: ['packages/monorepo-scripts']

19
.github/stale.yml vendored Normal file
View File

@@ -0,0 +1,19 @@
# Number of days of inactivity before an issue becomes stale
daysUntilStale: 30
# Number of days of inactivity before a stale issue is closed
daysUntilClose: 30
# Issues with these labels will never be considered stale
exemptLabels:
- pinned
- security
# Label to use when marking an issue as stale
staleLabel: stale
# Comment to post when marking an issue as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs. Thank you
for your contributions.
# Comment to post when closing a stale issue. Set to `false` to disable
closeComment: >
This issue has been automatically closed because no activity occured in 7 days after being marked as stale. If it's still relevant - feel free to reopen. Thank you
for your contributions.

67
.gitignore vendored
View File

@@ -11,6 +11,10 @@ pids
*.seed
*.pid.lock
# SQLite database files
*.db
*.sqlite
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
@@ -72,38 +76,61 @@ TODO.md
.vscode
packages/website/public/bundle*
packages/dev-tools-pages/public/bundle*
packages/react-docs/example/public/bundle*
# server cli
packages/testnet-faucets/server/
# generated contract artifacts/
packages/sol-cov/test/fixtures/artifacts/
contracts/coordinator/generated-artifacts/
contracts/exchange/generated-artifacts/
contracts/asset-proxy/generated-artifacts/
contracts/multisig/generated-artifacts/
contracts/utils/generated-artifacts/
contracts/exchange-libs/generated-artifacts/
contracts/erc20/generated-artifacts/
contracts/erc721/generated-artifacts/
contracts/erc1155/generated-artifacts/
contracts/extensions/generated-artifacts/
contracts/exchange-forwarder/generated-artifacts/
contracts/dev-utils/generated-artifacts/
packages/sol-tracing-utils/test/fixtures/artifacts/
packages/metacoin/artifacts/
packages/order-watcher/test/artifacts/
packages/contract-wrappers/test/artifacts/
packages/contract-wrappers/src/artifacts/
packages/order-watcher/src/artifacts/
packages/0x.js/src/artifacts/
packages/order-utils/src/artifacts/
python-packages/contract_artifacts/src/zero_ex/contract_artifacts/artifacts/
# unstable generated contract artifacts:
packages/migrations/artifacts/2.0.0/
# generated contract watcher
packages/0x.js/src/generated_contract_wrappers/
packages/contracts/generated_contract_wrappers/
packages/contract-wrappers/src/contract_wrappers/generated/
# generated contract wrappers
packages/abi-gen-wrappers/src/generated-wrappers/
packages/python-contract-wrappers/generated/
contracts/coordinator/generated-wrappers/
contracts/exchange/generated-wrappers/
contracts/asset-proxy/generated-wrappers/
contracts/multisig/generated-wrappers/
contracts/utils/generated-wrappers/
contracts/exchange-libs/generated-wrappers/
contracts/erc20/generated-wrappers/
contracts/erc721/generated-wrappers/
contracts/erc1155/generated-wrappers/
contracts/extensions/generated-wrappers/
contracts/exchange-forwarder/generated-wrappers/
contracts/dev-utils/generated-wrappers/
packages/metacoin/src/contract_wrappers
packages/fill-scenarios/src/generated_contract_wrappers/
packages/order-watcher/src/generated_contract_wrappers/
packages/order-utils/src/generated_contract_wrappers/
packages/migrations/src/1.0.0/contract_wrappers
packages/migrations/src/2.0.0/contract_wrappers
packages/migrations/src/2.0.0-beta-testnet/contract_wrappers
# cli test output
packages/abi-gen/test-cli/output
# solc-bin in sol-compiler
packages/sol-compiler/solc_bin/
# Monorepo scripts
packages/*/scripts/
# python stuff
.eggs
.mypy_cache
.tox
python-packages/*/build
python-packages/*/dist
__pycache__
python-packages/*/src/*.egg-info
python-packages/*/.coverage

View File

@@ -1,25 +1,39 @@
lib
.nyc_output
/packages/contract-wrappers/src/contract_wrappers/generated/
/contracts/coordinator/generated-wrappers
/contracts/coordinator/generated-artifacts
/contracts/exchange/generated-wrappers
/contracts/exchange/generated-artifacts
/contracts/asset-proxy/generated-wrappers
/contracts/asset-proxy/generated-artifacts
/contracts/multisig/generated-wrappers
/contracts/multisig/generated-artifacts
/contracts/utils/generated-wrappers
/contracts/utils/generated-artifacts
/contracts/exchange-libs/generated-wrappers
/contracts/exchange-libs/generated-artifacts
/contracts/erc20/generated-wrappers
/contracts/erc20/generated-artifacts
/contracts/erc721/generated-wrappers
/contracts/erc721/generated-artifacts
/contracts/erc1155/generated-wrappers
/contracts/erc1155/generated-artifacts
/contracts/extensions/generated-wrappers
/contracts/extensions/generated-artifacts
/contracts/exchange-forwarder/generated-wrappers
/contracts/exchange-forwarder/generated-artifacts
/contracts/dev-utils/generated-wrappers
/contracts/dev-utils/generated-artifacts
/packages/abi-gen/test-cli/output
/packages/json-schemas/schemas
/python-packages/json_schemas/src/zero_ex/json_schemas/schemas
/packages/metacoin/src/contract_wrappers
/packages/0x.js/src/generated_contract_wrappers/
/packages/contracts/generated_contract_wrappers/
/packages/fill-scenarios/src/generated_contract_wrappers/
/packages/order-watcher/src/generated_contract_wrappers/
/packages/order-utils/src/generated_contract_wrappers/
/packages/migrations/src/1.0.0/contract_wrappers
/packages/migrations/src/2.0.0/contract_wrappers
/packages/migrations/src/2.0.0-beta-testnet/contract_wrappers
/packages/0x.js/src/artifacts
/packages/contracts/src/artifacts
/packages/contract-wrappers/src/artifacts
/packages/order-watcher/src/artifacts
/packages/metacoin/artifacts
/packages/sra-api/public/
/packages/contract-wrappers/test/artifacts
/packages/order-watcher/test/artifacts
/packages/migrations/artifacts/1.0.0
/packages/migrations/artifacts/2.0.0
/packages/migrations/artifacts/2.0.0-beta-testnet
/packages/sra-spec/public/
/packages/dev-tools-pages/ts/**/data.json
package.json
scripts/postpublish_utils.js
packages/sol-coverage/test/fixtures/artifacts
.pytest_cache
.mypy_cache
.tox

View File

@@ -5,4 +5,36 @@
# https://git-scm.com/docs/gitignore#_pattern_format
# Website
packages/website/ @BMillman19 @fragosti
packages/asset-buyer/ @BMillman19 @fragosti @steveklebanoff
packages/instant/ @BMillman19 @fragosti @steveklebanoff
packages/website/ @BMillman19 @fragosti @fabioberger @steveklebanoff
# Dev tools & setup
.circleci/ @LogvinovLeon
packages/abi-gen/ @feuGeneA
packages/base-contract/ @xianny
packages/connect/ @fragosti
packages/abi-gen-templates/ @feuGeneA @xianny
packages/contract-addresses/ @albrow
packages/contract-artifacts/ @albrow
packages/dev-utils/ @LogvinovLeon @fabioberger
packages/devnet/ @albrow
packages/ethereum-types/ @LogvinovLeon
packages/metacoin/ @LogvinovLeon
packages/monorepo-scripts/ @fabioberger
packages/order-utils/ @fabioberger @LogvinovLeon
packages/python-contract-wrappers/ @feuGeneA
packages/sol-compiler/ @LogvinovLeon
packages/sol-coverage/ @LogvinovLeon
packages/sol-profiler/ @LogvinovLeon
packages/sol-trace/ @LogvinovLeon
packages/sol-tracing-utils/ @LogvinovLeon
packages/sol-resolver/ @LogvinovLeon
packages/subproviders/ @fabioberger @dekz
packages/verdaccio/ @albrow
packages/web3-wrapper/ @LogvinovLeon @fabioberger
python-packages/ @feuGeneA
packages/utils/ @hysz
# Protocol/smart contracts
contracts/ @abandeali1 @hysz

View File

@@ -8,19 +8,19 @@ In the interest of fostering an open and welcoming environment, we as contributo
Examples of behavior that contributes to creating a positive environment include:
* Using welcoming and inclusive language
* Being respectful of differing viewpoints and experiences
* Gracefully accepting constructive criticism
* Focusing on what is best for the community
* Showing empathy towards other community members
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
* The use of sexualized language or imagery and unwelcome sexual attention or advances
* Trolling, insulting/derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or electronic address, without explicit permission
* Other conduct which could reasonably be considered inappropriate in a professional setting
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities

View File

@@ -1,61 +1,105 @@
## 0x Contribution Guide
Thank you for your interest in contributing to 0x protocol! We welcome contributions from anyone on the internet, and are grateful for even the smallest of fixes!
We welcome contributions from anyone on the internet and are grateful for even the smallest contributions. This document will help get you setup to start contributing back to 0x.
### How to contribute
### Getting started
If you'd like to contribute to 0x protocol, please fork the repo, fix, commit and send a pull request against the `development` branch for the maintainers to review and merge into the main code base. If you wish to submit more complex changes though, please check with a core dev first on [our RocketChat #dev channel](http://chat.0xproject.com) to ensure those changes are in-line with the general philosophy of the project and/or to get some early feedback which can make both your efforts easier as well as our review and merge procedures quick and simple.
1. Fork `0xproject/0x-monorepo`
2. Clone your fork
3. Follow the [installation & build steps](https://github.com/0xProject/0x-monorepo#install-dependencies) in the repo's top-level README.
4. Setup the recommended [Development Tooling](#development-tooling).
5. Open a PR with the `[WIP]` flag against the `development` branch and describe the change you are intending to undertake in the PR description. (see [our branch naming conventions](#branch-structure))
We encourage a “PR early” approach so create the PR as early as possible even without the fix/feature ready, so that devs and other contributors know you have picked up the issue. These early PRs should indicate an 'in progress' status by adding the '[WIP]' prefix to the PR title. Please make sure your contributions adhere to our coding guidelines:
Before removing the `[WIP]` tag and submitting the PR for review, make sure:
* Pull requests adding features or refactoring should be opened against the `development` branch
* Pull requests fixing bugs in the latest release version should be opened again the `master` branch
* Write [good commit messages](https://chris.beams.io/posts/git-commit/)
- It passes our linter checks (`yarn lint`)
- It is properly formatted with Prettier (`yarn prettier`)
- It passes our continuous integration tests (See: [Enabling code coverage checks on your fork](#enabling-code-coverage-checks-on-your-fork) for instructions on getting the `submit-coverage` test to pass on forks)
- You've created/updated the corresponding [CHANGELOG](#CHANGELOGs) entries.
- Your changes have sufficient test coverage (e.g regression tests have been added for bug fixes)
### Code quality
### Branch structure
Because 0x.js is used by multiple relayers in production and their businesses depend on it, we strive for exceptional code quality. Please follow the existing code standards and conventions. `tslint` and `prettier` (described below) will help you.
We have two main branches:
If you're adding functionality, please also add tests and make sure they pass. We have an automatic coverage reporting tool, so we'll see it if they are missing ;)
If you're adding a new public function/member, make sure you document it with Java doc-style comments. We use typedoc to generate [awesome documentation](https://0xproject.com/docs/0xjs) from the comments within our source code.
- `master` represents the most recently released (published on npm) version of the codebase.
- `development` represents the current development state of the codebase.
If the sub-package you are modifying has a `CHANGELOG.md` file, make sure to add an entry in it for the change made to the package. For published packages, only changes that modify the public interface or behavior of the package need a CHANGELOG entry.
ALL PRs should be opened against `development`.
#### Enabling code coverage checks on your fork
Branch names should be prefixed with `fix`, `feature` or `refactor`.
If you simply fork the repo and then create a PR sourced from it, your PR will fail its test coverage check. This is because the 0x CircleCI configuration sets the `COVERALLS_REPO_TOKEN` environment variable to the token for 0xProject/0x-monorepo, but when running the check against your fork the token needs to match the repo that is your fork, rather than the 0x repo.
- e.g `fix/broken-wiki-link`
- If the PR only edits a single package, add it's name too
- e.g `fix/website/broken-wiki-link`
To facilitate this check, after creating your fork, but before creating the branch for your PR, do the following:
### CHANGELOGs
1. Log in to [coveralls.io](https://coveralls.io/), go to Add Repos, and enable your fork. Then go to the settings for that repo, and copy the Repo Token identifier.
2. Log in to [CircleCI](https://circleci.com/login), go to Add Projects, click the Set Up Project button corresponding to your fork, and then click Start Building. (Aside from step 3 below, no actual set up is needed, since it will use the `.circleci/config.yml` file in 0x-monorepo, so you can ignore all of the instruction/explanation given on the page with the Start Building button.)
3. In CircleCI, configure your project to add an Environment Variable, with name `COVERALLS_REPO_TOKEN`, and for the value paste in the Repo Token you copied in step 1.
At 0x we use [Semantic Versioning](http://semver.org/) for all our published packages. If a change you make corresponds to a semver bump, you must modify the package's `CHANGELOG.json` file accordingly.
Now, when you push to your branch, CircleCI will automatically run all of the checks in your own instance, and the coverage check will work since it has the proper Repo Token, and the PR will magically refer to your own checks rather than running them in the 0x CircleCI instance.
Each CHANGELOG entry that corresponds to a published package will have a `timestamp`. If no entry exists without a `timestamp`, you must first create a new one:
### Styleguide
```
{
"version": "1.0.1", <- The updated package version
"changes": [
{
"note": "", <- Describe your change
"PR": 100 <- Your PR number
}
]
},
```
We use [TSLint](https://palantir.github.io/tslint/) with [custom configs](https://github.com/0xProject/0x-monorepo/tree/development/packages/tslint-config) to keep our code style consistent.
If an entry without a `timestamp` already exists, this means other changes have been introduced by other collaborators since the last publish. Add your changes to the list of notes and adjust the version if your PR introduces a greater semver change (i.e current changes required a patch bump, but your changes require a major version bump).
To lint your code just run: `yarn lint`
### Development Tooling
We also use [Prettier](https://prettier.io/) to auto-format our code. Be sure to either add a [text editor integration](https://prettier.io/docs/en/editors.html) or a [pre-commit hook](https://prettier.io/docs/en/precommit.html) to properly format your code changes.
We strongly recommend you use the [VSCode](https://code.visualstudio.com/) text editor since most of our code is written in Typescript and it offers amazing support for the language.
#### Linter
We use [TSLint](https://palantir.github.io/tslint/) with [custom configs](https://github.com/0xProject/0x-monorepo/tree/development/packages/tslint-config) to keep our code-style consistent.
Use `yarn:lint` to lint the entire monorepo, and `PKG={PACKAGE_NAME} yarn lint` to lint a specific package.
If you want to change a rule, or add a custom rule, please make these changes to our [tslint-config](https://github.com/0xProject/0x-monorepo/tree/development/packages/tslint-config) package. All other packages have it as a dependency.
Integrate it into your text editor:
- VSCode: [vscode-tslint](https://marketplace.visualstudio.com/items?itemName=eg2.tslint)
- Atom: [linter-tslint](https://atom.io/packages/linter-tslint)
#### Auto-formatter
We use [Prettier](https://prettier.io/) to auto-format our code. Be sure to either add a [text editor integration](https://prettier.io/docs/en/editors.html) or a [pre-commit hook](https://prettier.io/docs/en/precommit.html) to properly format your code changes.
If using the Atom text editor, we recommend you install the following packages:
* [atom-typescript](https://atom.io/packages/atom-typescript)
* [linter-tslint](https://atom.io/packages/linter-tslint)
* [prettier-atom](https://atom.io/packages/prettier-atom)
* [language-ethereum](https://atom.io/packages/language-ethereum)
- VSCode: [prettier-vscode](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode)
- Atom: [prettier-atom](https://atom.io/packages/prettier-atom)
Our CI will also run TSLint and Prettier as a part of the test run when you submit your PR. Make sure that the CI tests pass for your contribution.
## Unenforced coding conventions
### Branch structure & versioning
A few of our coding conventions are not yet enforced by the linter/auto-formatter. Be careful to follow these conventions in your PR's.
We use [semantic versioning](http://semver.org/), but before a package reaches v1.0.0 all breaking changes as well as new features will be minor version bumps.
1. Unused anonymous function parameters should be named with an underscore + number (e.g \_1, \_2, etc...)
1. There should be a new-line between methods in a class and between test cases.
1. If a string literal has the same value in two or more places, it should be a single constant referenced in both places.
1. Do not import from a project's `index.ts` (e.g import { Token } from '../src';). Always import from the source file itself.
1. Generic error variables should be named `err` instead of `e` or `error`.
1. If you _must_ cast a variable to any - try to type it back as fast as possible. (e.g., `const cw = ((zeroEx as any)._contractWrappers as ContractWrappers);`). This ensures subsequent code is type-safe.
1. Our enum conventions coincide with the recommended Typescript conventions, using capitalized keys, and all-caps snake-case values. Eg `GetStats = 'GET_STATS'`
1. All public, exported methods/functions/classes must have associated Javadoc-style comments.
We have two main branches: `master` and `development`.
### Fix `submit-coverage` CI failure
`master` represents the most recent released (published on npm) version.
If you simply fork the repo and then create a PR from it, your PR will fail the `submit-coverage` check on CI. This is because the 0x CircleCI configuration sets the `COVERALLS_REPO_TOKEN` environment variable to the token for `0xProject/0x-monorepo`, but when running the check against your fork the token needs to match your repo's name `your-username/0x-monorepo`.
`development` represents the development state and is a default branch to which you will submit a PR. We use this structure so that we can push hotfixes to the currently released version without needing to publish all the changes made towards the next release. If a hotfix is implemented on `master`, it is back-ported to `development`.
To facilitate this check, after creating your fork, but before creating the branch for your PR, do the following:
1. Log in to [coveralls.io](https://coveralls.io/), go to `Add Repos`, and enable your fork. Then go to the settings for that repo, and copy the `Repo Token` identifier.
2. Log in to [CircleCI](https://circleci.com/login), go to `Add Projects`, click the `Set Up Project` button corresponding to your fork, and then click `Start Building`. (Aside from step 3 below, no actual set up is needed, since it will use the `.circleci/config.yml` file in 0x-monorepo, so you can ignore all of the instruction/explanation given on the page with the `Start Building` button.)
3. In CircleCI, configure your project to add an environment variable, with name `COVERALLS_REPO_TOKEN`, and for the value paste in the `Repo Token` you copied in step 1.
Now, when you push to your branch, CircleCI will automatically run all of the checks in your own instance, and the coverage check will work since it has the proper `Repo Token`, and the PR will magically refer to your own checks rather than running them in the 0x CircleCI instance.

View File

@@ -2,7 +2,7 @@
<!--- Before submitting please check to see if this issue was already reported -->
<!--- Provide a general summary of the issue in the Title above -->
<!--- Prefix your issue title with the package name it relates to (e.g., `0x.js: ` or `general:`) -->
## Expected Behavior
@@ -46,10 +46,14 @@
<!--- Include as many relevant details about the environment you experienced the bug in -->
| Package | Version |
| ------------------: | :------ |
| `0x.js` | 0.25.0 |
| `Exchange Contract` | v1 |
| Package | Version |
| ------: | :------ |
<!-- For example:
| `0x.js` | 2.0.4 |
| `Exchange Contract` | v2 |
-->
| Network |
| ------- |

View File

@@ -1,4 +1,4 @@
Copyright 2017 ZeroEx Inc.
Copyright 2017 ZeroEx Intl.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
@@ -10,4 +10,4 @@ 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.
limitations under the License.

View File

@@ -20,8 +20,7 @@
<!--- The following points should be used to indicate the progress of your PR. Put an `x` in all the boxes that apply right now, and come back over time and check them off as you make progress. If you're unsure about any of these, don't hesitate to ask. We're here to help! -->
* [ ] Prefix PR title with `[WIP]` if necessary.
* [ ] Prefix PR title with bracketed package name(s) corresponding to the changed package(s). For example: `[sol-cov] Fixed bug`.
* [ ] Add tests to cover changes as needed.
* [ ] Update documentation as needed.
* [ ] Add new entries to the relevant CHANGELOG.jsons.
- [ ] Prefix PR title with `[WIP]` if necessary.
- [ ] Add tests to cover changes as needed.
- [ ] Update documentation as needed.
- [ ] Add new entries to the relevant CHANGELOG.jsons.

160
README.md
View File

@@ -1,14 +1,14 @@
<img src="https://github.com/0xProject/branding/blob/master/0x_Black_CMYK.png" width="200px" >
<img src="https://github.com/0xProject/branding/blob/master/0x%20Logo/PNG/0x-Logo-Black.png" width="150px" >
---
[0x][website-url] is an open protocol that facilitates trustless, low friction exchange of Ethereum-based assets. A full description of the protocol may be found in our [whitepaper][whitepaper-url].
[0x][website-url] is an open protocol that facilitates trustless, low friction exchange of Ethereum-based assets. For more information on how it works, check out the [0x protocol specification](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md).
This repository is a monorepo including the 0x protocol smart contracts and numerous developer tools. Each public sub-package is independently published to NPM.
If you're developing on 0x now or are interested in using 0x infrastructure in the future, please join our [developer mailing list][dev-mailing-list-url] for updates.
[website-url]: https://0xproject.com/
[website-url]: https://0xproject.com
[whitepaper-url]: https://0xproject.com/pdfs/0x_white_paper.pdf
[dev-mailing-list-url]: http://eepurl.com/dx4cPf
@@ -18,61 +18,105 @@ If you're developing on 0x now or are interested in using 0x infrastructure in t
[![Join the chat at https://gitter.im/0xProject/Lobby](https://badges.gitter.im/0xProject/Lobby.svg)](https://gitter.im/0xProject/Lobby?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
### Published Packages
## Packages
| Package | Version | Description |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| [`0x.js`](/packages/0x.js) | [![npm](https://img.shields.io/npm/v/0x.js.svg)](https://www.npmjs.com/package/0x.js) | A Javascript library for interacting with the 0x protocol |
| [`@0xproject/abi-gen`](/packages/abi-gen) | [![npm](https://img.shields.io/npm/v/@0xproject/abi-gen.svg)](https://www.npmjs.com/package/@0xproject/abi-gen) | Tool to generate TS wrappers from smart contract ABIs |
| [`@0xproject/assert`](/packages/assert) | [![npm](https://img.shields.io/npm/v/@0xproject/assert.svg)](https://www.npmjs.com/package/@0xproject/assert) | Type and schema assertions used by our packages |
| [`@0xproject/base-contract`](/packages/base-contract) | [![npm](https://img.shields.io/npm/v/@0xproject/base-contract.svg)](https://www.npmjs.com/package/@0xproject/base-contract) | BaseContract used by auto-generated `abi-gen` wrapper contracts |
| [`@0xproject/connect`](/packages/connect) | [![npm](https://img.shields.io/npm/v/@0xproject/connect.svg)](https://www.npmjs.com/package/@0xproject/connect) | A Javascript library for interacting with the Standard Relayer API |
| [`@0xproject/sol-compiler`](/packages/sol-compiler) | [![npm](https://img.shields.io/npm/v/@0xproject/sol-compiler.svg)](https://www.npmjs.com/package/@0xproject/sol-compiler) | A thin wrapper around Solc.js that outputs artifacts, resolves imports, only re-compiles when needed, and other niceties. |
| [`@0xproject/dev-utils`](/packages/dev-utils) | [![npm](https://img.shields.io/npm/v/@0xproject/dev-utils.svg)](https://www.npmjs.com/package/@0xproject/dev-utils) | Dev utils to be shared across 0x projects and packages |
| [`@0xproject/json-schemas`](/packages/json-schemas) | [![npm](https://img.shields.io/npm/v/@0xproject/json-schemas.svg)](https://www.npmjs.com/package/@0xproject/json-schemas) | 0x-related json schemas |
| [`@0xproject/monorepo-scripts`](/packages/monorepo-scripts) | [![npm](https://img.shields.io/npm/v/@0xproject/monorepo-scripts.svg)](https://www.npmjs.com/package/@0xproject/monorepo-scripts) | Monorepo scripts |
| [`@0xproject/react-docs`](/packages/react-docs) | [![npm](https://img.shields.io/npm/v/@0xproject/react-docs.svg)](https://www.npmjs.com/package/@0xproject/react-docs) | React documentation component for rendering TypeDoc & Doxity generated JSON |
| [`@0xproject/react-shared`](/packages/react-shared) | [![npm](https://img.shields.io/npm/v/@0xproject/react-shared.svg)](https://www.npmjs.com/package/@0xproject/react-shared) | 0x shared react components |
| [`@0xproject/sra-api`](/packages/sra-api) | [![npm](https://img.shields.io/npm/v/@0xproject/sra-api.svg)](https://www.npmjs.com/package/@0xproject/sra-api) | OpenAPI specification for the standard relayer API |
| [`@0xproject/sra-report`](/packages/sra-report) | [![npm](https://img.shields.io/npm/v/@0xproject/sra-report.svg)](https://www.npmjs.com/package/@0xproject/sra-report) | Generate reports for standard relayer API compliance |
| [`@0xproject/sol-cov`](/packages/sol-cov) | [![npm](https://img.shields.io/npm/v/@0xproject/sol-cov.svg)](https://www.npmjs.com/package/@0xproject/sol-cov) | Solidity test coverage tool |
| [`@0xproject/subproviders`](/packages/subproviders) | [![npm](https://img.shields.io/npm/v/@0xproject/subproviders.svg)](https://www.npmjs.com/package/@0xproject/subproviders) | Useful web3 subproviders (e.g LedgerSubprovider) |
| [`@0xproject/tslint-config`](/packages/tslint-config) | [![npm](https://img.shields.io/npm/v/@0xproject/tslint-config.svg)](https://www.npmjs.com/package/@0xproject/tslint-config) | Custom 0x development TSLint rules |
| [`@0xproject/types`](/packages/types) | [![npm](https://img.shields.io/npm/v/@0xproject/types.svg)](https://www.npmjs.com/package/@0xproject/types) | Shared type declarations |
| [`@0xproject/typescript-typings`](/packages/typescript-typings) | [![npm](https://img.shields.io/npm/v/@0xproject/typescript-typings.svg)](https://www.npmjs.com/package/@0xproject/typescript-typings) | Repository of types for external packages |
| [`@0xproject/utils`](/packages/utils) | [![npm](https://img.shields.io/npm/v/@0xproject/utils.svg)](https://www.npmjs.com/package/@0xproject/utils) | Shared utilities |
| [`@0xproject/web3-wrapper`](/packages/web3-wrapper) | [![npm](https://img.shields.io/npm/v/@0xproject/web3-wrapper.svg)](https://www.npmjs.com/package/@0xproject/web3-wrapper) | Web3 wrapper |
Visit our [developer portal](https://0xproject.com/docs/order-utils) for a comprehensive list of core & community maintained packages. All packages maintained with this monorepo are listed below.
### Private Packages
### Python Packages
| Package | Description |
| --------------------------------------------------------------- | ---------------------------------------------------------------- |
| [`@0xproject/contracts`](/packages/contracts) | 0x solidity smart contracts & tests |
| [`@0xproject/react-docs-example`](/packages/react-docs-example) | Example documentation site created with `@0xproject/react-docs` |
| [`@0xproject/testnet-faucets`](/packages/testnet-faucets) | A faucet micro-service that dispenses test ERC20 tokens or Ether |
| [`@0xproject/website`](/packages/website) | 0x website & Portal DApp |
| Package | Version | Description |
| -------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| [`0x-contract-addresses`](/python-packages/contract_addresses) | [![PyPI](https://img.shields.io/pypi/v/0x-contract-addresses.svg)](https://pypi.org/project/0x-contract-addresses/) | A tiny utility library for getting known deployed contract addresses for a particular network |
| [`0x-contract-artifacts`](/python-packages/contract_artifacts) | [![PyPI](https://img.shields.io/pypi/v/0x-contract-artifacts.svg)](https://pypi.org/project/0x-contract-artifacts/) | 0x smart contract compilation artifacts |
| [`0x-json-schemas`](/python-packages/json_schemas) | [![PyPI](https://img.shields.io/pypi/v/0x-json-schemas.svg)](https://pypi.org/project/0x-json-schemas/) | 0x-related JSON schemas |
| [`0x-order-utils`](/python-packages/order_utils) | [![PyPI](https://img.shields.io/pypi/v/0x-order-utils.svg)](https://pypi.org/project/0x-order-utils/) | A set of utilities for generating, parsing, signing and validating 0x orders |
| [`0x-sra-client`](/python-packages/sra_client) | [![PyPI](https://img.shields.io/pypi/v/0x-sra-client.svg)](https://pypi.org/project/0x-sra-client/) | A Python client for interacting with servers conforming to the Standard Relayer API specification |
### Solidity Packages
These packages are all under development. See [/contracts/README.md](/contracts/README.md) for a list of deployed packages.
| Package | Version | Description |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`@0x/contracts-asset-proxy`](/contracts/asset-proxy) | [![npm](https://img.shields.io/npm/v/@0x/contracts-asset-proxy.svg)](https://www.npmjs.com/package/@0x/contracts-asset-proxy) | [`AssetProxy`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md#assetproxy) contracts used within the protocol |
| [`@0x/contracts-erc20`](/contracts/erc20) | [![npm](https://img.shields.io/npm/v/@0x/contracts-erc20.svg)](https://www.npmjs.com/package/@0x/contracts-erc20) | Implementations of various ERC20 tokens |
| [`@0x/contracts-erc721`](/contracts/erc721) | [![npm](https://img.shields.io/npm/v/@0x/contracts-erc721.svg)](https://www.npmjs.com/package/@0x/contracts-erc721) | Implementations of various ERC721 tokens |
| [`@0x/contracts-erc1155`](/contracts/erc1155) | [![npm](https://img.shields.io/npm/v/@0x/contracts-erc1155.svg)](https://www.npmjs.com/package/@0x/contracts-erc1155) | Implementations of various ERC1155 tokens |
| [`@0x/contracts-exchange`](/contracts/exchange) | [![npm](https://img.shields.io/npm/v/@0x/contracts-exchange.svg)](https://www.npmjs.com/package/@0x/contracts-exchange) | The [`Exchange`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md#exchange) contract used for settling trades within the protocol |
| [`@0x/contracts-exchange-forwarder`](/contracts/exchange-forwarder) | [![npm](https://img.shields.io/npm/v/@0x/contracts-exchange-forwarder.svg)](https://www.npmjs.com/package/@0x/contracts-exchange-forwarder) | A [`Forwarder`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/forwarder-specification.md) contract used to simplify UX for interacting with the protocol |
| [`@0x/contracts-exchange-libs`](/contracts/exchange-libs) | [![npm](https://img.shields.io/npm/v/@0x/contracts-exchange-libs.svg)](https://www.npmjs.com/package/@0x/contracts-exchange-libs) | Protocol specific libraries used within the [`Exchange`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md#exchange) contract |
| [`@0x/contracts-extensions`](/contracts/extensions) | [![npm](https://img.shields.io/npm/v/@0x/contracts-extensions.svg)](https://www.npmjs.com/package/@0x/contracts-extensions) | Contracts that interact with and extend the functionality of the core protocol |
| [`@0x/contracts-multisig`](/contracts/multisig) | [![npm](https://img.shields.io/npm/v/@0x/contracts-multisig.svg)](https://www.npmjs.com/package/@0x/contracts-multisig) | Various implementations of multisignature wallets, including the [`AssetProxyOwner`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md#assetproxyowner) contract that has permissions to upgrade the protocol |
| [`@0x/contracts-test-utils`](/contracts/test-utils) | [![npm](https://img.shields.io/npm/v/@0x/contracts-test-utils.svg)](https://www.npmjs.com/package/@0x/contracts-test-utils) | Typescript/Javascript shared utilities used for testing contracts |
| [`@0x/contracts-utils`](/contracts/utils) | [![npm](https://img.shields.io/npm/v/@0x/contracts-utils.svg)](https://www.npmjs.com/package/@0x/contracts-utils) | Generic libraries and utilities used throughout all of the contracts |
| [`@0x/contracts-coordinator`](/contracts/coordinator) | [![npm](https://img.shields.io/npm/v/@0x/contracts-coordinator.svg)](https://www.npmjs.com/package/@0x/contracts-coordinator) | A contract that allows users to execute 0x transactions with permission from a Coordinator |
| [`@0x/contracts-dev-utils`](/contracts/dev-utils) | [![npm](https://img.shields.io/npm/v/@0x/contracts-dev-utils.svg)](https://www.npmjs.com/package/@0x/contracts-dev-utils) | A contract contains utility functions for developers (such as validating many orders using a single eth_call) |
### Typescript/Javascript Packages
#### 0x-specific packages
| Package | Version | Description |
| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
| [`0x.js`](/packages/0x.js) | [![npm](https://img.shields.io/npm/v/0x.js.svg)](https://www.npmjs.com/package/0x.js) | An aggregate package combining many smaller utility packages for interacting with the 0x protocol |
| [`@0x/contract-addresses`](/packages/contract-addresses) | [![npm](https://img.shields.io/npm/v/@0x/contract-addresses.svg)](https://www.npmjs.com/package/@0x/contract-addresses) | A tiny utility library for getting known deployed contract addresses for a particular network. |
| [`@0x/contract-wrappers`](/packages/contract-wrappers) | [![npm](https://img.shields.io/npm/v/@0x/contract-wrappers.svg)](https://www.npmjs.com/package/@0x/contract-wrappers) | JS/TS wrappers for interacting with the 0x smart contracts |
| [`@0x/order-utils`](/packages/order-utils) | [![npm](https://img.shields.io/npm/v/@0x/order-utils.svg)](https://www.npmjs.com/package/@0x/order-utils) | A set of utilities for generating, parsing, signing and validating 0x orders |
| [`@0x/json-schemas`](/packages/json-schemas) | [![npm](https://img.shields.io/npm/v/@0x/json-schemas.svg)](https://www.npmjs.com/package/@0x/json-schemas) | 0x-related JSON schemas |
| [`@0x/order-watcher`](/packages/order-watcher) | [![npm](https://img.shields.io/npm/v/@0x/order-watcher.svg)](https://www.npmjs.com/package/@0x/order-watcher) | An order watcher daemon that watches for order validity |
| [`@0x/migrations`](/packages/migrations) | [![npm](https://img.shields.io/npm/v/@0x/migrations.svg)](https://www.npmjs.com/package/@0x/migrations) | Migration tool for deploying 0x smart contracts on private testnets |
| [`@0x/contract-artifacts`](/packages/contract-artifacts) | [![npm](https://img.shields.io/npm/v/@0x/contract-artifacts.svg)](https://www.npmjs.com/package/@0x/contract-artifacts) | 0x smart contract compilation artifacts |
| [`@0x/abi-gen-wrappers`](/packages/abi-gen-wrappers) | [![npm](https://img.shields.io/npm/v/@0x/abi-gen-wrappers.svg)](https://www.npmjs.com/package/@0x/abi-gen-wrappers) | Low-level 0x smart contract wrappers generated using `@0x/abi-gen` |
| [`@0x/sra-spec`](/packages/sra-spec) | [![npm](https://img.shields.io/npm/v/@0x/sra-spec.svg)](https://www.npmjs.com/package/@0x/sra-spec) | OpenAPI specification for the Standard Relayer API |
| [`@0x/connect`](/packages/connect) | [![npm](https://img.shields.io/npm/v/@0x/connect.svg)](https://www.npmjs.com/package/@0x/connect) | An HTTP/WS client for interacting with the Standard Relayer API |
| [`@0x/asset-buyer`](/packages/asset-buyer) | [![npm](https://img.shields.io/npm/v/@0x/asset-buyer.svg)](https://www.npmjs.com/package/@0x/asset-buyer) | Convenience package for discovering and buying assets with Ether |
#### Ethereum tooling
| Package | Version | Description |
| -------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [`@0x/web3-wrapper`](/packages/web3-wrapper) | [![npm](https://img.shields.io/npm/v/@0x/web3-wrapper.svg)](https://www.npmjs.com/package/@0x/web3-wrapper) | An Ethereum JSON RPC client |
| [`@0x/sol-compiler`](/packages/sol-compiler) | [![npm](https://img.shields.io/npm/v/@0x/sol-compiler.svg)](https://www.npmjs.com/package/@0x/sol-compiler) | A wrapper around solc-js that adds smart re-compilation, ability to compile an entire project, Solidity version specific compilation, standard input description support and much more. |
| [`@0x/sol-coverage`](/packages/sol-coverage) | [![npm](https://img.shields.io/npm/v/@0x/sol-coverage.svg)](https://www.npmjs.com/package/@0x/sol-coverage) | A solidity test coverage tool |
| [`@0x/sol-profiler`](/packages/sol-profiler) | [![npm](https://img.shields.io/npm/v/@0x/sol-profiler.svg)](https://www.npmjs.com/package/@0x/sol-profiler) | A solidity gas cost profiler |
| [`@0x/sol-trace`](/packages/sol-trace) | [![npm](https://img.shields.io/npm/v/@0x/sol-trace.svg)](https://www.npmjs.com/package/@0x/sol-trace) | A solidity stack trace tool |
| [`@0x/sol-resolver`](/packages/sol-resolver) | [![npm](https://img.shields.io/npm/v/@0x/sol-resolver.svg)](https://www.npmjs.com/package/@0x/sol-resolver) | Import resolver for smart contracts dependencies |
| [`@0x/subproviders`](/packages/subproviders) | [![npm](https://img.shields.io/npm/v/@0x/subproviders.svg)](https://www.npmjs.com/package/@0x/subproviders) | Web3 provider middlewares (e.g. LedgerSubprovider) |
| [`@0x/sol-doc`](/packages/sol-doc) | [![npm](https://img.shields.io/npm/v/@0x/sol-doc.svg)](https://www.npmjs.com/package/@0x/sol-doc) | Solidity documentation generator |
#### Utilities
| Package | Version | Description |
| -------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------- |
| [`@0x/abi-gen`](/packages/abi-gen) | [![npm](https://img.shields.io/npm/v/@0x/abi-gen.svg)](https://www.npmjs.com/package/@0x/abi-gen) | Tool to generate TS wrappers from smart contract ABIs |
| [`@0x/tslint-config`](/packages/tslint-config) | [![npm](https://img.shields.io/npm/v/@0x/tslint-config.svg)](https://www.npmjs.com/package/@0x/tslint-config) | Custom TSLint rules used by the 0x core team |
| [`@0x/types`](/packages/types) | [![npm](https://img.shields.io/npm/v/@0x/types.svg)](https://www.npmjs.com/package/@0x/types) | Shared type declarations |
| [`@0x/typescript-typings`](/packages/typescript-typings) | [![npm](https://img.shields.io/npm/v/@0x/typescript-typings.svg)](https://www.npmjs.com/package/@0x/typescript-typings) | Repository of types for external packages |
| [`@0x/utils`](/packages/utils) | [![npm](https://img.shields.io/npm/v/@0x/utils.svg)](https://www.npmjs.com/package/@0x/utils) | Shared utilities |
| [`@0x/react-docs`](/packages/react-docs) | [![npm](https://img.shields.io/npm/v/@0x/react-docs.svg)](https://www.npmjs.com/package/@0x/react-docs) | React documentation component for rendering TypeDoc & sol-doc generated JSON |
| [`@0x/react-shared`](/packages/react-shared) | [![npm](https://img.shields.io/npm/v/@0x/react-shared.svg)](https://www.npmjs.com/package/@0x/react-shared) | 0x shared react components |
| [`@0x/assert`](/packages/assert) | [![npm](https://img.shields.io/npm/v/@0x/assert.svg)](https://www.npmjs.com/package/@0x/assert) | Type and schema assertions used by our packages |
| [`@0x/base-contract`](/packages/base-contract) | [![npm](https://img.shields.io/npm/v/@0x/base-contract.svg)](https://www.npmjs.com/package/@0x/base-contract) | BaseContract used by auto-generated `abi-gen` wrapper contracts |
| [`@0x/dev-utils`](/packages/dev-utils) | [![npm](https://img.shields.io/npm/v/@0x/dev-utils.svg)](https://www.npmjs.com/package/@0x/dev-utils) | Dev utils to be shared across 0x packages |
| [`@0x/fill-scenarios`](/packages/fill-scenarios) | [![npm](https://img.shields.io/npm/v/@0x/fill-scenarios.svg)](https://www.npmjs.com/package/@0x/fill-scenarios) | 0x order fill scenario generator |
#### Private Packages
| Package | Description |
| -------------------------------------------------- | -------------------------------------------------------------------------------- |
| [`@0x/instant`](/packages/instant) | A free and flexible way to offer simple crypto purchasing in any app or website. |
| [`@0x/testnet-faucets`](/packages/testnet-faucets) | A faucet micro-service that dispenses test ERC20 tokens or Ether |
| [`@0x/website`](/packages/website) | 0x website |
## Usage
Dedicated documentation pages:
* [0x.js Library](https://0xproject.com/docs/0xjs)
* [0x Connect](https://0xproject.com/docs/connect)
* [Smart contracts](https://0xproject.com/docs/contracts)
* [Subproviders](https://0xproject.com/docs/subproviders)
* [Sol Compiler](https://0xproject.com/docs/sol-compiler)
* [Web3-wrapper](https://0xproject.com/docs/web3-wrapper)
* [JSON-schemas](https://0xproject.com/docs/json-schemas)
* [Sol-cov](https://0xproject.com/docs/sol-cov)
* [Standard Relayer API](https://github.com/0xProject/standard-relayer-api/blob/master/README.md)
Node version >= 6.12 is required.
Most of the packages require additional typings for external dependencies.
You can include those by prepending the `@0xproject/typescript-typings` package to your [`typeRoots`](http://www.typescriptlang.org/docs/handbook/tsconfig-json.html) config.
You can include those by prepending the `@0x/typescript-typings` package to your [`typeRoots`](http://www.typescriptlang.org/docs/handbook/tsconfig-json.html) config.
```json
"typeRoots": ["node_modules/@0xproject/typescript-typings/types", "node_modules/@types"],
"typeRoots": ["node_modules/@0x/typescript-typings/types", "node_modules/@types"],
```
## Contributing
@@ -85,6 +129,10 @@ We strongly recommend that the community help us make improvements and determine
Make sure you are using Yarn v1.9.4. To install using brew:
```bash
brew install yarn@1.9.4
```
Then install dependencies
```bash
@@ -102,7 +150,13 @@ yarn build
To build a specific package:
```bash
PKG=@0xproject/web3-wrapper yarn build
PKG=@0x/web3-wrapper yarn build
```
To build all contracts packages:
```bash
yarn build:contracts
```
### Watch
@@ -119,7 +173,7 @@ To watch a specific package and all it's dependent packages:
PKG=[NPM_PACKAGE_NAME] yarn watch
e.g
PKG=@0xproject/web3-wrapper yarn watch
PKG=@0x/web3-wrapper yarn watch
```
### Clean
@@ -175,5 +229,11 @@ yarn test
Run a specific package's test:
```bash
PKG=@0xproject/web3-wrapper yarn test
PKG=@0x/web3-wrapper yarn test
```
Run all contracts packages tests:
```bash
yarn test:contracts
```

View File

@@ -5,6 +5,7 @@
"avoid-tx-origin": "warn",
"bracket-align": false,
"code-complexity": false,
"compiler-fixed": false,
"const-name-snakecase": "error",
"expression-indent": "error",
"function-max-lines": false,

16
contracts/README.md Normal file
View File

@@ -0,0 +1,16 @@
#### Deployed Contract Packages
| Contract | Package | Version | Git Tag |
| --------------- | ------------------------------------------------------------------- | -------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
| AssetProxyOwner | [`@0x/contracts-multisig`](/contracts/multisig) | [v1.0.2](https://www.npmjs.com/package/@0x/contracts-multisig/v/1.0.2) | [@0x/contracts-multisig@1.0.2](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-multisig@1.0.2) |
| ERC20Proxy | [`@0x/contracts-asset-proxy`](/contracts/asset-proxy) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-asset-proxy/v/1.0.1) | [@0x/contracts-asset-proxy@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-asset-proxy@1.0.1) |
| ERC721Proxy | [`@0x/contracts-asset-proxy`](/contracts/asset-proxy) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-asset-proxy/v/1.0.1) | [@0x/contracts-asset-proxy@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-asset-proxy@1.0.1) |
| Exchange | [`@0x/contracts-exchange`](/contracts/exchange) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-exchange/v/1.0.1) | [@0x/contracts-exchange@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-exchange@1.0.1) |
| DutchAuction | [`@0x/contracts-extensions`](/contracts/extensions) | [v1.0.2](https://www.npmjs.com/package/@0x/contracts-extensions/v/1.0.2) | [@0x/contracts-extensions@1.0.2](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-extensions@1.0.2) |
| Forwarder | [`@0x/contracts-exchange-forwarder`](/contracts/exchange-forwarder) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-exchange-forwarder/v/1.0.1) | [@0x/contracts-exchange-forwarder@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-exchange-forwarder@1.0.1) |
| MultiAssetProxy | [`@0x/contracts-asset-proxy`](/contracts/asset-proxy) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-asset-proxy/v/1.0.1) | [@0x/contracts-asset-proxy@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-asset-proxy@1.0.1) |
| ZRXToken | [`@0x/contracts-erc20`](/contracts/erc20) | [v1.0.1](https://www.npmjs.com/package/@0x/contracts-erc20/v/1.0.1) | [@0x/contracts-erc20@1.0.1](https://github.com/0xProject/0x-monorepo/releases/tag/@0x/contracts-erc20@1.0.1) |
#### Development
Building solidity files will update the contract artifact in `{package-name}/generated-artifacts/{contract}.json`, but does not automatically update the `abi-gen-wrappers` package, which are generated from the artifact JSON. To ensure consistency, clean and rebuild `abi-gen-wrappers` after any changes to the artifact JSON.

48
contracts/TESTING.md Normal file
View File

@@ -0,0 +1,48 @@
# Contracts testing options
## Revert stack traces
If you want to see helpful stack traces (incl. line number, code snippet) for smart contract reverts, run the tests with:
```
yarn test:trace
```
**Note:** This currently slows down the test runs and is therefore not enabled by default.
## Backing Ethereum node
By default, our tests run against an in-process [Ganache](https://github.com/trufflesuite/ganache-core) instance. In order to run the tests against [Geth](https://github.com/ethereum/go-ethereum), first follow the instructions in the README for the devnet package to start the devnet Geth node. Then run:
```bash
TEST_PROVIDER=geth yarn test
```
## Code coverage
In order to see the Solidity code coverage output generated by `@0x/sol-coverage`, run:
```
yarn test:coverage
```
## Gas profiler
In order to profile the gas costs for a specific smart contract call/transaction, you can run the tests in `profiler` mode.
**Note:** Traces emitted by ganache have incorrect gas costs so we recommend using Geth for profiling.
```
TEST_PROVIDER=geth yarn test:profiler
```
You'll see a warning that you need to explicitly enable and disable the profiler before and after the block of code you want to profile.
```typescript
import { profiler } from './utils/profiler';
profiler.start();
// Some call to a smart contract
profiler.stop();
```
Without explicitly starting and stopping the profiler, the profiler output will be too busy, and therefore unusable.

View File

@@ -0,0 +1,197 @@
[
{
"timestamp": 1563047529,
"version": "2.2.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "2.2.0",
"changes": [
{
"note": "Add `LibAssetProxyIds` contract",
"pr": 1835
},
{
"note": "Updated ERC1155 Asset Proxy. Less optimization. More explicit handling of edge cases.",
"pr": 1852
},
{
"note": "Implement StaticCallProxy",
"pr": 1863
}
],
"timestamp": 1563006338
},
{
"timestamp": 1558712885,
"version": "2.1.5",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1557961111,
"version": "2.1.4",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1557799313,
"version": "2.1.3",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "2.1.2",
"changes": [
{
"note": "Update tests to use contract-built-in `awaitTransactionSuccessAsync`",
"pr": 1797
}
],
"timestamp": 1557507213
},
{
"version": "2.1.1",
"changes": [
{
"note": "Dependencies updated"
}
],
"timestamp": 1554997931
},
{
"version": "2.1.0",
"changes": [
{
"note": "Run Web3ProviderEngine without excess block polling",
"pr": 1695
}
],
"timestamp": 1553183790
},
{
"version": "2.0.0",
"changes": [
{
"note": "Do not reexport external dependencies",
"pr": 1682
},
{
"note": "Add ERC1155Proxy",
"pr": 1661
},
{
"note": "Bumped solidity version to ^0.5.5",
"pr": 1701
},
{
"note": "Integration testing for ERC1155Proxy",
"pr": 1673
}
],
"timestamp": 1553091633
},
{
"timestamp": 1551479279,
"version": "1.0.9",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1551299797,
"version": "1.0.8",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1551220833,
"version": "1.0.7",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1551130135,
"version": "1.0.6",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1549733923,
"version": "1.0.5",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "1.0.4",
"changes": [
{
"note": "Dependencies updated"
}
],
"timestamp": 1549547375
},
{
"version": "1.0.3",
"changes": [
{
"note": "Fake publish to enable pinning"
}
],
"timestamp": 1549504360
},
{
"timestamp": 1549452781,
"version": "1.0.2",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1549373905,
"version": "1.0.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "1.0.0",
"changes": [
{
"note": "Move all AssetProxy contracts out of contracts-protocol to new package",
"pr": 1539
}
]
}
]

View File

@@ -0,0 +1,87 @@
<!--
changelogUtils.file is auto-generated using the monorepo-scripts package. Don't edit directly.
Edit the package's CHANGELOG.json file only.
-->
CHANGELOG
## v2.2.1 - _July 13, 2019_
* Dependencies updated
## v2.2.0 - _July 13, 2019_
* Add `LibAssetProxyIds` contract (#1835)
* Updated ERC1155 Asset Proxy. Less optimization. More explicit handling of edge cases. (#1852)
* Implement StaticCallProxy (#1863)
## v2.1.5 - _May 24, 2019_
* Dependencies updated
## v2.1.4 - _May 15, 2019_
* Dependencies updated
## v2.1.3 - _May 14, 2019_
* Dependencies updated
## v2.1.2 - _May 10, 2019_
* Update tests to use contract-built-in `awaitTransactionSuccessAsync` (#1797)
## v2.1.1 - _April 11, 2019_
* Dependencies updated
## v2.1.0 - _March 21, 2019_
* Run Web3ProviderEngine without excess block polling (#1695)
## v2.0.0 - _March 20, 2019_
* Do not reexport external dependencies (#1682)
* Add ERC1155Proxy (#1661)
* Bumped solidity version to ^0.5.5 (#1701)
* Integration testing for ERC1155Proxy (#1673)
## v1.0.9 - _March 1, 2019_
* Dependencies updated
## v1.0.8 - _February 27, 2019_
* Dependencies updated
## v1.0.7 - _February 26, 2019_
* Dependencies updated
## v1.0.6 - _February 25, 2019_
* Dependencies updated
## v1.0.5 - _February 9, 2019_
* Dependencies updated
## v1.0.4 - _February 7, 2019_
* Dependencies updated
## v1.0.3 - _February 7, 2019_
* Fake publish to enable pinning
## v1.0.2 - _February 6, 2019_
* Dependencies updated
## v1.0.1 - _February 5, 2019_
* Dependencies updated
## v1.0.0 - _Invalid date_
* Move all AssetProxy contracts out of contracts-protocol to new package (#1539)

View File

@@ -0,0 +1,47 @@
[
{
"name": "MultiAssetProxy",
"version": "1.0.0",
"changes": [
{
"note": "Add MultiAssetProxy implementation",
"pr": 1224,
"networks": {
"3": "0xab8fbd189c569ccdee3a4d929bb7f557be4028f6",
"4": "0xb34cde0ad3a83d04abebc0b66e75196f22216621",
"42": "0xf6313a772c222f51c28f2304c0703b8cf5428fd8"
}
}
]
},
{
"name": "ERC20Proxy",
"version": "1.0.0",
"changes": [
{
"note": "protocol v2 deploy",
"networks": {
"1": "0x2240dab907db71e64d3e0dba4800c83b5c502d4e",
"3": "0xb1408f4c245a23c31b98d2c626777d4c0d766caa",
"4": "0x3e809c563c15a295e832e37053798ddc8d6c8dab",
"42": "0xf1ec01d6236d3cd881a0bf0130ea25fe4234003e"
}
}
]
},
{
"name": "ERC721Proxy",
"version": "1.0.0",
"changes": [
{
"note": "protocol v2 deploy",
"networks": {
"1": "0x208e41fb445f1bb1b6780d58356e81405f3e6127",
"3": "0xe654aac058bfbf9f83fcaee7793311dd82f6ddb4",
"4": "0x8e1ff02637cb5e39f2fa36c14706aa348b065b09",
"42": "0x2a9127c745688a165106c11cd4d647d2220af821"
}
}
]
}
]

View File

@@ -0,0 +1,73 @@
## AssetProxy
This package contains the implementations of all of the [`AssetProxy`](https://github.com/0xProject/0x-protocol-specification/blob/master/v2/v2-specification.md#assetproxy) contracts available within the 0x protocol. These contracts are responsible for decoding the `assetData` sent to them and performing the actual transfer of assets. Addresses of the deployed contracts can be found in the 0x [wiki](https://0xproject.com/wiki#Deployed-Addresses) or the [DEPLOYS](./DEPLOYS.json) file within this package.
## Installation
**Install**
```bash
npm install @0x/contracts-asset-proxy --save
```
## Bug bounty
A bug bounty for the 2.0.0 contracts is ongoing! Instructions can be found [here](https://0xproject.com/wiki#Bug-Bounty).
## Contributing
We strongly recommend that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.
For proposals regarding the 0x protocol's smart contract architecture, message format, or additional functionality, go to the [0x Improvement Proposals (ZEIPs)](https://github.com/0xProject/ZEIPs) repository and follow the contribution guidelines provided therein.
Please read our [contribution guidelines](../../CONTRIBUTING.md) before getting started.
### Install Dependencies
If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
```bash
yarn config set workspaces-experimental true
```
Then install dependencies
```bash
yarn install
```
### Build
To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:
```bash
PKG=@0x/contracts-asset-proxy yarn build
```
Or continuously rebuild on change:
```bash
PKG=@0x/contracts-asset-proxy yarn watch
```
### Clean
```bash
yarn clean
```
### Lint
```bash
yarn lint
```
### Run Tests
```bash
yarn test
```
#### Testing options
Contracts testing options like coverage, profiling, revert traces or backing node choosing - are described [here](../TESTING.md).

View File

@@ -0,0 +1,38 @@
{
"artifactsDir": "./generated-artifacts",
"contractsDir": "./contracts",
"useDockerisedSolc": false,
"isOfflineMode": false,
"compilerSettings": {
"evmVersion": "constantinople",
"optimizer": {
"enabled": true,
"runs": 1000000,
"details": { "yul": true, "deduplicate": true, "cse": true, "constantOptimizer": true }
},
"outputSelection": {
"*": {
"*": [
"abi",
"devdoc",
"evm.bytecode.object",
"evm.bytecode.sourceMap",
"evm.deployedBytecode.object",
"evm.deployedBytecode.sourceMap"
]
}
}
},
"contracts": [
"src/ERC1155Proxy.sol",
"src/ERC20Proxy.sol",
"src/ERC721Proxy.sol",
"src/MixinAuthorizable.sol",
"src/MultiAssetProxy.sol",
"src/StaticCallProxy.sol",
"src/interfaces/IAssetData.sol",
"src/interfaces/IAssetProxy.sol",
"src/interfaces/IAuthorizable.sol",
"test/TestStaticCallTarget.sol"
]
}

View File

@@ -0,0 +1,375 @@
/*
Copyright 2018 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.5.9;
import "./MixinAuthorizable.sol";
contract ERC1155Proxy is
MixinAuthorizable
{
// Id of this proxy.
bytes4 constant internal PROXY_ID = bytes4(keccak256("ERC1155Assets(address,uint256[],uint256[],bytes)"));
// solhint-disable-next-line payable-fallback
function ()
external
{
// Input calldata to this function is encoded as follows:
// -- TABLE #1 --
// | Area | Offset (**) | Length | Contents |
// |----------|-------------|-------------|---------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. offset to assetData (*) |
// | | 36 | | 2. from |
// | | 68 | | 3. to |
// | | 100 | | 4. amount |
// | Data | | | assetData: |
// | | 132 | 32 | assetData Length |
// | | 164 | (see below) | assetData Contents |
//
//
// Asset data is encoded as follows:
// -- TABLE #2 --
// | Area | Offset | Length | Contents |
// |----------|-------------|---------|-------------------------------------|
// | Header | 0 | 4 | assetProxyId |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. address of ERC1155 contract |
// | | 36 | | 2. offset to ids (*) |
// | | 68 | | 3. offset to values (*) |
// | | 100 | | 4. offset to data (*) |
// | Data | | | ids: |
// | | 132 | 32 | 1. ids Length |
// | | 164 | a | 2. ids Contents |
// | | | | values: |
// | | 164 + a | 32 | 1. values Length |
// | | 196 + a | b | 2. values Contents |
// | | | | data: |
// | | 196 + a + b | 32 | 1. data Length |
// | | 228 + a + b | c | 2. data Contents |
//
//
// Calldata for target ERC155 asset is encoded for safeBatchTransferFrom:
// -- TABLE #3 --
// | Area | Offset (**) | Length | Contents |
// |----------|-------------|---------|-------------------------------------|
// | Header | 0 | 4 | safeBatchTransferFrom selector |
// | Params | | 5 * 32 | function parameters: |
// | | 4 | | 1. from address |
// | | 36 | | 2. to address |
// | | 68 | | 3. offset to ids (*) |
// | | 100 | | 4. offset to values (*) |
// | | 132 | | 5. offset to data (*) |
// | Data | | | ids: |
// | | 164 | 32 | 1. ids Length |
// | | 196 | a | 2. ids Contents |
// | | | | values: |
// | | 196 + a | 32 | 1. values Length |
// | | 228 + a | b | 2. values Contents |
// | | | | data: |
// | | 228 + a + b | 32 | 1. data Length |
// | | 260 + a + b | c | 2. data Contents |
//
//
// (*): offset is computed from start of function parameters, so offset
// by an additional 4 bytes in the calldata.
//
// (**): the `Offset` column is computed assuming no calldata compression;
// offsets in the Data Area are dynamic and should be evaluated in
// real-time.
//
// WARNING: The ABIv2 specification allows additional padding between
// the Params and Data section. This will result in a larger
// offset to assetData.
//
// Note: Table #1 and Table #2 exist in Calldata. We construct Table #3 in memory.
//
//
assembly {
// The first 4 bytes of calldata holds the function selector
let selector := and(calldataload(0), 0xffffffff00000000000000000000000000000000000000000000000000000000)
// `transferFrom` will be called with the following parameters:
// assetData Encoded byte array.
// from Address to transfer asset from.
// to Address to transfer asset to.
// amount Amount of asset to transfer.
// bytes4(keccak256("transferFrom(bytes,address,address,uint256)")) = 0xa85e59e4
if eq(selector, 0xa85e59e400000000000000000000000000000000000000000000000000000000) {
// To lookup a value in a mapping, we load from the storage location keccak256(k, p),
// where k is the key left padded to 32 bytes and p is the storage slot
mstore(0, caller)
mstore(32, authorized_slot)
// Revert if authorized[msg.sender] == false
if iszero(sload(keccak256(0, 64))) {
// Revert with `Error("SENDER_NOT_AUTHORIZED")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001553454e4445525f4e4f545f415554484f52495a454400000000000000)
mstore(96, 0)
revert(0, 100)
}
// Construct Table #3 in memory, starting at memory offset 0.
// The algorithm below maps calldata (Table #1) and assetData (Table #2) to memory (Table #3).
// Once Table #3 ha been constructed in memory, the destination erc1155 contract is called using this
// as its calldata. This process is divided into three steps, below.
////////// STEP 1/3 - Map calldata to memory (Table #1 -> Table #3) //////////
// Store the safeBatchTransferFrom function selector, which is computed using:
// bytes4(keccak256("safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)"))
mstore(0, 0x2eb2c2d600000000000000000000000000000000000000000000000000000000)
// Copy `from` and `to` fields from calldata (Table #1) into memory (Table #3)
calldatacopy(
4, // aligned such that `from` and `to` are at the correct location for Table #3
36, // beginning of `from` field from Table #1
64 // 32 bytes for `from` + 32 bytes for `to` field
)
////////// STEP 2/3 - Map assetData to memory (Table #2 -> Table #3) //////////
// Map relevant fields from assetData (Table #2) into memory (Table #3)
// The Contents column of Table #2 is the same as Table #3,
// beginning from parameter 3 - `offset to ids (*)`
// The `values` from assetData (Table #2) are multiplied by `amount` (Table #1)
// when they are copied into memory.
// Load offset to `assetData`
let assetDataOffset := add(calldataload(4), 4)
// Load length in bytes of `assetData`
let assetDataLength := calldataload(assetDataOffset)
// Assert that the length of asset data:
// 1. Must be at least 132 bytes (Table #2)
// 2. Must be a multiple of 32 (excluding the 4-byte selector)
if or(lt(assetDataLength, 132), mod(sub(assetDataLength, 4), 32)) {
// Revert with `Error("INVALID_ASSET_DATA_LENGTH")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000019494e56414c49445f41535345545f444154415f4c454e475448000000)
mstore(96, 0)
revert(0, 100)
}
// End of asset data in calldata
// +32 for length field
let assetDataEnd := add(assetDataOffset, add(assetDataLength, 32))
if gt(assetDataEnd, calldatasize()) {
// Revert with `Error("INVALID_ASSET_DATA_END")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000016494e56414c49445f41535345545f444154415f454e44000000000000)
mstore(96, 0)
revert(0, 100)
}
// Load offset to parameters section in asset data
let paramsInAssetDataOffset := add(assetDataOffset, 36)
// Offset of end of Data Area in memory.
// This value will grow as we construct Table #3.
let dataAreaEndOffset := 164
// Load amount by which to scale values
let amount := calldataload(100)
// Store pointer to `ids` (Table #3)
// Subtract 4 for `safeBatchTransferFrom` selector
mstore(68, sub(dataAreaEndOffset, 4))
// Ensure length of `ids` does not overflow
let idsOffset := add(paramsInAssetDataOffset, calldataload(add(assetDataOffset, 68)))
let idsLength := calldataload(idsOffset)
let idsLengthInBytes := mul(idsLength, 32)
if sub(div(idsLengthInBytes, 32), idsLength) {
// Revert with `Error("UINT256_OVERFLOW")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001055494e543235365f4f564552464c4f57000000000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Ensure `ids` does not resolve to outside of `assetData`
let idsBegin := add(idsOffset, 32)
let idsEnd := add(idsBegin, idsLengthInBytes)
if gt(idsEnd, assetDataEnd) {
// Revert with `Error("INVALID_IDS_OFFSET")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000012494e56414c49445f4944535f4f464653455400000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Copy `ids` from `assetData` (Table #2) to memory (Table #3)
calldatacopy(
dataAreaEndOffset,
idsOffset,
add(idsLengthInBytes, 32)
)
dataAreaEndOffset := add(dataAreaEndOffset, add(idsLengthInBytes, 32))
// Store pointer to `values` (Table #3)
// Subtract 4 for `safeBatchTrasferFrom` selector
mstore(100, sub(dataAreaEndOffset, 4))
// Ensure length of `values` does not overflow
let valuesOffset := add(paramsInAssetDataOffset, calldataload(add(assetDataOffset, 100)))
let valuesLength := calldataload(valuesOffset)
let valuesLengthInBytes := mul(valuesLength, 32)
if sub(div(valuesLengthInBytes, 32), valuesLength) {
// Revert with `Error("UINT256_OVERFLOW")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001055494e543235365f4f564552464c4f57000000000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Ensure `values` does not resolve to outside of `assetData`
let valuesBegin := add(valuesOffset, 32)
let valuesEnd := add(valuesBegin, valuesLengthInBytes)
if gt(valuesEnd, assetDataEnd) {
// Revert with `Error("INVALID_VALUES_OFFSET")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000015494e56414c49445f56414c5545535f4f464653455400000000000000)
mstore(96, 0)
revert(0, 100)
}
// Store length of `values`
mstore(dataAreaEndOffset, valuesLength)
dataAreaEndOffset := add(dataAreaEndOffset, 32)
// Scale and store elements of `values`
for { let currentValueOffset := valuesBegin }
lt(currentValueOffset, valuesEnd)
{ currentValueOffset := add(currentValueOffset, 32) }
{
// Load value and generate scaled value
let currentValue := calldataload(currentValueOffset)
let currentValueScaled := mul(currentValue, amount)
// Revert if `amount` != 0 and multiplication resulted in an overflow
if iszero(or(
iszero(amount),
eq(div(currentValueScaled, amount), currentValue)
)) {
// Revert with `Error("UINT256_OVERFLOW")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001055494e543235365f4f564552464c4f57000000000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// There was no overflow, store the scaled token value
mstore(dataAreaEndOffset, currentValueScaled)
dataAreaEndOffset := add(dataAreaEndOffset, 32)
}
// Store pointer to `data` (Table #3)
// Subtract 4 for `safeBatchTrasferFrom` selector
mstore(132, sub(dataAreaEndOffset, 4))
// Ensure `data` does not resolve to outside of `assetData`
let dataOffset := add(paramsInAssetDataOffset, calldataload(add(assetDataOffset, 132)))
let dataLengthInBytes := calldataload(dataOffset)
let dataBegin := add(dataOffset, 32)
let dataEnd := add(dataBegin, dataLengthInBytes)
if gt(dataEnd, assetDataEnd) {
// Revert with `Error("INVALID_DATA_OFFSET")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000013494e56414c49445f444154415f4f4646534554000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Copy `data` from `assetData` (Table #2) to memory (Table #3)
calldatacopy(
dataAreaEndOffset,
dataOffset,
add(dataLengthInBytes, 32)
)
// Update the end of data offset to be word-aligned
let dataLengthInWords := div(add(dataLengthInBytes, 31), 32)
let dataLengthInBytesWordAligned := mul(dataLengthInWords, 32)
dataAreaEndOffset := add(dataAreaEndOffset, add(dataLengthInBytesWordAligned, 32))
////////// STEP 3/3 - Execute Transfer //////////
// Load the address of the destination erc1155 contract from asset data (Table #2)
// +32 bytes for assetData Length
// +4 bytes for assetProxyId
let assetAddress := and(
calldataload(add(assetDataOffset, 36)),
0x000000000000000000000000ffffffffffffffffffffffffffffffffffffffff
)
// Call into the destination erc1155 contract using as calldata Table #3 (constructed in-memory above)
let success := call(
gas, // forward all gas
assetAddress, // call address of erc1155 asset
0, // don't send any ETH
0, // pointer to start of input
dataAreaEndOffset, // length of input is the end of the Data Area (Table #3)
0, // write output over memory that won't be reused
0 // don't copy output to memory
)
// Revert with reason given by AssetProxy if `transferFrom` call failed
if iszero(success) {
returndatacopy(
0, // copy to memory at 0
0, // copy from return data at 0
returndatasize() // copy all return data
)
revert(0, returndatasize())
}
// Return if call was successful
return(0, 0)
}
// Revert if undefined function is called
revert(0, 0)
}
}
/// @dev Gets the proxy id associated with the proxy address.
/// @return Proxy id.
function getProxyId()
external
pure
returns (bytes4)
{
return PROXY_ID;
}
}

View File

@@ -16,9 +16,8 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../../utils/LibBytes/LibBytes.sol";
import "./MixinAuthorizable.sol";
@@ -59,15 +58,64 @@ contract ERC20Proxy is
mstore(96, 0)
revert(0, 100)
}
/////// Token contract address ///////
// The token address is found as follows:
// * It is stored at offset 4 in `assetData` contents.
// * This is stored at offset 32 from `assetData`.
// * The offset to `assetData` from Params is stored at offset
// 4 in calldata.
// * The offset of Params in calldata is 4.
// So we read location 4 and add 32 + 4 + 4 to it.
// `transferFrom`.
// The function is marked `external`, so no abi decodeding is done for
// us. Instead, we expect the `calldata` memory to contain the
// following:
//
// | Area | Offset | Length | Contents |
// |----------|--------|---------|-------------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. offset to assetData (*) |
// | | 36 | | 2. from |
// | | 68 | | 3. to |
// | | 100 | | 4. amount |
// | Data | | | assetData: |
// | | 132 | 32 | assetData Length |
// | | 164 | ** | assetData Contents |
//
// (*): offset is computed from start of function parameters, so offset
// by an additional 4 bytes in the calldata.
//
// (**): see table below to compute length of assetData Contents
//
// WARNING: The ABIv2 specification allows additional padding between
// the Params and Data section. This will result in a larger
// offset to assetData.
// Asset data itself is encoded as follows:
//
// | Area | Offset | Length | Contents |
// |----------|--------|---------|-------------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 1 * 32 | function parameters: |
// | | 4 | 12 + 20 | 1. token address |
// We construct calldata for the `token.transferFrom` ABI.
// The layout of this calldata is in the table below.
//
// | Area | Offset | Length | Contents |
// |----------|--------|---------|-------------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 3 * 32 | function parameters: |
// | | 4 | | 1. from |
// | | 36 | | 2. to |
// | | 68 | | 3. amount |
/////// Read token address from calldata ///////
// * The token address is stored in `assetData`.
//
// * The "offset to assetData" is stored at offset 4 in the calldata (table 1).
// [assetDataOffsetFromParams = calldataload(4)]
//
// * Notes that the "offset to assetData" is relative to the "Params" area of calldata;
// add 4 bytes to account for the length of the "Header" area (table 1).
// [assetDataOffsetFromHeader = assetDataOffsetFromParams + 4]
//
// * The "token address" is offset 32+4=36 bytes into "assetData" (tables 1 & 2).
// [tokenOffset = assetDataOffsetFromHeader + 36 = calldataload(4) + 4 + 36]
let token := calldataload(add(calldataload(4), 40))
/////// Setup Header Area ///////
@@ -118,6 +166,9 @@ contract ERC20Proxy is
mstore(96, 0)
revert(0, 100)
}
// Revert if undefined function is called
revert(0, 0)
}
}

View File

@@ -16,9 +16,8 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../../utils/LibBytes/LibBytes.sol";
import "./MixinAuthorizable.sol";
@@ -80,6 +79,8 @@ contract ERC721Proxy is
// (*): offset is computed from start of function parameters, so offset
// by an additional 4 bytes in the calldata.
//
// (**): see table below to compute length of assetData Contents
//
// WARNING: The ABIv2 specification allows additional padding between
// the Params and Data section. This will result in a larger
// offset to assetData.
@@ -152,6 +153,9 @@ contract ERC721Proxy is
mstore(96, 0)
revert(0, 100)
}
// Revert if undefined function is called
revert(0, 0)
}
}

View File

@@ -16,22 +16,19 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../../utils/Ownable/Ownable.sol";
import "../../utils/LibBytes/LibBytes.sol";
import "@0x/contracts-utils/contracts/src/Ownable.sol";
import "./mixins/MAssetProxyDispatcher.sol";
import "../AssetProxy/interfaces/IAssetProxy.sol";
import "./interfaces/IAssetProxy.sol";
contract MixinAssetProxyDispatcher is
Ownable,
MAssetProxyDispatcher
{
using LibBytes for bytes;
// Mapping from Asset Proxy Id's to their respective Asset Proxy
mapping (bytes4 => IAssetProxy) public assetProxies;
mapping (bytes4 => address) public assetProxies;
/// @dev Registers an asset proxy to its asset proxy id.
/// Once an asset proxy is registered, it cannot be unregistered.
@@ -40,10 +37,8 @@ contract MixinAssetProxyDispatcher is
external
onlyOwner
{
IAssetProxy assetProxyContract = IAssetProxy(assetProxy);
// Ensure that no asset proxy exists with current id.
bytes4 assetProxyId = assetProxyContract.getProxyId();
bytes4 assetProxyId = IAssetProxy(assetProxy).getProxyId();
address currentAssetProxy = assetProxies[assetProxyId];
require(
currentAssetProxy == address(0),
@@ -51,7 +46,7 @@ contract MixinAssetProxyDispatcher is
);
// Add asset proxy and log registration.
assetProxies[assetProxyId] = assetProxyContract;
assetProxies[assetProxyId] = assetProxy;
emit AssetProxyRegistered(
assetProxyId,
assetProxy
@@ -83,14 +78,14 @@ contract MixinAssetProxyDispatcher is
internal
{
// Do nothing if no amount should be transferred.
if (amount > 0) {
if (amount > 0 && from != to) {
// Ensure assetData length is valid
require(
assetData.length > 3,
"LENGTH_GREATER_THAN_3_REQUIRED"
);
// Lookup assetProxy
// Lookup assetProxy. We do not use `LibBytes.readBytes4` for gas efficiency reasons.
bytes4 assetProxyId;
assembly {
assetProxyId := and(mload(

View File

@@ -16,9 +16,9 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../../utils/Ownable/Ownable.sol";
import "@0x/contracts-utils/contracts/src/Ownable.sol";
import "./mixins/MAuthorizable.sol";
@@ -26,7 +26,6 @@ contract MixinAuthorizable is
Ownable,
MAuthorizable
{
/// @dev Only authorized addresses can invoke functions with this modifier.
modifier onlyAuthorized {
require(

View File

@@ -0,0 +1,306 @@
/*
Copyright 2018 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.5.5;
import "./MixinAssetProxyDispatcher.sol";
import "./MixinAuthorizable.sol";
contract MultiAssetProxy is
MixinAssetProxyDispatcher,
MixinAuthorizable
{
// Id of this proxy.
bytes4 constant internal PROXY_ID = bytes4(keccak256("MultiAsset(uint256[],bytes[])"));
// solhint-disable-next-line payable-fallback
function ()
external
{
// NOTE: The below assembly assumes that clients do some input validation and that the input is properly encoded according to the AbiV2 specification.
// It is technically possible for inputs with very large lengths and offsets to cause overflows. However, this would make the calldata prohibitively
// expensive and we therefore do not check for overflows in these scenarios.
assembly {
// The first 4 bytes of calldata holds the function selector
let selector := and(calldataload(0), 0xffffffff00000000000000000000000000000000000000000000000000000000)
// `transferFrom` will be called with the following parameters:
// assetData Encoded byte array.
// from Address to transfer asset from.
// to Address to transfer asset to.
// amount Amount of asset to transfer.
// bytes4(keccak256("transferFrom(bytes,address,address,uint256)")) = 0xa85e59e4
if eq(selector, 0xa85e59e400000000000000000000000000000000000000000000000000000000) {
// To lookup a value in a mapping, we load from the storage location keccak256(k, p),
// where k is the key left padded to 32 bytes and p is the storage slot
mstore(0, caller)
mstore(32, authorized_slot)
// Revert if authorized[msg.sender] == false
if iszero(sload(keccak256(0, 64))) {
// Revert with `Error("SENDER_NOT_AUTHORIZED")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001553454e4445525f4e4f545f415554484f52495a454400000000000000)
mstore(96, 0)
revert(0, 100)
}
// `transferFrom`.
// The function is marked `external`, so no abi decoding is done for
// us. Instead, we expect the `calldata` memory to contain the
// following:
//
// | Area | Offset | Length | Contents |
// |----------|--------|---------|-------------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. offset to assetData (*) |
// | | 36 | | 2. from |
// | | 68 | | 3. to |
// | | 100 | | 4. amount |
// | Data | | | assetData: |
// | | 132 | 32 | assetData Length |
// | | 164 | ** | assetData Contents |
//
// (*): offset is computed from start of function parameters, so offset
// by an additional 4 bytes in the calldata.
//
// (**): see table below to compute length of assetData Contents
//
// WARNING: The ABIv2 specification allows additional padding between
// the Params and Data section. This will result in a larger
// offset to assetData.
// Load offset to `assetData`
let assetDataOffset := calldataload(4)
// Asset data itself is encoded as follows:
//
// | Area | Offset | Length | Contents |
// |----------|-------------|---------|-------------------------------------|
// | Header | 0 | 4 | assetProxyId |
// | Params | | 2 * 32 | function parameters: |
// | | 4 | | 1. offset to amounts (*) |
// | | 36 | | 2. offset to nestedAssetData (*) |
// | Data | | | amounts: |
// | | 68 | 32 | amounts Length |
// | | 100 | a | amounts Contents |
// | | | | nestedAssetData: |
// | | 100 + a | 32 | nestedAssetData Length |
// | | 132 + a | b | nestedAssetData Contents (offsets) |
// | | 132 + a + b | | nestedAssetData[0, ..., len] |
// In order to find the offset to `amounts`, we must add:
// 4 (function selector)
// + assetDataOffset
// + 32 (assetData len)
// + 4 (assetProxyId)
let amountsOffset := calldataload(add(assetDataOffset, 40))
// In order to find the offset to `nestedAssetData`, we must add:
// 4 (function selector)
// + assetDataOffset
// + 32 (assetData len)
// + 4 (assetProxyId)
// + 32 (amounts offset)
let nestedAssetDataOffset := calldataload(add(assetDataOffset, 72))
// In order to find the start of the `amounts` contents, we must add:
// 4 (function selector)
// + assetDataOffset
// + 32 (assetData len)
// + 4 (assetProxyId)
// + amountsOffset
// + 32 (amounts len)
let amountsContentsStart := add(assetDataOffset, add(amountsOffset, 72))
// Load number of elements in `amounts`
let amountsLen := calldataload(sub(amountsContentsStart, 32))
// In order to find the start of the `nestedAssetData` contents, we must add:
// 4 (function selector)
// + assetDataOffset
// + 32 (assetData len)
// + 4 (assetProxyId)
// + nestedAssetDataOffset
// + 32 (nestedAssetData len)
let nestedAssetDataContentsStart := add(assetDataOffset, add(nestedAssetDataOffset, 72))
// Load number of elements in `nestedAssetData`
let nestedAssetDataLen := calldataload(sub(nestedAssetDataContentsStart, 32))
// Revert if number of elements in `amounts` differs from number of elements in `nestedAssetData`
if sub(amountsLen, nestedAssetDataLen) {
// Revert with `Error("LENGTH_MISMATCH")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000000f4c454e4754485f4d49534d4154434800000000000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Copy `transferFrom` selector, offset to `assetData`, `from`, and `to` from calldata to memory
calldatacopy(
0, // memory can safely be overwritten from beginning
0, // start of calldata
100 // length of selector (4) and 3 params (32 * 3)
)
// Overwrite existing offset to `assetData` with our own
mstore(4, 128)
// Load `amount`
let amount := calldataload(100)
// Calculate number of bytes in `amounts` contents
let amountsByteLen := mul(amountsLen, 32)
// Initialize `assetProxyId` and `assetProxy` to 0
let assetProxyId := 0
let assetProxy := 0
// Loop through `amounts` and `nestedAssetData`, calling `transferFrom` for each respective element
for {let i := 0} lt(i, amountsByteLen) {i := add(i, 32)} {
// Calculate the total amount
let amountsElement := calldataload(add(amountsContentsStart, i))
let totalAmount := mul(amountsElement, amount)
// Revert if `amount` != 0 and multiplication resulted in an overflow
if iszero(or(
iszero(amount),
eq(div(totalAmount, amount), amountsElement)
)) {
// Revert with `Error("UINT256_OVERFLOW")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001055494e543235365f4f564552464c4f57000000000000000000000000)
mstore(96, 0)
revert(0, 100)
}
// Write `totalAmount` to memory
mstore(100, totalAmount)
// Load offset to `nestedAssetData[i]`
let nestedAssetDataElementOffset := calldataload(add(nestedAssetDataContentsStart, i))
// In order to find the start of the `nestedAssetData[i]` contents, we must add:
// 4 (function selector)
// + assetDataOffset
// + 32 (assetData len)
// + 4 (assetProxyId)
// + nestedAssetDataOffset
// + 32 (nestedAssetData len)
// + nestedAssetDataElementOffset
// + 32 (nestedAssetDataElement len)
let nestedAssetDataElementContentsStart := add(assetDataOffset, add(nestedAssetDataOffset, add(nestedAssetDataElementOffset, 104)))
// Load length of `nestedAssetData[i]`
let nestedAssetDataElementLenStart := sub(nestedAssetDataElementContentsStart, 32)
let nestedAssetDataElementLen := calldataload(nestedAssetDataElementLenStart)
// Revert if the `nestedAssetData` does not contain a 4 byte `assetProxyId`
if lt(nestedAssetDataElementLen, 4) {
// Revert with `Error("LENGTH_GREATER_THAN_3_REQUIRED")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001e4c454e4754485f475245415445525f5448414e5f335f524551554952)
mstore(96, 0x4544000000000000000000000000000000000000000000000000000000000000)
revert(0, 100)
}
// Load AssetProxy id
let currentAssetProxyId := and(
calldataload(nestedAssetDataElementContentsStart),
0xffffffff00000000000000000000000000000000000000000000000000000000
)
// Only load `assetProxy` if `currentAssetProxyId` does not equal `assetProxyId`
// We do not need to check if `currentAssetProxyId` is 0 since `assetProxy` is also initialized to 0
if sub(currentAssetProxyId, assetProxyId) {
// Update `assetProxyId`
assetProxyId := currentAssetProxyId
// To lookup a value in a mapping, we load from the storage location keccak256(k, p),
// where k is the key left padded to 32 bytes and p is the storage slot
mstore(132, assetProxyId)
mstore(164, assetProxies_slot)
assetProxy := sload(keccak256(132, 64))
}
// Revert if AssetProxy with given id does not exist
if iszero(assetProxy) {
// Revert with `Error("ASSET_PROXY_DOES_NOT_EXIST")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001a41535345545f50524f58595f444f45535f4e4f545f45584953540000)
mstore(96, 0)
revert(0, 100)
}
// Copy `nestedAssetData[i]` from calldata to memory
calldatacopy(
132, // memory slot after `amounts[i]`
nestedAssetDataElementLenStart, // location of `nestedAssetData[i]` in calldata
add(nestedAssetDataElementLen, 32) // `nestedAssetData[i].length` plus 32 byte length
)
// call `assetProxy.transferFrom`
let success := call(
gas, // forward all gas
assetProxy, // call address of asset proxy
0, // don't send any ETH
0, // pointer to start of input
add(164, nestedAssetDataElementLen), // length of input
0, // write output over memory that won't be reused
0 // don't copy output to memory
)
// Revert with reason given by AssetProxy if `transferFrom` call failed
if iszero(success) {
returndatacopy(
0, // copy to memory at 0
0, // copy from return data at 0
returndatasize() // copy all return data
)
revert(0, returndatasize())
}
}
// Return if no `transferFrom` calls reverted
return(0, 0)
}
// Revert if undefined function is called
revert(0, 0)
}
}
/// @dev Gets the proxy id associated with the proxy address.
/// @return Proxy id.
function getProxyId()
external
pure
returns (bytes4)
{
return PROXY_ID;
}
}

View File

@@ -0,0 +1,207 @@
/*
Copyright 2018 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.5.9;
contract StaticCallProxy {
// Id of this proxy.
bytes4 constant internal PROXY_ID = bytes4(keccak256("StaticCall(address,bytes,bytes32)"));
// solhint-disable-next-line payable-fallback
function ()
external
{
assembly {
// The first 4 bytes of calldata holds the function selector
let selector := and(calldataload(0), 0xffffffff00000000000000000000000000000000000000000000000000000000)
// `transferFrom` will be called with the following parameters:
// assetData Encoded byte array.
// from Address to transfer asset from.
// to Address to transfer asset to.
// amount Amount of asset to transfer.
// bytes4(keccak256("transferFrom(bytes,address,address,uint256)")) = 0xa85e59e4
if eq(selector, 0xa85e59e400000000000000000000000000000000000000000000000000000000) {
// `transferFrom`.
// The function is marked `external`, so no abi decoding is done for
// us. Instead, we expect the `calldata` memory to contain the
// following:
//
// | Area | Offset | Length | Contents |
// |----------|--------|---------|-------------------------------------|
// | Header | 0 | 4 | function selector |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. offset to assetData (*) |
// | | 36 | | 2. from |
// | | 68 | | 3. to |
// | | 100 | | 4. amount |
// | Data | | | assetData: |
// | | 132 | 32 | assetData Length |
// | | 164 | ** | assetData Contents |
//
// (*): offset is computed from start of function parameters, so offset
// by an additional 4 bytes in the calldata.
//
// (**): see table below to compute length of assetData Contents
// (***): Note that the `from`, `to`, and `amount` params in calldata are ignored in this function.
//
// WARNING: The ABIv2 specification allows additional padding between
// the Params and Data section. This will result in a larger
// offset to assetData.
// Load offset to `assetData`
let assetDataOffset := add(calldataload(4), 4)
// Validate length of `assetData`
let assetDataLen := calldataload(assetDataOffset)
if or(lt(assetDataLen, 100), mod(sub(assetDataLen, 4), 32)) {
// Revert with `Error("INVALID_ASSET_DATA_LENGTH")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000019494e56414c49445f41535345545f444154415f4c454e475448000000)
mstore(96, 0)
revert(0, 100)
}
// Ensure that `assetData` ends inside of calldata
let assetDataEnd := add(assetDataOffset, add(assetDataLen, 32))
if gt(assetDataEnd, calldatasize()) {
// Revert with `Error("INVALID_ASSET_DATA_END")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x00000016494e56414c49445f41535345545f444154415f454e44000000000000)
mstore(96, 0)
revert(0, 100)
}
// Asset data is encoded as follows:
// | Area | Offset | Length | Contents |
// |----------|-------------|---------|--------------------------------------|
// | Header | 0 | 4 | assetProxyId |
// | Params | | 4 * 32 | function parameters: |
// | | 4 | | 1. address of callTarget |
// | | 36 | | 2. offset to staticCallData (*) |
// | | 68 | | 3. expected 32 byte hash of output |
// | Data | | | staticCallData: |
// | | 100 | 32 | 1. staticCallData Length |
// | | 132 | a | 2. staticCallData Contents |
// In order to find the offset to `staticCallData`, we must add:
// assetDataOffset
// + 32 (assetData len)
// + 4 (proxyId)
// + 32 (callTarget)
let paramsInAssetDataOffset := add(assetDataOffset, 36)
let staticCallDataOffset := add(paramsInAssetDataOffset, calldataload(add(assetDataOffset, 68)))
// Load length of `staticCallData`
let staticCallDataLen := calldataload(staticCallDataOffset)
// Ensure `staticCallData` does not begin to outside of `assetData`
let staticCallDataBegin := add(staticCallDataOffset, 32)
let staticCallDataEnd := add(staticCallDataBegin, staticCallDataLen)
if gt(staticCallDataEnd, assetDataEnd) {
// Revert with `Error("INVALID_STATIC_CALL_DATA_OFFSET")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001f494e56414c49445f5354415449435f43414c4c5f444154415f4f4646)
mstore(96, 0x5345540000000000000000000000000000000000000000000000000000000000)
revert(0, 100)
}
// Copy `staticCallData` into memory
calldatacopy(
0, // memory can be safely overwritten from beginning
staticCallDataBegin, // start of `staticCallData`
staticCallDataLen // copy the entire `staticCallData`
)
// In order to find the offset to `callTarget`, we must add:
// assetDataOffset
// + 32 (assetData len)
// + 4 (proxyId)
let callTarget := and(
calldataload(add(assetDataOffset, 36)),
0x000000000000000000000000ffffffffffffffffffffffffffffffffffffffff
)
// Perform `callTarget.staticcall(staticCallData)`
let success := staticcall(
gas, // forward all gas
callTarget, // call address `callTarget`
0, // pointer to start of input
staticCallDataLen, // length of input
0, // start of memory can be safely overwritten
0 // don't copy output to memory
)
// Copy entire output to start of memory
let outputLen := returndatasize()
returndatacopy(
0, // copy to memory at 0
0, // copy from return data at 0
outputLen // copy all return data
)
// Revert with reason given by `callTarget` if staticcall is unsuccessful
if iszero(success) {
revert(0, outputLen)
}
// Calculate hash of output
let callResultHash := keccak256(0, outputLen)
// In order to find the offset to `expectedCallResultHash`, we must add:
// assetDataOffset
// + 32 (assetData len)
// + 4 (proxyId)
// + 32 (callTarget)
// + 32 (staticCallDataOffset)
let expectedResultHash := calldataload(add(assetDataOffset, 100))
if sub(callResultHash, expectedResultHash) {
// Revert with `Error("UNEXPECTED_STATIC_CALL_RESULT")`
mstore(0, 0x08c379a000000000000000000000000000000000000000000000000000000000)
mstore(32, 0x0000002000000000000000000000000000000000000000000000000000000000)
mstore(64, 0x0000001d554e45585045435445445f5354415449435f43414c4c5f524553554c)
mstore(96, 0x5400000000000000000000000000000000000000000000000000000000000000)
revert(0, 100)
}
// Return if output matched expected output
return(0, 0)
}
// Revert if undefined function is called
revert(0, 0)
}
}
/// @dev Gets the proxy id associated with the proxy address.
/// @return Proxy id.
function getProxyId()
external
pure
returns (bytes4)
{
return PROXY_ID;
}
}

View File

@@ -17,7 +17,8 @@
*/
// solhint-disable
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
pragma experimental ABIEncoderV2;
// @dev Interface of the asset proxy's assetData.
@@ -25,16 +26,33 @@ pragma solidity 0.4.24;
// This argument is ABI encoded as one of the methods of this interface.
interface IAssetData {
function ERC20Token(address tokenContract)
external
pure;
function ERC20Token(address tokenAddress)
external;
function ERC721Token(
address tokenContract,
uint256 tokenId,
bytes receiverData
address tokenAddress,
uint256 tokenId
)
external
pure;
external;
function ERC1155Assets(
address tokenAddress,
uint256[] calldata tokenIds,
uint256[] calldata tokenValues,
bytes calldata callbackData
)
external;
function MultiAsset(
uint256[] calldata amounts,
bytes[] calldata nestedAssetData
)
external;
function StaticCall(
address callTarget,
bytes calldata staticCallData,
bytes32 callResultHash
)
external;
}

View File

@@ -16,7 +16,7 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "./IAuthorizable.sol";
@@ -24,14 +24,13 @@ import "./IAuthorizable.sol";
contract IAssetProxy is
IAuthorizable
{
/// @dev Transfers assets. Either succeeds or throws.
/// @param assetData Byte array encoded for the respective asset proxy.
/// @param from Address to transfer asset from.
/// @param to Address to transfer asset to.
/// @param amount Amount of asset to transfer.
function transferFrom(
bytes assetData,
bytes calldata assetData,
address from,
address to,
uint256 amount

View File

@@ -16,7 +16,7 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
contract IAssetProxyDispatcher {

View File

@@ -16,15 +16,14 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../../../utils/Ownable/IOwnable.sol";
import "@0x/contracts-utils/contracts/src/interfaces/IOwnable.sol";
contract IAuthorizable is
IOwnable
{
/// @dev Authorizes an address.
/// @param target Address to authorize.
function addAuthorizedAddress(address target)

View File

@@ -0,0 +1,40 @@
/*
Copyright 2019 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.5.5;
contract LibAssetProxyIds {
// AssetProxy Ids are equiavalent the first 4 bytes of the keccak256 hash of the function signature assigned to each AssetProxy.
// ERC20Token(address)
bytes4 constant public ERC20_PROXY_ID = 0xf47261b0;
// ERC721Token(address,uint256)
bytes4 constant public ERC721_PROXY_ID = 0x02571792;
// ERC1155Assets(address,uint256[],uint256[],bytes)
bytes4 constant public ERC1155_PROXY_ID = 0xa7cb5fb7;
// MultiAsset(uint256[],bytes[])
bytes4 constant public MULTI_ASSET_PROXY_ID = 0x94cfcdd7;
// StaticCall(address,bytes,bytes32)
bytes4 constant public STATIC_CALL_PROXY_ID = 0xc339d10a;
}

View File

@@ -16,7 +16,7 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../interfaces/IAssetProxyDispatcher.sol";
@@ -24,7 +24,6 @@ import "../interfaces/IAssetProxyDispatcher.sol";
contract MAssetProxyDispatcher is
IAssetProxyDispatcher
{
// Logs registration of new asset proxy
event AssetProxyRegistered(
bytes4 id, // Id of new registered AssetProxy.

View File

@@ -16,7 +16,7 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../interfaces/IAuthorizable.sol";
@@ -24,7 +24,6 @@ import "../interfaces/IAuthorizable.sol";
contract MAuthorizable is
IAuthorizable
{
// Event logged when a new address is authorized.
event AuthorizedAddressAdded(
address indexed target,

View File

@@ -0,0 +1,82 @@
/*
Copyright 2018 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.5.9;
import "@0x/contracts-utils/contracts/src/LibBytes.sol";
contract TestStaticCallTarget {
using LibBytes for bytes;
uint256 internal _state;
function updateState()
external
{
_state++;
}
function assertEvenNumber(uint256 target)
external
pure
{
require(
target % 2 == 0,
"TARGET_NOT_EVEN"
);
}
function isOddNumber(uint256 target)
external
pure
returns (bool isOdd)
{
isOdd = target % 2 == 1;
return isOdd;
}
function noInputFunction()
external
pure
{
assert(msg.data.length == 4 && msg.data.readBytes4(0) == bytes4(keccak256("noInputFunction()")));
}
function dynamicInputFunction(bytes calldata a)
external
pure
{
bytes memory abiEncodedData = abi.encodeWithSignature("dynamicInputFunction(bytes)", a);
assert(msg.data.equals(abiEncodedData));
}
function returnComplexType(uint256 a, uint256 b)
external
view
returns (bytes memory result)
{
result = abi.encodePacked(
address(this),
a,
b
);
return result;
}
}

View File

@@ -0,0 +1,88 @@
{
"name": "@0x/contracts-asset-proxy",
"version": "2.2.1",
"engines": {
"node": ">=6.12"
},
"description": "Smart contract components of 0x protocol",
"main": "lib/src/index.js",
"directories": {
"test": "test"
},
"scripts": {
"build": "yarn pre_build && tsc -b",
"build:ci": "yarn build",
"pre_build": "run-s compile generate_contract_wrappers",
"test": "yarn run_mocha",
"rebuild_and_test": "run-s build test",
"test:coverage": "SOLIDITY_COVERAGE=true run-s build run_mocha coverage:report:text coverage:report:lcov",
"test:profiler": "SOLIDITY_PROFILER=true run-s build run_mocha profiler:report:html",
"test:trace": "SOLIDITY_REVERT_TRACE=true run-s build run_mocha",
"run_mocha": "mocha --require source-map-support/register --require make-promises-safe 'lib/test/**/*.js' --timeout 100000 --bail --exit",
"compile": "sol-compiler",
"watch": "sol-compiler -w",
"clean": "shx rm -rf lib generated-artifacts generated-wrappers",
"generate_contract_wrappers": "abi-gen --abis ${npm_package_config_abis} --template ../../node_modules/@0x/abi-gen-templates/contract.handlebars --partials '../../node_modules/@0x/abi-gen-templates/partials/**/*.handlebars' --output generated-wrappers --backend ethers",
"lint": "tslint --format stylish --project . --exclude ./generated-wrappers/**/* --exclude ./generated-artifacts/**/* --exclude **/lib/**/* && yarn lint-contracts",
"fix": "tslint --fix --format stylish --project . --exclude ./generated-wrappers/**/* --exclude ./generated-artifacts/**/* --exclude **/lib/**/* && yarn lint-contracts",
"coverage:report:text": "istanbul report text",
"coverage:report:html": "istanbul report html && open coverage/index.html",
"profiler:report:html": "istanbul report html && open coverage/index.html",
"coverage:report:lcov": "istanbul report lcov",
"test:circleci": "yarn test",
"contracts:gen": "contracts-gen",
"lint-contracts": "solhint -c ../.solhint.json contracts/**/**/**/**/*.sol"
},
"config": {
"abis": "./generated-artifacts/@(ERC1155Proxy|ERC20Proxy|ERC721Proxy|IAssetData|IAssetProxy|IAuthorizable|MixinAuthorizable|MultiAssetProxy|StaticCallProxy|TestStaticCallTarget).json",
"abis:comment": "This list is auto-generated by contracts-gen. Don't edit manually."
},
"repository": {
"type": "git",
"url": "https://github.com/0xProject/0x-monorepo.git"
},
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/0xProject/0x-monorepo/issues"
},
"homepage": "https://github.com/0xProject/0x-monorepo/contracts/protocol/README.md",
"devDependencies": {
"@0x/abi-gen": "^2.1.1",
"@0x/contracts-gen": "^1.0.10",
"@0x/contracts-test-utils": "^3.1.9",
"@0x/dev-utils": "^2.2.4",
"@0x/sol-compiler": "^3.1.9",
"@0x/tslint-config": "^3.0.1",
"@types/lodash": "4.14.104",
"@types/node": "*",
"chai": "^4.0.1",
"chai-as-promised": "^7.1.0",
"chai-bignumber": "^3.0.0",
"dirty-chai": "^2.0.1",
"make-promises-safe": "^1.1.0",
"mocha": "^4.1.0",
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"solhint": "^1.4.1",
"tslint": "5.11.0",
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^5.1.1",
"@0x/contracts-erc1155": "^1.1.8",
"@0x/contracts-erc20": "^2.2.7",
"@0x/contracts-erc721": "^2.1.8",
"@0x/contracts-utils": "^3.1.8",
"@0x/order-utils": "^8.2.1",
"@0x/types": "^2.4.0",
"@0x/typescript-typings": "^4.2.3",
"@0x/utils": "^4.4.0",
"@0x/web3-wrapper": "^6.0.7",
"ethereum-types": "^2.1.3",
"ethereumjs-util": "^5.1.1",
"lodash": "^4.17.11"
},
"publishConfig": {
"access": "public"
}
}

View File

@@ -0,0 +1,29 @@
/*
* -----------------------------------------------------------------------------
* Warning: This file is auto-generated by contracts-gen. Don't edit manually.
* -----------------------------------------------------------------------------
*/
import { ContractArtifact } from 'ethereum-types';
import * as ERC1155Proxy from '../generated-artifacts/ERC1155Proxy.json';
import * as ERC20Proxy from '../generated-artifacts/ERC20Proxy.json';
import * as ERC721Proxy from '../generated-artifacts/ERC721Proxy.json';
import * as IAssetData from '../generated-artifacts/IAssetData.json';
import * as IAssetProxy from '../generated-artifacts/IAssetProxy.json';
import * as IAuthorizable from '../generated-artifacts/IAuthorizable.json';
import * as MixinAuthorizable from '../generated-artifacts/MixinAuthorizable.json';
import * as MultiAssetProxy from '../generated-artifacts/MultiAssetProxy.json';
import * as StaticCallProxy from '../generated-artifacts/StaticCallProxy.json';
import * as TestStaticCallTarget from '../generated-artifacts/TestStaticCallTarget.json';
export const artifacts = {
ERC1155Proxy: ERC1155Proxy as ContractArtifact,
ERC20Proxy: ERC20Proxy as ContractArtifact,
ERC721Proxy: ERC721Proxy as ContractArtifact,
MixinAuthorizable: MixinAuthorizable as ContractArtifact,
MultiAssetProxy: MultiAssetProxy as ContractArtifact,
StaticCallProxy: StaticCallProxy as ContractArtifact,
IAssetData: IAssetData as ContractArtifact,
IAssetProxy: IAssetProxy as ContractArtifact,
IAuthorizable: IAuthorizable as ContractArtifact,
TestStaticCallTarget: TestStaticCallTarget as ContractArtifact,
};

View File

@@ -0,0 +1,3 @@
export * from './artifacts';
export * from './wrappers';
export * from '../test/utils';

View File

@@ -0,0 +1,15 @@
/*
* -----------------------------------------------------------------------------
* Warning: This file is auto-generated by contracts-gen. Don't edit manually.
* -----------------------------------------------------------------------------
*/
export * from '../generated-wrappers/erc1155_proxy';
export * from '../generated-wrappers/erc20_proxy';
export * from '../generated-wrappers/erc721_proxy';
export * from '../generated-wrappers/i_asset_data';
export * from '../generated-wrappers/i_asset_proxy';
export * from '../generated-wrappers/i_authorizable';
export * from '../generated-wrappers/mixin_authorizable';
export * from '../generated-wrappers/multi_asset_proxy';
export * from '../generated-wrappers/static_call_proxy';
export * from '../generated-wrappers/test_static_call_target';

View File

@@ -1,14 +1,18 @@
import { BlockchainLifecycle } from '@0xproject/dev-utils';
import { RevertReason } from '@0xproject/types';
import { BigNumber } from '@0xproject/utils';
import {
chaiSetup,
constants,
expectTransactionFailedAsync,
provider,
txDefaults,
web3Wrapper,
} from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import { RevertReason } from '@0x/types';
import { BigNumber } from '@0x/utils';
import * as chai from 'chai';
import * as _ from 'lodash';
import { MixinAuthorizableContract } from '../../generated_contract_wrappers/mixin_authorizable';
import { artifacts } from '../utils/artifacts';
import { expectTransactionFailedAsync } from '../utils/assertions';
import { chaiSetup } from '../utils/chai_setup';
import { constants } from '../utils/constants';
import { provider, txDefaults, web3Wrapper } from '../utils/web3_wrapper';
import { artifacts, MixinAuthorizableContract } from '../src';
chaiSetup.configure();
const expect = chai.expect;
@@ -28,8 +32,7 @@ describe('Authorizable', () => {
});
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
owner = address = accounts[0];
notOwner = accounts[1];
[owner, address, notOwner] = _.slice(accounts, 0, 3);
authorizable = await MixinAuthorizableContract.deployFrom0xArtifactAsync(
artifacts.MixinAuthorizable,
provider,
@@ -50,16 +53,18 @@ describe('Authorizable', () => {
);
});
it('should allow owner to add an authorized address', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const isAuthorized = await authorizable.authorized.callAsync(address);
expect(isAuthorized).to.be.true();
});
it('should throw if owner attempts to authorize a duplicate address', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
return expectTransactionFailedAsync(
@@ -71,8 +76,9 @@ describe('Authorizable', () => {
describe('removeAuthorizedAddress', () => {
it('should throw if not called by owner', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
return expectTransactionFailedAsync(
@@ -84,14 +90,14 @@ describe('Authorizable', () => {
});
it('should allow owner to remove an authorized address', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
}),
await authorizable.removeAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const isAuthorized = await authorizable.authorized.callAsync(address);
@@ -110,8 +116,9 @@ describe('Authorizable', () => {
describe('removeAuthorizedAddressAtIndex', () => {
it('should throw if not called by owner', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const index = new BigNumber(0);
@@ -123,8 +130,9 @@ describe('Authorizable', () => {
);
});
it('should throw if index is >= authorities.length', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const index = new BigNumber(1);
@@ -147,12 +155,14 @@ describe('Authorizable', () => {
it('should throw if address at index does not match target', async () => {
const address1 = address;
const address2 = notOwner;
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address1, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address1,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address2, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address2,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const address1Index = new BigNumber(0);
@@ -164,15 +174,16 @@ describe('Authorizable', () => {
);
});
it('should allow owner to remove an authorized address', async () => {
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, { from: owner }),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const index = new BigNumber(0);
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.removeAuthorizedAddressAtIndex.sendTransactionAsync(address, index, {
from: owner,
}),
await authorizable.removeAuthorizedAddressAtIndex.awaitTransactionSuccessAsync(
address,
index,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const isAuthorized = await authorizable.authorized.callAsync(address);
@@ -184,20 +195,17 @@ describe('Authorizable', () => {
it('should return all authorized addresses', async () => {
const initial = await authorizable.getAuthorizedAddresses.callAsync();
expect(initial).to.have.length(0);
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.addAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
}),
await authorizable.addAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const afterAdd = await authorizable.getAuthorizedAddresses.callAsync();
expect(afterAdd).to.have.length(1);
expect(afterAdd).to.include(address);
await web3Wrapper.awaitTransactionSuccessAsync(
await authorizable.removeAuthorizedAddress.sendTransactionAsync(address, {
from: owner,
}),
await authorizable.removeAuthorizedAddress.awaitTransactionSuccessAsync(
address,
{ from: owner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
const afterRemove = await authorizable.getAuthorizedAddresses.callAsync();

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,19 @@
import { env, EnvVars } from '@0x/dev-utils';
import { coverage, profiler, provider } from '@0x/contracts-test-utils';
import { providerUtils } from '@0x/utils';
before('start web3 provider', () => {
providerUtils.startProviderEngine(provider);
});
after('generate coverage report', async () => {
if (env.parseBoolean(EnvVars.SolidityCoverage)) {
const coverageSubprovider = coverage.getCoverageSubproviderSingleton();
await coverageSubprovider.writeCoverageAsync();
}
if (env.parseBoolean(EnvVars.SolidityProfiler)) {
const profilerSubprovider = profiler.getProfilerSubproviderSingleton();
await profilerSubprovider.writeProfilerOutputAsync();
}
provider.stop();
});

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,250 @@
import {
chaiSetup,
constants,
expectTransactionFailedAsync,
expectTransactionFailedWithoutReasonAsync,
provider,
txDefaults,
web3Wrapper,
} from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import { assetDataUtils } from '@0x/order-utils';
import { AssetProxyId, RevertReason } from '@0x/types';
import { AbiEncoder, BigNumber } from '@0x/utils';
import * as chai from 'chai';
import * as ethUtil from 'ethereumjs-util';
import { artifacts, IAssetProxyContract, StaticCallProxyContract, TestStaticCallTargetContract } from '../src';
chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
describe('StaticCallProxy', () => {
const amount = constants.ZERO_AMOUNT;
let fromAddress: string;
let toAddress: string;
let staticCallProxy: IAssetProxyContract;
let staticCallTarget: TestStaticCallTargetContract;
before(async () => {
await blockchainLifecycle.startAsync();
});
after(async () => {
await blockchainLifecycle.revertAsync();
});
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
[fromAddress, toAddress] = accounts.slice(0, 2);
const staticCallProxyWithoutTransferFrom = await StaticCallProxyContract.deployFrom0xArtifactAsync(
artifacts.StaticCallProxy,
provider,
txDefaults,
);
staticCallProxy = new IAssetProxyContract(staticCallProxyWithoutTransferFrom.address, provider, txDefaults);
staticCallTarget = await TestStaticCallTargetContract.deployFrom0xArtifactAsync(
artifacts.TestStaticCallTarget,
provider,
txDefaults,
);
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
});
afterEach(async () => {
await blockchainLifecycle.revertAsync();
});
describe('general', () => {
it('should revert if undefined function is called', async () => {
const undefinedSelector = '0x01020304';
await expectTransactionFailedWithoutReasonAsync(
web3Wrapper.sendTransactionAsync({
from: fromAddress,
to: staticCallProxy.address,
value: constants.ZERO_AMOUNT,
data: undefinedSelector,
}),
);
});
it('should have an id of 0xc339d10a', async () => {
const proxyId = await staticCallProxy.getProxyId.callAsync();
const expectedProxyId = AssetProxyId.StaticCall;
expect(proxyId).to.equal(expectedProxyId);
});
});
describe('transferFrom', () => {
it('should revert if assetData lies outside the bounds of calldata', async () => {
const staticCallData = staticCallTarget.noInputFunction.getABIEncodedTransactionData();
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
const txData = staticCallProxy.transferFrom.getABIEncodedTransactionData(
assetData,
fromAddress,
toAddress,
amount,
);
const offsetToAssetData = '0000000000000000000000000000000000000000000000000000000000000080';
const txDataEndBuffer = ethUtil.toBuffer((txData.length - 2) / 2 - 4);
const paddedTxDataEndBuffer = ethUtil.setLengthLeft(txDataEndBuffer, 32);
const invalidOffsetToAssetData = ethUtil.bufferToHex(paddedTxDataEndBuffer).slice(2);
const newAssetData = '0000000000000000000000000000000000000000000000000000000000000304';
const badTxData = `${txData.replace(offsetToAssetData, invalidOffsetToAssetData)}${newAssetData}`;
await expectTransactionFailedAsync(
web3Wrapper.sendTransactionAsync({
to: staticCallProxy.address,
from: fromAddress,
data: badTxData,
}),
RevertReason.InvalidAssetDataEnd,
);
});
it('should revert if the length of assetData, excluding the proxyId, is not a multiple of 32', async () => {
const staticCallData = staticCallTarget.noInputFunction.getABIEncodedTransactionData();
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = `${assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
)}01`;
await expectTransactionFailedAsync(
staticCallProxy.transferFrom.sendTransactionAsync(assetData, fromAddress, toAddress, amount),
RevertReason.InvalidAssetDataLength,
);
});
it('should revert if the length of assetData is less than 100 bytes', async () => {
const staticCallData = constants.NULL_BYTES;
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils
.encodeStaticCallAssetData(staticCallTarget.address, staticCallData, expectedResultHash)
.slice(0, -128);
const assetDataByteLen = (assetData.length - 2) / 2;
expect((assetDataByteLen - 4) % 32).to.equal(0);
await expectTransactionFailedAsync(
staticCallProxy.transferFrom.sendTransactionAsync(assetData, fromAddress, toAddress, amount),
RevertReason.InvalidAssetDataLength,
);
});
it('should revert if the offset to `staticCallData` points to outside of assetData', async () => {
const staticCallData = staticCallTarget.noInputFunction.getABIEncodedTransactionData();
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
const offsetToStaticCallData = '0000000000000000000000000000000000000000000000000000000000000060';
const assetDataEndBuffer = ethUtil.toBuffer((assetData.length - 2) / 2 - 4);
const paddedAssetDataEndBuffer = ethUtil.setLengthLeft(assetDataEndBuffer, 32);
const invalidOffsetToStaticCallData = ethUtil.bufferToHex(paddedAssetDataEndBuffer).slice(2);
const newStaticCallData = '0000000000000000000000000000000000000000000000000000000000000304';
const badAssetData = `${assetData.replace(
offsetToStaticCallData,
invalidOffsetToStaticCallData,
)}${newStaticCallData}`;
await expectTransactionFailedAsync(
staticCallProxy.transferFrom.sendTransactionAsync(badAssetData, fromAddress, toAddress, amount),
RevertReason.InvalidStaticCallDataOffset,
);
});
it('should revert if the callTarget attempts to write to state', async () => {
const staticCallData = staticCallTarget.updateState.getABIEncodedTransactionData();
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await expectTransactionFailedWithoutReasonAsync(
staticCallProxy.transferFrom.sendTransactionAsync(assetData, fromAddress, toAddress, amount),
);
});
it('should revert with data provided by the callTarget if the staticcall reverts', async () => {
const staticCallData = staticCallTarget.assertEvenNumber.getABIEncodedTransactionData(new BigNumber(1));
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await expectTransactionFailedAsync(
staticCallProxy.transferFrom.sendTransactionAsync(assetData, fromAddress, toAddress, amount),
RevertReason.TargetNotEven,
);
});
it('should revert if the hash of the output is different than expected expected', async () => {
const staticCallData = staticCallTarget.isOddNumber.getABIEncodedTransactionData(new BigNumber(0));
const trueAsBuffer = ethUtil.toBuffer('0x0000000000000000000000000000000000000000000000000000000000000001');
const expectedResultHash = ethUtil.bufferToHex(ethUtil.sha3(trueAsBuffer));
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await expectTransactionFailedAsync(
staticCallProxy.transferFrom.sendTransactionAsync(assetData, fromAddress, toAddress, amount),
RevertReason.UnexpectedStaticCallResult,
);
});
it('should be successful if a function call with no inputs is successful', async () => {
const staticCallData = staticCallTarget.noInputFunction.getABIEncodedTransactionData();
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await staticCallProxy.transferFrom.awaitTransactionSuccessAsync(assetData, fromAddress, toAddress, amount);
});
it('should be successful if a function call with one static input returns the correct value', async () => {
const staticCallData = staticCallTarget.isOddNumber.getABIEncodedTransactionData(new BigNumber(1));
const trueAsBuffer = ethUtil.toBuffer('0x0000000000000000000000000000000000000000000000000000000000000001');
const expectedResultHash = ethUtil.bufferToHex(ethUtil.sha3(trueAsBuffer));
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await staticCallProxy.transferFrom.awaitTransactionSuccessAsync(assetData, fromAddress, toAddress, amount);
});
it('should be successful if a function with one dynamic input is successful', async () => {
const dynamicInput = '0x0102030405060708';
const staticCallData = staticCallTarget.dynamicInputFunction.getABIEncodedTransactionData(dynamicInput);
const expectedResultHash = constants.KECCAK256_NULL;
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await staticCallProxy.transferFrom.awaitTransactionSuccessAsync(assetData, fromAddress, toAddress, amount);
});
it('should be successful if a function call returns a complex type', async () => {
const a = new BigNumber(1);
const b = new BigNumber(2);
const staticCallData = staticCallTarget.returnComplexType.getABIEncodedTransactionData(a, b);
const abiEncoder = new AbiEncoder.DynamicBytes({
name: '',
type: 'bytes',
});
const aHex = '0000000000000000000000000000000000000000000000000000000000000001';
const bHex = '0000000000000000000000000000000000000000000000000000000000000002';
const expectedResults = `${staticCallTarget.address}${aHex}${bHex}`;
const offset = '0000000000000000000000000000000000000000000000000000000000000020';
const encodedExpectedResultWithOffset = `0x${offset}${abiEncoder.encode(expectedResults).slice(2)}`;
const expectedResultHash = ethUtil.bufferToHex(
ethUtil.sha3(ethUtil.toBuffer(encodedExpectedResultWithOffset)),
);
const assetData = assetDataUtils.encodeStaticCallAssetData(
staticCallTarget.address,
staticCallData,
expectedResultHash,
);
await staticCallProxy.transferFrom.awaitTransactionSuccessAsync(assetData, fromAddress, toAddress, amount);
});
});
});

View File

@@ -0,0 +1,401 @@
import { artifacts as erc1155Artifacts, ERC1155MintableContract, Erc1155Wrapper } from '@0x/contracts-erc1155';
import {
constants,
ERC1155FungibleHoldingsByOwner,
ERC1155HoldingsByOwner,
ERC1155NonFungibleHoldingsByOwner,
LogDecoder,
txDefaults,
} from '@0x/contracts-test-utils';
import { assetDataUtils } from '@0x/order-utils';
import { BigNumber } from '@0x/utils';
import { Web3Wrapper } from '@0x/web3-wrapper';
import { Provider, TransactionReceiptWithDecodedLogs } from 'ethereum-types';
import * as _ from 'lodash';
import { artifacts, ERC1155ProxyContract, IAssetProxyContract } from '../../src';
export class ERC1155ProxyWrapper {
private readonly _tokenOwnerAddresses: string[];
private readonly _fungibleTokenIds: string[];
private readonly _nonFungibleTokenIds: string[];
private readonly _nfts: Array<{ id: BigNumber; tokenId: BigNumber }>;
private readonly _contractOwnerAddress: string;
private readonly _web3Wrapper: Web3Wrapper;
private readonly _provider: Provider;
private readonly _logDecoder: LogDecoder;
private readonly _dummyTokenWrappers: Erc1155Wrapper[];
private readonly _assetProxyInterface: IAssetProxyContract;
private _proxyContract?: ERC1155ProxyContract;
private _proxyIdIfExists?: string;
private _initialTokenIdsByOwner: ERC1155HoldingsByOwner = { fungible: {}, nonFungible: {} };
constructor(provider: Provider, tokenOwnerAddresses: string[], contractOwnerAddress: string) {
this._web3Wrapper = new Web3Wrapper(provider);
this._provider = provider;
const allArtifacts = _.merge(artifacts, erc1155Artifacts);
this._logDecoder = new LogDecoder(this._web3Wrapper, allArtifacts);
this._dummyTokenWrappers = [];
this._assetProxyInterface = new IAssetProxyContract(constants.NULL_ADDRESS, provider);
this._tokenOwnerAddresses = tokenOwnerAddresses;
this._contractOwnerAddress = contractOwnerAddress;
this._fungibleTokenIds = [];
this._nonFungibleTokenIds = [];
this._nfts = [];
}
/**
* @dev Deploys dummy ERC1155 contracts
* @return An array of ERC1155 wrappers; one for each deployed contract.
*/
public async deployDummyContractsAsync(): Promise<Erc1155Wrapper[]> {
// tslint:disable-next-line:no-unused-variable
for (const i of _.times(constants.NUM_DUMMY_ERC1155_CONTRACTS_TO_DEPLOY)) {
const erc1155Contract = await ERC1155MintableContract.deployFrom0xArtifactAsync(
erc1155Artifacts.ERC1155Mintable,
this._provider,
txDefaults,
);
const erc1155Wrapper = new Erc1155Wrapper(erc1155Contract, this._provider, this._contractOwnerAddress);
this._dummyTokenWrappers.push(erc1155Wrapper);
}
return this._dummyTokenWrappers;
}
/**
* @dev Deploys the ERC1155 proxy
* @return Deployed ERC1155 proxy contract instance
*/
public async deployProxyAsync(): Promise<ERC1155ProxyContract> {
this._proxyContract = await ERC1155ProxyContract.deployFrom0xArtifactAsync(
artifacts.ERC1155Proxy,
this._provider,
txDefaults,
);
this._proxyIdIfExists = await this._proxyContract.getProxyId.callAsync();
return this._proxyContract;
}
/**
* @dev Gets the ERC1155 proxy id
*/
public getProxyId(): string {
this._validateProxyContractExistsOrThrow();
return this._proxyIdIfExists as string;
}
/**
* @dev generates abi-encoded tx data for transferring erc1155 fungible/non-fungible tokens.
* @param from source address
* @param to destination address
* @param contractAddress address of erc155 contract
* @param tokensToTransfer array of erc1155 tokens to transfer
* @param valuesToTransfer array of corresponding values for each erc1155 token to transfer
* @param valueMultiplier each value in `valuesToTransfer` is multiplied by this
* @param receiverCallbackData callback data if `to` is a contract
* @param authorizedSender sender of `transferFrom` transaction
* @param extraData extra data to append to `transferFrom` transaction. Optional.
* @return abi encoded tx data.
*/
public getTransferFromAbiEncodedTxData(
from: string,
to: string,
contractAddress: string,
tokensToTransfer: BigNumber[],
valuesToTransfer: BigNumber[],
valueMultiplier: BigNumber,
receiverCallbackData: string,
authorizedSender: string,
assetData_?: string,
): string {
this._validateProxyContractExistsOrThrow();
const assetData =
assetData_ === undefined
? assetDataUtils.encodeERC1155AssetData(
contractAddress,
tokensToTransfer,
valuesToTransfer,
receiverCallbackData,
)
: assetData_;
const data = this._assetProxyInterface.transferFrom.getABIEncodedTransactionData(
assetData,
from,
to,
valueMultiplier,
);
return data;
}
/**
* @dev transfers erc1155 fungible/non-fungible tokens.
* @param txData: abi-encoded tx data
* @param authorizedSender sender of `transferFrom` transaction
*/
public async transferFromRawAsync(
txData: string,
authorizedSender: string,
): Promise<TransactionReceiptWithDecodedLogs> {
const txHash = await this._web3Wrapper.sendTransactionAsync({
to: (this._proxyContract as ERC1155ProxyContract).address,
data: txData,
from: authorizedSender,
gas: 300000,
});
const txReceipt = await this._logDecoder.getTxWithDecodedLogsAsync(txHash);
return txReceipt;
}
/**
* @dev transfers erc1155 fungible/non-fungible tokens.
* @param from source address
* @param to destination address
* @param contractAddress address of erc155 contract
* @param tokensToTransfer array of erc1155 tokens to transfer
* @param valuesToTransfer array of corresponding values for each erc1155 token to transfer
* @param valueMultiplier each value in `valuesToTransfer` is multiplied by this
* @param receiverCallbackData callback data if `to` is a contract
* @param authorizedSender sender of `transferFrom` transaction
* @param extraData extra data to append to `transferFrom` transaction. Optional.
* @return tranasction hash.
*/
public async transferFromAsync(
from: string,
to: string,
contractAddress: string,
tokensToTransfer: BigNumber[],
valuesToTransfer: BigNumber[],
valueMultiplier: BigNumber,
receiverCallbackData: string,
authorizedSender: string,
assetData_?: string,
): Promise<TransactionReceiptWithDecodedLogs> {
this._validateProxyContractExistsOrThrow();
const assetData =
assetData_ === undefined
? assetDataUtils.encodeERC1155AssetData(
contractAddress,
tokensToTransfer,
valuesToTransfer,
receiverCallbackData,
)
: assetData_;
const data = this._assetProxyInterface.transferFrom.getABIEncodedTransactionData(
assetData,
from,
to,
valueMultiplier,
);
const txHash = await this._web3Wrapper.sendTransactionAsync({
to: (this._proxyContract as ERC1155ProxyContract).address,
data,
from: authorizedSender,
gas: 300000,
});
const txReceipt = await this._logDecoder.getTxWithDecodedLogsAsync(txHash);
return txReceipt;
}
/**
* @dev For each deployed ERC1155 contract, this function mints a set of fungible/non-fungible
* tokens for each token owner address (`_tokenOwnerAddresses`).
* @return Balances of each token owner, across all ERC1155 contracts and tokens.
*/
public async setBalancesAndAllowancesAsync(): Promise<ERC1155HoldingsByOwner> {
this._validateDummyTokenContractsExistOrThrow();
this._validateProxyContractExistsOrThrow();
this._initialTokenIdsByOwner = {
fungible: {},
nonFungible: {},
};
const fungibleHoldingsByOwner: ERC1155FungibleHoldingsByOwner = {};
const nonFungibleHoldingsByOwner: ERC1155NonFungibleHoldingsByOwner = {};
// Set balances accordingly
for (const dummyWrapper of this._dummyTokenWrappers) {
const dummyAddress = dummyWrapper.getContract().address;
// tslint:disable-next-line:no-unused-variable
for (const i of _.times(constants.NUM_ERC1155_FUNGIBLE_TOKENS_MINT)) {
// Create a fungible token
const tokenId = await dummyWrapper.mintFungibleTokensAsync(
this._tokenOwnerAddresses,
constants.INITIAL_ERC1155_FUNGIBLE_BALANCE,
);
const tokenIdAsString = tokenId.toString();
this._fungibleTokenIds.push(tokenIdAsString);
// Mint tokens for each owner for this token
for (const tokenOwnerAddress of this._tokenOwnerAddresses) {
// tslint:disable-next-line:no-unused-variable
if (fungibleHoldingsByOwner[tokenOwnerAddress] === undefined) {
fungibleHoldingsByOwner[tokenOwnerAddress] = {};
}
if (fungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress] === undefined) {
fungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress] = {};
}
fungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress][tokenIdAsString] =
constants.INITIAL_ERC1155_FUNGIBLE_BALANCE;
await dummyWrapper.setApprovalForAllAsync(
tokenOwnerAddress,
(this._proxyContract as ERC1155ProxyContract).address,
true,
);
}
}
// Non-fungible tokens
// tslint:disable-next-line:no-unused-variable
for (const j of _.times(constants.NUM_ERC1155_NONFUNGIBLE_TOKENS_MINT)) {
const [tokenId, nftIds] = await dummyWrapper.mintNonFungibleTokensAsync(this._tokenOwnerAddresses);
const tokenIdAsString = tokenId.toString();
this._nonFungibleTokenIds.push(tokenIdAsString);
_.each(this._tokenOwnerAddresses, async (tokenOwnerAddress: string, i: number) => {
if (nonFungibleHoldingsByOwner[tokenOwnerAddress] === undefined) {
nonFungibleHoldingsByOwner[tokenOwnerAddress] = {};
}
if (nonFungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress] === undefined) {
nonFungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress] = {};
}
if (nonFungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress][tokenIdAsString] === undefined) {
nonFungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress][tokenIdAsString] = [];
}
this._nfts.push({ id: nftIds[i], tokenId });
nonFungibleHoldingsByOwner[tokenOwnerAddress][dummyAddress][tokenIdAsString].push(nftIds[i]);
await dummyWrapper.setApprovalForAllAsync(
tokenOwnerAddress,
(this._proxyContract as ERC1155ProxyContract).address,
true,
);
});
}
}
this._initialTokenIdsByOwner = {
fungible: fungibleHoldingsByOwner,
nonFungible: nonFungibleHoldingsByOwner,
};
return this._initialTokenIdsByOwner;
}
/**
* @dev For each deployed ERC1155 contract, this function quieries the set of fungible/non-fungible
* tokens for each token owner address (`_tokenOwnerAddresses`).
* @return Balances of each token owner, across all ERC1155 contracts and tokens.
*/
public async getBalancesAsync(): Promise<ERC1155HoldingsByOwner> {
this._validateDummyTokenContractsExistOrThrow();
this._validateBalancesAndAllowancesSetOrThrow();
const tokenHoldingsByOwner: ERC1155FungibleHoldingsByOwner = {};
const nonFungibleHoldingsByOwner: ERC1155NonFungibleHoldingsByOwner = {};
for (const dummyTokenWrapper of this._dummyTokenWrappers) {
const tokenContract = dummyTokenWrapper.getContract();
const tokenAddress = tokenContract.address;
// Construct batch balance call
const tokenOwners: string[] = [];
const tokenIds: BigNumber[] = [];
for (const tokenOwnerAddress of this._tokenOwnerAddresses) {
for (const tokenId of this._fungibleTokenIds) {
tokenOwners.push(tokenOwnerAddress);
tokenIds.push(new BigNumber(tokenId));
}
for (const nft of this._nfts) {
tokenOwners.push(tokenOwnerAddress);
tokenIds.push(nft.id);
}
}
const balances = await dummyTokenWrapper.getBalancesAsync(tokenOwners, tokenIds);
// Parse out balances into fungible / non-fungible token holdings
let i = 0;
for (const tokenOwnerAddress of this._tokenOwnerAddresses) {
// Fungible tokens
for (const tokenId of this._fungibleTokenIds) {
if (tokenHoldingsByOwner[tokenOwnerAddress] === undefined) {
tokenHoldingsByOwner[tokenOwnerAddress] = {};
}
if (tokenHoldingsByOwner[tokenOwnerAddress][tokenAddress] === undefined) {
tokenHoldingsByOwner[tokenOwnerAddress][tokenAddress] = {};
}
tokenHoldingsByOwner[tokenOwnerAddress][tokenAddress][tokenId] = balances[i++];
}
// Non-fungible tokens
for (const nft of this._nfts) {
if (nonFungibleHoldingsByOwner[tokenOwnerAddress] === undefined) {
nonFungibleHoldingsByOwner[tokenOwnerAddress] = {};
}
if (nonFungibleHoldingsByOwner[tokenOwnerAddress][tokenAddress] === undefined) {
nonFungibleHoldingsByOwner[tokenOwnerAddress][tokenAddress] = {};
}
if (
nonFungibleHoldingsByOwner[tokenOwnerAddress][tokenAddress][nft.tokenId.toString()] ===
undefined
) {
nonFungibleHoldingsByOwner[tokenOwnerAddress][tokenAddress][nft.tokenId.toString()] = [];
}
const isOwner = balances[i++];
if (isOwner.isEqualTo(1)) {
nonFungibleHoldingsByOwner[tokenOwnerAddress][tokenAddress][nft.tokenId.toString()].push(
nft.id,
);
}
}
}
}
const holdingsByOwner = {
fungible: tokenHoldingsByOwner,
nonFungible: nonFungibleHoldingsByOwner,
};
return holdingsByOwner;
}
/**
* @dev Checks if proxy is approved to transfer tokens on behalf of `userAddress`.
* @param userAddress owner of ERC1155 tokens.
* @param contractAddress address of ERC1155 contract.
* @return True iff the proxy is approved for all. False otherwise.
*/
public async isProxyApprovedForAllAsync(userAddress: string, contractAddress: string): Promise<boolean> {
this._validateProxyContractExistsOrThrow();
const tokenContract = this._getContractFromAddress(contractAddress);
const operator = (this._proxyContract as ERC1155ProxyContract).address;
const didApproveAll = await tokenContract.isApprovedForAll.callAsync(userAddress, operator);
return didApproveAll;
}
public getFungibleTokenIds(): BigNumber[] {
const fungibleTokenIds = _.map(this._fungibleTokenIds, (tokenIdAsString: string) => {
return new BigNumber(tokenIdAsString);
});
return fungibleTokenIds;
}
public getNonFungibleTokenIds(): BigNumber[] {
const nonFungibleTokenIds = _.map(this._nonFungibleTokenIds, (tokenIdAsString: string) => {
return new BigNumber(tokenIdAsString);
});
return nonFungibleTokenIds;
}
public getTokenOwnerAddresses(): string[] {
return this._tokenOwnerAddresses;
}
public getContractWrapper(contractAddress: string): Erc1155Wrapper {
const tokenWrapper = _.find(this._dummyTokenWrappers, (wrapper: Erc1155Wrapper) => {
return wrapper.getContract().address === contractAddress;
});
if (tokenWrapper === undefined) {
throw new Error(`Contract: ${contractAddress} was not deployed through ERC1155ProxyWrapper`);
}
return tokenWrapper;
}
private _getContractFromAddress(tokenAddress: string): ERC1155MintableContract {
const tokenContractIfExists = _.find(this._dummyTokenWrappers, c => c.getContract().address === tokenAddress);
if (tokenContractIfExists === undefined) {
throw new Error(`Token: ${tokenAddress} was not deployed through ERC1155ProxyWrapper`);
}
return tokenContractIfExists.getContract();
}
private _validateDummyTokenContractsExistOrThrow(): void {
if (this._dummyTokenWrappers === undefined) {
throw new Error('Dummy ERC1155 tokens not yet deployed, please call "deployDummyTokensAsync"');
}
}
private _validateProxyContractExistsOrThrow(): void {
if (this._proxyContract === undefined) {
throw new Error('ERC1155 proxy contract not yet deployed, please call "deployProxyAsync"');
}
}
private _validateBalancesAndAllowancesSetOrThrow(): void {
if (
_.keys(this._initialTokenIdsByOwner.fungible).length === 0 ||
_.keys(this._initialTokenIdsByOwner.nonFungible).length === 0
) {
throw new Error(
'Dummy ERC1155 balances and allowances not yet set, please call "setBalancesAndAllowancesAsync"',
);
}
}
}

View File

@@ -1,22 +1,16 @@
import { assetDataUtils } from '@0xproject/order-utils';
import { BigNumber } from '@0xproject/utils';
import { Web3Wrapper } from '@0xproject/web3-wrapper';
import { Provider } from 'ethereum-types';
import { artifacts as erc20Artifacts, DummyERC20TokenContract } from '@0x/contracts-erc20';
import { constants, ERC20BalancesByOwner, txDefaults } from '@0x/contracts-test-utils';
import { assetDataUtils } from '@0x/order-utils';
import { BigNumber } from '@0x/utils';
import { ZeroExProvider } from 'ethereum-types';
import * as _ from 'lodash';
import { DummyERC20TokenContract } from '../../generated_contract_wrappers/dummy_erc20_token';
import { ERC20ProxyContract } from '../../generated_contract_wrappers/erc20_proxy';
import { artifacts } from './artifacts';
import { constants } from './constants';
import { ERC20BalancesByOwner } from './types';
import { txDefaults } from './web3_wrapper';
import { artifacts, ERC20ProxyContract } from '../../src';
export class ERC20Wrapper {
private readonly _tokenOwnerAddresses: string[];
private readonly _contractOwnerAddress: string;
private readonly _web3Wrapper: Web3Wrapper;
private readonly _provider: Provider;
private readonly _provider: ZeroExProvider;
private readonly _dummyTokenContracts: DummyERC20TokenContract[];
private _proxyContract?: ERC20ProxyContract;
private _proxyIdIfExists?: string;
@@ -27,9 +21,8 @@ export class ERC20Wrapper {
* @param contractOwnerAddress Desired owner of the contract
* Instance of ERC20Wrapper
*/
constructor(provider: Provider, tokenOwnerAddresses: string[], contractOwnerAddress: string) {
constructor(provider: ZeroExProvider, tokenOwnerAddresses: string[], contractOwnerAddress: string) {
this._dummyTokenContracts = [];
this._web3Wrapper = new Web3Wrapper(provider);
this._provider = provider;
this._tokenOwnerAddresses = tokenOwnerAddresses;
this._contractOwnerAddress = contractOwnerAddress;
@@ -41,7 +34,7 @@ export class ERC20Wrapper {
for (let i = 0; i < numberToDeploy; i++) {
this._dummyTokenContracts.push(
await DummyERC20TokenContract.deployFrom0xArtifactAsync(
artifacts.DummyERC20Token,
erc20Artifacts.DummyERC20Token,
this._provider,
txDefaults,
constants.DUMMY_TOKEN_NAME,
@@ -71,20 +64,16 @@ export class ERC20Wrapper {
this._validateProxyContractExistsOrThrow();
for (const dummyTokenContract of this._dummyTokenContracts) {
for (const tokenOwnerAddress of this._tokenOwnerAddresses) {
await this._web3Wrapper.awaitTransactionSuccessAsync(
await dummyTokenContract.setBalance.sendTransactionAsync(
tokenOwnerAddress,
constants.INITIAL_ERC20_BALANCE,
{ from: this._contractOwnerAddress },
),
await dummyTokenContract.setBalance.awaitTransactionSuccessAsync(
tokenOwnerAddress,
constants.INITIAL_ERC20_BALANCE,
{ from: this._contractOwnerAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await dummyTokenContract.approve.sendTransactionAsync(
(this._proxyContract as ERC20ProxyContract).address,
constants.INITIAL_ERC20_ALLOWANCE,
{ from: tokenOwnerAddress },
),
await dummyTokenContract.approve.awaitTransactionSuccessAsync(
(this._proxyContract as ERC20ProxyContract).address,
constants.INITIAL_ERC20_ALLOWANCE,
{ from: tokenOwnerAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
@@ -97,10 +86,10 @@ export class ERC20Wrapper {
}
public async setBalanceAsync(userAddress: string, assetData: string, amount: BigNumber): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(assetData);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.setBalance.sendTransactionAsync(userAddress, amount, {
from: this._contractOwnerAddress,
}),
await tokenContract.setBalance.awaitTransactionSuccessAsync(
userAddress,
amount,
{ from: this._contractOwnerAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
@@ -113,10 +102,10 @@ export class ERC20Wrapper {
public async setAllowanceAsync(userAddress: string, assetData: string, amount: BigNumber): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(assetData);
const proxyAddress = (this._proxyContract as ERC20ProxyContract).address;
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.approve.sendTransactionAsync(proxyAddress, amount, {
from: userAddress,
}),
await tokenContract.approve.awaitTransactionSuccessAsync(
proxyAddress,
amount,
{ from: userAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
@@ -137,7 +126,7 @@ export class ERC20Wrapper {
_.forEach(balances, (balance, balanceIndex) => {
const tokenAddress = balanceInfo[balanceIndex].tokenAddress;
const tokenOwnerAddress = balanceInfo[balanceIndex].tokenOwnerAddress;
if (_.isUndefined(balancesByOwner[tokenOwnerAddress])) {
if (balancesByOwner[tokenOwnerAddress] === undefined) {
balancesByOwner[tokenOwnerAddress] = {};
}
const wrappedBalance = new BigNumber(balance);
@@ -146,7 +135,7 @@ export class ERC20Wrapper {
return balancesByOwner;
}
public addDummyTokenContract(dummy: DummyERC20TokenContract): void {
if (!_.isUndefined(this._dummyTokenContracts)) {
if (this._dummyTokenContracts !== undefined) {
this._dummyTokenContracts.push(dummy);
}
}
@@ -164,18 +153,18 @@ export class ERC20Wrapper {
const erc20ProxyData = assetDataUtils.decodeERC20AssetData(assetData);
const tokenAddress = erc20ProxyData.tokenAddress;
const tokenContractIfExists = _.find(this._dummyTokenContracts, c => c.address === tokenAddress);
if (_.isUndefined(tokenContractIfExists)) {
if (tokenContractIfExists === undefined) {
throw new Error(`Token: ${tokenAddress} was not deployed through ERC20Wrapper`);
}
return tokenContractIfExists;
}
private _validateDummyTokenContractsExistOrThrow(): void {
if (_.isUndefined(this._dummyTokenContracts)) {
if (this._dummyTokenContracts === undefined) {
throw new Error('Dummy ERC20 tokens not yet deployed, please call "deployDummyTokensAsync"');
}
}
private _validateProxyContractExistsOrThrow(): void {
if (_.isUndefined(this._proxyContract)) {
if (this._proxyContract === undefined) {
throw new Error('ERC20 proxy contract not yet deployed, please call "deployProxyAsync"');
}
}

View File

@@ -1,38 +1,32 @@
import { generatePseudoRandomSalt } from '@0xproject/order-utils';
import { BigNumber } from '@0xproject/utils';
import { Web3Wrapper } from '@0xproject/web3-wrapper';
import { Provider } from 'ethereum-types';
import { artifacts as erc721Artifacts, DummyERC721TokenContract } from '@0x/contracts-erc721';
import { constants, ERC721TokenIdsByOwner, txDefaults } from '@0x/contracts-test-utils';
import { generatePseudoRandomSalt } from '@0x/order-utils';
import { BigNumber } from '@0x/utils';
import { ZeroExProvider } from 'ethereum-types';
import * as _ from 'lodash';
import { DummyERC721TokenContract } from '../../generated_contract_wrappers/dummy_erc721_token';
import { ERC721ProxyContract } from '../../generated_contract_wrappers/erc721_proxy';
import { artifacts } from './artifacts';
import { constants } from './constants';
import { ERC721TokenIdsByOwner } from './types';
import { txDefaults } from './web3_wrapper';
import { artifacts, ERC721ProxyContract } from '../../src';
export class ERC721Wrapper {
private readonly _tokenOwnerAddresses: string[];
private readonly _contractOwnerAddress: string;
private readonly _web3Wrapper: Web3Wrapper;
private readonly _provider: Provider;
private readonly _provider: ZeroExProvider;
private readonly _dummyTokenContracts: DummyERC721TokenContract[];
private _proxyContract?: ERC721ProxyContract;
private _proxyIdIfExists?: string;
private _initialTokenIdsByOwner: ERC721TokenIdsByOwner = {};
constructor(provider: Provider, tokenOwnerAddresses: string[], contractOwnerAddress: string) {
this._web3Wrapper = new Web3Wrapper(provider);
constructor(provider: ZeroExProvider, tokenOwnerAddresses: string[], contractOwnerAddress: string) {
this._provider = provider;
this._dummyTokenContracts = [];
this._tokenOwnerAddresses = tokenOwnerAddresses;
this._contractOwnerAddress = contractOwnerAddress;
}
public async deployDummyTokensAsync(): Promise<DummyERC721TokenContract[]> {
for (let i = 0; i < constants.NUM_DUMMY_ERC721_TO_DEPLOY; i++) {
// tslint:disable-next-line:no-unused-variable
for (const i of _.times(constants.NUM_DUMMY_ERC721_TO_DEPLOY)) {
this._dummyTokenContracts.push(
await DummyERC721TokenContract.deployFrom0xArtifactAsync(
artifacts.DummyERC721Token,
erc721Artifacts.DummyERC721Token,
this._provider,
txDefaults,
constants.DUMMY_TOKEN_NAME,
@@ -61,15 +55,16 @@ export class ERC721Wrapper {
this._initialTokenIdsByOwner = {};
for (const dummyTokenContract of this._dummyTokenContracts) {
for (const tokenOwnerAddress of this._tokenOwnerAddresses) {
for (let i = 0; i < constants.NUM_ERC721_TOKENS_TO_MINT; i++) {
// tslint:disable-next-line:no-unused-variable
for (const i of _.times(constants.NUM_ERC721_TOKENS_TO_MINT)) {
const tokenId = generatePseudoRandomSalt();
await this.mintAsync(dummyTokenContract.address, tokenId, tokenOwnerAddress);
if (_.isUndefined(this._initialTokenIdsByOwner[tokenOwnerAddress])) {
if (this._initialTokenIdsByOwner[tokenOwnerAddress] === undefined) {
this._initialTokenIdsByOwner[tokenOwnerAddress] = {
[dummyTokenContract.address]: [],
};
}
if (_.isUndefined(this._initialTokenIdsByOwner[tokenOwnerAddress][dummyTokenContract.address])) {
if (this._initialTokenIdsByOwner[tokenOwnerAddress][dummyTokenContract.address] === undefined) {
this._initialTokenIdsByOwner[tokenOwnerAddress][dummyTokenContract.address] = [];
}
this._initialTokenIdsByOwner[tokenOwnerAddress][dummyTokenContract.address].push(tokenId);
@@ -93,20 +88,20 @@ export class ERC721Wrapper {
const tokenContract = this._getTokenContractFromAssetData(tokenAddress);
const tokenOwner = await this.ownerOfAsync(tokenAddress, tokenId);
const proxyAddress = (this._proxyContract as ERC721ProxyContract).address;
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.setApprovalForAll.sendTransactionAsync(proxyAddress, isApproved, {
from: tokenOwner,
}),
await tokenContract.setApprovalForAll.awaitTransactionSuccessAsync(
proxyAddress,
isApproved,
{ from: tokenOwner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
public async approveAsync(to: string, tokenAddress: string, tokenId: BigNumber): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(tokenAddress);
const tokenOwner = await this.ownerOfAsync(tokenAddress, tokenId);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.approve.sendTransactionAsync(to, tokenId, {
from: tokenOwner,
}),
await tokenContract.approve.awaitTransactionSuccessAsync(
to,
tokenId,
{ from: tokenOwner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
@@ -117,28 +112,29 @@ export class ERC721Wrapper {
userAddress: string,
): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(tokenAddress);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.transferFrom.sendTransactionAsync(currentOwner, userAddress, tokenId, {
from: currentOwner,
}),
await tokenContract.transferFrom.awaitTransactionSuccessAsync(
currentOwner,
userAddress,
tokenId,
{ from: currentOwner },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
public async mintAsync(tokenAddress: string, tokenId: BigNumber, userAddress: string): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(tokenAddress);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.mint.sendTransactionAsync(userAddress, tokenId, {
from: this._contractOwnerAddress,
}),
await tokenContract.mint.awaitTransactionSuccessAsync(
userAddress,
tokenId,
{ from: this._contractOwnerAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
public async burnAsync(tokenAddress: string, tokenId: BigNumber, owner: string): Promise<void> {
const tokenContract = this._getTokenContractFromAssetData(tokenAddress);
await this._web3Wrapper.awaitTransactionSuccessAsync(
await tokenContract.burn.sendTransactionAsync(owner, tokenId, {
from: this._contractOwnerAddress,
}),
await tokenContract.burn.awaitTransactionSuccessAsync(
owner,
tokenId,
{ from: this._contractOwnerAddress },
constants.AWAIT_TRANSACTION_MINED_MS,
);
}
@@ -191,12 +187,12 @@ export class ERC721Wrapper {
_.forEach(tokenOwnerAddresses, (tokenOwnerAddress, ownerIndex) => {
const tokenAddress = tokenInfo[ownerIndex].tokenAddress;
const tokenId = tokenInfo[ownerIndex].tokenId;
if (_.isUndefined(tokenIdsByOwner[tokenOwnerAddress])) {
if (tokenIdsByOwner[tokenOwnerAddress] === undefined) {
tokenIdsByOwner[tokenOwnerAddress] = {
[tokenAddress]: [],
};
}
if (_.isUndefined(tokenIdsByOwner[tokenOwnerAddress][tokenAddress])) {
if (tokenIdsByOwner[tokenOwnerAddress][tokenAddress] === undefined) {
tokenIdsByOwner[tokenOwnerAddress][tokenAddress] = [];
}
tokenIdsByOwner[tokenOwnerAddress][tokenAddress].push(tokenId);
@@ -212,18 +208,18 @@ export class ERC721Wrapper {
}
private _getTokenContractFromAssetData(tokenAddress: string): DummyERC721TokenContract {
const tokenContractIfExists = _.find(this._dummyTokenContracts, c => c.address === tokenAddress);
if (_.isUndefined(tokenContractIfExists)) {
if (tokenContractIfExists === undefined) {
throw new Error(`Token: ${tokenAddress} was not deployed through ERC20Wrapper`);
}
return tokenContractIfExists;
}
private _validateDummyTokenContractsExistOrThrow(): void {
if (_.isUndefined(this._dummyTokenContracts)) {
if (this._dummyTokenContracts === undefined) {
throw new Error('Dummy ERC721 tokens not yet deployed, please call "deployDummyTokensAsync"');
}
}
private _validateProxyContractExistsOrThrow(): void {
if (_.isUndefined(this._proxyContract)) {
if (this._proxyContract === undefined) {
throw new Error('ERC721 proxy contract not yet deployed, please call "deployProxyAsync"');
}
}

View File

@@ -0,0 +1,3 @@
export * from './erc20_wrapper';
export * from './erc721_wrapper';
export * from './erc1155_proxy_wrapper';

View File

@@ -0,0 +1,18 @@
{
"extends": "../../tsconfig",
"compilerOptions": { "outDir": "lib", "rootDir": ".", "resolveJsonModule": true },
"include": ["./src/**/*", "./test/**/*", "./generated-wrappers/**/*"],
"files": [
"generated-artifacts/ERC1155Proxy.json",
"generated-artifacts/ERC20Proxy.json",
"generated-artifacts/ERC721Proxy.json",
"generated-artifacts/IAssetData.json",
"generated-artifacts/IAssetProxy.json",
"generated-artifacts/IAuthorizable.json",
"generated-artifacts/MixinAuthorizable.json",
"generated-artifacts/MultiAssetProxy.json",
"generated-artifacts/StaticCallProxy.json",
"generated-artifacts/TestStaticCallTarget.json"
],
"exclude": ["./deploy/solc/solc_bin"]
}

View File

@@ -1,5 +1,5 @@
{
"extends": ["@0xproject/tslint-config"],
"extends": ["@0x/tslint-config"],
"rules": {
"custom-no-magic-numbers": false
}

View File

@@ -0,0 +1,101 @@
[
{
"timestamp": 1563047529,
"version": "2.0.6",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1563006338,
"version": "2.0.5",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1558712885,
"version": "2.0.4",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1557961111,
"version": "2.0.3",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1557799313,
"version": "2.0.2",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1557507213,
"version": "2.0.1",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "2.0.0",
"changes": [
{
"note": "Make `decodeOrdersFromFillData`, `getCoordinatorApprovalHash`, and `getTransactionHash` public",
"pr": 1729
},
{
"note": "Make `assertValidTransactionOrdersApproval` internal",
"pr": 1729
}
],
"timestamp": 1554997931
},
{
"version": "1.1.0",
"changes": [
{
"note": "Run Web3ProviderEngine without excess block polling",
"pr": 1695
}
],
"timestamp": 1553183790
},
{
"version": "1.0.0",
"changes": [
{
"note": "Created Coordinator package"
},
{
"note": "Use separate EIP712 domains for transactions and approvals",
"pr": 1705
},
{
"note": "Add `SignatureType.Invalid`",
"pr": 1705
},
{
"note": "Set `evmVersion` to `constantinople`",
"pr": 1707
}
],
"timestamp": 1553091633
}
]

View File

@@ -0,0 +1,46 @@
<!--
changelogUtils.file is auto-generated using the monorepo-scripts package. Don't edit directly.
Edit the package's CHANGELOG.json file only.
-->
CHANGELOG
## v2.0.6 - _July 13, 2019_
* Dependencies updated
## v2.0.5 - _July 13, 2019_
* Dependencies updated
## v2.0.4 - _May 24, 2019_
* Dependencies updated
## v2.0.3 - _May 15, 2019_
* Dependencies updated
## v2.0.2 - _May 14, 2019_
* Dependencies updated
## v2.0.1 - _May 10, 2019_
* Dependencies updated
## v2.0.0 - _April 11, 2019_
* Make `decodeOrdersFromFillData`, `getCoordinatorApprovalHash`, and `getTransactionHash` public (#1729)
* Make `assertValidTransactionOrdersApproval` internal (#1729)
## v1.1.0 - _March 21, 2019_
* Run Web3ProviderEngine without excess block polling (#1695)
## v1.0.0 - _March 20, 2019_
* Created Coordinator package
* Use separate EIP712 domains for transactions and approvals (#1705)
* Add `SignatureType.Invalid` (#1705)
* Set `evmVersion` to `constantinople` (#1707)

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1,73 @@
## Coordinator
This package contains a contract that allows users to call arbitrary functions on the Exchange contract with permission from one or more Coordinators. Addresses of the deployed contracts can be found in the 0x [wiki](https://0xproject.com/wiki#Deployed-Addresses) or the [DEPLOYS](./DEPLOYS.json) file within this package.
## Installation
**Install**
```bash
npm install @0x/contracts-coordinator --save
```
## Bug bounty
A bug bounty for the 2.0.0 contracts is ongoing! Instructions can be found [here](https://0xproject.com/wiki#Bug-Bounty).
## Contributing
We strongly recommend that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.
For proposals regarding the 0x protocol's smart contract architecture, message format, or additional functionality, go to the [0x Improvement Proposals (ZEIPs)](https://github.com/0xProject/ZEIPs) repository and follow the contribution guidelines provided therein.
Please read our [contribution guidelines](../../CONTRIBUTING.md) before getting started.
### Install Dependencies
If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
```bash
yarn config set workspaces-experimental true
```
Then install dependencies
```bash
yarn install
```
### Build
To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:
```bash
PKG=@0x/contracts-coordinator yarn build
```
Or continuously rebuild on change:
```bash
PKG=@0x/contracts-coordinator yarn watch
```
### Clean
```bash
yarn clean
```
### Lint
```bash
yarn lint
```
### Run Tests
```bash
yarn test
```
#### Testing options
Contracts testing options like coverage, profiling, revert traces or backing node choosing - are described [here](../TESTING.md).

View File

@@ -0,0 +1,26 @@
{
"artifactsDir": "./generated-artifacts",
"contractsDir": "./contracts",
"useDockerisedSolc": false,
"compilerSettings": {
"evmVersion": "constantinople",
"optimizer": {
"enabled": true,
"runs": 1000000,
"details": { "yul": true, "deduplicate": true, "cse": true, "constantOptimizer": true }
},
"outputSelection": {
"*": {
"*": [
"abi",
"devdoc",
"evm.bytecode.object",
"evm.bytecode.sourceMap",
"evm.deployedBytecode.object",
"evm.deployedBytecode.sourceMap"
]
}
}
},
"contracts": ["src/Coordinator.sol", "src/registry/CoordinatorRegistry.sol"]
}

View File

@@ -0,0 +1,39 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "./libs/LibConstants.sol";
import "./MixinSignatureValidator.sol";
import "./MixinCoordinatorApprovalVerifier.sol";
import "./MixinCoordinatorCore.sol";
// solhint-disable no-empty-blocks
contract Coordinator is
LibConstants,
MixinSignatureValidator,
MixinCoordinatorApprovalVerifier,
MixinCoordinatorCore
{
constructor (address _exchange)
public
LibConstants(_exchange)
{}
}

View File

@@ -0,0 +1,203 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "@0x/contracts-exchange-libs/contracts/src/LibExchangeSelectors.sol";
import "@0x/contracts-exchange-libs/contracts/src/LibOrder.sol";
import "@0x/contracts-utils/contracts/src/LibBytes.sol";
import "@0x/contracts-utils/contracts/src/LibAddressArray.sol";
import "./libs/LibCoordinatorApproval.sol";
import "./libs/LibZeroExTransaction.sol";
import "./mixins/MSignatureValidator.sol";
import "./mixins/MCoordinatorApprovalVerifier.sol";
// solhint-disable avoid-tx-origin
contract MixinCoordinatorApprovalVerifier is
LibExchangeSelectors,
LibCoordinatorApproval,
LibZeroExTransaction,
MSignatureValidator,
MCoordinatorApprovalVerifier
{
using LibBytes for bytes;
using LibAddressArray for address[];
/// @dev Validates that the 0x transaction has been approved by all of the feeRecipients
/// that correspond to each order in the transaction's Exchange calldata.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order in the transaction's Exchange calldata.
function assertValidCoordinatorApprovals(
LibZeroExTransaction.ZeroExTransaction memory transaction,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
public
view
{
// Get the orders from the the Exchange calldata in the 0x transaction
LibOrder.Order[] memory orders = decodeOrdersFromFillData(transaction.data);
// No approval is required for non-fill methods
if (orders.length > 0) {
// Revert if approval is invalid for transaction orders
assertValidTransactionOrdersApproval(
transaction,
orders,
txOrigin,
transactionSignature,
approvalExpirationTimeSeconds,
approvalSignatures
);
}
}
/// @dev Decodes the orders from Exchange calldata representing any fill method.
/// @param data Exchange calldata representing a fill method.
/// @return The orders from the Exchange calldata.
function decodeOrdersFromFillData(bytes memory data)
public
pure
returns (LibOrder.Order[] memory orders)
{
bytes4 selector = data.readBytes4(0);
if (
selector == FILL_ORDER_SELECTOR ||
selector == FILL_ORDER_NO_THROW_SELECTOR ||
selector == FILL_OR_KILL_ORDER_SELECTOR
) {
// Decode single order
(LibOrder.Order memory order) = abi.decode(
data.slice(4, data.length),
(LibOrder.Order)
);
orders = new LibOrder.Order[](1);
orders[0] = order;
} else if (
selector == BATCH_FILL_ORDERS_SELECTOR ||
selector == BATCH_FILL_ORDERS_NO_THROW_SELECTOR ||
selector == BATCH_FILL_OR_KILL_ORDERS_SELECTOR ||
selector == MARKET_BUY_ORDERS_SELECTOR ||
selector == MARKET_BUY_ORDERS_NO_THROW_SELECTOR ||
selector == MARKET_SELL_ORDERS_SELECTOR ||
selector == MARKET_SELL_ORDERS_NO_THROW_SELECTOR
) {
// Decode all orders
// solhint-disable indent
(orders) = abi.decode(
data.slice(4, data.length),
(LibOrder.Order[])
);
} else if (selector == MATCH_ORDERS_SELECTOR) {
// Decode left and right orders
(LibOrder.Order memory leftOrder, LibOrder.Order memory rightOrder) = abi.decode(
data.slice(4, data.length),
(LibOrder.Order, LibOrder.Order)
);
// Create array of orders
orders = new LibOrder.Order[](2);
orders[0] = leftOrder;
orders[1] = rightOrder;
}
return orders;
}
/// @dev Validates that the feeRecipients of a batch of order have approved a 0x transaction.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param orders Array of order structs containing order specifications.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order.
function assertValidTransactionOrdersApproval(
LibZeroExTransaction.ZeroExTransaction memory transaction,
LibOrder.Order[] memory orders,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
internal
view
{
// Verify that Ethereum tx signer is the same as the approved txOrigin
require(
tx.origin == txOrigin,
"INVALID_ORIGIN"
);
// Hash 0x transaction
bytes32 transactionHash = getTransactionHash(transaction);
// Create empty list of approval signers
address[] memory approvalSignerAddresses = new address[](0);
uint256 signaturesLength = approvalSignatures.length;
for (uint256 i = 0; i != signaturesLength; i++) {
// Create approval message
uint256 currentApprovalExpirationTimeSeconds = approvalExpirationTimeSeconds[i];
CoordinatorApproval memory approval = CoordinatorApproval({
txOrigin: txOrigin,
transactionHash: transactionHash,
transactionSignature: transactionSignature,
approvalExpirationTimeSeconds: currentApprovalExpirationTimeSeconds
});
// Ensure approval has not expired
require(
// solhint-disable-next-line not-rely-on-time
currentApprovalExpirationTimeSeconds > block.timestamp,
"APPROVAL_EXPIRED"
);
// Hash approval message and recover signer address
bytes32 approvalHash = getCoordinatorApprovalHash(approval);
address approvalSignerAddress = getSignerAddress(approvalHash, approvalSignatures[i]);
// Add approval signer to list of signers
approvalSignerAddresses = approvalSignerAddresses.append(approvalSignerAddress);
}
// Ethereum transaction signer gives implicit signature of approval
approvalSignerAddresses = approvalSignerAddresses.append(tx.origin);
uint256 ordersLength = orders.length;
for (uint256 i = 0; i != ordersLength; i++) {
// Do not check approval if the order's senderAddress is null
if (orders[i].senderAddress == address(0)) {
continue;
}
// Ensure feeRecipient of order has approved this 0x transaction
address approverAddress = orders[i].feeRecipientAddress;
bool isOrderApproved = approvalSignerAddresses.contains(approverAddress);
require(
isOrderApproved,
"INVALID_APPROVAL_SIGNATURE"
);
}
}
}

View File

@@ -0,0 +1,65 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "./libs/LibZeroExTransaction.sol";
import "./libs/LibConstants.sol";
import "./mixins/MCoordinatorApprovalVerifier.sol";
import "./interfaces/ICoordinatorCore.sol";
contract MixinCoordinatorCore is
LibConstants,
MCoordinatorApprovalVerifier,
ICoordinatorCore
{
/// @dev Executes a 0x transaction that has been signed by the feeRecipients that correspond to each order in the transaction's Exchange calldata.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order in the transaction's Exchange calldata.
function executeTransaction(
LibZeroExTransaction.ZeroExTransaction memory transaction,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
public
{
// Validate that the 0x transaction has been approves by each feeRecipient
assertValidCoordinatorApprovals(
transaction,
txOrigin,
transactionSignature,
approvalExpirationTimeSeconds,
approvalSignatures
);
// Execute the transaction
EXCHANGE.executeTransaction(
transaction.salt,
transaction.signerAddress,
transaction.data,
transactionSignature
);
}
}

View File

@@ -0,0 +1,118 @@
/*
Copyright 2018 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.5.5;
import "@0x/contracts-utils/contracts/src/LibBytes.sol";
import "./mixins/MSignatureValidator.sol";
contract MixinSignatureValidator is
MSignatureValidator
{
using LibBytes for bytes;
/// @dev Recovers the address of a signer given a hash and signature.
/// @param hash Any 32 byte hash.
/// @param signature Proof that the hash has been signed by signer.
function getSignerAddress(bytes32 hash, bytes memory signature)
public
pure
returns (address signerAddress)
{
require(
signature.length > 0,
"LENGTH_GREATER_THAN_0_REQUIRED"
);
// Pop last byte off of signature byte array.
uint8 signatureTypeRaw = uint8(signature.popLastByte());
// Ensure signature is supported
require(
signatureTypeRaw < uint8(SignatureType.NSignatureTypes),
"SIGNATURE_UNSUPPORTED"
);
SignatureType signatureType = SignatureType(signatureTypeRaw);
// Always illegal signature.
// This is always an implicit option since a signer can create a
// signature array with invalid type or length. We may as well make
// it an explicit option. This aids testing and analysis. It is
// also the initialization value for the enum type.
if (signatureType == SignatureType.Illegal) {
revert("SIGNATURE_ILLEGAL");
// Always invalid signature.
// Like Illegal, this is always implicitly available and therefore
// offered explicitly. It can be implicitly created by providing
// a correctly formatted but incorrect signature.
} else if (signatureType == SignatureType.Invalid) {
require(
signature.length == 0,
"LENGTH_0_REQUIRED"
);
revert("SIGNATURE_INVALID");
// Signature using EIP712
} else if (signatureType == SignatureType.EIP712) {
require(
signature.length == 65,
"LENGTH_65_REQUIRED"
);
uint8 v = uint8(signature[0]);
bytes32 r = signature.readBytes32(1);
bytes32 s = signature.readBytes32(33);
signerAddress = ecrecover(
hash,
v,
r,
s
);
return signerAddress;
// Signed using web3.eth_sign
} else if (signatureType == SignatureType.EthSign) {
require(
signature.length == 65,
"LENGTH_65_REQUIRED"
);
uint8 v = uint8(signature[0]);
bytes32 r = signature.readBytes32(1);
bytes32 s = signature.readBytes32(33);
signerAddress = ecrecover(
keccak256(abi.encodePacked(
"\x19Ethereum Signed Message:\n32",
hash
)),
v,
r,
s
);
return signerAddress;
}
// Anything else is illegal (We do not return false because
// the signature may actually be valid, just not in a format
// that we currently support. In this case returning false
// may lead the caller to incorrectly believe that the
// signature was invalid.)
revert("SIGNATURE_UNSUPPORTED");
}
}

View File

@@ -0,0 +1,52 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "@0x/contracts-exchange-libs/contracts/src/LibOrder.sol";
import "../libs/LibZeroExTransaction.sol";
contract ICoordinatorApprovalVerifier {
/// @dev Validates that the 0x transaction has been approved by all of the feeRecipients
/// that correspond to each order in the transaction's Exchange calldata.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order in the transaction's Exchange calldata.
function assertValidCoordinatorApprovals(
LibZeroExTransaction.ZeroExTransaction memory transaction,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
public
view;
/// @dev Decodes the orders from Exchange calldata representing any fill method.
/// @param data Exchange calldata representing a fill method.
/// @return The orders from the Exchange calldata.
function decodeOrdersFromFillData(bytes memory data)
public
pure
returns (LibOrder.Order[] memory orders);
}

View File

@@ -0,0 +1,41 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "../libs/LibZeroExTransaction.sol";
contract ICoordinatorCore {
/// @dev Executes a 0x transaction that has been signed by the feeRecipients that correspond to each order in the transaction's Exchange calldata.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order in the transaction's Exchange calldata.
function executeTransaction(
LibZeroExTransaction.ZeroExTransaction memory transaction,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
public;
}

View File

@@ -0,0 +1,31 @@
/*
Copyright 2018 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.5.5;
contract ISignatureValidator {
/// @dev Recovers the address of a signer given a hash and signature.
/// @param hash Any 32 byte hash.
/// @param signature Proof that the hash has been signed by signer.
function getSignerAddress(bytes32 hash, bytes memory signature)
public
pure
returns (address signerAddress);
}

View File

@@ -15,7 +15,7 @@
limitations under the License.
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
contract ITransactions {
@@ -28,8 +28,8 @@ contract ITransactions {
function executeTransaction(
uint256 salt,
address signerAddress,
bytes data,
bytes signature
bytes calldata data,
bytes calldata signature
)
external;
}

View File

@@ -0,0 +1,34 @@
/*
Copyright 2018 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.5.5;
import "../interfaces/ITransactions.sol";
contract LibConstants {
// solhint-disable-next-line var-name-mixedcase
ITransactions internal EXCHANGE;
constructor (address _exchange)
public
{
EXCHANGE = ITransactions(_exchange);
}
}

View File

@@ -0,0 +1,98 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "./LibEIP712Domain.sol";
contract LibCoordinatorApproval is
LibEIP712Domain
{
// Hash for the EIP712 Coordinator approval message
// keccak256(abi.encodePacked(
// "CoordinatorApproval(",
// "address txOrigin,",
// "bytes32 transactionHash,",
// "bytes transactionSignature,",
// "uint256 approvalExpirationTimeSeconds",
// ")"
// ));
bytes32 constant internal EIP712_COORDINATOR_APPROVAL_SCHEMA_HASH = 0x2fbcdbaa76bc7589916958ae919dfbef04d23f6bbf26de6ff317b32c6cc01e05;
struct CoordinatorApproval {
address txOrigin; // Required signer of Ethereum transaction that is submitting approval.
bytes32 transactionHash; // EIP712 hash of the transaction.
bytes transactionSignature; // Signature of the 0x transaction.
uint256 approvalExpirationTimeSeconds; // Timestamp in seconds for which the approval expires.
}
/// @dev Calculated the EIP712 hash of the Coordinator approval mesasage using the domain separator of this contract.
/// @param approval Coordinator approval message containing the transaction hash, transaction signature, and expiration of the approval.
/// @return EIP712 hash of the Coordinator approval message with the domain separator of this contract.
function getCoordinatorApprovalHash(CoordinatorApproval memory approval)
public
view
returns (bytes32 approvalHash)
{
approvalHash = hashEIP712CoordinatorMessage(hashCoordinatorApproval(approval));
return approvalHash;
}
/// @dev Calculated the EIP712 hash of the Coordinator approval mesasage with no domain separator.
/// @param approval Coordinator approval message containing the transaction hash, transaction signature, and expiration of the approval.
/// @return EIP712 hash of the Coordinator approval message with no domain separator.
function hashCoordinatorApproval(CoordinatorApproval memory approval)
internal
pure
returns (bytes32 result)
{
bytes32 schemaHash = EIP712_COORDINATOR_APPROVAL_SCHEMA_HASH;
bytes memory transactionSignature = approval.transactionSignature;
address txOrigin = approval.txOrigin;
bytes32 transactionHash = approval.transactionHash;
uint256 approvalExpirationTimeSeconds = approval.approvalExpirationTimeSeconds;
// Assembly for more efficiently computing:
// keccak256(abi.encodePacked(
// EIP712_COORDINATOR_APPROVAL_SCHEMA_HASH,
// approval.txOrigin,
// approval.transactionHash,
// keccak256(approval.transactionSignature)
// approval.approvalExpirationTimeSeconds,
// ));
assembly {
// Compute hash of transaction signature
let transactionSignatureHash := keccak256(add(transactionSignature, 32), mload(transactionSignature))
// Load free memory pointer
let memPtr := mload(64)
mstore(memPtr, schemaHash) // hash of schema
mstore(add(memPtr, 32), txOrigin) // txOrigin
mstore(add(memPtr, 64), transactionHash) // transactionHash
mstore(add(memPtr, 96), transactionSignatureHash) // transactionSignatureHash
mstore(add(memPtr, 128), approvalExpirationTimeSeconds) // approvalExpirationTimeSeconds
// Compute hash
result := keccak256(memPtr, 160)
}
return result;
}
}

View File

@@ -0,0 +1,131 @@
/*
Copyright 2018 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.5.5;
import "./LibConstants.sol";
contract LibEIP712Domain is
LibConstants
{
// EIP191 header for EIP712 prefix
string constant internal EIP191_HEADER = "\x19\x01";
// EIP712 Domain Name value for the Coordinator
string constant internal EIP712_COORDINATOR_DOMAIN_NAME = "0x Protocol Coordinator";
// EIP712 Domain Version value for the Coordinator
string constant internal EIP712_COORDINATOR_DOMAIN_VERSION = "1.0.0";
// EIP712 Domain Name value for the Exchange
string constant internal EIP712_EXCHANGE_DOMAIN_NAME = "0x Protocol";
// EIP712 Domain Version value for the Exchange
string constant internal EIP712_EXCHANGE_DOMAIN_VERSION = "2";
// Hash of the EIP712 Domain Separator Schema
bytes32 constant internal EIP712_DOMAIN_SEPARATOR_SCHEMA_HASH = keccak256(abi.encodePacked(
"EIP712Domain(",
"string name,",
"string version,",
"address verifyingContract",
")"
));
// Hash of the EIP712 Domain Separator data for the Coordinator
// solhint-disable-next-line var-name-mixedcase
bytes32 public EIP712_COORDINATOR_DOMAIN_HASH;
// Hash of the EIP712 Domain Separator data for the Exchange
// solhint-disable-next-line var-name-mixedcase
bytes32 public EIP712_EXCHANGE_DOMAIN_HASH;
constructor ()
public
{
EIP712_COORDINATOR_DOMAIN_HASH = keccak256(abi.encodePacked(
EIP712_DOMAIN_SEPARATOR_SCHEMA_HASH,
keccak256(bytes(EIP712_COORDINATOR_DOMAIN_NAME)),
keccak256(bytes(EIP712_COORDINATOR_DOMAIN_VERSION)),
uint256(address(this))
));
EIP712_EXCHANGE_DOMAIN_HASH = keccak256(abi.encodePacked(
EIP712_DOMAIN_SEPARATOR_SCHEMA_HASH,
keccak256(bytes(EIP712_EXCHANGE_DOMAIN_NAME)),
keccak256(bytes(EIP712_EXCHANGE_DOMAIN_VERSION)),
uint256(address(EXCHANGE))
));
}
/// @dev Calculates EIP712 encoding for a hash struct in the EIP712 domain
/// of this contract.
/// @param hashStruct The EIP712 hash struct.
/// @return EIP712 hash applied to this EIP712 Domain.
function hashEIP712CoordinatorMessage(bytes32 hashStruct)
internal
view
returns (bytes32 result)
{
return hashEIP712Message(EIP712_COORDINATOR_DOMAIN_HASH, hashStruct);
}
/// @dev Calculates EIP712 encoding for a hash struct in the EIP712 domain
/// of the Exchange contract.
/// @param hashStruct The EIP712 hash struct.
/// @return EIP712 hash applied to the Exchange EIP712 Domain.
function hashEIP712ExchangeMessage(bytes32 hashStruct)
internal
view
returns (bytes32 result)
{
return hashEIP712Message(EIP712_EXCHANGE_DOMAIN_HASH, hashStruct);
}
/// @dev Calculates EIP712 encoding for a hash struct with a given domain hash.
/// @param eip712DomainHash Hash of the domain domain separator data.
/// @param hashStruct The EIP712 hash struct.
/// @return EIP712 hash applied to the Exchange EIP712 Domain.
function hashEIP712Message(bytes32 eip712DomainHash, bytes32 hashStruct)
internal
pure
returns (bytes32 result)
{
// Assembly for more efficient computing:
// keccak256(abi.encodePacked(
// EIP191_HEADER,
// EIP712_DOMAIN_HASH,
// hashStruct
// ));
assembly {
// Load free memory pointer
let memPtr := mload(64)
mstore(memPtr, 0x1901000000000000000000000000000000000000000000000000000000000000) // EIP191 header
mstore(add(memPtr, 2), eip712DomainHash) // EIP712 domain hash
mstore(add(memPtr, 34), hashStruct) // Hash of struct
// Compute hash
result := keccak256(memPtr, 66)
}
return result;
}
}

View File

@@ -0,0 +1,95 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "./LibEIP712Domain.sol";
contract LibZeroExTransaction is
LibEIP712Domain
{
// Hash for the EIP712 0x transaction schema
// keccak256(abi.encodePacked(
// "ZeroExTransaction(",
// "uint256 salt,",
// "address signerAddress,",
// "bytes data",
// ")"
// ));
bytes32 constant internal EIP712_ZEROEX_TRANSACTION_SCHEMA_HASH = 0x213c6f636f3ea94e701c0adf9b2624aa45a6c694f9a292c094f9a81c24b5df4c;
struct ZeroExTransaction {
uint256 salt; // Arbitrary number to ensure uniqueness of transaction hash.
address signerAddress; // Address of transaction signer.
bytes data; // AbiV2 encoded calldata.
}
/// @dev Calculates the EIP712 hash of a 0x transaction using the domain separator of the Exchange contract.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @return EIP712 hash of the transaction with the domain separator of this contract.
function getTransactionHash(ZeroExTransaction memory transaction)
public
view
returns (bytes32 transactionHash)
{
// Hash the transaction with the domain separator of the Exchange contract.
transactionHash = hashEIP712ExchangeMessage(hashZeroExTransaction(transaction));
return transactionHash;
}
/// @dev Calculates EIP712 hash of the 0x transaction with no domain separator.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @return EIP712 hash of the transaction with no domain separator.
function hashZeroExTransaction(ZeroExTransaction memory transaction)
internal
pure
returns (bytes32 result)
{
bytes32 schemaHash = EIP712_ZEROEX_TRANSACTION_SCHEMA_HASH;
bytes memory data = transaction.data;
uint256 salt = transaction.salt;
address signerAddress = transaction.signerAddress;
// Assembly for more efficiently computing:
// keccak256(abi.encodePacked(
// EIP712_ZEROEX_TRANSACTION_SCHEMA_HASH,
// transaction.salt,
// uint256(transaction.signerAddress),
// keccak256(transaction.data)
// ));
assembly {
// Compute hash of data
let dataHash := keccak256(add(data, 32), mload(data))
// Load free memory pointer
let memPtr := mload(64)
mstore(memPtr, schemaHash) // hash of schema
mstore(add(memPtr, 32), salt) // salt
mstore(add(memPtr, 64), and(signerAddress, 0xffffffffffffffffffffffffffffffffffffffff)) // signerAddress
mstore(add(memPtr, 96), dataHash) // hash of data
// Compute hash
result := keccak256(memPtr, 128)
}
return result;
}
}

View File

@@ -0,0 +1,46 @@
/*
Copyright 2018 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.5.5;
pragma experimental "ABIEncoderV2";
import "@0x/contracts-exchange-libs/contracts/src/LibOrder.sol";
import "../interfaces/ICoordinatorApprovalVerifier.sol";
contract MCoordinatorApprovalVerifier is
ICoordinatorApprovalVerifier
{
/// @dev Validates that the feeRecipients of a batch of order have approved a 0x transaction.
/// @param transaction 0x transaction containing salt, signerAddress, and data.
/// @param orders Array of order structs containing order specifications.
/// @param txOrigin Required signer of Ethereum transaction calling this function.
/// @param transactionSignature Proof that the transaction has been signed by the signer.
/// @param approvalExpirationTimeSeconds Array of expiration times in seconds for which each corresponding approval signature expires.
/// @param approvalSignatures Array of signatures that correspond to the feeRecipients of each order.
function assertValidTransactionOrdersApproval(
LibZeroExTransaction.ZeroExTransaction memory transaction,
LibOrder.Order[] memory orders,
address txOrigin,
bytes memory transactionSignature,
uint256[] memory approvalExpirationTimeSeconds,
bytes[] memory approvalSignatures
)
internal
view;
}

View File

@@ -16,7 +16,7 @@
*/
pragma solidity 0.4.24;
pragma solidity ^0.5.5;
import "../interfaces/ISignatureValidator.sol";
@@ -24,23 +24,12 @@ import "../interfaces/ISignatureValidator.sol";
contract MSignatureValidator is
ISignatureValidator
{
event SignatureValidatorApproval(
address indexed signerAddress, // Address that approves or disapproves a contract to verify signatures.
address indexed validatorAddress, // Address of signature validator contract.
bool approved // Approval or disapproval of validator contract.
);
// Allowed signature types.
enum SignatureType {
Illegal, // 0x00, default value
Invalid, // 0x01
EIP712, // 0x02
EthSign, // 0x03
Caller, // 0x04
Wallet, // 0x05
Validator, // 0x06
PreSigned, // 0x07
Trezor, // 0x08
NSignatureTypes // 0x09, number of signature types. Always leave at end.
NSignatureTypes // 0x04, number of signature types. Always leave at end.
}
}

View File

@@ -0,0 +1,32 @@
/*
Copyright 2018 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.5.5;
import "./MixinCoordinatorRegistryCore.sol";
// solhint-disable no-empty-blocks
contract CoordinatorRegistry is
MixinCoordinatorRegistryCore
{
constructor ()
public
MixinCoordinatorRegistryCore()
{}
}

View File

@@ -0,0 +1,48 @@
/*
Copyright 2018 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.5.5;
import "./interfaces/ICoordinatorRegistryCore.sol";
// solhint-disable no-empty-blocks
contract MixinCoordinatorRegistryCore is
ICoordinatorRegistryCore
{
// mapping from `coordinatorOperator` -> `coordinatorEndpoint`
mapping (address => string) internal coordinatorEndpoints;
/// @dev Called by a Coordinator operator to set the endpoint of their Coordinator.
/// @param coordinatorEndpoint endpoint of the Coordinator.
function setCoordinatorEndpoint(string calldata coordinatorEndpoint) external {
address coordinatorOperator = msg.sender;
coordinatorEndpoints[coordinatorOperator] = coordinatorEndpoint;
emit CoordinatorEndpointSet(coordinatorOperator, coordinatorEndpoint);
}
/// @dev Gets the endpoint for a Coordinator.
/// @param coordinatorOperator operator of the Coordinator endpoint.
function getCoordinatorEndpoint(address coordinatorOperator)
external
view
returns (string memory coordinatorEndpoint)
{
return coordinatorEndpoints[coordinatorOperator];
}
}

View File

@@ -0,0 +1,41 @@
/*
Copyright 2018 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.5.5;
// solhint-disable no-empty-blocks
contract ICoordinatorRegistryCore
{
/// @dev Emitted when a Coordinator endpoint is set.
event CoordinatorEndpointSet(
address coordinatorOperator,
string coordinatorEndpoint
);
/// @dev Called by a Coordinator operator to set the endpoint of their Coordinator.
/// @param coordinatorEndpoint endpoint of the Coordinator.
function setCoordinatorEndpoint(string calldata coordinatorEndpoint) external;
/// @dev Gets the endpoint for a Coordinator.
/// @param coordinatorOperator operator of the Coordinator endpoint.
function getCoordinatorEndpoint(address coordinatorOperator)
external
view
returns (string memory coordinatorEndpoint);
}

View File

@@ -0,0 +1,89 @@
{
"name": "@0x/contracts-coordinator",
"version": "2.0.6",
"engines": {
"node": ">=6.12"
},
"description": "Smart contract extensions of 0x protocol",
"main": "lib/src/index.js",
"directories": {
"test": "test"
},
"scripts": {
"build": "yarn pre_build && tsc -b",
"build:ci": "yarn build",
"pre_build": "run-s compile generate_contract_wrappers",
"test": "yarn run_mocha",
"rebuild_and_test": "run-s build test",
"test:coverage": "SOLIDITY_COVERAGE=true run-s build run_mocha coverage:report:text coverage:report:lcov",
"test:profiler": "SOLIDITY_PROFILER=true run-s build run_mocha profiler:report:html",
"test:trace": "SOLIDITY_REVERT_TRACE=true run-s build run_mocha",
"run_mocha": "mocha --require source-map-support/register --require make-promises-safe 'lib/test/**/*.js' --timeout 100000 --bail --exit",
"compile": "sol-compiler",
"watch": "sol-compiler -w",
"clean": "shx rm -rf lib generated-artifacts generated-wrappers",
"generate_contract_wrappers": "abi-gen --abis ${npm_package_config_abis} --template ../../node_modules/@0x/abi-gen-templates/contract.handlebars --partials '../../node_modules/@0x/abi-gen-templates/partials/**/*.handlebars' --output generated-wrappers --backend ethers",
"lint": "tslint --format stylish --project . --exclude ./generated-wrappers/**/* --exclude ./generated-artifacts/**/* --exclude **/lib/**/* && yarn lint-contracts",
"fix": "tslint --fix --format stylish --project . --exclude ./generated-wrappers/**/* --exclude ./generated-artifacts/**/* --exclude **/lib/**/* && yarn lint-contracts",
"coverage:report:text": "istanbul report text",
"coverage:report:html": "istanbul report html && open coverage/index.html",
"profiler:report:html": "istanbul report html && open coverage/index.html",
"coverage:report:lcov": "istanbul report lcov",
"test:circleci": "yarn test",
"contracts:gen": "contracts-gen",
"lint-contracts": "solhint -c ../.solhint.json contracts/**/**/**/**/*.sol"
},
"config": {
"abis": "./generated-artifacts/@(Coordinator|CoordinatorRegistry).json",
"abis:comment": "This list is auto-generated by contracts-gen. Don't edit manually."
},
"repository": {
"type": "git",
"url": "https://github.com/0xProject/0x-monorepo.git"
},
"license": "Apache-2.0",
"bugs": {
"url": "https://github.com/0xProject/0x-monorepo/issues"
},
"homepage": "https://github.com/0xProject/0x-monorepo/contracts/extensions/README.md",
"devDependencies": {
"@0x/abi-gen": "^2.1.1",
"@0x/contracts-gen": "^1.0.10",
"@0x/contracts-test-utils": "^3.1.9",
"@0x/dev-utils": "^2.2.4",
"@0x/sol-compiler": "^3.1.9",
"@0x/tslint-config": "^3.0.1",
"@types/lodash": "4.14.104",
"@types/node": "*",
"chai": "^4.0.1",
"chai-as-promised": "^7.1.0",
"chai-bignumber": "^3.0.0",
"dirty-chai": "^2.0.1",
"make-promises-safe": "^1.1.0",
"mocha": "^4.1.0",
"npm-run-all": "^4.1.2",
"shx": "^0.2.2",
"solhint": "^1.4.1",
"tslint": "5.11.0",
"typescript": "3.0.1"
},
"dependencies": {
"@0x/base-contract": "^5.1.1",
"@0x/contracts-asset-proxy": "^2.2.1",
"@0x/contracts-erc20": "^2.2.7",
"@0x/contracts-exchange": "^2.1.7",
"@0x/contracts-exchange-libs": "^3.0.1",
"@0x/contracts-utils": "^3.1.8",
"@0x/order-utils": "^8.2.1",
"@0x/types": "^2.4.0",
"@0x/typescript-typings": "^4.2.3",
"@0x/utils": "^4.4.0",
"@0x/web3-wrapper": "^6.0.7",
"ethereum-types": "^2.1.3",
"ethereumjs-util": "^5.1.1",
"lodash": "^4.17.11"
},
"publishConfig": {
"access": "public"
}
}

View File

@@ -0,0 +1,13 @@
/*
* -----------------------------------------------------------------------------
* Warning: This file is auto-generated by contracts-gen. Don't edit manually.
* -----------------------------------------------------------------------------
*/
import { ContractArtifact } from 'ethereum-types';
import * as Coordinator from '../generated-artifacts/Coordinator.json';
import * as CoordinatorRegistry from '../generated-artifacts/CoordinatorRegistry.json';
export const artifacts = {
Coordinator: Coordinator as ContractArtifact,
CoordinatorRegistry: CoordinatorRegistry as ContractArtifact,
};

View File

@@ -0,0 +1,3 @@
export * from './artifacts';
export * from './wrappers';
export * from '../test/utils';

View File

@@ -0,0 +1,7 @@
/*
* -----------------------------------------------------------------------------
* Warning: This file is auto-generated by contracts-gen. Don't edit manually.
* -----------------------------------------------------------------------------
*/
export * from '../generated-wrappers/coordinator';
export * from '../generated-wrappers/coordinator_registry';

View File

@@ -0,0 +1,521 @@
import { ERC20ProxyContract, ERC20Wrapper } from '@0x/contracts-asset-proxy';
import { DummyERC20TokenContract } from '@0x/contracts-erc20';
import {
artifacts as exchangeArtifacts,
ExchangeCancelEventArgs,
ExchangeCancelUpToEventArgs,
ExchangeContract,
ExchangeFillEventArgs,
} from '@0x/contracts-exchange';
import {
chaiSetup,
constants as devConstants,
expectTransactionFailedAsync,
getLatestBlockTimestampAsync,
OrderFactory,
provider,
TransactionFactory,
txDefaults,
web3Wrapper,
} from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import { assetDataUtils, orderHashUtils } from '@0x/order-utils';
import { RevertReason, SignedOrder } from '@0x/types';
import { BigNumber } from '@0x/utils';
import * as chai from 'chai';
import { LogWithDecodedArgs } from 'ethereum-types';
import { ApprovalFactory, artifacts, constants, CoordinatorContract, exchangeDataEncoder } from '../src';
chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
web3Wrapper.abiDecoder.addABI(exchangeArtifacts.Exchange.compilerOutput.abi);
// tslint:disable:no-unnecessary-type-assertion
describe('Coordinator tests', () => {
let makerAddress: string;
let owner: string;
let takerAddress: string;
let feeRecipientAddress: string;
let erc20Proxy: ERC20ProxyContract;
let erc20TokenA: DummyERC20TokenContract;
let erc20TokenB: DummyERC20TokenContract;
let zrxToken: DummyERC20TokenContract;
let coordinatorContract: CoordinatorContract;
let exchange: ExchangeContract;
let erc20Wrapper: ERC20Wrapper;
let orderFactory: OrderFactory;
let takerTransactionFactory: TransactionFactory;
let makerTransactionFactory: TransactionFactory;
let approvalFactory: ApprovalFactory;
before(async () => {
await blockchainLifecycle.startAsync();
});
after(async () => {
await blockchainLifecycle.revertAsync();
});
before(async () => {
const accounts = await web3Wrapper.getAvailableAddressesAsync();
const usedAddresses = ([owner, makerAddress, takerAddress, feeRecipientAddress] = accounts.slice(0, 4));
erc20Wrapper = new ERC20Wrapper(provider, usedAddresses, owner);
erc20Proxy = await erc20Wrapper.deployProxyAsync();
const numDummyErc20ToDeploy = 3;
[erc20TokenA, erc20TokenB, zrxToken] = await erc20Wrapper.deployDummyTokensAsync(
numDummyErc20ToDeploy,
devConstants.DUMMY_TOKEN_DECIMALS,
);
await erc20Wrapper.setBalancesAndAllowancesAsync();
exchange = await ExchangeContract.deployFrom0xArtifactAsync(
exchangeArtifacts.Exchange,
provider,
txDefaults,
assetDataUtils.encodeERC20AssetData(zrxToken.address),
);
await web3Wrapper.awaitTransactionSuccessAsync(
await erc20Proxy.addAuthorizedAddress.sendTransactionAsync(exchange.address, { from: owner }),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
await web3Wrapper.awaitTransactionSuccessAsync(
await exchange.registerAssetProxy.sendTransactionAsync(erc20Proxy.address, { from: owner }),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
coordinatorContract = await CoordinatorContract.deployFrom0xArtifactAsync(
artifacts.Coordinator,
provider,
txDefaults,
exchange.address,
);
// Configure order defaults
const defaultOrderParams = {
...devConstants.STATIC_ORDER_PARAMS,
exchangeAddress: exchange.address,
senderAddress: coordinatorContract.address,
makerAddress,
feeRecipientAddress,
makerAssetData: assetDataUtils.encodeERC20AssetData(erc20TokenA.address),
takerAssetData: assetDataUtils.encodeERC20AssetData(erc20TokenB.address),
};
const makerPrivateKey = devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(makerAddress)];
const takerPrivateKey = devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(takerAddress)];
const feeRecipientPrivateKey = devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(feeRecipientAddress)];
orderFactory = new OrderFactory(makerPrivateKey, defaultOrderParams);
makerTransactionFactory = new TransactionFactory(makerPrivateKey, exchange.address);
takerTransactionFactory = new TransactionFactory(takerPrivateKey, exchange.address);
approvalFactory = new ApprovalFactory(feeRecipientPrivateKey, coordinatorContract.address);
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
});
afterEach(async () => {
await blockchainLifecycle.revertAsync();
});
describe('single order fills', () => {
for (const fnName of constants.SINGLE_FILL_FN_NAMES) {
it(`${fnName} should fill the order with a signed approval`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: takerAddress },
),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
const fillLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeFillEventArgs>).event === 'Fill',
);
expect(fillLogs.length).to.eq(1);
const fillLogArgs = (fillLogs[0] as LogWithDecodedArgs<ExchangeFillEventArgs>).args;
expect(fillLogArgs.makerAddress).to.eq(makerAddress);
expect(fillLogArgs.takerAddress).to.eq(takerAddress);
expect(fillLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(fillLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(fillLogArgs.makerAssetData).to.eq(orders[0].makerAssetData);
expect(fillLogArgs.takerAssetData).to.eq(orders[0].takerAssetData);
expect(fillLogArgs.makerAssetFilledAmount).to.bignumber.eq(orders[0].makerAssetAmount);
expect(fillLogArgs.takerAssetFilledAmount).to.bignumber.eq(orders[0].takerAssetAmount);
expect(fillLogArgs.makerFeePaid).to.bignumber.eq(orders[0].makerFee);
expect(fillLogArgs.takerFeePaid).to.bignumber.eq(orders[0].takerFee);
expect(fillLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(orders[0]));
});
it(`${fnName} should fill the order if called by approver`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
feeRecipientAddress,
transaction.signature,
[],
[],
{ from: feeRecipientAddress },
),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
const fillLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeFillEventArgs>).event === 'Fill',
);
expect(fillLogs.length).to.eq(1);
const fillLogArgs = (fillLogs[0] as LogWithDecodedArgs<ExchangeFillEventArgs>).args;
expect(fillLogArgs.makerAddress).to.eq(makerAddress);
expect(fillLogArgs.takerAddress).to.eq(takerAddress);
expect(fillLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(fillLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(fillLogArgs.makerAssetData).to.eq(orders[0].makerAssetData);
expect(fillLogArgs.takerAssetData).to.eq(orders[0].takerAssetData);
expect(fillLogArgs.makerAssetFilledAmount).to.bignumber.eq(orders[0].makerAssetAmount);
expect(fillLogArgs.takerAssetFilledAmount).to.bignumber.eq(orders[0].takerAssetAmount);
expect(fillLogArgs.makerFeePaid).to.bignumber.eq(orders[0].makerFee);
expect(fillLogArgs.takerFeePaid).to.bignumber.eq(orders[0].takerFee);
expect(fillLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(orders[0]));
});
it(`${fnName} should revert with no approval signature`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[],
[],
{
from: takerAddress,
gas: devConstants.MAX_EXECUTE_TRANSACTION_GAS,
},
),
RevertReason.InvalidApprovalSignature,
);
});
it(`${fnName} should revert with an invalid approval signature`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
const signature = `${approval.signature.slice(0, 4)}FFFFFFFF${approval.signature.slice(12)}`;
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[signature],
{ from: takerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`${fnName} should revert with an expired approval`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).minus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: takerAddress },
),
RevertReason.ApprovalExpired,
);
});
it(`${fnName} should revert if not called by tx signer or approver`, async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: owner },
),
RevertReason.InvalidOrigin,
);
});
}
});
describe('batch order fills', () => {
for (const fnName of [...constants.MARKET_FILL_FN_NAMES, ...constants.BATCH_FILL_FN_NAMES]) {
it(`${fnName} should fill the orders with a signed approval`, async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: takerAddress, gas: devConstants.MAX_EXECUTE_TRANSACTION_GAS },
),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
const fillLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeFillEventArgs>).event === 'Fill',
);
expect(fillLogs.length).to.eq(orders.length);
orders.forEach((order, index) => {
const fillLogArgs = (fillLogs[index] as LogWithDecodedArgs<ExchangeFillEventArgs>).args;
expect(fillLogArgs.makerAddress).to.eq(makerAddress);
expect(fillLogArgs.takerAddress).to.eq(takerAddress);
expect(fillLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(fillLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(fillLogArgs.makerAssetData).to.eq(order.makerAssetData);
expect(fillLogArgs.takerAssetData).to.eq(order.takerAssetData);
expect(fillLogArgs.makerAssetFilledAmount).to.bignumber.eq(order.makerAssetAmount);
expect(fillLogArgs.takerAssetFilledAmount).to.bignumber.eq(order.takerAssetAmount);
expect(fillLogArgs.makerFeePaid).to.bignumber.eq(order.makerFee);
expect(fillLogArgs.takerFeePaid).to.bignumber.eq(order.takerFee);
expect(fillLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(order));
});
});
it(`${fnName} should fill the orders if called by approver`, async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
feeRecipientAddress,
transaction.signature,
[],
[],
{ from: feeRecipientAddress, gas: devConstants.MAX_EXECUTE_TRANSACTION_GAS },
),
devConstants.AWAIT_TRANSACTION_MINED_MS,
);
const fillLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeFillEventArgs>).event === 'Fill',
);
expect(fillLogs.length).to.eq(orders.length);
orders.forEach((order, index) => {
const fillLogArgs = (fillLogs[index] as LogWithDecodedArgs<ExchangeFillEventArgs>).args;
expect(fillLogArgs.makerAddress).to.eq(makerAddress);
expect(fillLogArgs.takerAddress).to.eq(takerAddress);
expect(fillLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(fillLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(fillLogArgs.makerAssetData).to.eq(order.makerAssetData);
expect(fillLogArgs.takerAssetData).to.eq(order.takerAssetData);
expect(fillLogArgs.makerAssetFilledAmount).to.bignumber.eq(order.makerAssetAmount);
expect(fillLogArgs.takerAssetFilledAmount).to.bignumber.eq(order.takerAssetAmount);
expect(fillLogArgs.makerFeePaid).to.bignumber.eq(order.makerFee);
expect(fillLogArgs.takerFeePaid).to.bignumber.eq(order.takerFee);
expect(fillLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(order));
});
});
it(`${fnName} should revert with an invalid approval signature`, async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
const signature = `${approval.signature.slice(0, 4)}FFFFFFFF${approval.signature.slice(12)}`;
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[signature],
{ from: takerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`${fnName} should revert with an expired approval`, async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).minus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: takerAddress },
),
RevertReason.ApprovalExpired,
);
});
it(`${fnName} should revert if not called by tx signer or approver`, async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = takerTransactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory.newSignedApproval(
transaction,
takerAddress,
approvalExpirationTimeSeconds,
);
await expectTransactionFailedAsync(
coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
takerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: owner },
),
RevertReason.InvalidOrigin,
);
});
}
});
describe('cancels', () => {
it('cancelOrder call should be successful without an approval', async () => {
const orders = [await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.CANCEL_ORDER, orders);
const transaction = makerTransactionFactory.newSignedTransaction(data);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
makerAddress,
transaction.signature,
[],
[],
{
from: makerAddress,
},
),
);
const cancelLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeCancelEventArgs>).event === 'Cancel',
);
expect(cancelLogs.length).to.eq(1);
const cancelLogArgs = (cancelLogs[0] as LogWithDecodedArgs<ExchangeCancelEventArgs>).args;
expect(cancelLogArgs.makerAddress).to.eq(makerAddress);
expect(cancelLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(cancelLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(cancelLogArgs.makerAssetData).to.eq(orders[0].makerAssetData);
expect(cancelLogArgs.takerAssetData).to.eq(orders[0].takerAssetData);
expect(cancelLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(orders[0]));
});
it('batchCancelOrders call should be successful without an approval', async () => {
const orders = [await orderFactory.newSignedOrderAsync(), await orderFactory.newSignedOrderAsync()];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.BATCH_CANCEL_ORDERS, orders);
const transaction = makerTransactionFactory.newSignedTransaction(data);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
makerAddress,
transaction.signature,
[],
[],
{
from: makerAddress,
},
),
);
const cancelLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeCancelEventArgs>).event === 'Cancel',
);
expect(cancelLogs.length).to.eq(orders.length);
orders.forEach((order, index) => {
const cancelLogArgs = (cancelLogs[index] as LogWithDecodedArgs<ExchangeCancelEventArgs>).args;
expect(cancelLogArgs.makerAddress).to.eq(makerAddress);
expect(cancelLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(cancelLogArgs.feeRecipientAddress).to.eq(feeRecipientAddress);
expect(cancelLogArgs.makerAssetData).to.eq(order.makerAssetData);
expect(cancelLogArgs.takerAssetData).to.eq(order.takerAssetData);
expect(cancelLogArgs.orderHash).to.eq(orderHashUtils.getOrderHashHex(order));
});
});
it('cancelOrdersUpTo call should be successful without an approval', async () => {
const orders: SignedOrder[] = [];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.CANCEL_ORDERS_UP_TO, orders);
const transaction = makerTransactionFactory.newSignedTransaction(data);
const transactionReceipt = await web3Wrapper.awaitTransactionSuccessAsync(
await coordinatorContract.executeTransaction.sendTransactionAsync(
transaction,
makerAddress,
transaction.signature,
[],
[],
{
from: makerAddress,
},
),
);
const cancelLogs = transactionReceipt.logs.filter(
log => (log as LogWithDecodedArgs<ExchangeCancelUpToEventArgs>).event === 'CancelUpTo',
);
expect(cancelLogs.length).to.eq(1);
const cancelLogArgs = (cancelLogs[0] as LogWithDecodedArgs<ExchangeCancelUpToEventArgs>).args;
expect(cancelLogArgs.makerAddress).to.eq(makerAddress);
expect(cancelLogArgs.senderAddress).to.eq(coordinatorContract.address);
expect(cancelLogArgs.orderEpoch).to.bignumber.eq(new BigNumber(1));
});
});
});
// tslint:disable:max-file-line-count

View File

@@ -0,0 +1,81 @@
import { artifacts as exchangeArtifacts } from '@0x/contracts-exchange';
import { chaiSetup, provider, web3Wrapper } from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import * as chai from 'chai';
import { LogWithDecodedArgs } from 'ethereum-types';
import { CoordinatorRegistryCoordinatorEndpointSetEventArgs } from '../src';
import { CoordinatorRegistryWrapper } from './utils/coordinator_registry_wrapper';
chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
web3Wrapper.abiDecoder.addABI(exchangeArtifacts.Exchange.compilerOutput.abi);
// tslint:disable:no-unnecessary-type-assertion
describe('Coordinator Registry tests', () => {
let coordinatorOperator: string;
const coordinatorEndpoint = 'http://sometec.0x.org';
const nilCoordinatorEndpoint = '';
let coordinatorRegistryWrapper: CoordinatorRegistryWrapper;
// tests
before(async () => {
await blockchainLifecycle.startAsync();
});
after(async () => {
await blockchainLifecycle.revertAsync();
});
before(async () => {
// setup accounts (skip owner)
const accounts = await web3Wrapper.getAvailableAddressesAsync();
[, coordinatorOperator] = accounts;
// deploy coordinator registry
coordinatorRegistryWrapper = new CoordinatorRegistryWrapper(provider);
await coordinatorRegistryWrapper.deployCoordinatorRegistryAsync();
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
});
afterEach(async () => {
await blockchainLifecycle.revertAsync();
});
describe('core', () => {
it('Should successfully set a Coordinator endpoint', async () => {
await coordinatorRegistryWrapper.setCoordinatorEndpointAsync(coordinatorOperator, coordinatorEndpoint);
const recordedCoordinatorEndpoint = await coordinatorRegistryWrapper.getCoordinatorEndpointAsync(
coordinatorOperator,
);
expect(recordedCoordinatorEndpoint).to.be.equal(coordinatorEndpoint);
});
it('Should successfully unset a Coordinator endpoint', async () => {
// set Coordinator endpoint
await coordinatorRegistryWrapper.setCoordinatorEndpointAsync(coordinatorOperator, coordinatorEndpoint);
let recordedCoordinatorEndpoint = await coordinatorRegistryWrapper.getCoordinatorEndpointAsync(
coordinatorOperator,
);
expect(recordedCoordinatorEndpoint).to.be.equal(coordinatorEndpoint);
// unset Coordinator endpoint
await coordinatorRegistryWrapper.setCoordinatorEndpointAsync(coordinatorOperator, nilCoordinatorEndpoint);
recordedCoordinatorEndpoint = await coordinatorRegistryWrapper.getCoordinatorEndpointAsync(
coordinatorOperator,
);
expect(recordedCoordinatorEndpoint).to.be.equal(nilCoordinatorEndpoint);
});
it('Should emit an event when setting Coordinator endpoint', async () => {
// set Coordinator endpoint
const txReceipt = await coordinatorRegistryWrapper.setCoordinatorEndpointAsync(
coordinatorOperator,
coordinatorEndpoint,
);
const recordedCoordinatorEndpoint = await coordinatorRegistryWrapper.getCoordinatorEndpointAsync(
coordinatorOperator,
);
expect(recordedCoordinatorEndpoint).to.be.equal(coordinatorEndpoint);
// validate event
expect(txReceipt.logs.length).to.be.equal(1);
const log = txReceipt.logs[0] as LogWithDecodedArgs<CoordinatorRegistryCoordinatorEndpointSetEventArgs>;
expect(log.args.coordinatorOperator).to.be.equal(coordinatorOperator);
expect(log.args.coordinatorEndpoint).to.be.equal(coordinatorEndpoint);
});
});
});

View File

@@ -0,0 +1,19 @@
import { env, EnvVars } from '@0x/dev-utils';
import { coverage, profiler, provider } from '@0x/contracts-test-utils';
import { providerUtils } from '@0x/utils';
before('start web3 provider', () => {
providerUtils.startProviderEngine(provider);
});
after('generate coverage report', async () => {
if (env.parseBoolean(EnvVars.SolidityCoverage)) {
const coverageSubprovider = coverage.getCoverageSubproviderSingleton();
await coverageSubprovider.writeCoverageAsync();
}
if (env.parseBoolean(EnvVars.SolidityProfiler)) {
const profilerSubprovider = profiler.getProfilerSubproviderSingleton();
await profilerSubprovider.writeProfilerOutputAsync();
}
provider.stop();
});

View File

@@ -0,0 +1,79 @@
import { addressUtils, chaiSetup, constants, provider, txDefaults, web3Wrapper } from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import { transactionHashUtils } from '@0x/order-utils';
import { BigNumber } from '@0x/utils';
import * as chai from 'chai';
import { artifacts, CoordinatorContract, hashUtils } from '../src';
chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
describe('Libs tests', () => {
let coordinatorContract: CoordinatorContract;
const exchangeAddress = addressUtils.generatePseudoRandomAddress();
before(async () => {
await blockchainLifecycle.startAsync();
});
after(async () => {
await blockchainLifecycle.revertAsync();
});
before(async () => {
coordinatorContract = await CoordinatorContract.deployFrom0xArtifactAsync(
artifacts.Coordinator,
provider,
txDefaults,
exchangeAddress,
);
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
});
afterEach(async () => {
await blockchainLifecycle.revertAsync();
});
describe('getTransactionHash', () => {
it('should return the correct transaction hash', async () => {
const tx = {
verifyingContractAddress: exchangeAddress,
salt: new BigNumber(0),
signerAddress: constants.NULL_ADDRESS,
data: '0x1234',
};
const expectedTxHash = transactionHashUtils.getTransactionHashHex(tx);
const txHash = await coordinatorContract.getTransactionHash.callAsync(tx);
expect(expectedTxHash).to.eq(txHash);
});
});
describe('getApprovalHash', () => {
it('should return the correct approval hash', async () => {
const signedTx = {
verifyingContractAddress: exchangeAddress,
salt: new BigNumber(0),
signerAddress: constants.NULL_ADDRESS,
data: '0x1234',
signature: '0x5678',
};
const approvalExpirationTimeSeconds = new BigNumber(0);
const txOrigin = constants.NULL_ADDRESS;
const approval = {
txOrigin,
transactionHash: transactionHashUtils.getTransactionHashHex(signedTx),
transactionSignature: signedTx.signature,
approvalExpirationTimeSeconds,
};
const expectedApprovalHash = hashUtils.getApprovalHashHex(
signedTx,
coordinatorContract.address,
txOrigin,
approvalExpirationTimeSeconds,
);
const approvalHash = await coordinatorContract.getCoordinatorApprovalHash.callAsync(approval);
expect(expectedApprovalHash).to.eq(approvalHash);
});
});
});

View File

@@ -0,0 +1,728 @@
import {
addressUtils,
chaiSetup,
constants as devConstants,
expectContractCallFailedAsync,
getLatestBlockTimestampAsync,
provider,
TransactionFactory,
txDefaults,
web3Wrapper,
} from '@0x/contracts-test-utils';
import { BlockchainLifecycle } from '@0x/dev-utils';
import { transactionHashUtils } from '@0x/order-utils';
import { RevertReason, SignatureType, SignedOrder } from '@0x/types';
import { BigNumber } from '@0x/utils';
import * as chai from 'chai';
import * as ethUtil from 'ethereumjs-util';
import { ApprovalFactory, artifacts, constants, CoordinatorContract, exchangeDataEncoder } from '../src';
chaiSetup.configure();
const expect = chai.expect;
const blockchainLifecycle = new BlockchainLifecycle(web3Wrapper);
describe('Mixins tests', () => {
let transactionSignerAddress: string;
let approvalSignerAddress1: string;
let approvalSignerAddress2: string;
let mixins: CoordinatorContract;
let transactionFactory: TransactionFactory;
let approvalFactory1: ApprovalFactory;
let approvalFactory2: ApprovalFactory;
let defaultOrder: SignedOrder;
const exchangeAddress = addressUtils.generatePseudoRandomAddress();
before(async () => {
await blockchainLifecycle.startAsync();
});
after(async () => {
await blockchainLifecycle.revertAsync();
});
before(async () => {
mixins = await CoordinatorContract.deployFrom0xArtifactAsync(
artifacts.Coordinator,
provider,
txDefaults,
exchangeAddress,
);
const accounts = await web3Wrapper.getAvailableAddressesAsync();
[transactionSignerAddress, approvalSignerAddress1, approvalSignerAddress2] = accounts.slice(0, 3);
defaultOrder = {
exchangeAddress: devConstants.NULL_ADDRESS,
makerAddress: devConstants.NULL_ADDRESS,
takerAddress: devConstants.NULL_ADDRESS,
senderAddress: mixins.address,
feeRecipientAddress: approvalSignerAddress1,
makerAssetData: devConstants.NULL_BYTES,
takerAssetData: devConstants.NULL_BYTES,
makerAssetAmount: devConstants.ZERO_AMOUNT,
takerAssetAmount: devConstants.ZERO_AMOUNT,
makerFee: devConstants.ZERO_AMOUNT,
takerFee: devConstants.ZERO_AMOUNT,
expirationTimeSeconds: devConstants.ZERO_AMOUNT,
salt: devConstants.ZERO_AMOUNT,
signature: devConstants.NULL_BYTES,
};
const transactionSignerPrivateKey =
devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(transactionSignerAddress)];
const approvalSignerPrivateKey1 = devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(approvalSignerAddress1)];
const approvalSignerPrivateKey2 = devConstants.TESTRPC_PRIVATE_KEYS[accounts.indexOf(approvalSignerAddress2)];
transactionFactory = new TransactionFactory(transactionSignerPrivateKey, exchangeAddress);
approvalFactory1 = new ApprovalFactory(approvalSignerPrivateKey1, mixins.address);
approvalFactory2 = new ApprovalFactory(approvalSignerPrivateKey2, mixins.address);
});
beforeEach(async () => {
await blockchainLifecycle.startAsync();
});
afterEach(async () => {
await blockchainLifecycle.revertAsync();
});
describe('getSignerAddress', () => {
it('should return the correct address using the EthSign signature type', async () => {
const data = devConstants.NULL_BYTES;
const transaction = transactionFactory.newSignedTransaction(data, SignatureType.EthSign);
const transactionHash = transactionHashUtils.getTransactionHashHex(transaction);
const signerAddress = await mixins.getSignerAddress.callAsync(transactionHash, transaction.signature);
expect(transaction.signerAddress).to.eq(signerAddress);
});
it('should return the correct address using the EIP712 signature type', async () => {
const data = devConstants.NULL_BYTES;
const transaction = transactionFactory.newSignedTransaction(data, SignatureType.EIP712);
const transactionHash = transactionHashUtils.getTransactionHashHex(transaction);
const signerAddress = await mixins.getSignerAddress.callAsync(transactionHash, transaction.signature);
expect(transaction.signerAddress).to.eq(signerAddress);
});
it('should revert with with the Illegal signature type', async () => {
const data = devConstants.NULL_BYTES;
const transaction = transactionFactory.newSignedTransaction(data);
const illegalSignatureByte = ethUtil.toBuffer(SignatureType.Illegal).toString('hex');
transaction.signature = `${transaction.signature.slice(
0,
transaction.signature.length - 2,
)}${illegalSignatureByte}`;
const transactionHash = transactionHashUtils.getTransactionHashHex(transaction);
expectContractCallFailedAsync(
mixins.getSignerAddress.callAsync(transactionHash, transaction.signature),
RevertReason.SignatureIllegal,
);
});
it('should revert with with the Invalid signature type', async () => {
const data = devConstants.NULL_BYTES;
const transaction = transactionFactory.newSignedTransaction(data);
const invalidSignatureByte = ethUtil.toBuffer(SignatureType.Invalid).toString('hex');
transaction.signature = `0x${invalidSignatureByte}`;
const transactionHash = transactionHashUtils.getTransactionHashHex(transaction);
expectContractCallFailedAsync(
mixins.getSignerAddress.callAsync(transactionHash, transaction.signature),
RevertReason.SignatureInvalid,
);
});
it("should revert with with a signature type that doesn't exist", async () => {
const data = devConstants.NULL_BYTES;
const transaction = transactionFactory.newSignedTransaction(data);
const invalidSignatureByte = '04';
transaction.signature = `${transaction.signature.slice(
0,
transaction.signature.length - 2,
)}${invalidSignatureByte}`;
const transactionHash = transactionHashUtils.getTransactionHashHex(transaction);
expectContractCallFailedAsync(
mixins.getSignerAddress.callAsync(transactionHash, transaction.signature),
RevertReason.SignatureUnsupported,
);
});
});
describe('decodeOrdersFromFillData', () => {
for (const fnName of constants.SINGLE_FILL_FN_NAMES) {
it(`should correctly decode the orders for ${fnName} data`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const decodedOrders = await mixins.decodeOrdersFromFillData.callAsync(data);
const decodedSignedOrders = decodedOrders.map(order => ({
...order,
exchangeAddress: devConstants.NULL_ADDRESS,
signature: devConstants.NULL_BYTES,
}));
expect(orders).to.deep.eq(decodedSignedOrders);
});
}
for (const fnName of constants.BATCH_FILL_FN_NAMES) {
it(`should correctly decode the orders for ${fnName} data`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const decodedOrders = await mixins.decodeOrdersFromFillData.callAsync(data);
const decodedSignedOrders = decodedOrders.map(order => ({
...order,
exchangeAddress: devConstants.NULL_ADDRESS,
signature: devConstants.NULL_BYTES,
}));
expect(orders).to.deep.eq(decodedSignedOrders);
});
}
for (const fnName of constants.MARKET_FILL_FN_NAMES) {
it(`should correctly decode the orders for ${fnName} data`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const decodedOrders = await mixins.decodeOrdersFromFillData.callAsync(data);
const decodedSignedOrders = decodedOrders.map(order => ({
...order,
exchangeAddress: devConstants.NULL_ADDRESS,
signature: devConstants.NULL_BYTES,
}));
expect(orders).to.deep.eq(decodedSignedOrders);
});
}
for (const fnName of [constants.CANCEL_ORDER, constants.BATCH_CANCEL_ORDERS, constants.CANCEL_ORDERS_UP_TO]) {
it(`should correctly decode the orders for ${fnName} data`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const decodedOrders = await mixins.decodeOrdersFromFillData.callAsync(data);
const emptyArray: any[] = [];
expect(emptyArray).to.deep.eq(decodedOrders);
});
}
it('should decode an empty array for invalid data', async () => {
const data = '0x0123456789';
const decodedOrders = await mixins.decodeOrdersFromFillData.callAsync(data);
const emptyArray: any[] = [];
expect(emptyArray).to.deep.eq(decodedOrders);
});
it('should revert if data is less than 4 bytes long', async () => {
const data = '0x010203';
await expectContractCallFailedAsync(
mixins.decodeOrdersFromFillData.callAsync(data),
RevertReason.LibBytesGreaterOrEqualTo4LengthRequired,
);
});
});
describe('Single order approvals', () => {
for (const fnName of constants.SINGLE_FILL_FN_NAMES) {
it(`Should be successful: function=${fnName}, caller=tx_signer, senderAddress=[verifier], approval_sig=[approver1], expiration=[valid]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName}, caller=tx_signer, senderAddress=[null], approval_sig=[approver1], expiration=[valid]`, async () => {
const order = {
...defaultOrder,
senderAddress: devConstants.NULL_ADDRESS,
};
const orders = [order];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName}, caller=approver1, senderAddress=[verifier], approval_sig=[], expiration=[]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[],
[],
{
from: approvalSignerAddress1,
},
);
});
it(`Should be successful: function=${fnName}, caller=approver1, senderAddress=[verifier], approval_sig=[approver1], expiration=[invalid]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: approvalSignerAddress1 },
);
});
it(`Should be successful: function=${fnName}, caller=approver1, senderAddress=[verifier], approval_sig=[], expiration=[]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[],
[],
{
from: approvalSignerAddress1,
},
);
});
it(`Should revert: function=${fnName}, caller=tx_signer, senderAddress=[verifier], approval_sig=[invalid], expiration=[valid]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const signature = `${approval.signature.slice(0, 4)}FFFFFFFF${approval.signature.slice(12)}`;
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[signature],
{ from: transactionSignerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`Should revert: function=${fnName}, caller=tx_signer, senderAddress=[verifier], approval_sig=[approver1], expiration=[invalid]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).minus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
),
RevertReason.ApprovalExpired,
);
});
it(`Should revert: function=${fnName}, caller=approver2, senderAddress=[verifier], approval_sig=[approver1], expiration=[valid]`, async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: approvalSignerAddress2 },
),
RevertReason.InvalidOrigin,
);
});
}
});
describe('Batch order approvals', () => {
for (const fnName of [
...constants.BATCH_FILL_FN_NAMES,
...constants.MARKET_FILL_FN_NAMES,
constants.MATCH_ORDERS,
]) {
it(`Should be successful: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1,approver1], approval_sig=[approver1], expiration=[valid]`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName} caller=tx_signer, senderAddress=[null,null], feeRecipient=[approver1,approver1], approval_sig=[approver1], expiration=[valid]`, async () => {
const orders = [defaultOrder, defaultOrder].map(order => ({
...order,
senderAddress: devConstants.NULL_ADDRESS,
}));
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName} caller=tx_signer, senderAddress=[null,null], feeRecipient=[approver1,approver1], approval_sig=[], expiration=[]`, async () => {
const orders = [defaultOrder, defaultOrder].map(order => ({
...order,
senderAddress: devConstants.NULL_ADDRESS,
}));
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[],
[],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName} caller=tx_signer, senderAddress=[verifier,null], feeRecipient=[approver1,approver1], approval_sig=[approver1], expiration=[valid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, senderAddress: devConstants.NULL_ADDRESS }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1,approver2], approval_sig=[approver1,approver2], expiration=[valid,valid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval1 = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds, approvalExpirationTimeSeconds],
[approval1.signature, approval2.signature],
{ from: transactionSignerAddress },
);
});
it(`Should be successful: function=${fnName} caller=approver1, senderAddress=[verifier,verifier], feeRecipient=[approver1,approver1], approval_sig=[], expiration=[]`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[],
[],
{ from: approvalSignerAddress1 },
);
});
it(`Should revert: function=${fnName} caller=approver1, senderAddress=[verifier,verifier], feeRecipient=[approver1,approver2], approval_sig=[approver2], expiration=[valid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval2.signature],
{ from: approvalSignerAddress1 },
),
RevertReason.InvalidOrigin,
);
});
it(`Should revert: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver1], approval_sig=[], expiration=[]`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[],
[],
{ from: transactionSignerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`Should revert: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver1], approval_sig=[invalid], expiration=[valid]`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const signature = `${approval.signature.slice(0, 4)}FFFFFFFF${approval.signature.slice(12)}`;
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[signature],
{ from: transactionSignerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`Should revert: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver2], approval_sig=[valid,invalid], expiration=[valid,valid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval1 = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const approvalSignature2 = `${approval2.signature.slice(0, 4)}FFFFFFFF${approval2.signature.slice(12)}`;
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds, approvalExpirationTimeSeconds],
[approval1.signature, approvalSignature2],
{ from: transactionSignerAddress },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`Should revert: function=${fnName} caller=approver1, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver2], approval_sig=[invalid], expiration=[valid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
const approvalSignature2 = `${approval2.signature.slice(0, 4)}FFFFFFFF${approval2.signature.slice(12)}`;
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[approvalExpirationTimeSeconds],
[approvalSignature2],
{ from: approvalSignerAddress1 },
),
RevertReason.InvalidApprovalSignature,
);
});
it(`Should revert: function=${fnName} caller=tx_signer, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver2], approval_sig=[valid,valid], expiration=[valid,invalid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds1 = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approvalExpirationTimeSeconds2 = new BigNumber(currentTimestamp).minus(constants.TIME_BUFFER);
const approval1 = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds1,
);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds2,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds1, approvalExpirationTimeSeconds2],
[approval1.signature, approval2.signature],
{ from: transactionSignerAddress },
),
RevertReason.ApprovalExpired,
);
});
it(`Should revert: function=${fnName} caller=approver1, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver2], approval_sig=[valid], expiration=[invalid]`, async () => {
const orders = [defaultOrder, { ...defaultOrder, feeRecipientAddress: approvalSignerAddress2 }];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).minus(constants.TIME_BUFFER);
const approval2 = approvalFactory2.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
approvalSignerAddress1,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval2.signature],
{ from: approvalSignerAddress1 },
),
RevertReason.ApprovalExpired,
);
});
it(`Should revert: function=${fnName} caller=approver2, senderAddress=[verifier,verifier], feeRecipient=[approver1, approver1], approval_sig=[valid], expiration=[valid]`, async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(fnName, orders);
const transaction = transactionFactory.newSignedTransaction(data);
const currentTimestamp = await getLatestBlockTimestampAsync();
const approvalExpirationTimeSeconds = new BigNumber(currentTimestamp).plus(constants.TIME_BUFFER);
const approval1 = approvalFactory1.newSignedApproval(
transaction,
transactionSignerAddress,
approvalExpirationTimeSeconds,
);
expectContractCallFailedAsync(
mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[approvalExpirationTimeSeconds],
[approval1.signature],
{ from: approvalSignerAddress2 },
),
RevertReason.InvalidOrigin,
);
});
}
});
describe('cancels', () => {
it('should allow the tx signer to call `cancelOrder` without approval', async () => {
const orders = [defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.CANCEL_ORDER, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[],
[],
{ from: transactionSignerAddress },
);
});
it('should allow the tx signer to call `batchCancelOrders` without approval', async () => {
const orders = [defaultOrder, defaultOrder];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.BATCH_CANCEL_ORDERS, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[],
[],
{ from: transactionSignerAddress },
);
});
it('should allow the tx signer to call `cancelOrdersUpTo` without approval', async () => {
const orders: SignedOrder[] = [];
const data = exchangeDataEncoder.encodeOrdersToExchangeData(constants.CANCEL_ORDERS_UP_TO, orders);
const transaction = transactionFactory.newSignedTransaction(data);
await mixins.assertValidCoordinatorApprovals.callAsync(
transaction,
transactionSignerAddress,
transaction.signature,
[],
[],
{ from: transactionSignerAddress },
);
});
});
});
// tslint:disable:max-file-line-count

View File

@@ -0,0 +1,38 @@
import { signingUtils } from '@0x/contracts-test-utils';
import { SignatureType, SignedZeroExTransaction } from '@0x/types';
import { BigNumber } from '@0x/utils';
import * as ethUtil from 'ethereumjs-util';
import { hashUtils, SignedCoordinatorApproval } from './index';
export class ApprovalFactory {
private readonly _privateKey: Buffer;
private readonly _verifyingContractAddress: string;
constructor(privateKey: Buffer, verifyingContractAddress: string) {
this._privateKey = privateKey;
this._verifyingContractAddress = verifyingContractAddress;
}
public newSignedApproval(
transaction: SignedZeroExTransaction,
txOrigin: string,
approvalExpirationTimeSeconds: BigNumber,
signatureType: SignatureType = SignatureType.EthSign,
): SignedCoordinatorApproval {
const approvalHashBuff = hashUtils.getApprovalHashBuffer(
transaction,
this._verifyingContractAddress,
txOrigin,
approvalExpirationTimeSeconds,
);
const signatureBuff = signingUtils.signMessage(approvalHashBuff, this._privateKey, signatureType);
const signedApproval = {
txOrigin,
transaction,
approvalExpirationTimeSeconds,
signature: ethUtil.addHexPrefix(signatureBuff.toString('hex')),
};
return signedApproval;
}
}

View File

@@ -0,0 +1,12 @@
import { BigNumber } from '@0x/utils';
export const constants = {
SINGLE_FILL_FN_NAMES: ['fillOrder', 'fillOrKillOrder', 'fillOrderNoThrow'],
BATCH_FILL_FN_NAMES: ['batchFillOrders', 'batchFillOrKillOrders', 'batchFillOrdersNoThrow'],
MARKET_FILL_FN_NAMES: ['marketBuyOrders', 'marketBuyOrdersNoThrow', 'marketSellOrders', 'marketSellOrdersNoThrow'],
MATCH_ORDERS: 'matchOrders',
CANCEL_ORDER: 'cancelOrder',
BATCH_CANCEL_ORDERS: 'batchCancelOrders',
CANCEL_ORDERS_UP_TO: 'cancelOrdersUpTo',
TIME_BUFFER: new BigNumber(1000),
};

View File

@@ -0,0 +1,64 @@
import { LogDecoder, txDefaults } from '@0x/contracts-test-utils';
import { Web3Wrapper } from '@0x/web3-wrapper';
import { TransactionReceiptWithDecodedLogs, ZeroExProvider } from 'ethereum-types';
import { artifacts, CoordinatorRegistryContract } from '../../src';
export class CoordinatorRegistryWrapper {
private readonly _web3Wrapper: Web3Wrapper;
private readonly _provider: ZeroExProvider;
private readonly _logDecoder: LogDecoder;
private _coordinatorRegistryContract?: CoordinatorRegistryContract;
/**
* Instanitates an CoordinatorRegistryWrapper
* @param provider Web3 provider to use for all JSON RPC requests
* Instance of CoordinatorRegistryWrapper
*/
constructor(provider: ZeroExProvider) {
this._web3Wrapper = new Web3Wrapper(provider);
this._provider = provider;
this._logDecoder = new LogDecoder(this._web3Wrapper, artifacts);
}
public async deployCoordinatorRegistryAsync(): Promise<CoordinatorRegistryContract> {
this._coordinatorRegistryContract = await CoordinatorRegistryContract.deployFrom0xArtifactAsync(
artifacts.CoordinatorRegistry,
this._provider,
txDefaults,
);
if (this._coordinatorRegistryContract === undefined) {
throw new Error(`Failed to deploy Coordinator Registry contract.`);
}
return this._coordinatorRegistryContract;
}
public async setCoordinatorEndpointAsync(
coordinatorOperator: string,
coordinatorEndpoint: string,
): Promise<TransactionReceiptWithDecodedLogs> {
this._assertCoordinatorRegistryDeployed();
const txReceipt = await this._logDecoder.getTxWithDecodedLogsAsync(
await (this
._coordinatorRegistryContract as CoordinatorRegistryContract).setCoordinatorEndpoint.sendTransactionAsync(
coordinatorEndpoint,
{
from: coordinatorOperator,
},
),
);
return txReceipt;
}
public async getCoordinatorEndpointAsync(coordinatorOperator: string): Promise<string> {
this._assertCoordinatorRegistryDeployed();
const coordinatorEndpoint = await (this
._coordinatorRegistryContract as CoordinatorRegistryContract).getCoordinatorEndpoint.callAsync(
coordinatorOperator,
);
return coordinatorEndpoint;
}
private _assertCoordinatorRegistryDeployed(): void {
if (this._coordinatorRegistryContract === undefined) {
throw new Error(
'The Coordinator Registry contract was not deployed through the CoordinatorRegistryWrapper. Call `deployCoordinatorRegistryAsync` to deploy.',
);
}
}
}

View File

@@ -0,0 +1,47 @@
import { IExchangeContract } from '@0x/contracts-exchange';
import { constants as devConstants, provider } from '@0x/contracts-test-utils';
import { SignedOrder } from '@0x/types';
import { constants } from './index';
export const exchangeDataEncoder = {
encodeOrdersToExchangeData(fnName: string, orders: SignedOrder[]): string {
const exchangeInstance = new IExchangeContract(devConstants.NULL_ADDRESS, provider);
let data;
if (constants.SINGLE_FILL_FN_NAMES.indexOf(fnName) !== -1) {
data = (exchangeInstance as any)[fnName].getABIEncodedTransactionData(
orders[0],
orders[0].takerAssetAmount,
orders[0].signature,
);
} else if (constants.BATCH_FILL_FN_NAMES.indexOf(fnName) !== -1) {
data = (exchangeInstance as any)[fnName].getABIEncodedTransactionData(
orders,
orders.map(order => order.takerAssetAmount),
orders.map(order => order.signature),
);
} else if (constants.MARKET_FILL_FN_NAMES.indexOf(fnName) !== -1) {
data = (exchangeInstance as any)[fnName].getABIEncodedTransactionData(
orders,
orders.map(order => order.takerAssetAmount).reduce((prev, curr) => prev.plus(curr)),
orders.map(order => order.signature),
);
} else if (fnName === constants.MATCH_ORDERS) {
data = exchangeInstance.matchOrders.getABIEncodedTransactionData(
orders[0],
orders[1],
orders[0].signature,
orders[1].signature,
);
} else if (fnName === constants.CANCEL_ORDER) {
data = exchangeInstance.cancelOrder.getABIEncodedTransactionData(orders[0]);
} else if (fnName === constants.BATCH_CANCEL_ORDERS) {
data = exchangeInstance.batchCancelOrders.getABIEncodedTransactionData(orders);
} else if (fnName === constants.CANCEL_ORDERS_UP_TO) {
data = exchangeInstance.cancelOrdersUpTo.getABIEncodedTransactionData(devConstants.ZERO_AMOUNT);
} else {
throw new Error(`Error: ${fnName} not a supported function`);
}
return data;
},
};

View File

@@ -0,0 +1,33 @@
import { eip712Utils } from '@0x/order-utils';
import { SignedZeroExTransaction } from '@0x/types';
import { BigNumber, signTypedDataUtils } from '@0x/utils';
import * as _ from 'lodash';
export const hashUtils = {
getApprovalHashBuffer(
transaction: SignedZeroExTransaction,
verifyingContractAddress: string,
txOrigin: string,
approvalExpirationTimeSeconds: BigNumber,
): Buffer {
const typedData = eip712Utils.createCoordinatorApprovalTypedData(
transaction,
verifyingContractAddress,
txOrigin,
approvalExpirationTimeSeconds,
);
const hashBuffer = signTypedDataUtils.generateTypedDataHash(typedData);
return hashBuffer;
},
getApprovalHashHex(
transaction: SignedZeroExTransaction,
verifyingContractAddress: string,
txOrigin: string,
approvalExpirationTimeSeconds: BigNumber,
): string {
const hashHex = `0x${hashUtils
.getApprovalHashBuffer(transaction, verifyingContractAddress, txOrigin, approvalExpirationTimeSeconds)
.toString('hex')}`;
return hashHex;
},
};

View File

@@ -0,0 +1,5 @@
export { hashUtils } from './hash_utils';
export { ApprovalFactory } from './approval_factory';
export { constants } from './constants';
export { exchangeDataEncoder } from './exchange_data_encoder';
export * from './types';

View File

@@ -0,0 +1,12 @@
import { SignedZeroExTransaction } from '@0x/types';
import { BigNumber } from '@0x/utils';
export interface CoordinatorApproval {
transaction: SignedZeroExTransaction;
txOrigin: string;
approvalExpirationTimeSeconds: BigNumber;
}
export interface SignedCoordinatorApproval extends CoordinatorApproval {
signature: string;
}

View File

@@ -0,0 +1,7 @@
{
"extends": "../../tsconfig",
"compilerOptions": { "outDir": "lib", "rootDir": ".", "resolveJsonModule": true },
"include": ["./src/**/*", "./test/**/*", "./generated-wrappers/**/*"],
"files": ["generated-artifacts/Coordinator.json", "generated-artifacts/CoordinatorRegistry.json"],
"exclude": ["./deploy/solc/solc_bin"]
}

View File

@@ -0,0 +1,6 @@
{
"extends": ["@0x/tslint-config"],
"rules": {
"custom-no-magic-numbers": false
}
}

View File

@@ -0,0 +1,49 @@
[
{
"timestamp": 1563047529,
"version": "0.0.3",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"timestamp": 1563006338,
"version": "0.0.2",
"changes": [
{
"note": "Dependencies updated"
}
]
},
{
"version": "0.0.1",
"changes": [
{
"note": "Create dev-utils package",
"pr": 1848
},
{
"note": "Add `LibAssetData` and `LibTransactionDecoder` contracts",
"pr": 1848
},
{
"note": "Refactor `LibAssetData` to only check 0x-specific allowances",
"pr": 1848
},
{
"note": "Refactor `LibAssetData` balance/allowance checks to never revert",
"pr": 1848
},
{
"note": "Refactor `OrderValidationUtils` to calculate `fillableTakerAssetAmount`",
"pr": 1848
},
{
"note": "Add support for StaticCallProxy",
"pr": 1863
}
]
}
]

View File

@@ -0,0 +1,23 @@
<!--
changelogUtils.file is auto-generated using the monorepo-scripts package. Don't edit directly.
Edit the package's CHANGELOG.json file only.
-->
CHANGELOG
## v0.0.3 - _July 13, 2019_
* Dependencies updated
## v0.0.2 - _July 13, 2019_
* Dependencies updated
## v0.0.1 - _Invalid date_
* Create dev-utils package (#1848)
* Add `LibAssetData` and `LibTransactionDecoder` contracts (#1848)
* Refactor `LibAssetData` to only check 0x-specific allowances (#1848)
* Refactor `LibAssetData` balance/allowance checks to never revert (#1848)
* Refactor `OrderValidationUtils` to calculate `fillableTakerAssetAmount` (#1848)
* Add support for StaticCallProxy (#1863)

View File

@@ -0,0 +1 @@
[]

View File

@@ -0,0 +1,73 @@
## Dev-Utils
This package implements various utilities for developers. For example, the `DevUtils` contract can query batches of balances or allowances given some `assetData`, can validate batches of orders, and can decode 0x-specific calldata. Addresses of the deployed contracts can be found in the 0x [wiki](https://0xproject.com/wiki#Deployed-Addresses) or the [DEPLOYS](./DEPLOYS.json) file within this package.
## Installation
**Install**
```bash
npm install @0x/contracts-dev-utils --save
```
## Bug bounty
A bug bounty for the 2.0.0 contracts is ongoing! Instructions can be found [here](https://0xproject.com/wiki#Bug-Bounty).
## Contributing
We strongly recommend that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.
For proposals regarding the 0x protocol's smart contract architecture, message format, or additional functionality, go to the [0x Improvement Proposals (ZEIPs)](https://github.com/0xProject/ZEIPs) repository and follow the contribution guidelines provided therein.
Please read our [contribution guidelines](../../CONTRIBUTING.md) before getting started.
### Install Dependencies
If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
```bash
yarn config set workspaces-experimental true
```
Then install dependencies
```bash
yarn install
```
### Build
To build this package and all other monorepo packages that it depends on, run the following from the monorepo root directory:
```bash
PKG=@0x/contracts-extensions yarn build
```
Or continuously rebuild on change:
```bash
PKG=@0x/contracts-extensions yarn watch
```
### Clean
```bash
yarn clean
```
### Lint
```bash
yarn lint
```
### Run Tests
```bash
yarn test
```
#### Testing options
Contracts testing options like coverage, profiling, revert traces or backing node choosing - are described [here](../TESTING.md).

View File

@@ -0,0 +1,32 @@
{
"artifactsDir": "./generated-artifacts",
"contractsDir": "./contracts",
"useDockerisedSolc": false,
"isOfflineMode": false,
"compilerSettings": {
"evmVersion": "constantinople",
"optimizer": {
"enabled": true,
"runs": 1000000,
"details": { "yul": true, "deduplicate": true, "cse": true, "constantOptimizer": true }
},
"outputSelection": {
"*": {
"*": [
"abi",
"devdoc",
"evm.bytecode.object",
"evm.bytecode.sourceMap",
"evm.deployedBytecode.object",
"evm.deployedBytecode.sourceMap"
]
}
}
},
"contracts": [
"src/DevUtils.sol",
"src/LibAssetData.sol",
"src/LibTransactionDecoder.sol",
"src/EthBalanceChecker.sol"
]
}

View File

@@ -0,0 +1,37 @@
/*
Copyright 2018 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.5.5;
pragma experimental ABIEncoderV2;
import "./OrderValidationUtils.sol";
import "./LibTransactionDecoder.sol";
import "./EthBalanceChecker.sol";
// solhint-disable no-empty-blocks
contract DevUtils is
OrderValidationUtils,
LibTransactionDecoder,
EthBalanceChecker
{
constructor (address _exchange, bytes memory _zrxAssetData)
public
OrderValidationUtils(_exchange, _zrxAssetData)
{}
}

View File

@@ -0,0 +1,39 @@
/*
Copyright 2018 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.5.5;
contract EthBalanceChecker {
/// @dev Batch fetches ETH balances
/// @param addresses Array of addresses.
/// @return Array of ETH balances.
function getEthBalances(address[] memory addresses)
public
view
returns (uint256[] memory)
{
uint256[] memory balances = new uint256[](addresses.length);
for (uint256 i = 0; i != addresses.length; i++) {
balances[i] = addresses[i].balance;
}
return balances;
}
}

View File

@@ -0,0 +1,541 @@
/*
Copyright 2019 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.5.5;
pragma experimental ABIEncoderV2;
import "@0x/contracts-utils/contracts/src/LibBytes.sol";
import "@0x/contracts-asset-proxy/contracts/src/libs/LibAssetProxyIds.sol";
import "@0x/contracts-exchange/contracts/src/interfaces/IExchange.sol";
contract LibAssetData is
LibAssetProxyIds
{
// 2^256 - 1
uint256 constant internal _MAX_UINT256 = uint256(-1);
// ERC20 selectors
bytes4 constant internal _ERC20_BALANCE_OF_SELECTOR = 0x70a08231;
bytes4 constant internal _ERC20_ALLOWANCE_SELECTOR = 0xdd62ed3e;
// ERC721 selectors
bytes4 constant internal _ERC721_OWNER_OF_SELECTOR = 0x6352211e;
bytes4 constant internal _ERC721_IS_APPROVED_FOR_ALL_SELECTOR = 0xe985e9c5;
bytes4 constant internal _ERC721_GET_APPROVED_SELECTOR = 0x081812fc;
// ERC1155 selectors
bytes4 constant internal _ERC1155_BALANCE_OF_SELECTOR = 0x00fdd58e;
bytes4 constant internal _ERC1155_IS_APPROVED_FOR_ALL_SELECTOR = 0xe985e9c5;
// `transferFrom` selector for all AssetProxy contracts
bytes4 constant internal _ASSET_PROXY_TRANSFER_FROM_SELECTOR = 0xa85e59e4;
using LibBytes for bytes;
// solhint-disable var-name-mixedcase
IExchange internal _EXCHANGE;
address internal _ERC20_PROXY_ADDRESS;
address internal _ERC721_PROXY_ADDRESS;
address internal _ERC1155_PROXY_ADDRESS;
address internal _STATIC_CALL_PROXY_ADDRESS;
// solhint-enable var-name-mixedcase
constructor (address _exchange)
public
{
_EXCHANGE = IExchange(_exchange);
_ERC20_PROXY_ADDRESS = _EXCHANGE.getAssetProxy(ERC20_PROXY_ID);
_ERC721_PROXY_ADDRESS = _EXCHANGE.getAssetProxy(ERC721_PROXY_ID);
_ERC1155_PROXY_ADDRESS = _EXCHANGE.getAssetProxy(ERC1155_PROXY_ID);
_STATIC_CALL_PROXY_ADDRESS = _EXCHANGE.getAssetProxy(STATIC_CALL_PROXY_ID);
}
/// @dev Returns the owner's balance of the assets(s) specified in
/// assetData. When the asset data contains multiple assets (eg in
/// ERC1155 or Multi-Asset), the return value indicates how many
/// complete "baskets" of those assets are owned by owner.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Details of asset, encoded per the AssetProxy contract specification.
/// @return Number of assets (or asset baskets) held by owner.
function getBalance(address ownerAddress, bytes memory assetData)
public
view
returns (uint256 balance)
{
// Get id of AssetProxy contract
bytes4 assetProxyId = assetData.readBytes4(0);
if (assetProxyId == ERC20_PROXY_ID) {
// Get ERC20 token address
address tokenAddress = assetData.readAddress(16);
// Encode data for `balanceOf(ownerAddress)`
bytes memory balanceOfData = abi.encodeWithSelector(_ERC20_BALANCE_OF_SELECTOR, ownerAddress);
// Query balance
(bool success, bytes memory returnData) = tokenAddress.staticcall(balanceOfData);
balance = success && returnData.length == 32 ? returnData.readUint256(0) : 0;
} else if (assetProxyId == ERC721_PROXY_ID) {
// Get ERC721 token address and id
(, address tokenAddress, uint256 tokenId) = decodeERC721AssetData(assetData);
// Check if id is owned by ownerAddress
balance = getERC721TokenOwner(tokenAddress, tokenId) == ownerAddress ? 1 : 0;
} else if (assetProxyId == ERC1155_PROXY_ID) {
// Get ERC1155 token address, array of ids, and array of values
(, address tokenAddress, uint256[] memory tokenIds, uint256[] memory tokenValues,) = decodeERC1155AssetData(assetData);
uint256 length = tokenIds.length;
for (uint256 i = 0; i != length; i++) {
// Encode data for `balanceOf(ownerAddress, tokenIds[i])
bytes memory balanceOfData = abi.encodeWithSelector(
_ERC1155_BALANCE_OF_SELECTOR,
ownerAddress,
tokenIds[i]
);
// Query balance
(bool success, bytes memory returnData) = tokenAddress.staticcall(balanceOfData);
uint256 totalBalance = success && returnData.length == 32 ? returnData.readUint256(0) : 0;
// Scale total balance down by corresponding value in assetData
uint256 scaledBalance = totalBalance / tokenValues[i];
if (scaledBalance < balance || balance == 0) {
balance = scaledBalance;
}
}
} else if (assetProxyId == STATIC_CALL_PROXY_ID) {
// Encode data for `staticCallProxy.transferFrom(assetData,...)`
bytes memory transferFromData = abi.encodeWithSelector(
_ASSET_PROXY_TRANSFER_FROM_SELECTOR,
assetData,
address(0), // `from` address is not used
address(0), // `to` address is not used
0 // `amount` is not used
);
// Check if staticcall would be successful
(bool success,) = _STATIC_CALL_PROXY_ADDRESS.staticcall(transferFromData);
// Success means that the staticcall can be made an unlimited amount of times
balance = success ? _MAX_UINT256 : 0;
} else if (assetProxyId == MULTI_ASSET_PROXY_ID) {
// Get array of values and array of assetDatas
(, uint256[] memory assetAmounts, bytes[] memory nestedAssetData) = decodeMultiAssetData(assetData);
uint256 length = nestedAssetData.length;
for (uint256 i = 0; i != length; i++) {
// Query balance of individual assetData
uint256 totalBalance = getBalance(ownerAddress, nestedAssetData[i]);
// Scale total balance down by corresponding value in assetData
uint256 scaledBalance = totalBalance / assetAmounts[i];
if (scaledBalance < balance || balance == 0) {
balance = scaledBalance;
}
}
}
// Balance will be 0 if assetProxyId is unknown
return balance;
}
/// @dev Calls getBalance() for each element of assetData.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Array of asset details, each encoded per the AssetProxy contract specification.
/// @return Array of asset balances from getBalance(), with each element
/// corresponding to the same-indexed element in the assetData input.
function getBatchBalances(address ownerAddress, bytes[] memory assetData)
public
view
returns (uint256[] memory balances)
{
uint256 length = assetData.length;
balances = new uint256[](length);
for (uint256 i = 0; i != length; i++) {
balances[i] = getBalance(ownerAddress, assetData[i]);
}
return balances;
}
/// @dev Returns the number of asset(s) (described by assetData) that
/// the corresponding AssetProxy contract is authorized to spend. When the asset data contains
/// multiple assets (eg for Multi-Asset), the return value indicates
/// how many complete "baskets" of those assets may be spent by all of the corresponding
/// AssetProxy contracts.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Details of asset, encoded per the AssetProxy contract specification.
/// @return Number of assets (or asset baskets) that the corresponding AssetProxy is authorized to spend.
function getAssetProxyAllowance(address ownerAddress, bytes memory assetData)
public
view
returns (uint256 allowance)
{
// Get id of AssetProxy contract
bytes4 assetProxyId = assetData.readBytes4(0);
if (assetProxyId == MULTI_ASSET_PROXY_ID) {
// Get array of values and array of assetDatas
(, uint256[] memory amounts, bytes[] memory nestedAssetData) = decodeMultiAssetData(assetData);
uint256 length = nestedAssetData.length;
for (uint256 i = 0; i != length; i++) {
// Query allowance of individual assetData
uint256 totalAllowance = getAssetProxyAllowance(ownerAddress, nestedAssetData[i]);
// Scale total allowance down by corresponding value in assetData
uint256 scaledAllowance = totalAllowance / amounts[i];
if (scaledAllowance < allowance || allowance == 0) {
allowance = scaledAllowance;
}
}
return allowance;
}
if (assetProxyId == ERC20_PROXY_ID) {
// Get ERC20 token address
address tokenAddress = assetData.readAddress(16);
// Encode data for `allowance(ownerAddress, _ERC20_PROXY_ADDRESS)`
bytes memory allowanceData = abi.encodeWithSelector(
_ERC20_ALLOWANCE_SELECTOR,
ownerAddress,
_ERC20_PROXY_ADDRESS
);
// Query allowance
(bool success, bytes memory returnData) = tokenAddress.staticcall(allowanceData);
allowance = success && returnData.length == 32 ? returnData.readUint256(0) : 0;
} else if (assetProxyId == ERC721_PROXY_ID) {
// Get ERC721 token address and id
(, address tokenAddress, uint256 tokenId) = decodeERC721AssetData(assetData);
// Encode data for `isApprovedForAll(ownerAddress, _ERC721_PROXY_ADDRESS)`
bytes memory isApprovedForAllData = abi.encodeWithSelector(
_ERC721_IS_APPROVED_FOR_ALL_SELECTOR,
ownerAddress,
_ERC721_PROXY_ADDRESS
);
(bool success, bytes memory returnData) = tokenAddress.staticcall(isApprovedForAllData);
// If not approved for all, call `getApproved(tokenId)`
if (!success || returnData.length != 32 || returnData.readUint256(0) != 1) {
// Encode data for `getApproved(tokenId)`
bytes memory getApprovedData = abi.encodeWithSelector(_ERC721_GET_APPROVED_SELECTOR, tokenId);
(success, returnData) = tokenAddress.staticcall(getApprovedData);
// Allowance is 1 if successful and the approved address is the ERC721Proxy
allowance = success && returnData.length == 32 && returnData.readAddress(12) == _ERC721_PROXY_ADDRESS ? 1 : 0;
} else {
// Allowance is 2^256 - 1 if `isApprovedForAll` returned true
allowance = _MAX_UINT256;
}
} else if (assetProxyId == ERC1155_PROXY_ID) {
// Get ERC1155 token address
(, address tokenAddress, , , ) = decodeERC1155AssetData(assetData);
// Encode data for `isApprovedForAll(ownerAddress, _ERC1155_PROXY_ADDRESS)`
bytes memory isApprovedForAllData = abi.encodeWithSelector(
_ERC1155_IS_APPROVED_FOR_ALL_SELECTOR,
ownerAddress,
_ERC1155_PROXY_ADDRESS
);
// Query allowance
(bool success, bytes memory returnData) = tokenAddress.staticcall(isApprovedForAllData);
allowance = success && returnData.length == 32 && returnData.readUint256(0) == 1 ? _MAX_UINT256 : 0;
} else if (assetProxyId == STATIC_CALL_PROXY_ID) {
// The StaticCallProxy does not require any approvals
allowance = _MAX_UINT256;
}
// Allowance will be 0 if the assetProxyId is unknown
return allowance;
}
/// @dev Calls getAssetProxyAllowance() for each element of assetData.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Array of asset details, each encoded per the AssetProxy contract specification.
/// @return An array of asset allowances from getAllowance(), with each
/// element corresponding to the same-indexed element in the assetData input.
function getBatchAssetProxyAllowances(address ownerAddress, bytes[] memory assetData)
public
view
returns (uint256[] memory allowances)
{
uint256 length = assetData.length;
allowances = new uint256[](length);
for (uint256 i = 0; i != length; i++) {
allowances[i] = getAssetProxyAllowance(ownerAddress, assetData[i]);
}
return allowances;
}
/// @dev Calls getBalance() and getAllowance() for assetData.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Details of asset, encoded per the AssetProxy contract specification.
/// @return Number of assets (or asset baskets) held by owner, and number
/// of assets (or asset baskets) that the corresponding AssetProxy is authorized to spend.
function getBalanceAndAssetProxyAllowance(address ownerAddress, bytes memory assetData)
public
view
returns (uint256 balance, uint256 allowance)
{
balance = getBalance(ownerAddress, assetData);
allowance = getAssetProxyAllowance(ownerAddress, assetData);
return (balance, allowance);
}
/// @dev Calls getBatchBalances() and getBatchAllowances() for each element of assetData.
/// @param ownerAddress Owner of the assets specified by assetData.
/// @param assetData Array of asset details, each encoded per the AssetProxy contract specification.
/// @return An array of asset balances from getBalance(), and an array of
/// asset allowances from getAllowance(), with each element
/// corresponding to the same-indexed element in the assetData input.
function getBatchBalancesAndAssetProxyAllowances(address ownerAddress, bytes[] memory assetData)
public
view
returns (uint256[] memory balances, uint256[] memory allowances)
{
balances = getBatchBalances(ownerAddress, assetData);
allowances = getBatchAssetProxyAllowances(ownerAddress, assetData);
return (balances, allowances);
}
/// @dev Encode ERC-20 asset data into the format described in the AssetProxy contract specification.
/// @param tokenAddress The address of the ERC-20 contract hosting the asset to be traded.
/// @return AssetProxy-compliant data describing the asset.
function encodeERC20AssetData(address tokenAddress)
public
pure
returns (bytes memory assetData)
{
assetData = abi.encodeWithSelector(ERC20_PROXY_ID, tokenAddress);
return assetData;
}
/// @dev Decode ERC-20 asset data from the format described in the AssetProxy contract specification.
/// @param assetData AssetProxy-compliant asset data describing an ERC-20 asset.
/// @return The ERC-20 AssetProxy identifier, and the address of the ERC-20
/// contract hosting this asset.
function decodeERC20AssetData(bytes memory assetData)
public
pure
returns (
bytes4 assetProxyId,
address tokenAddress
)
{
assetProxyId = assetData.readBytes4(0);
require(
assetProxyId == ERC20_PROXY_ID,
"WRONG_PROXY_ID"
);
tokenAddress = assetData.readAddress(16);
return (assetProxyId, tokenAddress);
}
/// @dev Encode ERC-721 asset data into the format described in the AssetProxy specification.
/// @param tokenAddress The address of the ERC-721 contract hosting the asset to be traded.
/// @param tokenId The identifier of the specific asset to be traded.
/// @return AssetProxy-compliant asset data describing the asset.
function encodeERC721AssetData(address tokenAddress, uint256 tokenId)
public
pure
returns (bytes memory assetData)
{
assetData = abi.encodeWithSelector(
ERC721_PROXY_ID,
tokenAddress,
tokenId
);
return assetData;
}
/// @dev Decode ERC-721 asset data from the format described in the AssetProxy contract specification.
/// @param assetData AssetProxy-compliant asset data describing an ERC-721 asset.
/// @return The ERC-721 AssetProxy identifier, the address of the ERC-721
/// contract hosting this asset, and the identifier of the specific
/// asset to be traded.
function decodeERC721AssetData(bytes memory assetData)
public
pure
returns (
bytes4 assetProxyId,
address tokenAddress,
uint256 tokenId
)
{
assetProxyId = assetData.readBytes4(0);
require(
assetProxyId == ERC721_PROXY_ID,
"WRONG_PROXY_ID"
);
tokenAddress = assetData.readAddress(16);
tokenId = assetData.readUint256(36);
return (assetProxyId, tokenAddress, tokenId);
}
/// @dev Encode ERC-1155 asset data into the format described in the AssetProxy contract specification.
/// @param tokenAddress The address of the ERC-1155 contract hosting the asset(s) to be traded.
/// @param tokenIds The identifiers of the specific assets to be traded.
/// @param tokenValues The amounts of each asset to be traded.
/// @param callbackData Data to be passed to receiving contracts when a transfer is performed.
/// @return AssetProxy-compliant asset data describing the set of assets.
function encodeERC1155AssetData(
address tokenAddress,
uint256[] memory tokenIds,
uint256[] memory tokenValues,
bytes memory callbackData
)
public
pure
returns (bytes memory assetData)
{
assetData = abi.encodeWithSelector(
ERC1155_PROXY_ID,
tokenAddress,
tokenIds,
tokenValues,
callbackData
);
return assetData;
}
/// @dev Decode ERC-1155 asset data from the format described in the AssetProxy contract specification.
/// @param assetData AssetProxy-compliant asset data describing an ERC-1155 set of assets.
/// @return The ERC-1155 AssetProxy identifier, the address of the ERC-1155
/// contract hosting the assets, an array of the identifiers of the
/// assets to be traded, an array of asset amounts to be traded, and
/// callback data. Each element of the arrays corresponds to the
/// same-indexed element of the other array. Return values specified as
/// `memory` are returned as pointers to locations within the memory of
/// the input parameter `assetData`.
function decodeERC1155AssetData(bytes memory assetData)
public
pure
returns (
bytes4 assetProxyId,
address tokenAddress,
uint256[] memory tokenIds,
uint256[] memory tokenValues,
bytes memory callbackData
)
{
assetProxyId = assetData.readBytes4(0);
require(
assetProxyId == ERC1155_PROXY_ID,
"WRONG_PROXY_ID"
);
assembly {
// Skip selector and length to get to the first parameter:
assetData := add(assetData, 36)
// Read the value of the first parameter:
tokenAddress := mload(assetData)
// Point to the next parameter's data:
tokenIds := add(assetData, mload(add(assetData, 32)))
// Point to the next parameter's data:
tokenValues := add(assetData, mload(add(assetData, 64)))
// Point to the next parameter's data:
callbackData := add(assetData, mload(add(assetData, 96)))
}
return (
assetProxyId,
tokenAddress,
tokenIds,
tokenValues,
callbackData
);
}
/// @dev Encode data for multiple assets, per the AssetProxy contract specification.
/// @param amounts The amounts of each asset to be traded.
/// @param nestedAssetData AssetProxy-compliant data describing each asset to be traded.
/// @return AssetProxy-compliant data describing the set of assets.
function encodeMultiAssetData(uint256[] memory amounts, bytes[] memory nestedAssetData)
public
pure
returns (bytes memory assetData)
{
assetData = abi.encodeWithSelector(
MULTI_ASSET_PROXY_ID,
amounts,
nestedAssetData
);
return assetData;
}
/// @dev Decode multi-asset data from the format described in the AssetProxy contract specification.
/// @param assetData AssetProxy-compliant data describing a multi-asset basket.
/// @return The Multi-Asset AssetProxy identifier, an array of the amounts
/// of the assets to be traded, and an array of the
/// AssetProxy-compliant data describing each asset to be traded. Each
/// element of the arrays corresponds to the same-indexed element of the other array.
function decodeMultiAssetData(bytes memory assetData)
public
pure
returns (
bytes4 assetProxyId,
uint256[] memory amounts,
bytes[] memory nestedAssetData
)
{
assetProxyId = assetData.readBytes4(0);
require(
assetProxyId == MULTI_ASSET_PROXY_ID,
"WRONG_PROXY_ID"
);
// solhint-disable indent
(amounts, nestedAssetData) = abi.decode(
assetData.slice(4, assetData.length),
(uint256[], bytes[])
);
// solhint-enable indent
}
/// @dev Calls `asset.ownerOf(tokenId)`, but returns a null owner instead of reverting on an unowned asset.
/// @param tokenAddress Address of ERC721 asset.
/// @param tokenId The identifier for the specific NFT.
/// @return Owner of tokenId or null address if unowned.
function getERC721TokenOwner(address tokenAddress, uint256 tokenId)
public
view
returns (address ownerAddress)
{
bytes memory ownerOfCalldata = abi.encodeWithSelector(
_ERC721_OWNER_OF_SELECTOR,
tokenId
);
(bool success, bytes memory returnData) = tokenAddress.staticcall(ownerOfCalldata);
ownerAddress = (success && returnData.length == 32) ? returnData.readAddress(12) : address(0);
return ownerAddress;
}
}

View File

@@ -0,0 +1,193 @@
/*
Copyright 2019 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.5.5;
pragma experimental ABIEncoderV2;
import "@0x/contracts-exchange-libs/contracts/src/LibExchangeSelectors.sol";
import "@0x/contracts-exchange-libs/contracts/src/LibOrder.sol";
import "@0x/contracts-utils/contracts/src/LibBytes.sol";
contract LibTransactionDecoder is
LibExchangeSelectors
{
using LibBytes for bytes;
/// @dev Decodes the call data for an Exchange contract method call.
/// @param transactionData ABI-encoded calldata for an Exchange
/// contract method call.
/// @return The name of the function called, and the parameters it was
/// given. For single-order fills and cancels, the arrays will have
/// just one element.
function decodeZeroExTransactionData(bytes memory transactionData)
public
pure
returns(
string memory functionName,
LibOrder.Order[] memory orders,
uint256[] memory takerAssetFillAmounts,
bytes[] memory signatures
)
{
bytes4 functionSelector = transactionData.readBytes4(0);
if (functionSelector == BATCH_CANCEL_ORDERS_SELECTOR) {
functionName = "batchCancelOrders";
} else if (functionSelector == BATCH_FILL_ORDERS_SELECTOR) {
functionName = "batchFillOrders";
} else if (functionSelector == BATCH_FILL_ORDERS_NO_THROW_SELECTOR) {
functionName = "batchFillOrdersNoThrow";
} else if (functionSelector == BATCH_FILL_OR_KILL_ORDERS_SELECTOR) {
functionName = "batchFillOrKillOrders";
} else if (functionSelector == CANCEL_ORDER_SELECTOR) {
functionName = "cancelOrder";
} else if (functionSelector == FILL_ORDER_SELECTOR) {
functionName = "fillOrder";
} else if (functionSelector == FILL_ORDER_NO_THROW_SELECTOR) {
functionName = "fillOrderNoThrow";
} else if (functionSelector == FILL_OR_KILL_ORDER_SELECTOR) {
functionName = "fillOrKillOrder";
} else if (functionSelector == MARKET_BUY_ORDERS_SELECTOR) {
functionName = "marketBuyOrders";
} else if (functionSelector == MARKET_BUY_ORDERS_NO_THROW_SELECTOR) {
functionName = "marketBuyOrdersNoThrow";
} else if (functionSelector == MARKET_SELL_ORDERS_SELECTOR) {
functionName = "marketSellOrders";
} else if (functionSelector == MARKET_SELL_ORDERS_NO_THROW_SELECTOR) {
functionName = "marketSellOrdersNoThrow";
} else if (functionSelector == MATCH_ORDERS_SELECTOR) {
functionName = "matchOrders";
} else if (
functionSelector == CANCEL_ORDERS_UP_TO_SELECTOR ||
functionSelector == EXECUTE_TRANSACTION_SELECTOR
// TODO: add new noThrow cancel functions when https://github.com/0xProject/ZEIPs/issues/35 is merged.
) {
revert("UNIMPLEMENTED");
} else {
revert("UNKNOWN_FUNCTION_SELECTOR");
}
if (functionSelector == BATCH_CANCEL_ORDERS_SELECTOR) {
// solhint-disable-next-line indent
orders = abi.decode(transactionData.slice(4, transactionData.length), (LibOrder.Order[]));
takerAssetFillAmounts = new uint256[](0);
signatures = new bytes[](0);
} else if (
functionSelector == BATCH_FILL_OR_KILL_ORDERS_SELECTOR ||
functionSelector == BATCH_FILL_ORDERS_NO_THROW_SELECTOR ||
functionSelector == BATCH_FILL_ORDERS_SELECTOR
) {
(orders, takerAssetFillAmounts, signatures) = _makeReturnValuesForBatchFill(transactionData);
} else if (functionSelector == CANCEL_ORDER_SELECTOR) {
orders = new LibOrder.Order[](1);
orders[0] = abi.decode(transactionData.slice(4, transactionData.length), (LibOrder.Order));
takerAssetFillAmounts = new uint256[](0);
signatures = new bytes[](0);
} else if (
functionSelector == FILL_OR_KILL_ORDER_SELECTOR ||
functionSelector == FILL_ORDER_SELECTOR ||
functionSelector == FILL_ORDER_NO_THROW_SELECTOR
) {
(orders, takerAssetFillAmounts, signatures) = _makeReturnValuesForSingleOrderFill(transactionData);
} else if (
functionSelector == MARKET_BUY_ORDERS_SELECTOR ||
functionSelector == MARKET_BUY_ORDERS_NO_THROW_SELECTOR ||
functionSelector == MARKET_SELL_ORDERS_SELECTOR ||
functionSelector == MARKET_SELL_ORDERS_NO_THROW_SELECTOR
) {
(orders, takerAssetFillAmounts, signatures) = _makeReturnValuesForMarketFill(transactionData);
} else if (functionSelector == MATCH_ORDERS_SELECTOR) {
(
LibOrder.Order memory leftOrder,
LibOrder.Order memory rightOrder,
bytes memory leftSignature,
bytes memory rightSignature
) = abi.decode(
transactionData.slice(4, transactionData.length),
(LibOrder.Order, LibOrder.Order, bytes, bytes)
);
orders = new LibOrder.Order[](2);
orders[0] = leftOrder;
orders[1] = rightOrder;
takerAssetFillAmounts = new uint256[](2);
takerAssetFillAmounts[0] = leftOrder.takerAssetAmount;
takerAssetFillAmounts[1] = rightOrder.takerAssetAmount;
signatures = new bytes[](2);
signatures[0] = leftSignature;
signatures[1] = rightSignature;
}
}
function _makeReturnValuesForSingleOrderFill(bytes memory transactionData)
private
pure
returns(
LibOrder.Order[] memory orders,
uint256[] memory takerAssetFillAmounts,
bytes[] memory signatures
)
{
orders = new LibOrder.Order[](1);
takerAssetFillAmounts = new uint256[](1);
signatures = new bytes[](1);
// solhint-disable-next-line indent
(orders[0], takerAssetFillAmounts[0], signatures[0]) = abi.decode(
transactionData.slice(4, transactionData.length),
(LibOrder.Order, uint256, bytes)
);
}
function _makeReturnValuesForBatchFill(bytes memory transactionData)
private
pure
returns(
LibOrder.Order[] memory orders,
uint256[] memory takerAssetFillAmounts,
bytes[] memory signatures
)
{
// solhint-disable-next-line indent
(orders, takerAssetFillAmounts, signatures) = abi.decode(
transactionData.slice(4, transactionData.length),
// solhint-disable-next-line indent
(LibOrder.Order[], uint256[], bytes[])
);
}
function _makeReturnValuesForMarketFill(bytes memory transactionData)
private
pure
returns(
LibOrder.Order[] memory orders,
uint256[] memory takerAssetFillAmounts,
bytes[] memory signatures
)
{
takerAssetFillAmounts = new uint256[](1);
// solhint-disable-next-line indent
(orders, takerAssetFillAmounts[0], signatures) = abi.decode(
transactionData.slice(4, transactionData.length),
// solhint-disable-next-line indent
(LibOrder.Order[], uint256, bytes[])
);
}
}

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