diff --git a/package.json b/package.json index 4a2daa9f5..b6d19af64 100644 --- a/package.json +++ b/package.json @@ -4,6 +4,7 @@ "private": true, "dependencies": { "0x.js": "^6.0.11", + "@0x/asset-buyer": "^6.1.9", "@0x/connect": "^5.0.12", "@0x/web3-wrapper": "^6.0.6", "@types/async-retry": "^1.4.1", diff --git a/src/services/contract_wrappers.ts b/src/services/contract_wrappers.ts index 493e64094..bc0b59889 100644 --- a/src/services/contract_wrappers.ts +++ b/src/services/contract_wrappers.ts @@ -9,7 +9,9 @@ let contractWrappers: ContractWrappers; export const getContractWrappers = async () => { if (!contractWrappers) { const web3Wrapper = await getWeb3Wrapper(); - contractWrappers = new ContractWrappers(web3Wrapper.getProvider(), { networkId: NETWORK_ID }); + contractWrappers = new ContractWrappers(web3Wrapper.getProvider(), { + networkId: NETWORK_ID, + }); } return contractWrappers; diff --git a/src/services/web3_wrapper.ts b/src/services/web3_wrapper.ts index 985a0ea29..75f81b167 100644 --- a/src/services/web3_wrapper.ts +++ b/src/services/web3_wrapper.ts @@ -1,3 +1,4 @@ +import { MetamaskSubprovider } from '0x.js'; import { Web3Wrapper } from '@0x/web3-wrapper'; import { sleep } from '../util/sleep'; @@ -18,16 +19,16 @@ export const initializeWeb3Wrapper = async (): Promise => { if (ethereum) { try { - web3Wrapper = new Web3Wrapper(ethereum); + web3Wrapper = new Web3Wrapper(new MetamaskSubprovider(ethereum)); // Request account access if needed await ethereum.enable(); // Subscriptions register - ethereum.on('accountsChanged', async (accounts: []) => { + ethereum.on('accountsChanged', async (_accounts: []) => { // Reload to avoid MetaMask bug: "MetaMask - RPC Error: Internal JSON-RPC" location.reload(); }); - ethereum.on('networkChanged', async (network: number) => { + ethereum.on('networkChanged', async (_network: number) => { location.reload(); }); @@ -37,7 +38,7 @@ export const initializeWeb3Wrapper = async (): Promise => { return null; } } else if (web3) { - web3Wrapper = new Web3Wrapper(web3.currentProvider); + web3Wrapper = new Web3Wrapper(new MetamaskSubprovider(web3.currentProvider)); return web3Wrapper; } else { // The user does not have metamask installed diff --git a/src/store/blockchain/actions.ts b/src/store/blockchain/actions.ts index c7e56d9b9..f7c491579 100644 --- a/src/store/blockchain/actions.ts +++ b/src/store/blockchain/actions.ts @@ -1,5 +1,5 @@ // tslint:disable:max-file-line-count -import { BigNumber, MetamaskSubprovider, signatureUtils } from '0x.js'; +import { BigNumber, signatureUtils } from '0x.js'; import { createAction, createAsyncAction } from 'typesafe-actions'; import { COLLECTIBLE_ADDRESS, NETWORK_ID, START_BLOCK_LIMIT } from '../../common/constants'; @@ -483,8 +483,7 @@ export const createSignedCollectibleOrder: ThunkCreator = ( ); } - const provider = new MetamaskSubprovider(web3Wrapper.getProvider()); - return signatureUtils.ecSignOrderAsync(provider, order, ethAccount); + return signatureUtils.ecSignOrderAsync(web3Wrapper.getProvider(), order, ethAccount); } catch (error) { throw new SignedOrderException(error.message); } diff --git a/src/store/collectibles/actions.ts b/src/store/collectibles/actions.ts index b68b3219c..e62ca4fc8 100644 --- a/src/store/collectibles/actions.ts +++ b/src/store/collectibles/actions.ts @@ -1,4 +1,4 @@ -import { MetamaskSubprovider, signatureUtils, SignedOrder } from '0x.js'; +import { signatureUtils, SignedOrder } from '0x.js'; import { createAction, createAsyncAction } from 'typesafe-actions'; import { ZERO_ADDRESS } from '../../common/constants'; @@ -65,8 +65,11 @@ export const submitBuyCollectible: ThunkCreator> = (order: Signe takerAssetAmount: order.makerAssetAmount, }; - const provider = new MetamaskSubprovider(web3Wrapper.getProvider()); - const buySignedOrder = await signatureUtils.ecSignOrderAsync(provider, buyOrder, ethAccount); + const buySignedOrder = await signatureUtils.ecSignOrderAsync( + web3Wrapper.getProvider(), + buyOrder, + ethAccount, + ); tx = await contractWrappers.dutchAuction.matchOrdersAsync(buySignedOrder, order, ethAccount, gasOptions); } else { tx = await contractWrappers.forwarder.marketBuyOrdersWithEthAsync( diff --git a/src/store/relayer/actions.ts b/src/store/relayer/actions.ts index f21b0569e..8d1198d69 100644 --- a/src/store/relayer/actions.ts +++ b/src/store/relayer/actions.ts @@ -1,7 +1,8 @@ -import { BigNumber, SignedOrder } from '0x.js'; +import { assetDataUtils, BigNumber, SignedOrder } from '0x.js'; +import { AssetBuyer } from '@0x/asset-buyer'; import { createAction } from 'typesafe-actions'; -import { ZERO_ADDRESS } from '../../common/constants'; +import { NETWORK_ID, RELAYER_URL } from '../../common/constants'; import { INSUFFICIENT_ORDERS_TO_FILL_AMOUNT_ERR } from '../../exceptions/common'; import { InsufficientOrdersAmountException } from '../../exceptions/insufficient_orders_amount_exception'; import { RelayerException } from '../../exceptions/relayer_exception'; @@ -184,26 +185,25 @@ export const submitMarketOrder: ThunkCreator { - return total.plus(currentValue); - }, new BigNumber(0)); - const isEthBalanceEnough = ethBalance.isGreaterThan(ethAmountRequired); + const assetBuyer = AssetBuyer.getAssetBuyerForStandardRelayerAPIUrl( + contractWrappers.getProvider(), + RELAYER_URL, + { + networkId: NETWORK_ID, + }, + ); + const buyQuote = await assetBuyer.getBuyQuoteAsync( + assetDataUtils.encodeERC20AssetData(baseToken.address), + amount, + ); + const ethBalance = getEthBalance(state); + const isEthBalanceEnough = ethBalance.isGreaterThan(buyQuote.worstCaseQuoteInfo.totalEthAmount); + const isMarketBuyForwarder = isBuy && isWeth(quoteToken.symbol) && isEthBalanceEnough; let txHash; if (isMarketBuyForwarder) { - txHash = await contractWrappers.forwarder.marketBuyOrdersWithEthAsync( - ordersToFill, - amount, - ethAccount, - ethAmountRequired, - [], - 0, - ZERO_ADDRESS, - getTransactionOptions(gasPrice), - ); + txHash = await assetBuyer.executeBuyQuoteAsync(buyQuote); } else { txHash = await contractWrappers.exchange.batchFillOrdersAsync( ordersToFill, diff --git a/src/store/ui/actions.ts b/src/store/ui/actions.ts index c90c799d9..a9d2c24ad 100644 --- a/src/store/ui/actions.ts +++ b/src/store/ui/actions.ts @@ -1,4 +1,4 @@ -import { BigNumber, MetamaskSubprovider, signatureUtils } from '0x.js'; +import { BigNumber, signatureUtils } from '0x.js'; import { createAction } from 'typesafe-actions'; import { COLLECTIBLE_ADDRESS } from '../../common/constants'; @@ -289,8 +289,7 @@ export const createSignedOrder: ThunkCreator = (amount: BigNumber, price: BigNum side, ); - const provider = new MetamaskSubprovider(web3Wrapper.getProvider()); - return signatureUtils.ecSignOrderAsync(provider, order, ethAccount); + return signatureUtils.ecSignOrderAsync(web3Wrapper.getProvider(), order, ethAccount); } catch (error) { throw new SignedOrderException(error.message); } diff --git a/yarn.lock b/yarn.lock index bb766883f..4cc16bcc3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -5,7 +5,6 @@ "0x.js@^6.0.11": version "6.0.11" resolved "https://registry.npmjs.org/0x.js/-/0x.js-6.0.11.tgz#33968367fc8f12a630cee67a5412b55a04b05d7a" - integrity sha512-ax5xLwDUzccRwilIJ5h8y7Mf/2sJRpNoOIfVmeenPIO54A4uJm5WraiudHS159fYiTN2kILaDC2L2rlSJlrRUw== dependencies: "@0x/assert" "^2.1.0" "@0x/base-contract" "^5.1.1" @@ -26,12 +25,19 @@ "@0x/abi-gen-wrappers@^5.0.1": version "5.0.1" resolved "https://registry.npmjs.org/@0x/abi-gen-wrappers/-/abi-gen-wrappers-5.0.1.tgz#c3683fc7e6cc71033ab1cc8a7e616743f321583a" - integrity sha512-Qbbcej+dgO4Dubjz9/Jd8i4NlKQ2rBJha5PNpL8bJmPhqgvgLaUQaDQoUuday59FJ7HZ6LImVfQwx1dS53K16w== dependencies: "@0x/base-contract" "^5.1.1" "@0x/contract-addresses" "^3.0.1" "@0x/contract-artifacts" "^2.0.1" +"@0x/abi-gen-wrappers@^5.0.3": + version "5.0.3" + resolved "https://registry.yarnpkg.com/@0x/abi-gen-wrappers/-/abi-gen-wrappers-5.0.3.tgz#ef8ebf0519cd643fdf5b205f4079f6c083694b98" + dependencies: + "@0x/base-contract" "^5.1.2" + "@0x/contract-addresses" "^3.0.2" + "@0x/contract-artifacts" "^2.0.2" + "@0x/assert@^2.0.10": version "2.0.10" resolved "https://registry.yarnpkg.com/@0x/assert/-/assert-2.0.10.tgz#e1cfc7142b5dd7ee6510a676703935cf8ffd432e" @@ -45,7 +51,6 @@ "@0x/assert@^2.1.0": version "2.1.0" resolved "https://registry.npmjs.org/@0x/assert/-/assert-2.1.0.tgz#9a129fd6cd697b4332cdf517048aad14d4af7c16" - integrity sha512-hSCzzNokQJ6Or55XuxBFFy6V9n+DmO2ijHESmQld/hH+wYuEMqVEHVaLf0+0GTt1txwljrBRTpxyhkVujh5bjw== dependencies: "@0x/json-schemas" "^3.0.11" "@0x/typescript-typings" "^4.2.3" @@ -53,10 +58,36 @@ lodash "^4.17.11" valid-url "^1.0.9" +"@0x/assert@^2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@0x/assert/-/assert-2.1.1.tgz#53c0023ab0664cdb3546f076265309caaaf86885" + dependencies: + "@0x/json-schemas" "^3.1.11" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + lodash "^4.17.11" + valid-url "^1.0.9" + +"@0x/asset-buyer@^6.1.9": + version "6.1.9" + resolved "https://registry.yarnpkg.com/@0x/asset-buyer/-/asset-buyer-6.1.9.tgz#675e7d76b48985ab7fa6b98b8bd6f3b953832814" + dependencies: + "@0x/assert" "^2.1.1" + "@0x/connect" "^5.0.14" + "@0x/contract-wrappers" "^9.1.8" + "@0x/json-schemas" "^3.1.11" + "@0x/order-utils" "^8.2.3" + "@0x/subproviders" "^4.1.2" + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + "@0x/web3-wrapper" "^6.0.8" + ethereum-types "^2.1.4" + lodash "^4.17.11" + "@0x/base-contract@^5.1.1": version "5.1.1" resolved "https://registry.npmjs.org/@0x/base-contract/-/base-contract-5.1.1.tgz#5a985f381813cd26ae805d65447fb28f20f594fd" - integrity sha512-+S4EYWi2BNg5QC61xJtCbaCUJf1XtGM6+GWNWh3N059ZFfpUGvKoNRA3H0PnXLItdpDwPlAM/R8Y0PQzef+W6A== dependencies: "@0x/assert" "^2.1.0" "@0x/json-schemas" "^3.0.11" @@ -67,10 +98,22 @@ ethers "~4.0.4" lodash "^4.17.11" +"@0x/base-contract@^5.1.2": + version "5.1.2" + resolved "https://registry.yarnpkg.com/@0x/base-contract/-/base-contract-5.1.2.tgz#4605f373c2a235c358172af312a1ccb2f27a4491" + dependencies: + "@0x/assert" "^2.1.1" + "@0x/json-schemas" "^3.1.11" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + "@0x/web3-wrapper" "^6.0.8" + ethereum-types "^2.1.4" + ethers "~4.0.4" + lodash "^4.17.11" + "@0x/connect@^5.0.12": version "5.0.12" resolved "https://registry.npmjs.org/@0x/connect/-/connect-5.0.12.tgz#72accc6cf49b81b2eaf3125e86f9cc25e470e473" - integrity sha512-mS0phQ4EHymBOi/PdOLRzyfRuWzNiueA9uTjb0yPnFEH/GScLHYODjlpxRYYCYmpoVXmTbu8pMUtaOsaNueesA== dependencies: "@0x/assert" "^2.1.0" "@0x/json-schemas" "^3.0.11" @@ -84,22 +127,45 @@ uuid "^3.3.2" websocket "^1.0.26" +"@0x/connect@^5.0.14": + version "5.0.14" + resolved "https://registry.yarnpkg.com/@0x/connect/-/connect-5.0.14.tgz#a7c8a479b0c71340294f2dd49c4f8cb393805f79" + dependencies: + "@0x/assert" "^2.1.1" + "@0x/json-schemas" "^3.1.11" + "@0x/order-utils" "^8.2.3" + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + lodash "^4.17.11" + query-string "^6.0.0" + sinon "^4.0.0" + uuid "^3.3.2" + websocket "^1.0.26" + "@0x/contract-addresses@^3.0.1": version "3.0.1" resolved "https://registry.npmjs.org/@0x/contract-addresses/-/contract-addresses-3.0.1.tgz#96c2fcfeb79efa1543c3027aa9aef3cb28de54cb" - integrity sha512-CQLiAVYEV+ltrPoapNAPjd8A7Lwe5pdxzIF1MmE1Uj+pyl99T/oxkewhR4dwBtee9vaBq9vJ/KQ+KhCnBuOzCw== + dependencies: + lodash "^4.17.11" + +"@0x/contract-addresses@^3.0.2": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@0x/contract-addresses/-/contract-addresses-3.0.2.tgz#3dab5e762d6a6627667cd947f273a0ccc7d7e9a7" dependencies: lodash "^4.17.11" "@0x/contract-artifacts@^2.0.1": version "2.0.1" resolved "https://registry.npmjs.org/@0x/contract-artifacts/-/contract-artifacts-2.0.1.tgz#055c3f0d961ff923291cbf2ee29d9ad14a9b6a65" - integrity sha512-ogS5Xc1JvlZ/PD7Hi+AzjqmPoPCh22D4+8sWEVVrbpXBT6IRU9ngK2yPikB/Jszq7lxZHe6sutIRGGAIqvzsbQ== + +"@0x/contract-artifacts@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@0x/contract-artifacts/-/contract-artifacts-2.0.2.tgz#2704c9484a83724ba1b6eaccc428365e51f6f961" "@0x/contract-wrappers@^9.1.6": version "9.1.6" resolved "https://registry.npmjs.org/@0x/contract-wrappers/-/contract-wrappers-9.1.6.tgz#4dce156052e01c2cc7106441f28169f78d631e24" - integrity sha512-k50SDfuXn58+aOQgn3Sg0Ydq08mkMPQ3najH7QiJwFyrfO+9csCJRmsE/SbjVe6oAOvKSQ3BqNSKLj6tZocCdw== dependencies: "@0x/abi-gen-wrappers" "^5.0.1" "@0x/assert" "^2.1.0" @@ -121,10 +187,33 @@ lodash "^4.17.11" uuid "^3.3.2" +"@0x/contract-wrappers@^9.1.8": + version "9.1.8" + resolved "https://registry.yarnpkg.com/@0x/contract-wrappers/-/contract-wrappers-9.1.8.tgz#5923d35af3e4b442a57d02f74e02620b2d5b1356" + dependencies: + "@0x/abi-gen-wrappers" "^5.0.3" + "@0x/assert" "^2.1.1" + "@0x/contract-addresses" "^3.0.2" + "@0x/contract-artifacts" "^2.0.2" + "@0x/json-schemas" "^3.1.11" + "@0x/order-utils" "^8.2.3" + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + "@0x/web3-wrapper" "^6.0.8" + ethereum-types "^2.1.4" + ethereumjs-abi "0.6.5" + ethereumjs-blockstream "6.0.0" + ethereumjs-util "^5.1.1" + ethers "~4.0.4" + http-status-codes "^1.3.2" + js-sha3 "^0.7.0" + lodash "^4.17.11" + uuid "^3.3.2" + "@0x/fill-scenarios@^3.0.12": version "3.0.12" resolved "https://registry.npmjs.org/@0x/fill-scenarios/-/fill-scenarios-3.0.12.tgz#a0fb6d2e226e62b3fd4459074fc1d3c09105ae97" - integrity sha512-bJnZ7nEUHQuAg9pr8rypPnEpPfhddHqMFFpyYt8KMN3Kzp8Qmf1SvYgEzWCpwl93UeyR8AmBfy38sqWyuvBKaA== dependencies: "@0x/abi-gen-wrappers" "^5.0.1" "@0x/base-contract" "^5.1.1" @@ -149,17 +238,24 @@ "@0x/json-schemas@^3.0.11": version "3.0.11" resolved "https://registry.npmjs.org/@0x/json-schemas/-/json-schemas-3.0.11.tgz#895e2eeab3a9c5ce3cac796a2bdf1a9733a8b79b" - integrity sha512-mQTNJcRJwGIAJhbFOwPhEnh/8O2bSWwTxr0oMOzwJQt3RCUetvu/YJdY4V657mfQ5svu1ifH3yqOG39gFrKrEQ== dependencies: "@0x/typescript-typings" "^4.2.3" "@types/node" "*" jsonschema "^1.2.0" lodash.values "^4.3.0" +"@0x/json-schemas@^3.1.11": + version "3.1.11" + resolved "https://registry.yarnpkg.com/@0x/json-schemas/-/json-schemas-3.1.11.tgz#57de26f30a9949fff3866ddeeaeab1f710c32f28" + dependencies: + "@0x/typescript-typings" "^4.2.4" + "@types/node" "*" + jsonschema "^1.2.0" + lodash.values "^4.3.0" + "@0x/order-utils@^8.2.1": version "8.2.1" resolved "https://registry.npmjs.org/@0x/order-utils/-/order-utils-8.2.1.tgz#d71d8abd4c587c6f7cbab296ddf0ea94522a415e" - integrity sha512-JsUCtyepWiDH3Syh9/zwNPa1ZGp6jPpS5MLASHgjM3vcYKzMsDKA+M2q0xR7Zb8+G6mET492iqCcNCiOu6n6wA== dependencies: "@0x/abi-gen-wrappers" "^5.0.1" "@0x/assert" "^2.1.0" @@ -179,10 +275,31 @@ ethers "~4.0.4" lodash "^4.17.11" +"@0x/order-utils@^8.2.3": + version "8.2.3" + resolved "https://registry.yarnpkg.com/@0x/order-utils/-/order-utils-8.2.3.tgz#50389369e1f0d0d5b6875a99e7499ce463941aaa" + dependencies: + "@0x/abi-gen-wrappers" "^5.0.3" + "@0x/assert" "^2.1.1" + "@0x/base-contract" "^5.1.2" + "@0x/contract-addresses" "^3.0.2" + "@0x/contract-artifacts" "^2.0.2" + "@0x/json-schemas" "^3.1.11" + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + "@0x/web3-wrapper" "^6.0.8" + "@types/node" "*" + bn.js "^4.11.8" + ethereum-types "^2.1.4" + ethereumjs-abi "0.6.5" + ethereumjs-util "^5.1.1" + ethers "~4.0.4" + lodash "^4.17.11" + "@0x/order-watcher@^4.0.13": version "4.0.13" resolved "https://registry.npmjs.org/@0x/order-watcher/-/order-watcher-4.0.13.tgz#da73c71b17431f24057caa384e75e5870c951168" - integrity sha512-mdgAdDN1pP8Bd4xMYXv2S8xM0FjtxwLGzJgVF6aCfoozPGApQScDFz/8J7rbNDxHFOjwqcJMqVCClWacV4lzWQ== dependencies: "@0x/abi-gen-wrappers" "^5.0.1" "@0x/assert" "^2.1.0" @@ -208,7 +325,6 @@ "@0x/subproviders@^4.1.1": version "4.1.1" resolved "https://registry.npmjs.org/@0x/subproviders/-/subproviders-4.1.1.tgz#de861396aa3adc34a821b0ab28c0fd8bdf3961e2" - integrity sha512-VfZK1y67GlVI4+KPq23iKnrsDtRN+YfeK+ytgM7LamytmbhkcVRL0m55/B8uPurOp+Y23498/ZQIBahf5lGajA== dependencies: "@0x/assert" "^2.1.0" "@0x/types" "^2.4.0" @@ -235,6 +351,35 @@ optionalDependencies: "@ledgerhq/hw-transport-node-hid" "^4.3.0" +"@0x/subproviders@^4.1.2": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@0x/subproviders/-/subproviders-4.1.2.tgz#ab7bb0f482b11ccb4615fb5dd8ca85199cd0ae23" + dependencies: + "@0x/assert" "^2.1.1" + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + "@0x/web3-wrapper" "^6.0.8" + "@ledgerhq/hw-app-eth" "^4.3.0" + "@ledgerhq/hw-transport-u2f" "4.24.0" + "@types/eth-lightwallet" "^3.0.0" + "@types/hdkey" "^0.7.0" + "@types/web3-provider-engine" "^14.0.0" + bip39 "^2.5.0" + bn.js "^4.11.8" + eth-lightwallet "^3.0.1" + ethereum-types "^2.1.4" + ethereumjs-tx "^1.3.5" + ethereumjs-util "^5.1.1" + ganache-core "^2.5.3" + hdkey "^0.7.1" + json-rpc-error "2.0.0" + lodash "^4.17.11" + semaphore-async-await "^1.5.1" + web3-provider-engine "14.0.6" + optionalDependencies: + "@ledgerhq/hw-transport-node-hid" "^4.3.0" + "@0x/tslint-config@^3.0.1": version "3.0.1" resolved "https://registry.yarnpkg.com/@0x/tslint-config/-/tslint-config-3.0.1.tgz#396038f617371ff6bc2dc36c2b5162b13835576f" @@ -256,12 +401,19 @@ "@0x/types@^2.4.0": version "2.4.0" resolved "https://registry.npmjs.org/@0x/types/-/types-2.4.0.tgz#4924ab3b1e8cb7b99bf01713265ce54bbcc16790" - integrity sha512-F+yA9EAeUHH9JltaWH5ffi0CTQ0uVEMvgYduKLpWDcWxsQm6yJhi0waOZu2i0ISUvaWbKpmt5blXXO6KxeDN2w== dependencies: "@types/node" "*" bignumber.js "~8.0.2" ethereum-types "^2.1.3" +"@0x/types@^2.4.1": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@0x/types/-/types-2.4.1.tgz#41a42185dcd093b19ef0d4595a432b285aae4746" + dependencies: + "@types/node" "*" + bignumber.js "~8.0.2" + ethereum-types "^2.1.4" + "@0x/typescript-typings@^4.2.2": version "4.2.2" resolved "https://registry.yarnpkg.com/@0x/typescript-typings/-/typescript-typings-4.2.2.tgz#6c3e51e479c1ecf9e9b3eeae95a51a91be11570a" @@ -275,7 +427,6 @@ "@0x/typescript-typings@^4.2.3": version "4.2.3" resolved "https://registry.npmjs.org/@0x/typescript-typings/-/typescript-typings-4.2.3.tgz#eabf54053307ac505ef0013c189b9747425825d0" - integrity sha512-tXby3eQjvZBVYNl4St1p3gNSjs1vMx7aqXeoixIJtaSijiQc5aogDYdOy0bus/xaz1yOyzvmRnYHfWKIOYkTRA== dependencies: "@types/bn.js" "^4.11.0" "@types/react" "*" @@ -283,6 +434,16 @@ ethereum-types "^2.1.3" popper.js "1.14.3" +"@0x/typescript-typings@^4.2.4": + version "4.2.4" + resolved "https://registry.yarnpkg.com/@0x/typescript-typings/-/typescript-typings-4.2.4.tgz#0858639ddfdf7e9e1a3f9fd8f7d8f2e8ebfdce85" + dependencies: + "@types/bn.js" "^4.11.0" + "@types/react" "*" + bignumber.js "~8.0.2" + ethereum-types "^2.1.4" + popper.js "1.14.3" + "@0x/utils@^4.3.3": version "4.3.3" resolved "https://registry.yarnpkg.com/@0x/utils/-/utils-4.3.3.tgz#56ab7b42a2a938057bf191e83054aa75a25a18f5" @@ -304,7 +465,6 @@ "@0x/utils@^4.4.0": version "4.4.0" resolved "https://registry.npmjs.org/@0x/utils/-/utils-4.4.0.tgz#2bbd1eed6abbcfcbe79ca3da411b794e055007be" - integrity sha512-WnAxmOFPwJHVycja/r0FzXwKazI9y8olVwRuEHN51xvDKA/WYVQ6VpegN9eIF3xo7ytLkeDY0ihU9dEAN9tJvg== dependencies: "@0x/types" "^2.4.0" "@0x/typescript-typings" "^4.2.3" @@ -320,6 +480,24 @@ js-sha3 "^0.7.0" lodash "^4.17.11" +"@0x/utils@^4.4.1": + version "4.4.1" + resolved "https://registry.yarnpkg.com/@0x/utils/-/utils-4.4.1.tgz#bcdf992ee59ca7b3e7042795b142fa3a22e1bd56" + dependencies: + "@0x/types" "^2.4.1" + "@0x/typescript-typings" "^4.2.4" + "@types/node" "*" + abortcontroller-polyfill "^1.1.9" + bignumber.js "~8.0.2" + chalk "^2.3.0" + detect-node "2.0.3" + ethereum-types "^2.1.4" + ethereumjs-util "^5.1.1" + ethers "~4.0.4" + isomorphic-fetch "2.2.1" + js-sha3 "^0.7.0" + lodash "^4.17.11" + "@0x/web3-wrapper@^6.0.6": version "6.0.6" resolved "https://registry.yarnpkg.com/@0x/web3-wrapper/-/web3-wrapper-6.0.6.tgz#bf2b07ba9f309e4c7a25dd1b25b2e9de67d0afc9" @@ -336,7 +514,6 @@ "@0x/web3-wrapper@^6.0.7": version "6.0.7" resolved "https://registry.npmjs.org/@0x/web3-wrapper/-/web3-wrapper-6.0.7.tgz#dc8c11e7e68f58be059656349c0f3cc203ed7188" - integrity sha512-yMt6yfXUDr3XRyxWeiDv84KiMDQ1hCyQ2MdlSxwiITAeu37HpD+44iCHdQge/p/PVASd2lsc0TexeFsOIQ+0Og== dependencies: "@0x/assert" "^2.1.0" "@0x/json-schemas" "^3.0.11" @@ -347,6 +524,19 @@ ethers "~4.0.4" lodash "^4.17.11" +"@0x/web3-wrapper@^6.0.8": + version "6.0.8" + resolved "https://registry.yarnpkg.com/@0x/web3-wrapper/-/web3-wrapper-6.0.8.tgz#04515c902aeb8253af93d0babfcf19337129f4db" + dependencies: + "@0x/assert" "^2.1.1" + "@0x/json-schemas" "^3.1.11" + "@0x/typescript-typings" "^4.2.4" + "@0x/utils" "^4.4.1" + ethereum-types "^2.1.4" + ethereumjs-util "^5.1.1" + ethers "~4.0.4" + lodash "^4.17.11" + "@babel/code-frame@7.0.0", "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.0.0-beta.35": version "7.0.0" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.0.0.tgz#06e2ab19bdb535385559aabb5ba59729482800f8" @@ -5333,7 +5523,13 @@ ethereum-types@^2.1.2: ethereum-types@^2.1.3: version "2.1.3" resolved "https://registry.npmjs.org/ethereum-types/-/ethereum-types-2.1.3.tgz#766a483f1beedd195e9e1665ba38979fc3b81a47" - integrity sha512-m+PLWGl9eyOEApIoubLQ0e/OFUEm1KUUmnJjAlV3Jcs9LgJD+jEfJOtTIdnRsKgNzRojwfErriqKjlvqjjkODw== + dependencies: + "@types/node" "*" + bignumber.js "~8.0.2" + +ethereum-types@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/ethereum-types/-/ethereum-types-2.1.4.tgz#5e3f5fd562f354d6334500af7a10bea10da0c7c4" dependencies: "@types/node" "*" bignumber.js "~8.0.2"