From 1e4fdcf615502478cbec8711bf6710e093c0c279 Mon Sep 17 00:00:00 2001 From: Leonid Logvinov Date: Mon, 18 Dec 2017 15:35:23 +0100 Subject: Rename SubscriptionOpts to BlockRange --- packages/0x.js/CHANGELOG.md | 9 +++++---- packages/0x.js/src/contract_wrappers/contract_wrapper.ts | 6 +++--- packages/0x.js/src/contract_wrappers/exchange_wrapper.ts | 10 +++++----- packages/0x.js/src/contract_wrappers/token_wrapper.ts | 10 +++++----- packages/0x.js/src/index.ts | 2 +- packages/0x.js/src/types.ts | 2 +- packages/0x.js/src/utils/filter_utils.ts | 8 ++++---- packages/0x.js/test/exchange_wrapper_test.ts | 10 +++++----- packages/0x.js/test/token_wrapper_test.ts | 10 +++++----- 9 files changed, 34 insertions(+), 33 deletions(-) (limited to 'packages/0x.js') diff --git a/packages/0x.js/CHANGELOG.md b/packages/0x.js/CHANGELOG.md index 9874b0ca8..962d312d3 100644 --- a/packages/0x.js/CHANGELOG.md +++ b/packages/0x.js/CHANGELOG.md @@ -1,10 +1,11 @@ # CHANGELOG -v0.28.0 - _TBD_ +v0.x.x - _TBD, 2017_ ------------------------ -* Add `etherTokenAddress` arg to `depositAsync` and `withdrawAsync` methods on `zeroEx.etherToken` (#267) -* Removed accidentally included `unsubscribeAll` method from `zeroEx.proxy`, `zeroEx.etherToken` and `zeroEx.tokenRegistry` (#267) -* Removed `etherTokenContractAddress` from `ZeroEx` constructor arg `ZeroExConfig` (#267) + * Add `etherTokenAddress` arg to `depositAsync` and `withdrawAsync` methods on `zeroEx.etherToken` (#267) + * Removed accidentally included `unsubscribeAll` method from `zeroEx.proxy`, `zeroEx.etherToken` and `zeroEx.tokenRegistry` (#267) + * Removed `etherTokenContractAddress` from `ZeroEx` constructor arg `ZeroExConfig` (#267) + * Rename `SubscriptionOpts` to `BlockRange` (#272) v0.27.1 - _November 28, 2017_ ------------------------ diff --git a/packages/0x.js/src/contract_wrappers/contract_wrapper.ts b/packages/0x.js/src/contract_wrappers/contract_wrapper.ts index 46916ebf4..3f07e4e47 100644 --- a/packages/0x.js/src/contract_wrappers/contract_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/contract_wrapper.ts @@ -7,6 +7,7 @@ import * as Web3 from 'web3'; import { Artifact, BlockParamLiteral, + BlockRange, ContractEventArgs, ContractEvents, EventCallback, @@ -14,7 +15,6 @@ import { InternalZeroExError, LogWithDecodedArgs, RawLog, - SubscriptionOpts, ZeroExError, } from '../types'; import {AbiDecoder} from '../utils/abi_decoder'; @@ -83,9 +83,9 @@ export class ContractWrapper { return filterToken; } protected async _getLogsAsync( - address: string, eventName: ContractEvents, subscriptionOpts: SubscriptionOpts, + address: string, eventName: ContractEvents, blockRange: BlockRange, indexFilterValues: IndexedFilterValues, abi: Web3.ContractAbi): Promise>> { - const filter = filterUtils.getFilter(address, eventName, indexFilterValues, abi, subscriptionOpts); + const filter = filterUtils.getFilter(address, eventName, indexFilterValues, abi, blockRange); const logs = await this._web3Wrapper.getLogsAsync(filter); const logsWithDecodedArguments = _.map(logs, this._tryToDecodeLogOrNoop.bind(this)); return logsWithDecodedArguments; diff --git a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts index 3ca5695c4..7739defc0 100644 --- a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts @@ -25,7 +25,7 @@ import { OrderTransactionOpts, OrderValues, SignedOrder, - SubscriptionOpts, + BlockRange, ValidateOrderFillableOpts, } from '../types'; import {AbiDecoder} from '../utils/abi_decoder'; @@ -616,20 +616,20 @@ export class ExchangeWrapper extends ContractWrapper { /** * Gets historical logs without creating a subscription * @param eventName The exchange contract event you would like to subscribe to. - * @param subscriptionOpts Subscriptions options that let you configure the subscription. + * @param blockRange Subscriptions options that let you configure the subscription. * @param indexFilterValues An object where the keys are indexed args returned by the event and * the value is the value you are interested in. E.g `{_from: aUserAddressHex}` * @return Array of logs that match the parameters */ public async getLogsAsync( - eventName: ExchangeEvents, subscriptionOpts: SubscriptionOpts, indexFilterValues: IndexedFilterValues, + eventName: ExchangeEvents, blockRange: BlockRange, indexFilterValues: IndexedFilterValues, ): Promise>> { assert.doesBelongToStringEnum('eventName', eventName, ExchangeEvents); - assert.doesConformToSchema('subscriptionOpts', subscriptionOpts, schemas.subscriptionOptsSchema); + assert.doesConformToSchema('blockRange', blockRange, schemas.blockRangeSchema); assert.doesConformToSchema('indexFilterValues', indexFilterValues, schemas.indexFilterValuesSchema); const exchangeContractAddress = this.getContractAddress(); const logs = await this._getLogsAsync( - exchangeContractAddress, eventName, subscriptionOpts, indexFilterValues, artifacts.ExchangeArtifact.abi, + exchangeContractAddress, eventName, blockRange, indexFilterValues, artifacts.ExchangeArtifact.abi, ); return logs; } diff --git a/packages/0x.js/src/contract_wrappers/token_wrapper.ts b/packages/0x.js/src/contract_wrappers/token_wrapper.ts index eccb74871..419b33285 100644 --- a/packages/0x.js/src/contract_wrappers/token_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/token_wrapper.ts @@ -5,11 +5,11 @@ import * as _ from 'lodash'; import {artifacts} from '../artifacts'; import { + BlockRange, EventCallback, IndexedFilterValues, LogWithDecodedArgs, MethodOpts, - SubscriptionOpts, TokenContractEventArgs, TokenEvents, TransactionOpts, @@ -291,20 +291,20 @@ export class TokenWrapper extends ContractWrapper { * Gets historical logs without creating a subscription * @param tokenAddress An address of the token that emmited the logs. * @param eventName The token contract event you would like to subscribe to. - * @param subscriptionOpts Subscriptions options that let you configure the subscription. + * @param blockRange Subscriptions options that let you configure the subscription. * @param indexFilterValues An object where the keys are indexed args returned by the event and * the value is the value you are interested in. E.g `{_from: aUserAddressHex}` * @return Array of logs that match the parameters */ public async getLogsAsync( - tokenAddress: string, eventName: TokenEvents, subscriptionOpts: SubscriptionOpts, + tokenAddress: string, eventName: TokenEvents, blockRange: BlockRange, indexFilterValues: IndexedFilterValues): Promise>> { assert.isETHAddressHex('tokenAddress', tokenAddress); assert.doesBelongToStringEnum('eventName', eventName, TokenEvents); - assert.doesConformToSchema('subscriptionOpts', subscriptionOpts, schemas.subscriptionOptsSchema); + assert.doesConformToSchema('blockRange', blockRange, schemas.blockRangeSchema); assert.doesConformToSchema('indexFilterValues', indexFilterValues, schemas.indexFilterValuesSchema); const logs = await this._getLogsAsync( - tokenAddress, eventName, subscriptionOpts, indexFilterValues, artifacts.TokenArtifact.abi, + tokenAddress, eventName, blockRange, indexFilterValues, artifacts.TokenArtifact.abi, ); return logs; } diff --git a/packages/0x.js/src/index.ts b/packages/0x.js/src/index.ts index 2f5296a9f..b75ca4fa3 100644 --- a/packages/0x.js/src/index.ts +++ b/packages/0x.js/src/index.ts @@ -12,7 +12,7 @@ export { ExchangeEvents, TokenEvents, IndexedFilterValues, - SubscriptionOpts, + BlockRange, BlockParam, OrderCancellationRequest, OrderFillRequest, diff --git a/packages/0x.js/src/types.ts b/packages/0x.js/src/types.ts index fb3cfa6df..844ac9ed9 100644 --- a/packages/0x.js/src/types.ts +++ b/packages/0x.js/src/types.ts @@ -217,7 +217,7 @@ export enum BlockParamLiteral { export type BlockParam = BlockParamLiteral|number; -export interface SubscriptionOpts { +export interface BlockRange { fromBlock: BlockParam; toBlock: BlockParam; } diff --git a/packages/0x.js/src/utils/filter_utils.ts b/packages/0x.js/src/utils/filter_utils.ts index 57c3ee71c..65161c33e 100644 --- a/packages/0x.js/src/utils/filter_utils.ts +++ b/packages/0x.js/src/utils/filter_utils.ts @@ -4,7 +4,7 @@ import * as _ from 'lodash'; import * as uuid from 'uuid/v4'; import * as Web3 from 'web3'; -import {ContractEvents, IndexedFilterValues, SubscriptionOpts} from '../types'; +import {BlockRange, ContractEvents, IndexedFilterValues} from '../types'; const TOPIC_LENGTH = 32; @@ -14,7 +14,7 @@ export const filterUtils = { }, getFilter(address: string, eventName: ContractEvents, indexFilterValues: IndexedFilterValues, abi: Web3.ContractAbi, - subscriptionOpts?: SubscriptionOpts): Web3.FilterObject { + blockRange?: BlockRange): Web3.FilterObject { const eventAbi = _.find(abi, {name: eventName}) as Web3.EventAbi; const eventSignature = filterUtils.getEventSignatureFromAbiByName(eventAbi, eventName); const topicForEventSignature = ethUtil.addHexPrefix(jsSHA3.keccak256(eventSignature)); @@ -24,9 +24,9 @@ export const filterUtils = { address, topics, }; - if (!_.isUndefined(subscriptionOpts)) { + if (!_.isUndefined(blockRange)) { filter = { - ...subscriptionOpts, + ...blockRange, ...filter, }; } diff --git a/packages/0x.js/test/exchange_wrapper_test.ts b/packages/0x.js/test/exchange_wrapper_test.ts index 51b511dbf..6605e7e52 100644 --- a/packages/0x.js/test/exchange_wrapper_test.ts +++ b/packages/0x.js/test/exchange_wrapper_test.ts @@ -13,7 +13,7 @@ import { OrderCancellationRequest, OrderFillRequest, SignedOrder, - SubscriptionOpts, + BlockRange, Token, ZeroEx, } from '../src'; @@ -760,7 +760,7 @@ describe('ExchangeWrapper', () => { let takerAddress: string; const fillableAmount = new BigNumber(5); const shouldThrowOnInsufficientBalanceOrAllowance = true; - const subscriptionOpts: SubscriptionOpts = { + const blockRange: BlockRange = { fromBlock: 0, toBlock: BlockParamLiteral.Latest, }; @@ -781,7 +781,7 @@ describe('ExchangeWrapper', () => { await zeroEx.awaitTransactionMinedAsync(txHash); const eventName = ExchangeEvents.LogFill; const indexFilterValues = {}; - const logs = await zeroEx.exchange.getLogsAsync(eventName, subscriptionOpts, indexFilterValues); + const logs = await zeroEx.exchange.getLogsAsync(eventName, blockRange, indexFilterValues); expect(logs).to.have.length(1); expect(logs[0].event).to.be.equal(eventName); }); @@ -795,7 +795,7 @@ describe('ExchangeWrapper', () => { await zeroEx.awaitTransactionMinedAsync(txHash); const differentEventName = ExchangeEvents.LogCancel; const indexFilterValues = {}; - const logs = await zeroEx.exchange.getLogsAsync(differentEventName, subscriptionOpts, indexFilterValues); + const logs = await zeroEx.exchange.getLogsAsync(differentEventName, blockRange, indexFilterValues); expect(logs).to.have.length(0); }); it('should only get the logs with the correct indexed fields', async () => { @@ -821,7 +821,7 @@ describe('ExchangeWrapper', () => { maker: differentMakerAddress, }; const logs = await zeroEx.exchange.getLogsAsync( - eventName, subscriptionOpts, indexFilterValues, + eventName, blockRange, indexFilterValues, ); expect(logs).to.have.length(1); const args = logs[0].args; diff --git a/packages/0x.js/test/token_wrapper_test.ts b/packages/0x.js/test/token_wrapper_test.ts index 70637dbfe..5111a05d2 100644 --- a/packages/0x.js/test/token_wrapper_test.ts +++ b/packages/0x.js/test/token_wrapper_test.ts @@ -8,7 +8,7 @@ import * as Web3 from 'web3'; import { ApprovalContractEventArgs, DecodedLogEvent, - SubscriptionOpts, + BlockRange, Token, TokenEvents, TransferContractEventArgs, @@ -433,7 +433,7 @@ describe('TokenWrapper', () => { describe('#getLogsAsync', () => { let tokenAddress: string; let tokenTransferProxyAddress: string; - const subscriptionOpts: SubscriptionOpts = { + const blockRange: BlockRange = { fromBlock: 0, toBlock: BlockParamLiteral.Latest, }; @@ -449,7 +449,7 @@ describe('TokenWrapper', () => { const eventName = TokenEvents.Approval; const indexFilterValues = {}; const logs = await zeroEx.token.getLogsAsync( - tokenAddress, eventName, subscriptionOpts, indexFilterValues, + tokenAddress, eventName, blockRange, indexFilterValues, ); expect(logs).to.have.length(1); const args = logs[0].args; @@ -464,7 +464,7 @@ describe('TokenWrapper', () => { const differentEventName = TokenEvents.Transfer; const indexFilterValues = {}; const logs = await zeroEx.token.getLogsAsync( - tokenAddress, differentEventName, subscriptionOpts, indexFilterValues, + tokenAddress, differentEventName, blockRange, indexFilterValues, ); expect(logs).to.have.length(0); }); @@ -478,7 +478,7 @@ describe('TokenWrapper', () => { _owner: coinbase, }; const logs = await zeroEx.token.getLogsAsync( - tokenAddress, eventName, subscriptionOpts, indexFilterValues, + tokenAddress, eventName, blockRange, indexFilterValues, ); expect(logs).to.have.length(1); const args = logs[0].args; -- cgit v1.2.3 From 436d78eb93792e352049c790b10fbeddde199cab Mon Sep 17 00:00:00 2001 From: Leonid Logvinov Date: Mon, 18 Dec 2017 17:06:00 +0100 Subject: Fix linter issues --- packages/0x.js/src/contract_wrappers/exchange_wrapper.ts | 4 ++-- packages/0x.js/test/exchange_wrapper_test.ts | 2 +- packages/0x.js/test/token_wrapper_test.ts | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) (limited to 'packages/0x.js') diff --git a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts index 7739defc0..274f217c6 100644 --- a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts @@ -7,6 +7,7 @@ import * as Web3 from 'web3'; import {artifacts} from '../artifacts'; import { BlockParamLiteral, + BlockRange, DecodedLogArgs, ECSignature, EventCallback, @@ -25,7 +26,6 @@ import { OrderTransactionOpts, OrderValues, SignedOrder, - BlockRange, ValidateOrderFillableOpts, } from '../types'; import {AbiDecoder} from '../utils/abi_decoder'; @@ -616,7 +616,7 @@ export class ExchangeWrapper extends ContractWrapper { /** * Gets historical logs without creating a subscription * @param eventName The exchange contract event you would like to subscribe to. - * @param blockRange Subscriptions options that let you configure the subscription. + * @param blockRange Subscriptions options that let you configure the subscription. * @param indexFilterValues An object where the keys are indexed args returned by the event and * the value is the value you are interested in. E.g `{_from: aUserAddressHex}` * @return Array of logs that match the parameters diff --git a/packages/0x.js/test/exchange_wrapper_test.ts b/packages/0x.js/test/exchange_wrapper_test.ts index 6605e7e52..9c55069da 100644 --- a/packages/0x.js/test/exchange_wrapper_test.ts +++ b/packages/0x.js/test/exchange_wrapper_test.ts @@ -5,6 +5,7 @@ import 'mocha'; import * as Web3 from 'web3'; import { + BlockRange, DecodedLogEvent, ExchangeContractErrs, ExchangeEvents, @@ -13,7 +14,6 @@ import { OrderCancellationRequest, OrderFillRequest, SignedOrder, - BlockRange, Token, ZeroEx, } from '../src'; diff --git a/packages/0x.js/test/token_wrapper_test.ts b/packages/0x.js/test/token_wrapper_test.ts index 5111a05d2..48742b663 100644 --- a/packages/0x.js/test/token_wrapper_test.ts +++ b/packages/0x.js/test/token_wrapper_test.ts @@ -7,8 +7,8 @@ import * as Web3 from 'web3'; import { ApprovalContractEventArgs, - DecodedLogEvent, BlockRange, + DecodedLogEvent, Token, TokenEvents, TransferContractEventArgs, -- cgit v1.2.3 From 156dae1d33bd0a19c764262fbf0c9d6743425fc6 Mon Sep 17 00:00:00 2001 From: Leonid Logvinov Date: Tue, 19 Dec 2017 12:03:52 +0100 Subject: Fix comments --- packages/0x.js/src/contract_wrappers/exchange_wrapper.ts | 2 +- packages/0x.js/src/contract_wrappers/token_wrapper.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) (limited to 'packages/0x.js') diff --git a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts index 274f217c6..df793aa06 100644 --- a/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/exchange_wrapper.ts @@ -616,7 +616,7 @@ export class ExchangeWrapper extends ContractWrapper { /** * Gets historical logs without creating a subscription * @param eventName The exchange contract event you would like to subscribe to. - * @param blockRange Subscriptions options that let you configure the subscription. + * @param blockRange Block range to get logs from. * @param indexFilterValues An object where the keys are indexed args returned by the event and * the value is the value you are interested in. E.g `{_from: aUserAddressHex}` * @return Array of logs that match the parameters diff --git a/packages/0x.js/src/contract_wrappers/token_wrapper.ts b/packages/0x.js/src/contract_wrappers/token_wrapper.ts index 419b33285..a9eac10e0 100644 --- a/packages/0x.js/src/contract_wrappers/token_wrapper.ts +++ b/packages/0x.js/src/contract_wrappers/token_wrapper.ts @@ -291,7 +291,7 @@ export class TokenWrapper extends ContractWrapper { * Gets historical logs without creating a subscription * @param tokenAddress An address of the token that emmited the logs. * @param eventName The token contract event you would like to subscribe to. - * @param blockRange Subscriptions options that let you configure the subscription. + * @param blockRange Block range to get logs from. * @param indexFilterValues An object where the keys are indexed args returned by the event and * the value is the value you are interested in. E.g `{_from: aUserAddressHex}` * @return Array of logs that match the parameters -- cgit v1.2.3