├── .circleci └── config.yml ├── .editorconfig ├── .gitattributes ├── .github ├── autolabeler.yml └── stale.yml ├── .gitignore ├── .prettierignore ├── .prettierrc ├── CODEOWNERS ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── ISSUE_TEMPLATE.md ├── LICENSE ├── PULL_REQUEST_TEMPLATE.md ├── README.md ├── contracts ├── .solhint.json ├── README.md ├── TESTING.md ├── asset-proxy │ ├── .npmignore │ ├── .solhintignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── archive │ │ │ ├── MixinAssetProxyDispatcher.sol │ │ │ ├── MixinAuthorizable.sol │ │ │ └── Ownable.sol │ │ ├── src │ │ │ ├── ERC1155Proxy.sol │ │ │ ├── ERC20BridgeProxy.sol │ │ │ ├── ERC20Proxy.sol │ │ │ ├── ERC721Proxy.sol │ │ │ ├── MultiAssetProxy.sol │ │ │ ├── StaticCallProxy.sol │ │ │ ├── bridges │ │ │ │ ├── BalancerBridge.sol │ │ │ │ ├── BancorBridge.sol │ │ │ │ ├── ChaiBridge.sol │ │ │ │ ├── CreamBridge.sol │ │ │ │ ├── CurveBridge.sol │ │ │ │ ├── DODOBridge.sol │ │ │ │ ├── DexForwarderBridge.sol │ │ │ │ ├── DydxBridge.sol │ │ │ │ ├── Eth2DaiBridge.sol │ │ │ │ ├── KyberBridge.sol │ │ │ │ ├── MStableBridge.sol │ │ │ │ ├── MixinGasToken.sol │ │ │ │ ├── MooniswapBridge.sol │ │ │ │ ├── ShellBridge.sol │ │ │ │ ├── SushiSwapBridge.sol │ │ │ │ ├── UniswapBridge.sol │ │ │ │ └── UniswapV2Bridge.sol │ │ │ └── interfaces │ │ │ │ ├── IAssetData.sol │ │ │ │ ├── IAssetProxy.sol │ │ │ │ ├── IAssetProxyDispatcher.sol │ │ │ │ ├── IAuthorizable.sol │ │ │ │ ├── IBalancerPool.sol │ │ │ │ ├── IBancorNetwork.sol │ │ │ │ ├── IChai.sol │ │ │ │ ├── ICurve.sol │ │ │ │ ├── IDydx.sol │ │ │ │ ├── IDydxBridge.sol │ │ │ │ ├── IERC20Bridge.sol │ │ │ │ ├── IEth2Dai.sol │ │ │ │ ├── IGasToken.sol │ │ │ │ ├── IKyberNetworkProxy.sol │ │ │ │ ├── IMStable.sol │ │ │ │ ├── IMooniswap.sol │ │ │ │ ├── IShell.sol │ │ │ │ ├── IUniswapExchange.sol │ │ │ │ ├── IUniswapExchangeFactory.sol │ │ │ │ └── IUniswapV2Router01.sol │ │ └── test │ │ │ ├── TestBancorBridge.sol │ │ │ ├── TestChaiBridge.sol │ │ │ ├── TestDexForwarderBridge.sol │ │ │ ├── TestDydxBridge.sol │ │ │ ├── TestERC20Bridge.sol │ │ │ ├── TestEth2DaiBridge.sol │ │ │ ├── TestKyberBridge.sol │ │ │ ├── TestStaticCallTarget.sol │ │ │ ├── TestUniswapBridge.sol │ │ │ └── TestUniswapV2Bridge.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── asset_data.ts │ │ ├── dex_forwarder_bridge.ts │ │ ├── dydx_bridge_encoder.ts │ │ ├── erc1155_proxy_wrapper.ts │ │ ├── erc20_wrapper.ts │ │ ├── erc721_wrapper.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── authorizable.ts │ │ ├── bancor_bridge.ts │ │ ├── chai_bridge.ts │ │ ├── dex_forwarder_bridge.ts │ │ ├── dydx_bridge.ts │ │ ├── erc1155_proxy.ts │ │ ├── erc20bridge_proxy.ts │ │ ├── eth2dai_bridge.ts │ │ ├── global_hooks.ts │ │ ├── kyber_bridge.ts │ │ ├── proxies.ts │ │ ├── static_call_proxy.ts │ │ ├── uniswap_bridge.ts │ │ ├── uniswapv2_bridge.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── broker │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Broker.sol │ │ │ ├── interfaces │ │ │ │ ├── IBroker.sol │ │ │ │ ├── IGodsUnchained.sol │ │ │ │ └── IPropertyValidator.sol │ │ │ ├── libs │ │ │ │ └── LibBrokerRichErrors.sol │ │ │ └── validators │ │ │ │ └── GodsUnchainedValidator.sol │ │ └── test │ │ │ └── TestGodsUnchained.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── gods_unchained_utils.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── gods_unchained_validator_test.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── coordinator │ ├── .npmignore │ ├── .solhintignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ └── src │ │ │ ├── Coordinator.sol │ │ │ ├── MixinCoordinatorApprovalVerifier.sol │ │ │ ├── MixinCoordinatorCore.sol │ │ │ ├── MixinSignatureValidator.sol │ │ │ ├── interfaces │ │ │ ├── ICoordinatorApprovalVerifier.sol │ │ │ ├── ICoordinatorCore.sol │ │ │ └── ICoordinatorSignatureValidator.sol │ │ │ ├── libs │ │ │ ├── LibConstants.sol │ │ │ ├── LibCoordinatorApproval.sol │ │ │ ├── LibCoordinatorRichErrors.sol │ │ │ └── LibEIP712CoordinatorDomain.sol │ │ │ └── registry │ │ │ ├── CoordinatorRegistry.sol │ │ │ ├── MixinCoordinatorRegistryCore.sol │ │ │ └── interfaces │ │ │ └── ICoordinatorRegistryCore.sol │ ├── package.json │ ├── src │ │ ├── approval_factory.ts │ │ ├── artifacts.ts │ │ ├── client │ │ │ ├── index.ts │ │ │ └── utils │ │ │ │ ├── assert.ts │ │ │ │ ├── coordinator_server_types.ts │ │ │ │ └── decorators.ts │ │ ├── hash_utils.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── coordinator_registry.ts │ │ ├── global_hooks.ts │ │ ├── libs.ts │ │ ├── mixins.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── dev-utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Addresses.sol │ │ │ ├── AssetBalance.sol │ │ │ ├── DevUtils.sol │ │ │ ├── EthBalanceChecker.sol │ │ │ ├── ExternalFunctions.sol │ │ │ ├── LibAssetData.sol │ │ │ ├── LibDydxBalance.sol │ │ │ ├── LibOrderTransferSimulation.sol │ │ │ ├── LibTransactionDecoder.sol │ │ │ ├── OrderTransferSimulationUtils.sol │ │ │ └── OrderValidationUtils.sol │ │ └── test │ │ │ ├── TestDydx.sol │ │ │ └── TestLibDydxBalance.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── lib_dydx_balance_test.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── erc1155 │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── ERC1155.sol │ │ │ ├── ERC1155Mintable.sol │ │ │ ├── MixinNonFungibleToken.sol │ │ │ └── interfaces │ │ │ │ ├── IERC1155.sol │ │ │ │ ├── IERC1155Mintable.sol │ │ │ │ └── IERC1155Receiver.sol │ │ └── test │ │ │ └── DummyERC1155Receiver.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── erc1155_wrapper.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── erc1155_token.ts │ │ ├── global_hooks.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── erc20 │ ├── .npmignore │ ├── .solhintignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── ERC20Token.sol │ │ │ ├── LibERC20Token.sol │ │ │ ├── MintableERC20Token.sol │ │ │ ├── UnlimitedAllowanceERC20Token.sol │ │ │ ├── WETH9.sol │ │ │ ├── ZRXToken.sol │ │ │ ├── interfaces │ │ │ │ ├── IERC20Token.sol │ │ │ │ └── IEtherToken.sol │ │ │ └── v06 │ │ │ │ ├── IERC20TokenV06.sol │ │ │ │ ├── IEtherTokenV06.sol │ │ │ │ └── LibERC20TokenV06.sol │ │ └── test │ │ │ ├── DummyERC20Token.sol │ │ │ ├── DummyMultipleReturnERC20Token.sol │ │ │ ├── DummyNoReturnERC20Token.sol │ │ │ ├── TestLibERC20Token.sol │ │ │ ├── TestLibERC20TokenTarget.sol │ │ │ └── UntransferrableDummyERC20Token.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── global_hooks.ts │ │ ├── lib_erc20_token.ts │ │ ├── unlimited_allowance_token.ts │ │ ├── weth9.ts │ │ ├── wrappers.ts │ │ └── zrx_token.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── erc721 │ ├── .npmignore │ ├── .solhintignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── ERC721Token.sol │ │ │ ├── MintableERC721Token.sol │ │ │ └── interfaces │ │ │ │ ├── IERC721Receiver.sol │ │ │ │ └── IERC721Token.sol │ │ └── test │ │ │ ├── DummyERC721Receiver.sol │ │ │ ├── DummyERC721Token.sol │ │ │ └── InvalidERC721Receiver.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── erc721_token.ts │ │ ├── global_hooks.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── exchange-forwarder │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Forwarder.sol │ │ │ ├── MixinExchangeWrapper.sol │ │ │ ├── MixinReceiver.sol │ │ │ ├── interfaces │ │ │ │ ├── IExchangeV2.sol │ │ │ │ └── IForwarder.sol │ │ │ └── libs │ │ │ │ └── LibForwarderRichErrors.sol │ │ └── test │ │ │ └── TestForwarder.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── asset_test.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── exchange-libs │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── IWallet.sol │ │ │ ├── LibEIP712ExchangeDomain.sol │ │ │ ├── LibExchangeRichErrors.sol │ │ │ ├── LibFillResults.sol │ │ │ ├── LibMath.sol │ │ │ ├── LibMathRichErrors.sol │ │ │ ├── LibOrder.sol │ │ │ └── LibZeroExTransaction.sol │ │ └── test │ │ │ ├── TestLibEIP712ExchangeDomain.sol │ │ │ ├── TestLibFillResults.sol │ │ │ ├── TestLibMath.sol │ │ │ ├── TestLibOrder.sol │ │ │ └── TestLibZeroExTransaction.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ ├── reference_functions.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── global_hooks.ts │ │ ├── lib_eip712_exchange_domain.ts │ │ ├── lib_fill_results.ts │ │ ├── lib_math.ts │ │ ├── lib_order.ts │ │ ├── lib_zero_ex_transaction.ts │ │ ├── reference_functions.ts │ │ ├── utils │ │ │ ├── index.ts │ │ │ └── schema.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ └── tslint.json ├── exchange │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Exchange.sol │ │ │ ├── MixinAssetProxyDispatcher.sol │ │ │ ├── MixinExchangeCore.sol │ │ │ ├── MixinMatchOrders.sol │ │ │ ├── MixinProtocolFees.sol │ │ │ ├── MixinSignatureValidator.sol │ │ │ ├── MixinTransactions.sol │ │ │ ├── MixinTransferSimulator.sol │ │ │ ├── MixinWrapperFunctions.sol │ │ │ ├── interfaces │ │ │ │ ├── IAssetProxy.sol │ │ │ │ ├── IAssetProxyDispatcher.sol │ │ │ │ ├── IEIP1271Data.sol │ │ │ │ ├── IEIP1271Wallet.sol │ │ │ │ ├── IExchange.sol │ │ │ │ ├── IExchangeCore.sol │ │ │ │ ├── IMatchOrders.sol │ │ │ │ ├── IProtocolFees.sol │ │ │ │ ├── ISignatureValidator.sol │ │ │ │ ├── ITransactions.sol │ │ │ │ ├── ITransferSimulator.sol │ │ │ │ ├── IWallet.sol │ │ │ │ └── IWrapperFunctions.sol │ │ │ └── libs │ │ │ │ └── LibExchangeRichErrorDecoder.sol │ │ └── test │ │ │ ├── IsolatedExchange.sol │ │ │ ├── ReentrancyTester.sol │ │ │ ├── TestAssetProxyDispatcher.sol │ │ │ ├── TestExchangeInternals.sol │ │ │ ├── TestFillRounding.sol │ │ │ ├── TestLibExchangeRichErrorDecoder.sol │ │ │ ├── TestProtocolFeeCollector.sol │ │ │ ├── TestProtocolFees.sol │ │ │ ├── TestProtocolFeesReceiver.sol │ │ │ ├── TestTransactions.sol │ │ │ ├── TestValidatorWallet.sol │ │ │ └── TestWrapperFunctions.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── exchange_data_encoder.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── codesize.ts │ │ ├── dispatcher.ts │ │ ├── exchange_transfer_simulator_test.ts │ │ ├── fill_order.ts │ │ ├── global_hooks.ts │ │ ├── internal.ts │ │ ├── isolated_fill_order.ts │ │ ├── lib_exchange_rich_error_decoder.ts │ │ ├── protocol_fees.ts │ │ ├── protocol_fees_manager.ts │ │ ├── reentrancy_tests.ts │ │ ├── reference_functions.ts │ │ ├── signature_validator.ts │ │ ├── transactions_unit_tests.ts │ │ ├── utils │ │ │ ├── abstract │ │ │ │ ├── abstract_balance_and_proxy_allowance_fetcher.ts │ │ │ │ ├── abstract_balance_and_proxy_allowance_lazy_store.ts │ │ │ │ ├── abstract_order_filled_cancelled_fetcher.ts │ │ │ │ └── abstract_order_filled_cancelled_lazy_store.ts │ │ │ ├── asset_balance_and_proxy_allowance_fetcher.ts │ │ │ ├── asset_wrapper.ts │ │ │ ├── constants.ts │ │ │ ├── dependency_artifacts.ts │ │ │ ├── exchange_transfer_simulator.ts │ │ │ ├── exchange_wrapper.ts │ │ │ ├── fill_order_combinatorial_utils.ts │ │ │ ├── fill_order_scenarios.ts │ │ │ ├── fill_order_simulator.ts │ │ │ ├── isolated_exchange_wrapper.ts │ │ │ ├── order_factory_from_scenario.ts │ │ │ ├── simple_asset_balance_and_proxy_allowance_fetcher.ts │ │ │ ├── simple_erc20_balance_and_proxy_allowance_fetcher.ts │ │ │ ├── store │ │ │ │ ├── balance_and_proxy_allowance_lazy_store.ts │ │ │ │ └── order_filled_cancelled_lazy_store.ts │ │ │ └── types.ts │ │ ├── wrapper_unit_tests.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── extensions │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ └── src │ │ │ ├── LibAssetDataTransfer.sol │ │ │ ├── MaximumGasPrice.sol │ │ │ ├── MixinWethUtils.sol │ │ │ └── rich-errors │ │ │ ├── LibAssetDataTransferRichErrors.sol │ │ │ └── LibWethUtilsRichErrors.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ ├── max_gas_price_utils.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── max_gas_price_test.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── integrations │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── ChainlinkStopLimit.sol │ │ │ └── interfaces │ │ │ │ └── IChainlinkAggregator.sol │ │ └── test │ │ │ ├── TestChainlinkAggregator.sol │ │ │ ├── TestContractWrapper.sol │ │ │ ├── TestDydxUser.sol │ │ │ ├── TestEth2Dai.sol │ │ │ ├── TestEth2DaiBridge.sol │ │ │ ├── TestFramework.sol │ │ │ ├── TestMainnetAggregatorFills.sol │ │ │ ├── TestSignatureValidationWallet.sol │ │ │ ├── TestUniswapBridge.sol │ │ │ ├── TestUniswapExchange.sol │ │ │ └── TestUniswapExchangeFactory.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── chainlink_utils.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── aggregation │ │ │ ├── fill_test.ts │ │ │ └── tokens.ts │ │ ├── artifacts.ts │ │ ├── benchmarks │ │ │ ├── chai_bridge_test.ts │ │ │ └── dydx_bridge_test.ts │ │ ├── bridges │ │ │ ├── abi │ │ │ │ └── dydxEvents.ts │ │ │ ├── balancer_bridge_mainnet_test.ts │ │ │ ├── curve_bridge_mainnet_test.ts │ │ │ ├── deploy_dydx_bridge.ts │ │ │ ├── deploy_eth2dai_bridge.ts │ │ │ ├── deploy_uniswap_bridge.ts │ │ │ └── dydx_bridge_mainnet_test.ts │ │ ├── broker │ │ │ └── broker_test.ts │ │ ├── coordinator │ │ │ ├── client_test.ts │ │ │ ├── coordinator_test.ts │ │ │ └── deploy_coordinator.ts │ │ ├── deployment_test.ts │ │ ├── dev-utils │ │ │ ├── dev_utils_mainnet_test.ts │ │ │ ├── dydx_order_validation_test.ts │ │ │ ├── get_order_hash.ts │ │ │ ├── global_hooks.ts │ │ │ ├── lib_asset_data.ts │ │ │ ├── lib_transaction_decoder.ts │ │ │ └── order_validation_utils.ts │ │ ├── exchange-proxy │ │ │ └── mtx_test.ts │ │ ├── exchange │ │ │ ├── batch_match_orders_test.ts │ │ │ ├── core_test.ts │ │ │ ├── exchange_wrapper_test.ts │ │ │ ├── fill_dydx_order_test.ts │ │ │ ├── fill_order_test.ts │ │ │ ├── fill_order_wrapper.ts │ │ │ ├── match_order_tester.ts │ │ │ ├── match_orders_maximal_fill_test.ts │ │ │ ├── match_orders_test.ts │ │ │ ├── transaction_protocol_fee_test.ts │ │ │ └── transaction_test.ts │ │ ├── forwarder │ │ │ ├── bridge_test.ts │ │ │ ├── deploy_forwarder.ts │ │ │ ├── forwarder_mainnet_test.ts │ │ │ ├── forwarder_test.ts │ │ │ ├── forwarder_test_factory.ts │ │ │ └── types.ts │ │ ├── framework │ │ │ ├── actors │ │ │ │ ├── base.ts │ │ │ │ ├── fee_recipient.ts │ │ │ │ ├── hybrids.ts │ │ │ │ ├── keeper.ts │ │ │ │ ├── maker.ts │ │ │ │ ├── pool_operator.ts │ │ │ │ ├── staker.ts │ │ │ │ ├── taker.ts │ │ │ │ ├── tslint.json │ │ │ │ └── utils.ts │ │ │ ├── assertions │ │ │ │ ├── createStakingPool.ts │ │ │ │ ├── decreaseStakingPoolOperatorShare.ts │ │ │ │ ├── endEpoch.ts │ │ │ │ ├── fillOrder.ts │ │ │ │ ├── finalizePool.ts │ │ │ │ ├── function_assertion.ts │ │ │ │ ├── generic_assertions.ts │ │ │ │ ├── joinStakingPool.ts │ │ │ │ ├── matchOrders.ts │ │ │ │ ├── matchOrdersWithMaximalFill.ts │ │ │ │ ├── moveStake.ts │ │ │ │ ├── stake.ts │ │ │ │ ├── unstake.ts │ │ │ │ └── withdrawDelegatorRewards.ts │ │ │ ├── balances │ │ │ │ ├── balance_store.ts │ │ │ │ ├── blockchain_balance_store.ts │ │ │ │ ├── local_balance_store.ts │ │ │ │ └── types.ts │ │ │ ├── deployment_manager.ts │ │ │ ├── simulation.ts │ │ │ ├── tests │ │ │ │ ├── deployment_manager_test.ts │ │ │ │ └── function_assertion_test.ts │ │ │ └── utils │ │ │ │ ├── assert_protocol_fee.ts │ │ │ │ ├── logger.ts │ │ │ │ ├── pseudorandom.ts │ │ │ │ ├── verify_match_events.ts │ │ │ │ └── wrapper_interfaces.ts │ │ ├── fuzz_tests │ │ │ ├── exchange_signature_validation_test.ts │ │ │ ├── match_orders_test.ts │ │ │ ├── pool_management_test.ts │ │ │ ├── pool_membership_test.ts │ │ │ ├── stake_management_test.ts │ │ │ ├── staking_rewards_test.ts │ │ │ └── tslint.json │ │ ├── mainnet_configs_test.ts │ │ ├── mainnet_contract_wrapper_test.ts │ │ ├── mainnet_fork_utils.ts │ │ ├── stop-limit │ │ │ └── chainlink_stop_limit_test.ts │ │ └── wrappers.ts │ ├── tsconfig.json │ └── tslint.json ├── multisig │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── MultiSigWallet.sol │ │ │ ├── MultiSigWalletWithTimeLock.sol │ │ │ └── ZeroExGovernor.sol │ │ └── test │ │ │ ├── ContractCallReceiver.sol │ │ │ ├── TestRejectEther.sol │ │ │ └── TestZeroExGovernor.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── global_hooks.ts │ │ ├── multi_sig_with_time_lock.ts │ │ ├── utils │ │ │ ├── index.ts │ │ │ ├── multi_sig_wrapper.ts │ │ │ └── zero_ex_governor_wrapper.ts │ │ ├── wrappers.ts │ │ └── zero_ex_governor.ts │ ├── truffle-config.js │ ├── tsconfig.json │ └── tslint.json ├── staking │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Staking.sol │ │ │ ├── StakingProxy.sol │ │ │ ├── ZrxVault.sol │ │ │ ├── fees │ │ │ │ ├── MixinExchangeFees.sol │ │ │ │ └── MixinExchangeManager.sol │ │ │ ├── immutable │ │ │ │ ├── MixinConstants.sol │ │ │ │ ├── MixinDeploymentConstants.sol │ │ │ │ └── MixinStorage.sol │ │ │ ├── interfaces │ │ │ │ ├── IStaking.sol │ │ │ │ ├── IStakingEvents.sol │ │ │ │ ├── IStakingProxy.sol │ │ │ │ ├── IStorage.sol │ │ │ │ ├── IStorageInit.sol │ │ │ │ ├── IStructs.sol │ │ │ │ └── IZrxVault.sol │ │ │ ├── libs │ │ │ │ ├── LibCobbDouglas.sol │ │ │ │ ├── LibFixedMath.sol │ │ │ │ ├── LibFixedMathRichErrors.sol │ │ │ │ ├── LibSafeDowncast.sol │ │ │ │ └── LibStakingRichErrors.sol │ │ │ ├── stake │ │ │ │ ├── MixinStake.sol │ │ │ │ ├── MixinStakeBalances.sol │ │ │ │ └── MixinStakeStorage.sol │ │ │ ├── staking_pools │ │ │ │ ├── MixinCumulativeRewards.sol │ │ │ │ ├── MixinStakingPool.sol │ │ │ │ └── MixinStakingPoolRewards.sol │ │ │ └── sys │ │ │ │ ├── MixinAbstract.sol │ │ │ │ ├── MixinFinalizer.sol │ │ │ │ ├── MixinParams.sol │ │ │ │ └── MixinScheduler.sol │ │ └── test │ │ │ ├── TestAssertStorageParams.sol │ │ │ ├── TestCobbDouglas.sol │ │ │ ├── TestCumulativeRewardTracking.sol │ │ │ ├── TestDelegatorRewards.sol │ │ │ ├── TestExchangeManager.sol │ │ │ ├── TestFinalizer.sol │ │ │ ├── TestInitTarget.sol │ │ │ ├── TestLibFixedMath.sol │ │ │ ├── TestLibSafeDowncast.sol │ │ │ ├── TestMixinCumulativeRewards.sol │ │ │ ├── TestMixinParams.sol │ │ │ ├── TestMixinScheduler.sol │ │ │ ├── TestMixinStake.sol │ │ │ ├── TestMixinStakeBalances.sol │ │ │ ├── TestMixinStakeStorage.sol │ │ │ ├── TestMixinStakingPool.sol │ │ │ ├── TestMixinStakingPoolRewards.sol │ │ │ ├── TestProtocolFees.sol │ │ │ ├── TestProxyDestination.sol │ │ │ ├── TestStaking.sol │ │ │ ├── TestStakingNoWETH.sol │ │ │ ├── TestStakingProxy.sol │ │ │ ├── TestStakingProxyUnit.sol │ │ │ └── TestStorageLayoutAndConstants.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── constants.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── wrappers.ts │ ├── test │ │ ├── actors │ │ │ ├── base_actor.ts │ │ │ ├── finalizer_actor.ts │ │ │ ├── maker_actor.ts │ │ │ ├── pool_operator_actor.ts │ │ │ └── staker_actor.ts │ │ ├── artifacts.ts │ │ ├── codesize_test.ts │ │ ├── cumulative_reward_tracking_test.ts │ │ ├── epoch_test.ts │ │ ├── global_hooks.ts │ │ ├── layout_and_constant_regression_test.ts │ │ ├── migration_test.ts │ │ ├── pools_test.ts │ │ ├── rewards_test.ts │ │ ├── stake_test.ts │ │ ├── unit_tests │ │ │ ├── authorizable.ts │ │ │ ├── delegator_reward_test.ts │ │ │ ├── exchange_test.ts │ │ │ ├── finalizer_test.ts │ │ │ ├── lib_cobb_douglas_test.ts │ │ │ ├── lib_fixed_math_test.ts │ │ │ ├── lib_safe_downcast_test.ts │ │ │ ├── mixin_cumulative_rewards_test.ts │ │ │ ├── mixin_scheduler_test.ts │ │ │ ├── mixin_stake_storage_test.ts │ │ │ ├── mixin_staking_pool_rewards.ts │ │ │ ├── params_test.ts │ │ │ ├── protocol_fees_test.ts │ │ │ ├── stake_balances_test.ts │ │ │ ├── stake_test.ts │ │ │ ├── staking_pool_test.ts │ │ │ ├── staking_proxy_test.ts │ │ │ └── zrx_vault_test.ts │ │ ├── utils │ │ │ ├── api_wrapper.ts │ │ │ ├── cumulative_reward_tracking_simulation.ts │ │ │ └── queue.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── test-utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── abstract_asset_wrapper.ts │ │ ├── address_utils.ts │ │ ├── assertions.ts │ │ ├── block_timestamp.ts │ │ ├── chai_setup.ts │ │ ├── codesize.ts │ │ ├── combinatorial_utils.ts │ │ ├── constants.ts │ │ ├── coverage.ts │ │ ├── global_hooks.ts │ │ ├── index.ts │ │ ├── lang_utils.ts │ │ ├── log_decoder.ts │ │ ├── log_utils.ts │ │ ├── mocha_blockchain.ts │ │ ├── number_utils.ts │ │ ├── order_factory.ts │ │ ├── order_hash.ts │ │ ├── order_utils.ts │ │ ├── profiler.ts │ │ ├── revert_trace.ts │ │ ├── signing_utils.ts │ │ ├── test_with_reference.ts │ │ ├── transaction_factory.ts │ │ ├── transaction_hash.ts │ │ ├── type_encoding_utils.ts │ │ ├── types.ts │ │ └── web3_wrapper.ts │ ├── test │ │ ├── mocha_blockchain.ts │ │ ├── order_hash_test.ts │ │ ├── subtests │ │ │ └── mocha_blockchain_1.ts │ │ ├── test_with_reference.ts │ │ └── transaction_hash.ts │ ├── tsconfig.json │ ├── tsconfig.lint.json │ └── tslint.json ├── utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── Authorizable.sol │ │ │ ├── D18.sol │ │ │ ├── DeploymentConstants.sol │ │ │ ├── LibAddress.sol │ │ │ ├── LibAddressArray.sol │ │ │ ├── LibAddressArrayRichErrors.sol │ │ │ ├── LibAuthorizableRichErrors.sol │ │ │ ├── LibBytes.sol │ │ │ ├── LibBytesRichErrors.sol │ │ │ ├── LibEIP1271.sol │ │ │ ├── LibEIP712.sol │ │ │ ├── LibFractions.sol │ │ │ ├── LibOwnableRichErrors.sol │ │ │ ├── LibReentrancyGuardRichErrors.sol │ │ │ ├── LibRichErrors.sol │ │ │ ├── LibSafeMath.sol │ │ │ ├── LibSafeMathRichErrors.sol │ │ │ ├── Ownable.sol │ │ │ ├── ReentrancyGuard.sol │ │ │ ├── Refundable.sol │ │ │ ├── interfaces │ │ │ │ ├── IAuthorizable.sol │ │ │ │ └── IOwnable.sol │ │ │ └── v06 │ │ │ │ ├── AuthorizableV06.sol │ │ │ │ ├── LibBytesV06.sol │ │ │ │ ├── LibMathV06.sol │ │ │ │ ├── LibSafeMathV06.sol │ │ │ │ ├── OwnableV06.sol │ │ │ │ ├── ReentrancyGuardV06.sol │ │ │ │ ├── errors │ │ │ │ ├── LibAuthorizableRichErrorsV06.sol │ │ │ │ ├── LibBytesRichErrorsV06.sol │ │ │ │ ├── LibMathRichErrorsV06.sol │ │ │ │ ├── LibOwnableRichErrorsV06.sol │ │ │ │ ├── LibReentrancyGuardRichErrorsV06.sol │ │ │ │ ├── LibRichErrorsV06.sol │ │ │ │ └── LibSafeMathRichErrorsV06.sol │ │ │ │ └── interfaces │ │ │ │ ├── IAuthorizableV06.sol │ │ │ │ └── IOwnableV06.sol │ │ └── test │ │ │ ├── TestAuthorizable.sol │ │ │ ├── TestLibAddress.sol │ │ │ ├── TestLibAddressArray.sol │ │ │ ├── TestLibBytes.sol │ │ │ ├── TestLibEIP712.sol │ │ │ ├── TestLibRichErrors.sol │ │ │ ├── TestLibSafeMath.sol │ │ │ ├── TestLogDecoding.sol │ │ │ ├── TestLogDecodingDownstream.sol │ │ │ ├── TestOwnable.sol │ │ │ ├── TestReentrancyGuard.sol │ │ │ ├── TestRefundable.sol │ │ │ └── TestRefundableReceiver.sol │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── index.ts │ │ ├── reference_functions.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── authorizable.ts │ │ ├── global_hooks.ts │ │ ├── lib_address.ts │ │ ├── lib_address_array.ts │ │ ├── lib_bytes.ts │ │ ├── lib_eip712.ts │ │ ├── lib_rich_errors.ts │ │ ├── lib_safe_math.ts │ │ ├── log_decoding.ts │ │ ├── ownable.ts │ │ ├── reentrancy_guard.ts │ │ ├── reference_functions.ts │ │ ├── refundable.ts │ │ └── wrappers.ts │ ├── truffle-config.js │ ├── tsconfig.json │ └── tslint.json └── zero-ex │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── DEPLOYS.json │ ├── README.md │ ├── compiler.json │ ├── contracts │ ├── src │ │ ├── IZeroEx.sol │ │ ├── ZeroEx.sol │ │ ├── errors │ │ │ ├── LibCommonRichErrors.sol │ │ │ ├── LibLiquidityProviderRichErrors.sol │ │ │ ├── LibMetaTransactionsRichErrors.sol │ │ │ ├── LibOwnableRichErrors.sol │ │ │ ├── LibProxyRichErrors.sol │ │ │ ├── LibSignatureRichErrors.sol │ │ │ ├── LibSimpleFunctionRegistryRichErrors.sol │ │ │ ├── LibSpenderRichErrors.sol │ │ │ ├── LibTransformERC20RichErrors.sol │ │ │ └── LibWalletRichErrors.sol │ │ ├── external │ │ │ ├── AllowanceTarget.sol │ │ │ ├── FlashWallet.sol │ │ │ ├── IAllowanceTarget.sol │ │ │ ├── IFlashWallet.sol │ │ │ └── TransformerDeployer.sol │ │ ├── features │ │ │ ├── BootstrapFeature.sol │ │ │ ├── IBootstrapFeature.sol │ │ │ ├── IFeature.sol │ │ │ ├── ILiquidityProviderFeature.sol │ │ │ ├── IMetaTransactionsFeature.sol │ │ │ ├── IOwnableFeature.sol │ │ │ ├── ISignatureValidatorFeature.sol │ │ │ ├── ISimpleFunctionRegistryFeature.sol │ │ │ ├── ITokenSpenderFeature.sol │ │ │ ├── ITransformERC20Feature.sol │ │ │ ├── IUniswapFeature.sol │ │ │ ├── LiquidityProviderFeature.sol │ │ │ ├── MetaTransactionsFeature.sol │ │ │ ├── OwnableFeature.sol │ │ │ ├── SignatureValidatorFeature.sol │ │ │ ├── SimpleFunctionRegistryFeature.sol │ │ │ ├── TokenSpenderFeature.sol │ │ │ ├── TransformERC20Feature.sol │ │ │ ├── UniswapFeature.sol │ │ │ └── libs │ │ │ │ └── LibSignedCallData.sol │ │ ├── fixins │ │ │ ├── FixinCommon.sol │ │ │ ├── FixinEIP712.sol │ │ │ └── FixinReentrancyGuard.sol │ │ ├── migrations │ │ │ ├── FullMigration.sol │ │ │ ├── InitialMigration.sol │ │ │ ├── LibBootstrap.sol │ │ │ └── LibMigrate.sol │ │ ├── storage │ │ │ ├── LibLiquidityProviderStorage.sol │ │ │ ├── LibMetaTransactionsStorage.sol │ │ │ ├── LibOwnableStorage.sol │ │ │ ├── LibProxyStorage.sol │ │ │ ├── LibReentrancyGuardStorage.sol │ │ │ ├── LibSimpleFunctionRegistryStorage.sol │ │ │ ├── LibStorage.sol │ │ │ ├── LibTokenSpenderStorage.sol │ │ │ └── LibTransformERC20Storage.sol │ │ ├── transformers │ │ │ ├── AffiliateFeeTransformer.sol │ │ │ ├── FillQuoteTransformer.sol │ │ │ ├── IERC20Transformer.sol │ │ │ ├── LibERC20Transformer.sol │ │ │ ├── LogMetadataTransformer.sol │ │ │ ├── PayTakerTransformer.sol │ │ │ ├── Transformer.sol │ │ │ ├── WethTransformer.sol │ │ │ └── bridges │ │ │ │ ├── BridgeAdapter.sol │ │ │ │ ├── IBridgeAdapter.sol │ │ │ │ └── mixins │ │ │ │ ├── MixinAdapterAddresses.sol │ │ │ │ ├── MixinBalancer.sol │ │ │ │ ├── MixinCurve.sol │ │ │ │ ├── MixinKyber.sol │ │ │ │ ├── MixinMStable.sol │ │ │ │ ├── MixinMooniswap.sol │ │ │ │ ├── MixinOasis.sol │ │ │ │ ├── MixinShell.sol │ │ │ │ ├── MixinUniswap.sol │ │ │ │ ├── MixinUniswapV2.sol │ │ │ │ └── MixinZeroExBridge.sol │ │ └── vendor │ │ │ └── v3 │ │ │ ├── IERC20Bridge.sol │ │ │ ├── IExchange.sol │ │ │ └── IGasToken.sol │ └── test │ │ ├── ITestSimpleFunctionRegistryFeature.sol │ │ ├── TestBridge.sol │ │ ├── TestCallTarget.sol │ │ ├── TestDelegateCaller.sol │ │ ├── TestFillQuoteTransformerBridge.sol │ │ ├── TestFillQuoteTransformerExchange.sol │ │ ├── TestFillQuoteTransformerHost.sol │ │ ├── TestFullMigration.sol │ │ ├── TestInitialMigration.sol │ │ ├── TestMetaTransactionsTransformERC20Feature.sol │ │ ├── TestMigrator.sol │ │ ├── TestMintTokenERC20Transformer.sol │ │ ├── TestMintableERC20Token.sol │ │ ├── TestSimpleFunctionRegistryFeatureImpl1.sol │ │ ├── TestSimpleFunctionRegistryFeatureImpl2.sol │ │ ├── TestTokenSpender.sol │ │ ├── TestTokenSpenderERC20Token.sol │ │ ├── TestTransformERC20.sol │ │ ├── TestTransformerBase.sol │ │ ├── TestTransformerDeployerTransformer.sol │ │ ├── TestTransformerHost.sol │ │ ├── TestWeth.sol │ │ ├── TestWethTransformerHost.sol │ │ └── TestZeroExFeature.sol │ ├── package.json │ ├── src │ ├── artifacts.ts │ ├── index.ts │ ├── migration.ts │ ├── nonce_utils.ts │ ├── signed_call_data.ts │ └── wrappers.ts │ ├── test │ ├── allowance_target_test.ts │ ├── artifacts.ts │ ├── features │ │ ├── liquidity_provider_test.ts │ │ ├── meta_transactions_test.ts │ │ ├── ownable_test.ts │ │ ├── signature_validator_test.ts │ │ ├── simple_function_registry_test.ts │ │ ├── token_spender_test.ts │ │ └── transform_erc20_test.ts │ ├── flash_wallet_test.ts │ ├── full_migration_test.ts │ ├── initial_migration_test.ts │ ├── storage_uniqueness_test.ts │ ├── transformer_deployer_test.ts │ ├── transformers │ │ ├── affiliate_fee_transformer_test.ts │ │ ├── fill_quote_transformer_test.ts │ │ ├── pay_taker_transformer_test.ts │ │ ├── transformer_base_test.ts │ │ └── weth_transformer_test.ts │ ├── utils │ │ ├── abis.ts │ │ └── migration.ts │ ├── wrappers.ts │ └── zero_ex_test.ts │ ├── truffle-config.js │ ├── tsconfig.json │ └── tslint.json ├── lerna.json ├── package.json ├── packages ├── 0x.js │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ └── index.ts │ ├── tsconfig.json │ ├── tslint.json │ ├── typedoc-tsconfig.json │ └── webpack.config.js ├── abi-gen │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── bin │ │ └── abi-gen.js │ ├── compiler.json │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── python_handlebars_helpers.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── stubs │ │ ├── eth_account │ │ │ ├── __init__.pyi │ │ │ └── local.pyi │ │ ├── hexbytes │ │ │ └── __init__.pyi │ │ └── web3 │ │ │ ├── __init__.pyi │ │ │ ├── contract.pyi │ │ │ ├── datastructures.pyi │ │ │ ├── exceptions.pyi │ │ │ └── providers │ │ │ ├── __init__.pyi │ │ │ └── base.pyi │ ├── templates │ │ ├── Python │ │ │ ├── contract.handlebars │ │ │ └── partials │ │ │ │ ├── call_return_type.handlebars │ │ │ │ ├── event.handlebars │ │ │ │ ├── method_class.handlebars │ │ │ │ ├── params.handlebars │ │ │ │ ├── return_type.handlebars │ │ │ │ └── typed_params.handlebars │ │ └── TypeScript │ │ │ ├── contract.handlebars │ │ │ └── partials │ │ │ ├── abi_type.handlebars │ │ │ ├── event.handlebars │ │ │ ├── method_call.handlebars │ │ │ ├── method_tx.handlebars │ │ │ ├── normalized_params.handlebars │ │ │ ├── params.handlebars │ │ │ ├── params_docstring.handlebars │ │ │ ├── return_type.handlebars │ │ │ └── typed_params.handlebars │ ├── test-cli │ │ ├── fixtures │ │ │ ├── artifacts │ │ │ │ ├── AbiGenDummy.json │ │ │ │ ├── LibDummy.json │ │ │ │ └── TestLibDummy.json │ │ │ ├── contracts │ │ │ │ ├── AbiGenDummy.sol │ │ │ │ ├── LibDummy.sol │ │ │ │ └── TestLibDummy.sol │ │ │ ├── pylintrc │ │ │ └── python-requirements.txt │ │ ├── output │ │ │ ├── python │ │ │ │ ├── abi_gen_dummy │ │ │ │ │ └── __init__.py │ │ │ │ ├── lib_dummy │ │ │ │ │ └── __init__.py │ │ │ │ └── test_lib_dummy │ │ │ │ │ └── __init__.py │ │ │ └── typescript │ │ │ │ ├── abi_gen_dummy.ts │ │ │ │ ├── lib_dummy.ts │ │ │ │ └── test_lib_dummy.ts │ │ ├── test_typescript │ │ │ ├── src │ │ │ │ ├── artifacts.ts │ │ │ │ ├── index.ts │ │ │ │ └── wrappers.ts │ │ │ └── test │ │ │ │ └── abi_gen_dummy_test.ts │ │ └── tsconfig.json │ ├── test │ │ └── utils_test.ts │ ├── tsconfig.json │ └── tslint.json ├── assert │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ └── index.ts │ ├── test │ │ └── assert_test.ts │ ├── tsconfig.json │ └── tslint.json ├── asset-swapper │ ├── .gitignore │ ├── .npmignore │ ├── .solhint.json │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── compiler.json │ ├── contracts │ │ ├── src │ │ │ ├── ApproximateBuys.sol │ │ │ ├── BalancerSampler.sol │ │ │ ├── CurveSampler.sol │ │ │ ├── DODOSampler.sol │ │ │ ├── ERC20BridgeSampler.sol │ │ │ ├── Eth2DaiSampler.sol │ │ │ ├── IMooniswap.sol │ │ │ ├── KyberSampler.sol │ │ │ ├── LiquidityProviderSampler.sol │ │ │ ├── MStableSampler.sol │ │ │ ├── MooniswapSampler.sol │ │ │ ├── MultiBridgeSampler.sol │ │ │ ├── NativeOrderSampler.sol │ │ │ ├── SamplerUtils.sol │ │ │ ├── ShellSampler.sol │ │ │ ├── SushiSwapSampler.sol │ │ │ ├── TwoHopSampler.sol │ │ │ ├── UniswapSampler.sol │ │ │ ├── UniswapV2Sampler.sol │ │ │ └── interfaces │ │ │ │ ├── IBalancer.sol │ │ │ │ ├── ICurve.sol │ │ │ │ ├── IEth2Dai.sol │ │ │ │ ├── IKyberNetwork.sol │ │ │ │ ├── ILiquidityProvider.sol │ │ │ │ ├── ILiquidityProviderRegistry.sol │ │ │ │ ├── IMStable.sol │ │ │ │ ├── IMultiBridge.sol │ │ │ │ ├── IShell.sol │ │ │ │ ├── IUniswapExchangeQuotes.sol │ │ │ │ └── IUniswapV2Router01.sol │ │ └── test │ │ │ ├── DummyLiquidityProvider.sol │ │ │ ├── DummyLiquidityProviderRegistry.sol │ │ │ ├── TestERC20BridgeSampler.sol │ │ │ └── TestNativeOrderSampler.sol │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package-lock.json │ ├── package.json │ ├── src │ │ ├── artifacts.ts │ │ ├── constants.ts │ │ ├── errors.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── quote_consumers │ │ │ ├── exchange_proxy_swap_quote_consumer.ts │ │ │ ├── swap_quote_consumer.ts │ │ │ └── utils.ts │ │ ├── swap_quoter.ts │ │ ├── types.ts │ │ ├── utils │ │ │ ├── affiliate_fee_utils.ts │ │ │ ├── assert.ts │ │ │ ├── calculate_liquidity.ts │ │ │ ├── fillable_amounts_utils.ts │ │ │ ├── market_operation_utils │ │ │ │ ├── balancer_utils.ts │ │ │ │ ├── bancor_service.ts │ │ │ │ ├── constants.ts │ │ │ │ ├── cream_utils.ts │ │ │ │ ├── curve_utils.ts │ │ │ │ ├── fills.ts │ │ │ │ ├── index.ts │ │ │ │ ├── kyber_utils.ts │ │ │ │ ├── multibridge_utils.ts │ │ │ │ ├── multihop_utils.ts │ │ │ │ ├── orders.ts │ │ │ │ ├── path.ts │ │ │ │ ├── path_optimizer.ts │ │ │ │ ├── rate_utils.ts │ │ │ │ ├── sampler.ts │ │ │ │ ├── sampler_contract_operation.ts │ │ │ │ ├── sampler_operations.ts │ │ │ │ ├── source_filters.ts │ │ │ │ └── types.ts │ │ │ ├── order_prune_utils.ts │ │ │ ├── order_state_utils.ts │ │ │ ├── protocol_fee_utils.ts │ │ │ ├── quote_report_generator.ts │ │ │ ├── quote_requestor.ts │ │ │ ├── quote_simulation.ts │ │ │ ├── rfq_maker_blacklist.ts │ │ │ ├── rfqt_mocker.ts │ │ │ ├── sorting_utils.ts │ │ │ ├── swap_quote_calculator.ts │ │ │ ├── swap_quote_consumer_utils.ts │ │ │ └── utils.ts │ │ └── wrappers.ts │ ├── test │ │ ├── artifacts.ts │ │ ├── bancor_service_test.ts │ │ ├── calculate_liquidity_test.ts │ │ ├── contracts │ │ │ ├── bridge_sampler_mainnet_test.ts │ │ │ ├── erc20_bridge_sampler_test.ts │ │ │ └── native_order_sampler_test.ts │ │ ├── dex_sampler_test.ts │ │ ├── exchange_proxy_swap_quote_consumer_test.ts │ │ ├── fillable_amounts_utils_test.ts │ │ ├── global_hooks.ts │ │ ├── market_operation_utils_test.ts │ │ ├── order_prune_utils_test.ts │ │ ├── order_state_utils_test.ts │ │ ├── quote_report_generator_test.ts │ │ ├── quote_requestor_test.ts │ │ ├── quote_simulation_test.ts │ │ ├── rfq_maker_blacklist_test.ts │ │ ├── sorting_utils_test.ts │ │ ├── swap_quote_consumer_utils_test.ts │ │ ├── swap_quoter_test.ts │ │ ├── utils │ │ │ ├── chai_setup.ts │ │ │ ├── mock_balancer_pools_cache.ts │ │ │ ├── mock_bancor_service.ts │ │ │ ├── mock_sampler_contract.ts │ │ │ ├── mocks.ts │ │ │ ├── swap_quote.ts │ │ │ ├── test_helpers.ts │ │ │ ├── test_order_factory.ts │ │ │ ├── test_orders.ts │ │ │ ├── utils.ts │ │ │ └── web3_wrapper.ts │ │ ├── utils_test.ts │ │ └── wrappers.ts │ ├── tsconfig.json │ ├── tslint.json │ ├── typedoc-tsconfig.json │ └── webpack.config.js ├── base-contract │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── subscription_manager.ts │ │ ├── types.ts │ │ ├── utils.ts │ │ └── utils │ │ │ └── filter_utils.ts │ ├── test │ │ ├── base_contract_test.ts │ │ └── utils_test.ts │ ├── tsconfig.json │ └── tslint.json ├── connect │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── http_client.ts │ │ ├── index.ts │ │ ├── orders_channel_factory.ts │ │ ├── types.ts │ │ ├── utils │ │ │ ├── assert.ts │ │ │ ├── order_parsing_utils.ts │ │ │ ├── orders_channel_message_parser.ts │ │ │ ├── relayer_response_json_parsers.ts │ │ │ └── type_converters.ts │ │ └── ws_orders_channel.ts │ ├── test │ │ ├── fixtures │ │ │ └── standard_relayer_api │ │ │ │ ├── asset_pairs.json │ │ │ │ ├── asset_pairs.ts │ │ │ │ ├── fee_recipients.json │ │ │ │ ├── fee_recipients.ts │ │ │ │ ├── order │ │ │ │ ├── 0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json │ │ │ │ └── 0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.ts │ │ │ │ ├── order_config.json │ │ │ │ ├── order_config.ts │ │ │ │ ├── orderbook.json │ │ │ │ ├── orderbook.ts │ │ │ │ ├── orders.json │ │ │ │ ├── orders.ts │ │ │ │ ├── unknown_orders_channel_message.ts │ │ │ │ └── update_orders_channel_message.ts │ │ ├── http_client_test.ts │ │ ├── orders_channel_factory_test.ts │ │ ├── orders_channel_message_parsers_test.ts │ │ └── ws_orders_channel_test.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── contract-addresses │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── addresses.json │ ├── package.json │ ├── src │ │ └── index.ts │ ├── tsconfig.json │ └── tslint.json ├── contract-artifacts │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── artifacts │ │ ├── AssetProxyOwner.json │ │ ├── Broker.json │ │ ├── Coordinator.json │ │ ├── CoordinatorRegistry.json │ │ ├── DevUtils.json │ │ ├── DummyERC20Token.json │ │ ├── DummyERC721Token.json │ │ ├── DummyLiquidityProvider.json │ │ ├── DummyLiquidityProviderRegistry.json │ │ ├── DutchAuction.json │ │ ├── ERC1155Mintable.json │ │ ├── ERC1155Proxy.json │ │ ├── ERC20BridgeProxy.json │ │ ├── ERC20Proxy.json │ │ ├── ERC20Token.json │ │ ├── ERC721Proxy.json │ │ ├── ERC721Token.json │ │ ├── Exchange.json │ │ ├── Forwarder.json │ │ ├── GodsUnchainedValidator.json │ │ ├── IAssetData.json │ │ ├── IAssetProxy.json │ │ ├── ILiquidityProvider.json │ │ ├── ILiquidityProviderRegistry.json │ │ ├── ITransformERC20.json │ │ ├── IValidator.json │ │ ├── IWallet.json │ │ ├── IZeroEx.json │ │ ├── MaximumGasPrice.json │ │ ├── MultiAssetProxy.json │ │ ├── OrderValidator.json │ │ ├── Staking.json │ │ ├── StakingProxy.json │ │ ├── StaticCallProxy.json │ │ ├── WETH9.json │ │ ├── ZRXToken.json │ │ └── ZrxVault.json │ ├── package.json │ ├── src │ │ ├── copy.ts │ │ ├── index.ts │ │ └── transform.ts │ ├── test │ │ └── contract_artifacts_test.ts │ ├── tsconfig.json │ └── tslint.json ├── contract-wrappers-test │ ├── .npmignore │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── test │ │ ├── calldata_decoder_test.ts │ │ ├── global_hooks.ts │ │ └── utils │ │ │ ├── chai_setup.ts │ │ │ ├── constants.ts │ │ │ └── web3_wrapper.ts │ ├── tsconfig.json │ └── tslint.json ├── contract-wrappers │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── contract_wrappers.ts │ │ ├── contract_wrappers_config_schema.ts │ │ ├── generated-wrappers │ │ │ ├── broker.ts │ │ │ ├── coordinator.ts │ │ │ ├── dev_utils.ts │ │ │ ├── erc20_token.ts │ │ │ ├── erc721_token.ts │ │ │ ├── exchange.ts │ │ │ ├── forwarder.ts │ │ │ ├── gods_unchained_validator.ts │ │ │ ├── i_asset_data.ts │ │ │ ├── i_liquidity_provider.ts │ │ │ ├── i_liquidity_provider_registry.ts │ │ │ ├── i_transform_erc20.ts │ │ │ ├── i_zero_ex.ts │ │ │ ├── maximum_gas_price.ts │ │ │ ├── staking.ts │ │ │ ├── staking_proxy.ts │ │ │ └── weth9.ts │ │ ├── index.ts │ │ ├── types.ts │ │ └── utils │ │ │ └── contract_addresses.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── contracts-gen │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── bin │ │ └── contracts-gen.js │ ├── package.json │ ├── src │ │ ├── contracts-gen.ts │ │ └── index.ts │ ├── tsconfig.json │ └── tslint.json ├── dev-utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── blockchain_lifecycle.ts │ │ ├── callback_error_reporter.ts │ │ ├── chai_revert_error.ts │ │ ├── chai_setup.ts │ │ ├── constants.ts │ │ ├── env.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── token_utils.ts │ │ └── web3_factory.ts │ ├── test │ │ ├── .npmignore │ │ ├── blockchain_lifecycle_test.ts │ │ ├── chai_test.ts │ │ └── rpc_test.ts │ ├── tsconfig.json │ └── tslint.json ├── devnet │ ├── Dockerfile │ ├── README.md │ ├── docker-compose.yml │ ├── genesis.json │ ├── node0 │ │ ├── keystore │ │ │ ├── UTC--2018-05-11T21-29-08.903003751Z--5409ed021d9299bf6814279a6a1411a7e866a631 │ │ │ ├── UTC--2018-05-11T21-29-09.794553183Z--6ecbe1db9ef729cbe972c83fb886247691fb6beb │ │ │ ├── UTC--2018-05-11T21-29-10.696351411Z--e36ea790bc9d7ab70c55260c66d52b1eca985f84 │ │ │ ├── UTC--2018-05-11T21-29-11.479938556Z--e834ec434daba538cd1b9fe1582052b880bd7e63 │ │ │ ├── UTC--2018-05-11T21-29-12.260348580Z--78dc5d2d739606d31509c31d654056a45185ecb6 │ │ │ ├── UTC--2018-05-11T21-29-13.178294829Z--a8dda8d7f5310e4a9e24f8eba77e091ac264f872 │ │ │ ├── UTC--2018-05-11T21-29-13.960499696Z--06cef8e666768cc40cc78cf93d9611019ddcb628 │ │ │ ├── UTC--2018-05-11T21-29-14.757010386Z--4404ac8bd8f9618d27ad2f1485aa1b2cfd82482d │ │ │ ├── UTC--2018-05-11T21-29-15.554233052Z--7457d5e02197480db681d3fdf256c7aca21bdc12 │ │ │ ├── UTC--2018-05-11T21-29-16.342711541Z--91c987bf62d25945db517bdaa840a6c661374402 │ │ │ └── UTC--2018-05-15T21-50-24.532037737Z--e8816898d851d5b61b7f950627d04d794c07ca37 │ │ └── password.txt │ └── run.sh ├── ethereum-types │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ └── index.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── instant │ ├── .dogfood.discharge.json │ ├── .env_example │ ├── .gitignore │ ├── .npmignore │ ├── .production.discharge.json │ ├── .staging.discharge.json │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── jest.config.js │ ├── package.json │ ├── public │ │ ├── external.css │ │ └── index.html │ ├── src │ │ ├── assets │ │ │ ├── icons │ │ │ │ ├── ae.svg │ │ │ │ ├── agi.svg │ │ │ │ ├── ant.svg │ │ │ │ ├── ast.svg │ │ │ │ ├── bat.svg │ │ │ │ ├── chevronRight.svg │ │ │ │ ├── cvc.svg │ │ │ │ ├── dai.svg │ │ │ │ ├── dgd.svg │ │ │ │ ├── dgx.svg │ │ │ │ ├── dnt.svg │ │ │ │ ├── fun.svg │ │ │ │ ├── gno.svg │ │ │ │ ├── gnt.svg │ │ │ │ ├── knc.svg │ │ │ │ ├── link.svg │ │ │ │ ├── lpt.svg │ │ │ │ ├── mana.svg │ │ │ │ ├── mkr.svg │ │ │ │ ├── mln.svg │ │ │ │ ├── omg.svg │ │ │ │ ├── phone.svg │ │ │ │ ├── powr.svg │ │ │ │ ├── ren.svg │ │ │ │ ├── rep.svg │ │ │ │ ├── req.svg │ │ │ │ ├── salt.svg │ │ │ │ ├── snt.svg │ │ │ │ ├── spank.svg │ │ │ │ ├── usdc.svg │ │ │ │ ├── wax.svg │ │ │ │ ├── zil.svg │ │ │ │ └── zrx.svg │ │ │ └── powered_by_0x.svg │ │ ├── components │ │ │ ├── amount_placeholder.tsx │ │ │ ├── animations │ │ │ │ ├── full_rotation.tsx │ │ │ │ ├── position_animation.tsx │ │ │ │ ├── pulse.tsx │ │ │ │ └── slide_animation.tsx │ │ │ ├── buy_button.tsx │ │ │ ├── buy_order_progress.tsx │ │ │ ├── buy_order_state_buttons.tsx │ │ │ ├── coinbase_wallet_logo.tsx │ │ │ ├── css_reset.tsx │ │ │ ├── erc20_asset_amount_input.tsx │ │ │ ├── erc20_token_selector.tsx │ │ │ ├── install_wallet_panel_content.tsx │ │ │ ├── instant_heading.tsx │ │ │ ├── meta_mask_logo.tsx │ │ │ ├── order_details.tsx │ │ │ ├── payment_method.tsx │ │ │ ├── payment_method_dropdown.tsx │ │ │ ├── placing_order_button.tsx │ │ │ ├── scaling_amount_input.tsx │ │ │ ├── scaling_input.tsx │ │ │ ├── search_input.tsx │ │ │ ├── secondary_button.tsx │ │ │ ├── section_header.tsx │ │ │ ├── sliding_error.tsx │ │ │ ├── sliding_panel.tsx │ │ │ ├── standard_panel_content.tsx │ │ │ ├── standard_sliding_panel.tsx │ │ │ ├── time_counter.tsx │ │ │ ├── timed_progress_bar.tsx │ │ │ ├── ui │ │ │ │ ├── button.tsx │ │ │ │ ├── circle.tsx │ │ │ │ ├── container.tsx │ │ │ │ ├── dropdown.tsx │ │ │ │ ├── flex.tsx │ │ │ │ ├── icon.tsx │ │ │ │ ├── image.tsx │ │ │ │ ├── input.tsx │ │ │ │ ├── overlay.tsx │ │ │ │ ├── spinner.tsx │ │ │ │ └── text.tsx │ │ │ ├── wallet_prompt.tsx │ │ │ ├── zero_ex_instant.tsx │ │ │ ├── zero_ex_instant_container.tsx │ │ │ ├── zero_ex_instant_overlay.tsx │ │ │ └── zero_ex_instant_provider.tsx │ │ ├── constants.ts │ │ ├── containers │ │ │ ├── available_erc20_token_selector.ts │ │ │ ├── connected_account_payment_method.ts │ │ │ ├── connected_buy_order_progress_or_payment_method.tsx │ │ │ ├── current_standard_sliding_panel.ts │ │ │ ├── latest_buy_quote_order_details.ts │ │ │ ├── latest_error.tsx │ │ │ ├── selected_asset_buy_order_progress.ts │ │ │ ├── selected_asset_buy_order_state_buttons.ts │ │ │ ├── selected_asset_instant_heading.ts │ │ │ ├── selected_asset_theme_provider.ts │ │ │ └── selected_erc20_asset_amount_input.ts │ │ ├── data │ │ │ ├── asset_data_network_mapping.ts │ │ │ └── asset_meta_data_map.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── index.umd.ts │ │ ├── redux │ │ │ ├── actions.ts │ │ │ ├── analytics_middleware.ts │ │ │ ├── async_data.ts │ │ │ ├── reducer.ts │ │ │ └── store.ts │ │ ├── style │ │ │ ├── fonts.ts │ │ │ ├── media.ts │ │ │ ├── theme.ts │ │ │ ├── util.ts │ │ │ └── z_index.ts │ │ ├── types.ts │ │ └── util │ │ │ ├── address.ts │ │ │ ├── analytics.ts │ │ │ ├── assert.ts │ │ │ ├── asset.ts │ │ │ ├── asset_data_encoder.ts │ │ │ ├── asset_swapper_factory.ts │ │ │ ├── coinbase_api.ts │ │ │ ├── env.ts │ │ │ ├── error_flasher.ts │ │ │ ├── error_reporter.ts │ │ │ ├── etherscan.ts │ │ │ ├── format.ts │ │ │ ├── gas_price_estimator.ts │ │ │ ├── heap.ts │ │ │ ├── heartbeater.ts │ │ │ ├── heartbeater_factory.ts │ │ │ ├── maybe_big_number.ts │ │ │ ├── order_coercion.ts │ │ │ ├── provider_factory.ts │ │ │ ├── provider_state_factory.ts │ │ │ ├── swap_quote_updater.ts │ │ │ ├── time.ts │ │ │ └── util.ts │ ├── test │ │ ├── components │ │ │ └── zero_ex_instant.test.tsx │ │ └── util │ │ │ ├── asset.test.ts │ │ │ ├── format.test.ts │ │ │ ├── maybe_big_number.test.ts │ │ │ ├── order_coercion.test.ts │ │ │ └── time.test.ts │ ├── tsconfig.json │ ├── tslint.json │ └── webpack.config.js ├── json-schemas │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── schemas │ │ ├── address_schema.json │ │ ├── asset_pairs_request_opts_schema.json │ │ ├── block_param_schema.json │ │ ├── block_range_schema.json │ │ ├── call_data_schema.json │ │ ├── ec_signature_parameter_schema.json │ │ ├── ec_signature_schema.json │ │ ├── eip712_domain_schema.json │ │ ├── eip712_typed_data_schema.json │ │ ├── exchange_proxy_meta_transaction_schema.json │ │ ├── hex_schema.json │ │ ├── index_filter_values_schema.json │ │ ├── js_number_schema.json │ │ ├── number_schema.json │ │ ├── order_cancel_schema.json │ │ ├── order_config_request_schema.json │ │ ├── order_fill_or_kill_requests_schema.json │ │ ├── order_fill_requests_schema.json │ │ ├── order_hash_schema.json │ │ ├── order_schema.json │ │ ├── orderbook_request_schema.json │ │ ├── orders_request_opts_schema.json │ │ ├── orders_schema.json │ │ ├── paged_request_opts_schema.json │ │ ├── paginated_collection_schema.json │ │ ├── relayer_api_asset_data_pairs_response_schema.json │ │ ├── relayer_api_asset_data_pairs_schema.json │ │ ├── relayer_api_asset_data_trade_info_schema.json │ │ ├── relayer_api_error_response_schema.json │ │ ├── relayer_api_fee_recipients_response_schema.json │ │ ├── relayer_api_order_config_payload_schema.json │ │ ├── relayer_api_order_config_response_schema.json │ │ ├── relayer_api_order_schema.json │ │ ├── relayer_api_orderbook_response_schema.json │ │ ├── relayer_api_orders_channel_subscribe_payload_schema.json │ │ ├── relayer_api_orders_channel_subscribe_schema.json │ │ ├── relayer_api_orders_channel_update_response_schema.json │ │ ├── relayer_api_orders_response_schema.json │ │ ├── relayer_api_orders_schema.json │ │ ├── signed_order_schema.json │ │ ├── signed_orders_schema.json │ │ ├── token_schema.json │ │ ├── tx_data_schema.json │ │ ├── whole_number_schema.json │ │ └── zero_ex_transaction_schema.json │ ├── src │ │ ├── index.ts │ │ ├── schema_validator.ts │ │ └── schemas.ts │ ├── test │ │ └── schema_test.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── migrations │ ├── .gitignore │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── Dockerfile │ ├── README.md │ ├── bin │ │ └── 0x-migrate.js │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── cli.ts │ │ ├── index.ts │ │ ├── migrate.ts │ │ ├── migrate_snapshot.ts │ │ ├── migrate_with_test_defaults.ts │ │ ├── migration.ts │ │ ├── test_contract_configs.ts │ │ ├── testnet_migrations.ts │ │ ├── types.ts │ │ └── utils │ │ │ ├── configs_by_chain.ts │ │ │ ├── constants.ts │ │ │ ├── provider_factory.ts │ │ │ ├── timelocks.ts │ │ │ └── token_info.ts │ ├── test │ │ └── snapshot_addresses_test.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── monorepo-scripts │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── constants.ts │ │ ├── deps_versions.ts │ │ ├── doc_gen_configs.ts │ │ ├── doc_generate.ts │ │ ├── find_unused_dependencies.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── prepublish_checks.ts │ │ ├── publish.ts │ │ ├── publish_release_notes.ts │ │ ├── test_installation.ts │ │ ├── types.ts │ │ └── utils │ │ │ ├── changelog_utils.ts │ │ │ ├── configs.ts │ │ │ ├── discord.ts │ │ │ ├── doc_generate_utils.ts │ │ │ ├── docker_hub_utils.ts │ │ │ ├── github_release_utils.ts │ │ │ ├── npm_utils.ts │ │ │ └── utils.ts │ ├── tsconfig.json │ └── tslint.json ├── order-utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── assert.ts │ │ ├── asset_data_utils.ts │ │ ├── constants.ts │ │ ├── eip712_utils.ts │ │ ├── hash_utils.ts │ │ ├── index.ts │ │ ├── market_utils.ts │ │ ├── order_calculation_utils.ts │ │ ├── order_factory.ts │ │ ├── order_hash_utils.ts │ │ ├── rate_utils.ts │ │ ├── remaining_fillable_calculator.ts │ │ ├── salt.ts │ │ ├── schemas │ │ │ └── validate_order_fillable_opts_schema.ts │ │ ├── signature_utils.ts │ │ ├── sorting_utils.ts │ │ ├── transaction_hash_utils.ts │ │ ├── transformer_utils.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── test │ │ ├── artifacts │ │ │ └── UntransferrableDummyERC20Token.ts │ │ ├── assert_test.ts │ │ ├── asset_data_utils_test.ts │ │ ├── eip712_utils_test.ts │ │ ├── market_utils_test.ts │ │ ├── rate_utils_test.ts │ │ ├── remaining_fillable_calculator_test.ts │ │ ├── signature_utils_test.ts │ │ ├── sorting_utils_test.ts │ │ └── utils │ │ │ ├── chai_setup.ts │ │ │ ├── test_order_factory.ts │ │ │ └── web3_wrapper.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── orderbook │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── jest.config.js │ ├── package.json │ ├── src │ │ ├── index.ts │ │ ├── order_provider │ │ │ ├── base_order_provider.ts │ │ │ ├── base_sra_order_provider.ts │ │ │ ├── custom_order_provider.ts │ │ │ ├── mesh_order_provider.ts │ │ │ ├── sra_polling_order_provider.ts │ │ │ └── sra_websocket_order_provider.ts │ │ ├── order_set.ts │ │ ├── order_store.ts │ │ ├── orderbook.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── test │ │ ├── order_provider │ │ │ ├── mesh_order_provider.test.ts │ │ │ ├── mock_ws_server.ts │ │ │ ├── sra_polling_order_provider.test.ts │ │ │ └── sra_websocket_order_provider.test.ts │ │ ├── orderbook.test.ts │ │ ├── utils.test.ts │ │ └── utils.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── sol-compiler │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── bin │ │ └── sol-compiler.js │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── solc_bin │ │ └── .gitkeep │ ├── src │ │ ├── cli.ts │ │ ├── compiler.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── schemas │ │ │ └── compiler_options_schema.ts │ │ ├── solc_wrapper.ts │ │ ├── solc_wrapper_v04.ts │ │ ├── solc_wrapper_v05.ts │ │ ├── solc_wrapper_v06.ts │ │ ├── solc_wrapper_v07.ts │ │ └── utils │ │ │ ├── compiler.ts │ │ │ ├── constants.ts │ │ │ ├── encoder.ts │ │ │ ├── fs_wrapper.ts │ │ │ ├── types.ts │ │ │ └── utils.ts │ ├── test │ │ ├── compiler_test.ts │ │ ├── compiler_utils_test.ts │ │ ├── fixtures │ │ │ ├── contracts │ │ │ │ ├── BadContractName.sol │ │ │ │ ├── EmptyContract.sol │ │ │ │ ├── Exchange.sol │ │ │ │ ├── TokenTransferProxy.sol │ │ │ │ ├── V6Contract.sol │ │ │ │ ├── V7Contract.sol │ │ │ │ └── base │ │ │ │ │ ├── SafeMath.sol │ │ │ │ │ └── Token.sol │ │ │ ├── exchange_bin.ts │ │ │ ├── v6_contract_bin.ts │ │ │ └── v7_contract_bin.ts │ │ └── util │ │ │ ├── chai_setup.ts │ │ │ ├── constants.ts │ │ │ └── provider.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── sol-coverage │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── coverage_subprovider.ts │ │ ├── globals.d.ts │ │ └── index.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── sol-doc │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── bin │ │ └── sol-doc.js │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── cli.ts │ │ ├── extract_docs.ts │ │ ├── gen_md.ts │ │ ├── index.ts │ │ ├── sol_ast.ts │ │ └── transform_docs.ts │ ├── test │ │ ├── extract_docs_test.ts │ │ ├── gen_md_test.ts │ │ ├── inputs │ │ │ ├── BaseContract.sol │ │ │ ├── InterfaceContract.sol │ │ │ ├── LibraryContract.sol │ │ │ └── TestContract.sol │ │ ├── transform_docs_test.ts │ │ └── utils │ │ │ └── random_docs.ts │ ├── tsconfig.json │ └── tslint.json ├── sol-profiler │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── cost_utils.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ └── profiler_subprovider.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── sol-resolver │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── resolvers │ │ │ ├── enumerable_resolver.ts │ │ │ ├── fallthrough_resolver.ts │ │ │ ├── fs_resolver.ts │ │ │ ├── name_resolver.ts │ │ │ ├── npm_resolver.ts │ │ │ ├── relative_fs_resolver.ts │ │ │ ├── resolver.ts │ │ │ ├── spy_resolver.ts │ │ │ └── url_resolver.ts │ │ └── types.ts │ ├── tsconfig.json │ └── tslint.json ├── sol-trace │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── index.ts │ │ └── revert_trace_subprovider.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── sol-tracing-utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── compiler.json │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── artifact_adapters │ │ │ ├── abstract_artifact_adapter.ts │ │ │ ├── sol_compiler_artifact_adapter.ts │ │ │ └── truffle_artifact_adapter.ts │ │ ├── ast_visitor.ts │ │ ├── collect_coverage_entries.ts │ │ ├── constants.ts │ │ ├── get_source_range_snippet.ts │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── instructions.ts │ │ ├── revert_trace.ts │ │ ├── source_maps.ts │ │ ├── trace.ts │ │ ├── trace_collection_subprovider.ts │ │ ├── trace_collector.ts │ │ ├── trace_info_subprovider.ts │ │ ├── types.ts │ │ └── utils.ts │ ├── test │ │ ├── collect_coverage_entries_test.ts │ │ ├── fixtures │ │ │ └── contracts │ │ │ │ ├── AllSolidityFeatures.sol │ │ │ │ ├── SimpleStorage.sol │ │ │ │ ├── Simplest.sol │ │ │ │ └── SolcovIgnore.sol │ │ ├── instructions_test.ts │ │ ├── sol_compiler_artifact_adapter_test.ts │ │ ├── source_maps_test.ts │ │ ├── trace_test.ts │ │ └── utils_test.ts │ ├── tsconfig.json │ └── tslint.json ├── sra-spec │ ├── .discharge.json │ ├── .gitignore │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── build_scripts │ │ └── buildJson.ts │ ├── package.json │ ├── public │ │ └── index.html │ ├── src │ │ ├── api.ts │ │ ├── errors.ts │ │ ├── examples │ │ │ ├── errors.ts │ │ │ ├── index.ts │ │ │ ├── relayerApiAssetDataPairsResponse.ts │ │ │ ├── relayerApiFeeRecipientsResponse.ts │ │ │ ├── relayerApiOrder.ts │ │ │ ├── relayerApiOrderConfigPayload.ts │ │ │ ├── relayerApiOrderConfigResponse.ts │ │ │ ├── relayerApiOrderbookResponse.ts │ │ │ ├── relayerApiOrdersResponse.ts │ │ │ └── signedOrder.ts │ │ ├── headers.ts │ │ ├── index.ts │ │ ├── json-schemas.ts │ │ ├── md │ │ │ ├── index.ts │ │ │ └── introduction.md │ │ ├── parameters.ts │ │ └── responses.ts │ ├── tsconfig.json │ └── tslint.json ├── subproviders │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── docs │ │ └── reference.mdx │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ ├── index.ts │ │ ├── subproviders │ │ │ ├── base_wallet_subprovider.ts │ │ │ ├── debug_subprovider.ts │ │ │ ├── empty_wallet_subprovider.ts │ │ │ ├── fake_gas_estimate_subprovider.ts │ │ │ ├── ganache.ts │ │ │ ├── ledger.ts │ │ │ ├── metamask_subprovider.ts │ │ │ ├── mnemonic_wallet.ts │ │ │ ├── nonce_tracker.ts │ │ │ ├── private_key_wallet.ts │ │ │ ├── redundant_subprovider.ts │ │ │ ├── rpc_subprovider.ts │ │ │ ├── signer.ts │ │ │ ├── subprovider.ts │ │ │ └── trezor.ts │ │ ├── types.ts │ │ └── utils │ │ │ ├── subprovider_utils.ts │ │ │ └── wallet_utils.ts │ ├── test │ │ ├── chai_setup.ts │ │ ├── integration │ │ │ └── ledger_subprovider_test.ts │ │ ├── unit │ │ │ ├── debug_subprovider_test.ts │ │ │ ├── ledger_subprovider_test.ts │ │ │ ├── mnemonic_wallet_subprovider_test.ts │ │ │ ├── nonce_tracker_subprovider_test.ts │ │ │ ├── private_key_wallet_subprovider_test.ts │ │ │ └── redundant_rpc_subprovider_test.ts │ │ └── utils │ │ │ ├── configs.ts │ │ │ ├── fixture_data.ts │ │ │ ├── ganache_subprovider.ts │ │ │ └── report_callback_errors.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── tslint-config │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── rules │ │ ├── asyncSuffixRule.ts │ │ ├── booleanNamingRule.ts │ │ ├── customNoMagicNumbersRule.ts │ │ ├── enumNamingRule.ts │ │ ├── noLodashIsnullRule.ts │ │ ├── noLodashIsundefinedRule.ts │ │ ├── underscorePrivateAndProtectedRule.ts │ │ └── walkers │ │ │ └── async_suffix.ts │ ├── test │ │ ├── enumNamingSpec.spec.ts │ │ ├── lintrunner.ts │ │ └── noLodashIsundefined.spec.ts │ ├── tsconfig.json │ └── tslint.json ├── types │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── src │ │ ├── globals.d.ts │ │ └── index.ts │ ├── tsconfig.json │ └── tslint.json ├── typescript-typings │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── package.json │ ├── tsconfig.json │ ├── tslint.json │ └── types │ │ ├── @ledgerhq │ │ └── index.d.ts │ │ ├── async-child-process │ │ └── index.d.ts │ │ ├── chai-as-promised │ │ └── index.d.ts │ │ ├── chai-bignumber │ │ └── index.d.ts │ │ ├── chai │ │ └── index.d.ts │ │ ├── cli-format │ │ └── index.d.ts │ │ ├── dirty-chai │ │ └── index.d.ts │ │ ├── es6-promisify │ │ └── index.d.ts │ │ ├── ethereumjs-abi │ │ └── index.d.ts │ │ ├── ethereumjs-util │ │ └── index.d.ts │ │ ├── ethereumjs-vm │ │ └── index.d.ts │ │ ├── ganache-core │ │ └── index.d.ts │ │ ├── json-rpc-error │ │ └── index.d.ts │ │ ├── keccak │ │ └── index.d.ts │ │ ├── openapi-schema-validation │ │ └── index.d.ts │ │ ├── promisify-child-process │ │ └── index.d.ts │ │ ├── publish-release │ │ └── index.d.ts │ │ ├── react-highlight │ │ └── index.d.ts │ │ ├── react-popper │ │ └── index.d.ts │ │ ├── react-tooltip │ │ └── index.d.ts │ │ ├── react-typist │ │ └── index.d.ts │ │ ├── request-promise-native │ │ └── index.d.ts │ │ ├── rollbar │ │ └── index.d.ts │ │ ├── semver-diff │ │ └── index.d.ts │ │ ├── semver-sort │ │ └── index.d.ts │ │ ├── solc │ │ └── index.d.ts │ │ ├── to-snake-case │ │ └── index.d.ts │ │ ├── truffle-hdwalet-provider │ │ └── index.d.ts │ │ ├── web3-eth-abi │ │ └── index.d.ts │ │ └── web3 │ │ └── index.d.ts ├── utils │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ │ └── .gitkeep │ ├── package.json │ ├── src │ │ ├── abi_decoder.ts │ │ ├── abi_encoder │ │ │ ├── abstract_data_types │ │ │ │ ├── data_type.ts │ │ │ │ ├── interfaces.ts │ │ │ │ └── types │ │ │ │ │ ├── blob.ts │ │ │ │ │ ├── pointer.ts │ │ │ │ │ └── set.ts │ │ │ ├── calldata │ │ │ │ ├── blocks │ │ │ │ │ ├── blob.ts │ │ │ │ │ ├── pointer.ts │ │ │ │ │ └── set.ts │ │ │ │ ├── calldata.ts │ │ │ │ ├── calldata_block.ts │ │ │ │ ├── iterator.ts │ │ │ │ └── raw_calldata.ts │ │ │ ├── evm_data_type_factory.ts │ │ │ ├── evm_data_types │ │ │ │ ├── address.ts │ │ │ │ ├── array.ts │ │ │ │ ├── bool.ts │ │ │ │ ├── dynamic_bytes.ts │ │ │ │ ├── int.ts │ │ │ │ ├── method.ts │ │ │ │ ├── pointer.ts │ │ │ │ ├── static_bytes.ts │ │ │ │ ├── string.ts │ │ │ │ ├── tuple.ts │ │ │ │ └── uint.ts │ │ │ ├── index.ts │ │ │ └── utils │ │ │ │ ├── constants.ts │ │ │ │ ├── math.ts │ │ │ │ ├── queue.ts │ │ │ │ ├── rules.ts │ │ │ │ └── signature_parser.ts │ │ ├── abi_utils.ts │ │ ├── address_utils.ts │ │ ├── class_utils.ts │ │ ├── configured_bignumber.ts │ │ ├── constants.ts │ │ ├── delete_nested_property.ts │ │ ├── error_utils.ts │ │ ├── fetch_async.ts │ │ ├── globals.d.ts │ │ ├── hex_utils.ts │ │ ├── index.ts │ │ ├── interval_utils.ts │ │ ├── log_utils.ts │ │ ├── promisify.ts │ │ ├── provider_utils.ts │ │ ├── random.ts │ │ ├── revert_error.ts │ │ ├── revert_errors │ │ │ ├── broker │ │ │ │ └── revert_errors.ts │ │ │ ├── coordinator │ │ │ │ └── revert_errors.ts │ │ │ ├── exchange-forwarder │ │ │ │ └── revert_errors.ts │ │ │ ├── exchange-libs │ │ │ │ └── lib_math_revert_errors.ts │ │ │ ├── exchange │ │ │ │ └── revert_errors.ts │ │ │ ├── extensions │ │ │ │ ├── lib_asset_data_transfer_revert_errors.ts │ │ │ │ └── mixin_weth_utils_revert_errors.ts │ │ │ ├── staking │ │ │ │ ├── fixed_math_revert_errors.ts │ │ │ │ └── staking_revert_errors.ts │ │ │ ├── utils │ │ │ │ ├── authorizable_revert_errors.ts │ │ │ │ ├── lib_address_array_revert_errors.ts │ │ │ │ ├── lib_bytes_revert_errors.ts │ │ │ │ ├── ownable_revert_errors.ts │ │ │ │ ├── reentrancy_guard_revert_errors.ts │ │ │ │ └── safe_math_revert_errors.ts │ │ │ └── zero-ex │ │ │ │ ├── common_revert_errors.ts │ │ │ │ ├── liquidity_provider_revert_errors.ts │ │ │ │ ├── meta_transaction_revert_errors.ts │ │ │ │ ├── ownable_revert_errors.ts │ │ │ │ ├── proxy_revert_errors.ts │ │ │ │ ├── signature_validator_revert_errors.ts │ │ │ │ ├── simple_function_registry_revert_errors.ts │ │ │ │ ├── spender_revert_errors.ts │ │ │ │ ├── transform_erc20_revert_errors.ts │ │ │ │ └── wallet_revert_errors.ts │ │ ├── sign_typed_data_utils.ts │ │ ├── token_utils.ts │ │ └── types.ts │ ├── test │ │ ├── abi_decoder_test.ts │ │ ├── abi_encoder │ │ │ ├── abi_samples │ │ │ │ ├── method_abis.ts │ │ │ │ ├── optimizer_abis.ts │ │ │ │ └── return_value_abis.ts │ │ │ ├── evm_data_types_test.ts │ │ │ ├── methods_test.ts │ │ │ ├── optimizer_test.ts │ │ │ ├── return_values_test.ts │ │ │ └── signature_test.ts │ │ ├── abi_utils_test.ts │ │ ├── revert_error_test.ts │ │ ├── sign_typed_data_utils_test.ts │ │ └── utils │ │ │ └── chai_setup.ts │ ├── tsconfig.json │ └── tslint.json ├── verdaccio │ ├── Dockerfile │ ├── README.md │ └── conf.yaml └── web3-wrapper │ ├── .npmignore │ ├── CHANGELOG.json │ ├── CHANGELOG.md │ ├── README.md │ ├── coverage │ └── .gitkeep │ ├── docs │ └── reference.mdx │ ├── package.json │ ├── src │ ├── globals.d.ts │ ├── index.ts │ ├── marshaller.ts │ ├── types.ts │ ├── utils.ts │ └── web3_wrapper.ts │ ├── test │ ├── utils │ │ └── chai_setup.ts │ └── web3_wrapper_test.ts │ ├── tsconfig.json │ ├── tslint.json │ └── typedoc-tsconfig.json ├── python-packages ├── build_docs ├── cmd_pkgs_in_dep_order.py ├── contract_addresses │ ├── .discharge.json │ ├── CHANGELOG.md │ ├── README.md │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── contract_addresses │ │ │ ├── __init__.py │ │ │ └── py.typed │ ├── stubs │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── pytest │ │ │ └── __init__.pyi │ │ └── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ ├── __init__.pyi │ │ │ └── test.pyi │ └── tox.ini ├── contract_artifacts │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── README.md │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── contract_artifacts │ │ │ ├── __init__.py │ │ │ └── py.typed │ ├── stubs │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── pytest │ │ │ └── __init__.pyi │ │ └── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ ├── __init__.pyi │ │ │ └── test.pyi │ └── tox.ini ├── contract_wrappers │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── README.md │ ├── setup.cfg │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── doc_templates │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── contract_wrappers │ │ │ ├── __init__.py │ │ │ ├── asset_proxy_owner │ │ │ └── .gitkeep │ │ │ ├── bases.py │ │ │ ├── coordinator │ │ │ └── .gitkeep │ │ │ ├── coordinator_registry │ │ │ └── .gitkeep │ │ │ ├── dev_utils │ │ │ └── .gitkeep │ │ │ ├── dummy_erc20_token │ │ │ └── .gitkeep │ │ │ ├── dummy_erc721_token │ │ │ └── .gitkeep │ │ │ ├── dutch_auction │ │ │ └── .gitkeep │ │ │ ├── erc20_proxy │ │ │ └── .gitkeep │ │ │ ├── erc20_token │ │ │ └── .gitkeep │ │ │ ├── erc721_proxy │ │ │ └── .gitkeep │ │ │ ├── erc721_token │ │ │ └── .gitkeep │ │ │ ├── exceptions.py │ │ │ ├── exchange │ │ │ ├── exceptions.py │ │ │ ├── middleware.py │ │ │ ├── types.py │ │ │ └── validator.py │ │ │ ├── forwarder │ │ │ └── .gitkeep │ │ │ ├── i_asset_proxy │ │ │ └── .gitkeep │ │ │ ├── i_validator │ │ │ └── .gitkeep │ │ │ ├── i_wallet │ │ │ └── .gitkeep │ │ │ ├── multi_asset_proxy │ │ │ └── .gitkeep │ │ │ ├── order_conversions.py │ │ │ ├── order_validator │ │ │ └── .gitkeep │ │ │ ├── py.typed │ │ │ ├── tx_params.py │ │ │ ├── weth9 │ │ │ └── .gitkeep │ │ │ └── zrx_token │ │ │ └── .gitkeep │ ├── stubs │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── eth_account │ │ │ ├── __init__.pyi │ │ │ └── local.pyi │ │ ├── eth_utils │ │ │ └── __init__.pyi │ │ ├── hexbytes │ │ │ └── __init__.pyi │ │ ├── pytest │ │ │ └── __init__.pyi │ │ ├── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── test.pyi │ │ ├── sha3 │ │ │ └── __init__.pyi │ │ └── web3 │ │ │ ├── __init__.pyi │ │ │ ├── contract.pyi │ │ │ ├── datastructures.pyi │ │ │ ├── exceptions.pyi │ │ │ ├── gas_strategies │ │ │ ├── __init__.pyi │ │ │ └── rpc.pyi │ │ │ └── providers │ │ │ ├── __init__.pyi │ │ │ └── base.pyi │ ├── test │ │ ├── __init__.py │ │ ├── conftest.py │ │ ├── test_base_contract_method.py │ │ ├── test_erc20_wrapper.py │ │ └── test_exchange_wrapper.py │ └── tox.ini ├── install ├── install_editable ├── json_schemas │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── README.md │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── json_schemas │ │ │ ├── __init__.py │ │ │ └── py.typed │ ├── stubs │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── jsonschema │ │ │ ├── __init__.pyi │ │ │ └── exceptions.pyi │ │ ├── pytest │ │ │ ├── __init__.pyi │ │ │ └── raises.pyi │ │ ├── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── test.pyi │ │ └── stringcase │ │ │ └── __init__.pyi │ ├── test │ │ ├── __init__.py │ │ └── test_json_schemas.py │ └── tox.ini ├── lint ├── middlewares │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── README.md │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── doc_templates │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── middlewares │ │ │ ├── __init__.py │ │ │ ├── local_message_signer.py │ │ │ └── py.typed │ ├── stubs │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── eth_account │ │ │ ├── __init__.pyi │ │ │ ├── messages.pyi │ │ │ └── signers │ │ │ │ ├── __init__.pyi │ │ │ │ └── local.pyi │ │ ├── eth_keys │ │ │ ├── __init__.pyi │ │ │ └── datatypes.pyi │ │ ├── eth_utils │ │ │ └── __init__.pyi │ │ ├── hexbytes │ │ │ ├── HexBytes.pyi │ │ │ └── __init__.pyi │ │ ├── pytest │ │ │ ├── __init__.pyi │ │ │ └── raises.pyi │ │ ├── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── test.pyi │ │ └── web3 │ │ │ ├── __init__.pyi │ │ │ ├── exceptions.pyi │ │ │ ├── providers │ │ │ ├── __init__.pyi │ │ │ └── base.pyi │ │ │ └── utils │ │ │ ├── __init__.pyi │ │ │ └── datatypes.pyi │ ├── test │ │ ├── __init__.py │ │ └── test_local_message_signer.py │ └── tox.ini ├── order_utils │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── LICENSE │ ├── README.md │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── doc_templates │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ ├── dev_utils │ │ │ ├── __init__.py │ │ │ ├── abi_utils.py │ │ │ └── type_assertions.py │ │ │ └── order_utils │ │ │ ├── __init__.py │ │ │ ├── asset_data_utils.py │ │ │ └── py.typed │ ├── stubs │ │ ├── deprecated │ │ │ ├── __init__.pyi │ │ │ └── sphinx │ │ │ │ └── __init__.pyi │ │ ├── distutils │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── clean.pyi │ │ ├── pytest │ │ │ ├── __init__.pyi │ │ │ └── raises.pyi │ │ ├── setuptools │ │ │ ├── __init__.pyi │ │ │ └── command │ │ │ │ ├── __init__.pyi │ │ │ │ └── test.pyi │ │ ├── sha3 │ │ │ └── __init__.pyi │ │ └── web3 │ │ │ ├── __init__.pyi │ │ │ ├── contract.pyi │ │ │ ├── exceptions.pyi │ │ │ └── providers │ │ │ ├── __init__.pyi │ │ │ └── base.pyi │ ├── test │ │ ├── __init__.py │ │ ├── test_abi_utils.py │ │ ├── test_asset_data_utils.py │ │ ├── test_generate_order_hash_hex.py │ │ └── test_signature_utils.py │ └── tox.ini ├── parallel ├── pre_install ├── prep_for_staging_doc_publish ├── sra_client │ ├── .discharge.json │ ├── .pylintrc │ ├── CHANGELOG.md │ ├── README.md │ ├── doc_template │ │ └── .gitkeep │ ├── docs │ │ ├── DefaultApi.md │ │ ├── OrderSchema.md │ │ ├── PaginatedCollectionSchema.md │ │ ├── RelayerApiAssetDataPairsResponseSchema.md │ │ ├── RelayerApiAssetDataTradeInfoSchema.md │ │ ├── RelayerApiErrorResponseSchema.md │ │ ├── RelayerApiErrorResponseSchemaValidationErrors.md │ │ ├── RelayerApiFeeRecipientsResponseSchema.md │ │ ├── RelayerApiOrderConfigPayloadSchema.md │ │ ├── RelayerApiOrderConfigResponseSchema.md │ │ ├── RelayerApiOrderSchema.md │ │ ├── RelayerApiOrderbookResponseSchema.md │ │ ├── RelayerApiOrdersChannelSubscribePayloadSchema.md │ │ ├── RelayerApiOrdersChannelSubscribeSchema.md │ │ ├── RelayerApiOrdersChannelUpdateSchema.md │ │ ├── RelayerApiOrdersResponseSchema.md │ │ └── SignedOrderSchema.md │ ├── generate.sh │ ├── openapi-generator-cli-config.json │ ├── requirements.txt │ ├── setup.py │ ├── src │ │ ├── conf.py │ │ ├── doc_static │ │ │ └── .gitkeep │ │ ├── index.rst │ │ └── zero_ex │ │ │ ├── __init__.py │ │ │ └── sra_client │ │ │ ├── __init__.py │ │ │ ├── api │ │ │ ├── __init__.py │ │ │ └── relayer_api.py │ │ │ ├── api_client.py │ │ │ ├── configuration.py │ │ │ ├── models │ │ │ ├── __init__.py │ │ │ ├── order_schema.py │ │ │ ├── paginated_collection_schema.py │ │ │ ├── relayer_api_asset_data_pairs_response_schema.py │ │ │ ├── relayer_api_asset_data_trade_info_schema.py │ │ │ ├── relayer_api_error_response_schema.py │ │ │ ├── relayer_api_error_response_schema_validation_errors.py │ │ │ ├── relayer_api_fee_recipients_response_schema.py │ │ │ ├── relayer_api_order_config_payload_schema.py │ │ │ ├── relayer_api_order_config_response_schema.py │ │ │ ├── relayer_api_order_schema.py │ │ │ ├── relayer_api_orderbook_response_schema.py │ │ │ ├── relayer_api_orders_channel_subscribe_payload_schema.py │ │ │ ├── relayer_api_orders_channel_subscribe_schema.py │ │ │ ├── relayer_api_orders_channel_update_schema.py │ │ │ ├── relayer_api_orders_response_schema.py │ │ │ └── signed_order_schema.py │ │ │ └── rest.py │ ├── test-requirements.txt │ ├── test │ │ ├── __init__.py │ │ └── relayer │ │ │ └── docker-compose.yml │ └── tox.ini ├── test ├── tsort └── uninstall_all ├── readthedocs.yaml ├── requirements.readthedocs.txt ├── tsconfig.json ├── typedoc-tsconfig.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig http://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # All files 7 | [*] 8 | end_of_line = lf 9 | insert_final_newline = true 10 | charset = utf-8 11 | indent_style = space 12 | indent_size = 4 13 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.sol linguist-language=Solidity 2 | 3 | # Automatically collapse generated files in GitHub. 4 | *.svg linguist-generated=true 5 | packages/contract-artifacts/artifacts/*json linguist-generated=true 6 | packages/abi-gen-wrappers/src/generated-wrappers/*.ts linguist-generated=true 7 | packages/contract-wrappers/src/generated-wrappers/*.ts linguist-generated=true 8 | 9 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 120, 3 | "tabWidth": 4, 4 | "singleQuote": true, 5 | "trailingComma": "all" 6 | } 7 | -------------------------------------------------------------------------------- /contracts/asset-proxy/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/asset-proxy/.solhintignore: -------------------------------------------------------------------------------- 1 | # solhint can't parse `abi.decode` syntax. 2 | contracts/src/ERC1155Proxy.sol 3 | -------------------------------------------------------------------------------- /contracts/asset-proxy/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/asset-proxy/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/broker/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/broker/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/broker/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/broker/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/coordinator/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/coordinator/.solhintignore: -------------------------------------------------------------------------------- 1 | # solhint can't parse `abi.decode` syntax. 2 | contracts/src/MixinCoordinatorApprovalVerifier.sol 3 | -------------------------------------------------------------------------------- /contracts/coordinator/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/coordinator/src/types.ts: -------------------------------------------------------------------------------- 1 | import { SignedZeroExTransaction } from '@0x/types'; 2 | import { BigNumber } from '@0x/utils'; 3 | 4 | export interface CoordinatorApproval { 5 | transaction: SignedZeroExTransaction; 6 | txOrigin: string; 7 | } 8 | 9 | export interface SignedCoordinatorApproval extends CoordinatorApproval { 10 | signature: string; 11 | } 12 | 13 | export interface CoordinatorTransaction { 14 | salt: BigNumber; 15 | signerAddress: string; 16 | data: string; 17 | } 18 | -------------------------------------------------------------------------------- /contracts/coordinator/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/coordinator/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/dev-utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/dev-utils/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/dev-utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/dev-utils/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/erc1155/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/erc1155/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/erc1155/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/dummy_erc1155_receiver'; 7 | export * from '../generated-wrappers/erc1155'; 8 | export * from '../generated-wrappers/erc1155_mintable'; 9 | export * from '../generated-wrappers/i_erc1155_receiver'; 10 | -------------------------------------------------------------------------------- /contracts/erc1155/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/erc1155/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/erc20/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/erc20/.solhintignore: -------------------------------------------------------------------------------- 1 | contracts/src/ZRXToken.sol 2 | -------------------------------------------------------------------------------- /contracts/erc20/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/erc20/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/erc721/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/erc721/.solhintignore: -------------------------------------------------------------------------------- 1 | contracts/tokens/ZRXToken/ERC20Token_v1.sol 2 | contracts/tokens/ZRXToken/Token_v1.sol 3 | contracts/tokens/ZRXToken/UnlimitedAllowanceToken_v1.sol 4 | -------------------------------------------------------------------------------- /contracts/erc721/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/erc721/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/dummy_erc721_receiver'; 7 | export * from '../generated-wrappers/dummy_erc721_token'; 8 | export * from '../generated-wrappers/erc721_token'; 9 | export * from '../generated-wrappers/i_erc721_receiver'; 10 | -------------------------------------------------------------------------------- /contracts/erc721/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/erc721/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/exchange-forwarder/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/exchange-forwarder/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/forwarder'; 7 | export * from '../generated-wrappers/i_exchange_v2'; 8 | -------------------------------------------------------------------------------- /contracts/exchange-forwarder/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/exchange-forwarder/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/exchange-libs/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/exchange-libs/test/utils/index.ts: -------------------------------------------------------------------------------- 1 | export { SchemaDefinition, SchemaParameterDefinition, stringifySchema } from './schema'; 2 | -------------------------------------------------------------------------------- /contracts/exchange-libs/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/exchange/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/exchange/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/exchange'; 7 | export * from '../generated-wrappers/i_exchange'; 8 | -------------------------------------------------------------------------------- /contracts/exchange/test/utils/dependency_artifacts.ts: -------------------------------------------------------------------------------- 1 | import { artifacts as erc1155Artifacts } from '@0x/contracts-erc1155'; 2 | import { artifacts as erc20Artifacts } from '@0x/contracts-erc20'; 3 | import { artifacts as erc721Artifacts } from '@0x/contracts-erc721'; 4 | 5 | export const dependencyArtifacts = { 6 | ...erc20Artifacts, 7 | ...erc721Artifacts, 8 | ...erc1155Artifacts, 9 | }; 10 | -------------------------------------------------------------------------------- /contracts/exchange/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | }, 6 | "linterOptions": { 7 | "exclude": ["src/artifacts.ts"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /contracts/exchange/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/extensions/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/extensions/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/extensions/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/extensions/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/integrations/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/integrations/src/artifacts.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | import { ContractArtifact } from 'ethereum-types'; 7 | 8 | import * as TestFramework from '../generated-artifacts/TestFramework.json'; 9 | export const artifacts = { TestFramework: TestFramework as ContractArtifact }; 10 | -------------------------------------------------------------------------------- /contracts/integrations/src/index.ts: -------------------------------------------------------------------------------- 1 | export { artifacts } from './artifacts'; 2 | export * from './wrappers'; 3 | export * from './chainlink_utils'; 4 | -------------------------------------------------------------------------------- /contracts/integrations/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/test_framework'; 7 | -------------------------------------------------------------------------------- /contracts/integrations/test/framework/actors/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "max-classes-per-file": false, 5 | "no-non-null-assertion": false, 6 | "custom-no-magic-numbers": false 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /contracts/integrations/test/fuzz_tests/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "no-invalid-this": false, 5 | "custom-no-magic-numbers": false 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /contracts/integrations/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | }, 6 | "linterOptions": { 7 | "exclude": ["src/artifacts.ts", "test/artifacts.ts"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /contracts/multisig/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/multisig/src/index.ts: -------------------------------------------------------------------------------- 1 | export { artifacts } from './artifacts'; 2 | export * from './wrappers'; 3 | -------------------------------------------------------------------------------- /contracts/multisig/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../generated-wrappers/multi_sig_wallet_with_time_lock'; 7 | export * from '../generated-wrappers/zero_ex_governor'; 8 | -------------------------------------------------------------------------------- /contracts/multisig/test/utils/index.ts: -------------------------------------------------------------------------------- 1 | export * from './multi_sig_wrapper'; 2 | export * from './zero_ex_governor_wrapper'; 3 | -------------------------------------------------------------------------------- /contracts/multisig/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/staking/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/staking/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/staking/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false, 5 | "restrict-plus-operands": false 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /contracts/staking/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/test-utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/test-utils/src/abstract_asset_wrapper.ts: -------------------------------------------------------------------------------- 1 | export abstract class AbstractAssetWrapper { 2 | public abstract getProxyId(): string; 3 | } 4 | -------------------------------------------------------------------------------- /contracts/test-utils/src/address_utils.ts: -------------------------------------------------------------------------------- 1 | import { hexUtils } from '@0x/utils'; 2 | 3 | import { constants } from './constants'; 4 | 5 | /** 6 | * Generates a random address. 7 | */ 8 | export function randomAddress(): string { 9 | return hexUtils.random(constants.ADDRESS_LENGTH); 10 | } 11 | -------------------------------------------------------------------------------- /contracts/test-utils/src/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import { chaiSetup } from '@0x/dev-utils'; 2 | export { chaiSetup } from '@0x/dev-utils'; 3 | import * as chai from 'chai'; 4 | 5 | // Set up chai. 6 | chaiSetup.configure(); 7 | export const expect = chai.expect; 8 | -------------------------------------------------------------------------------- /contracts/test-utils/src/codesize.ts: -------------------------------------------------------------------------------- 1 | import { ContractArtifact } from 'ethereum-types'; 2 | 3 | /** 4 | * Get the codesize of a provided artifact. 5 | */ 6 | export function getCodesizeFromArtifact(artifact: ContractArtifact): number { 7 | return (artifact.compilerOutput.evm.bytecode.object.length - 2) / 2; 8 | } 9 | -------------------------------------------------------------------------------- /contracts/test-utils/test/subtests/mocha_blockchain_1.ts: -------------------------------------------------------------------------------- 1 | import { expect } from '../../src/chai_setup'; 2 | import { blockchainTests, BlockchainTestsEnvironment } from '../../src/mocha_blockchain'; 3 | 4 | // tslint:disable: no-default-export completed-docs 5 | export function append(env: BlockchainTestsEnvironment): void { 6 | blockchainTests('imported subtests', subtestsEnv => { 7 | it('shares the same environment object', () => { 8 | expect(subtestsEnv).to.eq(env); 9 | }); 10 | }); 11 | } 12 | -------------------------------------------------------------------------------- /contracts/test-utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /contracts/test-utils/tsconfig.lint.json: -------------------------------------------------------------------------------- 1 | { 2 | // This file is a workaround that issue: https://github.com/palantir/tslint/issues/4148#issuecomment-419872702 3 | "extends": "./tsconfig", 4 | "compilerOptions": { 5 | "composite": false 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /contracts/test-utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/utils/contracts/test/TestOwnable.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.5.9; 2 | 3 | import "../src/Ownable.sol"; 4 | 5 | 6 | contract TestOwnable is 7 | Ownable 8 | { 9 | function externalOnlyOwner() 10 | external 11 | onlyOwner 12 | view 13 | returns (bool) 14 | { 15 | return true; 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /contracts/utils/src/index.ts: -------------------------------------------------------------------------------- 1 | export { artifacts } from './artifacts'; 2 | export * from './wrappers'; 3 | 4 | import * as ReferenceFunctionsToExport from './reference_functions'; 5 | export import ReferenceFunctions = ReferenceFunctionsToExport; 6 | 7 | export { 8 | AuthorizableRevertErrors, 9 | LibAddressArrayRevertErrors, 10 | LibBytesRevertErrors, 11 | OwnableRevertErrors, 12 | ReentrancyGuardRevertErrors, 13 | SafeMathRevertErrors, 14 | } from '@0x/utils'; 15 | -------------------------------------------------------------------------------- /contracts/utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /contracts/zero-ex/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests in lib 9 | /lib/test/* 10 | # Package specific ignore 11 | -------------------------------------------------------------------------------- /contracts/zero-ex/DEPLOYS.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /contracts/zero-ex/test/utils/abis.ts: -------------------------------------------------------------------------------- 1 | import * as _ from 'lodash'; 2 | 3 | import { artifacts } from '../artifacts'; 4 | 5 | export const abis = _.mapValues(artifacts, v => v.compilerOutput.abi); 6 | -------------------------------------------------------------------------------- /contracts/zero-ex/test/utils/migration.ts: -------------------------------------------------------------------------------- 1 | export { 2 | BootstrapFeatures, 3 | deployBootstrapFeaturesAsync, 4 | deployFullFeaturesAsync, 5 | initialMigrateAsync, 6 | fullMigrateAsync, 7 | FullMigrationOpts, 8 | FullFeatures, 9 | } from '../../src/migration'; 10 | -------------------------------------------------------------------------------- /contracts/zero-ex/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false, 5 | "max-file-line-count": false, 6 | "no-non-null-assertion": false, 7 | "no-unnecessary-type-assertion": false, 8 | "number-literal-format": false 9 | }, 10 | "linterOptions": { 11 | "exclude": ["src/artifacts.ts", "test/artifacts.ts"] 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /lerna.json: -------------------------------------------------------------------------------- 1 | { 2 | "lerna": "3.0.0-beta.23", 3 | "packages": ["packages/*", "contracts/*"], 4 | "version": "independent", 5 | "command": { 6 | "publish": { 7 | "ignoreChanges": ["test/**/*", "*.md", "scripts", "lib", "tslint.json", "tsconfig.json"] 8 | } 9 | }, 10 | "npmClient": "yarn", 11 | "useWorkspaces": true 12 | } 13 | -------------------------------------------------------------------------------- /packages/0x.js/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !_bundles/**/* 11 | -------------------------------------------------------------------------------- /packages/0x.js/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/0x.js/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/0x.js/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "src" 6 | }, 7 | "include": ["./src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/0x.js/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/0x.js/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/abi-gen/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !bin/**/* 11 | -------------------------------------------------------------------------------- /packages/abi-gen/bin/abi-gen.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../lib/src/index.js'); 3 | -------------------------------------------------------------------------------- /packages/abi-gen/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/abi-gen/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/abi-gen/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/eth_account/__init__.pyi: -------------------------------------------------------------------------------- 1 | class Account: ... 2 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/eth_account/local.pyi: -------------------------------------------------------------------------------- 1 | class LocalAccount: 2 | address: str 3 | ... 4 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/hexbytes/__init__.pyi: -------------------------------------------------------------------------------- 1 | class HexBytes: ... 2 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/web3/contract.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any 2 | 3 | 4 | class Contract: 5 | def call(self): ... 6 | 7 | functions: Any 8 | 9 | events: Any 10 | ... 11 | 12 | 13 | class ContractFunction: 14 | def __call__(self, *args, **kwargs): 15 | ... 16 | 17 | ... 18 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/web3/datastructures.pyi: -------------------------------------------------------------------------------- 1 | class NamedElementOnion: 2 | ... 3 | 4 | class AttributeDict: 5 | ... -------------------------------------------------------------------------------- /packages/abi-gen/stubs/web3/exceptions.pyi: -------------------------------------------------------------------------------- 1 | class BadFunctionCallOutput(Exception): 2 | ... 3 | -------------------------------------------------------------------------------- /packages/abi-gen/stubs/web3/providers/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/abi-gen/stubs/web3/providers/__init__.pyi -------------------------------------------------------------------------------- /packages/abi-gen/stubs/web3/providers/base.pyi: -------------------------------------------------------------------------------- 1 | class BaseProvider: 2 | ... 3 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/Python/partials/call_return_type.handlebars: -------------------------------------------------------------------------------- 1 | {{~#if outputs~}} 2 | {{#if outputs.length}} 3 | {{#singleReturnValue}} 4 | {{#returnType outputs.[0]}}{{~/returnType~}} 5 | {{/singleReturnValue}} 6 | {{^singleReturnValue}} 7 | Tuple[{{#each outputs}}{{#returnType this}}{{/returnType}}{{#unless @last}}, {{/unless}}{{/each}}] 8 | {{~/singleReturnValue}} 9 | {{else}}None 10 | {{/if}} 11 | {{else}}None{{/if~}} 12 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/Python/partials/event.handlebars: -------------------------------------------------------------------------------- 1 | def get_{{languageSpecificName}}_event( 2 | self, tx_hash: Union[HexBytes, bytes] 3 | ) -> Tuple[AttributeDict]: 4 | """Get log entry for {{name}} event. 5 | 6 | {{makeEventParameterDocstringRole name 8}} 7 | """ 8 | tx_receipt = self._web3_eth.getTransactionReceipt(tx_hash) 9 | return self._web3_eth.contract(address=to_checksum_address(self.contract_address), abi={{contractName}}.abi()).events.{{name}}().processReceipt(tx_receipt) 10 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/Python/partials/params.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{toPythonIdentifier name}}{{#if @last}}{{else}}, {{/if~}} 3 | {{/each~}} 4 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/Python/partials/typed_params.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{toPythonIdentifier name}}: {{#parameterType this}}{{/parameterType}}{{^if @last}}, {{/if~}} 3 | {{/each~}} 4 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/abi_type.handlebars: -------------------------------------------------------------------------------- 1 | { 2 | name: '{{name}}', 3 | type: '{{type}}',{{#if (isDefined indexed)}} 4 | indexed: {{indexed}},{{/if}}{{#if components}} 5 | components: [ 6 | {{#each components}} 7 | {{> abi_type this}} 8 | {{/each}} 9 | ]{{/if}} 10 | }, 11 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/event.handlebars: -------------------------------------------------------------------------------- 1 | export interface {{@root.contractName}}{{name}}EventArgs extends DecodedLogArgs { 2 | {{#each inputs}} 3 | {{name}}: {{#returnType type components}}{{/returnType}}; 4 | {{/each}} 5 | } 6 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/normalized_params.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{name}}{{#ifEquals 'address' type}}.toLowerCase(){{/ifEquals}}{{#if @last}}{{else}},{{/if}} 3 | {{/each}} 4 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/params.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{name}}{{#if @last}}{{else}},{{/if}} 3 | {{/each}} 4 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/params_docstring.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{#if (getDocstringForParamTs name ../docstrings)}} 3 | {{formatDocstringForParamTs name (getDocstringForParamTs name ../docstrings)}} 4 | {{/if}} 5 | {{/each}} 6 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/return_type.handlebars: -------------------------------------------------------------------------------- 1 | {{#if outputs.length}} 2 | {{#singleReturnValue}} 3 | {{#returnType outputs.0.type outputs.0.components}}{{/returnType}} 4 | {{/singleReturnValue}} 5 | {{^singleReturnValue}} 6 | [{{#each outputs}}{{#returnType type components}}{{/returnType}}{{#unless @last}}, {{/unless}}{{/each}}] 7 | {{/singleReturnValue}} 8 | {{else}} 9 | void 10 | {{/if}} 11 | -------------------------------------------------------------------------------- /packages/abi-gen/templates/TypeScript/partials/typed_params.handlebars: -------------------------------------------------------------------------------- 1 | {{#each inputs}} 2 | {{name}}: {{#parameterType type components}}{{/parameterType}}, 3 | {{/each}} 4 | -------------------------------------------------------------------------------- /packages/abi-gen/test-cli/fixtures/pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors,duplicate-code,blacklisted-name 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | 5 | [BASIC] 6 | argument-rgx=[a-z_][a-z0-9_]{0,31}$ 7 | # above differs from the default only in that it allows 2-character names 8 | -------------------------------------------------------------------------------- /packages/abi-gen/test-cli/fixtures/python-requirements.txt: -------------------------------------------------------------------------------- 1 | black 2 | eth_utils 3 | hexbytes 4 | mypy 5 | mypy_extensions 6 | pylint 7 | web3 8 | ../../python-packages/contract_wrappers 9 | -------------------------------------------------------------------------------- /packages/abi-gen/test-cli/test_typescript/src/index.ts: -------------------------------------------------------------------------------- 1 | export { artifacts } from './artifacts'; 2 | export * from './wrappers'; 3 | -------------------------------------------------------------------------------- /packages/abi-gen/test-cli/test_typescript/src/wrappers.ts: -------------------------------------------------------------------------------- 1 | /* 2 | * ----------------------------------------------------------------------------- 3 | * Warning: This file is auto-generated by contracts-gen. Don't edit manually. 4 | * ----------------------------------------------------------------------------- 5 | */ 6 | export * from '../../output/typescript/abi_gen_dummy'; 7 | export * from '../../output/typescript/lib_dummy'; 8 | export * from '../../output/typescript/test_lib_dummy'; 9 | -------------------------------------------------------------------------------- /packages/abi-gen/test-cli/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../../tsconfig.json", 3 | "compilerOptions": { 4 | "resolveJsonModule": true, 5 | "outDir": "./test_typescript/lib", 6 | "rootDir": "." 7 | }, 8 | "files": [ 9 | "./fixtures/artifacts/AbiGenDummy.json", 10 | "./fixtures/artifacts/LibDummy.json", 11 | "./fixtures/artifacts/TestLibDummy.json" 12 | ], 13 | "exclude": ["./test_typescript/lib"], 14 | "include": ["./output/typescript/**/*", "./test_typescript/**/*"] 15 | } 16 | -------------------------------------------------------------------------------- /packages/abi-gen/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "exclude": [ 8 | "./test-cli/**/*", 9 | "./src/artifacts.ts", 10 | "./src/wrappers.ts", 11 | "prior two elements refer to code generated by contracts-gen for test fixture contracts" 12 | ], 13 | "include": ["./src/**/*", "./test/*"] 14 | } 15 | -------------------------------------------------------------------------------- /packages/abi-gen/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "linterOptions": { 4 | "exclude": ["./test-cli/fixtures/**/*", "**/lib/**/*"] 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/assert/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/assert/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/assert/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/assert/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/assert/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/assert/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/asset-swapper/.gitignore: -------------------------------------------------------------------------------- 1 | **/generated-artifacts 2 | **/generated-wrappers 3 | -------------------------------------------------------------------------------- /packages/asset-swapper/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Whitelist Solidity contracts 7 | !contracts/src/**/* 8 | # Blacklist tests and publish scripts 9 | /lib/test/* 10 | /lib/monorepo_scripts/ 11 | # Package specific ignore 12 | -------------------------------------------------------------------------------- /packages/asset-swapper/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/asset-swapper/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/asset-swapper/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | 8 | declare module 'heartbeats'; 9 | -------------------------------------------------------------------------------- /packages/asset-swapper/src/utils/market_operation_utils/kyber_utils.ts: -------------------------------------------------------------------------------- 1 | import { MAINNET_KYBER_RESERVE_IDS, MAINNET_KYBER_TOKEN_RESERVE_IDS } from './constants'; 2 | 3 | // tslint:disable completed-docs 4 | export function getKyberReserveIdsForPair(takerToken: string, makerToken: string): string[] { 5 | return [ 6 | ...Object.values(MAINNET_KYBER_RESERVE_IDS), 7 | MAINNET_KYBER_TOKEN_RESERVE_IDS[makerToken.toLowerCase()], 8 | MAINNET_KYBER_TOKEN_RESERVE_IDS[takerToken.toLowerCase()], 9 | ].filter(t => t); 10 | } 11 | -------------------------------------------------------------------------------- /packages/asset-swapper/test/global_hooks.ts: -------------------------------------------------------------------------------- 1 | before('set up mocha', async function(): Promise { 2 | // HACK: Since the migrations take longer then our global mocha timeout limit 3 | // we manually increase it for this before hook. 4 | const mochaTestTimeoutMs = 25000; 5 | this.timeout(mochaTestTimeoutMs); // tslint:disable-line:no-invalid-this 6 | }); 7 | -------------------------------------------------------------------------------- /packages/asset-swapper/test/utils/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import * as chai from 'chai'; 2 | import chaiAsPromised = require('chai-as-promised'); 3 | import ChaiBigNumber = require('chai-bignumber'); 4 | import * as dirtyChai from 'dirty-chai'; 5 | 6 | export const chaiSetup = { 7 | configure(): void { 8 | chai.config.includeStack = true; 9 | chai.use(ChaiBigNumber()); 10 | chai.use(dirtyChai); 11 | chai.use(chaiAsPromised); 12 | }, 13 | }; 14 | -------------------------------------------------------------------------------- /packages/asset-swapper/test/utils/utils.ts: -------------------------------------------------------------------------------- 1 | import { BigNumber } from '@0x/utils'; 2 | import { Web3Wrapper } from '@0x/web3-wrapper'; 3 | 4 | const TOKEN_DECIMALS = 18; 5 | 6 | // tslint:disable:custom-no-magic-numbers 7 | export const baseUnitAmount = (unitAmount: number, decimals = TOKEN_DECIMALS): BigNumber => { 8 | return Web3Wrapper.toBaseUnitAmount(new BigNumber(unitAmount), decimals); 9 | }; 10 | -------------------------------------------------------------------------------- /packages/asset-swapper/test/utils/web3_wrapper.ts: -------------------------------------------------------------------------------- 1 | import { web3Factory } from '@0x/dev-utils'; 2 | import { Web3ProviderEngine } from '@0x/subproviders'; 3 | import { Web3Wrapper } from '@0x/web3-wrapper'; 4 | 5 | const provider: Web3ProviderEngine = web3Factory.getRpcProvider({ shouldUseInProcessGanache: true }); 6 | const web3Wrapper = new Web3Wrapper(provider); 7 | 8 | export { provider, web3Wrapper }; 9 | -------------------------------------------------------------------------------- /packages/asset-swapper/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "max-file-line-count": false 5 | }, 6 | "linterOptions": { 7 | "exclude": ["src/artifacts.ts", "test/artifacts.ts"] 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/asset-swapper/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/base-contract/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | 11 | -------------------------------------------------------------------------------- /packages/base-contract/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/base-contract/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/base-contract/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/base-contract/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "typeRoots": ["node_modules/@0x/typescript-typings/types", "node_modules/@types"], 8 | "include": ["src/**/*", "test/**/*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/base-contract/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/connect/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/connect/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/connect/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/connect/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const value: any; 3 | export default value; 4 | } 5 | -------------------------------------------------------------------------------- /packages/connect/test/fixtures/standard_relayer_api/fee_recipients.json: -------------------------------------------------------------------------------- 1 | { 2 | "total": 3, 3 | "page": 1, 4 | "perPage": 10, 5 | "records": [ 6 | "0x6ec92694ea172ebc430c30fa31de87620967a082", 7 | "0x9e56625509c2f60af937f23b7b532600390e8c8b", 8 | "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32" 9 | ] 10 | } 11 | -------------------------------------------------------------------------------- /packages/connect/test/fixtures/standard_relayer_api/fee_recipients.ts: -------------------------------------------------------------------------------- 1 | import { FeeRecipientsResponse } from '@0x/types'; 2 | 3 | export const feeRecipientsResponse: FeeRecipientsResponse = { 4 | total: 3, 5 | page: 1, 6 | perPage: 10, 7 | records: [ 8 | '0x6ec92694ea172ebc430c30fa31de87620967a082', 9 | '0x9e56625509c2f60af937f23b7b532600390e8c8b', 10 | '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', 11 | ], 12 | }; 13 | -------------------------------------------------------------------------------- /packages/connect/test/fixtures/standard_relayer_api/order_config.json: -------------------------------------------------------------------------------- 1 | { 2 | "senderAddress": "0xa2b31dacf30a9c50ca473337c01d8a201ae33e32", 3 | "feeRecipientAddress": "0xb046140686d052fff581f63f8136cce132e857da", 4 | "makerFee": "100000000000000", 5 | "takerFee": "200000000000000", 6 | "makerFeeAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d", 7 | "takerFeeAssetData": "0xf47261b04c32345ced77393b3530b1eed0f346429d" 8 | } 9 | -------------------------------------------------------------------------------- /packages/connect/test/fixtures/standard_relayer_api/unknown_orders_channel_message.ts: -------------------------------------------------------------------------------- 1 | import * as orderResponseJSON from './order/0xabc67323774bdbd24d94f977fa9ac94a50f016026fd13f42990861238897721f.json'; 2 | 3 | const orderJSONString = JSON.stringify(orderResponseJSON); 4 | 5 | export const unknownOrdersChannelMessage = `{ 6 | "type": "superGoodUpdate", 7 | "channel": "orderbook", 8 | "requestId": "6ce8c5a6-5c46-4027-a44a-51831c77b8a1", 9 | "payload": [${orderJSONString}] 10 | }`; 11 | -------------------------------------------------------------------------------- /packages/connect/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/connect/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/connect/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/contract-addresses/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": ".", 6 | "resolveJsonModule": true, 7 | "esModuleInterop": true 8 | }, 9 | "include": ["./src/**/*"], 10 | "files": ["./addresses.json"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/contract-addresses/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/contract-artifacts/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/contract-artifacts/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/contract-wrappers-test/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/contract-wrappers-test/test/global_hooks.ts: -------------------------------------------------------------------------------- 1 | before('set up mocha', async function(): Promise { 2 | // HACK: Since the migrations take longer then our global mocha timeout limit 3 | // we manually increase it for this before hook. 4 | const mochaTestTimeoutMs = 500000; 5 | this.timeout(mochaTestTimeoutMs); // tslint:disable-line:no-invalid-this 6 | }); 7 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/test/utils/chai_setup.ts: -------------------------------------------------------------------------------- 1 | export { chaiSetup } from '@0x/dev-utils'; 2 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/test/utils/web3_wrapper.ts: -------------------------------------------------------------------------------- 1 | import { devConstants, web3Factory } from '@0x/dev-utils'; 2 | import { Web3ProviderEngine } from '@0x/subproviders'; 3 | import { Web3Wrapper } from '@0x/web3-wrapper'; 4 | 5 | const txDefaults = { 6 | from: devConstants.TESTRPC_FIRST_ADDRESS, 7 | gas: devConstants.GAS_LIMIT, 8 | }; 9 | const provider: Web3ProviderEngine = web3Factory.getRpcProvider({ shouldUseInProcessGanache: true }); 10 | const web3Wrapper = new Web3Wrapper(provider); 11 | 12 | export { provider, web3Wrapper, txDefaults }; 13 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"], 8 | "exclude": ["node_modules"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/contract-wrappers-test/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/contract-wrappers/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/contract-wrappers/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"], 8 | "exclude": ["node_modules"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/contract-wrappers/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/contract-wrappers/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/contracts-gen/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !bin/**/* 11 | -------------------------------------------------------------------------------- /packages/contracts-gen/bin/contracts-gen.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../lib/src/contracts-gen.js'); 3 | -------------------------------------------------------------------------------- /packages/contracts-gen/src/index.ts: -------------------------------------------------------------------------------- 1 | /** 2 | * This module is a CLI tool. As soon as you run it - it starts doing stuff. 3 | * At the same time - our installation tests assume that you can import package without causing side effects. 4 | * That's why our main entry point it empty. No side effects. But our secondary entry point - contracts-gen.ts is a CLI tool and starts running as soon as you import/run it. 5 | */ 6 | export {}; 7 | -------------------------------------------------------------------------------- /packages/contracts-gen/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/contracts-gen/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/dev-utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/dev-utils/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/dev-utils/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/dev-utils/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const constants = { 2 | RPC_URL: 'http://localhost:8545', 3 | RPC_PORT: 8545, 4 | GAS_LIMIT: 9e6, 5 | TESTRPC_FIRST_ADDRESS: '0x5409ed021d9299bf6814279a6a1411a7e866a631', 6 | }; 7 | -------------------------------------------------------------------------------- /packages/dev-utils/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/dev-utils/test/.npmignore: -------------------------------------------------------------------------------- 1 | .* 2 | yarn-error.log 3 | /src/ 4 | /scripts/ 5 | tsconfig.json 6 | -------------------------------------------------------------------------------- /packages/dev-utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/dev-utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "completed-docs": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/devnet/docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3' 2 | services: 3 | devnet: 4 | image: 0x-devnet:latest 5 | build: 6 | context: . 7 | ports: 8 | - 8501:8501 9 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-08.903003751Z--5409ed021d9299bf6814279a6a1411a7e866a631: -------------------------------------------------------------------------------- 1 | {"address":"5409ed021d9299bf6814279a6a1411a7e866a631","crypto":{"cipher":"aes-128-ctr","ciphertext":"7c7bdd62b303eb3a42d5d8e935825ed5a05a47cb2cef71e346c61b1bd582f1aa","cipherparams":{"iv":"7fd6c9d9f9893f2c480735b5386b6d75"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"79cc86edc3a668845a68fabb3913710b7504922e47aac8513ab3d6a28d090218"},"mac":"8a593ae0d0b964e47625bc964b6d389f5687f5bde631b4913136db4ab1b8083e"},"id":"29f637ba-6a65-4401-a0d1-30e1554bd776","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-09.794553183Z--6ecbe1db9ef729cbe972c83fb886247691fb6beb: -------------------------------------------------------------------------------- 1 | {"address":"6ecbe1db9ef729cbe972c83fb886247691fb6beb","crypto":{"cipher":"aes-128-ctr","ciphertext":"ecaf4f2839d74d92e2cb87c2fc7d52862661b46e697d70acfbe43f0893db73ed","cipherparams":{"iv":"7641c3a107228f8a901c07a07ea1f70d"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"c67c9fb30648df6985c0490b6603382147e7dc1ea28ca8c934af4a453ec0555b"},"mac":"985dca9ce65ad400fa4c9009742be2d409f402fe05203fc1278cfd1451729e8d"},"id":"e8634edc-08e6-415e-8d65-7985c4c4a05c","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-10.696351411Z--e36ea790bc9d7ab70c55260c66d52b1eca985f84: -------------------------------------------------------------------------------- 1 | {"address":"e36ea790bc9d7ab70c55260c66d52b1eca985f84","crypto":{"cipher":"aes-128-ctr","ciphertext":"49f89d7d612049f5f3581fc7c97d32ec9c9a2ca3c11165587139f16bfb29de6b","cipherparams":{"iv":"9767e0687a097c5b57e9cb30eec9bc0a"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"3e8f23332df99d519b602a0f6f4724338ba3fd9e7e313c337a92ffd1cafa19f1"},"mac":"4892051a669d45bb7de32a5eab63ee8fe52485a02218ce1806515da2adbd6584"},"id":"3488ad36-4a9d-4282-8651-7939b822429d","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-11.479938556Z--e834ec434daba538cd1b9fe1582052b880bd7e63: -------------------------------------------------------------------------------- 1 | {"address":"e834ec434daba538cd1b9fe1582052b880bd7e63","crypto":{"cipher":"aes-128-ctr","ciphertext":"a8ae3896739c63fc3bfe034277f6a1924a1c0ddc3f6747391dada8e61e15a928","cipherparams":{"iv":"f4f4d786cd3650a428a8bac5a6c824b1"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"9acecc321bcab9b69ffdea494b8894ad0221c30f05c17d2302e315db8708ecc6"},"mac":"fc416b8f539fdc1e39e87a3bd2a69b04455875de701ced60cc8948b222171380"},"id":"0d9703e8-14fc-45d0-a425-2c40b8ae846a","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-12.260348580Z--78dc5d2d739606d31509c31d654056a45185ecb6: -------------------------------------------------------------------------------- 1 | {"address":"78dc5d2d739606d31509c31d654056a45185ecb6","crypto":{"cipher":"aes-128-ctr","ciphertext":"25e90e593f08e9e3adc426c8685d90db5d1c04957e9dc8d5fab4ae30c3306b61","cipherparams":{"iv":"72ece22297a27363e795b678bcbd6be5"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"2201502b9d3c4e2076d9d15bfd9da3a6c75d9e2e574aabb29c3bc5a3b5ec55a5"},"mac":"13d709ed4bd2f5bf4973fc1373f8434835f0d12dc99b32c6fc14d9df7f41c62d"},"id":"3902dff4-5681-4646-b825-849f96efeec5","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-13.178294829Z--a8dda8d7f5310e4a9e24f8eba77e091ac264f872: -------------------------------------------------------------------------------- 1 | {"address":"a8dda8d7f5310e4a9e24f8eba77e091ac264f872","crypto":{"cipher":"aes-128-ctr","ciphertext":"0d67c13cf0b130e8ffa1aaca5df372f727164e633f8e0e28a3e54d0884ffb568","cipherparams":{"iv":"619cd539cda9f40abb45bba00b5fe53d"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"4effcd9b6fe71ee31cfe9057290154329b9af3acb6dcc46be7f78b5b9dcd3f42"},"mac":"c6eecd25944f4250b7b875d76bfbb60cc4e8db1d081621d1a2ddb72ea4e52a6d"},"id":"556bd3f1-1e5b-47a4-9b6e-448b9989d7d3","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-13.960499696Z--06cef8e666768cc40cc78cf93d9611019ddcb628: -------------------------------------------------------------------------------- 1 | {"address":"06cef8e666768cc40cc78cf93d9611019ddcb628","crypto":{"cipher":"aes-128-ctr","ciphertext":"38c9ca150932dc8c5ec5c65796425b2de98295cae64db08b816da2c06fc52c20","cipherparams":{"iv":"512127e8e606c481612473e7bc4d38f1"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"16c4cabfd13cae2df66d8ff9acc7f503c95c808b00d0bb6a12932203889c679b"},"mac":"52297b496e8751627dea1ee17bf5cbea1926f90bcde3ffc8baa089184672f875"},"id":"31102097-86e4-4e19-ad73-03c3de67bf3b","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-14.757010386Z--4404ac8bd8f9618d27ad2f1485aa1b2cfd82482d: -------------------------------------------------------------------------------- 1 | {"address":"4404ac8bd8f9618d27ad2f1485aa1b2cfd82482d","crypto":{"cipher":"aes-128-ctr","ciphertext":"ca7aedbacc960fc0fcb418606d7bdf042c36cc2808a5c94ac222cc0b44a9970d","cipherparams":{"iv":"3b1fe5da1cf5d6cd2ceaaf24c008c897"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"a94e4d41d77ff6dc54beda30c7a46d8f3cc312ebeffa0352d679f7e3fc5301dc"},"mac":"9a82bf60103d05878f8af3c07765c22cba3df9b1c4376eaf859e47b805666e42"},"id":"ab68c67b-e15a-4ade-b3d9-2180a32b28fe","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-11T21-29-15.554233052Z--7457d5e02197480db681d3fdf256c7aca21bdc12: -------------------------------------------------------------------------------- 1 | {"address":"7457d5e02197480db681d3fdf256c7aca21bdc12","crypto":{"cipher":"aes-128-ctr","ciphertext":"720dcc2889c7b3636f9f659650181b0d46d82420460e23454277273f528baaee","cipherparams":{"iv":"1510028e2b9988d1a73b71cbb692d085"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"5db2b62f4d1f55a3f24c014c4f23f3ec9a2992dca6c2a89c24a566f99a079396"},"mac":"22c6fb134fd0a748195ea83e9ccb490ab2c9a3e8761f9d74ea6d02abbdeb8a43"},"id":"704c31f8-8ca2-4b49-9fdc-5923f5712dad","version":3} 2 | -------------------------------------------------------------------------------- /packages/devnet/node0/keystore/UTC--2018-05-15T21-50-24.532037737Z--e8816898d851d5b61b7f950627d04d794c07ca37: -------------------------------------------------------------------------------- 1 | {"address":"e8816898d851d5b61b7f950627d04d794c07ca37","crypto":{"cipher":"aes-128-ctr","ciphertext":"1ff4add6955cba7ddaf29f66d7d21c5e1d714ef6191fbc651ae60f2ea3c95e8f","cipherparams":{"iv":"3ff869fbdbe1a523cdb327780365976e"},"kdf":"scrypt","kdfparams":{"dklen":32,"n":262144,"p":1,"r":8,"salt":"7372dbae5fb318f8684902e099c311d4188721d677974d729711762c7ef6030c"},"mac":"485fa5dc701067782baa1589716a53110c7f917eb259e35ebca7265bbb7150b1"},"id":"89edb004-5b00-4607-a3af-a0d9ab9b1c34","version":3} -------------------------------------------------------------------------------- /packages/devnet/node0/password.txt: -------------------------------------------------------------------------------- 1 | password 2 | password 3 | password 4 | password 5 | password 6 | password 7 | password 8 | password 9 | password 10 | password 11 | password 12 | -------------------------------------------------------------------------------- /packages/ethereum-types/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/ethereum-types/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/ethereum-types/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "typeRoots": ["../../node_modules/@types"], 5 | "outDir": "lib", 6 | "rootDir": "src" 7 | }, 8 | "include": ["src/**/*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/ethereum-types/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/ethereum-types/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "typeRoots": ["../../node_modules/@types"], 5 | "outDir": "lib" 6 | }, 7 | "include": ["src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/instant/.dogfood.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-instant-dogfood", 3 | "build_command": "WEBPACK_OUTPUT_PATH=public dotenv yarn build -- --env.discharge_target=dogfood", 4 | "upload_directory": "public", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "0xproject", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true, 13 | "should_keep_files_in_s3": true 14 | } 15 | -------------------------------------------------------------------------------- /packages/instant/.env_example: -------------------------------------------------------------------------------- 1 | INSTANT_ROLLBAR_PUBLISH_TOKEN= 2 | INSTANT_ROLLBAR_CLIENT_TOKEN= 3 | INSTANT_HEAP_ANALYTICS_ID_PRODUCTION= 4 | INSTANT_HEAP_ANALYTICS_ID_DEVELOPMENT= 5 | INSTANT_FORTMATIC_API_KEY_PRODUCTION= 6 | INSTANT_FORTMATIC_API_KEY_DEVELOPMENT= 7 | INSTANT_INFURA_PROJECT_ID_PRODUCTION= 8 | INSTANT_INFURA_PROJECT_ID_DEVELOPMENT= 9 | # if you want to report to heap or rollbar when building in development mode, you can use the following: 10 | # INSTANT_HEAP_FORCE_DEVELOPMENT=true 11 | # INSTANT_ROLLBAR_FORCE_DEVELOPMENT=true -------------------------------------------------------------------------------- /packages/instant/.gitignore: -------------------------------------------------------------------------------- 1 | public/instant.js 2 | public/instant.js.map 3 | umd/* 4 | .env -------------------------------------------------------------------------------- /packages/instant/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !umd/**/* 11 | .env 12 | -------------------------------------------------------------------------------- /packages/instant/.production.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "instant.0x.org", 3 | "build_command": "dotenv yarn build -- --env.discharge_target=production", 4 | "upload_directory": "umd", 5 | "index_key": "instant.js", 6 | "error_key": "404.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "0xproject", 10 | "aws_region": "us-east-1", 11 | "cdn": true, 12 | "dns_configured": true, 13 | "should_keep_files_in_s3": true 14 | } 15 | -------------------------------------------------------------------------------- /packages/instant/.staging.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-instant-staging", 3 | "build_command": "WEBPACK_OUTPUT_PATH=public dotenv yarn build -- --env.discharge_target=staging", 4 | "upload_directory": "public", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "0xproject", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true, 13 | "should_keep_files_in_s3": true 14 | } 15 | -------------------------------------------------------------------------------- /packages/instant/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | 5 | 6 | CHANGELOG 7 | 8 | ## v1.0.1 - _November 21, 2018_ 9 | 10 | * Dependencies updated 11 | -------------------------------------------------------------------------------- /packages/instant/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | roots: ['/test'], 3 | coverageDirectory: 'coverage', 4 | transform: { 5 | '.*.tsx?$': 'ts-jest', 6 | }, 7 | testRegex: '(/__test__/.*|(\\.|/)(test|spec))\\.(jsx?|tsx?)$', 8 | moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], 9 | collectCoverageFrom: ['src/**/*.{ts,tsx}', '!src/index.tsx'], 10 | }; 11 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/bat.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/chevronRight.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/dgd.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/dgx.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/salt.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /packages/instant/src/assets/icons/zil.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /packages/instant/src/components/animations/full_rotation.tsx: -------------------------------------------------------------------------------- 1 | import { keyframes, styled } from '../../style/theme'; 2 | 3 | interface FullRotationProps { 4 | height: string; 5 | width: string; 6 | } 7 | const rotatingKeyframes = keyframes` 8 | from { 9 | transform: rotate(0deg); 10 | } 11 | 12 | to { 13 | transform: rotate(360deg); 14 | } 15 | `; 16 | 17 | export const FullRotation = styled.div` 18 | animation: ${rotatingKeyframes} 2s linear infinite; 19 | height: ${props => props.height}; 20 | width: ${props => props.width}; 21 | `; 22 | -------------------------------------------------------------------------------- /packages/instant/src/components/animations/pulse.tsx: -------------------------------------------------------------------------------- 1 | import { keyframes, styled } from '../../style/theme'; 2 | 3 | const pulsingKeyframes = keyframes` 4 | 0%, 100% { 5 | opacity: 0.2; 6 | } 7 | 50% { 8 | opacity: 100; 9 | } 10 | `; 11 | export const Pulse = styled.div` 12 | animation-name: ${pulsingKeyframes} 13 | animation-duration: 2s; 14 | animation-iteration-count: infinite; 15 | `; 16 | -------------------------------------------------------------------------------- /packages/instant/src/containers/selected_asset_buy_order_progress.ts: -------------------------------------------------------------------------------- 1 | import { connect } from 'react-redux'; 2 | 3 | import { BuyOrderProgress } from '../components/buy_order_progress'; 4 | import { State } from '../redux/reducer'; 5 | import { OrderState } from '../types'; 6 | 7 | interface ConnectedState { 8 | swapOrderState: OrderState; 9 | } 10 | const mapStateToProps = (state: State, _ownProps: {}): ConnectedState => ({ 11 | swapOrderState: state.swapOrderState, 12 | }); 13 | export const SelectedAssetBuyOrderProgress = connect(mapStateToProps)(BuyOrderProgress); 14 | -------------------------------------------------------------------------------- /packages/instant/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.svg' { 2 | const content: any; 3 | /* tslint:disable */ 4 | export default content; 5 | /* tslint:enable */ 6 | } 7 | declare module '*.json' { 8 | const json: any; 9 | /* tslint:disable */ 10 | export default json; 11 | /* tslint:enable */ 12 | } 13 | declare module 'fortmatic'; 14 | -------------------------------------------------------------------------------- /packages/instant/src/index.ts: -------------------------------------------------------------------------------- 1 | export { ZeroExInstant, ZeroExInstantProps } from './components/zero_ex_instant'; 2 | export { ZeroExInstantOverlay, ZeroExInstantOverlayProps } from './components/zero_ex_instant_overlay'; 3 | -------------------------------------------------------------------------------- /packages/instant/src/style/fonts.ts: -------------------------------------------------------------------------------- 1 | export const fonts = { 2 | include: () => { 3 | // Inject the inter-ui font into the page 4 | const appendTo = document.head || document.getElementsByTagName('head')[0] || document.body; 5 | const style = document.createElement('style'); 6 | style.type = 'text/css'; 7 | style.appendChild(document.createTextNode(`@import url('https://rsms.me/inter/inter-ui.css')`)); 8 | appendTo.appendChild(style); 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /packages/instant/src/style/util.ts: -------------------------------------------------------------------------------- 1 | import { ObjectMap } from '@0x/types'; 2 | import * as _ from 'lodash'; 3 | 4 | export const cssRuleIfExists = (props: ObjectMap, rule: string): string => { 5 | const camelCaseRule = _.camelCase(rule); 6 | const ruleValueIfExists = props[camelCaseRule]; 7 | if (ruleValueIfExists !== undefined) { 8 | return `${rule}: ${ruleValueIfExists};`; 9 | } 10 | return ''; 11 | }; 12 | -------------------------------------------------------------------------------- /packages/instant/src/style/z_index.ts: -------------------------------------------------------------------------------- 1 | export const zIndex = { 2 | errorPopBehind: 10, 3 | mainContainer: 20, 4 | dropdownItems: 30, 5 | panel: 40, 6 | containerOverlay: 45, 7 | errorPopup: 50, 8 | overlayDefault: 100, 9 | }; 10 | -------------------------------------------------------------------------------- /packages/instant/src/util/address.ts: -------------------------------------------------------------------------------- 1 | import { Web3Wrapper } from '@0x/web3-wrapper'; 2 | 3 | export const getBestAddress = async (web3Wrapper: Web3Wrapper): Promise => { 4 | const addresses = await web3Wrapper.getAvailableAddressesAsync(); 5 | return addresses[0]; 6 | }; 7 | -------------------------------------------------------------------------------- /packages/instant/src/util/coinbase_api.ts: -------------------------------------------------------------------------------- 1 | import { BigNumber, fetchAsync } from '@0x/utils'; 2 | 3 | import { COINBASE_API_BASE_URL } from '../constants'; 4 | 5 | export const coinbaseApi = { 6 | getEthUsdPrice: async (): Promise => { 7 | const res = await fetchAsync(`${COINBASE_API_BASE_URL}/prices/ETH-USD/buy`); 8 | const resJson = await res.json(); 9 | return new BigNumber(resJson.data.amount); 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /packages/instant/src/util/util.ts: -------------------------------------------------------------------------------- 1 | import * as _ from 'lodash'; 2 | 3 | export const util = { 4 | boundNoop: _.noop.bind(_), 5 | createOpenUrlInNewWindow: (href: string) => () => window.open(href, '_blank'), 6 | }; 7 | -------------------------------------------------------------------------------- /packages/instant/test/components/zero_ex_instant.test.tsx: -------------------------------------------------------------------------------- 1 | import { configure, shallow } from 'enzyme'; 2 | import * as Adapter from 'enzyme-adapter-react-16'; 3 | import * as React from 'react'; 4 | 5 | configure({ adapter: new Adapter() }); 6 | 7 | // TODO: Write non-trivial tests. 8 | // At time of writing we cannot render ZeroExInstant 9 | // because we are looking for a provider on window. 10 | // But in the future it will be dependency injected. 11 | describe('', () => { 12 | it('runs a test', () => { 13 | shallow(
); 14 | }); 15 | }); 16 | -------------------------------------------------------------------------------- /packages/instant/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "src", 6 | "jsx": "react", 7 | "noImplicitAny": true, 8 | "allowSyntheticDefaultImports": true, 9 | "declaration": false, 10 | "declarationMap": false, 11 | "composite": false 12 | }, 13 | "include": ["./src/**/*"] 14 | } 15 | -------------------------------------------------------------------------------- /packages/instant/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false, 5 | "semicolon": [true, "always", "ignore-bound-class-methods"], 6 | "max-classes-per-file": false, 7 | "switch-default": false 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /packages/json-schemas/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/json-schemas/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/json-schemas/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/json-schemas/schemas/address_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/addressSchema", 3 | "type": "string", 4 | "pattern": "^0x[0-9a-fA-F]{40}$" 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/asset_pairs_request_opts_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/AssetPairsRequestOptsSchema", 3 | "type": "object", 4 | "properties": { 5 | "assetDataA": { "$ref": "/hexSchema" }, 6 | "assetDataB": { "$ref": "/hexSchema" } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/block_param_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/blockParamSchema", 3 | "oneOf": [ 4 | { 5 | "type": "number" 6 | }, 7 | { 8 | "enum": ["latest", "earliest", "pending"] 9 | } 10 | ] 11 | } 12 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/block_range_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/blockRangeSchema", 3 | "properties": { 4 | "fromBlock": { "$ref": "/blockParamSchema" }, 5 | "toBlock": { "$ref": "/blockParamSchema" } 6 | }, 7 | "type": "object" 8 | } 9 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/ec_signature_parameter_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/ecSignatureParameterSchema", 3 | "type": "string", 4 | "pattern": "^0[xX][0-9A-Fa-f]{64}$" 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/ec_signature_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/ecSignatureSchema", 3 | "properties": { 4 | "v": { 5 | "type": "number", 6 | "minimum": 27, 7 | "maximum": 28 8 | }, 9 | "r": { "$ref": "/ecSignatureParameterSchema" }, 10 | "s": { "$ref": "/ecSignatureParameterSchema" } 11 | }, 12 | "required": ["v", "r", "s"], 13 | "type": "object" 14 | } 15 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/eip712_domain_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/eip712DomainSchema", 3 | "properties": { 4 | "name": { 5 | "type": "string" 6 | }, 7 | "version": { 8 | "type": "version" 9 | }, 10 | "chainId": { 11 | "type": "number" 12 | }, 13 | "verifyingContract": { 14 | "$ref": "/addressSchema" 15 | } 16 | }, 17 | "required": [ 18 | "chainId", 19 | "verifyingContract" 20 | ], 21 | "type": "object" 22 | } 23 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/hex_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/hexSchema", 3 | "type": "string", 4 | "pattern": "^0x(([0-9a-f][0-9a-f])+)?$" 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/index_filter_values_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/indexFilterValuesSchema", 3 | "additionalProperties": { 4 | "oneOf": [{ "$ref": "/numberSchema" }, { "$ref": "/addressSchema" }, { "$ref": "/orderHashSchema" }] 5 | }, 6 | "type": "object" 7 | } 8 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/js_number_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/jsNumberSchema", 3 | "type": "number", 4 | "minimum": 0 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/number_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/numberSchema", 3 | "type": "string", 4 | "pattern": "^\\d+(\\.\\d+)?$" 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/order_cancel_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/orderCancellationRequestsSchema", 3 | "type": "array", 4 | "items": { 5 | "properties": { 6 | "order": { "$ref": "/orderSchema" }, 7 | "takerTokenCancelAmount": { "$ref": "/wholeNumberSchema" } 8 | }, 9 | "required": ["order", "takerTokenCancelAmount"], 10 | "type": "object" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/order_fill_or_kill_requests_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/orderFillOrKillRequestsSchema", 3 | "type": "array", 4 | "items": { 5 | "properties": { 6 | "signedOrder": { "$ref": "/signedOrderSchema" }, 7 | "fillTakerAmount": { "$ref": "/wholeNumberSchema" } 8 | }, 9 | "required": ["signedOrder", "fillTakerAmount"], 10 | "type": "object" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/order_fill_requests_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/orderFillRequestsSchema", 3 | "type": "array", 4 | "items": { 5 | "properties": { 6 | "signedOrder": { "$ref": "/signedOrderSchema" }, 7 | "takerTokenFillAmount": { "$ref": "/wholeNumberSchema" } 8 | }, 9 | "required": ["signedOrder", "takerTokenFillAmount"], 10 | "type": "object" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/order_hash_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/orderHashSchema", 3 | "type": "string", 4 | "pattern": "^0x[0-9a-fA-F]{64}$" 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/orderbook_request_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/OrderbookRequestSchema", 3 | "type": "object", 4 | "properties": { 5 | "baseAssetData": { "$ref": "/hexSchema" }, 6 | "quoteAssetData": { "$ref": "/hexSchema" } 7 | }, 8 | "required": ["baseAssetData", "quoteAssetData"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/orders_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/ordersSchema", 3 | "type": "array", 4 | "items": { "$ref": "/orderSchema" } 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/paged_request_opts_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/PagedRequestOptsSchema", 3 | "type": "object", 4 | "properties": { 5 | "page": { "type": "number" }, 6 | "perPage": { "type": "number" } 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/paginated_collection_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/paginatedCollectionSchema", 3 | "type": "object", 4 | "properties": { 5 | "total": { "type": "number" }, 6 | "perPage": { "type": "number" }, 7 | "page": { "type": "number" } 8 | }, 9 | "required": ["total", "perPage", "page"] 10 | } 11 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_asset_data_pairs_response_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiAssetDataPairsResponseSchema", 3 | "type": "object", 4 | "allOf": [ 5 | { "$ref": "/paginatedCollectionSchema" }, 6 | { 7 | "properties": { 8 | "records": { "$ref": "/relayerApiAssetDataPairsSchema" } 9 | }, 10 | "required": ["records"] 11 | } 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_asset_data_pairs_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiAssetDataPairsSchema", 3 | "type": "array", 4 | "items": { 5 | "properties": { 6 | "assetDataA": { "$ref": "/relayerApiAssetDataTradeInfoSchema" }, 7 | "assetDataB": { "$ref": "/relayerApiAssetDataTradeInfoSchema" } 8 | }, 9 | "required": ["assetDataA", "assetDataB"], 10 | "type": "object" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_asset_data_trade_info_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiAssetDataTradeInfoSchema", 3 | "type": "object", 4 | "properties": { 5 | "assetData": { "$ref": "/hexSchema" }, 6 | "minAmount": { "$ref": "/wholeNumberSchema" }, 7 | "maxAmount": { "$ref": "/wholeNumberSchema" }, 8 | "precision": { "type": "number" } 9 | }, 10 | "required": ["assetData"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_fee_recipients_response_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiFeeRecipientsResponseSchema", 3 | "type": "object", 4 | "allOf": [ 5 | { "$ref": "/paginatedCollectionSchema" }, 6 | { 7 | "properties": { 8 | "records": { 9 | "type": "array", 10 | "items": { "$ref": "/addressSchema" } 11 | } 12 | }, 13 | "required": ["records"] 14 | } 15 | ] 16 | } 17 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_order_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrderSchema", 3 | "type": "object", 4 | "properties": { 5 | "order": { "$ref": "/orderSchema" }, 6 | "metaData": { "type": "object" } 7 | }, 8 | "required": ["order", "metaData"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_orderbook_response_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrderbookResponseSchema", 3 | "type": "object", 4 | "properties": { 5 | "bids": { "$ref": "/relayerApiOrdersResponseSchema" }, 6 | "asks": { "$ref": "/relayerApiOrdersResponseSchema" } 7 | }, 8 | "required": ["bids", "asks"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_orders_channel_subscribe_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrdersChannelSubscribeSchema", 3 | "type": "object", 4 | "properties": { 5 | "type": { "enum": ["subscribe"] }, 6 | "channel": { "enum": ["orders"] }, 7 | "requestId": { "type": "string" }, 8 | "payload": { "$ref": "/relayerApiOrdersChannelSubscribePayloadSchema" } 9 | }, 10 | "required": ["type", "channel", "requestId"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_orders_channel_update_response_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrdersChannelUpdateSchema", 3 | "type": "object", 4 | "properties": { 5 | "type": { "enum": ["update"] }, 6 | "channel": { "enum": ["orders"] }, 7 | "requestId": { "type": "string" }, 8 | "payload": { "$ref": "/relayerApiOrdersSchema" } 9 | }, 10 | "required": ["type", "channel", "requestId"] 11 | } 12 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_orders_response_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrdersResponseSchema", 3 | "type": "object", 4 | "allOf": [ 5 | { "$ref": "/paginatedCollectionSchema" }, 6 | { 7 | "properties": { 8 | "records": { "$ref": "/relayerApiOrdersSchema" } 9 | }, 10 | "required": ["records"] 11 | } 12 | ] 13 | } 14 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/relayer_api_orders_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/relayerApiOrdersSchema", 3 | "type": "array", 4 | "items": { 5 | "$ref": "/relayerApiOrderSchema" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/signed_order_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/signedOrderSchema", 3 | "allOf": [ 4 | { "$ref": "/orderSchema" }, 5 | { 6 | "properties": { 7 | "signature": { "$ref": "/hexSchema" } 8 | }, 9 | "required": ["signature"] 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/signed_orders_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/signedOrdersSchema", 3 | "type": "array", 4 | "items": { "$ref": "/signedOrderSchema" } 5 | } 6 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/token_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/tokenSchema", 3 | "properties": { 4 | "name": { "type": "string" }, 5 | "symbol": { "type": "string" }, 6 | "decimals": { "type": "number" }, 7 | "address": { "$ref": "/addressSchema" } 8 | }, 9 | "required": ["name", "symbol", "decimals", "address"], 10 | "type": "object" 11 | } 12 | -------------------------------------------------------------------------------- /packages/json-schemas/schemas/whole_number_schema.json: -------------------------------------------------------------------------------- 1 | { 2 | "id": "/wholeNumberSchema", 3 | "anyOf": [ 4 | { 5 | "type": "string", 6 | "pattern": "^\\d+$" 7 | }, 8 | { 9 | "type": "integer" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /packages/json-schemas/src/index.ts: -------------------------------------------------------------------------------- 1 | export { ValidatorResult, Schema } from 'jsonschema'; 2 | 3 | export { SchemaValidator } from './schema_validator'; 4 | export { schemas } from './schemas'; 5 | -------------------------------------------------------------------------------- /packages/json-schemas/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/json-schemas/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/migrations/.gitignore: -------------------------------------------------------------------------------- 1 | *.zip 2 | 0x_ganache_snapshot 3 | -------------------------------------------------------------------------------- /packages/migrations/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !bin/**/* 11 | -------------------------------------------------------------------------------- /packages/migrations/bin/0x-migrate.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../lib/src/cli.js'); 3 | -------------------------------------------------------------------------------- /packages/migrations/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["src/**/*", "test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/migrations/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/migrations/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/monorepo-scripts/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/monorepo-scripts/src/index.ts -------------------------------------------------------------------------------- /packages/monorepo-scripts/src/utils/configs.ts: -------------------------------------------------------------------------------- 1 | const IS_LOCAL_PUBLISH = process.env.IS_LOCAL_PUBLISH === 'true'; 2 | const DIST_TAG = process.env.DIST_TAG || ''; 3 | const LOCAL_NPM_REGISTRY_URL = 'http://localhost:4873'; 4 | const REMOTE_NPM_REGISTRY_URL = 'https://registry.npmjs.org/'; 5 | 6 | export const configs = { 7 | IS_LOCAL_PUBLISH, 8 | DIST_TAG, 9 | NPM_REGISTRY_URL: IS_LOCAL_PUBLISH ? LOCAL_NPM_REGISTRY_URL : REMOTE_NPM_REGISTRY_URL, 10 | DOCKER_HUB_ORG: '0xorg', 11 | }; 12 | -------------------------------------------------------------------------------- /packages/monorepo-scripts/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "typeRoots": ["../../node_modules/@types", "node_modules/@types"], 5 | "outDir": "lib", 6 | "rootDir": "src" 7 | }, 8 | "include": ["./src/**/*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/monorepo-scripts/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["../tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/order-utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/order-utils/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/order-utils/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/order-utils/src/order_hash_utils.ts: -------------------------------------------------------------------------------- 1 | import { Order } from '@0x/types'; 2 | import { hexUtils, signTypedDataUtils } from '@0x/utils'; 3 | 4 | import { eip712Utils } from './eip712_utils'; 5 | 6 | export const orderHashUtils = { 7 | getOrderHash: (order: Order): string => { 8 | return hexUtils.toHex(signTypedDataUtils.generateTypedDataHash(eip712Utils.createOrderTypedData(order))); 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /packages/order-utils/src/schemas/validate_order_fillable_opts_schema.ts: -------------------------------------------------------------------------------- 1 | export const validateOrderFillableOptsSchema = { 2 | id: '/ValidateOrderFillableOpts', 3 | properties: { 4 | expectedFillTakerTokenAmount: { $ref: '/wholeNumberSchema' }, 5 | }, 6 | type: 'object', 7 | }; 8 | -------------------------------------------------------------------------------- /packages/order-utils/src/transaction_hash_utils.ts: -------------------------------------------------------------------------------- 1 | import { ZeroExTransaction } from '@0x/types'; 2 | import { hexUtils, signTypedDataUtils } from '@0x/utils'; 3 | 4 | import { eip712Utils } from './eip712_utils'; 5 | 6 | export const transactionHashUtils = { 7 | getTransactionHash: (tx: ZeroExTransaction): string => { 8 | return hexUtils.toHex( 9 | signTypedDataUtils.generateTypedDataHash(eip712Utils.createZeroExTransactionTypedData(tx)), 10 | ); 11 | }, 12 | }; 13 | -------------------------------------------------------------------------------- /packages/order-utils/test/utils/chai_setup.ts: -------------------------------------------------------------------------------- 1 | export { chaiSetup } from '@0x/dev-utils'; 2 | -------------------------------------------------------------------------------- /packages/order-utils/test/utils/web3_wrapper.ts: -------------------------------------------------------------------------------- 1 | import { web3Factory } from '@0x/dev-utils'; 2 | import { Web3ProviderEngine } from '@0x/subproviders'; 3 | import { Web3Wrapper } from '@0x/web3-wrapper'; 4 | 5 | const provider: Web3ProviderEngine = web3Factory.getRpcProvider({ shouldUseInProcessGanache: true }); 6 | const web3Wrapper = new Web3Wrapper(provider); 7 | 8 | export { provider, web3Wrapper }; 9 | -------------------------------------------------------------------------------- /packages/order-utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["src/**/*", "test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/order-utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/order-utils/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["src/**/*", "test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/orderbook/jest.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | roots: ['/test'], 3 | coverageDirectory: 'coverage', 4 | transform: { 5 | '.*.ts?$': 'ts-jest', 6 | }, 7 | testRegex: '(/__test__/.*|(\\.|/)(test|spec))\\.(js|ts)$', 8 | moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'], 9 | collectCoverageFrom: ['src/**/*.{ts,tsx}', '!src/index.tsx'], 10 | }; 11 | -------------------------------------------------------------------------------- /packages/orderbook/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["src", "test"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/orderbook/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"], 3 | "rules": { 4 | "custom-no-magic-numbers": false 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /packages/orderbook/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-compiler/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !bin/**/* 11 | !solc_bin/.gitkeep 12 | lib/solc_bin/* 13 | !lib/solc_bin/.gitkeep 14 | -------------------------------------------------------------------------------- /packages/sol-compiler/bin/sol-compiler.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../lib/src/cli.js') 3 | -------------------------------------------------------------------------------- /packages/sol-compiler/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/sol-compiler/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/sol-compiler/solc_bin/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/sol-compiler/solc_bin/.gitkeep -------------------------------------------------------------------------------- /packages/sol-compiler/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/sol-compiler/src/solc_wrapper_v04.ts: -------------------------------------------------------------------------------- 1 | import { SolcWrapperV05 } from './solc_wrapper_v05'; 2 | 3 | export const SolcWrapperV04 = SolcWrapperV05; 4 | -------------------------------------------------------------------------------- /packages/sol-compiler/src/solc_wrapper_v07.ts: -------------------------------------------------------------------------------- 1 | import { SolcWrapperV06 } from './solc_wrapper_v06'; 2 | 3 | export const SolcWrapperV07 = SolcWrapperV06; 4 | -------------------------------------------------------------------------------- /packages/sol-compiler/src/utils/utils.ts: -------------------------------------------------------------------------------- 1 | export const utils = { 2 | stringifyWithFormatting(obj: any): string { 3 | const stringifiedObj = JSON.stringify(obj, null, '\t'); 4 | return stringifiedObj; 5 | }, 6 | }; 7 | -------------------------------------------------------------------------------- /packages/sol-compiler/test/fixtures/contracts/BadContractName.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.4.14; 2 | 3 | contract ContractNameThatDoesntMatchFilename { } 4 | -------------------------------------------------------------------------------- /packages/sol-compiler/test/fixtures/contracts/EmptyContract.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.4.14; 2 | 3 | contract EmptyContract { } 4 | -------------------------------------------------------------------------------- /packages/sol-compiler/test/util/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import * as chai from 'chai'; 2 | import chaiAsPromised = require('chai-as-promised'); 3 | import ChaiBigNumber = require('chai-bignumber'); 4 | import * as dirtyChai from 'dirty-chai'; 5 | 6 | export const chaiSetup = { 7 | configure(): void { 8 | chai.config.includeStack = true; 9 | chai.use(ChaiBigNumber()); 10 | chai.use(dirtyChai); 11 | chai.use(chaiAsPromised); 12 | }, 13 | }; 14 | -------------------------------------------------------------------------------- /packages/sol-compiler/test/util/constants.ts: -------------------------------------------------------------------------------- 1 | import { BigNumber } from '@0x/utils'; 2 | 3 | export const constants = { 4 | optimizerEnabled: false, 5 | gasPrice: new BigNumber(20000000000), 6 | timeoutMs: 30000, 7 | zrxTokenAddress: '0xe41d2489571d322189246dafa5ebde1f4699f498', 8 | tokenTransferProxyAddress: '0x8da0d80f5007ef1e431dd2127178d224e32c2ef4', 9 | contracts: '*' as '*', 10 | }; 11 | -------------------------------------------------------------------------------- /packages/sol-compiler/test/util/provider.ts: -------------------------------------------------------------------------------- 1 | import { web3Factory } from '@0x/dev-utils'; 2 | import Web3ProviderEngine = require('web3-provider-engine'); 3 | 4 | const providerConfigs = { shouldUseInProcessGanache: true }; 5 | const provider: Web3ProviderEngine = web3Factory.getRpcProvider(providerConfigs); 6 | 7 | export { provider }; 8 | -------------------------------------------------------------------------------- /packages/sol-compiler/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": ".", 6 | "strictFunctionTypes": false 7 | }, 8 | "include": ["./src/**/*", "./test/**/*"] 9 | } 10 | -------------------------------------------------------------------------------- /packages/sol-compiler/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-compiler/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "strictFunctionTypes": false 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-coverage/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/sol-coverage/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | // tslint:disable:completed-docs 2 | declare module '*.json' { 3 | const json: any; 4 | /* tslint:disable */ 5 | export default json; 6 | /* tslint:enable */ 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-coverage/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-coverage/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-coverage/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-doc/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | /docs 11 | # Whitelist bin 12 | !bin/**/* 13 | -------------------------------------------------------------------------------- /packages/sol-doc/bin/sol-doc.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | require('../lib/src/cli.js'); 3 | -------------------------------------------------------------------------------- /packages/sol-doc/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/sol-doc/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/sol-doc/src/index.ts: -------------------------------------------------------------------------------- 1 | export { 2 | ContractDocs, 3 | ContractKind, 4 | EnumValueDocs, 5 | EnumValueDocsMap, 6 | EventDocs, 7 | extractDocsAsync, 8 | FunctionKind, 9 | MethodDocs, 10 | ParamDocs, 11 | ParamDocsMap, 12 | SolidityDocs, 13 | StorageLocation, 14 | StructDocs, 15 | Visibility, 16 | } from './extract_docs'; 17 | 18 | export { transformDocs, TransformOpts } from './transform_docs'; 19 | 20 | export { generateMarkdownFromDocs, MarkdownOpts } from './gen_md'; 21 | -------------------------------------------------------------------------------- /packages/sol-doc/test/inputs/InterfaceContract.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.5; 2 | 3 | 4 | contract InterfaceContract { 5 | 6 | /// @dev Documentation for `InterfaceStruct`. 7 | /// @param structField2 Documentation for `structField2`. 8 | struct InterfaceStruct { 9 | address structField1; // Documentation for `structField1`. 10 | uint256 structField2; // Stuff to ignore. 11 | // Documentation for `structField3`. 12 | bytes32 structField3; 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /packages/sol-doc/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-doc/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-profiler/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/sol-profiler/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | // tslint:disable:completed-docs 2 | declare module '*.json' { 3 | const json: any; 4 | /* tslint:disable */ 5 | export default json; 6 | /* tslint:enable */ 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-profiler/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-profiler/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-profiler/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-resolver/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | // tslint:disable:completed-docs 2 | declare module '*.json' { 3 | const json: any; 4 | /* tslint:disable */ 5 | export default json; 6 | /* tslint:enable */ 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-resolver/src/resolvers/enumerable_resolver.ts: -------------------------------------------------------------------------------- 1 | import { ContractSource } from '../types'; 2 | 3 | import { Resolver } from './resolver'; 4 | 5 | export abstract class EnumerableResolver extends Resolver { 6 | public abstract getAll(): ContractSource[]; 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-resolver/src/resolvers/resolver.ts: -------------------------------------------------------------------------------- 1 | import { ContractSource } from '../types'; 2 | 3 | export abstract class Resolver { 4 | public abstract resolveIfExists(importPath: string): ContractSource | undefined; 5 | public resolve(importPath: string): ContractSource { 6 | const contractSourceIfExists = this.resolveIfExists(importPath); 7 | if (contractSourceIfExists === undefined) { 8 | throw new Error(`Failed to resolve ${importPath}`); 9 | } 10 | return contractSourceIfExists; 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /packages/sol-resolver/src/types.ts: -------------------------------------------------------------------------------- 1 | export interface ContractSource { 2 | source: string; 3 | path: string; 4 | absolutePath: string; 5 | } 6 | 7 | export interface ContractSources { 8 | [key: string]: ContractSource; 9 | } 10 | -------------------------------------------------------------------------------- /packages/sol-resolver/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-resolver/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-trace/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/sol-trace/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | // tslint:disable:completed-docs 2 | declare module '*.json' { 3 | const json: any; 4 | /* tslint:disable */ 5 | export default json; 6 | /* tslint:enable */ 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-trace/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-trace/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sol-trace/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | 11 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/sol-tracing-utils/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/sol-tracing-utils/src/artifact_adapters/abstract_artifact_adapter.ts: -------------------------------------------------------------------------------- 1 | import { ContractData } from '../types'; 2 | 3 | export abstract class AbstractArtifactAdapter { 4 | public abstract async collectContractsDataAsync(): Promise; 5 | } 6 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | // tslint:disable:completed-docs 2 | declare module '*.json' { 3 | const json: any; 4 | /* tslint:disable */ 5 | export default json; 6 | /* tslint:enable */ 7 | } 8 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/test/fixtures/contracts/SimpleStorage.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.4.21; 2 | 3 | contract SimpleStorage { 4 | uint public storedData; 5 | function set(uint x) { 6 | storedData = x; 7 | } 8 | function get() constant returns (uint retVal) { 9 | return storedData; 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/test/fixtures/contracts/Simplest.sol: -------------------------------------------------------------------------------- 1 | contract Simplest { 2 | } 3 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/test/fixtures/contracts/SolcovIgnore.sol: -------------------------------------------------------------------------------- 1 | pragma solidity ^0.4.21; 2 | 3 | contract SolcovIgnore { 4 | uint public storedData; 5 | 6 | function set(uint x) public { 7 | /* solcov ignore next */ 8 | storedData = x; 9 | } 10 | 11 | /* solcov ignore next */ 12 | function get() constant public returns (uint retVal) { 13 | return storedData; 14 | } 15 | } 16 | 17 | /* solcov ignore next */ 18 | contract Ignore { 19 | function ignored() public returns (bool) { 20 | return false; 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sol-tracing-utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/sra-spec/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "sra3-spec", 3 | "build_command": "yarn build", 4 | "upload_directory": "public", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /packages/sra-spec/.gitignore: -------------------------------------------------------------------------------- 1 | public/api.json 2 | -------------------------------------------------------------------------------- /packages/sra-spec/.npmignore: -------------------------------------------------------------------------------- 1 | .* 2 | yarn-error.log 3 | /src/ 4 | /schemas/ 5 | test/ 6 | tsconfig.json 7 | /lib/src/monorepo_scripts/ 8 | /public/ -------------------------------------------------------------------------------- /packages/sra-spec/build_scripts/buildJson.ts: -------------------------------------------------------------------------------- 1 | import { writeFileSync } from 'fs'; 2 | 3 | import { api } from '../src'; 4 | 5 | const apiJson = JSON.stringify(api); 6 | writeFileSync('lib/api.json', apiJson); 7 | writeFileSync('public/api.json', apiJson); 8 | -------------------------------------------------------------------------------- /packages/sra-spec/src/examples/errors.ts: -------------------------------------------------------------------------------- 1 | export const validationError = { 2 | code: 101, 3 | reason: 'Validation failed', 4 | validationErrors: [ 5 | { 6 | field: 'maker', 7 | code: 1002, 8 | reason: 'Invalid address', 9 | }, 10 | ], 11 | }; 12 | -------------------------------------------------------------------------------- /packages/sra-spec/src/examples/relayerApiFeeRecipientsResponse.ts: -------------------------------------------------------------------------------- 1 | export const relayerApiFeeRecipientsResponse = { 2 | total: 3, 3 | page: 1, 4 | perPage: 10, 5 | records: [ 6 | '0x6eC92694ea172ebC430C30fa31De87620967A082', 7 | '0x9e56625509c2f60af937f23b7b532600390e8c8b', 8 | '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', 9 | ], 10 | }; 11 | -------------------------------------------------------------------------------- /packages/sra-spec/src/examples/relayerApiOrderConfigResponse.ts: -------------------------------------------------------------------------------- 1 | export const relayerApiOrderConfigResponse = { 2 | senderAddress: '0xa2b31dacf30a9c50ca473337c01d8a201ae33e32', 3 | feeRecipientAddress: '0xb046140686d052fff581f63f8136cce132e857da', 4 | makerFee: '100000000000000', 5 | takerFee: '200000000000000', 6 | makerFeeAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', 7 | takerFeeAssetData: '0xf47261b04c32345ced77393b3530b1eed0f346429d', 8 | }; 9 | -------------------------------------------------------------------------------- /packages/sra-spec/src/index.ts: -------------------------------------------------------------------------------- 1 | export { api } from './api'; 2 | -------------------------------------------------------------------------------- /packages/sra-spec/src/md/index.ts: -------------------------------------------------------------------------------- 1 | import { readFileSync } from 'fs'; 2 | 3 | export const md = { 4 | introduction: readFileSync(`${__dirname}/introduction.md`).toString(), 5 | }; 6 | -------------------------------------------------------------------------------- /packages/sra-spec/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/*", "./build_scripts/*", "./md/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/sra-spec/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/subproviders/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/subproviders/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/subproviders/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/subproviders/test/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import * as chai from 'chai'; 2 | import chaiAsPromised = require('chai-as-promised'); 3 | import * as dirtyChai from 'dirty-chai'; 4 | 5 | export const chaiSetup = { 6 | configure(): void { 7 | chai.config.includeStack = true; 8 | chai.use(dirtyChai); 9 | chai.use(chaiAsPromised); 10 | }, 11 | }; 12 | -------------------------------------------------------------------------------- /packages/subproviders/test/utils/configs.ts: -------------------------------------------------------------------------------- 1 | export const configs = { 2 | port: 8545, 3 | networkId: 50, 4 | mnemonic: 'concert load couple harbor equip island argue ramp clarify fence smart topic', 5 | }; 6 | -------------------------------------------------------------------------------- /packages/subproviders/test/utils/ganache_subprovider.ts: -------------------------------------------------------------------------------- 1 | import * as fs from 'fs'; 2 | 3 | import { GanacheSubprovider } from '../../src/subproviders/ganache'; 4 | import { configs } from '../utils/configs'; 5 | 6 | const logger = { 7 | log: (arg: any) => { 8 | fs.appendFileSync('ganache.log', `${arg}\n`); 9 | }, 10 | }; 11 | 12 | export const ganacheSubprovider = new GanacheSubprovider({ 13 | logger, 14 | verbose: false, 15 | port: configs.port, 16 | networkId: configs.networkId, 17 | mnemonic: configs.mnemonic, 18 | }); 19 | -------------------------------------------------------------------------------- /packages/subproviders/test/utils/report_callback_errors.ts: -------------------------------------------------------------------------------- 1 | import { DoneCallback } from '@0x/types'; 2 | 3 | export const reportCallbackErrors = (done: DoneCallback) => { 4 | return (f: (...args: any[]) => void) => { 5 | const wrapped = async (...args: any[]) => { 6 | try { 7 | f(...args); 8 | } catch (err) { 9 | done(err); 10 | } 11 | }; 12 | return wrapped; 13 | }; 14 | }; 15 | -------------------------------------------------------------------------------- /packages/subproviders/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./src/**/*", "./test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/subproviders/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/subproviders/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["./src/**/*", "./test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /packages/tslint-config/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/tslint-config/rules/asyncSuffixRule.ts: -------------------------------------------------------------------------------- 1 | import * as Lint from 'tslint'; 2 | import * as ts from 'typescript'; 3 | 4 | import { AsyncSuffixWalker } from './walkers/async_suffix'; 5 | 6 | export class Rule extends Lint.Rules.AbstractRule { 7 | public apply(sourceFile: ts.SourceFile): Lint.RuleFailure[] { 8 | return this.applyWithWalker(new AsyncSuffixWalker(sourceFile, this.getOptions())); 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /packages/tslint-config/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["./rules/**/*", "test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/types/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/types/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/types/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "src" 6 | }, 7 | "include": ["src/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/types/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/typescript-typings/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | !types/**/* 11 | 12 | -------------------------------------------------------------------------------- /packages/typescript-typings/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["types"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/typescript-typings/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["tslint-config-0xproject"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/async-child-process/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'async-child-process'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/chai-bignumber/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'chai-bignumber'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/cli-format/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'cli-format'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/dirty-chai/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'dirty-chai'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/es6-promisify/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'es6-promisify'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/ethereumjs-abi/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'ethereumjs-abi' { 2 | export function soliditySHA3(argTypes: string[], args: any[]): Buffer; 3 | export function soliditySHA256(argTypes: string[], args: any[]): Buffer; 4 | export function methodID(name: string, types: string[]): Buffer; 5 | export function simpleEncode(signature: string, ...args: any[]): Buffer; 6 | export function rawDecode(signature: string[], data: Buffer): any[]; 7 | } 8 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/json-rpc-error/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'json-rpc-error' { 2 | export class InternalError extends Error { 3 | constructor(err: Error | string); 4 | } 5 | export class MethodNotFound extends Error { 6 | constructor(); 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/keccak/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'keccak'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/openapi-schema-validation/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'openapi-schema-validation'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/promisify-child-process/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'promisify-child-process'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/publish-release/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'publish-release'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/react-highlight/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'react-highlight'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/react-tooltip/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'react-tooltip'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/react-typist/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'react-typist'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/request-promise-native/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'request-promise-native'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/rollbar/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'rollbar'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/semver-diff/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'semver-diff'; 2 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/semver-sort/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'semver-sort' { 2 | const desc: (versions: string[]) => string[]; 3 | } 4 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/to-snake-case/index.d.ts: -------------------------------------------------------------------------------- 1 | declare function toSnakeCase(str: string): string; 2 | declare module 'to-snake-case' { 3 | export = toSnakeCase; 4 | } 5 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/truffle-hdwalet-provider/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'truffle-hdwallet-provider' { 2 | import { JSONRPCRequestPayload, JSONRPCResponsePayload, Provider } from 'ethereum-types'; 3 | class HDWalletProvider implements Provider { 4 | constructor(mnemonic: string, rpcUrl: string); 5 | public sendAsync( 6 | payload: JSONRPCRequestPayload, 7 | callback: (err: Error, result: JSONRPCResponsePayload) => void, 8 | ): void; 9 | } 10 | export = HDWalletProvider; 11 | } 12 | -------------------------------------------------------------------------------- /packages/typescript-typings/types/web3-eth-abi/index.d.ts: -------------------------------------------------------------------------------- 1 | declare module 'web3-eth-abi' { 2 | export function encodeParameters(typesArray: string[], parameters: any[]): string; 3 | } 4 | -------------------------------------------------------------------------------- /packages/utils/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/utils/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/utils/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/utils/src/abi_encoder/index.ts: -------------------------------------------------------------------------------- 1 | export { EncodingRules, DecodingRules } from './utils/rules'; 2 | export { 3 | Address, 4 | Array, 5 | Bool, 6 | DynamicBytes, 7 | Int, 8 | Method, 9 | Pointer, 10 | StaticBytes, 11 | String, 12 | Tuple, 13 | UInt, 14 | create, 15 | createMethod, 16 | } from './evm_data_type_factory'; 17 | export { DataType } from './abstract_data_types/data_type'; 18 | -------------------------------------------------------------------------------- /packages/utils/src/abi_encoder/utils/rules.ts: -------------------------------------------------------------------------------- 1 | export interface DecodingRules { 2 | shouldConvertStructsToObjects: boolean; 3 | isStrictMode: boolean; 4 | } 5 | 6 | export interface EncodingRules { 7 | shouldOptimize?: boolean; 8 | shouldAnnotate?: boolean; 9 | } 10 | -------------------------------------------------------------------------------- /packages/utils/src/constants.ts: -------------------------------------------------------------------------------- 1 | export const NULL_BYTES = '0x'; 2 | export const NULL_ADDRESS = '0x0000000000000000000000000000000000000000'; 3 | -------------------------------------------------------------------------------- /packages/utils/src/error_utils.ts: -------------------------------------------------------------------------------- 1 | export const errorUtils = { 2 | spawnSwitchErr(name: string, value: any): Error { 3 | return new Error(`Unexpected switch value: ${value} encountered for ${name}`); 4 | }, 5 | }; 6 | -------------------------------------------------------------------------------- /packages/utils/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/utils/src/revert_errors/utils/reentrancy_guard_revert_errors.ts: -------------------------------------------------------------------------------- 1 | import { RevertError } from '../../revert_error'; 2 | 3 | export class IllegalReentrancyError extends RevertError { 4 | constructor() { 5 | super('IllegalReentrancyError', 'IllegalReentrancyError()', {}); 6 | } 7 | } 8 | 9 | // Register the IllegalReentrancyError type 10 | RevertError.registerType(IllegalReentrancyError); 11 | -------------------------------------------------------------------------------- /packages/utils/test/utils/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import * as chai from 'chai'; 2 | import chaiAsPromised = require('chai-as-promised'); 3 | import ChaiBigNumber = require('chai-bignumber'); 4 | import * as dirtyChai from 'dirty-chai'; 5 | 6 | export const chaiSetup = { 7 | configure(): void { 8 | chai.config.includeStack = true; 9 | chai.use(ChaiBigNumber()); 10 | chai.use(dirtyChai); 11 | chai.use(chaiAsPromised); 12 | }, 13 | }; 14 | -------------------------------------------------------------------------------- /packages/utils/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["src/**/*", "test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/utils/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/verdaccio/Dockerfile: -------------------------------------------------------------------------------- 1 | FROM verdaccio/verdaccio 2 | 3 | ADD conf.yaml /verdaccio/conf/config.yaml 4 | -------------------------------------------------------------------------------- /packages/verdaccio/README.md: -------------------------------------------------------------------------------- 1 | ## 0x Verdaccio 2 | 3 | This package contains a Dockerfile and conf.yaml file for configuring our own 4 | Docker image for Verdaccio. 5 | 6 | See https://verdaccio.org/docs/en/configuration for more information. 7 | 8 | ## Build 9 | 10 | In the root directory for _this package_, run: 11 | 12 | `sudo docker build . -t 0x-verdaccio` 13 | 14 | ## Run 15 | 16 | To start Verdaccio run: 17 | 18 | `sudo docker run --rm -i -p 4873:4873 0x-verdaccio` 19 | -------------------------------------------------------------------------------- /packages/web3-wrapper/.npmignore: -------------------------------------------------------------------------------- 1 | # Blacklist all files 2 | .* 3 | * 4 | # Whitelist lib 5 | !lib/**/* 6 | # Blacklist tests and publish scripts 7 | /lib/test/* 8 | /lib/monorepo_scripts/ 9 | # Package specific ignore 10 | -------------------------------------------------------------------------------- /packages/web3-wrapper/coverage/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/packages/web3-wrapper/coverage/.gitkeep -------------------------------------------------------------------------------- /packages/web3-wrapper/src/globals.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.json' { 2 | const json: any; 3 | /* tslint:disable */ 4 | export default json; 5 | /* tslint:enable */ 6 | } 7 | -------------------------------------------------------------------------------- /packages/web3-wrapper/test/utils/chai_setup.ts: -------------------------------------------------------------------------------- 1 | import * as chai from 'chai'; 2 | import chaiAsPromised = require('chai-as-promised'); 3 | import ChaiBigNumber = require('chai-bignumber'); 4 | import * as dirtyChai from 'dirty-chai'; 5 | 6 | export const chaiSetup = { 7 | configure(): void { 8 | chai.config.includeStack = true; 9 | chai.use(ChaiBigNumber()); 10 | chai.use(dirtyChai); 11 | chai.use(chaiAsPromised); 12 | }, 13 | }; 14 | -------------------------------------------------------------------------------- /packages/web3-wrapper/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib", 5 | "rootDir": "." 6 | }, 7 | "include": ["src/**/*", "test/**/*"] 8 | } 9 | -------------------------------------------------------------------------------- /packages/web3-wrapper/tslint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["@0x/tslint-config"] 3 | } 4 | -------------------------------------------------------------------------------- /packages/web3-wrapper/typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "../../typedoc-tsconfig", 3 | "compilerOptions": { 4 | "outDir": "lib" 5 | }, 6 | "include": ["src/**/*", "test/**/*"] 7 | } 8 | -------------------------------------------------------------------------------- /python-packages/build_docs: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ./parallel ./setup.py build_sphinx 4 | -------------------------------------------------------------------------------- /python-packages/contract_addresses/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-contract-addresses-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/contract_addresses/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_addresses/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/contract_addresses/src/zero_ex/contract_addresses/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/src/zero_ex/contract_addresses/py.typed -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/stubs/pytest/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_addresses/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_addresses/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-contract-artifacts-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 3.0.0 - 2019-12-03 4 | 5 | - Updated with artifacts for version 3 of the protocol. 6 | 7 | ## 2.0.1 - 2019-04-30 8 | 9 | - Expanded documentation. 10 | 11 | ## 2.0.0 - 2019-01-09 12 | 13 | - Initial release. 14 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_artifacts/src/index.rst: -------------------------------------------------------------------------------- 1 | .. source for the sphinx-generated build/docs/web/index.html 2 | 3 | Python zero_ex.contract_artifacts 4 | ================================= 5 | 6 | .. toctree:: 7 | :maxdepth: 2 8 | :caption: Contents: 9 | 10 | .. automodule:: zero_ex.contract_artifacts 11 | :members: 12 | 13 | Indices and tables 14 | ================== 15 | 16 | * :ref:`genindex` 17 | * :ref:`modindex` 18 | * :ref:`search` 19 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/src/zero_ex/contract_artifacts/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/src/zero_ex/contract_artifacts/py.typed -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/stubs/pytest/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_artifacts/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_artifacts/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-contract-wrappers-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors,duplicate-code 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | 5 | [BASIC] 6 | argument-rgx=[a-z_][a-z0-9_]{1,31}$ 7 | # above differs from the default only in that it allows 2-character names 8 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/setup.cfg: -------------------------------------------------------------------------------- 1 | [pycodestyle] 2 | ignore = E501, W503 3 | # E501 = line too long 4 | # W503 = line break occurred before a binary operator 5 | # we let black handle these things 6 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/doc_templates/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/doc_templates/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/asset_proxy_owner/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/asset_proxy_owner/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/coordinator/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/coordinator/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/coordinator_registry/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/coordinator_registry/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dev_utils/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dev_utils/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dummy_erc20_token/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dummy_erc20_token/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dummy_erc721_token/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dummy_erc721_token/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dutch_auction/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/dutch_auction/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc20_proxy/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc20_proxy/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc20_token/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc20_token/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc721_proxy/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc721_proxy/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc721_token/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/erc721_token/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/forwarder/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/forwarder/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_asset_proxy/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_asset_proxy/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_validator/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_validator/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_wallet/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/i_wallet/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/multi_asset_proxy/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/multi_asset_proxy/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/order_validator/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/order_validator/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/py.typed -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/weth9/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/weth9/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/src/zero_ex/contract_wrappers/zrx_token/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/src/zero_ex/contract_wrappers/zrx_token/.gitkeep -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/eth_account/__init__.pyi: -------------------------------------------------------------------------------- 1 | class Account: ... 2 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/eth_account/local.pyi: -------------------------------------------------------------------------------- 1 | class LocalAccount: 2 | address: str 3 | ... 4 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/eth_utils/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union 2 | 3 | def to_checksum_address(address: str) -> str: ... 4 | 5 | def remove_0x_prefix(hex_string: str) -> str: ... 6 | 7 | def is_address(address: Union[str, bytes]) -> bool: ... 8 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/hexbytes/__init__.pyi: -------------------------------------------------------------------------------- 1 | class HexBytes: ... 2 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Callable 2 | 3 | def fixture(scope: str) -> Callable: 4 | ... 5 | 6 | class ExceptionInfo: 7 | ... 8 | 9 | def raises(exception: Exception) -> ExceptionInfo: ... -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/sha3/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/sha3/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/contract.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any 2 | 3 | 4 | class Contract: 5 | def call(self): ... 6 | 7 | functions: Any 8 | 9 | events: Any 10 | ... 11 | 12 | 13 | class ContractFunction: 14 | def __call__(self, *args, **kwargs): 15 | ... 16 | 17 | ... 18 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/datastructures.pyi: -------------------------------------------------------------------------------- 1 | class NamedElementOnion: 2 | ... 3 | 4 | class AttributeDict: 5 | ... -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/exceptions.pyi: -------------------------------------------------------------------------------- 1 | class BadFunctionCallOutput(Exception): 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/gas_strategies/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/web3/gas_strategies/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/gas_strategies/rpc.pyi: -------------------------------------------------------------------------------- 1 | def rpc_gas_price_strategy(): 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/providers/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/contract_wrappers/stubs/web3/providers/__init__.pyi -------------------------------------------------------------------------------- /python-packages/contract_wrappers/stubs/web3/providers/base.pyi: -------------------------------------------------------------------------------- 1 | class BaseProvider: 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/test/__init__.py: -------------------------------------------------------------------------------- 1 | """Tests of zero_ex.contract_wrappers.""" 2 | -------------------------------------------------------------------------------- /python-packages/contract_wrappers/test/test_base_contract_method.py: -------------------------------------------------------------------------------- 1 | """Tests for :class:`ContractMethod`.""" 2 | 3 | import pytest 4 | 5 | from zero_ex.contract_addresses import chain_to_addresses, ChainId 6 | from zero_ex.contract_wrappers.bases import ContractMethod 7 | 8 | 9 | @pytest.fixture(scope="module") 10 | def contract_wrapper(ganache_provider): 11 | """Get a ContractMethod instance for testing.""" 12 | return ContractMethod( 13 | web3_or_provider=ganache_provider, 14 | contract_address=chain_to_addresses(ChainId.GANACHE).ether_token, 15 | ) 16 | -------------------------------------------------------------------------------- /python-packages/install: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | 3 | """Install all packages in non-editable mode (no -e on pip install).""" 4 | 5 | from os import path 6 | import subprocess 7 | 8 | # install all packages 9 | subprocess.check_call( 10 | ( 11 | path.join(".", "cmd_pkgs_in_dep_order.py") + " pip install .[dev]" 12 | ).split() 13 | ) 14 | -------------------------------------------------------------------------------- /python-packages/json_schemas/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-json-schemas-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/json_schemas/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | -------------------------------------------------------------------------------- /python-packages/json_schemas/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 1.2.0 - 2019-12-03 4 | 5 | - Removed dev dependency on package `0x-contract-wrappers` 6 | - Migrated examples to using new version of `0x-contract-addresses`. 7 | 8 | ## 1.1.0 - 2019-08-09 9 | 10 | - Added `verifyingContractAddress` to `/zeroExTransactionSchema`. 11 | - Expanded documentation. 12 | - Permit mixed-case addresses. 13 | 14 | ## 1.0.0 - 2019-01-09 15 | 16 | - Initial release. 17 | -------------------------------------------------------------------------------- /python-packages/json_schemas/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/json_schemas/src/index.rst: -------------------------------------------------------------------------------- 1 | .. source for the sphinx-generated build/docs/web/index.html 2 | 3 | Python zero_ex.json_schemas 4 | =========================== 5 | 6 | .. toctree:: 7 | :maxdepth: 2 8 | :caption: Contents: 9 | 10 | .. automodule:: zero_ex.json_schemas 11 | :members: 12 | 13 | Indices and tables 14 | ================== 15 | 16 | * :ref:`genindex` 17 | * :ref:`modindex` 18 | * :ref:`search` 19 | -------------------------------------------------------------------------------- /python-packages/json_schemas/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/json_schemas/src/zero_ex/json_schemas/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/src/zero_ex/json_schemas/py.typed -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/jsonschema/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Any, Dict, Tuple 2 | 3 | 4 | class RefResolver: 5 | def resolve(self, url: str) -> Tuple[str, Dict]: 6 | ... 7 | 8 | 9 | class ValidationError(Exception): pass 10 | 11 | def validate(instance: Any, schema: Dict, cls=None, *args, **kwargs) -> None: pass 12 | -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/jsonschema/exceptions.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/stubs/jsonschema/exceptions.pyi -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/stubs/pytest/__init__.pyi -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/pytest/raises.pyi: -------------------------------------------------------------------------------- 1 | def raises(exception: Exception) -> ExceptionInfo: ... 2 | -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/json_schemas/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/json_schemas/stubs/stringcase/__init__.pyi: -------------------------------------------------------------------------------- 1 | def snakecase(_: str): 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/json_schemas/test/__init__.py: -------------------------------------------------------------------------------- 1 | """Tests of zero_ex.json_schemas.""" 2 | -------------------------------------------------------------------------------- /python-packages/lint: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ./parallel ./setup.py lint 4 | -------------------------------------------------------------------------------- /python-packages/middlewares/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-middlewares-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/middlewares/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | -------------------------------------------------------------------------------- /python-packages/middlewares/CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 1.0.0 - 2019-12-03 4 | 5 | - Initial release. 6 | -------------------------------------------------------------------------------- /python-packages/middlewares/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/middlewares/src/doc_templates/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/src/doc_templates/.gitkeep -------------------------------------------------------------------------------- /python-packages/middlewares/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/middlewares/src/zero_ex/middlewares/__init__.py: -------------------------------------------------------------------------------- 1 | """Web3 middlewares for 0x applications. 2 | 3 | Setup 4 | ----- 5 | 6 | Install the package with pip:: 7 | 8 | pip install 0x-middlewares 9 | 10 | """ 11 | -------------------------------------------------------------------------------- /python-packages/middlewares/src/zero_ex/middlewares/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/src/zero_ex/middlewares/py.typed -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_account/__init__.pyi: -------------------------------------------------------------------------------- 1 | class Account: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_account/messages.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/eth_account/messages.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_account/signers/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/eth_account/signers/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_account/signers/local.pyi: -------------------------------------------------------------------------------- 1 | class LocalAccount: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_keys/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/eth_keys/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_keys/datatypes.pyi: -------------------------------------------------------------------------------- 1 | class PrivateKey: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/eth_utils/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Union 2 | 3 | def to_checksum_address(value: Union[str, bytes]) -> str: ... 4 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/hexbytes/HexBytes.pyi: -------------------------------------------------------------------------------- 1 | class HexBytes: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/hexbytes/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/hexbytes/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/pytest/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/pytest/raises.pyi: -------------------------------------------------------------------------------- 1 | def raises(exception: Exception) -> ExceptionInfo: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/__init__.pyi: -------------------------------------------------------------------------------- 1 | from typing import Dict, Optional, Union 2 | 3 | from web3.utils import datatypes 4 | from web3.providers.base import BaseProvider 5 | 6 | class Web3: 7 | def __init__(self, provider: BaseProvider) -> None: ... 8 | 9 | class HTTPProvider(BaseProvider): 10 | ... 11 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/exceptions.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/web3/exceptions.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/providers/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/web3/providers/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/providers/base.pyi: -------------------------------------------------------------------------------- 1 | class BaseProvider: ... 2 | -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/utils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/web3/utils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/stubs/web3/utils/datatypes.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/middlewares/stubs/web3/utils/datatypes.pyi -------------------------------------------------------------------------------- /python-packages/middlewares/test/__init__.py: -------------------------------------------------------------------------------- 1 | """Tests of zero_x.middlewares.""" 2 | -------------------------------------------------------------------------------- /python-packages/order_utils/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-order-utils-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "trailing_slashes": true, 8 | "cache": 3600, 9 | "aws_profile": "default", 10 | "aws_region": "us-east-1", 11 | "cdn": false, 12 | "dns_configured": true 13 | } 14 | -------------------------------------------------------------------------------- /python-packages/order_utils/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | -------------------------------------------------------------------------------- /python-packages/order_utils/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/order_utils/src/doc_templates/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/src/doc_templates/.gitkeep -------------------------------------------------------------------------------- /python-packages/order_utils/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/order_utils/src/zero_ex/dev_utils/__init__.py: -------------------------------------------------------------------------------- 1 | """Dev utils to be shared across 0x projects and packages.""" 2 | -------------------------------------------------------------------------------- /python-packages/order_utils/src/zero_ex/order_utils/py.typed: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/src/zero_ex/order_utils/py.typed -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/deprecated/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/deprecated/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/deprecated/sphinx/__init__.pyi: -------------------------------------------------------------------------------- 1 | def deprecated(*args, **kwargs): 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/distutils/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/distutils/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/distutils/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/distutils/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/distutils/command/clean.pyi: -------------------------------------------------------------------------------- 1 | from distutils.core import Command 2 | 3 | class clean(Command): 4 | def initialize_options(self: clean) -> None: ... 5 | def finalize_options(self: clean) -> None: ... 6 | def run(self: clean) -> None: ... 7 | ... 8 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/pytest/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/pytest/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/pytest/raises.pyi: -------------------------------------------------------------------------------- 1 | def raises(exception: Exception) -> ExceptionInfo: ... 2 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/setuptools/__init__.pyi: -------------------------------------------------------------------------------- 1 | from distutils.dist import Distribution 2 | from typing import Any, List 3 | 4 | def setup(**attrs: Any) -> Distribution: ... 5 | 6 | class Command: ... 7 | 8 | def find_packages(where: str) -> List[str]: ... 9 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/setuptools/command/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/setuptools/command/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/setuptools/command/test.pyi: -------------------------------------------------------------------------------- 1 | from setuptools import Command 2 | 3 | class test(Command): ... 4 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/sha3/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/sha3/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/web3/contract.pyi: -------------------------------------------------------------------------------- 1 | from typing import Callable 2 | 3 | 4 | class ContractFunctions: 5 | def __getattr__(self, function_name) -> Callable: 6 | ... 7 | ... 8 | 9 | 10 | class Contract: 11 | functions: ContractFunctions 12 | ... 13 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/web3/exceptions.pyi: -------------------------------------------------------------------------------- 1 | class BadFunctionCallOutput(Exception): 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/web3/providers/__init__.pyi: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/order_utils/stubs/web3/providers/__init__.pyi -------------------------------------------------------------------------------- /python-packages/order_utils/stubs/web3/providers/base.pyi: -------------------------------------------------------------------------------- 1 | class BaseProvider: 2 | ... 3 | -------------------------------------------------------------------------------- /python-packages/order_utils/test/__init__.py: -------------------------------------------------------------------------------- 1 | """Tests of zero_x.order_utils.""" 2 | -------------------------------------------------------------------------------- /python-packages/prep_for_staging_doc_publish: -------------------------------------------------------------------------------- 1 | find ./ \ 2 | -name .discharge.json \ 3 | -exec sed -i \ 4 | -e "s/\(domain.*\)\",$/\1-staging\",/" \ 5 | {} \; 6 | -------------------------------------------------------------------------------- /python-packages/sra_client/.discharge.json: -------------------------------------------------------------------------------- 1 | { 2 | "domain": "0x-sra-client-py", 3 | "build_command": "python setup.py build_sphinx", 4 | "upload_directory": "build/docs/html", 5 | "index_key": "index.html", 6 | "error_key": "index.html", 7 | "cache": 3600, 8 | "aws_profile": "default", 9 | "aws_region": "us-east-1", 10 | "cdn": false, 11 | "dns_configured": true 12 | } 13 | -------------------------------------------------------------------------------- /python-packages/sra_client/.pylintrc: -------------------------------------------------------------------------------- 1 | [MESSAGES CONTROL] 2 | disable=C0330,line-too-long,fixme,too-few-public-methods,too-many-ancestors 3 | # C0330 is "bad hanging indent". we use indents per `black`. 4 | 5 | -------------------------------------------------------------------------------- /python-packages/sra_client/doc_template/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/sra_client/doc_template/.gitkeep -------------------------------------------------------------------------------- /python-packages/sra_client/docs/PaginatedCollectionSchema.md: -------------------------------------------------------------------------------- 1 | # PaginatedCollectionSchema 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ------------ | --------- | ----------- | ----- | 7 | | **total** | **float** | | 8 | | **per_page** | **float** | | 9 | | **page** | **float** | | 10 | 11 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 12 | -------------------------------------------------------------------------------- /python-packages/sra_client/docs/RelayerApiAssetDataPairsResponseSchema.md: -------------------------------------------------------------------------------- 1 | # RelayerApiAssetDataPairsResponseSchema 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ----------- | ---------------- | ----------- | ----- | 7 | | **records** | **list[object]** | | 8 | 9 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 10 | -------------------------------------------------------------------------------- /python-packages/sra_client/docs/RelayerApiErrorResponseSchemaValidationErrors.md: -------------------------------------------------------------------------------- 1 | # RelayerApiErrorResponseSchemaValidationErrors 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ---------- | ------- | ----------- | ----- | 7 | | **field** | **str** | | 8 | | **code** | **int** | | 9 | | **reason** | **str** | | 10 | 11 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 12 | -------------------------------------------------------------------------------- /python-packages/sra_client/docs/RelayerApiFeeRecipientsResponseSchema.md: -------------------------------------------------------------------------------- 1 | # RelayerApiFeeRecipientsResponseSchema 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ----------- | ------------- | ----------- | ----- | 7 | | **records** | **list[str]** | | 8 | 9 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 10 | -------------------------------------------------------------------------------- /python-packages/sra_client/docs/RelayerApiOrderSchema.md: -------------------------------------------------------------------------------- 1 | # RelayerApiOrderSchema 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ------------- | --------------------------------- | ----------- | ----- | 7 | | **order** | [**OrderSchema**](OrderSchema.md) | | 8 | | **meta_data** | [**object**](.md) | | 9 | 10 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 11 | -------------------------------------------------------------------------------- /python-packages/sra_client/docs/SignedOrderSchema.md: -------------------------------------------------------------------------------- 1 | # SignedOrderSchema 2 | 3 | ## Properties 4 | 5 | | Name | Type | Description | Notes | 6 | | ------------- | ------- | ----------- | ----- | 7 | | **signature** | **str** | | 8 | 9 | [[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) 10 | -------------------------------------------------------------------------------- /python-packages/sra_client/openapi-generator-cli-config.json: -------------------------------------------------------------------------------- 1 | { 2 | "packageName": "sra_client", 3 | "projectName": "0x-sra-client" 4 | } 5 | -------------------------------------------------------------------------------- /python-packages/sra_client/requirements.txt: -------------------------------------------------------------------------------- 1 | certifi >= 14.05.14 2 | six >= 1.10 3 | python_dateutil >= 2.5.3 4 | setuptools >= 21.0.0 5 | urllib3 >= 1.15.1 6 | -------------------------------------------------------------------------------- /python-packages/sra_client/src/doc_static/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/0xProject/0x-monorepo/53b5bb16d8b4c9050a46978b6f347ef7595fe103/python-packages/sra_client/src/doc_static/.gitkeep -------------------------------------------------------------------------------- /python-packages/sra_client/src/zero_ex/__init__.py: -------------------------------------------------------------------------------- 1 | """0x Python API.""" 2 | __import__("pkg_resources").declare_namespace(__name__) # type: ignore 3 | -------------------------------------------------------------------------------- /python-packages/sra_client/src/zero_ex/sra_client/api/__init__.py: -------------------------------------------------------------------------------- 1 | from __future__ import absolute_import 2 | 3 | # flake8: noqa 4 | 5 | # import apis into api package 6 | from zero_ex.sra_client.api.relayer_api import RelayerApi 7 | -------------------------------------------------------------------------------- /python-packages/sra_client/test-requirements.txt: -------------------------------------------------------------------------------- 1 | coverage>=4.0.3 2 | nose>=1.3.7 3 | pluggy>=0.3.1 4 | py>=1.4.31 5 | randomize>=0.13 6 | -------------------------------------------------------------------------------- /python-packages/sra_client/test/__init__.py: -------------------------------------------------------------------------------- 1 | """Test for sra_client.""" 2 | -------------------------------------------------------------------------------- /python-packages/test: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | ./parallel ./setup.py test 4 | -------------------------------------------------------------------------------- /python-packages/tsort: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # extract package interdependencies and topographically sort them 4 | 5 | find -name setup.py -exec grep -H \"0x- {} \; | \ 6 | grep -v name= | \ 7 | grep -v NAME | \ 8 | sed \ 9 | -e 's/^\.\//0x-/' \ 10 | -e 's/\/setup.py://' \ 11 | -e 's/"//g' -e 's/,$//' \ 12 | -e 's/_/-/g' | \ 13 | tsort | \ 14 | tac | \ 15 | sed \ 16 | -e 's/^0x-//' \ 17 | -e 's/-/_/' 18 | -------------------------------------------------------------------------------- /python-packages/uninstall_all: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | PKG_FOLDERS=$(find ./ -maxdepth 1 -type d -exec basename {} \; | grep -v -e '^.$' | grep -v '.mypy_cache' | tr '_' '-') 4 | for i in $PKG_FOLDERS; do PKGS="${PKGS} 0x-$i"; done 5 | echo pip uninstall --yes $PKGS 0x-web3 web3 6 | pip uninstall --yes $PKGS 0x-web3 web3 7 | -------------------------------------------------------------------------------- /readthedocs.yaml: -------------------------------------------------------------------------------- 1 | build: 2 | image: latest 3 | 4 | python: 5 | version: 3.6 6 | 7 | requirements_file: requirements.readthedocs.txt 8 | -------------------------------------------------------------------------------- /requirements.readthedocs.txt: -------------------------------------------------------------------------------- 1 | ./python-packages/order_utils 2 | -------------------------------------------------------------------------------- /typedoc-tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "target": "es5", 5 | "lib": ["es2017", "dom"], 6 | "sourceMap": true, 7 | "declaration": true, 8 | "experimentalDecorators": true, 9 | "downlevelIteration": true, 10 | "noImplicitReturns": true, 11 | "resolveJsonModule": true, 12 | "pretty": true, 13 | "skipLibCheck": true, 14 | "typeRoots": ["node_modules/@0x/typescript-typings/types", "node_modules/@types"], 15 | "strict": true 16 | } 17 | } 18 | --------------------------------------------------------------------------------