update abi-gen with new method interfaces (#2325)
* update abi-gen with new method interfaces * wip: get all packages to build * wip: get all packages to build * Fix two contract wrapper calls * Export necessary types part of the contract wrapper public interfaces * Revive and fix wrapper_unit_tests * Remove duplicate type * Fix lib_exchange_rich_error_decoder tests * Fix remaining test failures in contracts-* packages * Prettier fixes * remove transactionHelper * lint and update changelogs * Fix prettier * Revert changes to reference docs * Add back changelog already published and add revert changelog entry * Add missing CHANGELOG entries * Add missing comma * Update mesh-rpc-client dep * Update Mesh RPC logic in @0x/orderbook to v6.0.1-beta * Align package versions
This commit is contained in:
@@ -1,10 +1,4 @@
|
||||
import {
|
||||
constants,
|
||||
filterLogsToArguments,
|
||||
MutatorContractFunction,
|
||||
TransactionHelper,
|
||||
txDefaults as testTxDefaults,
|
||||
} from '@0x/contracts-test-utils';
|
||||
import { constants, filterLogsToArguments, txDefaults as testTxDefaults } from '@0x/contracts-test-utils';
|
||||
import { orderHashUtils } from '@0x/order-utils';
|
||||
import { FillResults, Order, OrderInfo, SignatureType } from '@0x/types';
|
||||
import { BigNumber } from '@0x/utils';
|
||||
@@ -41,7 +35,6 @@ export const DEFAULT_BAD_SIGNATURE = createBadSignature();
|
||||
export class IsolatedExchangeWrapper {
|
||||
public static readonly CHAIN_ID = 1337;
|
||||
public readonly instance: IsolatedExchangeContract;
|
||||
public readonly txHelper: TransactionHelper;
|
||||
public lastTxEvents: IsolatedExchangeEvents = createEmptyEvents();
|
||||
public lastTxBalanceChanges: AssetBalances = {};
|
||||
|
||||
@@ -71,19 +64,18 @@ export class IsolatedExchangeWrapper {
|
||||
|
||||
public constructor(web3Wrapper: Web3Wrapper, instance: IsolatedExchangeContract) {
|
||||
this.instance = instance;
|
||||
this.txHelper = new TransactionHelper(web3Wrapper, artifacts);
|
||||
}
|
||||
|
||||
public async getTakerAssetFilledAmountAsync(order: Order): Promise<BigNumber> {
|
||||
return this.instance.filled.callAsync(this.getOrderHash(order));
|
||||
return this.instance.filled(this.getOrderHash(order)).callAsync();
|
||||
}
|
||||
|
||||
public async cancelOrderAsync(order: Order, txOpts?: TxData): Promise<void> {
|
||||
await this.instance.cancelOrder.awaitTransactionSuccessAsync(order, txOpts);
|
||||
await this.instance.cancelOrder(order).awaitTransactionSuccessAsync(txOpts);
|
||||
}
|
||||
|
||||
public async cancelOrdersUpToAsync(epoch: BigNumber, txOpts?: TxData): Promise<void> {
|
||||
await this.instance.cancelOrdersUpTo.awaitTransactionSuccessAsync(epoch, txOpts);
|
||||
await this.instance.cancelOrdersUpTo(epoch).awaitTransactionSuccessAsync(txOpts);
|
||||
}
|
||||
|
||||
public async fillOrderAsync(
|
||||
@@ -92,13 +84,14 @@ export class IsolatedExchangeWrapper {
|
||||
signature: string = DEFAULT_GOOD_SIGNATURE,
|
||||
txOpts?: TxData,
|
||||
): Promise<FillResults> {
|
||||
return this._runFillContractFunctionAsync(
|
||||
this.instance.fillOrder,
|
||||
order,
|
||||
new BigNumber(takerAssetFillAmount),
|
||||
signature,
|
||||
txOpts,
|
||||
);
|
||||
this.lastTxEvents = createEmptyEvents();
|
||||
this.lastTxBalanceChanges = {};
|
||||
const fillOrderFn = this.instance.fillOrder(order, new BigNumber(takerAssetFillAmount), signature);
|
||||
const result = await fillOrderFn.callAsync();
|
||||
const receipt = await fillOrderFn.awaitTransactionSuccessAsync(txOpts);
|
||||
this.lastTxEvents = extractEvents(receipt.logs);
|
||||
this.lastTxBalanceChanges = getBalanceChangesFromTransferFromCalls(this.lastTxEvents.transferFromCalls);
|
||||
return result;
|
||||
}
|
||||
|
||||
public getOrderHash(order: Order): string {
|
||||
@@ -110,7 +103,7 @@ export class IsolatedExchangeWrapper {
|
||||
}
|
||||
|
||||
public async getOrderInfoAsync(order: Order): Promise<OrderInfo> {
|
||||
return this.instance.getOrderInfo.callAsync(order);
|
||||
return this.instance.getOrderInfo(order).callAsync();
|
||||
}
|
||||
|
||||
public getBalanceChange(assetData: string, address: string): BigNumber {
|
||||
@@ -122,23 +115,6 @@ export class IsolatedExchangeWrapper {
|
||||
}
|
||||
return constants.ZERO_AMOUNT;
|
||||
}
|
||||
|
||||
protected async _runFillContractFunctionAsync<
|
||||
TCallAsyncArgs extends any[],
|
||||
TAwaitTransactionSuccessAsyncArgs extends any[],
|
||||
TResult
|
||||
>(
|
||||
contractFunction: MutatorContractFunction<TCallAsyncArgs, TAwaitTransactionSuccessAsyncArgs, TResult>,
|
||||
// tslint:disable-next-line: trailing-comma
|
||||
...args: TAwaitTransactionSuccessAsyncArgs
|
||||
): Promise<TResult> {
|
||||
this.lastTxEvents = createEmptyEvents();
|
||||
this.lastTxBalanceChanges = {};
|
||||
const [result, receipt] = await this.txHelper.getResultAndReceiptAsync(contractFunction, ...args);
|
||||
this.lastTxEvents = extractEvents(receipt.logs);
|
||||
this.lastTxBalanceChanges = getBalanceChangesFromTransferFromCalls(this.lastTxEvents.transferFromCalls);
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
Reference in New Issue
Block a user