Merge pull request #2604 from 0xProject/feat/order-utils/transformer-encoders

order-utils: ERC20 Transformer utils
This commit is contained in:
Lawrence Forman
2020-06-17 09:32:43 -04:00
committed by GitHub
14 changed files with 51 additions and 25 deletions

View File

@@ -1,4 +0,0 @@
/*
* The pseudo-token address for ETH used by `tranformERC20()`.
*/
export const ETH_TOKEN_ADDRESS = '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee';

View File

@@ -41,6 +41,3 @@ export {
TupleDataItem,
StateMutability,
} from 'ethereum-types';
export * from './constants';
export * from './transformer_data_encoders';

View File

@@ -8,9 +8,9 @@ import {
randomAddress,
verifyEventsFromLogs,
} from '@0x/contracts-test-utils';
import { ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { AbiEncoder, hexUtils, OwnableRevertErrors, ZeroExRevertErrors } from '@0x/utils';
import { ETH_TOKEN_ADDRESS } from '../../src/constants';
import { artifacts } from '../artifacts';
import { abis } from '../utils/abis';
import { fullMigrateAsync } from '../utils/migration';

View File

@@ -1,9 +1,8 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodeAffiliateFeeTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { BigNumber, hexUtils } from '@0x/utils';
import * as _ from 'lodash';
import { ETH_TOKEN_ADDRESS } from '../../src/constants';
import { encodeAffiliateFeeTransformerData } from '../../src/transformer_data_encoders';
import { artifacts } from '../artifacts';
import {
AffiliateFeeTransformerContract,

View File

@@ -7,16 +7,16 @@ import {
Numberish,
randomAddress,
} from '@0x/contracts-test-utils';
import { assetDataUtils } from '@0x/order-utils';
import {
assetDataUtils,
encodeFillQuoteTransformerData,
FillQuoteTransformerData,
FillQuoteTransformerSide,
} from '@0x/order-utils';
import { Order } from '@0x/types';
import { BigNumber, hexUtils, ZeroExRevertErrors } from '@0x/utils';
import * as _ from 'lodash';
import {
encodeFillQuoteTransformerData,
FillQuoteTransformerData,
FillQuoteTransformerSide,
} from '../../src/transformer_data_encoders';
import { artifacts } from '../artifacts';
import {
FillQuoteTransformerContract,

View File

@@ -1,9 +1,8 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodePayTakerTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { BigNumber, hexUtils } from '@0x/utils';
import * as _ from 'lodash';
import { ETH_TOKEN_ADDRESS } from '../../src/constants';
import { encodePayTakerTransformerData } from '../../src/transformer_data_encoders';
import { artifacts } from '../artifacts';
import { PayTakerTransformerContract, TestMintableERC20TokenContract, TestTransformerHostContract } from '../wrappers';

View File

@@ -1,9 +1,8 @@
import { blockchainTests, constants, expect, getRandomInteger, randomAddress } from '@0x/contracts-test-utils';
import { encodeWethTransformerData, ETH_TOKEN_ADDRESS } from '@0x/order-utils';
import { BigNumber, ZeroExRevertErrors } from '@0x/utils';
import * as _ from 'lodash';
import { ETH_TOKEN_ADDRESS } from '../../src/constants';
import { encodeWethTransformerData } from '../../src/transformer_data_encoders';
import { artifacts } from '../artifacts';
import { TestWethContract, TestWethTransformerHostContract, WethTransformerContract } from '../wrappers';

View File

@@ -49,7 +49,6 @@
"@0x/assert": "^3.0.7",
"@0x/contract-addresses": "^4.9.0",
"@0x/contract-wrappers": "^13.6.3",
"@0x/contracts-zero-ex": "^0.1.0",
"@0x/json-schemas": "^5.0.7",
"@0x/order-utils": "^10.2.4",
"@0x/orderbook": "^2.2.5",

View File

@@ -1,13 +1,14 @@
import { ContractAddresses } from '@0x/contract-addresses';
import { ITransformERC20Contract } from '@0x/contract-wrappers';
import {
assetDataUtils,
encodeFillQuoteTransformerData,
encodePayTakerTransformerData,
encodeWethTransformerData,
ERC20AssetData,
ETH_TOKEN_ADDRESS,
FillQuoteTransformerSide,
} from '@0x/contracts-zero-ex';
import { assetDataUtils, ERC20AssetData } from '@0x/order-utils';
} from '@0x/order-utils';
import { AssetProxyId } from '@0x/types';
import { BigNumber, providerUtils } from '@0x/utils';
import { SupportedProvider, ZeroExProvider } from '@0x/web3-wrapper';

View File

@@ -1,13 +1,13 @@
import { getContractAddressesForChainOrThrow } from '@0x/contract-addresses';
import { constants as contractConstants, getRandomInteger, Numberish, randomAddress } from '@0x/contracts-test-utils';
import {
assetDataUtils,
decodeFillQuoteTransformerData,
decodePayTakerTransformerData,
decodeWethTransformerData,
ETH_TOKEN_ADDRESS,
FillQuoteTransformerSide,
} from '@0x/contracts-zero-ex';
import { assetDataUtils } from '@0x/order-utils';
} from '@0x/order-utils';
import { Order } from '@0x/types';
import { AbiEncoder, BigNumber, hexUtils } from '@0x/utils';
import * as chai from 'chai';

View File

@@ -1,4 +1,13 @@
[
{
"version": "10.3.0",
"changes": [
{
"note": "Add ERC20 Transformer utils and export useful constants.",
"pr": 2604
}
]
},
{
"timestamp": 1583220306,
"version": "10.2.4",

View File

@@ -157,4 +157,8 @@ export const constants = {
STATIC_CALL_METHOD_ABI,
IS_VALID_WALLET_SIGNATURE_MAGIC_VALUE: '0xb0671381',
IS_VALID_VALIDATOR_SIGNATURE_MAGIC_VALUE: '0x42b38674',
/*
* The pseudo-token address for ETH used by the Exchange Proxy's `tranformERC20()`.
*/
ETH_TOKEN_ADDRESS: '0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee',
};

View File

@@ -60,3 +60,26 @@ export {
OrdersAndRemainingTakerFillAmount,
OrdersAndRemainingMakerFillAmount,
} from './types';
export {
FillQuoteTransformerSide,
FillQuoteTransformerData,
encodeFillQuoteTransformerData,
decodeFillQuoteTransformerData,
WethTransformerData,
encodeWethTransformerData,
decodeWethTransformerData,
PayTakerTransformerData,
encodePayTakerTransformerData,
decodePayTakerTransformerData,
AffiliateFeeTransformerData,
encodeAffiliateFeeTransformerData,
decodeAffiliateFeeTransformerData,
} from './transformer_data_encoders';
import { constants } from './constants';
export const NULL_ADDRESS = constants.NULL_ADDRESS;
export const NULL_BYTES = constants.NULL_BYTES;
export const ZERO_AMOUNT = constants.ZERO_AMOUNT;
export const NULL_ERC20_ASSET_DATA = constants.NULL_ERC20_ASSET_DATA;
export const ETH_TOKEN_ADDRESS = constants.ETH_TOKEN_ADDRESS;