diff --git a/CHANGELOG.md b/CHANGELOG.md index 7dc022ac8..f07e907dc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ This changelog is a work in progress and may contain notes for versions which have not actually been released. Check the [Releases](https://github.com/0xProject/0x-mesh/releases) page to see full release notes and more information about the latest released versions. +## v10.1.0 + +### Features ✅ + +- Added support for continuing to watch and store orders that become unfillable. [#945](https://github.com/0xProject/0x-mesh/pull/945) + ## v10.0.0 ### Breaking changes 🛠 diff --git a/README.md b/README.md index 5e40e8fb2..742f06db8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Version](https://img.shields.io/badge/version-10.0.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) +[![Version](https://img.shields.io/badge/version-10.1.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) [![Docs](https://img.shields.io/badge/docs-website-yellow.svg)](https://0x-org.gitbook.io/mesh) [![Chat with us on Discord](https://img.shields.io/badge/chat-Discord-blueViolet.svg)](https://discord.gg/HF7fHwk) [![Circle CI](https://img.shields.io/circleci/project/0xProject/0x-mesh/master.svg)](https://circleci.com/gh/0xProject/0x-mesh/tree/master) diff --git a/common/types/types.go b/common/types/types.go index 389ea9cc5..ae191ddab 100644 --- a/common/types/types.go +++ b/common/types/types.go @@ -55,6 +55,18 @@ type AddOrdersOpts struct { // and will always stay in storage until they are no longer fillable. Defaults // to true. Pinned bool `json:"pinned"` + // KeepCancelled signals that this order should not be deleted + // even if it is cancelled. + KeepCancelled bool `json:"keepCancelled"` + // KeepExpired signals that this order should not be deleted + // even if it becomes expired. + KeepExpired bool `json:"keepExpired"` + // KeepFullyFilled signals that this order should not be deleted + // even if it is fully filled. + KeepFullyFilled bool `json:"keepFullyFilled"` + // KeepUnfunded signals that this order should not be deleted + // even if it becomes unfunded. + KeepUnfunded bool `json:"keepUnfunded"` } // OrderInfo represents an fillable order and how much it could be filled for. @@ -126,6 +138,10 @@ type OrderWithMetadata struct { // IsPinned indicates whether or not the order is pinned. Pinned orders are // not removed from the database unless they become unfillable. IsPinned bool `json:"isPinned"` + // IsUnfillable indicates whether or not the order has become unfillable. + IsUnfillable bool `json:"isUnfillable"` + // IsExpired indicates whether or not the order has become expired. + IsExpired bool `json:"isExpired"` // JSON-encoded list of assetdatas contained in MakerAssetData. For non-MAP // orders, the list contains only one element which is equal to MakerAssetData. // For MAP orders, it contains each component assetdata. @@ -138,6 +154,18 @@ type OrderWithMetadata struct { // LastValidatedBlockHash is the hash of the block at which the order was // last validated. LastValidatedBlockHash common.Hash `json:"lastValidatedBlockHash"` + // KeepCancelled signals that this order should not be deleted + // if it is cancelled. + KeepCancelled bool `json:"keepCancelled"` + // KeepExpired signals that this order should not be deleted + // if it becomes expired. + KeepExpired bool `json:"keepExpired"` + // KeepFullyFilled signals that this order should not be deleted + // if it is fully filled. + KeepFullyFilled bool `json:"keepFullyFilled"` + // KeepUnfunded signals that this order should not be deleted + // if it becomes unfunded. + KeepUnfunded bool `json:"keepUnfunded"` } func (order OrderWithMetadata) SignedOrder() *zeroex.SignedOrder { diff --git a/core/core.go b/core/core.go index ea18b21f7..a5d7656ca 100644 --- a/core/core.go +++ b/core/core.go @@ -56,7 +56,7 @@ const ( estimatedNonPollingEthereumRPCRequestsPer24Hrs = 50000 // logStatsInterval is how often to log stats for this node. logStatsInterval = 5 * time.Minute - version = "10.0.0" + version = "10.1.0" // ordersyncMinPeers is the minimum amount of peers to receive orders from // before considering the ordersync process finished. ordersyncMinPeers = 5 @@ -866,7 +866,7 @@ func (app *App) GetOrders(perPage int, minOrderHash common.Hash) (*types.GetOrde // is true, the orders will be marked as pinned, which means they will only be // removed if they become unfillable and will not be removed due to having a high // expiration time or any incentive mechanisms. -func (app *App) AddOrders(ctx context.Context, signedOrders []*zeroex.SignedOrder, pinned bool) (*ordervalidator.ValidationResults, error) { +func (app *App) AddOrders(ctx context.Context, signedOrders []*zeroex.SignedOrder, pinned bool, opts *types.AddOrdersOpts) (*ordervalidator.ValidationResults, error) { signedOrdersRaw := []*json.RawMessage{} buf := &bytes.Buffer{} if err := json.NewEncoder(buf).Encode(signedOrders); err != nil { @@ -875,11 +875,11 @@ func (app *App) AddOrders(ctx context.Context, signedOrders []*zeroex.SignedOrde if err := json.NewDecoder(buf).Decode(&signedOrdersRaw); err != nil { return nil, err } - return app.AddOrdersRaw(ctx, signedOrdersRaw, pinned) + return app.AddOrdersRaw(ctx, signedOrdersRaw, pinned, opts) } // AddOrdersRaw is like AddOrders but accepts raw JSON messages. -func (app *App) AddOrdersRaw(ctx context.Context, signedOrdersRaw []*json.RawMessage, pinned bool) (*ordervalidator.ValidationResults, error) { +func (app *App) AddOrdersRaw(ctx context.Context, signedOrdersRaw []*json.RawMessage, pinned bool, opts *types.AddOrdersOpts) (*ordervalidator.ValidationResults, error) { <-app.started allValidationResults := &ordervalidator.ValidationResults{ @@ -944,7 +944,7 @@ func (app *App) AddOrdersRaw(ctx context.Context, signedOrdersRaw []*json.RawMes orderHashesSeen[orderHash] = struct{}{} } - validationResults, err := app.orderWatcher.ValidateAndStoreValidOrders(ctx, schemaValidOrders, pinned, app.chainID) + validationResults, err := app.orderWatcher.ValidateAndStoreValidOrders(ctx, schemaValidOrders, app.chainID, pinned, opts) if err != nil { return nil, err } diff --git a/core/core_test.go b/core/core_test.go index 3acb61821..c1bca3f07 100644 --- a/core/core_test.go +++ b/core/core_test.go @@ -11,6 +11,7 @@ import ( "testing" "time" + "github.com/0xProject/0x-mesh/common/types" "github.com/0xProject/0x-mesh/constants" "github.com/0xProject/0x-mesh/db" "github.com/0xProject/0x-mesh/ethereum" @@ -287,7 +288,7 @@ func runOrdersyncTestCase(testCase ordersyncTestCase) func(t *testing.T) { // We have to wait for latest block to be processed by the Mesh node. time.Sleep(blockProcessingWaitTime) - results, err := originalNode.orderWatcher.ValidateAndStoreValidOrders(ctx, originalOrders, true, constants.TestChainID) + results, err := originalNode.orderWatcher.ValidateAndStoreValidOrders(ctx, originalOrders, constants.TestChainID, true, &types.AddOrdersOpts{}) require.NoError(t, err) require.Empty(t, results.Rejected, "tried to add orders but some were invalid: \n%s\n", spew.Sdump(results)) diff --git a/core/message_handler.go b/core/message_handler.go index d0a4ebf15..bb0e3b292 100644 --- a/core/message_handler.go +++ b/core/message_handler.go @@ -3,6 +3,7 @@ package core import ( "context" + "github.com/0xProject/0x-mesh/common/types" "github.com/0xProject/0x-mesh/constants" "github.com/0xProject/0x-mesh/encoding" "github.com/0xProject/0x-mesh/p2p" @@ -56,7 +57,7 @@ func (app *App) HandleMessages(ctx context.Context, messages []*p2p.Message) err } // Next, we validate the orders. - validationResults, err := app.orderWatcher.ValidateAndStoreValidOrders(ctx, orders, false, app.chainID) + validationResults, err := app.orderWatcher.ValidateAndStoreValidOrders(ctx, orders, app.chainID, false, &types.AddOrdersOpts{}) if err != nil { return err } diff --git a/core/ordersync_subprotocols.go b/core/ordersync_subprotocols.go index abc24774f..614e19129 100644 --- a/core/ordersync_subprotocols.go +++ b/core/ordersync_subprotocols.go @@ -7,6 +7,7 @@ import ( "errors" "fmt" + "github.com/0xProject/0x-mesh/common/types" "github.com/0xProject/0x-mesh/core/ordersync" "github.com/0xProject/0x-mesh/orderfilter" "github.com/0xProject/0x-mesh/zeroex" @@ -170,7 +171,7 @@ func (p *FilteredPaginationSubProtocolV0) HandleOrderSyncResponse(ctx context.Co p.app.handlePeerScoreEvent(res.ProviderID, psReceivedOrderDoesNotMatchFilter) } } - validationResults, err := p.app.orderWatcher.ValidateAndStoreValidOrders(ctx, filteredOrders, false, p.app.chainID) + validationResults, err := p.app.orderWatcher.ValidateAndStoreValidOrders(ctx, filteredOrders, p.app.chainID, false, &types.AddOrdersOpts{}) if err != nil { return nil, len(filteredOrders), err } @@ -361,7 +362,7 @@ func (p *FilteredPaginationSubProtocolV1) HandleOrderSyncResponse(ctx context.Co p.app.handlePeerScoreEvent(res.ProviderID, psReceivedOrderDoesNotMatchFilter) } } - validationResults, err := p.app.orderWatcher.ValidateAndStoreValidOrders(ctx, filteredOrders, false, p.app.chainID) + validationResults, err := p.app.orderWatcher.ValidateAndStoreValidOrders(ctx, filteredOrders, p.app.chainID, false, &types.AddOrdersOpts{}) if err != nil { return nil, len(filteredOrders), err } diff --git a/db/common.go b/db/common.go index 4e110bf52..d75bd353a 100644 --- a/db/common.go +++ b/db/common.go @@ -117,9 +117,15 @@ const ( OFFillableTakerAssetAmount OrderField = "fillableTakerAssetAmount" OFIsRemoved OrderField = "isRemoved" OFIsPinned OrderField = "isPinned" + OFIsUnfillable OrderField = "isUnfillable" + OFIsExpired OrderField = "isExpired" OFParsedMakerAssetData OrderField = "parsedMakerAssetData" OFParsedMakerFeeAssetData OrderField = "parsedMakerFeeAssetData" OFLastValidatedBlockNumber OrderField = "lastValidatedBlockNumber" + OFKeepCancelled OrderField = "keepCancelled" + OFKeepExpired OrderField = "keepExpired" + OFKeepFullyFilled OrderField = "keepFullyFilled" + OFKeepUnfunded OrderField = "keepUnfunded" ) type OrderQuery struct { @@ -143,6 +149,7 @@ type OrderFilter struct { type StoredOrderStatus struct { IsStored bool `json:"isStored"` IsMarkedRemoved bool `json:"isMarkedRemoved"` + IsMarkedUnfillable bool `json:"isMarkedUnfillable"` FillableTakerAssetAmount *big.Int `json:"fillableTakerAssetAmount"` } diff --git a/db/db_test.go b/db/db_test.go index 0c0839907..7a95e3af8 100644 --- a/db/db_test.go +++ b/db/db_test.go @@ -207,14 +207,15 @@ func TestGetOrderStatuses(t *testing.T) { removedOrder := newTestOrder() removedOrder.IsRemoved = true - notRemovedOrder := newTestOrder() - _, _, _, err := db.AddOrders([]*types.OrderWithMetadata{removedOrder, notRemovedOrder}) + unfillableOrder := newTestOrder() + unfillableOrder.IsUnfillable = true + _, _, _, err := db.AddOrders([]*types.OrderWithMetadata{removedOrder, unfillableOrder}) require.NoError(t, err) hashes := []common.Hash{ common.HexToHash("0xace746910c6a8a4730878e6e8a4abb328844c0b58f0cdfbb5b6ad28ee0bae347"), removedOrder.Hash, - notRemovedOrder.Hash, + unfillableOrder.Hash, } actualStatuses, err := db.GetOrderStatuses(hashes) require.NoError(t, err) @@ -222,17 +223,20 @@ func TestGetOrderStatuses(t *testing.T) { { IsStored: false, IsMarkedRemoved: false, + IsMarkedUnfillable: false, FillableTakerAssetAmount: nil, }, { IsStored: true, IsMarkedRemoved: true, + IsMarkedUnfillable: false, FillableTakerAssetAmount: removedOrder.FillableTakerAssetAmount, }, { IsStored: true, IsMarkedRemoved: false, - FillableTakerAssetAmount: notRemovedOrder.FillableTakerAssetAmount, + IsMarkedUnfillable: true, + FillableTakerAssetAmount: unfillableOrder.FillableTakerAssetAmount, }, } assert.Equal(t, expectedStatuses, actualStatuses) @@ -1239,6 +1243,8 @@ func newTestOrder() *types.OrderWithMetadata { FillableTakerAssetAmount: big.NewInt(42), IsRemoved: false, IsPinned: true, + IsUnfillable: false, + IsExpired: false, ParsedMakerAssetData: []*types.SingleAssetData{ { Address: constants.GanacheDummyERC721TokenAddress, @@ -1373,6 +1379,39 @@ func makeOrderFilterTestCases(t *testing.T, db *DB) ([]*types.OrderWithMetadata, }, expectedMatchingOrders: storedOrders, }, + { + name: "IsPinned = true", + filters: []OrderFilter{ + { + Field: OFIsPinned, + Kind: Equal, + Value: true, + }, + }, + expectedMatchingOrders: storedOrders, + }, + { + name: "IsUnfillable = false", + filters: []OrderFilter{ + { + Field: OFIsUnfillable, + Kind: Equal, + Value: false, + }, + }, + expectedMatchingOrders: storedOrders, + }, + { + name: "IsExpired = false", + filters: []OrderFilter{ + { + Field: OFIsExpired, + Kind: Equal, + Value: false, + }, + }, + expectedMatchingOrders: storedOrders, + }, { name: "MakerAddress = Address1", filters: []OrderFilter{ diff --git a/db/dexie_implementation.go b/db/dexie_implementation.go index cb4651248..d602e6bb1 100644 --- a/db/dexie_implementation.go +++ b/db/dexie_implementation.go @@ -188,6 +188,7 @@ func (db *DB) GetOrderStatuses(hashes []common.Hash) (statuses []*StoredOrderSta statuses[i] = &StoredOrderStatus{ IsStored: jsStatus.Get("isStored").Bool(), IsMarkedRemoved: jsStatus.Get("isMarkedRemoved").Bool(), + IsMarkedUnfillable: jsStatus.Get("isMarkedUnfillable").Bool(), FillableTakerAssetAmount: fillableAmount, } } diff --git a/db/dexietypes/dexietypes.go b/db/dexietypes/dexietypes.go index fb6796122..e0ace34a1 100644 --- a/db/dexietypes/dexietypes.go +++ b/db/dexietypes/dexietypes.go @@ -157,10 +157,16 @@ type Order struct { IsRemoved uint8 `json:"isRemoved"` IsPinned uint8 `json:"isPinned"` IsNotPinned uint8 `json:"isNotPinned"` // Used in a compound index in queries related to max expiration time. + IsUnfillable uint8 `json:"isUnfillable"` + IsExpired uint8 `json:"isExpired"` ParsedMakerAssetData string `json:"parsedMakerAssetData"` ParsedMakerFeeAssetData string `json:"parsedMakerFeeAssetData"` LastValidatedBlockNumber *SortedBigInt `json:"lastValidatedBlockNumber"` LastValidatedBlockHash common.Hash `json:"lastValidatedBlockHash"` + KeepCancelled uint8 `json:"keepCancelled"` + KeepExpired uint8 `json:"keepExpired"` + KeepFullyFilled uint8 `json:"keepFullyFilled"` + KeepUnfunded uint8 `json:"keepUnfunded"` } type Metadata struct { @@ -196,10 +202,16 @@ func OrderToCommonType(order *Order) *types.OrderWithMetadata { LastUpdated: order.LastUpdated, IsRemoved: order.IsRemoved == 1, IsPinned: order.IsPinned == 1, + IsUnfillable: order.IsUnfillable == 1, + IsExpired: order.IsExpired == 1, ParsedMakerAssetData: ParsedAssetDataToCommonType(order.ParsedMakerAssetData), ParsedMakerFeeAssetData: ParsedAssetDataToCommonType(order.ParsedMakerFeeAssetData), LastValidatedBlockNumber: order.LastValidatedBlockNumber.Int, LastValidatedBlockHash: order.LastValidatedBlockHash, + KeepCancelled: order.KeepCancelled == 1, + KeepExpired: order.KeepExpired == 1, + KeepFullyFilled: order.KeepFullyFilled == 1, + KeepUnfunded: order.KeepUnfunded == 1, } } @@ -231,10 +243,16 @@ func OrderFromCommonType(order *types.OrderWithMetadata) *Order { IsRemoved: BoolToUint8(order.IsRemoved), IsPinned: BoolToUint8(order.IsPinned), IsNotPinned: BoolToUint8(!order.IsPinned), + IsUnfillable: BoolToUint8(order.IsUnfillable), + IsExpired: BoolToUint8(order.IsExpired), ParsedMakerAssetData: ParsedAssetDataFromCommonType(order.ParsedMakerAssetData), ParsedMakerFeeAssetData: ParsedAssetDataFromCommonType(order.ParsedMakerFeeAssetData), LastValidatedBlockNumber: NewSortedBigInt(order.LastValidatedBlockNumber), LastValidatedBlockHash: order.LastValidatedBlockHash, + KeepCancelled: BoolToUint8(order.KeepCancelled), + KeepExpired: BoolToUint8(order.KeepExpired), + KeepFullyFilled: BoolToUint8(order.KeepFullyFilled), + KeepUnfunded: BoolToUint8(order.KeepUnfunded), } } diff --git a/db/sql_implementation.go b/db/sql_implementation.go index 7205c964d..d0f7cc3f3 100644 --- a/db/sql_implementation.go +++ b/db/sql_implementation.go @@ -132,10 +132,16 @@ CREATE TABLE IF NOT EXISTS orders ( fillableTakerAssetAmount TEXT NOT NULL, isRemoved BOOLEAN NOT NULL, isPinned BOOLEAN NOT NULL, + isUnfillable BOOLEAN NOT NULL, + isExpired BOOLEAN NOT NULL, parsedMakerAssetData TEXT NOT NULL, parsedMakerFeeAssetData TEXT NOT NULL, lastValidatedBlockNumber TEXT NOT NULL, - lastValidatedBlockHash TEXT NOT NULL + lastValidatedBlockHash TEXT NOT NULL, + keepCancelled BOOLEAN NOT NULL, + keepExpired BOOLEAN NOT NULL, + keepFullyFilled BOOLEAN NOT NULL, + keepUnfunded BOOLEAN NOT NULL ); CREATE TABLE IF NOT EXISTS miniHeaders ( @@ -188,10 +194,16 @@ const insertOrderQuery = `INSERT INTO orders ( fillableTakerAssetAmount, isRemoved, isPinned, + isUnfillable, + isExpired, parsedMakerAssetData, parsedMakerFeeAssetData, lastValidatedBlockNumber, - lastValidatedBlockHash + lastValidatedBlockHash, + keepCancelled, + keepExpired, + keepFullyFilled, + keepUnfunded ) VALUES ( :hash, :chainID, @@ -215,10 +227,16 @@ const insertOrderQuery = `INSERT INTO orders ( :fillableTakerAssetAmount, :isRemoved, :isPinned, + :isUnfillable, + :isExpired, :parsedMakerAssetData, :parsedMakerFeeAssetData, :lastValidatedBlockNumber, - :lastValidatedBlockHash + :lastValidatedBlockHash, + :keepCancelled, + :keepExpired, + :keepFullyFilled, + :keepUnfunded ) ON CONFLICT DO NOTHING ` @@ -244,10 +262,16 @@ const updateOrderQuery = `UPDATE orders SET fillableTakerAssetAmount = :fillableTakerAssetAmount, isRemoved = :isRemoved, isPinned = :isPinned, + isUnfillable = :isUnfillable, + isExpired = :isExpired, parsedMakerAssetData = :parsedMakerAssetData, parsedMakerFeeAssetData = :parsedMakerFeeAssetData, lastValidatedBlockNumber = :lastValidatedBlockNumber, - lastValidatedBlockHash = :lastValidatedBlockHash + lastValidatedBlockHash = :lastValidatedBlockHash, + keepCancelled = :keepCancelled, + keepExpired = :keepExpired, + keepFullyFilled = :keepFullyFilled, + keepUnfunded = :keepUnfunded WHERE orders.hash = :hash ` @@ -381,27 +405,23 @@ func (db *DB) GetOrderStatuses(hashes []common.Hash) (statuses []*StoredOrderSta err = db.ReadWriteTransactionalContext(db.ctx, nil, func(txn *sqlz.Tx) error { for i, hash := range hashes { var foundOrder sqltypes.Order - err := db.sqldb.GetContext(db.ctx, &foundOrder, "SELECT isRemoved, fillableTakerAssetAmount FROM orders WHERE hash = $1", hash) + err := db.sqldb.GetContext(db.ctx, &foundOrder, "SELECT isRemoved, isUnfillable, fillableTakerAssetAmount FROM orders WHERE hash = $1", hash) if err != nil { if err == sql.ErrNoRows { orderStatuses[i] = &StoredOrderStatus{ IsStored: false, IsMarkedRemoved: false, + IsMarkedUnfillable: false, FillableTakerAssetAmount: nil, } } else { return err } - } else if foundOrder.IsRemoved { - orderStatuses[i] = &StoredOrderStatus{ - IsStored: true, - IsMarkedRemoved: true, - FillableTakerAssetAmount: foundOrder.FillableTakerAssetAmount.Int, - } } else { orderStatuses[i] = &StoredOrderStatus{ IsStored: true, - IsMarkedRemoved: false, + IsMarkedRemoved: foundOrder.IsRemoved, + IsMarkedUnfillable: foundOrder.IsUnfillable, FillableTakerAssetAmount: foundOrder.FillableTakerAssetAmount.Int, } } diff --git a/db/sqltypes/sqltypes.go b/db/sqltypes/sqltypes.go index 05b53843c..2d5021968 100644 --- a/db/sqltypes/sqltypes.go +++ b/db/sqltypes/sqltypes.go @@ -243,10 +243,16 @@ type Order struct { FillableTakerAssetAmount *SortedBigInt `db:"fillableTakerAssetAmount"` IsRemoved bool `db:"isRemoved"` IsPinned bool `db:"isPinned"` + IsUnfillable bool `db:"isUnfillable"` + IsExpired bool `db:"isExpired"` ParsedMakerAssetData *ParsedAssetData `db:"parsedMakerAssetData"` ParsedMakerFeeAssetData *ParsedAssetData `db:"parsedMakerFeeAssetData"` LastValidatedBlockNumber *SortedBigInt `db:"lastValidatedBlockNumber"` LastValidatedBlockHash common.Hash `db:"lastValidatedBlockHash"` + KeepCancelled bool `db:"keepCancelled"` + KeepExpired bool `db:"keepExpired"` + KeepFullyFilled bool `db:"keepFullyFilled"` + KeepUnfunded bool `db:"keepUnfunded"` } // EventLogs is a wrapper around []*ethtypes.Log that implements the @@ -328,10 +334,16 @@ func OrderToCommonType(order *Order) *types.OrderWithMetadata { LastUpdated: order.LastUpdated, IsRemoved: order.IsRemoved, IsPinned: order.IsPinned, + IsUnfillable: order.IsUnfillable, + IsExpired: order.IsExpired, ParsedMakerAssetData: ParsedAssetDataToCommonType(order.ParsedMakerAssetData), ParsedMakerFeeAssetData: ParsedAssetDataToCommonType(order.ParsedMakerFeeAssetData), LastValidatedBlockNumber: order.LastValidatedBlockNumber.Int, LastValidatedBlockHash: order.LastValidatedBlockHash, + KeepCancelled: order.KeepCancelled, + KeepExpired: order.KeepExpired, + KeepFullyFilled: order.KeepFullyFilled, + KeepUnfunded: order.KeepUnfunded, } } @@ -362,10 +374,16 @@ func OrderFromCommonType(order *types.OrderWithMetadata) *Order { FillableTakerAssetAmount: NewSortedBigInt(order.FillableTakerAssetAmount), IsRemoved: order.IsRemoved, IsPinned: order.IsPinned, + IsUnfillable: order.IsUnfillable, + IsExpired: order.IsExpired, ParsedMakerAssetData: ParsedAssetDataFromCommonType(order.ParsedMakerAssetData), ParsedMakerFeeAssetData: ParsedAssetDataFromCommonType(order.ParsedMakerFeeAssetData), LastValidatedBlockNumber: NewSortedBigInt(order.LastValidatedBlockNumber), LastValidatedBlockHash: order.LastValidatedBlockHash, + KeepCancelled: order.KeepCancelled, + KeepExpired: order.KeepExpired, + KeepFullyFilled: order.KeepFullyFilled, + KeepUnfunded: order.KeepUnfunded, } } diff --git a/docs/browser-bindings/browser-lite/README.md b/docs/browser-bindings/browser-lite/README.md index 06ed5b640..dd8119ee4 100644 --- a/docs/browser-bindings/browser-lite/README.md +++ b/docs/browser-bindings/browser-lite/README.md @@ -1,4 +1,4 @@ -# @0x/mesh-browser-lite - v10.0.0 +# @0x/mesh-browser-lite - v10.1.0 ## @0x/mesh-browser-lite diff --git a/docs/browser-bindings/browser-lite/reference.md b/docs/browser-bindings/browser-lite/reference.md index 2eae07282..875b416d1 100644 --- a/docs/browser-bindings/browser-lite/reference.md +++ b/docs/browser-bindings/browser-lite/reference.md @@ -13,7 +13,7 @@ sending orders through the 0x Mesh network. \+ **new Mesh**(`config`: [Config](#interface-config)): _[Mesh](#class-mesh)_ -_Defined in [mesh.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L132)_ +_Defined in [mesh.ts:132](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L132)_ Instantiates a new Mesh instance. @@ -33,7 +33,7 @@ An instance of Mesh • **wrapper**? : _MeshWrapper_ -_Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L129)_ +_Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L129)_ ### Methods @@ -41,7 +41,7 @@ _Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/pac ▸ **addOrdersAsync**(`orders`: SignedOrder[], `pinned`: boolean): _Promise‹[ValidationResults](#interface-validationresults)›_ -_Defined in [mesh.ts:269](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L269)_ +_Defined in [mesh.ts:269](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L269)_ Validates and adds the given orders to Mesh. If an order is successfully added, Mesh will share it with any peers in the network and start @@ -68,7 +68,7 @@ were accepted and which were rejected. ▸ **getOrdersAsync**(`perPage`: number): _Promise‹[GetOrdersResponse](#interface-getordersresponse)›_ -_Defined in [mesh.ts:207](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L207)_ +_Defined in [mesh.ts:207](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L207)_ Get all 0x signed orders currently stored in the Mesh node @@ -88,7 +88,7 @@ the snapshotID, snapshotTimestamp and all orders, their hashes and fillableTaker ▸ **getOrdersForPageAsync**(`perPage`: number, `minOrderHash?`: undefined | string): _Promise‹[GetOrdersResponse](#interface-getordersresponse)›_ -_Defined in [mesh.ts:240](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L240)_ +_Defined in [mesh.ts:240](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L240)_ Get page of 0x signed orders stored on the Mesh node at the specified snapshot @@ -109,7 +109,7 @@ Up to perPage orders with hash greater than minOrderHash, including order hashes ▸ **getStatsAsync**(): _Promise‹[Stats](#interface-stats)›_ -_Defined in [mesh.ts:190](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L190)_ +_Defined in [mesh.ts:190](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L190)_ Returns various stats about Mesh, including the total number of orders and the number of peers Mesh is connected to. @@ -122,7 +122,7 @@ and the number of peers Mesh is connected to. ▸ **onError**(`handler`: function): _void_ -_Defined in [mesh.ts:152](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L152)_ +_Defined in [mesh.ts:152](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L152)_ Registers a handler which will be called in the event of a critical error. Note that the handler will not be called for non-critical errors. @@ -151,7 +151,7 @@ The handler to be called. ▸ **onOrderEvents**(`handler`: function): _void_ -_Defined in [mesh.ts:165](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L165)_ +_Defined in [mesh.ts:165](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L165)_ Registers a handler which will be called for any incoming order events. Order events are fired whenver an order is added, canceled, expired, or @@ -180,7 +180,7 @@ The handler to be called. ▸ **startAsync**(): _Promise‹void›_ -_Defined in [mesh.ts:174](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L174)_ +_Defined in [mesh.ts:174](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L174)_ Starts the Mesh node in the background. Mesh will automatically find peers in the network and begin receiving orders from them. @@ -197,7 +197,7 @@ peers in the network and begin receiving orders from them. • **ERC1155ApprovalForAllEvent**: = "ERC1155ApprovalForAllEvent" -_Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L505)_ +_Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L505)_ --- @@ -205,7 +205,7 @@ _Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC1155TransferBatchEvent**: = "ERC1155TransferBatchEvent" -_Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L507)_ +_Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L507)_ --- @@ -213,7 +213,7 @@ _Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC1155TransferSingleEvent**: = "ERC1155TransferSingleEvent" -_Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L506)_ +_Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L506)_ --- @@ -221,7 +221,7 @@ _Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC20ApprovalEvent**: = "ERC20ApprovalEvent" -_Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L501)_ +_Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L501)_ --- @@ -229,7 +229,7 @@ _Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC20TransferEvent**: = "ERC20TransferEvent" -_Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L500)_ +_Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L500)_ --- @@ -237,7 +237,7 @@ _Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721ApprovalEvent**: = "ERC721ApprovalEvent" -_Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L503)_ +_Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L503)_ --- @@ -245,7 +245,7 @@ _Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721ApprovalForAllEvent**: = "ERC721ApprovalForAllEvent" -_Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L504)_ +_Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L504)_ --- @@ -253,7 +253,7 @@ _Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721TransferEvent**: = "ERC721TransferEvent" -_Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L502)_ +_Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L502)_ --- @@ -261,7 +261,7 @@ _Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeCancelEvent**: = "ExchangeCancelEvent" -_Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L509)_ +_Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L509)_ --- @@ -269,7 +269,7 @@ _Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeCancelUpToEvent**: = "ExchangeCancelUpToEvent" -_Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L510)_ +_Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L510)_ --- @@ -277,7 +277,7 @@ _Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeFillEvent**: = "ExchangeFillEvent" -_Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L508)_ +_Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L508)_ --- @@ -285,7 +285,7 @@ _Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **WethDepositEvent**: = "WethDepositEvent" -_Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L511)_ +_Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L511)_ --- @@ -293,7 +293,7 @@ _Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **WethWithdrawalEvent**: = "WethWithdrawalEvent" -_Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L512)_ +_Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L512)_
@@ -305,7 +305,7 @@ _Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Added**: = "ADDED" -_Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L575)_ +_Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L575)_ --- @@ -313,7 +313,7 @@ _Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Cancelled**: = "CANCELLED" -_Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L578)_ +_Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L578)_ --- @@ -321,7 +321,7 @@ _Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Expired**: = "EXPIRED" -_Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L579)_ +_Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L579)_ --- @@ -329,7 +329,7 @@ _Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **FillabilityIncreased**: = "FILLABILITY_INCREASED" -_Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L582)_ +_Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L582)_ --- @@ -337,7 +337,7 @@ _Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Filled**: = "FILLED" -_Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L576)_ +_Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L576)_ --- @@ -345,7 +345,7 @@ _Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **FullyFilled**: = "FULLY_FILLED" -_Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L577)_ +_Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L577)_ --- @@ -353,7 +353,7 @@ _Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Invalid**: = "INVALID" -_Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L574)_ +_Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L574)_ --- @@ -361,7 +361,7 @@ _Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **StoppedWatching**: = "STOPPED_WATCHING" -_Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L583)_ +_Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L583)_ --- @@ -369,7 +369,7 @@ _Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Unexpired**: = "UNEXPIRED" -_Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L580)_ +_Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L580)_ --- @@ -377,7 +377,7 @@ _Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Unfunded**: = "UNFUNDED" -_Defined in [types.ts:581](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L581)_ +_Defined in [types.ts:581](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L581)_
@@ -391,7 +391,7 @@ A set of categories for rejected orders. • **MeshError**: = "MESH_ERROR" -_Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L713)_ +_Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L713)_ --- @@ -399,7 +399,7 @@ _Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **MeshValidation**: = "MESH_VALIDATION" -_Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L714)_ +_Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L714)_ --- @@ -407,7 +407,7 @@ _Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ZeroExValidation**: = "ZEROEX_VALIDATION" -_Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L712)_ +_Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L712)_
@@ -419,7 +419,7 @@ _Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Debug**: = 5 -_Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L238)_ +_Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L238)_ --- @@ -427,7 +427,7 @@ _Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Error**: = 2 -_Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L235)_ +_Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L235)_ --- @@ -435,7 +435,7 @@ _Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Fatal**: = 1 -_Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L234)_ +_Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L234)_ --- @@ -443,7 +443,7 @@ _Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Info**: = 4 -_Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L237)_ +_Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L237)_ --- @@ -451,7 +451,7 @@ _Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Panic**: = 0 -_Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L233)_ +_Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L233)_ --- @@ -459,7 +459,7 @@ _Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Trace**: = 6 -_Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L239)_ +_Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L239)_ --- @@ -467,7 +467,7 @@ _Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Warn**: = 3 -_Defined in [types.ts:236](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L236)_ +_Defined in [types.ts:236](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L236)_
@@ -485,7 +485,7 @@ Info for any orders that were accepted. • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L693)_ +_Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L693)_ --- @@ -493,7 +493,7 @@ _Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **isNew**: _boolean_ -_Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L694)_ +_Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L694)_ --- @@ -501,7 +501,7 @@ _Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L691)_ +_Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L691)_ --- @@ -509,7 +509,7 @@ _Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:692](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L692)_ +_Defined in [types.ts:692](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L692)_
@@ -527,7 +527,7 @@ A set of configuration options for Mesh. • **blockPollingIntervalSeconds**? : _undefined | number_ -_Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L144)_ +_Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L144)_ --- @@ -535,7 +535,7 @@ _Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **bootstrapList**? : _string[]_ -_Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L137)_ +_Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L137)_ --- @@ -543,7 +543,7 @@ _Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **customContractAddresses**? : _[ContractAddresses](#interface-contractaddresses)_ -_Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L188)_ +_Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L188)_ --- @@ -551,7 +551,7 @@ _Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **customOrderFilter**? : _[JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L213)_ +_Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L213)_ --- @@ -559,7 +559,7 @@ _Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **enableEthereumRPCRateLimiting**? : _undefined | false | true_ -_Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L161)_ +_Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L161)_ --- @@ -567,7 +567,7 @@ _Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumChainID**: _number_ -_Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L129)_ +_Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L129)_ --- @@ -575,7 +575,7 @@ _Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxContentLength**? : _undefined | number_ -_Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L153)_ +_Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L153)_ --- @@ -583,7 +583,7 @@ _Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxRequestsPer24HrUTC**? : _undefined | number_ -_Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L166)_ +_Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L166)_ --- @@ -591,7 +591,7 @@ _Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxRequestsPerSecond**? : _undefined | number_ -_Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L172)_ +_Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L172)_ --- @@ -599,7 +599,7 @@ _Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCURL**? : _undefined | string_ -_Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L126)_ +_Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L126)_ --- @@ -607,7 +607,7 @@ _Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxBytesPerSecond**? : _undefined | number_ -_Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L219)_ +_Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L219)_ --- @@ -615,7 +615,7 @@ _Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxOrdersInStorage**? : _undefined | number_ -_Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L193)_ +_Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L193)_ --- @@ -623,7 +623,7 @@ _Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **useBootstrapList**? : _undefined | false | true_ -_Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L132)_ +_Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L132)_ --- @@ -631,7 +631,7 @@ _Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **verbosity**? : _[Verbosity](#enumeration-verbosity)_ -_Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L123)_ +_Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L123)_ --- @@ -639,7 +639,7 @@ _Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **web3Provider**? : _SupportedProvider_ -_Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L216)_ +_Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L216)_
@@ -655,7 +655,7 @@ _Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **devUtils**: _string_ -_Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L224)_ +_Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L224)_ --- @@ -663,7 +663,7 @@ _Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc1155Proxy**: _string_ -_Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L227)_ +_Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L227)_ --- @@ -671,7 +671,7 @@ _Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc20Proxy**: _string_ -_Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L225)_ +_Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L225)_ --- @@ -679,7 +679,7 @@ _Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc721Proxy**: _string_ -_Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L226)_ +_Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L226)_ --- @@ -687,7 +687,7 @@ _Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **exchange**: _string_ -_Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L223)_ +_Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L223)_ --- @@ -695,7 +695,7 @@ _Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **weth9**? : _undefined | string_ -_Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L228)_ +_Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L228)_ --- @@ -703,7 +703,7 @@ _Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **zrxToken**? : _undefined | string_ -_Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L229)_ +_Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L229)_
@@ -719,7 +719,7 @@ _Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **address**: _string_ -_Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L553)_ +_Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L553)_ --- @@ -727,7 +727,7 @@ _Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **blockHash**: _string_ -_Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L548)_ +_Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L548)_ --- @@ -735,7 +735,7 @@ _Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **isRemoved**: _boolean_ -_Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L552)_ +_Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L552)_ --- @@ -743,7 +743,7 @@ _Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **kind**: _[ContractEventKind](#enumeration-contracteventkind)_ -_Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L554)_ +_Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L554)_ --- @@ -751,7 +751,7 @@ _Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **logIndex**: _number_ -_Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L551)_ +_Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L551)_ --- @@ -759,7 +759,7 @@ _Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **parameters**: _ContractEventParameters_ -_Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L555)_ +_Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L555)_ --- @@ -767,7 +767,7 @@ _Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **txHash**: _string_ -_Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L549)_ +_Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L549)_ --- @@ -775,7 +775,7 @@ _Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **txIndex**: _number_ -_Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L550)_ +_Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L550)_
@@ -791,7 +791,7 @@ _Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _boolean_ -_Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L417)_ +_Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L417)_ --- @@ -799,7 +799,7 @@ _Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L416)_ +_Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L416)_ --- @@ -807,7 +807,7 @@ _Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L415)_ +_Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L415)_
@@ -823,7 +823,7 @@ _Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L399)_ +_Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L399)_ --- @@ -831,7 +831,7 @@ _Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ids**: _BigNumber[]_ -_Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L401)_ +_Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L401)_ --- @@ -839,7 +839,7 @@ _Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L398)_ +_Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L398)_ --- @@ -847,7 +847,7 @@ _Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L400)_ +_Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L400)_ --- @@ -855,7 +855,7 @@ _Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **values**: _BigNumber[]_ -_Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L402)_ +_Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L402)_
@@ -871,7 +871,7 @@ _Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L382)_ +_Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L382)_ --- @@ -879,7 +879,7 @@ _Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **id**: _BigNumber_ -_Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L384)_ +_Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L384)_ --- @@ -887,7 +887,7 @@ _Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L381)_ +_Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L381)_ --- @@ -895,7 +895,7 @@ _Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L383)_ +_Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L383)_ --- @@ -903,7 +903,7 @@ _Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L385)_ +_Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L385)_
@@ -919,7 +919,7 @@ _Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L336)_ +_Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L336)_ --- @@ -927,7 +927,7 @@ _Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **spender**: _string_ -_Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L337)_ +_Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L337)_ --- @@ -935,7 +935,7 @@ _Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L338)_ +_Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L338)_
@@ -951,7 +951,7 @@ _Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L323)_ +_Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L323)_ --- @@ -959,7 +959,7 @@ _Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L324)_ +_Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L324)_ --- @@ -967,7 +967,7 @@ _Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L325)_ +_Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L325)_
@@ -983,7 +983,7 @@ _Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _string_ -_Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L363)_ +_Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L363)_ --- @@ -991,7 +991,7 @@ _Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L362)_ +_Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L362)_ --- @@ -999,7 +999,7 @@ _Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **tokenId**: _BigNumber_ -_Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L364)_ +_Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L364)_
@@ -1015,7 +1015,7 @@ _Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _boolean_ -_Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L377)_ +_Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L377)_ --- @@ -1023,7 +1023,7 @@ _Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L376)_ +_Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L376)_ --- @@ -1031,7 +1031,7 @@ _Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L375)_ +_Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L375)_
@@ -1047,7 +1047,7 @@ _Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L349)_ +_Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L349)_ --- @@ -1055,7 +1055,7 @@ _Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L350)_ +_Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L350)_ --- @@ -1063,7 +1063,7 @@ _Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **tokenId**: _BigNumber_ -_Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L351)_ +_Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L351)_
@@ -1079,7 +1079,7 @@ _Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **feeRecipientAddress**: _string_ -_Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L458)_ +_Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L458)_ --- @@ -1087,7 +1087,7 @@ _Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L456)_ +_Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L456)_ --- @@ -1095,7 +1095,7 @@ _Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetData**: _string_ -_Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L460)_ +_Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L460)_ --- @@ -1103,7 +1103,7 @@ _Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L459)_ +_Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L459)_ --- @@ -1111,7 +1111,7 @@ _Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **senderAddress**: _string_ -_Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L457)_ +_Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L457)_ --- @@ -1119,7 +1119,7 @@ _Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetData**: _string_ -_Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L461)_ +_Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L461)_
@@ -1135,7 +1135,7 @@ _Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L465)_ +_Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L465)_ --- @@ -1143,7 +1143,7 @@ _Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderEpoch**: _BigNumber_ -_Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L467)_ +_Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L467)_ --- @@ -1151,7 +1151,7 @@ _Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderSenderAddress**: _string_ -_Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L466)_ +_Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L466)_
@@ -1167,7 +1167,7 @@ _Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **feeRecipientAddress**: _string_ -_Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L424)_ +_Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L424)_ --- @@ -1175,7 +1175,7 @@ _Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L421)_ +_Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L421)_ --- @@ -1183,7 +1183,7 @@ _Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetData**: _string_ -_Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L431)_ +_Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L431)_ --- @@ -1191,7 +1191,7 @@ _Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetFilledAmount**: _BigNumber_ -_Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L425)_ +_Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L425)_ --- @@ -1199,7 +1199,7 @@ _Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerFeeAssetData**: _string_ -_Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L433)_ +_Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L433)_ --- @@ -1207,7 +1207,7 @@ _Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerFeePaid**: _BigNumber_ -_Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L427)_ +_Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L427)_ --- @@ -1215,7 +1215,7 @@ _Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L430)_ +_Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L430)_ --- @@ -1223,7 +1223,7 @@ _Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **protocolFeePaid**: _BigNumber_ -_Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L429)_ +_Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L429)_ --- @@ -1231,7 +1231,7 @@ _Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **senderAddress**: _string_ -_Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L423)_ +_Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L423)_ --- @@ -1239,7 +1239,7 @@ _Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAddress**: _string_ -_Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L422)_ +_Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L422)_ --- @@ -1247,7 +1247,7 @@ _Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetData**: _string_ -_Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L432)_ +_Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L432)_ --- @@ -1255,7 +1255,7 @@ _Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetFilledAmount**: _BigNumber_ -_Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L426)_ +_Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L426)_ --- @@ -1263,7 +1263,7 @@ _Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerFeeAssetData**: _string_ -_Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L434)_ +_Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L434)_ --- @@ -1271,7 +1271,7 @@ _Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerFeePaid**: _BigNumber_ -_Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L428)_ +_Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L428)_
@@ -1287,7 +1287,7 @@ _Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ordersInfos**: _[OrderInfo](#interface-orderinfo)[]_ -_Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L45)_ +_Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L45)_ --- @@ -1295,7 +1295,7 @@ _Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **timestamp**: _number_ -_Defined in [types.ts:44](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L44)_ +_Defined in [types.ts:44](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L44)_
@@ -1313,7 +1313,7 @@ An interface for JSON schema types, which are used for custom order filters. • **\$ref**? : _undefined | string_ -_Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L67)_ +_Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L67)_ --- @@ -1321,7 +1321,7 @@ _Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **\$schema**? : _undefined | string_ -_Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L66)_ +_Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L66)_ --- @@ -1329,7 +1329,7 @@ _Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **additionalItems**? : _boolean | [JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L78)_ +_Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L78)_ --- @@ -1337,7 +1337,7 @@ _Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **additionalProperties**? : _boolean | [JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L86)_ +_Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L86)_ --- @@ -1345,7 +1345,7 @@ _Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **allOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L108)_ +_Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L108)_ --- @@ -1353,7 +1353,7 @@ _Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **anyOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L109)_ +_Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L109)_ --- @@ -1361,7 +1361,7 @@ _Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **const**? : _any_ -_Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L105)_ +_Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L105)_ --- @@ -1369,7 +1369,7 @@ _Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **definitions**? : _undefined | object_ -_Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L87)_ +_Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L87)_ --- @@ -1377,7 +1377,7 @@ _Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **dependencies**? : _undefined | object_ -_Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L96)_ +_Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L96)_ --- @@ -1385,7 +1385,7 @@ _Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **description**? : _undefined | string_ -_Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L69)_ +_Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L69)_ --- @@ -1393,7 +1393,7 @@ _Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **enum**? : _any[]_ -_Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L99)_ +_Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L99)_ --- @@ -1401,7 +1401,7 @@ _Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **exclusiveMaximum**? : _undefined | false | true_ -_Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L72)_ +_Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L72)_ --- @@ -1409,7 +1409,7 @@ _Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **exclusiveMinimum**? : _undefined | false | true_ -_Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L74)_ +_Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L74)_ --- @@ -1417,7 +1417,7 @@ _Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **format**? : _undefined | string_ -_Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L107)_ +_Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L107)_ --- @@ -1425,7 +1425,7 @@ _Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **id**? : _undefined | string_ -_Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L65)_ +_Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L65)_ --- @@ -1433,7 +1433,7 @@ _Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **items**? : _[JsonSchema](#interface-jsonschema) | [JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L79)_ +_Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L79)_ --- @@ -1441,7 +1441,7 @@ _Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxItems**? : _undefined | number_ -_Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L80)_ +_Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L80)_ --- @@ -1449,7 +1449,7 @@ _Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxLength**? : _undefined | number_ -_Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L75)_ +_Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L75)_ --- @@ -1457,7 +1457,7 @@ _Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxProperties**? : _undefined | number_ -_Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L83)_ +_Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L83)_ --- @@ -1465,7 +1465,7 @@ _Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maximum**? : _undefined | number_ -_Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L71)_ +_Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L71)_ --- @@ -1473,7 +1473,7 @@ _Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minItems**? : _undefined | number_ -_Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L81)_ +_Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L81)_ --- @@ -1481,7 +1481,7 @@ _Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minLength**? : _undefined | number_ -_Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L76)_ +_Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L76)_ --- @@ -1489,7 +1489,7 @@ _Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minProperties**? : _undefined | number_ -_Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L84)_ +_Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L84)_ --- @@ -1497,7 +1497,7 @@ _Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minimum**? : _undefined | number_ -_Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L73)_ +_Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L73)_ --- @@ -1505,7 +1505,7 @@ _Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **multipleOf**? : _undefined | number_ -_Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L70)_ +_Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L70)_ --- @@ -1513,7 +1513,7 @@ _Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **not**? : _[JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L111)_ +_Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L111)_ --- @@ -1521,7 +1521,7 @@ _Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **oneOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L110)_ +_Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L110)_ --- @@ -1529,7 +1529,7 @@ _Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **pattern**? : _string | RegExp_ -_Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L77)_ +_Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L77)_ --- @@ -1537,7 +1537,7 @@ _Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **patternProperties**? : _undefined | object_ -_Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L93)_ +_Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L93)_ --- @@ -1545,7 +1545,7 @@ _Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **properties**? : _undefined | object_ -_Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L90)_ +_Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L90)_ --- @@ -1553,7 +1553,7 @@ _Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **required**? : _string[]_ -_Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L85)_ +_Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L85)_ --- @@ -1561,7 +1561,7 @@ _Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **title**? : _undefined | string_ -_Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L68)_ +_Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L68)_ --- @@ -1569,7 +1569,7 @@ _Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **type**? : _string | string[]_ -_Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L106)_ +_Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L106)_ --- @@ -1577,7 +1577,7 @@ _Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **uniqueItems**? : _undefined | false | true_ -_Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L82)_ +_Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L82)_
@@ -1593,7 +1593,7 @@ _Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **hash**: _string_ -_Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L733)_ +_Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L733)_ --- @@ -1601,7 +1601,7 @@ _Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **number**: _BigNumber_ -_Defined in [types.ts:732](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L732)_ +_Defined in [types.ts:732](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L732)_
@@ -1620,7 +1620,7 @@ or filled. • **contractEvents**: _[ContractEvent](#interface-contractevent)[]_ -_Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L606)_ +_Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L606)_ --- @@ -1628,7 +1628,7 @@ _Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **endState**: _[OrderEventEndState](#enumeration-ordereventendstate)_ -_Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L604)_ +_Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L604)_ --- @@ -1636,7 +1636,7 @@ _Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L605)_ +_Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L605)_ --- @@ -1644,7 +1644,7 @@ _Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L602)_ +_Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L602)_ --- @@ -1652,7 +1652,7 @@ _Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L603)_ +_Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L603)_ --- @@ -1660,7 +1660,7 @@ _Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **timestampMs**: _number_ -_Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L601)_ +_Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L601)_
@@ -1676,7 +1676,7 @@ _Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L58)_ +_Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L58)_ --- @@ -1684,7 +1684,7 @@ _Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **orderHash**: _string_ -_Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L56)_ +_Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L56)_ --- @@ -1692,7 +1692,7 @@ _Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:57](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L57)_ +_Defined in [types.ts:57](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L57)_
@@ -1711,7 +1711,7 @@ rejected. • **kind**: _[RejectedOrderKind](#enumeration-rejectedorderkind)_ -_Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L704)_ +_Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L704)_ --- @@ -1719,7 +1719,7 @@ _Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L702)_ +_Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L702)_ --- @@ -1727,7 +1727,7 @@ _Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L703)_ +_Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L703)_ --- @@ -1735,7 +1735,7 @@ _Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **status**: _[RejectedOrderStatus](#interface-rejectedorderstatus)_ -_Defined in [types.ts:705](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L705)_ +_Defined in [types.ts:705](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L705)_
@@ -1753,7 +1753,7 @@ Provides more information about why an order was rejected. • **code**: _string_ -_Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L721)_ +_Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L721)_ --- @@ -1761,7 +1761,7 @@ _Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **message**: _string_ -_Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L722)_ +_Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L722)_
@@ -1777,7 +1777,7 @@ _Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethRPCRateLimitExpiredRequests**: _number_ -_Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L770)_ +_Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L770)_ --- @@ -1785,7 +1785,7 @@ _Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethRPCRequestsSentInCurrentUTCDay**: _number_ -_Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L769)_ +_Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L769)_ --- @@ -1793,7 +1793,7 @@ _Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumChainID**: _number_ -_Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L761)_ +_Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L761)_ --- @@ -1801,7 +1801,7 @@ _Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **latestBlock**? : _[LatestBlock](#interface-latestblock)_ -_Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L762)_ +_Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L762)_ --- @@ -1809,7 +1809,7 @@ _Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxExpirationTime**: _BigNumber_ -_Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L767)_ +_Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L767)_ --- @@ -1817,7 +1817,7 @@ _Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numOrders**: _number_ -_Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L764)_ +_Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L764)_ --- @@ -1825,7 +1825,7 @@ _Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numOrdersIncludingRemoved**: _number_ -_Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L765)_ +_Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L765)_ --- @@ -1833,7 +1833,7 @@ _Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numPeers**: _number_ -_Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L763)_ +_Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L763)_ --- @@ -1841,7 +1841,7 @@ _Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numPinnedOrders**: _number_ -_Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L766)_ +_Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L766)_ --- @@ -1849,7 +1849,7 @@ _Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **peerID**: _string_ -_Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L760)_ +_Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L760)_ --- @@ -1857,7 +1857,7 @@ _Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **pubSubTopic**: _string_ -_Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L757)_ +_Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L757)_ --- @@ -1865,7 +1865,7 @@ _Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **rendezvous**: _string_ -_Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L758)_ +_Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L758)_ --- @@ -1873,7 +1873,7 @@ _Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **secondaryRendezvous**: _string[]_ -_Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L759)_ +_Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L759)_ --- @@ -1881,7 +1881,7 @@ _Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **startOfCurrentUTCDay**: _Date_ -_Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L768)_ +_Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L768)_ --- @@ -1889,7 +1889,7 @@ _Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **version**: _string_ -_Defined in [types.ts:756](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L756)_ +_Defined in [types.ts:756](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L756)_
@@ -1907,7 +1907,7 @@ Indicates which orders where accepted, which were rejected, and why. • **accepted**: _[AcceptedOrderInfo](#interface-acceptedorderinfo)[]_ -_Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L683)_ +_Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L683)_ --- @@ -1915,7 +1915,7 @@ _Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **rejected**: _[RejectedOrderInfo](#interface-rejectedorderinfo)[]_ -_Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L684)_ +_Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L684)_
@@ -1931,7 +1931,7 @@ _Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L489)_ +_Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L489)_ --- @@ -1939,7 +1939,7 @@ _Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L490)_ +_Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L490)_
@@ -1955,7 +1955,7 @@ _Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L478)_ +_Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L478)_ --- @@ -1963,7 +1963,7 @@ _Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:479](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L479)_ +_Defined in [types.ts:479](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L479)_
@@ -1973,7 +1973,7 @@ _Defined in [types.ts:479](https://github.com/0xProject/0x-mesh/blob/e7737277/pa ▸ **loadMeshStreamingWithURLAsync**(`url`: `string`): _Promise‹`void`›_ -_Defined in [index.ts:7](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/index.ts#L7)_ +_Defined in [index.ts:7](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/index.ts#L7)_ Loads the Wasm module that is provided by fetching a url. @@ -1989,7 +1989,7 @@ Loads the Wasm module that is provided by fetching a url. ▸ **loadMeshStreamingAsync**(`response`: `Response | Promise`): _Promise‹`void`›_ -_Defined in [index.ts:15](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/index.ts#L15)_ +_Defined in [index.ts:15](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/index.ts#L15)_ Loads the Wasm module that is provided by a response. diff --git a/docs/browser-bindings/browser/README.md b/docs/browser-bindings/browser/README.md index a64701749..204c9940b 100644 --- a/docs/browser-bindings/browser/README.md +++ b/docs/browser-bindings/browser/README.md @@ -1,4 +1,4 @@ -# @0x/mesh-browser - v10.0.0 +# @0x/mesh-browser - v10.1.0 ## @0x/mesh-browser diff --git a/docs/browser-bindings/browser/reference.md b/docs/browser-bindings/browser/reference.md index 9c4386df4..01785adcf 100644 --- a/docs/browser-bindings/browser/reference.md +++ b/docs/browser-bindings/browser/reference.md @@ -13,7 +13,7 @@ sending orders through the 0x Mesh network. \+ **new Mesh**(`config`: [Config](#interface-config)): _[Mesh](#class-mesh)_ -_Defined in [mesh.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L132)_ +_Defined in [mesh.ts:132](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L132)_ Instantiates a new Mesh instance. @@ -33,7 +33,7 @@ An instance of Mesh • **wrapper**? : _MeshWrapper_ -_Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L129)_ +_Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L129)_ ### Methods @@ -41,7 +41,7 @@ _Defined in [mesh.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/pac ▸ **addOrdersAsync**(`orders`: SignedOrder[], `pinned`: boolean): _Promise‹[ValidationResults](#interface-validationresults)›_ -_Defined in [mesh.ts:269](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L269)_ +_Defined in [mesh.ts:269](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L269)_ Validates and adds the given orders to Mesh. If an order is successfully added, Mesh will share it with any peers in the network and start @@ -68,7 +68,7 @@ were accepted and which were rejected. ▸ **getOrdersAsync**(`perPage`: number): _Promise‹[GetOrdersResponse](#interface-getordersresponse)›_ -_Defined in [mesh.ts:207](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L207)_ +_Defined in [mesh.ts:207](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L207)_ Get all 0x signed orders currently stored in the Mesh node @@ -88,7 +88,7 @@ the snapshotID, snapshotTimestamp and all orders, their hashes and fillableTaker ▸ **getOrdersForPageAsync**(`perPage`: number, `minOrderHash?`: undefined | string): _Promise‹[GetOrdersResponse](#interface-getordersresponse)›_ -_Defined in [mesh.ts:240](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L240)_ +_Defined in [mesh.ts:240](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L240)_ Get page of 0x signed orders stored on the Mesh node at the specified snapshot @@ -109,7 +109,7 @@ Up to perPage orders with hash greater than minOrderHash, including order hashes ▸ **getStatsAsync**(): _Promise‹[Stats](#interface-stats)›_ -_Defined in [mesh.ts:190](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L190)_ +_Defined in [mesh.ts:190](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L190)_ Returns various stats about Mesh, including the total number of orders and the number of peers Mesh is connected to. @@ -122,7 +122,7 @@ and the number of peers Mesh is connected to. ▸ **onError**(`handler`: function): _void_ -_Defined in [mesh.ts:152](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L152)_ +_Defined in [mesh.ts:152](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L152)_ Registers a handler which will be called in the event of a critical error. Note that the handler will not be called for non-critical errors. @@ -151,7 +151,7 @@ The handler to be called. ▸ **onOrderEvents**(`handler`: function): _void_ -_Defined in [mesh.ts:165](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L165)_ +_Defined in [mesh.ts:165](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L165)_ Registers a handler which will be called for any incoming order events. Order events are fired whenver an order is added, canceled, expired, or @@ -180,7 +180,7 @@ The handler to be called. ▸ **startAsync**(): _Promise‹void›_ -_Defined in [mesh.ts:174](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/mesh.ts#L174)_ +_Defined in [mesh.ts:174](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/mesh.ts#L174)_ Starts the Mesh node in the background. Mesh will automatically find peers in the network and begin receiving orders from them. @@ -197,7 +197,7 @@ peers in the network and begin receiving orders from them. • **ERC1155ApprovalForAllEvent**: = "ERC1155ApprovalForAllEvent" -_Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L505)_ +_Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L505)_ --- @@ -205,7 +205,7 @@ _Defined in [types.ts:505](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC1155TransferBatchEvent**: = "ERC1155TransferBatchEvent" -_Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L507)_ +_Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L507)_ --- @@ -213,7 +213,7 @@ _Defined in [types.ts:507](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC1155TransferSingleEvent**: = "ERC1155TransferSingleEvent" -_Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L506)_ +_Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L506)_ --- @@ -221,7 +221,7 @@ _Defined in [types.ts:506](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC20ApprovalEvent**: = "ERC20ApprovalEvent" -_Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L501)_ +_Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L501)_ --- @@ -229,7 +229,7 @@ _Defined in [types.ts:501](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC20TransferEvent**: = "ERC20TransferEvent" -_Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L500)_ +_Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L500)_ --- @@ -237,7 +237,7 @@ _Defined in [types.ts:500](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721ApprovalEvent**: = "ERC721ApprovalEvent" -_Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L503)_ +_Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L503)_ --- @@ -245,7 +245,7 @@ _Defined in [types.ts:503](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721ApprovalForAllEvent**: = "ERC721ApprovalForAllEvent" -_Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L504)_ +_Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L504)_ --- @@ -253,7 +253,7 @@ _Defined in [types.ts:504](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ERC721TransferEvent**: = "ERC721TransferEvent" -_Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L502)_ +_Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L502)_ --- @@ -261,7 +261,7 @@ _Defined in [types.ts:502](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeCancelEvent**: = "ExchangeCancelEvent" -_Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L509)_ +_Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L509)_ --- @@ -269,7 +269,7 @@ _Defined in [types.ts:509](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeCancelUpToEvent**: = "ExchangeCancelUpToEvent" -_Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L510)_ +_Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L510)_ --- @@ -277,7 +277,7 @@ _Defined in [types.ts:510](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ExchangeFillEvent**: = "ExchangeFillEvent" -_Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L508)_ +_Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L508)_ --- @@ -285,7 +285,7 @@ _Defined in [types.ts:508](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **WethDepositEvent**: = "WethDepositEvent" -_Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L511)_ +_Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L511)_ --- @@ -293,7 +293,7 @@ _Defined in [types.ts:511](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **WethWithdrawalEvent**: = "WethWithdrawalEvent" -_Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L512)_ +_Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L512)_
@@ -305,7 +305,7 @@ _Defined in [types.ts:512](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Added**: = "ADDED" -_Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L575)_ +_Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L575)_ --- @@ -313,7 +313,7 @@ _Defined in [types.ts:575](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Cancelled**: = "CANCELLED" -_Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L578)_ +_Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L578)_ --- @@ -321,7 +321,7 @@ _Defined in [types.ts:578](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Expired**: = "EXPIRED" -_Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L579)_ +_Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L579)_ --- @@ -329,7 +329,7 @@ _Defined in [types.ts:579](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **FillabilityIncreased**: = "FILLABILITY_INCREASED" -_Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L582)_ +_Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L582)_ --- @@ -337,7 +337,7 @@ _Defined in [types.ts:582](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Filled**: = "FILLED" -_Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L576)_ +_Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L576)_ --- @@ -345,7 +345,7 @@ _Defined in [types.ts:576](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **FullyFilled**: = "FULLY_FILLED" -_Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L577)_ +_Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L577)_ --- @@ -353,7 +353,7 @@ _Defined in [types.ts:577](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Invalid**: = "INVALID" -_Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L574)_ +_Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L574)_ --- @@ -361,7 +361,7 @@ _Defined in [types.ts:574](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **StoppedWatching**: = "STOPPED_WATCHING" -_Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L583)_ +_Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L583)_ --- @@ -369,7 +369,7 @@ _Defined in [types.ts:583](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Unexpired**: = "UNEXPIRED" -_Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L580)_ +_Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L580)_ --- @@ -377,7 +377,7 @@ _Defined in [types.ts:580](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Unfunded**: = "UNFUNDED" -_Defined in [types.ts:581](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L581)_ +_Defined in [types.ts:581](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L581)_
@@ -391,7 +391,7 @@ A set of categories for rejected orders. • **MeshError**: = "MESH_ERROR" -_Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L713)_ +_Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L713)_ --- @@ -399,7 +399,7 @@ _Defined in [types.ts:713](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **MeshValidation**: = "MESH_VALIDATION" -_Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L714)_ +_Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L714)_ --- @@ -407,7 +407,7 @@ _Defined in [types.ts:714](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ZeroExValidation**: = "ZEROEX_VALIDATION" -_Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L712)_ +_Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L712)_
@@ -419,7 +419,7 @@ _Defined in [types.ts:712](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Debug**: = 5 -_Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L238)_ +_Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L238)_ --- @@ -427,7 +427,7 @@ _Defined in [types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Error**: = 2 -_Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L235)_ +_Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L235)_ --- @@ -435,7 +435,7 @@ _Defined in [types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Fatal**: = 1 -_Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L234)_ +_Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L234)_ --- @@ -443,7 +443,7 @@ _Defined in [types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Info**: = 4 -_Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L237)_ +_Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L237)_ --- @@ -451,7 +451,7 @@ _Defined in [types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Panic**: = 0 -_Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L233)_ +_Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L233)_ --- @@ -459,7 +459,7 @@ _Defined in [types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Trace**: = 6 -_Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L239)_ +_Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L239)_ --- @@ -467,7 +467,7 @@ _Defined in [types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **Warn**: = 3 -_Defined in [types.ts:236](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L236)_ +_Defined in [types.ts:236](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L236)_
@@ -485,7 +485,7 @@ Info for any orders that were accepted. • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L693)_ +_Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L693)_ --- @@ -493,7 +493,7 @@ _Defined in [types.ts:693](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **isNew**: _boolean_ -_Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L694)_ +_Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L694)_ --- @@ -501,7 +501,7 @@ _Defined in [types.ts:694](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L691)_ +_Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L691)_ --- @@ -509,7 +509,7 @@ _Defined in [types.ts:691](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:692](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L692)_ +_Defined in [types.ts:692](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L692)_
@@ -527,7 +527,7 @@ A set of configuration options for Mesh. • **blockPollingIntervalSeconds**? : _undefined | number_ -_Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L144)_ +_Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L144)_ --- @@ -535,7 +535,7 @@ _Defined in [types.ts:144](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **bootstrapList**? : _string[]_ -_Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L137)_ +_Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L137)_ --- @@ -543,7 +543,7 @@ _Defined in [types.ts:137](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **customContractAddresses**? : _[ContractAddresses](#interface-contractaddresses)_ -_Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L188)_ +_Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L188)_ --- @@ -551,7 +551,7 @@ _Defined in [types.ts:188](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **customOrderFilter**? : _[JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L213)_ +_Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L213)_ --- @@ -559,7 +559,7 @@ _Defined in [types.ts:213](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **enableEthereumRPCRateLimiting**? : _undefined | false | true_ -_Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L161)_ +_Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L161)_ --- @@ -567,7 +567,7 @@ _Defined in [types.ts:161](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumChainID**: _number_ -_Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L129)_ +_Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L129)_ --- @@ -575,7 +575,7 @@ _Defined in [types.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxContentLength**? : _undefined | number_ -_Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L153)_ +_Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L153)_ --- @@ -583,7 +583,7 @@ _Defined in [types.ts:153](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxRequestsPer24HrUTC**? : _undefined | number_ -_Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L166)_ +_Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L166)_ --- @@ -591,7 +591,7 @@ _Defined in [types.ts:166](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCMaxRequestsPerSecond**? : _undefined | number_ -_Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L172)_ +_Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L172)_ --- @@ -599,7 +599,7 @@ _Defined in [types.ts:172](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumRPCURL**? : _undefined | string_ -_Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L126)_ +_Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L126)_ --- @@ -607,7 +607,7 @@ _Defined in [types.ts:126](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxBytesPerSecond**? : _undefined | number_ -_Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L219)_ +_Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L219)_ --- @@ -615,7 +615,7 @@ _Defined in [types.ts:219](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxOrdersInStorage**? : _undefined | number_ -_Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L193)_ +_Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L193)_ --- @@ -623,7 +623,7 @@ _Defined in [types.ts:193](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **useBootstrapList**? : _undefined | false | true_ -_Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L132)_ +_Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L132)_ --- @@ -631,7 +631,7 @@ _Defined in [types.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **verbosity**? : _[Verbosity](#enumeration-verbosity)_ -_Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L123)_ +_Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L123)_ --- @@ -639,7 +639,7 @@ _Defined in [types.ts:123](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **web3Provider**? : _SupportedProvider_ -_Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L216)_ +_Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L216)_
@@ -655,7 +655,7 @@ _Defined in [types.ts:216](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **devUtils**: _string_ -_Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L224)_ +_Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L224)_ --- @@ -663,7 +663,7 @@ _Defined in [types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc1155Proxy**: _string_ -_Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L227)_ +_Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L227)_ --- @@ -671,7 +671,7 @@ _Defined in [types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc20Proxy**: _string_ -_Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L225)_ +_Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L225)_ --- @@ -679,7 +679,7 @@ _Defined in [types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **erc721Proxy**: _string_ -_Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L226)_ +_Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L226)_ --- @@ -687,7 +687,7 @@ _Defined in [types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **exchange**: _string_ -_Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L223)_ +_Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L223)_ --- @@ -695,7 +695,7 @@ _Defined in [types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **weth9**? : _undefined | string_ -_Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L228)_ +_Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L228)_ --- @@ -703,7 +703,7 @@ _Defined in [types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **zrxToken**? : _undefined | string_ -_Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L229)_ +_Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L229)_
@@ -719,7 +719,7 @@ _Defined in [types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **address**: _string_ -_Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L553)_ +_Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L553)_ --- @@ -727,7 +727,7 @@ _Defined in [types.ts:553](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **blockHash**: _string_ -_Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L548)_ +_Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L548)_ --- @@ -735,7 +735,7 @@ _Defined in [types.ts:548](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **isRemoved**: _boolean_ -_Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L552)_ +_Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L552)_ --- @@ -743,7 +743,7 @@ _Defined in [types.ts:552](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **kind**: _[ContractEventKind](#enumeration-contracteventkind)_ -_Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L554)_ +_Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L554)_ --- @@ -751,7 +751,7 @@ _Defined in [types.ts:554](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **logIndex**: _number_ -_Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L551)_ +_Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L551)_ --- @@ -759,7 +759,7 @@ _Defined in [types.ts:551](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **parameters**: _ContractEventParameters_ -_Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L555)_ +_Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L555)_ --- @@ -767,7 +767,7 @@ _Defined in [types.ts:555](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **txHash**: _string_ -_Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L549)_ +_Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L549)_ --- @@ -775,7 +775,7 @@ _Defined in [types.ts:549](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **txIndex**: _number_ -_Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L550)_ +_Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L550)_
@@ -791,7 +791,7 @@ _Defined in [types.ts:550](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _boolean_ -_Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L417)_ +_Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L417)_ --- @@ -799,7 +799,7 @@ _Defined in [types.ts:417](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L416)_ +_Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L416)_ --- @@ -807,7 +807,7 @@ _Defined in [types.ts:416](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L415)_ +_Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L415)_
@@ -823,7 +823,7 @@ _Defined in [types.ts:415](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L399)_ +_Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L399)_ --- @@ -831,7 +831,7 @@ _Defined in [types.ts:399](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ids**: _BigNumber[]_ -_Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L401)_ +_Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L401)_ --- @@ -839,7 +839,7 @@ _Defined in [types.ts:401](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L398)_ +_Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L398)_ --- @@ -847,7 +847,7 @@ _Defined in [types.ts:398](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L400)_ +_Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L400)_ --- @@ -855,7 +855,7 @@ _Defined in [types.ts:400](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **values**: _BigNumber[]_ -_Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L402)_ +_Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L402)_
@@ -871,7 +871,7 @@ _Defined in [types.ts:402](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L382)_ +_Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L382)_ --- @@ -879,7 +879,7 @@ _Defined in [types.ts:382](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **id**: _BigNumber_ -_Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L384)_ +_Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L384)_ --- @@ -887,7 +887,7 @@ _Defined in [types.ts:384](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L381)_ +_Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L381)_ --- @@ -895,7 +895,7 @@ _Defined in [types.ts:381](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L383)_ +_Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L383)_ --- @@ -903,7 +903,7 @@ _Defined in [types.ts:383](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L385)_ +_Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L385)_
@@ -919,7 +919,7 @@ _Defined in [types.ts:385](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L336)_ +_Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L336)_ --- @@ -927,7 +927,7 @@ _Defined in [types.ts:336](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **spender**: _string_ -_Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L337)_ +_Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L337)_ --- @@ -935,7 +935,7 @@ _Defined in [types.ts:337](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L338)_ +_Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L338)_
@@ -951,7 +951,7 @@ _Defined in [types.ts:338](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L323)_ +_Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L323)_ --- @@ -959,7 +959,7 @@ _Defined in [types.ts:323](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L324)_ +_Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L324)_ --- @@ -967,7 +967,7 @@ _Defined in [types.ts:324](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L325)_ +_Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L325)_
@@ -983,7 +983,7 @@ _Defined in [types.ts:325](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _string_ -_Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L363)_ +_Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L363)_ --- @@ -991,7 +991,7 @@ _Defined in [types.ts:363](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L362)_ +_Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L362)_ --- @@ -999,7 +999,7 @@ _Defined in [types.ts:362](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **tokenId**: _BigNumber_ -_Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L364)_ +_Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L364)_
@@ -1015,7 +1015,7 @@ _Defined in [types.ts:364](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **approved**: _boolean_ -_Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L377)_ +_Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L377)_ --- @@ -1023,7 +1023,7 @@ _Defined in [types.ts:377](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **operator**: _string_ -_Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L376)_ +_Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L376)_ --- @@ -1031,7 +1031,7 @@ _Defined in [types.ts:376](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L375)_ +_Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L375)_
@@ -1047,7 +1047,7 @@ _Defined in [types.ts:375](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **from**: _string_ -_Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L349)_ +_Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L349)_ --- @@ -1055,7 +1055,7 @@ _Defined in [types.ts:349](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **to**: _string_ -_Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L350)_ +_Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L350)_ --- @@ -1063,7 +1063,7 @@ _Defined in [types.ts:350](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **tokenId**: _BigNumber_ -_Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L351)_ +_Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L351)_
@@ -1079,7 +1079,7 @@ _Defined in [types.ts:351](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **feeRecipientAddress**: _string_ -_Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L458)_ +_Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L458)_ --- @@ -1087,7 +1087,7 @@ _Defined in [types.ts:458](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L456)_ +_Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L456)_ --- @@ -1095,7 +1095,7 @@ _Defined in [types.ts:456](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetData**: _string_ -_Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L460)_ +_Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L460)_ --- @@ -1103,7 +1103,7 @@ _Defined in [types.ts:460](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L459)_ +_Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L459)_ --- @@ -1111,7 +1111,7 @@ _Defined in [types.ts:459](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **senderAddress**: _string_ -_Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L457)_ +_Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L457)_ --- @@ -1119,7 +1119,7 @@ _Defined in [types.ts:457](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetData**: _string_ -_Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L461)_ +_Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L461)_
@@ -1135,7 +1135,7 @@ _Defined in [types.ts:461](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L465)_ +_Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L465)_ --- @@ -1143,7 +1143,7 @@ _Defined in [types.ts:465](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderEpoch**: _BigNumber_ -_Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L467)_ +_Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L467)_ --- @@ -1151,7 +1151,7 @@ _Defined in [types.ts:467](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderSenderAddress**: _string_ -_Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L466)_ +_Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L466)_
@@ -1167,7 +1167,7 @@ _Defined in [types.ts:466](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **feeRecipientAddress**: _string_ -_Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L424)_ +_Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L424)_ --- @@ -1175,7 +1175,7 @@ _Defined in [types.ts:424](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAddress**: _string_ -_Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L421)_ +_Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L421)_ --- @@ -1183,7 +1183,7 @@ _Defined in [types.ts:421](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetData**: _string_ -_Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L431)_ +_Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L431)_ --- @@ -1191,7 +1191,7 @@ _Defined in [types.ts:431](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerAssetFilledAmount**: _BigNumber_ -_Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L425)_ +_Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L425)_ --- @@ -1199,7 +1199,7 @@ _Defined in [types.ts:425](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerFeeAssetData**: _string_ -_Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L433)_ +_Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L433)_ --- @@ -1207,7 +1207,7 @@ _Defined in [types.ts:433](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **makerFeePaid**: _BigNumber_ -_Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L427)_ +_Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L427)_ --- @@ -1215,7 +1215,7 @@ _Defined in [types.ts:427](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L430)_ +_Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L430)_ --- @@ -1223,7 +1223,7 @@ _Defined in [types.ts:430](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **protocolFeePaid**: _BigNumber_ -_Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L429)_ +_Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L429)_ --- @@ -1231,7 +1231,7 @@ _Defined in [types.ts:429](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **senderAddress**: _string_ -_Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L423)_ +_Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L423)_ --- @@ -1239,7 +1239,7 @@ _Defined in [types.ts:423](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAddress**: _string_ -_Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L422)_ +_Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L422)_ --- @@ -1247,7 +1247,7 @@ _Defined in [types.ts:422](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetData**: _string_ -_Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L432)_ +_Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L432)_ --- @@ -1255,7 +1255,7 @@ _Defined in [types.ts:432](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerAssetFilledAmount**: _BigNumber_ -_Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L426)_ +_Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L426)_ --- @@ -1263,7 +1263,7 @@ _Defined in [types.ts:426](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerFeeAssetData**: _string_ -_Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L434)_ +_Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L434)_ --- @@ -1271,7 +1271,7 @@ _Defined in [types.ts:434](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **takerFeePaid**: _BigNumber_ -_Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L428)_ +_Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L428)_
@@ -1287,7 +1287,7 @@ _Defined in [types.ts:428](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ordersInfos**: _[OrderInfo](#interface-orderinfo)[]_ -_Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L45)_ +_Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L45)_ --- @@ -1295,7 +1295,7 @@ _Defined in [types.ts:45](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **timestamp**: _number_ -_Defined in [types.ts:44](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L44)_ +_Defined in [types.ts:44](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L44)_
@@ -1313,7 +1313,7 @@ An interface for JSON schema types, which are used for custom order filters. • **\$ref**? : _undefined | string_ -_Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L67)_ +_Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L67)_ --- @@ -1321,7 +1321,7 @@ _Defined in [types.ts:67](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **\$schema**? : _undefined | string_ -_Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L66)_ +_Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L66)_ --- @@ -1329,7 +1329,7 @@ _Defined in [types.ts:66](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **additionalItems**? : _boolean | [JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L78)_ +_Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L78)_ --- @@ -1337,7 +1337,7 @@ _Defined in [types.ts:78](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **additionalProperties**? : _boolean | [JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L86)_ +_Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L86)_ --- @@ -1345,7 +1345,7 @@ _Defined in [types.ts:86](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **allOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L108)_ +_Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L108)_ --- @@ -1353,7 +1353,7 @@ _Defined in [types.ts:108](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **anyOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L109)_ +_Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L109)_ --- @@ -1361,7 +1361,7 @@ _Defined in [types.ts:109](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **const**? : _any_ -_Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L105)_ +_Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L105)_ --- @@ -1369,7 +1369,7 @@ _Defined in [types.ts:105](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **definitions**? : _undefined | object_ -_Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L87)_ +_Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L87)_ --- @@ -1377,7 +1377,7 @@ _Defined in [types.ts:87](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **dependencies**? : _undefined | object_ -_Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L96)_ +_Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L96)_ --- @@ -1385,7 +1385,7 @@ _Defined in [types.ts:96](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **description**? : _undefined | string_ -_Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L69)_ +_Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L69)_ --- @@ -1393,7 +1393,7 @@ _Defined in [types.ts:69](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **enum**? : _any[]_ -_Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L99)_ +_Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L99)_ --- @@ -1401,7 +1401,7 @@ _Defined in [types.ts:99](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **exclusiveMaximum**? : _undefined | false | true_ -_Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L72)_ +_Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L72)_ --- @@ -1409,7 +1409,7 @@ _Defined in [types.ts:72](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **exclusiveMinimum**? : _undefined | false | true_ -_Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L74)_ +_Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L74)_ --- @@ -1417,7 +1417,7 @@ _Defined in [types.ts:74](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **format**? : _undefined | string_ -_Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L107)_ +_Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L107)_ --- @@ -1425,7 +1425,7 @@ _Defined in [types.ts:107](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **id**? : _undefined | string_ -_Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L65)_ +_Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L65)_ --- @@ -1433,7 +1433,7 @@ _Defined in [types.ts:65](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **items**? : _[JsonSchema](#interface-jsonschema) | [JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L79)_ +_Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L79)_ --- @@ -1441,7 +1441,7 @@ _Defined in [types.ts:79](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxItems**? : _undefined | number_ -_Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L80)_ +_Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L80)_ --- @@ -1449,7 +1449,7 @@ _Defined in [types.ts:80](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxLength**? : _undefined | number_ -_Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L75)_ +_Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L75)_ --- @@ -1457,7 +1457,7 @@ _Defined in [types.ts:75](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maxProperties**? : _undefined | number_ -_Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L83)_ +_Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L83)_ --- @@ -1465,7 +1465,7 @@ _Defined in [types.ts:83](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **maximum**? : _undefined | number_ -_Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L71)_ +_Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L71)_ --- @@ -1473,7 +1473,7 @@ _Defined in [types.ts:71](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minItems**? : _undefined | number_ -_Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L81)_ +_Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L81)_ --- @@ -1481,7 +1481,7 @@ _Defined in [types.ts:81](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minLength**? : _undefined | number_ -_Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L76)_ +_Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L76)_ --- @@ -1489,7 +1489,7 @@ _Defined in [types.ts:76](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minProperties**? : _undefined | number_ -_Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L84)_ +_Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L84)_ --- @@ -1497,7 +1497,7 @@ _Defined in [types.ts:84](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **minimum**? : _undefined | number_ -_Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L73)_ +_Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L73)_ --- @@ -1505,7 +1505,7 @@ _Defined in [types.ts:73](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **multipleOf**? : _undefined | number_ -_Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L70)_ +_Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L70)_ --- @@ -1513,7 +1513,7 @@ _Defined in [types.ts:70](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **not**? : _[JsonSchema](#interface-jsonschema)_ -_Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L111)_ +_Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L111)_ --- @@ -1521,7 +1521,7 @@ _Defined in [types.ts:111](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **oneOf**? : _[JsonSchema](#interface-jsonschema)[]_ -_Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L110)_ +_Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L110)_ --- @@ -1529,7 +1529,7 @@ _Defined in [types.ts:110](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **pattern**? : _string | RegExp_ -_Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L77)_ +_Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L77)_ --- @@ -1537,7 +1537,7 @@ _Defined in [types.ts:77](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **patternProperties**? : _undefined | object_ -_Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L93)_ +_Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L93)_ --- @@ -1545,7 +1545,7 @@ _Defined in [types.ts:93](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **properties**? : _undefined | object_ -_Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L90)_ +_Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L90)_ --- @@ -1553,7 +1553,7 @@ _Defined in [types.ts:90](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **required**? : _string[]_ -_Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L85)_ +_Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L85)_ --- @@ -1561,7 +1561,7 @@ _Defined in [types.ts:85](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **title**? : _undefined | string_ -_Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L68)_ +_Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L68)_ --- @@ -1569,7 +1569,7 @@ _Defined in [types.ts:68](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **type**? : _string | string[]_ -_Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L106)_ +_Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L106)_ --- @@ -1577,7 +1577,7 @@ _Defined in [types.ts:106](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **uniqueItems**? : _undefined | false | true_ -_Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L82)_ +_Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L82)_
@@ -1593,7 +1593,7 @@ _Defined in [types.ts:82](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **hash**: _string_ -_Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L733)_ +_Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L733)_ --- @@ -1601,7 +1601,7 @@ _Defined in [types.ts:733](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **number**: _BigNumber_ -_Defined in [types.ts:732](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L732)_ +_Defined in [types.ts:732](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L732)_
@@ -1620,7 +1620,7 @@ or filled. • **contractEvents**: _[ContractEvent](#interface-contractevent)[]_ -_Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L606)_ +_Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L606)_ --- @@ -1628,7 +1628,7 @@ _Defined in [types.ts:606](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **endState**: _[OrderEventEndState](#enumeration-ordereventendstate)_ -_Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L604)_ +_Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L604)_ --- @@ -1636,7 +1636,7 @@ _Defined in [types.ts:604](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L605)_ +_Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L605)_ --- @@ -1644,7 +1644,7 @@ _Defined in [types.ts:605](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L602)_ +_Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L602)_ --- @@ -1652,7 +1652,7 @@ _Defined in [types.ts:602](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L603)_ +_Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L603)_ --- @@ -1660,7 +1660,7 @@ _Defined in [types.ts:603](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **timestampMs**: _number_ -_Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L601)_ +_Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L601)_
@@ -1676,7 +1676,7 @@ _Defined in [types.ts:601](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L58)_ +_Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L58)_ --- @@ -1684,7 +1684,7 @@ _Defined in [types.ts:58](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **orderHash**: _string_ -_Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L56)_ +_Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L56)_ --- @@ -1692,7 +1692,7 @@ _Defined in [types.ts:56](https://github.com/0xProject/0x-mesh/blob/e7737277/pac • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:57](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L57)_ +_Defined in [types.ts:57](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L57)_
@@ -1711,7 +1711,7 @@ rejected. • **kind**: _[RejectedOrderKind](#enumeration-rejectedorderkind)_ -_Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L704)_ +_Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L704)_ --- @@ -1719,7 +1719,7 @@ _Defined in [types.ts:704](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **orderHash**: _string_ -_Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L702)_ +_Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L702)_ --- @@ -1727,7 +1727,7 @@ _Defined in [types.ts:702](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **signedOrder**: _SignedOrder_ -_Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L703)_ +_Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L703)_ --- @@ -1735,7 +1735,7 @@ _Defined in [types.ts:703](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **status**: _[RejectedOrderStatus](#interface-rejectedorderstatus)_ -_Defined in [types.ts:705](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L705)_ +_Defined in [types.ts:705](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L705)_
@@ -1753,7 +1753,7 @@ Provides more information about why an order was rejected. • **code**: _string_ -_Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L721)_ +_Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L721)_ --- @@ -1761,7 +1761,7 @@ _Defined in [types.ts:721](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **message**: _string_ -_Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L722)_ +_Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L722)_
@@ -1777,7 +1777,7 @@ _Defined in [types.ts:722](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethRPCRateLimitExpiredRequests**: _number_ -_Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L770)_ +_Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L770)_ --- @@ -1785,7 +1785,7 @@ _Defined in [types.ts:770](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethRPCRequestsSentInCurrentUTCDay**: _number_ -_Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L769)_ +_Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L769)_ --- @@ -1793,7 +1793,7 @@ _Defined in [types.ts:769](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **ethereumChainID**: _number_ -_Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L761)_ +_Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L761)_ --- @@ -1801,7 +1801,7 @@ _Defined in [types.ts:761](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **latestBlock**? : _[LatestBlock](#interface-latestblock)_ -_Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L762)_ +_Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L762)_ --- @@ -1809,7 +1809,7 @@ _Defined in [types.ts:762](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **maxExpirationTime**: _BigNumber_ -_Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L767)_ +_Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L767)_ --- @@ -1817,7 +1817,7 @@ _Defined in [types.ts:767](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numOrders**: _number_ -_Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L764)_ +_Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L764)_ --- @@ -1825,7 +1825,7 @@ _Defined in [types.ts:764](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numOrdersIncludingRemoved**: _number_ -_Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L765)_ +_Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L765)_ --- @@ -1833,7 +1833,7 @@ _Defined in [types.ts:765](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numPeers**: _number_ -_Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L763)_ +_Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L763)_ --- @@ -1841,7 +1841,7 @@ _Defined in [types.ts:763](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **numPinnedOrders**: _number_ -_Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L766)_ +_Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L766)_ --- @@ -1849,7 +1849,7 @@ _Defined in [types.ts:766](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **peerID**: _string_ -_Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L760)_ +_Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L760)_ --- @@ -1857,7 +1857,7 @@ _Defined in [types.ts:760](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **pubSubTopic**: _string_ -_Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L757)_ +_Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L757)_ --- @@ -1865,7 +1865,7 @@ _Defined in [types.ts:757](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **rendezvous**: _string_ -_Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L758)_ +_Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L758)_ --- @@ -1873,7 +1873,7 @@ _Defined in [types.ts:758](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **secondaryRendezvous**: _string[]_ -_Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L759)_ +_Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L759)_ --- @@ -1881,7 +1881,7 @@ _Defined in [types.ts:759](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **startOfCurrentUTCDay**: _Date_ -_Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L768)_ +_Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L768)_ --- @@ -1889,7 +1889,7 @@ _Defined in [types.ts:768](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **version**: _string_ -_Defined in [types.ts:756](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L756)_ +_Defined in [types.ts:756](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L756)_
@@ -1907,7 +1907,7 @@ Indicates which orders where accepted, which were rejected, and why. • **accepted**: _[AcceptedOrderInfo](#interface-acceptedorderinfo)[]_ -_Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L683)_ +_Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L683)_ --- @@ -1915,7 +1915,7 @@ _Defined in [types.ts:683](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **rejected**: _[RejectedOrderInfo](#interface-rejectedorderinfo)[]_ -_Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L684)_ +_Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L684)_
@@ -1931,7 +1931,7 @@ _Defined in [types.ts:684](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L489)_ +_Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L489)_ --- @@ -1939,7 +1939,7 @@ _Defined in [types.ts:489](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L490)_ +_Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L490)_
@@ -1955,7 +1955,7 @@ _Defined in [types.ts:490](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **owner**: _string_ -_Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L478)_ +_Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L478)_ --- @@ -1963,6 +1963,6 @@ _Defined in [types.ts:478](https://github.com/0xProject/0x-mesh/blob/e7737277/pa • **value**: _BigNumber_ -_Defined in [types.ts:479](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-browser-lite/src/types.ts#L479)_ +_Defined in [types.ts:479](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-browser-lite/src/types.ts#L479)_
diff --git a/docs/deployment.md b/docs/deployment.md index 9ffb9a9f9..571fe4d0c 100644 --- a/docs/deployment.md +++ b/docs/deployment.md @@ -1,4 +1,4 @@ -[![Version](https://img.shields.io/badge/version-10.0.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) +[![Version](https://img.shields.io/badge/version-10.1.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) # 0x Mesh Deployment Guide diff --git a/docs/deployment_with_telemetry.md b/docs/deployment_with_telemetry.md index 3d2b5e995..d41290458 100644 --- a/docs/deployment_with_telemetry.md +++ b/docs/deployment_with_telemetry.md @@ -1,4 +1,4 @@ -[![Version](https://img.shields.io/badge/version-10.0.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) +[![Version](https://img.shields.io/badge/version-10.1.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) ## Deploying a Telemetry-Enabled Mesh Node diff --git a/docs/graphql-client/README.md b/docs/graphql-client/README.md index 49fddd12b..eae869b18 100644 --- a/docs/graphql-client/README.md +++ b/docs/graphql-client/README.md @@ -1,4 +1,4 @@ -# @0x/mesh-graphql-client - v10.0.0 +# @0x/mesh-graphql-client - v10.1.0 ## @0x/mesh-graphql-client diff --git a/docs/graphql-client/reference.md b/docs/graphql-client/reference.md index 8fa87777d..472f16e34 100644 --- a/docs/graphql-client/reference.md +++ b/docs/graphql-client/reference.md @@ -14,7 +14,7 @@ _Overrides void_ -_Defined in [packages/mesh-graphql-client/src/browser_link.ts:7](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/browser_link.ts#L7)_ +_Defined in [packages/mesh-graphql-client/src/browser_link.ts:7](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/browser_link.ts#L7)_ **Parameters:** @@ -48,7 +48,7 @@ Defined in node_modules/@apollo/client/link/core/ApolloLink.d.ts:12 _Overrides void_ -_Defined in [packages/mesh-graphql-client/src/browser_link.ts:12](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/browser_link.ts#L12)_ +_Defined in [packages/mesh-graphql-client/src/browser_link.ts:12](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/browser_link.ts#L12)_ **Parameters:** @@ -206,7 +206,7 @@ Defined in node_modules/@apollo/client/link/core/ApolloLink.d.ts:7 \+ **new MeshGraphQLClient**(`linkConfig`: [LinkConfig](#interface-linkconfig)): _[MeshGraphQLClient](#class-meshgraphqlclient)_ -_Defined in [packages/mesh-graphql-client/src/index.ts:245](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L245)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:250](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L250)_ **Parameters:** @@ -220,16 +220,17 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:245](https://github.com/0 ## addOrdersAsync -▸ **addOrdersAsync**(`orders`: SignedOrder[], `pinned`: boolean): _Promise‹[AddOrdersResults](#interface-addordersresults)›_ +▸ **addOrdersAsync**(`orders`: SignedOrder[], `pinned`: boolean, `opts?`: [AddOrdersOpts](#interface-addordersopts)): _Promise‹[AddOrdersResults](#interface-addordersresults)›_ -_Defined in [packages/mesh-graphql-client/src/index.ts:330](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L330)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:335](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L335)_ **Parameters:** -| Name | Type | Default | -| -------- | ------------- | ------- | -| `orders` | SignedOrder[] | - | -| `pinned` | boolean | true | +| Name | Type | Default | +| -------- | ----------------------------------------- | ------- | +| `orders` | SignedOrder[] | - | +| `pinned` | boolean | true | +| `opts?` | [AddOrdersOpts](#interface-addordersopts) | - | **Returns:** _Promise‹[AddOrdersResults](#interface-addordersresults)›_ @@ -239,7 +240,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:330](https://github.com/0 ▸ **findOrdersAsync**(`query`: [OrderQuery](#interface-orderquery)): _Promise‹[OrderWithMetadata](#interface-orderwithmetadata)[]›_ -_Defined in [packages/mesh-graphql-client/src/index.ts:361](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L361)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:377](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L377)_ **Parameters:** @@ -255,7 +256,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:361](https://github.com/0 ▸ **getOrderAsync**(`hash`: string): _Promise‹[OrderWithMetadata](#interface-orderwithmetadata) | null›_ -_Defined in [packages/mesh-graphql-client/src/index.ts:345](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L345)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:361](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L361)_ **Parameters:** @@ -271,7 +272,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:345](https://github.com/0 ▸ **getStatsAsync**(): _Promise‹[Stats](#interface-stats)›_ -_Defined in [packages/mesh-graphql-client/src/index.ts:319](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L319)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:324](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L324)_ **Returns:** _Promise‹[Stats](#interface-stats)›_ @@ -281,7 +282,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:319](https://github.com/0 ▸ **onOrderEvents**(): _Observable‹[OrderEvent](#interface-orderevent)[]›_ -_Defined in [packages/mesh-graphql-client/src/index.ts:378](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L378)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:394](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L394)_ **Returns:** _Observable‹[OrderEvent](#interface-orderevent)[]›_ @@ -291,7 +292,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:378](https://github.com/0 ▸ **rawQueryAsync**<**T**, **TVariables**>(`options`: QueryOptions‹TVariables›): _Promise‹ApolloQueryResult‹T››_ -_Defined in [packages/mesh-graphql-client/src/index.ts:424](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L424)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:440](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L440)_ **Type parameters:** @@ -317,7 +318,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:424](https://github.com/0 • **ERC1155ApprovalForAllEvent**: = "ERC1155ApprovalForAllEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:130](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L130)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:137](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L137)_ --- @@ -325,7 +326,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:130](https://github.com/0 • **ERC1155TransferBatchEvent**: = "ERC1155TransferBatchEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:132](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L132)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:139](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L139)_ --- @@ -333,7 +334,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:132](https://github.com/0 • **ERC1155TransferSingleEvent**: = "ERC1155TransferSingleEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:131](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L131)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:138](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L138)_ --- @@ -341,7 +342,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:131](https://github.com/0 • **ERC20ApprovalEvent**: = "ERC20ApprovalEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:126](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L126)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:133](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L133)_ --- @@ -349,7 +350,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:126](https://github.com/0 • **ERC20TransferEvent**: = "ERC20TransferEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:125](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L125)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:132](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L132)_ --- @@ -357,7 +358,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:125](https://github.com/0 • **ERC721ApprovalEvent**: = "ERC721ApprovalEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:128](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L128)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:135](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L135)_ --- @@ -365,7 +366,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:128](https://github.com/0 • **ERC721ApprovalForAllEvent**: = "ERC721ApprovalForAllEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:129](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L129)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:136](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L136)_ --- @@ -373,7 +374,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:129](https://github.com/0 • **ERC721TransferEvent**: = "ERC721TransferEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:127](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L127)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:134](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L134)_ --- @@ -381,7 +382,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:127](https://github.com/0 • **ExchangeCancelEvent**: = "ExchangeCancelEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:134](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L134)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:141](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L141)_ --- @@ -389,7 +390,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:134](https://github.com/0 • **ExchangeCancelUpToEvent**: = "ExchangeCancelUpToEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:135](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L135)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:142](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L142)_ --- @@ -397,7 +398,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:135](https://github.com/0 • **ExchangeFillEvent**: = "ExchangeFillEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:133](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L133)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:140](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L140)_ --- @@ -405,7 +406,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:133](https://github.com/0 • **WethDepositEvent**: = "WethDepositEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:136](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L136)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:143](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L143)_ --- @@ -413,7 +414,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:136](https://github.com/0 • **WethWithdrawalEvent**: = "WethWithdrawalEvent" -_Defined in [packages/mesh-graphql-client/src/types.ts:137](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L137)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:144](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L144)_
@@ -425,7 +426,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:137](https://github.com/0 • **Equal**: = "EQUAL" -_Defined in [packages/mesh-graphql-client/src/types.ts:174](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L174)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:181](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L181)_ --- @@ -433,7 +434,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:174](https://github.com/0 • **Greater**: = "GREATER" -_Defined in [packages/mesh-graphql-client/src/types.ts:176](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L176)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:183](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L183)_ --- @@ -441,7 +442,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:176](https://github.com/0 • **GreaterOrEqual**: = "GREATER_OR_EQUAL" -_Defined in [packages/mesh-graphql-client/src/types.ts:177](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L177)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:184](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L184)_ --- @@ -449,7 +450,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:177](https://github.com/0 • **Less**: = "LESS" -_Defined in [packages/mesh-graphql-client/src/types.ts:178](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L178)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:185](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L185)_ --- @@ -457,7 +458,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:178](https://github.com/0 • **LessOrEqual**: = "LESS_OR_EQUAL" -_Defined in [packages/mesh-graphql-client/src/types.ts:179](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L179)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:186](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L186)_ --- @@ -465,7 +466,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:179](https://github.com/0 • **NotEqual**: = "NOT_EQUAL" -_Defined in [packages/mesh-graphql-client/src/types.ts:175](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L175)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:182](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L182)_
@@ -477,7 +478,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:175](https://github.com/0 • **Added**: = "ADDED" -_Defined in [packages/mesh-graphql-client/src/types.ts:143](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L143)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:150](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L150)_ --- @@ -485,7 +486,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:143](https://github.com/0 • **Cancelled**: = "CANCELLED" -_Defined in [packages/mesh-graphql-client/src/types.ts:149](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L149)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:156](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L156)_ --- @@ -493,7 +494,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:149](https://github.com/0 • **Expired**: = "EXPIRED" -_Defined in [packages/mesh-graphql-client/src/types.ts:151](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L151)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:158](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L158)_ --- @@ -501,7 +502,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:151](https://github.com/0 • **FillabilityIncreased**: = "FILLABILITY_INCREASED" -_Defined in [packages/mesh-graphql-client/src/types.ts:158](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L158)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:165](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L165)_ --- @@ -509,7 +510,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:158](https://github.com/0 • **Filled**: = "FILLED" -_Defined in [packages/mesh-graphql-client/src/types.ts:145](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L145)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:152](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L152)_ --- @@ -517,7 +518,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:145](https://github.com/0 • **FullyFilled**: = "FULLY_FILLED" -_Defined in [packages/mesh-graphql-client/src/types.ts:147](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L147)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:154](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L154)_ --- @@ -525,7 +526,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:147](https://github.com/0 • **StoppedWatching**: = "STOPPED_WATCHING" -_Defined in [packages/mesh-graphql-client/src/types.ts:163](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L163)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:170](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L170)_ --- @@ -533,7 +534,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:163](https://github.com/0 • **Unexpired**: = "UNEXPIRED" -_Defined in [packages/mesh-graphql-client/src/types.ts:153](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L153)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:160](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L160)_ --- @@ -541,7 +542,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:153](https://github.com/0 • **Unfunded**: = "UNFUNDED" -_Defined in [packages/mesh-graphql-client/src/types.ts:155](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L155)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:162](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L162)_
@@ -553,7 +554,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:155](https://github.com/0 • **DatabaseFullOfOrders**: = "DATABASE_FULL_OF_ORDERS" -_Defined in [packages/mesh-graphql-client/src/types.ts:102](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L102)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:109](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L109)_ --- @@ -561,7 +562,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:102](https://github.com/0 • **EthRpcRequestFailed**: = "ETH_RPC_REQUEST_FAILED" -_Defined in [packages/mesh-graphql-client/src/types.ts:83](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L83)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:90](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L90)_ --- @@ -569,7 +570,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:83](https://github.com/0x • **IncorrectExchangeAddress**: = "INCORRECT_EXCHANGE_ADDRESS" -_Defined in [packages/mesh-graphql-client/src/types.ts:100](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L100)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:107](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L107)_ --- @@ -577,7 +578,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:100](https://github.com/0 • **InternalError**: = "INTERNAL_ERROR" -_Defined in [packages/mesh-graphql-client/src/types.ts:96](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L96)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:103](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L103)_ --- @@ -585,7 +586,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:96](https://github.com/0x • **MaxOrderSizeExceeded**: = "MAX_ORDER_SIZE_EXCEEDED" -_Defined in [packages/mesh-graphql-client/src/types.ts:97](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L97)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:104](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L104)_ --- @@ -593,7 +594,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:97](https://github.com/0x • **OrderAlreadyStoredAndUnfillable**: = "ORDER_ALREADY_STORED_AND_UNFILLABLE" -_Defined in [packages/mesh-graphql-client/src/types.ts:98](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L98)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:105](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L105)_ --- @@ -601,7 +602,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:98](https://github.com/0x • **OrderCancelled**: = "ORDER_CANCELLED" -_Defined in [packages/mesh-graphql-client/src/types.ts:88](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L88)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:95](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L95)_ --- @@ -609,7 +610,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:88](https://github.com/0x • **OrderExpired**: = "ORDER_EXPIRED" -_Defined in [packages/mesh-graphql-client/src/types.ts:86](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L86)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:93](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L93)_ --- @@ -617,7 +618,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:86](https://github.com/0x • **OrderForIncorrectChain**: = "ORDER_FOR_INCORRECT_CHAIN" -_Defined in [packages/mesh-graphql-client/src/types.ts:99](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L99)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:106](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L106)_ --- @@ -625,7 +626,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:99](https://github.com/0x • **OrderFullyFilled**: = "ORDER_FULLY_FILLED" -_Defined in [packages/mesh-graphql-client/src/types.ts:87](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L87)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:94](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L94)_ --- @@ -633,7 +634,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:87](https://github.com/0x • **OrderHasInvalidMakerAssetAmount**: = "ORDER_HAS_INVALID_MAKER_ASSET_AMOUNT" -_Defined in [packages/mesh-graphql-client/src/types.ts:84](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L84)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:91](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L91)_ --- @@ -641,7 +642,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:84](https://github.com/0x • **OrderHasInvalidMakerAssetData**: = "ORDER_HAS_INVALID_MAKER_ASSET_DATA" -_Defined in [packages/mesh-graphql-client/src/types.ts:90](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L90)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:97](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L97)_ --- @@ -649,7 +650,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:90](https://github.com/0x • **OrderHasInvalidMakerFeeAssetData**: = "ORDER_HAS_INVALID_MAKER_FEE_ASSET_DATA" -_Defined in [packages/mesh-graphql-client/src/types.ts:91](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L91)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:98](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L98)_ --- @@ -657,7 +658,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:91](https://github.com/0x • **OrderHasInvalidSignature**: = "ORDER_HAS_INVALID_SIGNATURE" -_Defined in [packages/mesh-graphql-client/src/types.ts:94](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L94)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:101](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L101)_ --- @@ -665,7 +666,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:94](https://github.com/0x • **OrderHasInvalidTakerAssetAmount**: = "ORDER_HAS_INVALID_TAKER_ASSET_AMOUNT" -_Defined in [packages/mesh-graphql-client/src/types.ts:85](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L85)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:92](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L92)_ --- @@ -673,7 +674,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:85](https://github.com/0x • **OrderHasInvalidTakerAssetData**: = "ORDER_HAS_INVALID_TAKER_ASSET_DATA" -_Defined in [packages/mesh-graphql-client/src/types.ts:92](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L92)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:99](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L99)_ --- @@ -681,7 +682,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:92](https://github.com/0x • **OrderHasInvalidTakerFeeAssetData**: = "ORDER_HAS_INVALID_TAKER_FEE_ASSET_DATA" -_Defined in [packages/mesh-graphql-client/src/types.ts:93](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L93)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:100](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L100)_ --- @@ -689,7 +690,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:93](https://github.com/0x • **OrderMaxExpirationExceeded**: = "ORDER_MAX_EXPIRATION_EXCEEDED" -_Defined in [packages/mesh-graphql-client/src/types.ts:95](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L95)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:102](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L102)_ --- @@ -697,7 +698,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:95](https://github.com/0x • **OrderUnfunded**: = "ORDER_UNFUNDED" -_Defined in [packages/mesh-graphql-client/src/types.ts:89](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L89)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:96](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L96)_ --- @@ -705,7 +706,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:89](https://github.com/0x • **SenderAddressNotAllowed**: = "SENDER_ADDRESS_NOT_ALLOWED" -_Defined in [packages/mesh-graphql-client/src/types.ts:101](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L101)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:108](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L108)_
@@ -717,7 +718,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:101](https://github.com/0 • **Asc**: = "ASC" -_Defined in [packages/mesh-graphql-client/src/types.ts:169](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L169)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:176](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L176)_ --- @@ -725,7 +726,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:169](https://github.com/0 • **Desc**: = "DESC" -_Defined in [packages/mesh-graphql-client/src/types.ts:170](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L170)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:177](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L177)_
@@ -741,7 +742,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:170](https://github.com/0 • **httpUrl**? : _undefined | string_ -_Defined in [packages/mesh-graphql-client/src/index.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L237)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:242](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L242)_ --- @@ -749,7 +750,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:237](https://github.com/0 • **mesh**? : _Mesh_ -_Defined in [packages/mesh-graphql-client/src/index.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L239)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:244](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L244)_ --- @@ -757,7 +758,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:239](https://github.com/0 • **webSocketUrl**? : _undefined | string_ -_Defined in [packages/mesh-graphql-client/src/index.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/index.ts#L238)_ +_Defined in [packages/mesh-graphql-client/src/index.ts:243](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/index.ts#L243)_
@@ -773,7 +774,7 @@ _Defined in [packages/mesh-graphql-client/src/index.ts:238](https://github.com/0 • **isNew**: _boolean_ -_Defined in [packages/mesh-graphql-client/src/types.ts:66](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L66)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:73](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L73)_ --- @@ -781,7 +782,47 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:66](https://github.com/0x • **order**: _[OrderWithMetadata](#interface-orderwithmetadata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:63](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L63)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:70](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L70)_ + +
+ +# Interface: AddOrdersOpts + +### Hierarchy + +- **AddOrdersOpts** + +### Properties + +## `Optional` keepCancelled + +• **keepCancelled**? : _undefined | false | true_ + +_Defined in [packages/mesh-graphql-client/src/types.ts:5](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L5)_ + +--- + +## `Optional` keepExpired + +• **keepExpired**? : _undefined | false | true_ + +_Defined in [packages/mesh-graphql-client/src/types.ts:6](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L6)_ + +--- + +## `Optional` keepFullyFilled + +• **keepFullyFilled**? : _undefined | false | true_ + +_Defined in [packages/mesh-graphql-client/src/types.ts:7](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L7)_ + +--- + +## `Optional` keepUnfunded + +• **keepUnfunded**? : _undefined | false | true_ + +_Defined in [packages/mesh-graphql-client/src/types.ts:8](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L8)_
@@ -797,7 +838,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:63](https://github.com/0x • **addOrders**: _[StringifiedAddOrdersResults](#interface-stringifiedaddordersresults)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:9](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L9)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:16](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L16)_
@@ -813,7 +854,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:9](https://github.com/0xP • **accepted**: _[AcceptedOrderResult](#interface-acceptedorderresult)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:55](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L55)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:62](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L62)_ --- @@ -821,7 +862,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:55](https://github.com/0x • **rejected**: _[RejectedOrderResult](#interface-rejectedorderresult)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:58](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L58)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:65](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L65)_
@@ -837,7 +878,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:58](https://github.com/0x • **address**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:118](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L118)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:125](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L125)_ --- @@ -845,7 +886,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:118](https://github.com/0 • **blockHash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:113](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L113)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:120](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L120)_ --- @@ -853,7 +894,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:113](https://github.com/0 • **isRemoved**: _boolean_ -_Defined in [packages/mesh-graphql-client/src/types.ts:117](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L117)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:124](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L124)_ --- @@ -861,7 +902,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:117](https://github.com/0 • **kind**: _[ContractEventKind](#enumeration-contracteventkind)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:119](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L119)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:126](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L126)_ --- @@ -869,7 +910,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:119](https://github.com/0 • **logIndex**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:116](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L116)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:123](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L123)_ --- @@ -877,7 +918,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:116](https://github.com/0 • **parameters**: _any_ -_Defined in [packages/mesh-graphql-client/src/types.ts:121](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L121)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:128](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L128)_ --- @@ -885,7 +926,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:121](https://github.com/0 • **txHash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:114](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L114)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:121](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L121)_ --- @@ -893,7 +934,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:114](https://github.com/0 • **txIndex**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:115](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L115)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:122](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L122)_
@@ -909,7 +950,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:115](https://github.com/0 • **hash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:44](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L44)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:51](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L51)_ --- @@ -917,7 +958,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:44](https://github.com/0x • **number**: _BigNumber_ -_Defined in [packages/mesh-graphql-client/src/types.ts:43](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L43)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:50](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L50)_
@@ -933,7 +974,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:43](https://github.com/0x • **contractEvents**: _[ContractEvent](#interface-contractevent)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:109](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L109)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:116](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L116)_ --- @@ -941,7 +982,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:109](https://github.com/0 • **endState**: _[OrderEventEndState](#enumeration-ordereventendstate)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:108](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L108)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:115](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L115)_ --- @@ -949,7 +990,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:108](https://github.com/0 • **order**: _[OrderWithMetadata](#interface-orderwithmetadata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:107](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L107)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:114](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L114)_ --- @@ -957,7 +998,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:107](https://github.com/0 • **timestampMs**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:106](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L106)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:113](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L113)_
@@ -973,7 +1014,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:106](https://github.com/0 • **orderEvents**: _[StringifiedOrderEvent](#interface-stringifiedorderevent)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:21](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L21)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:28](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L28)_
@@ -989,7 +1030,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:21](https://github.com/0x • **field**: _[OrderField](#orderfield)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:188](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L188)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:195](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L195)_ --- @@ -997,7 +1038,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:188](https://github.com/0 • **kind**: _[FilterKind](#enumeration-filterkind)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:189](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L189)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:196](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L196)_ --- @@ -1005,7 +1046,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:189](https://github.com/0 • **value**: _OrderWithMetadata[OrderField]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:190](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L190)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:197](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L197)_
@@ -1021,7 +1062,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:190](https://github.com/0 • **filters**? : _[OrderFilter](#interface-orderfilter)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:194](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L194)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:201](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L201)_ --- @@ -1029,7 +1070,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:194](https://github.com/0 • **limit**? : _undefined | number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:196](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L196)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:203](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L203)_ --- @@ -1037,7 +1078,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:196](https://github.com/0 • **sort**? : _[OrderSort](#interface-ordersort)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:195](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L195)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:202](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L202)_
@@ -1053,7 +1094,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:195](https://github.com/0 • **order**: _[StringifiedOrderWithMetadata](#interface-stringifiedorderwithmetadata) | null_ -_Defined in [packages/mesh-graphql-client/src/types.ts:13](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L13)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:20](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L20)_
@@ -1069,7 +1110,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:13](https://github.com/0x • **direction**: _[SortDirection](#enumeration-sortdirection)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:184](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L184)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:191](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L191)_ --- @@ -1077,7 +1118,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:184](https://github.com/0 • **field**: _[OrderField](#orderfield)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:183](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L183)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:190](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L190)_
@@ -1093,7 +1134,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:183](https://github.com/0 • **orders**: _[StringifiedOrderWithMetadata](#interface-stringifiedorderwithmetadata)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:17](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L17)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:24](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L24)_
@@ -1143,7 +1184,7 @@ Defined in node_modules/@0x/types/lib/index.d.ts:8 • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [packages/mesh-graphql-client/src/types.ts:49](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L49)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:56](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L56)_ --- @@ -1151,7 +1192,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:49](https://github.com/0x • **hash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:48](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L48)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:55](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L55)_ --- @@ -1271,7 +1312,7 @@ Defined in node_modules/@0x/types/lib/index.d.ts:19 • **code**: _[RejectedOrderCode](#enumeration-rejectedordercode)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:76](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L76)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:83](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L83)_ --- @@ -1279,7 +1320,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:76](https://github.com/0x • **hash**? : _undefined | string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:71](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L71)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:78](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L78)_ --- @@ -1287,7 +1328,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:71](https://github.com/0x • **message**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:79](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L79)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:86](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L86)_ --- @@ -1295,7 +1336,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:79](https://github.com/0x • **order**: _SignedOrder_ -_Defined in [packages/mesh-graphql-client/src/types.ts:73](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L73)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:80](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L80)_
@@ -1311,7 +1352,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:73](https://github.com/0x • **ethRPCRateLimitExpiredRequests**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:39](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L39)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:46](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L46)_ --- @@ -1319,7 +1360,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:39](https://github.com/0x • **ethRPCRequestsSentInCurrentUTCDay**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:38](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L38)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:45](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L45)_ --- @@ -1327,7 +1368,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:38](https://github.com/0x • **ethereumChainID**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:30](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L30)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:37](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L37)_ --- @@ -1335,7 +1376,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:30](https://github.com/0x • **latestBlock**: _[LatestBlock](#interface-latestblock)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:31](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L31)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:38](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L38)_ --- @@ -1343,7 +1384,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:31](https://github.com/0x • **maxExpirationTime**: _BigNumber_ -_Defined in [packages/mesh-graphql-client/src/types.ts:36](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L36)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:43](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L43)_ --- @@ -1351,7 +1392,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:36](https://github.com/0x • **numOrders**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:33](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L33)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:40](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L40)_ --- @@ -1359,7 +1400,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:33](https://github.com/0x • **numOrdersIncludingRemoved**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:34](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L34)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:41](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L41)_ --- @@ -1367,7 +1408,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:34](https://github.com/0x • **numPeers**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:32](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L32)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:39](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L39)_ --- @@ -1375,7 +1416,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:32](https://github.com/0x • **numPinnedOrders**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:35](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L35)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:42](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L42)_ --- @@ -1383,7 +1424,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:35](https://github.com/0x • **peerID**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:29](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L29)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:36](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L36)_ --- @@ -1391,7 +1432,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:29](https://github.com/0x • **pubSubTopic**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:26](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L26)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:33](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L33)_ --- @@ -1399,7 +1440,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:26](https://github.com/0x • **rendezvous**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:27](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L27)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:34](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L34)_ --- @@ -1407,7 +1448,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:27](https://github.com/0x • **secondaryRendezvous**: _string[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:28](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L28)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:35](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L35)_ --- @@ -1415,7 +1456,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:28](https://github.com/0x • **startOfCurrentUTCDay**: _Date_ -_Defined in [packages/mesh-graphql-client/src/types.ts:37](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L37)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:44](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L44)_ --- @@ -1423,7 +1464,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:37](https://github.com/0x • **version**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:25](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L25)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:32](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L32)_
@@ -1439,7 +1480,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:25](https://github.com/0x • **stats**: _[StringifiedStats](#interface-stringifiedstats)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:5](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L5)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:12](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L12)_
@@ -1455,7 +1496,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:5](https://github.com/0xP • **isNew**: _boolean_ -_Defined in [packages/mesh-graphql-client/src/types.ts:254](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L254)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:261](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L261)_ --- @@ -1463,7 +1504,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:254](https://github.com/0 • **order**: _[StringifiedOrderWithMetadata](#interface-stringifiedorderwithmetadata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:253](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L253)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:260](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L260)_
@@ -1479,7 +1520,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:253](https://github.com/0 • **accepted**: _[StringifiedAcceptedOrderResult](#interface-stringifiedacceptedorderresult)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:248](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L248)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:255](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L255)_ --- @@ -1487,7 +1528,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:248](https://github.com/0 • **rejected**: _[StringifiedRejectedOrderResult](#interface-stringifiedrejectedorderresult)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:249](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L249)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:256](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L256)_
@@ -1503,7 +1544,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:249](https://github.com/0 • **hash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:201](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L201)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:208](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L208)_ --- @@ -1511,7 +1552,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:201](https://github.com/0 • **number**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:200](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L200)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:207](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L207)_
@@ -1527,7 +1568,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:200](https://github.com/0 • **contractEvents**: _[ContractEvent](#interface-contractevent)[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:269](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L269)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:276](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L276)_ --- @@ -1535,7 +1576,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:269](https://github.com/0 • **endState**: _[OrderEventEndState](#enumeration-ordereventendstate)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:267](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L267)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:274](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L274)_ --- @@ -1543,7 +1584,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:267](https://github.com/0 • **fillableTakerAssetAmount**: _BigNumber_ -_Defined in [packages/mesh-graphql-client/src/types.ts:268](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L268)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:275](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L275)_ --- @@ -1551,7 +1592,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:268](https://github.com/0 • **order**: _[StringifiedOrderWithMetadata](#interface-stringifiedorderwithmetadata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:266](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L266)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:273](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L273)_ --- @@ -1559,7 +1600,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:266](https://github.com/0 • **timestamp**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:265](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L265)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:272](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L272)_
@@ -1579,7 +1620,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:265](https://github.com/0 _Inherited from [StringifiedSignedOrder](#chainid)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L223)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L230)_ --- @@ -1589,7 +1630,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:223](https://github.com/0 _Inherited from [StringifiedSignedOrder](#exchangeaddress)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L224)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L231)_ --- @@ -1599,7 +1640,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:224](https://github.com/0 _Inherited from [StringifiedSignedOrder](#expirationtimeseconds)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L233)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:240](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L240)_ --- @@ -1609,7 +1650,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0 _Inherited from [StringifiedSignedOrder](#feerecipientaddress)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L227)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L234)_ --- @@ -1617,7 +1658,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:227](https://github.com/0 • **fillableTakerAssetAmount**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:244](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L244)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:251](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L251)_ --- @@ -1625,7 +1666,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:244](https://github.com/0 • **hash**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:243](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L243)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:250](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L250)_ --- @@ -1635,7 +1676,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:243](https://github.com/0 _Inherited from [StringifiedSignedOrder](#makeraddress)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L225)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L232)_ --- @@ -1645,7 +1686,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:225](https://github.com/0 _Inherited from [StringifiedSignedOrder](#makerassetamount)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L229)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L236)_ --- @@ -1655,7 +1696,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:229](https://github.com/0 _Inherited from [StringifiedSignedOrder](#makerassetdata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L235)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:242](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L242)_ --- @@ -1665,7 +1706,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0 _Inherited from [StringifiedSignedOrder](#makerfee)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L231)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L238)_ --- @@ -1675,7 +1716,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0 _Inherited from [StringifiedSignedOrder](#makerfeeassetdata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L237)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:244](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L244)_ --- @@ -1685,7 +1726,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0 _Inherited from [StringifiedSignedOrder](#salt)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L234)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:241](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L241)_ --- @@ -1695,7 +1736,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0 _Inherited from [StringifiedSignedOrder](#senderaddress)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L228)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L235)_ --- @@ -1705,7 +1746,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:228](https://github.com/0 _Inherited from [StringifiedSignedOrder](#signature)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L239)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:246](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L246)_ --- @@ -1715,7 +1756,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0 _Inherited from [StringifiedSignedOrder](#takeraddress)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L226)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L233)_ --- @@ -1725,7 +1766,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:226](https://github.com/0 _Inherited from [StringifiedSignedOrder](#takerassetamount)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L230)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L237)_ --- @@ -1735,7 +1776,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0 _Inherited from [StringifiedSignedOrder](#takerassetdata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L236)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:243](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L243)_ --- @@ -1745,7 +1786,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0 _Inherited from [StringifiedSignedOrder](#takerfee)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L232)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L239)_ --- @@ -1755,7 +1796,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0 _Inherited from [StringifiedSignedOrder](#takerfeeassetdata)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L238)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:245](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L245)_
@@ -1771,7 +1812,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0 • **code**: _[RejectedOrderCode](#enumeration-rejectedordercode)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:260](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L260)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:267](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L267)_ --- @@ -1779,7 +1820,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:260](https://github.com/0 • **hash**? : _undefined | string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:258](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L258)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:265](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L265)_ --- @@ -1787,7 +1828,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:258](https://github.com/0 • **message**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:261](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L261)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:268](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L268)_ --- @@ -1795,7 +1836,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:261](https://github.com/0 • **order**: _[StringifiedSignedOrder](#interface-stringifiedsignedorder)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:259](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L259)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:266](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L266)_
@@ -1813,7 +1854,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:259](https://github.com/0 • **chainId**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:223](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L223)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L230)_ --- @@ -1821,7 +1862,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:223](https://github.com/0 • **exchangeAddress**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:224](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L224)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L231)_ --- @@ -1829,7 +1870,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:224](https://github.com/0 • **expirationTimeSeconds**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L233)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:240](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L240)_ --- @@ -1837,7 +1878,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0 • **feeRecipientAddress**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:227](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L227)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L234)_ --- @@ -1845,7 +1886,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:227](https://github.com/0 • **makerAddress**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:225](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L225)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L232)_ --- @@ -1853,7 +1894,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:225](https://github.com/0 • **makerAssetAmount**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:229](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L229)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L236)_ --- @@ -1861,7 +1902,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:229](https://github.com/0 • **makerAssetData**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L235)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:242](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L242)_ --- @@ -1869,7 +1910,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0 • **makerFee**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L231)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L238)_ --- @@ -1877,7 +1918,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:231](https://github.com/0 • **makerFeeAssetData**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L237)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:244](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L244)_ --- @@ -1885,7 +1926,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0 • **salt**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L234)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:241](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L241)_ --- @@ -1893,7 +1934,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:234](https://github.com/0 • **senderAddress**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:228](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L228)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:235](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L235)_ --- @@ -1901,7 +1942,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:228](https://github.com/0 • **signature**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L239)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:246](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L246)_ --- @@ -1909,7 +1950,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0 • **takerAddress**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:226](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L226)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:233](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L233)_ --- @@ -1917,7 +1958,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:226](https://github.com/0 • **takerAssetAmount**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L230)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:237](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L237)_ --- @@ -1925,7 +1966,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:230](https://github.com/0 • **takerAssetData**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L236)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:243](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L243)_ --- @@ -1933,7 +1974,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:236](https://github.com/0 • **takerFee**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L232)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:239](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L239)_ --- @@ -1941,7 +1982,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:232](https://github.com/0 • **takerFeeAssetData**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L238)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:245](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L245)_
@@ -1957,7 +1998,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:238](https://github.com/0 • **ethRPCRateLimitExpiredRequests**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:219](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L219)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:226](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L226)_ --- @@ -1965,7 +2006,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:219](https://github.com/0 • **ethRPCRequestsSentInCurrentUTCDay**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:218](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L218)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:225](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L225)_ --- @@ -1973,7 +2014,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:218](https://github.com/0 • **ethereumChainID**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:210](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L210)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:217](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L217)_ --- @@ -1981,7 +2022,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:210](https://github.com/0 • **latestBlock**: _[StringifiedLatestBlock](#interface-stringifiedlatestblock)_ -_Defined in [packages/mesh-graphql-client/src/types.ts:211](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L211)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:218](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L218)_ --- @@ -1989,7 +2030,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:211](https://github.com/0 • **maxExpirationTime**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:216](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L216)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:223](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L223)_ --- @@ -1997,7 +2038,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:216](https://github.com/0 • **numOrders**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:213](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L213)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:220](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L220)_ --- @@ -2005,7 +2046,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:213](https://github.com/0 • **numOrdersIncludingRemoved**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:214](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L214)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:221](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L221)_ --- @@ -2013,7 +2054,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:214](https://github.com/0 • **numPeers**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:212](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L212)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:219](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L219)_ --- @@ -2021,7 +2062,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:212](https://github.com/0 • **numPinnedOrders**: _number_ -_Defined in [packages/mesh-graphql-client/src/types.ts:215](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L215)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:222](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L222)_ --- @@ -2029,7 +2070,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:215](https://github.com/0 • **peerID**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:209](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L209)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:216](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L216)_ --- @@ -2037,7 +2078,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:209](https://github.com/0 • **pubSubTopic**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:206](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L206)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:213](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L213)_ --- @@ -2045,7 +2086,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:206](https://github.com/0 • **rendezvous**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:207](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L207)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:214](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L214)_ --- @@ -2053,7 +2094,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:207](https://github.com/0 • **secondaryRendezvous**: _string[]_ -_Defined in [packages/mesh-graphql-client/src/types.ts:208](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L208)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:215](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L215)_ --- @@ -2061,7 +2102,7 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:208](https://github.com/0 • **startOfCurrentUTCDay**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:217](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L217)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:224](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L224)_ --- @@ -2069,6 +2110,6 @@ _Defined in [packages/mesh-graphql-client/src/types.ts:217](https://github.com/0 • **version**: _string_ -_Defined in [packages/mesh-graphql-client/src/types.ts:205](https://github.com/0xProject/0x-mesh/blob/e7737277/packages/mesh-graphql-client/src/types.ts#L205)_ +_Defined in [packages/mesh-graphql-client/src/types.ts:212](https://github.com/0xProject/0x-mesh/blob/b8104145/packages/mesh-graphql-client/src/types.ts#L212)_
diff --git a/docs/graphql_api.md b/docs/graphql_api.md index 7e945b412..62d70de87 100644 --- a/docs/graphql_api.md +++ b/docs/graphql_api.md @@ -1,4 +1,4 @@ -[![Version](https://img.shields.io/badge/version-10.0.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) +[![Version](https://img.shields.io/badge/version-10.1.0-orange.svg)](https://github.com/0xProject/0x-mesh/releases) # 0x Mesh GraphQL API Documentation diff --git a/ethereum/blockwatch/block_watcher.go b/ethereum/blockwatch/block_watcher.go index bfa4ed83e..c26820aa7 100644 --- a/ethereum/blockwatch/block_watcher.go +++ b/ethereum/blockwatch/block_watcher.go @@ -640,9 +640,6 @@ func (w *Watcher) filterLogsRecursively(from, to int, allLogs []ethtypes.Log) ([ if from == to { return allLogs, fmt.Errorf("Unable to get the logs for block #%d, because it contains too many logs", from) } - - // FIXME(jalextowle): This had deadcode previously. Was there something that should have - // been done here that wasn't originally? firstBatchSize := numBlocks / 2 endFirstHalf := from + firstBatchSize startSecondHalf := endFirstHalf + 1 diff --git a/graphql/client/client.go b/graphql/client/client.go index c140ee214..2a0387e5e 100644 --- a/graphql/client/client.go +++ b/graphql/client/client.go @@ -15,8 +15,17 @@ type Client struct { } const ( - addOrdersMutation = `mutation AddOrders($orders: [NewOrder!]!, $pinned: Boolean = true) { - addOrders(orders: $orders, pinned: $pinned) { + addOrdersMutation = `mutation AddOrders( + $orders: [NewOrder!]!, + $pinned: Boolean = true, + $opts: AddOrdersOpts = { + keepCancelled: false, + keepExpired: false, + keepFullyFilled: false, + keepUnfunded: false, + }, +) { + addOrders(orders: $orders, pinned: $pinned, opts: $opts) { accepted { order { hash @@ -154,6 +163,18 @@ type AddOrdersOpts struct { // and will always stay in storage until they are no longer fillable. Defaults // to true. Pinned bool `json:"pinned"` + // KeepCancelled signals that this order should not be deleted + // if it is cancelled. + KeepCancelled bool `json:"keepWhenCancelled"` + // KeepExpired signals that this order should not be deleted + // if it becomes expired. + KeepExpired bool `json:"keepWhenExpired"` + // KeepFullyFilled signals that this order should not be deleted + // if it is fully filled. + KeepFullyFilled bool `json:"keepWhenFullyFilled"` + // KeepUnfunded signals that this order should not be deleted + // if it becomes unfunded. + KeepUnfunded bool `json:"keepWhenUnfunded"` } // AddOrders adds orders to 0x Mesh and broadcasts them throughout the 0x Mesh network. @@ -167,6 +188,10 @@ func (c *Client) AddOrders(ctx context.Context, orders []*zeroex.SignedOrder, op // Only set the pinned variable if opts were provided. if len(opts) > 0 { req.Var("pinned", opts[0].Pinned) + req.Var("keepCancelled", opts[0].KeepCancelled) + req.Var("keepExpired", opts[0].KeepExpired) + req.Var("keepFullyFilled", opts[0].KeepFullyFilled) + req.Var("keepUnfunded", opts[0].KeepUnfunded) } var resp struct { diff --git a/graphql/generated/generated.go b/graphql/generated/generated.go index afe136dd4..045f801c6 100644 --- a/graphql/generated/generated.go +++ b/graphql/generated/generated.go @@ -72,7 +72,7 @@ type ComplexityRoot struct { } Mutation struct { - AddOrders func(childComplexity int, orders []*gqltypes.NewOrder, pinned *bool) int + AddOrders func(childComplexity int, orders []*gqltypes.NewOrder, pinned *bool, opts *gqltypes.AddOrdersOpts) int } Order struct { @@ -160,7 +160,7 @@ type ComplexityRoot struct { } type MutationResolver interface { - AddOrders(ctx context.Context, orders []*gqltypes.NewOrder, pinned *bool) (*gqltypes.AddOrdersResults, error) + AddOrders(ctx context.Context, orders []*gqltypes.NewOrder, pinned *bool, opts *gqltypes.AddOrdersOpts) (*gqltypes.AddOrdersResults, error) } type QueryResolver interface { Order(ctx context.Context, hash string) (*gqltypes.OrderWithMetadata, error) @@ -294,7 +294,7 @@ func (e *executableSchema) Complexity(typeName, field string, childComplexity in return 0, false } - return e.complexity.Mutation.AddOrders(childComplexity, args["orders"].([]*gqltypes.NewOrder), args["pinned"].(*bool)), true + return e.complexity.Mutation.AddOrders(childComplexity, args["orders"].([]*gqltypes.NewOrder), args["pinned"].(*bool), args["opts"].(*gqltypes.AddOrdersOpts)), true case "Order.chainId": if e.complexity.Order.ChainID == nil { @@ -1114,7 +1114,39 @@ type Mutation { """ Adds one or more orders to Mesh. """ - addOrders(orders: [NewOrder!]!, pinned: Boolean = true): AddOrdersResults! + addOrders( + orders: [NewOrder!]!, + pinned: Boolean = true, + opts: AddOrdersOpts = { + keepCancelled: false, + keepExpired: false, + keepFullyFilled: false, + keepUnfunded: false, + }, + ): AddOrdersResults! +} + +input AddOrdersOpts { + """ + Indicates that the orders being added should be kept by the database after + cancellation. + """ + keepCancelled: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + expiry. + """ + keepExpired: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + being fully filled. + """ + keepFullyFilled: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + becoming unfunded. + """ + keepUnfunded: Boolean = false } type OrderEvent { @@ -1260,6 +1292,14 @@ func (ec *executionContext) field_Mutation_addOrders_args(ctx context.Context, r } } args["pinned"] = arg1 + var arg2 *gqltypes.AddOrdersOpts + if tmp, ok := rawArgs["opts"]; ok { + arg2, err = ec.unmarshalOAddOrdersOpts2ᚖgithubᚗcomᚋ0xProjectᚋ0xᚑmeshᚋgraphqlᚋgqltypesᚐAddOrdersOpts(ctx, tmp) + if err != nil { + return nil, err + } + } + args["opts"] = arg2 return args, nil } @@ -1857,7 +1897,7 @@ func (ec *executionContext) _Mutation_addOrders(ctx context.Context, field graph fc.Args = args resTmp, err := ec.ResolverMiddleware(ctx, func(rctx context.Context) (interface{}, error) { ctx = rctx // use context from middleware stack in children - return ec.resolvers.Mutation().AddOrders(rctx, args["orders"].([]*gqltypes.NewOrder), args["pinned"].(*bool)) + return ec.resolvers.Mutation().AddOrders(rctx, args["orders"].([]*gqltypes.NewOrder), args["pinned"].(*bool), args["opts"].(*gqltypes.AddOrdersOpts)) }) if err != nil { ec.Error(ctx, err) @@ -5121,6 +5161,42 @@ func (ec *executionContext) ___Type_ofType(ctx context.Context, field graphql.Co // region **************************** input.gotpl ***************************** +func (ec *executionContext) unmarshalInputAddOrdersOpts(ctx context.Context, obj interface{}) (gqltypes.AddOrdersOpts, error) { + var it gqltypes.AddOrdersOpts + var asMap = obj.(map[string]interface{}) + + for k, v := range asMap { + switch k { + case "keepCancelled": + var err error + it.KeepCancelled, err = ec.unmarshalOBoolean2ᚖbool(ctx, v) + if err != nil { + return it, err + } + case "keepExpired": + var err error + it.KeepExpired, err = ec.unmarshalOBoolean2ᚖbool(ctx, v) + if err != nil { + return it, err + } + case "keepFullyFilled": + var err error + it.KeepFullyFilled, err = ec.unmarshalOBoolean2ᚖbool(ctx, v) + if err != nil { + return it, err + } + case "keepUnfunded": + var err error + it.KeepUnfunded, err = ec.unmarshalOBoolean2ᚖbool(ctx, v) + if err != nil { + return it, err + } + } + } + + return it, nil +} + func (ec *executionContext) unmarshalInputNewOrder(ctx context.Context, obj interface{}) (gqltypes.NewOrder, error) { var it gqltypes.NewOrder var asMap = obj.(map[string]interface{}) @@ -6932,6 +7008,18 @@ func (ec *executionContext) marshalN__TypeKind2string(ctx context.Context, sel a return res } +func (ec *executionContext) unmarshalOAddOrdersOpts2githubᚗcomᚋ0xProjectᚋ0xᚑmeshᚋgraphqlᚋgqltypesᚐAddOrdersOpts(ctx context.Context, v interface{}) (gqltypes.AddOrdersOpts, error) { + return ec.unmarshalInputAddOrdersOpts(ctx, v) +} + +func (ec *executionContext) unmarshalOAddOrdersOpts2ᚖgithubᚗcomᚋ0xProjectᚋ0xᚑmeshᚋgraphqlᚋgqltypesᚐAddOrdersOpts(ctx context.Context, v interface{}) (*gqltypes.AddOrdersOpts, error) { + if v == nil { + return nil, nil + } + res, err := ec.unmarshalOAddOrdersOpts2githubᚗcomᚋ0xProjectᚋ0xᚑmeshᚋgraphqlᚋgqltypesᚐAddOrdersOpts(ctx, v) + return &res, err +} + func (ec *executionContext) unmarshalOBoolean2bool(ctx context.Context, v interface{}) (bool, error) { return graphql.UnmarshalBoolean(v) } diff --git a/graphql/gqltypes/conversions.go b/graphql/gqltypes/conversions.go index 05c893471..f505accbf 100644 --- a/graphql/gqltypes/conversions.go +++ b/graphql/gqltypes/conversions.go @@ -14,6 +14,23 @@ import ( "github.com/ethereum/go-ethereum/common/math" ) +func AddOrderOptsToCommonType(opts *AddOrdersOpts) *types.AddOrdersOpts { + commonTypeOpts := &types.AddOrdersOpts{} + if opts.KeepCancelled != nil { + commonTypeOpts.KeepCancelled = *opts.KeepCancelled + } + if opts.KeepExpired != nil { + commonTypeOpts.KeepExpired = *opts.KeepExpired + } + if opts.KeepFullyFilled != nil { + commonTypeOpts.KeepFullyFilled = *opts.KeepFullyFilled + } + if opts.KeepUnfunded != nil { + commonTypeOpts.KeepUnfunded = *opts.KeepUnfunded + } + return commonTypeOpts +} + func StatsFromCommonType(stats *types.Stats) *Stats { return &Stats{ Version: stats.Version, diff --git a/graphql/gqltypes/types_generated.go b/graphql/gqltypes/types_generated.go index 3198b2343..ac53447ed 100644 --- a/graphql/gqltypes/types_generated.go +++ b/graphql/gqltypes/types_generated.go @@ -16,6 +16,21 @@ type AcceptedOrderResult struct { IsNew bool `json:"isNew"` } +type AddOrdersOpts struct { + // Indicates that the orders being added should be kept by the database after + // cancellation. + KeepCancelled *bool `json:"keepCancelled"` + // Indicates that the orders being added should be kept by the database after + // expiry. + KeepExpired *bool `json:"keepExpired"` + // Indicates that the orders being added should be kept by the database after + // being fully filled. + KeepFullyFilled *bool `json:"keepFullyFilled"` + // Indicates that the orders being added should be kept by the database after + // becoming unfunded. + KeepUnfunded *bool `json:"keepUnfunded"` +} + // The results of the addOrders mutation. Includes which orders were accepted and which orders where rejected. type AddOrdersResults struct { // The set of orders that were accepted. Accepted orders will be watched and order events will be emitted if diff --git a/graphql/schema.graphql b/graphql/schema.graphql index c53b9b392..4d0ed1108 100644 --- a/graphql/schema.graphql +++ b/graphql/schema.graphql @@ -291,7 +291,39 @@ type Mutation { """ Adds one or more orders to Mesh. """ - addOrders(orders: [NewOrder!]!, pinned: Boolean = true): AddOrdersResults! + addOrders( + orders: [NewOrder!]!, + pinned: Boolean = true, + opts: AddOrdersOpts = { + keepCancelled: false, + keepExpired: false, + keepFullyFilled: false, + keepUnfunded: false, + }, + ): AddOrdersResults! +} + +input AddOrdersOpts { + """ + Indicates that the orders being added should be kept by the database after + cancellation. + """ + keepCancelled: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + expiry. + """ + keepExpired: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + being fully filled. + """ + keepFullyFilled: Boolean = false + """ + Indicates that the orders being added should be kept by the database after + becoming unfunded. + """ + keepUnfunded: Boolean = false } type OrderEvent { diff --git a/graphql/schema.resolvers.go b/graphql/schema.resolvers.go index 142d7cb11..220bedfeb 100644 --- a/graphql/schema.resolvers.go +++ b/graphql/schema.resolvers.go @@ -13,13 +13,14 @@ import ( "github.com/ethereum/go-ethereum/common" ) -func (r *mutationResolver) AddOrders(ctx context.Context, orders []*gqltypes.NewOrder, pinned *bool) (*gqltypes.AddOrdersResults, error) { +func (r *mutationResolver) AddOrders(ctx context.Context, orders []*gqltypes.NewOrder, pinned *bool, opts *gqltypes.AddOrdersOpts) (*gqltypes.AddOrdersResults, error) { isPinned := false if pinned != nil { isPinned = (*pinned) } signedOrders := gqltypes.NewOrdersToSignedOrders(orders) - results, err := r.app.AddOrders(ctx, signedOrders, isPinned) + commonTypeOpts := gqltypes.AddOrderOptsToCommonType(opts) + results, err := r.app.AddOrders(ctx, signedOrders, isPinned, commonTypeOpts) if err != nil { return nil, err } diff --git a/package.json b/package.json index 8d32e03c9..cc62d23e4 100644 --- a/package.json +++ b/package.json @@ -29,12 +29,11 @@ "@types/base64-arraybuffer": "^0.1.0", "es6-promise": "^4.2.6", "ignore-loader": "^0.1.2", - "isomorphic-fetch": "^2.2.1", - "qunit-puppeteer": "^1.0.1", - "prettier": "^1.19.1", - "ts-loader": "^6.2.1", - "tslint": "5.11.0", - "typescript": "^3.9.3", + "isomorphic-fetch": "^3.0.0", + "prettier": "^2.1.2", + "ts-loader": "^8.0.5", + "tslint": "6.1.3", + "typescript": "^4.0.3", "webpack": "^4.41.5", "webpack-cli": "^3.3.10", "wrtc": "0.4.1", diff --git a/packages/mesh-browser-lite/package.json b/packages/mesh-browser-lite/package.json index a945651b4..cdf346f0d 100644 --- a/packages/mesh-browser-lite/package.json +++ b/packages/mesh-browser-lite/package.json @@ -1,6 +1,6 @@ { "name": "@0x/mesh-browser-lite", - "version": "10.0.0", + "version": "10.1.0", "description": "TypeScript and JavaScript bindings for running Mesh directly in the browser. To use this packages, you must use your own copy of the Mesh WebAssembly Binary", "main": "./lib/index.js", "license": "Apache-2.0", @@ -18,12 +18,12 @@ "@types/dexie": "^1.3.1", "shx": "^0.3.2", "typedoc": "^0.15.0", - "typescript": "^3.9.3" + "typescript": "^4.0.3" }, "dependencies": { "@0x/order-utils": "^10.2.0", "@0x/utils": "^5.4.0", - "ajv": "^6.12.2", + "ajv": "^6.12.5", "dexie": "^3.0.1", "ethereum-types": "^3.0.0" } diff --git a/packages/mesh-browser-lite/src/database.ts b/packages/mesh-browser-lite/src/database.ts index 20508fa01..815b754c7 100644 --- a/packages/mesh-browser-lite/src/database.ts +++ b/packages/mesh-browser-lite/src/database.ts @@ -22,8 +22,8 @@ export interface Options { } export interface Query { - filters?: Array>; - sort?: Array>; + filters?: FilterOption[]; + sort?: SortOption[]; limit?: number; offset?: number; } @@ -78,15 +78,22 @@ export interface Order { isRemoved: number; isPinned: number; isNotPinned: number; // Used in a compound index in queries related to max expiration time. + isUnfillable: number; + isExpired: number; parsedMakerAssetData: string; parsedMakerFeeAssetData: string; lastValidatedBlockNumber: string; lastValidatedBlockHash: string; + keepCancelled: number; + keepExpired: number; + keepFullyFilled: number; + keepUnfunded: number; } export interface StoredOrderStatus { isStored: boolean; isMarkedRemoved: boolean; + isMarkedUnfillable: boolean; fillableTakerAssetAmount?: string; } @@ -165,7 +172,7 @@ export class Database { this._db.version(1).stores({ orders: - '&hash,chainId,makerAddress,makerAssetData,makerAssetAmount,makerFee,makerFeeAssetData,takerAddress,takerAssetData,takerFeeAssetData,takerAssetAmount,takerFee,senderAddress,feeRecipientAddress,expirationTimeSeconds,salt,signature,exchangeAddress,fillableTakerAssetAmount,lastUpdated,isRemoved,isPinned,parsedMakerAssetData,parsedMakerFeeAssetData,lastValidatedBlockNumber,lastValidatedBlockHash,[isNotPinned+expirationTimeSeconds]', + '&hash,chainId,makerAddress,makerAssetData,makerAssetAmount,makerFee,makerFeeAssetData,takerAddress,takerAssetData,takerFeeAssetData,takerAssetAmount,takerFee,senderAddress,feeRecipientAddress,expirationTimeSeconds,salt,signature,exchangeAddress,fillableTakerAssetAmount,lastUpdated,isRemoved,isPinned,isUnfillable,isExpired,parsedMakerAssetData,parsedMakerFeeAssetData,lastValidatedBlockNumber,lastValidatedBlockHash,keepCancelled,keepExpired,keepFullyFilled,keepUnfunded,[isNotPinned+expirationTimeSeconds]', miniHeaders: '&hash,parent,number,timestamp', metadata: 'ðereumChainID', dhtstore: '&key,data', @@ -259,17 +266,13 @@ export class Database { statuses.push({ isStored: false, isMarkedRemoved: false, - }); - } else if (order.isRemoved) { - statuses.push({ - isStored: true, - isMarkedRemoved: true, - fillableTakerAssetAmount: order.fillableTakerAssetAmount, + isMarkedUnfillable: false, }); } else { statuses.push({ isStored: true, - isMarkedRemoved: false, + isMarkedRemoved: order.isRemoved === 1, + isMarkedUnfillable: order.isUnfillable === 1, fillableTakerAssetAmount: order.fillableTakerAssetAmount, }); } @@ -584,29 +587,29 @@ async function runQueryInMemoryAsync( return records; } -function filterRecords(filters: Array>, records: T[]): T[] { +function filterRecords(filters: FilterOption[], records: T[]): T[] { let result = records; // Note(albrow): As an optimization, we could use the native Dexie.js index for // the *first* filter when possible. for (const filter of filters) { switch (filter.kind) { case FilterKind.Equal: - result = result.filter(record => record[filter.field] === filter.value); + result = result.filter((record) => record[filter.field] === filter.value); break; case FilterKind.NotEqual: - result = result.filter(record => record[filter.field] !== filter.value); + result = result.filter((record) => record[filter.field] !== filter.value); break; case FilterKind.Greater: - result = result.filter(record => record[filter.field] > filter.value); + result = result.filter((record) => record[filter.field] > filter.value); break; case FilterKind.GreaterOrEqual: - result = result.filter(record => record[filter.field] >= filter.value); + result = result.filter((record) => record[filter.field] >= filter.value); break; case FilterKind.Less: - result = result.filter(record => record[filter.field] < filter.value); + result = result.filter((record) => record[filter.field] < filter.value); break; case FilterKind.LessOrEqual: - result = result.filter(record => record[filter.field] <= filter.value); + result = result.filter((record) => record[filter.field] <= filter.value); break; case FilterKind.Contains: result = result.filter(containsFilterFunc(filter)); @@ -619,7 +622,7 @@ function filterRecords(filters: Array>, record return result; } -function sortRecords(sortOpts: Array>, records: T[]): T[] { +function sortRecords(sortOpts: SortOption[], records: T[]): T[] { // Note(albrow): As an optimization, we could use native Dexie.js ordering for // the *first* sort option when possible. const result = records; diff --git a/packages/mesh-browser-lite/src/datastore.ts b/packages/mesh-browser-lite/src/datastore.ts index 1a484329a..c3b269de4 100644 --- a/packages/mesh-browser-lite/src/datastore.ts +++ b/packages/mesh-browser-lite/src/datastore.ts @@ -98,8 +98,10 @@ export class BatchingDatastore { return this._db.transaction('rw!', this._table, async () => { const prefixRegExp = new RegExp(prefix); const col = - prefix !== '' ? this._table.filter(entry => prefixRegExp.test(entry.key)) : this._table.toCollection(); - return (await col.toArray()).map(entry => { + prefix !== '' + ? this._table.filter((entry) => prefixRegExp.test(entry.key)) + : this._table.toCollection(); + return (await col.toArray()).map((entry) => { return { key: entry.key, value: entry.value, diff --git a/packages/mesh-browser-lite/src/mesh.ts b/packages/mesh-browser-lite/src/mesh.ts index 453188d51..24c86ba52 100644 --- a/packages/mesh-browser-lite/src/mesh.ts +++ b/packages/mesh-browser-lite/src/mesh.ts @@ -290,6 +290,6 @@ async function waitForLoadAsync(): Promise { } async function sleepAsync(ms: number): Promise { - return new Promise(resolve => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } // tslint:disable-next-line:max-file-line-count diff --git a/packages/mesh-browser-lite/src/schema_validator.ts b/packages/mesh-browser-lite/src/schema_validator.ts index 7a716a89b..0b36c85be 100644 --- a/packages/mesh-browser-lite/src/schema_validator.ts +++ b/packages/mesh-browser-lite/src/schema_validator.ts @@ -76,7 +76,7 @@ function constructValidationFunctionWrapper( try { result.success = validationFunction(JSON.parse(input)); if (validationFunction.errors) { - result.errors = validationFunction.errors.map(error => JSON.stringify(error)); + result.errors = validationFunction.errors.map((error) => JSON.stringify(error)); } } catch (error) { result.fatal = JSON.stringify(error); diff --git a/packages/mesh-browser-lite/src/wrapper_conversion.ts b/packages/mesh-browser-lite/src/wrapper_conversion.ts index 4a55cae50..07fa1ddbd 100644 --- a/packages/mesh-browser-lite/src/wrapper_conversion.ts +++ b/packages/mesh-browser-lite/src/wrapper_conversion.ts @@ -84,7 +84,7 @@ export function wrapperContractEventsToContractEvents(wrapperContractEvents: Wra if (wrapperContractEvents === null) { return contractEvents; } - wrapperContractEvents.forEach(wrapperContractEvent => { + wrapperContractEvents.forEach((wrapperContractEvent) => { const kind = wrapperContractEvent.kind as ContractEventKind; const rawParameters = wrapperContractEvent.parameters; let parameters: ContractEventParameters; @@ -140,11 +140,11 @@ export function wrapperContractEventsToContractEvents(wrapperContractEvents: Wra case ContractEventKind.ERC1155TransferBatchEvent: const erc1155TransferBatchEvent = rawParameters as WrapperERC1155TransferBatchEvent; const ids: BigNumber[] = []; - erc1155TransferBatchEvent.ids.forEach(id => { + erc1155TransferBatchEvent.ids.forEach((id) => { ids.push(new BigNumber(id)); }); const values: BigNumber[] = []; - erc1155TransferBatchEvent.values.forEach(value => { + erc1155TransferBatchEvent.values.forEach((value) => { values.push(new BigNumber(value)); }); parameters = { diff --git a/packages/mesh-browser-lite/tslint.json b/packages/mesh-browser-lite/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-browser-lite/tslint.json +++ b/packages/mesh-browser-lite/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-browser-shim/package.json b/packages/mesh-browser-shim/package.json index 79e7231ff..738cdded1 100644 --- a/packages/mesh-browser-shim/package.json +++ b/packages/mesh-browser-shim/package.json @@ -13,13 +13,13 @@ "devDependencies": { "@types/dexie": "^1.3.1", "shx": "^0.3.2", - "ts-loader": "^6.2.1", - "typescript": "^3.9.3", + "ts-loader": "^8.0.5", + "typescript": "^4.0.3", "webpack": "^4.43.0", "webpack-cli": "^3.3.10" }, "dependencies": { - "@0x/mesh-browser-lite": "^10.0.0", + "@0x/mesh-browser-lite": "^10.1.0", "dexie": "^3.0.1" } } diff --git a/packages/mesh-browser-shim/tslint.json b/packages/mesh-browser-shim/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-browser-shim/tslint.json +++ b/packages/mesh-browser-shim/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-browser/conversion-tests/conversion_test.ts b/packages/mesh-browser/conversion-tests/conversion_test.ts index 978113552..084cf94c9 100644 --- a/packages/mesh-browser/conversion-tests/conversion_test.ts +++ b/packages/mesh-browser/conversion-tests/conversion_test.ts @@ -86,10 +86,10 @@ window.addEventListener(loadEventName, () => { const go = new Go(); WebAssembly.instantiateStreaming(fetch('conversion_test.wasm'), go.importObject) - .then(module => { + .then((module) => { go.run(module.instance); }) - .catch(err => { + .catch((err) => { // tslint:disable-next-line no-console console.error('Could not load Wasm'); // tslint:disable-next-line no-console @@ -198,7 +198,7 @@ WebAssembly.instantiateStreaming(fetch('conversion_test.wasm'), go.importObject) const finishedDiv = document.createElement('div'); finishedDiv.setAttribute('id', 'jsFinished'); document.body.appendChild(finishedDiv); -})().catch(err => { +})().catch((err) => { console.log(err); }); @@ -1064,6 +1064,6 @@ async function waitForLoadAsync(): Promise { } async function sleepAsync(ms: number): Promise { - return new Promise(resolve => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } // tslint:disable-line:max-file-line-count diff --git a/packages/mesh-browser/go/mesh-browser/main.go b/packages/mesh-browser/go/mesh-browser/main.go index 2e895010d..af43858c3 100644 --- a/packages/mesh-browser/go/mesh-browser/main.go +++ b/packages/mesh-browser/go/mesh-browser/main.go @@ -8,6 +8,7 @@ import ( "syscall/js" "time" + "github.com/0xProject/0x-mesh/common/types" "github.com/0xProject/0x-mesh/core" "github.com/0xProject/0x-mesh/graphql" "github.com/0xProject/0x-mesh/graphql/gqltypes" @@ -150,7 +151,9 @@ func (cw *MeshWrapper) AddOrders(rawOrders js.Value, pinned bool) (js.Value, err if err := jsutil.InefficientlyConvertFromJS(rawOrders, &rawMessages); err != nil { return js.Undefined(), err } - results, err := cw.app.AddOrdersRaw(cw.ctx, rawMessages, pinned) + // NOTE(jalextowle): We don't allow browser nodes to keep outdated orders + // currently. + results, err := cw.app.AddOrdersRaw(cw.ctx, rawMessages, pinned, &types.AddOrdersOpts{}) if err != nil { return js.Undefined(), err } @@ -185,7 +188,9 @@ func (cw *MeshWrapper) GQLAddOrders(rawOrders js.Value, pinned bool) (js.Value, if err := jsutil.InefficientlyConvertFromJS(rawOrders, &newOrders); err != nil { return js.Undefined(), err } - results, err := cw.resolver.Mutation().AddOrders(cw.ctx, newOrders, &pinned) + // NOTE(jalextowle): We don't allow browser nodes to keep outdated orders + // currently. + results, err := cw.resolver.Mutation().AddOrders(cw.ctx, newOrders, &pinned, &gqltypes.AddOrdersOpts{}) if err != nil { return js.Undefined(), err } diff --git a/packages/mesh-browser/package.json b/packages/mesh-browser/package.json index 4954e60ef..730148a25 100644 --- a/packages/mesh-browser/package.json +++ b/packages/mesh-browser/package.json @@ -1,6 +1,6 @@ { "name": "@0x/mesh-browser", - "version": "10.0.0", + "version": "10.1.0", "description": "TypeScript and JavaScript bindings for running Mesh directly in the browser.", "main": "./lib/index.js", "license": "Apache-2.0", @@ -25,17 +25,17 @@ "@0x/tslint-config": "^4.0.0", "@types/base64-arraybuffer": "^0.1.0", "ignore-loader": "^0.1.2", - "prettier": "^1.19.1", + "prettier": "^2.1.2", "shx": "^0.3.2", - "ts-loader": "^6.2.1", - "tslint": "5.11.0", + "ts-loader": "^8.0.5", + "tslint": "6.1.3", "typedoc": "^0.15.0", - "typescript": "^3.9.3", + "typescript": "^4.0.3", "webpack": "^4.41.5", "webpack-cli": "^3.3.10" }, "dependencies": { - "@0x/mesh-browser-lite": "^10.0.0", + "@0x/mesh-browser-lite": "^10.1.0", "base64-arraybuffer": "^0.2.0", "ethereum-types": "^3.0.0" } diff --git a/packages/mesh-browser/src/index.ts b/packages/mesh-browser/src/index.ts index 24cba53f2..d6c30d655 100644 --- a/packages/mesh-browser/src/index.ts +++ b/packages/mesh-browser/src/index.ts @@ -6,10 +6,10 @@ import { wasmBuffer } from './generated/wasm_buffer'; // us initialize as quickly as possible. const go = new Go(); WebAssembly.instantiate(wasmBuffer, go.importObject) - .then(module => { + .then((module) => { go.run(module.instance); }) - .catch(err => { + .catch((err) => { // tslint:disable-next-line no-console console.error('Could not load Wasm'); // tslint:disable-next-line no-console diff --git a/packages/mesh-browser/tslint.json b/packages/mesh-browser/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-browser/tslint.json +++ b/packages/mesh-browser/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-graphql-client/package.json b/packages/mesh-graphql-client/package.json index 5cd6e2361..5364f9e83 100644 --- a/packages/mesh-graphql-client/package.json +++ b/packages/mesh-graphql-client/package.json @@ -1,6 +1,6 @@ { "name": "@0x/mesh-graphql-client", - "version": "10.0.0", + "version": "10.1.0", "description": "A client for the Mesh GraphQL API", "main": "./lib/src/index.js", "license": "Apache-2.0", @@ -27,7 +27,7 @@ "@0x/types": "^3.2.0", "@0x/web3-wrapper": "^7.2.0", "@types/jsonstream": "^0.8.30", - "@types/ramda": "^0.27.14", + "@types/ramda": "^0.27.20", "@types/rimraf": "^3.0.0", "@types/websocket": "^1.0.1", "chai": "^4.2.0", @@ -35,18 +35,18 @@ "chai-bignumber": "^3.0.0", "dirty-chai": "^2.0.1", "jsonstream": "^1.0.3", - "mocha": "^8.1.0", + "mocha": "^8.1.3", "rimraf": "^3.0.2", "shx": "^0.3.2", "typedoc": "^0.15.0", - "typescript": "^3.9.3", + "typescript": "^4.0.3", "websocket": "^1.0.31" }, "dependencies": { - "@0x/mesh-browser-lite": "^10.0.0", + "@0x/mesh-browser-lite": "^10.1.0", "@0x/types": "^3.2.0", "@0x/utils": "^5.4.0", - "@apollo/client": "^3.1.1", + "@apollo/client": "^3.2.3", "@types/ws": "^7.2.6", "graphql": "^15.3.0", "react": "*", diff --git a/packages/mesh-graphql-client/src/browser_link.ts b/packages/mesh-graphql-client/src/browser_link.ts index 14516cf78..1e8ee0fbc 100644 --- a/packages/mesh-graphql-client/src/browser_link.ts +++ b/packages/mesh-graphql-client/src/browser_link.ts @@ -16,10 +16,18 @@ export class BrowserLink extends ApolloLink { } switch (operation.operationName) { case 'AddOrders': - return new Observable<{ data: AddOrdersResponse }>(observer => { + if ( + operation.variables.opts.keepCancelled || + operation.variables.opts.keepExpired || + operation.variables.opts.keepFullyFilled || + operation.variables.opts.keepUnfunded + ) { + throw new Error('mesh-graphql-client: Browser nodes do not support true values in AddOrdersOpts'); + } + return new Observable<{ data: AddOrdersResponse }>((observer) => { wrapper .gqlAddOrdersAsync(operation.variables.orders, operation.variables.pinned) - .then(addOrders => { + .then((addOrders) => { observer.next({ data: { addOrders } }); observer.complete(); return { data: { addOrders } }; @@ -29,10 +37,10 @@ export class BrowserLink extends ApolloLink { }); }); case 'Order': - return new Observable<{ data: OrderResponse }>(observer => { + return new Observable<{ data: OrderResponse }>((observer) => { wrapper .gqlGetOrderAsync(operation.variables.hash) - .then(order => { + .then((order) => { observer.next({ data: { order } }); observer.complete(); return { data: { order } }; @@ -42,14 +50,14 @@ export class BrowserLink extends ApolloLink { }); }); case 'Orders': - return new Observable<{ data: OrdersResponse }>(observer => { + return new Observable<{ data: OrdersResponse }>((observer) => { wrapper .gqlFindOrdersAsync( operation.variables.sort, operation.variables.filters, operation.variables.limit, ) - .then(orders => { + .then((orders) => { observer.next({ data: { orders, @@ -67,10 +75,10 @@ export class BrowserLink extends ApolloLink { }); }); case 'Stats': - return new Observable<{ data: StatsResponse }>(observer => { + return new Observable<{ data: StatsResponse }>((observer) => { wrapper .gqlGetStatsAsync() - .then(stats => { + .then((stats) => { observer.next({ data: { stats, diff --git a/packages/mesh-graphql-client/src/index.ts b/packages/mesh-graphql-client/src/index.ts index f0b103eeb..d1d69042a 100644 --- a/packages/mesh-graphql-client/src/index.ts +++ b/packages/mesh-graphql-client/src/index.ts @@ -21,6 +21,7 @@ import * as Observable from 'zen-observable'; import { BrowserLink } from './browser_link'; import { + AddOrdersOpts, AddOrdersResponse, AddOrdersResults, convertFilterValue, @@ -83,8 +84,12 @@ const statsQuery = gql` `; const addOrdersMutation = gql` - mutation AddOrders($orders: [NewOrder!]!, $pinned: Boolean = true) { - addOrders(orders: $orders, pinned: $pinned) { + mutation AddOrders( + $orders: [NewOrder!]! + $pinned: Boolean = true + $opts: AddOrdersOpts = { keepCancelled: false, keepExpired: false, keepFullyFilled: false, keepUnfunded: false } + ) { + addOrders(orders: $orders, pinned: $pinned, opts: $opts) { accepted { order { hash @@ -276,7 +281,7 @@ export class MeshGraphQLClient { ); const errorLink = onError(({ graphQLErrors, networkError }) => { if (graphQLErrors != null && graphQLErrors.length > 0) { - const allMessages = graphQLErrors.map(err => err.message).join('\n'); + const allMessages = graphQLErrors.map((err) => err.message).join('\n'); throw new Error(`GraphQL error(s): ${allMessages}`); } if (networkError != null) { @@ -327,12 +332,23 @@ export class MeshGraphQLClient { return fromStringifiedStats(stats); } - public async addOrdersAsync(orders: SignedOrder[], pinned: boolean = true): Promise { + public async addOrdersAsync( + orders: SignedOrder[], + pinned: boolean = true, + opts?: AddOrdersOpts, + ): Promise { const resp: FetchResult = await this._client.mutate({ mutation: addOrdersMutation, variables: { orders: orders.map(toStringifiedSignedOrder), pinned, + opts: { + keepCancelled: false, + keepExpired: false, + keepFullyFilled: false, + keepUnfunded: false, + ...opts, + }, }, }); if (resp.data == null) { @@ -392,7 +408,7 @@ export class MeshGraphQLClient { const incomingObservable = this._client.subscribe({ query: orderEventsSubscription, }) as Observable>; - const outgoingObservable = new Observable(observer => { + const outgoingObservable = new Observable((observer) => { subscriptionClient.onError((err: ErrorEvent) => { observer.error(new Error(err.message)); }); @@ -402,14 +418,14 @@ export class MeshGraphQLClient { incomingObservable.subscribe({ next: (result: FetchResult) => { if (result.errors != null && result.errors.length > 0) { - result.errors.forEach(err => observer.error(err)); + result.errors.forEach((err) => observer.error(err)); } else if (result.data == null) { observer.error(new Error('received no data')); } else { observer.next(result.data.orderEvents.map(fromStringifiedOrderEvent)); } }, - error: err => observer.error(err), + error: (err) => observer.error(err), complete: () => observer.complete(), }); }); diff --git a/packages/mesh-graphql-client/src/types.ts b/packages/mesh-graphql-client/src/types.ts index a1b7bf586..f6f5d1429 100644 --- a/packages/mesh-graphql-client/src/types.ts +++ b/packages/mesh-graphql-client/src/types.ts @@ -1,6 +1,13 @@ import { SignedOrder } from '@0x/types'; import { BigNumber } from '@0x/utils'; +export interface AddOrdersOpts { + keepCancelled?: boolean; + keepExpired?: boolean; + keepFullyFilled?: boolean; + keepUnfunded?: boolean; +} + export interface StatsResponse { stats: StringifiedStats; } diff --git a/packages/mesh-graphql-client/test/graphql_client_test.ts b/packages/mesh-graphql-client/test/graphql_client_test.ts index 57d2b2164..37b545126 100644 --- a/packages/mesh-graphql-client/test/graphql_client_test.ts +++ b/packages/mesh-graphql-client/test/graphql_client_test.ts @@ -22,7 +22,7 @@ import { import { MeshDeployment, startServerAndClientAsync } from './utils/graphql_server'; -blockchainTests.resets('GraphQLClient', env => { +blockchainTests.resets('GraphQLClient', (env) => { describe('integration tests', () => { let deployment: MeshDeployment; let exchange: ExchangeContract; @@ -112,6 +112,31 @@ blockchainTests.resets('GraphQLClient', env => { }); }); + it('accepts expired order with "keepExpired"', async () => { + const order = await orderFactory.newSignedOrderAsync({ + expirationTimeSeconds: new BigNumber(0), + }); + const hash = orderHashUtils.getOrderHashHex(order); + const validationResults = await deployment.client.addOrdersAsync([order], false, { keepExpired: true }); + expect(validationResults).to.be.deep.eq({ + accepted: [], + rejected: [ + { + hash, + order, + code: RejectedOrderCode.OrderExpired, + message: 'order expired according to latest block timestamp', + }, + ], + }); + const responseOrder = await deployment.client.getOrderAsync(hash); + expect(responseOrder).to.be.deep.eq({ + ...order, + fillableTakerAssetAmount: new BigNumber(0), + hash, + }); + }); + it('rejects order with invalid signature', async () => { const invalidOrder = { ...(await orderFactory.newSignedOrderAsync({})), @@ -209,7 +234,7 @@ blockchainTests.resets('GraphQLClient', env => { // Verify that all of the orders that were added to the mesh node // were returned in the response. const gotOrders = await deployment.client.findOrdersAsync(); - const expectedOrders = orders.map(order => ({ + const expectedOrders = orders.map((order) => ({ ...order, hash: orderHashUtils.getOrderHashHex(order), fillableTakerAssetAmount: order.takerAssetAmount, @@ -237,7 +262,7 @@ blockchainTests.resets('GraphQLClient', env => { }); // We expect 5 orders sorted in descending order by makerAssetAmount starting at 7. // I.e. orders with makerAmounts of 7, 6, 5, 4, and 3. - const expectedOrders = orders.map(order => ({ + const expectedOrders = orders.map((order) => ({ ...order, hash: orderHashUtils.getOrderHashHex(order), fillableTakerAssetAmount: order.takerAssetAmount, @@ -288,7 +313,7 @@ blockchainTests.resets('GraphQLClient', env => { // Subscribe to orders and wait for order events. const orderEvents = deployment.client.onOrderEvents(); orderEvents.subscribe({ - error: err => { + error: (err) => { if (isDone && err.message === 'WebSocket connection lost') { // This error is expected to happen after the server is shut down. } else { @@ -345,7 +370,7 @@ blockchainTests.resets('GraphQLClient', env => { // Subscribe to order events and assert that only a single cancel event was received. const orderEvents = deployment.client.onOrderEvents(); orderEvents.subscribe({ - error: err => { + error: (err) => { if (isDone && err.message === 'WebSocket connection lost') { // This error is expected to happen after the server is shut down. } else { diff --git a/packages/mesh-graphql-client/test/utils/graphql_server.ts b/packages/mesh-graphql-client/test/utils/graphql_server.ts index 73509961d..9d025a475 100644 --- a/packages/mesh-graphql-client/test/utils/graphql_server.ts +++ b/packages/mesh-graphql-client/test/utils/graphql_server.ts @@ -11,10 +11,10 @@ async function buildBinaryAsync(): Promise { const cwd = join(__dirname, '../../../../../').normalize(); const build = spawn('make', ['mesh'], { cwd }); await new Promise((resolve, reject) => { - build.on('close', code => { + build.on('close', (code) => { code === 0 ? resolve() : reject(new Error('Failed to build 0x-mesh')); }); - build.on('error', error => { + build.on('error', (error) => { reject(error); }); }); @@ -22,7 +22,7 @@ async function buildBinaryAsync(): Promise { async function cleanupAsync(): Promise { await new Promise((resolve, reject) => { - rimraf(dataDir, err => { + rimraf(dataDir, (err) => { if (err != null) { reject(err); } @@ -84,7 +84,7 @@ export class MeshHarness { } return new Promise((resolve, reject) => { const stream = jsonstream.parse(true); - stream.on('data', data => { + stream.on('data', (data) => { // Note(albrow): Uncomment this if you need to see the output from the server. // console.log(data); const dataString = JSON.stringify(data); @@ -116,12 +116,12 @@ export class MeshHarness { env.ENABLE_GRAPHQL_SERVER = true; env.GRAPHQL_SERVER_ADDR = `localhost:${this._graphQLServerPort}`; this._mesh = spawn('mesh', [], { env }); - this._mesh.stderr.on('error', error => { + this._mesh.stderr.on('error', (error) => { throw new Error(`${error.name} - ${error.message}`); }); } } async function sleepAsync(ms: number): Promise { - return new Promise(resolve => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } diff --git a/packages/mesh-graphql-client/tslint.json b/packages/mesh-graphql-client/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-graphql-client/tslint.json +++ b/packages/mesh-graphql-client/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-integration-tests/graphql/index.ts b/packages/mesh-integration-tests/graphql/index.ts index a1525a6c2..2e9ce1f4c 100644 --- a/packages/mesh-integration-tests/graphql/index.ts +++ b/packages/mesh-integration-tests/graphql/index.ts @@ -84,7 +84,7 @@ provider.start(); // this. console.log(JSON.stringify(event)); } - })().catch(err => { + })().catch((err) => { console.error(err); }); }); @@ -122,7 +122,7 @@ provider.start(); const finishedDiv = document.createElement('div'); finishedDiv.setAttribute('id', 'jsFinished'); document.body.appendChild(finishedDiv); -})().catch(err => { +})().catch((err) => { if (err instanceof Error) { console.error(`${err.name}: ${err.message}`); } else { @@ -132,5 +132,5 @@ provider.start(); // tslint:enable:no-console async function sleepAsync(ms: number): Promise { - return new Promise(resolve => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } diff --git a/packages/mesh-integration-tests/legacy/index.ts b/packages/mesh-integration-tests/legacy/index.ts index 0cbb33356..8dc0499f6 100644 --- a/packages/mesh-integration-tests/legacy/index.ts +++ b/packages/mesh-integration-tests/legacy/index.ts @@ -84,7 +84,7 @@ provider.start(); // this. console.log(JSON.stringify(event)); } - })().catch(err => console.error(err)); + })().catch((err) => console.error(err)); }); // Start Mesh *after* we set up the handlers. @@ -120,7 +120,7 @@ provider.start(); const finishedDiv = document.createElement('div'); finishedDiv.setAttribute('id', 'jsFinished'); document.body.appendChild(finishedDiv); -})().catch(err => { +})().catch((err) => { if (err instanceof Error) { console.error(`${err.name}: ${err.message}`); } else { @@ -130,5 +130,5 @@ provider.start(); // tslint:enable:no-console async function sleepAsync(ms: number): Promise { - return new Promise(resolve => setTimeout(resolve, ms)); + return new Promise((resolve) => setTimeout(resolve, ms)); } diff --git a/packages/mesh-integration-tests/package.json b/packages/mesh-integration-tests/package.json index a974f3b14..6474f1a5d 100644 --- a/packages/mesh-integration-tests/package.json +++ b/packages/mesh-integration-tests/package.json @@ -16,14 +16,14 @@ }, "devDependencies": { "rimraf": "^3.0.0", - "ts-loader": "^6.0.4", - "typescript": "^3.9.3", + "ts-loader": "^8.0.5", + "typescript": "^4.0.3", "webpack": "^4.39.2", "webpack-cli": "^3.3.7" }, "dependencies": { - "@0x/mesh-browser": "^10.0.0", - "@0x/mesh-graphql-client": "^10.0.0", + "@0x/mesh-browser": "^10.1.0", + "@0x/mesh-graphql-client": "^10.1.0", "@0x/order-utils": "^10.0.1", "@0x/subproviders": "^6.0.2", "@0x/utils": "^5.1.1" diff --git a/packages/mesh-integration-tests/tslint.json b/packages/mesh-integration-tests/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-integration-tests/tslint.json +++ b/packages/mesh-integration-tests/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-webpack-example-lite/package.json b/packages/mesh-webpack-example-lite/package.json index ee68c151c..e80ea4454 100644 --- a/packages/mesh-webpack-example-lite/package.json +++ b/packages/mesh-webpack-example-lite/package.json @@ -17,12 +17,12 @@ "devDependencies": { "rimraf": "^3.0.0", "shx": "^0.3.2", - "ts-loader": "^6.0.4", - "typescript": "^3.9.3", + "ts-loader": "^8.0.5", + "typescript": "^4.0.3", "webpack": "^4.39.2", "webpack-cli": "^3.3.7" }, "dependencies": { - "@0x/mesh-browser-lite": "^10.0.0" + "@0x/mesh-browser-lite": "^10.1.0" } } diff --git a/packages/mesh-webpack-example-lite/src/index.ts b/packages/mesh-webpack-example-lite/src/index.ts index 5ffa7b99d..5af376954 100644 --- a/packages/mesh-webpack-example-lite/src/index.ts +++ b/packages/mesh-webpack-example-lite/src/index.ts @@ -62,7 +62,7 @@ import { // Add the order and log the result. const result = await mesh.addOrdersAsync([order]); console.log(result); -})().catch(err => { +})().catch((err) => { console.error(err); }); // tslint:enable:no-console diff --git a/packages/mesh-webpack-example-lite/tslint.json b/packages/mesh-webpack-example-lite/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-webpack-example-lite/tslint.json +++ b/packages/mesh-webpack-example-lite/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/packages/mesh-webpack-example/package.json b/packages/mesh-webpack-example/package.json index 571b84763..2eb66c229 100644 --- a/packages/mesh-webpack-example/package.json +++ b/packages/mesh-webpack-example/package.json @@ -15,12 +15,12 @@ "devDependencies": { "rimraf": "^3.0.0", "shx": "^0.3.2", - "ts-loader": "^6.0.4", - "typescript": "^3.9.3", + "ts-loader": "^8.0.5", + "typescript": "^4.0.3", "webpack": "^4.39.2", "webpack-cli": "^3.3.7" }, "dependencies": { - "@0x/mesh-browser": "^10.0.0" + "@0x/mesh-browser": "^10.1.0" } } diff --git a/packages/mesh-webpack-example/src/index.ts b/packages/mesh-webpack-example/src/index.ts index 369303319..99f3a4ba8 100644 --- a/packages/mesh-webpack-example/src/index.ts +++ b/packages/mesh-webpack-example/src/index.ts @@ -52,7 +52,7 @@ import { BigNumber, Mesh, OrderEvent, SignedOrder, SupportedProvider } from '@0x // Add the order and log the result. const result = await mesh.addOrdersAsync([order]); console.log(result); -})().catch(err => { +})().catch((err) => { console.error(err); }); // tslint:enable:no-console diff --git a/packages/mesh-webpack-example/tslint.json b/packages/mesh-webpack-example/tslint.json index dd9053357..57bbce2b9 100644 --- a/packages/mesh-webpack-example/tslint.json +++ b/packages/mesh-webpack-example/tslint.json @@ -1,3 +1,6 @@ { - "extends": ["@0x/tslint-config"] + "extends": ["@0x/tslint-config"], + "rules": { + "arrow-parens": true + } } diff --git a/yarn.lock b/yarn.lock index abd681064..e325fcced 100644 --- a/yarn.lock +++ b/yarn.lock @@ -429,11 +429,12 @@ ethers "~4.0.4" lodash "^4.17.11" -"@apollo/client@^3.1.1": - version "3.1.4" - resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.1.4.tgz#2848a9f29619275df9af55966c4f5984e31cea6e" - integrity sha512-XPZ2eL+0GN25FazEOAVAvEyAzWPVsHeo+DgG/45d4Rb+srzPN+vmRgpQL5TdX2BYJoPd04J/g8OZwYUEKL8laA== +"@apollo/client@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@apollo/client/-/client-3.2.3.tgz#d13e4efa501a1fadefa3cd93e2de99cba2b53999" + integrity sha512-AraRQRG4HinqcsuDtRzuavMuSxkK46TO4zh4zfLLCazMYSYP1xY9E5cQEeUHZ993HQMs4A7tyATPaEMfn8UZfA== dependencies: + "@graphql-typed-document-node/core" "^3.0.0" "@types/zen-observable" "^0.8.0" "@wry/context" "^0.5.2" "@wry/equality" "^0.2.0" @@ -442,12 +443,33 @@ hoist-non-react-statics "^3.3.2" optimism "^0.12.1" prop-types "^15.7.2" - symbol-observable "^1.2.0" + symbol-observable "^2.0.0" terser "^5.2.0" ts-invariant "^0.4.4" tslib "^1.10.0" zen-observable "^0.8.14" +"@babel/code-frame@^7.0.0": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.10.4.tgz#168da1a36e90da68ae8d49c0f1b48c7c6249213a" + integrity sha512-vG6SvB6oYEhvgisZNFRmRCUkLz11c7rp+tbNTynGqc6mS1d5ATd/sGyV6W0KZZnXRKMTzZDRgQT3Ou9jhpAfUg== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/helper-validator-identifier@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.10.4.tgz#a78c7a7251e01f616512d31b10adcf52ada5e0d2" + integrity sha512-3U9y+43hz7ZM+rzG24Qe2mufW5KhvFg/NhnNph+i9mgCtdTCtMJuI1TMkrIUiK7Ix4PYlRF9I5dhqaLYA/ADXw== + +"@babel/highlight@^7.10.4": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.10.4.tgz#7d1bdfd65753538fabe6c38596cdb76d9ac60143" + integrity sha512-i6rgnR/YgPEQzZZnbTHHuZdlE8qyoBNalD6F+q4vAFlcMEcqmkoG+mPqJYJCo63qPf74+Y1UZsl3l6f7/RIkmA== + dependencies: + "@babel/helper-validator-identifier" "^7.10.4" + chalk "^2.0.0" + js-tokens "^4.0.0" + "@babel/runtime@^7.1.5": version "7.11.2" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.11.2.tgz#f549c13c754cc40b87644b9fa9f09a6a95fe0736" @@ -552,6 +574,11 @@ "@ethersproject/constants" "^5.0.3" "@ethersproject/logger" "^5.0.5" +"@graphql-typed-document-node/core@^3.0.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@graphql-typed-document-node/core/-/core-3.1.0.tgz#0eee6373e11418bfe0b5638f654df7a4ca6a3950" + integrity sha512-wYn6r8zVZyQJ6rQaALBEln5B1pzxb9shV5Ef97kTvn6yVGrqyXVnDqnU24MXnFubR+rZjBY9NWuxX3FB2sTsjg== + "@jest/types@^24.9.0": version "24.9.0" resolved "https://registry.yarnpkg.com/@jest/types/-/types-24.9.0.tgz#63cb26cb7500d069e5a389441a7c6ab5e909fc59" @@ -769,10 +796,10 @@ resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.3.tgz#2ab0d5da2e5815f94b0b9d4b95d1e5f243ab2ca7" integrity sha512-KfRL3PuHmqQLOG+2tGpRO26Ctg+Cq1E01D2DMriKEATHgWLfeNDmq9e29Q9WIky0dQ3NPkd1mzYH8Lm936Z9qw== -"@types/ramda@^0.27.14": - version "0.27.17" - resolved "https://registry.yarnpkg.com/@types/ramda/-/ramda-0.27.17.tgz#b4359d29614994dbb4c70e504b268bd9f0388bb0" - integrity sha512-AHVwr1YdFdxeabfC1g34ZuJ61dKOcfdXlG+sqGUweD+5VrD6A9emwmc2OZY+N8CdEKdwl29hwvtTMSJ6ZVVsiQ== +"@types/ramda@^0.27.20": + version "0.27.20" + resolved "https://registry.yarnpkg.com/@types/ramda/-/ramda-0.27.20.tgz#ced17424e358f058af271d97353d6913fd178663" + integrity sha512-Oxi5JMT6YIiMLP0gir8Eiy22f1CfbKLGGisu6tDrLCl5gHQd0EeUTUCfy7zdWfV19WEU/ccUVBfKOh2B1c2DbQ== dependencies: ts-toolbelt "^6.3.3" @@ -1111,10 +1138,10 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.4.1: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.2, ajv@^6.12.3: - version "6.12.4" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.4.tgz#0614facc4522127fa713445c6bfd3ebd376e2234" - integrity sha512-eienB2c9qVQs2KWexhkrdMLVDoIQCz5KSeLxwg9Lzk4DOfBtIK9PQwwufcsn1jjGuf9WZmqPMbGxOzfcuphJCQ== +ajv@^6.1.0, ajv@^6.10.2, ajv@^6.12.3, ajv@^6.12.5: + version "6.12.5" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.5.tgz#19b0e8bae8f476e5ba666300387775fb1a00a4da" + integrity sha512-lRF8RORchjpKG50/WFf8xmg7sgCLFiYNNnqdKflk63whMQcWR5ngGjiSXkL9bjxy6B2npOK2HSMN49jEBMSkag== dependencies: fast-deep-equal "^3.1.1" fast-json-stable-stringify "^2.0.0" @@ -2515,7 +2542,7 @@ chalk@^1.1.3: strip-ansi "^3.0.0" supports-color "^2.0.0" -chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2762,7 +2789,7 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= -concat-stream@^1.5.0, concat-stream@^1.5.1, concat-stream@^1.6.0, concat-stream@^1.6.2: +concat-stream@^1.5.0, concat-stream@^1.5.1, concat-stream@^1.6.0: version "1.6.2" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== @@ -3228,7 +3255,7 @@ diff@3.5.0, diff@^3.2.0: resolved "https://registry.yarnpkg.com/diff/-/diff-3.5.0.tgz#800c0dd1e0a8bfbc95835c202ad220fe317e5a12" integrity sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA== -diff@4.0.2: +diff@4.0.2, diff@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/diff/-/diff-4.0.2.tgz#60f3aecb89d5fae520c11aa19efc2bb982aade7d" integrity sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A== @@ -4197,16 +4224,6 @@ extglob@^2.0.4: snapdragon "^0.8.1" to-regex "^3.0.1" -extract-zip@^1.6.5: - version "1.7.0" - resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-1.7.0.tgz#556cc3ae9df7f452c493a0cfb51cc30277940927" - integrity sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA== - dependencies: - concat-stream "^1.6.2" - debug "^2.6.9" - mkdirp "^0.5.4" - yauzl "^2.10.0" - extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -5598,7 +5615,7 @@ isobject@^3.0.0, isobject@^3.0.1: resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= -isomorphic-fetch@2.2.1, isomorphic-fetch@^2.2.1: +isomorphic-fetch@2.2.1: version "2.2.1" resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-2.2.1.tgz#611ae1acf14f5e81f729507472819fe9733558a9" integrity sha1-YRrhrPFPXoH3KVB0coGf6XM1WKk= @@ -5606,6 +5623,14 @@ isomorphic-fetch@2.2.1, isomorphic-fetch@^2.2.1: node-fetch "^1.0.1" whatwg-fetch ">=0.10.0" +isomorphic-fetch@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/isomorphic-fetch/-/isomorphic-fetch-3.0.0.tgz#0267b005049046d2421207215d45d6a262b8b8b4" + integrity sha512-qvUtwJ3j6qwsF3jLxkZ72qCgjMysPzDfeV240JHiGZsANBYd+EEuu35v7dfrJ9Up0Ak07D7GGSkGhCHTqg/5wA== + dependencies: + node-fetch "^2.6.1" + whatwg-fetch "^3.4.1" + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" @@ -5691,7 +5716,7 @@ js-sha3@^0.7.0: resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.7.0.tgz#0a5c57b36f79882573b2d84051f8bb85dd1bd63a" integrity sha512-Wpks3yBDm0UcL5qlVhwW9Jr9n9i4FfeWBFOOXP5puDS/SiudJGhw7DPyBqn3487qD4F0lsC0q3zxink37f7zeA== -"js-tokens@^3.0.0 || ^4.0.0": +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== @@ -5709,7 +5734,7 @@ js-yaml@3.13.1: argparse "^1.0.7" esprima "^4.0.0" -js-yaml@3.14.0, js-yaml@3.x, js-yaml@^3.7.0: +js-yaml@3.14.0, js-yaml@3.x, js-yaml@^3.13.1, js-yaml@^3.7.0: version "3.14.0" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.0.tgz#a7a34170f26a21bb162424d8adacb4113a69e482" integrity sha512-/4IbIeHcD9VMHFqDR/gQ7EdZdLimOvW2DdcxFjdyyZ9NsbS+ccrXqVWDtab/lRl5AlUqmpBx8EhPaWR+OtY17A== @@ -6432,7 +6457,7 @@ mime-types@^2.1.12, mime-types@^2.1.16, mime-types@~2.1.19, mime-types@~2.1.24: dependencies: mime-db "1.44.0" -mime@1.6.0, mime@^1.3.4: +mime@1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -6544,7 +6569,7 @@ mkdirp@0.5.4: dependencies: minimist "^1.2.5" -mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3, mkdirp@^0.5.4: +mkdirp@0.5.x, mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.3: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -6580,10 +6605,10 @@ mocha@^6.2.0: yargs-parser "13.1.2" yargs-unparser "1.6.0" -mocha@^8.1.0: - version "8.1.2" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.1.2.tgz#d67fad13300e4f5cd48135a935ea566f96caf827" - integrity sha512-I8FRAcuACNMLQn3lS4qeWLxXqLvGf6r2CaLstDpZmMUUSmvW6Cnm1AuHxgbc7ctZVRcfwspCRbDHymPsi3dkJw== +mocha@^8.1.3: + version "8.1.3" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-8.1.3.tgz#5e93f873e35dfdd69617ea75f9c68c2ca61c2ac5" + integrity sha512-ZbaYib4hT4PpF4bdSO2DohooKXIn4lDeiYqB+vTmCdr6l2woW0b6H3pf5x4sM5nwQMru9RvjjHYWVGltR50ZBw== dependencies: ansi-colors "4.1.1" browser-stdout "1.3.1" @@ -6747,6 +6772,11 @@ node-fetch@^1.0.1, node-fetch@~1.7.1: encoding "^0.1.11" is-stream "^1.0.1" +node-fetch@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + node-gyp-build@^4.2.0: version "4.2.3" resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.2.3.tgz#ce6277f853835f718829efb47db20f3e4d9c4739" @@ -7436,10 +7466,10 @@ prepend-http@^2.0.0: resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= -prettier@^1.19.1: - version "1.19.1" - resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" - integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== +prettier@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.2.tgz#3050700dae2e4c8b67c4c3f666cdb8af405e1ce5" + integrity sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg== pretty-hrtime@^1.0.0: version "1.0.3" @@ -7466,7 +7496,7 @@ process@~0.5.1: resolved "https://registry.yarnpkg.com/process/-/process-0.5.2.tgz#1638d8a8e34c2f440a91db95ab9aeb677fc185cf" integrity sha1-FjjYqONML0QKkduVq5rrZ3/Bhc8= -progress@^2.0.0, progress@^2.0.3: +progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -7639,18 +7669,6 @@ punycode@^2.1.0, punycode@^2.1.1: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -puppeteer@^0.9.0: - version "0.9.0" - resolved "https://registry.yarnpkg.com/puppeteer/-/puppeteer-0.9.0.tgz#d65997ff83e24eb569e5577d2f75695dcbe5be4a" - integrity sha512-wlmYlLIQsySYnxFQxXTMp1ACB5oMyHI6y2pCJ4YoVqyp0Uml3T+HS64jGimxOD3x93T3G+FM3JI3nBmHCovNgA== - dependencies: - debug "^2.6.8" - extract-zip "^1.6.5" - mime "^1.3.4" - progress "^2.0.0" - rimraf "^2.6.1" - ws "^3.0.0" - qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" @@ -7680,13 +7698,6 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= -qunit-puppeteer@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/qunit-puppeteer/-/qunit-puppeteer-1.0.1.tgz#453048fbd3e5ece377ee455ba442f112e3dd7e95" - integrity sha512-pNygtg0y2+rVZRJC3w3LZVLrHBsw39DfuPHZVe6hpHT1Uppm2k2NmUm/EJbjij8FYFG2iwa+akinfcm8Yc9jKw== - dependencies: - puppeteer "^0.9.0" - randombytes@^2.0.0, randombytes@^2.0.1, randombytes@^2.0.5, randombytes@^2.0.6, randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -8874,11 +8885,16 @@ swarm-js@0.1.39: tar "^4.0.2" xhr-request-promise "^0.1.2" -symbol-observable@^1.0.4, symbol-observable@^1.2.0: +symbol-observable@^1.0.4: version "1.2.0" resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-1.2.0.tgz#c22688aed4eab3cdc2dfeacbb561660560a00804" integrity sha512-e900nM8RRtGhlV36KGEU9k65K3mPb1WV70OdjfxlG2EAuM1noi/E/BaW/uMhL7bPEssK8QV57vN3esixjUvcXQ== +symbol-observable@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/symbol-observable/-/symbol-observable-2.0.1.tgz#ce66c36a04ed0f3056e7293184749a6fdd7063ea" + integrity sha512-QrfHrrEUMadQCgMijc3YpfA4ncwgqGv58Xgvdu3JZVQB7iY7cAkiqobZEZbaA863jof8AdpR01CPnZ5UWeqZBQ== + tapable@^1.0.0, tapable@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2" @@ -9134,10 +9150,10 @@ ts-invariant@^0.4.4: dependencies: tslib "^1.9.3" -ts-loader@^6.0.4, ts-loader@^6.2.1: - version "6.2.2" - resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-6.2.2.tgz#dffa3879b01a1a1e0a4b85e2b8421dc0dfff1c58" - integrity sha512-HDo5kXZCBml3EUPcc7RlZOV/JGlLHwppTLEHb3SHnr5V7NXD4klMEkrhJe5wgRbaWsSXi+Y1SIBN/K9B6zWGWQ== +ts-loader@^8.0.5: + version "8.0.5" + resolved "https://registry.yarnpkg.com/ts-loader/-/ts-loader-8.0.5.tgz#fa42b9305247eb964843df1ecb0e589b1bff0f77" + integrity sha512-MvLXmjDxl2Mhv17nvkrB6BrpC8FTwSb7K38oIgdUI6BMx4XgVbljmcoOzlrYn4wyjNTFQ3utd7s2TyigJyR3YA== dependencies: chalk "^2.3.0" enhanced-resolve "^4.0.0" @@ -9155,7 +9171,7 @@ tslib@1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.0.tgz#e37a86fda8cbbaf23a057f473c9f4dc64e5fc2e8" integrity sha512-f/qGG2tUkrISBlQZEjEqoZ3B2+npJjIf04H1wuAv9iA8i04Icp+61KRXxFdha22670NJopsZCIjhC3SnjPRKrQ== -tslib@^1.10.0, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: +tslib@^1.10.0, tslib@^1.13.0, tslib@^1.8.0, tslib@^1.8.1, tslib@^1.9.0, tslib@^1.9.3: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== @@ -9194,6 +9210,25 @@ tslint@5.11.0: tslib "^1.8.0" tsutils "^2.27.2" +tslint@6.1.3: + version "6.1.3" + resolved "https://registry.yarnpkg.com/tslint/-/tslint-6.1.3.tgz#5c23b2eccc32487d5523bd3a470e9aa31789d904" + integrity sha512-IbR4nkT96EQOvKE2PW/djGz8iGNeJ4rF2mBfiYaR/nvUWYKJhLwimoJKgjIFEIDibBtOevj7BqCRL4oHeWWUCg== + dependencies: + "@babel/code-frame" "^7.0.0" + builtin-modules "^1.1.1" + chalk "^2.3.0" + commander "^2.12.1" + diff "^4.0.1" + glob "^7.1.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + mkdirp "^0.5.3" + resolve "^1.3.2" + semver "^5.3.0" + tslib "^1.13.0" + tsutils "^2.29.0" + tsutils@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.0.0.tgz#0c5070a17a0503e056da038c48b5a1870a50a9ad" @@ -9201,7 +9236,7 @@ tsutils@3.0.0: dependencies: tslib "^1.8.1" -tsutils@^2.13.1, tsutils@^2.27.2: +tsutils@^2.13.1, tsutils@^2.27.2, tsutils@^2.29.0: version "2.29.0" resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99" integrity sha512-g5JVHCIJwzfISaXpXE1qvNalca5Jwob6FjI4AoPlqMusJ6ftFE7IkkFoMhVLRgK+4Kx3gkzb8UZK5t5yTTvEmA== @@ -9324,10 +9359,10 @@ typescript@3.7.x: resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.7.5.tgz#0692e21f65fd4108b9330238aac11dd2e177a1ae" integrity sha512-/P5lkRXkWHNAbcJIiHPfRoKqyd7bsyCma1hZNUGfn20qm64T6ZBlrzprymeu918H+mB/0rIg2gGK/BXkhhYgBw== -typescript@^3.9.3: - version "3.9.7" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.7.tgz#98d600a5ebdc38f40cb277522f12dc800e9e25fa" - integrity sha512-BLbiRkiBzAwsjut4x/dsibSTB6yWpwT5qWmC2OfuCg3GgVQCSgMs4vEctYPhsaGtd0AeuuHMkjZ2h2WG8MSzRw== +typescript@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.0.3.tgz#153bbd468ef07725c1df9c77e8b453f8d36abba5" + integrity sha512-tEu6DGxGgRJPb/mVPIZ48e69xCn2yRmCgYmDugAVwmJ6o+0u1RI18eO7E7WBTLYLaEVVOhwQmcdhQHweux/WPg== typewise-core@^1.2, typewise-core@^1.2.0: version "1.2.0" @@ -10106,10 +10141,10 @@ whatwg-fetch@2.0.4: resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-2.0.4.tgz#dde6a5df315f9d39991aa17621853d720b85566f" integrity sha512-dcQ1GWpOD/eEQ97k66aiEVpNnapVj90/+R+SXTPYGHpYBBypfKJEQjLrvMZ7YXbKm21gXd4NcuxUTjiv1YtLng== -whatwg-fetch@>=0.10.0: - version "3.4.0" - resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.4.0.tgz#e11de14f4878f773fbebcde8871b2c0699af8b30" - integrity sha512-rsum2ulz2iuZH08mJkT0Yi6JnKhwdw4oeyMjokgxd+mmqYSd9cPpOQf01TIWgjxG/U4+QR+AwKq6lSbXVxkyoQ== +whatwg-fetch@>=0.10.0, whatwg-fetch@^3.4.1: + version "3.4.1" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.4.1.tgz#e5f871572d6879663fa5674c8f833f15a8425ab3" + integrity sha512-sofZVzE1wKwO+EYPbWfiwzaKovWiZXf4coEzjGP9b2GBVgQRLQUZ2QcuPpQExGDAW5GItpEm6Tl4OU5mywnAoQ== which-module@^1.0.0: version "1.0.0" @@ -10436,7 +10471,7 @@ yargs@^7.1.0: y18n "^3.2.1" yargs-parser "5.0.0-security.0" -yauzl@^2.10.0, yauzl@^2.4.2: +yauzl@^2.4.2: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk= diff --git a/zeroex/ordervalidator/order_validator.go b/zeroex/ordervalidator/order_validator.go index cfc0805f1..e72d674b4 100644 --- a/zeroex/ordervalidator/order_validator.go +++ b/zeroex/ordervalidator/order_validator.go @@ -275,16 +275,6 @@ func (o *OrderValidator) BatchValidate(ctx context.Context, signedOrders []*zero for _, signedOrders := range signedOrderChunks { wg.Add(1) go func(signedOrders []*zeroex.SignedOrder) { - // FIXME - Is this needed? - // trimmedOrders := []wrappers.LibOrderOrder{} - // for _, signedOrder := range signedOrders { - // trimmedOrders = append(trimmedOrders, signedOrder.Trim()) - // } - // signatures := [][]byte{} - // for _, signedOrder := range signedOrders { - // signatures = append(signatures, signedOrder.Signature) - // } - defer wg.Done() select { diff --git a/zeroex/orderwatch/order_watcher.go b/zeroex/orderwatch/order_watcher.go index f411bc7d2..97bb3d904 100644 --- a/zeroex/orderwatch/order_watcher.go +++ b/zeroex/orderwatch/order_watcher.go @@ -193,9 +193,7 @@ func (w *Watcher) mainLoop(ctx context.Context) error { close(w.blockEventsChan) return nil case err := <-w.blockSubscription.Err(): - logger.WithFields(logger.Fields{ - "error": err.Error(), - }).Error("block subscription error encountered") + logger.WithField("error", err.Error()).Error("block subscription error encountered") case events := <-w.blockEventsChan: // Instead of simply processing the first array of events in the blockEventsChan, // we might as well process _all_ events in the channel. @@ -274,16 +272,16 @@ func (w *Watcher) removedCheckerLoop(ctx context.Context) error { // handleOrderExpirations takes care of generating expired and unexpired order events for orders that do not require re-validation. // Since expiry is now done according to block timestamp, we can figure out which orders have expired/unexpired statically. We do not -// process blocks that require re-validation, since the validation process will already emit the necessary events. +// process orders that require re-validation, since the validation process will already emit the necessary events. // latestBlockTimestamp is the latest block timestamp Mesh knows about // ordersToRevalidate contains all the orders Mesh needs to re-validate given the events emitted by the blocks processed -func (w *Watcher) handleOrderExpirations(validationBlock *types.MiniHeader, ordersToRevalidate map[common.Hash]*types.OrderWithMetadata) ([]*zeroex.OrderEvent, error) { +func (w *Watcher) handleOrderExpirations(validationBlock *types.MiniHeader, ordersToRevalidate map[common.Hash]*types.OrderWithMetadata) ([]*zeroex.OrderEvent, map[common.Hash]struct{}, error) { orderEvents := []*zeroex.OrderEvent{} // Check for any orders that have now expired. expiredOrders, err := w.findOrdersToExpire(validationBlock.Timestamp) if err != nil { - return orderEvents, err + return orderEvents, nil, err } for _, order := range expiredOrders { // If we will re-validate this order, the revalidation process will discover that @@ -291,7 +289,11 @@ func (w *Watcher) handleOrderExpirations(validationBlock *types.MiniHeader, orde if _, ok := ordersToRevalidate[order.Hash]; ok { continue } - w.unwatchOrder(order, nil, validationBlock) + if order.KeepExpired { + w.markOrderUnfillable(order, nil, validationBlock) + } else { + w.unwatchOrder(order, nil, validationBlock) + } orderEvent := &zeroex.OrderEvent{ Timestamp: validationBlock.Timestamp, OrderHash: order.Hash, @@ -309,7 +311,7 @@ func (w *Watcher) handleOrderExpirations(validationBlock *types.MiniHeader, orde // orders that have now become valid again as a result. unexpiredOrders, err := w.findOrdersToUnexpire(validationBlock.Timestamp) if err != nil { - return orderEvents, err + return orderEvents, nil, err } for _, order := range unexpiredOrders { // If we will re-validate this order, the revalidation process will discover that @@ -328,7 +330,23 @@ func (w *Watcher) handleOrderExpirations(validationBlock *types.MiniHeader, orde orderEvents = append(orderEvents, orderEvent) } - return orderEvents, nil + possiblyUnexpiredOrders, err := w.findOrdersToPossiblyUnexpire(validationBlock.Timestamp) + if err != nil { + return orderEvents, nil, err + } + orderHashToPossiblyUnexpiredOrders := map[common.Hash]struct{}{} + for _, order := range possiblyUnexpiredOrders { + // If we will re-validate this order, the revalidation process will discover + // whether or not it's unexpired, and an appropriate event will already be + // emitted + if _, ok := ordersToRevalidate[order.Hash]; ok { + continue + } + ordersToRevalidate[order.Hash] = order + orderHashToPossiblyUnexpiredOrders[order.Hash] = struct{}{} + } + + return orderEvents, orderHashToPossiblyUnexpiredOrders, nil } // handleBlockEvents processes a set of block events into order events for a set of orders. @@ -433,7 +451,7 @@ func (w *Watcher) handleBlockEvents(ctx context.Context, events []*blockwatch.Ev } } - expirationOrderEvents, err := w.handleOrderExpirations(validationBlock, orderHashToDBOrder) + expirationOrderEvents, orderHashToPossiblyUnexpiredOrders, err := w.handleOrderExpirations(validationBlock, orderHashToDBOrder) if err != nil { return err } @@ -441,7 +459,7 @@ func (w *Watcher) handleBlockEvents(ctx context.Context, events []*blockwatch.Ev // This timeout of 1min is for limiting how long this call should block at the ETH RPC rate limiter ctx, cancel := context.WithTimeout(ctx, 1*time.Minute) defer cancel() - postValidationOrderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, validationBlock) + postValidationOrderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, orderHashToPossiblyUnexpiredOrders, validationBlock) if err != nil { return err } @@ -492,7 +510,7 @@ func (w *Watcher) RevalidateOrdersForMissingEvents(ctx context.Context) error { if err != nil { return err } - orderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, latestMiniHeader) + orderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, map[common.Hash]struct{}{}, latestMiniHeader) if err != nil { return err } @@ -914,7 +932,7 @@ func (w *Watcher) Cleanup(ctx context.Context, lastUpdatedBuffer time.Duration) // This timeout of 30min is for limiting how long this call should block at the ETH RPC rate limiter ctx, cancel := context.WithTimeout(ctx, 30*time.Minute) defer cancel() - orderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, latestBlock) + orderEvents, err := w.generateOrderEventsIfChanged(ctx, orderHashToDBOrder, orderHashToEvents, map[common.Hash]struct{}{}, latestBlock) if err != nil { return err } @@ -982,13 +1000,13 @@ func (w *Watcher) permanentlyDeleteStaleRemovedOrders() error { // true, the orders will be marked as pinned. Pinned orders will not be affected // by any DDoS prevention or incentive mechanisms and will always stay in // storage until they are no longer fillable. -func (w *Watcher) add(orderInfos []*ordervalidator.AcceptedOrderInfo, validationBlock *types.MiniHeader, pinned bool) ([]*zeroex.OrderEvent, error) { +func (w *Watcher) add(orderInfos []*ordervalidator.AcceptedOrderInfo, validationBlock *types.MiniHeader, pinned bool, opts *types.AddOrdersOpts) ([]*zeroex.OrderEvent, error) { now := time.Now().UTC() orderEvents := []*zeroex.OrderEvent{} dbOrders := []*types.OrderWithMetadata{} for _, orderInfo := range orderInfos { - dbOrder, err := w.orderInfoToOrderWithMetadata(orderInfo, pinned, now, validationBlock) + dbOrder, err := w.orderInfoToOrderWithMetadata(orderInfo, pinned, now, validationBlock, opts) if err != nil { return nil, err } @@ -1102,7 +1120,7 @@ func (w *Watcher) add(orderInfos []*ordervalidator.AcceptedOrderInfo, validation return orderEvents, nil } -func (w *Watcher) orderInfoToOrderWithMetadata(orderInfo *ordervalidator.AcceptedOrderInfo, pinned bool, now time.Time, validationBlock *types.MiniHeader) (*types.OrderWithMetadata, error) { +func (w *Watcher) orderInfoToOrderWithMetadata(orderInfo *ordervalidator.AcceptedOrderInfo, pinned bool, now time.Time, validationBlock *types.MiniHeader, opts *types.AddOrdersOpts) (*types.OrderWithMetadata, error) { parsedMakerAssetData, err := db.ParseContractAddressesAndTokenIdsFromAssetData(w.assetDataDecoder, orderInfo.SignedOrder.MakerAssetData, w.contractAddresses) if err != nil { return nil, err @@ -1131,13 +1149,19 @@ func (w *Watcher) orderInfoToOrderWithMetadata(orderInfo *ordervalidator.Accepte Salt: orderInfo.SignedOrder.Salt, Signature: orderInfo.SignedOrder.Signature, IsRemoved: false, + IsUnfillable: orderInfo.FillableTakerAssetAmount.Cmp(big.NewInt(0)) == 0, IsPinned: pinned, + IsExpired: big.NewInt(validationBlock.Timestamp.Unix()).Cmp(orderInfo.SignedOrder.ExpirationTimeSeconds) >= 0, LastUpdated: now, ParsedMakerAssetData: parsedMakerAssetData, ParsedMakerFeeAssetData: parsedMakerFeeAssetData, FillableTakerAssetAmount: orderInfo.FillableTakerAssetAmount, LastValidatedBlockNumber: validationBlock.Number, LastValidatedBlockHash: validationBlock.Hash, + KeepCancelled: opts.KeepCancelled, + KeepExpired: opts.KeepExpired, + KeepFullyFilled: opts.KeepFullyFilled, + KeepUnfunded: opts.KeepUnfunded, }, nil } @@ -1283,7 +1307,7 @@ func (w *Watcher) findOrdersToExpire(latestBlockTimestamp time.Time) ([]*types.O Value: big.NewInt(latestBlockTimestamp.Unix()), }, { - Field: db.OFIsRemoved, + Field: db.OFIsUnfillable, Kind: db.Equal, Value: false, }, @@ -1294,7 +1318,7 @@ func (w *Watcher) findOrdersToExpire(latestBlockTimestamp time.Time) ([]*types.O // findOrdersToUnexpire returns all orders that: // // 1. have an expiration time greater than the latest block timestamp -// 2. were previously removed +// 2. were previously unfillable // 3. have a non-zero FillableTakerAssetAmount // func (w *Watcher) findOrdersToUnexpire(latestBlockTimestamp time.Time) ([]*types.OrderWithMetadata, error) { @@ -1306,7 +1330,7 @@ func (w *Watcher) findOrdersToUnexpire(latestBlockTimestamp time.Time) ([]*types Value: big.NewInt(latestBlockTimestamp.Unix()), }, { - Field: db.OFIsRemoved, + Field: db.OFIsUnfillable, Kind: db.Equal, Value: true, }, @@ -1319,10 +1343,45 @@ func (w *Watcher) findOrdersToUnexpire(latestBlockTimestamp time.Time) ([]*types }) } +// findOrdersToPossiblyUnexpire returns all orders that: +// +// 1. have an expiration time greater than the latest block timestamp +// 2. were previously unfillable +// 3. were previously expired +// 4. have a zero FillableTakerAssetAmount +// +func (w *Watcher) findOrdersToPossiblyUnexpire(latestBlockTimestamp time.Time) ([]*types.OrderWithMetadata, error) { + return w.db.FindOrders(&db.OrderQuery{ + Filters: []db.OrderFilter{ + { + Field: db.OFExpirationTimeSeconds, + Kind: db.Greater, + Value: big.NewInt(latestBlockTimestamp.Unix()), + }, + { + Field: db.OFIsUnfillable, + Kind: db.Equal, + Value: true, + }, + { + Field: db.OFIsExpired, + Kind: db.Equal, + Value: true, + }, + { + Field: db.OFFillableTakerAssetAmount, + Kind: db.Equal, + Value: big.NewInt(0), + }, + }, + }) +} + func (w *Watcher) convertValidationResultsIntoOrderEvents( validationResults *ordervalidator.ValidationResults, orderHashToDBOrder map[common.Hash]*types.OrderWithMetadata, orderHashToEvents map[common.Hash][]*zeroex.ContractEvent, + orderHashToPossiblyUnexpiredOrder map[common.Hash]struct{}, validationBlock *types.MiniHeader, ) ([]*zeroex.OrderEvent, error) { orderEvents := []*zeroex.OrderEvent{} @@ -1359,7 +1418,7 @@ func (w *Watcher) convertValidationResultsIntoOrderEvents( // of the validation block. validationBlockTimestampSeconds := big.NewInt(validationBlock.Timestamp.Unix()) expirationTimeIsValid := order.ExpirationTimeSeconds.Cmp(validationBlockTimestampSeconds) == 1 - isOrderUnexpired := order.IsRemoved && expirationTimeIsValid + isOrderUnexpired := order.IsExpired && order.IsUnfillable && expirationTimeIsValid // We can tell that an order was previously expired if it was marked as removed with a // non-zero fillable amount. There is no other explanation for this database state. The @@ -1418,18 +1477,33 @@ func (w *Watcher) convertValidationResultsIntoOrderEvents( }).Error("validationResults.Rejected contained unknown order hash") continue } - oldFillableAmount := order.FillableTakerAssetAmount - if oldFillableAmount.Cmp(big.NewInt(0)) == 0 { - // If the oldFillableAmount was already 0, this order is already flagged for removal. + // NOTE(jalextowle): It's theoretically possible that an order could become + // unexpired for a long period of time. With this in mind, it's important + // that we set IsExpired to false regardless of why the check failed as + // any future attempts to unexpire the order will be unsuccessful unless other + // state changes occur. These state changes would be addressed by the core + // orderwatcher logic so we can safely avoid re-checking for unexpiry. + if order.IsUnfillable { + // If the order is already marked as unfillable, no updates are needed + // other than updating the expiration state + if _, ok := orderHashToPossiblyUnexpiredOrder[order.Hash]; ok { + w.updateOrderExpirationState(order, validationBlock) + } } else { - // If oldFillableAmount > 0, it got fullyFilled, cancelled, expired or unfunded - w.unwatchOrder(order, big.NewInt(0), validationBlock) endState, ok := ordervalidator.ConvertRejectOrderCodeToOrderEventEndState(rejectedOrderInfo.Status) if !ok { err := fmt.Errorf("no OrderEventEndState corresponding to RejectedOrderStatus: %q", rejectedOrderInfo.Status) logger.WithError(err).WithField("rejectedOrderStatus", rejectedOrderInfo.Status).Error("no OrderEventEndState corresponding to RejectedOrderStatus") return nil, err } + if (endState == zeroex.ESOrderCancelled && order.KeepCancelled) || + (endState == zeroex.ESOrderExpired && order.KeepExpired) || + (endState == zeroex.ESOrderFullyFilled && order.KeepFullyFilled) || + (endState == zeroex.ESOrderBecameUnfunded && order.KeepUnfunded) { + w.markOrderUnfillable(order, big.NewInt(0), validationBlock) + } else { + w.unwatchOrder(order, big.NewInt(0), validationBlock) + } orderEvent := &zeroex.OrderEvent{ Timestamp: validationBlock.Timestamp, OrderHash: rejectedOrderInfo.OrderHash, @@ -1454,6 +1528,7 @@ func (w *Watcher) generateOrderEventsIfChanged( ctx context.Context, orderHashToDBOrder map[common.Hash]*types.OrderWithMetadata, orderHashToEvents map[common.Hash][]*zeroex.ContractEvent, + orderHashToPossiblyUnexpiredOrder map[common.Hash]struct{}, validationBlock *types.MiniHeader, ) ([]*zeroex.OrderEvent, error) { signedOrders := []*zeroex.SignedOrder{} @@ -1473,13 +1548,13 @@ func (w *Watcher) generateOrderEventsIfChanged( validationResults := w.orderValidator.BatchValidate(ctx, signedOrders, areNewOrders, validationBlock) return w.convertValidationResultsIntoOrderEvents( - validationResults, orderHashToDBOrder, orderHashToEvents, validationBlock, + validationResults, orderHashToDBOrder, orderHashToEvents, orderHashToPossiblyUnexpiredOrder, validationBlock, ) } // ValidateAndStoreValidOrders applies general 0x validation and Mesh-specific validation to // the given orders and if they are valid, adds them to the OrderWatcher -func (w *Watcher) ValidateAndStoreValidOrders(ctx context.Context, orders []*zeroex.SignedOrder, pinned bool, chainID int) (*ordervalidator.ValidationResults, error) { +func (w *Watcher) ValidateAndStoreValidOrders(ctx context.Context, orders []*zeroex.SignedOrder, chainID int, pinned bool, opts *types.AddOrdersOpts) (*ordervalidator.ValidationResults, error) { if len(orders) == 0 { return &ordervalidator.ValidationResults{}, nil } @@ -1505,10 +1580,33 @@ func (w *Watcher) ValidateAndStoreValidOrders(ctx context.Context, orders []*zer } } + if opts.KeepCancelled || opts.KeepExpired || opts.KeepFullyFilled || opts.KeepUnfunded { + for _, rejectedOrderInfo := range zeroexResults.Rejected { + // NOTE(jalextowle): We can use the rejectedOrderInfo.Status + // field to see whether or not the order is new or not. If + // the order has already been stored, the rejectedOrderInfo.Status + // field will be ordervalidator.ROOrderAlreadyStoredAndUnfillable. + // If the rejection reason involves on-chain validation, then the + // order is new. + if (opts.KeepCancelled && rejectedOrderInfo.Status.Code == ordervalidator.ROCancelled.Code) || + (opts.KeepExpired && rejectedOrderInfo.Status.Code == ordervalidator.ROExpired.Code) || + (opts.KeepFullyFilled && rejectedOrderInfo.Status.Code == ordervalidator.ROFullyFilled.Code) || + (opts.KeepUnfunded && rejectedOrderInfo.Status.Code == ordervalidator.ROUnfunded.Code) { + newOrderInfos = append(newOrderInfos, &ordervalidator.AcceptedOrderInfo{ + OrderHash: rejectedOrderInfo.OrderHash, + SignedOrder: rejectedOrderInfo.SignedOrder, + // TODO(jalextowle): Verify that this is consistent with the OrderWatcher + FillableTakerAssetAmount: big.NewInt(0), + IsNew: true, + }) + } + } + } + // Add the order to the OrderWatcher. This also saves the order in the // database. allOrderEvents := []*zeroex.OrderEvent{} - orderEvents, err := w.add(newOrderInfos, validationBlock, pinned) + orderEvents, err := w.add(newOrderInfos, validationBlock, pinned, opts) if err != nil { return nil, err } @@ -1698,8 +1796,8 @@ func (w *Watcher) meshSpecificOrderValidation(orders []*zeroex.SignedOrder, chai if !orderStatus.IsStored { // If not stored, add the order to a set of new orders. newValidOrders = append(newValidOrders, order) - } else if orderStatus.IsMarkedRemoved { - // If stored but marked as removed, reject the order. + } else if orderStatus.IsMarkedRemoved || orderStatus.IsMarkedUnfillable { + // If stored but marked as removed or unfillable, reject the order. results.Rejected = append(results.Rejected, &ordervalidator.RejectedOrderInfo{ OrderHash: orderHash, SignedOrder: order, @@ -1707,7 +1805,7 @@ func (w *Watcher) meshSpecificOrderValidation(orders []*zeroex.SignedOrder, chai Status: ordervalidator.ROOrderAlreadyStoredAndUnfillable, }) } else { - // If stored but not marked as removed, accept the order without re-validation + // If stored but not marked as removed or unfillable, accept the order without re-validation results.Accepted = append(results.Accepted, &ordervalidator.AcceptedOrderInfo{ OrderHash: orderHash, SignedOrder: order, @@ -1752,6 +1850,8 @@ func (w *Watcher) updateOrderFillableTakerAssetAmountAndBlockInfo(order *types.O func (w *Watcher) rewatchOrder(order *types.OrderWithMetadata, newFillableTakerAssetAmount *big.Int, validationBlock *types.MiniHeader) { err := w.db.UpdateOrder(order.Hash, func(orderToUpdate *types.OrderWithMetadata) (*types.OrderWithMetadata, error) { orderToUpdate.IsRemoved = false + orderToUpdate.IsUnfillable = false + orderToUpdate.IsExpired = false orderToUpdate.LastUpdated = time.Now().UTC() orderToUpdate.LastValidatedBlockNumber = validationBlock.Number orderToUpdate.LastValidatedBlockHash = validationBlock.Hash @@ -1766,9 +1866,35 @@ func (w *Watcher) rewatchOrder(order *types.OrderWithMetadata, newFillableTakerA } } +func (w *Watcher) markOrderUnfillable(order *types.OrderWithMetadata, newFillableAmount *big.Int, validationBlock *types.MiniHeader) { + err := w.db.UpdateOrder(order.Hash, func(orderToUpdate *types.OrderWithMetadata) (*types.OrderWithMetadata, error) { + orderToUpdate.IsUnfillable = true + if big.NewInt(validationBlock.Timestamp.Unix()).Cmp(orderToUpdate.ExpirationTimeSeconds) >= 0 { + orderToUpdate.IsExpired = true + } + orderToUpdate.LastUpdated = time.Now().UTC() + orderToUpdate.LastValidatedBlockNumber = validationBlock.Number + orderToUpdate.LastValidatedBlockHash = validationBlock.Hash + if newFillableAmount != nil { + orderToUpdate.FillableTakerAssetAmount = newFillableAmount + } + return orderToUpdate, nil + }) + if err != nil { + logger.WithFields(logger.Fields{ + "error": err.Error(), + "order": order, + }).Error("Failed to update order") + } +} + func (w *Watcher) unwatchOrder(order *types.OrderWithMetadata, newFillableAmount *big.Int, validationBlock *types.MiniHeader) { err := w.db.UpdateOrder(order.Hash, func(orderToUpdate *types.OrderWithMetadata) (*types.OrderWithMetadata, error) { orderToUpdate.IsRemoved = true + orderToUpdate.IsUnfillable = true + if big.NewInt(validationBlock.Timestamp.Unix()).Cmp(orderToUpdate.ExpirationTimeSeconds) >= 0 { + orderToUpdate.IsExpired = true + } orderToUpdate.LastUpdated = time.Now().UTC() orderToUpdate.LastValidatedBlockNumber = validationBlock.Number orderToUpdate.LastValidatedBlockHash = validationBlock.Hash @@ -1785,6 +1911,24 @@ func (w *Watcher) unwatchOrder(order *types.OrderWithMetadata, newFillableAmount } } +func (w *Watcher) updateOrderExpirationState(order *types.OrderWithMetadata, validationBlock *types.MiniHeader) { + err := w.db.UpdateOrder(order.Hash, func(orderToUpdate *types.OrderWithMetadata) (*types.OrderWithMetadata, error) { + if big.NewInt(validationBlock.Timestamp.Unix()).Cmp(orderToUpdate.ExpirationTimeSeconds) >= 0 { + orderToUpdate.IsExpired = true + } + orderToUpdate.LastUpdated = time.Now().UTC() + orderToUpdate.LastValidatedBlockNumber = validationBlock.Number + orderToUpdate.LastValidatedBlockHash = validationBlock.Hash + return orderToUpdate, nil + }) + if err != nil { + logger.WithFields(logger.Fields{ + "error": err.Error(), + "order": order, + }).Error("Failed to update order") + } +} + func (w *Watcher) permanentlyDeleteOrder(order *types.OrderWithMetadata) error { if err := w.db.DeleteOrder(order.Hash); err != nil { return err diff --git a/zeroex/orderwatch/order_watcher_test.go b/zeroex/orderwatch/order_watcher_test.go index 4c95a35f8..66e23c521 100644 --- a/zeroex/orderwatch/order_watcher_test.go +++ b/zeroex/orderwatch/order_watcher_test.go @@ -157,7 +157,7 @@ func TestOrderWatcherTakerWhitelist(t *testing.T) { require.NoError(t, err) for _, testCase := range testCases { - results, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{testCase.order}, false, constants.TestChainID) + results, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{testCase.order}, constants.TestChainID, false, &types.AddOrdersOpts{}) require.NoError(t, err) if testCase.isTakerAddressWhitelisted { orderHash, err := testCase.order.ComputeOrderHash() @@ -176,153 +176,424 @@ func TestOrderWatcherTakerWhitelist(t *testing.T) { } } } - -func TestOrderWatcherStoresValidOrders(t *testing.T) { +func TestOrderWatcherDoesntStoreInvalidOrdersWithConfigurations(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + signedOrderGenerator func() *zeroex.SignedOrder + addOrdersOpts *types.AddOrdersOpts + }{ + { + description: "doesn't store cancelled orders when KeepCancelled is disabled", + signedOrderGenerator: func() *zeroex.SignedOrder { + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + // Cancel order + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.CancelOrder(opts, trimmedOrder) + require.NoError(t, err) + waitTxnSuccessfullyMined(t, ethClient, txn) + return signedOrder + }, + addOrdersOpts: &types.AddOrdersOpts{ + KeepCancelled: false, + KeepExpired: true, + KeepFullyFilled: true, + KeepUnfunded: true, + }, + }, + { + description: "doesn't store expired orders when KeepExpired is disabled", + signedOrderGenerator: func() *zeroex.SignedOrder { + return scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.ExpirationTimeSeconds(big.NewInt(0)), + ) + }, + addOrdersOpts: &types.AddOrdersOpts{ + KeepCancelled: true, + KeepExpired: false, + KeepFullyFilled: true, + KeepUnfunded: true, + }, + }, + { + description: "doesn't store fully filled orders when KeepFullyFilled is disabled", + signedOrderGenerator: func() *zeroex.SignedOrder { + takerAddress := constants.GanacheAccount3 + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.SetupTakerAddress(takerAddress), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + // Fill order + opts := &bind.TransactOpts{ + From: takerAddress, + Signer: scenario.GetTestSignerFn(takerAddress), + Value: big.NewInt(100000000000000000), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.FillOrder(opts, trimmedOrder, signedOrder.TakerAssetAmount, signedOrder.Signature) + require.NoError(t, err) + waitTxnSuccessfullyMined(t, ethClient, txn) + return signedOrder + }, + addOrdersOpts: &types.AddOrdersOpts{ + KeepCancelled: true, + KeepExpired: true, + KeepFullyFilled: false, + KeepUnfunded: true, + }, + }, + { + description: "doesn't store unfunded orders when KeepUnfunded is disabled", + signedOrderGenerator: func() *zeroex.SignedOrder { + return scenario.NewSignedTestOrder(t, + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.MakerFee(big.NewInt(1)), + orderopts.MakerFeeAssetData(scenario.WETHAssetData), + ) + }, + addOrdersOpts: &types.AddOrdersOpts{ + KeepCancelled: true, + KeepExpired: true, + KeepFullyFilled: true, + KeepUnfunded: false, + }, + }, + } { + teardownSubTest := setupSubTest(t) - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.ZRXAssetData), - ) - setupOrderWatcherScenario(ctx, t, database, signedOrder) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) + blockWatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) + signedOrder := testCase.signedOrderGenerator() - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err) + + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, testCase.addOrdersOpts) + require.NoError(t, err) + + assert.Len(t, validationResults.Accepted, 0, testCase.description) + assert.Len(t, validationResults.Rejected, 1, testCase.description) + + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 0) + + teardownSubTest(t) + cancel() } - checkOrderState(t, expectedOrderState, orders[0]) } -func TestOrderWatcherUnfundedInsufficientERC20Balance(t *testing.T) { +func TestOrderWatcherStoresValidOrdersWithConfigurations(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + expectedFillableAmount *big.Int + signedOrderGenerator func() *zeroex.SignedOrder + addOrdersOpts *types.AddOrdersOpts + isExpired bool + }{ + { + description: "stores valid orders", + expectedFillableAmount: big.NewInt(42), + signedOrderGenerator: func() *zeroex.SignedOrder { + return scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + }, + addOrdersOpts: &types.AddOrdersOpts{}, + }, + { + description: "stores cancelled orders when KeepCancelled is enabled", + expectedFillableAmount: big.NewInt(0), + signedOrderGenerator: func() *zeroex.SignedOrder { + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + // Cancel order + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.CancelOrder(opts, trimmedOrder) + require.NoError(t, err) + waitTxnSuccessfullyMined(t, ethClient, txn) + return signedOrder + }, + addOrdersOpts: &types.AddOrdersOpts{KeepCancelled: true}, + }, + { + description: "stores expired orders when KeepExpired is enabled", + expectedFillableAmount: big.NewInt(0), + signedOrderGenerator: func() *zeroex.SignedOrder { + return scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.ExpirationTimeSeconds(big.NewInt(0)), + ) + }, + addOrdersOpts: &types.AddOrdersOpts{KeepExpired: true}, + isExpired: true, + }, + { + description: "stores fully filled orders when KeepFullyFilled is enabled", + expectedFillableAmount: big.NewInt(0), + signedOrderGenerator: func() *zeroex.SignedOrder { + takerAddress := constants.GanacheAccount3 + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.SetupTakerAddress(takerAddress), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + // Fill order + opts := &bind.TransactOpts{ + From: takerAddress, + Signer: scenario.GetTestSignerFn(takerAddress), + Value: big.NewInt(100000000000000000), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.FillOrder(opts, trimmedOrder, signedOrder.TakerAssetAmount, signedOrder.Signature) + require.NoError(t, err) + waitTxnSuccessfullyMined(t, ethClient, txn) + return signedOrder + }, + addOrdersOpts: &types.AddOrdersOpts{KeepFullyFilled: true}, + }, + { + description: "stores unfunded orders when KeepUnfunded is enabled", + expectedFillableAmount: big.NewInt(0), + signedOrderGenerator: func() *zeroex.SignedOrder { + return scenario.NewSignedTestOrder(t, + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.MakerFee(big.NewInt(1)), + orderopts.MakerFeeAssetData(scenario.WETHAssetData), + ) + }, + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + }, + } { + teardownSubTest := setupSubTest(t) - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.ZRXAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + blockWatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - // Transfer makerAsset out of maker address - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := zrx.Transfer(opts, constants.GanacheAccount4, signedOrder.MakerAssetAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + signedOrder := testCase.signedOrderGenerator() - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, testCase.addOrdersOpts) + require.NoError(t, err) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + isUnfillable := testCase.expectedFillableAmount.Cmp(big.NewInt(0)) == 0 + + if isUnfillable { + assert.Len(t, validationResults.Accepted, 0, testCase.description) + assert.Len(t, validationResults.Rejected, 1, testCase.description) + } else { + assert.Len(t, validationResults.Accepted, 1, testCase.description) + assert.Len(t, validationResults.Rejected, 0, testCase.description) + } + + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: isUnfillable, + isExpired: testCase.isExpired, + fillableAmount: testCase.expectedFillableAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + teardownSubTest(t) + cancel() } - checkOrderState(t, expectedOrderState, orders[0]) } -func TestOrderWatcherUnfundedInsufficientERC20BalanceForMakerFee(t *testing.T) { +func TestOrderWatcherUnfundedInsufficientERC20Balance(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - makerAssetData := scenario.GetDummyERC721AssetData(big.NewInt(1)) - wethFeeAmount := new(big.Int).Mul(big.NewInt(5), eighteenDecimalsInBaseUnits) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(makerAssetData), - orderopts.MakerAssetAmount(big.NewInt(1)), - orderopts.MakerFeeAssetData(scenario.WETHAssetData), - orderopts.MakerFee(wethFeeAmount), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Transfer makerAsset out of maker address + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := zrx.Transfer(opts, constants.GanacheAccount4, signedOrder.MakerAssetAmount) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - // Transfer makerAsset out of maker address - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) + + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + cancel() + teardownSubTest(t) } - txn, err := weth.Transfer(opts, constants.GanacheAccount4, wethFeeAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) +} - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) +func TestOrderWatcherUnfundedInsufficientERC20BalanceForMakerFee(t *testing.T) { + if !serialTestsEnabled { + t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") + } - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + makerAssetData := scenario.GetDummyERC721AssetData(big.NewInt(1)) + wethFeeAmount := new(big.Int).Mul(big.NewInt(5), eighteenDecimalsInBaseUnits) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(makerAssetData), + orderopts.MakerAssetAmount(big.NewInt(1)), + orderopts.MakerFeeAssetData(scenario.WETHAssetData), + orderopts.MakerFee(wethFeeAmount), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Transfer makerAsset out of maker address + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := weth.Transfer(opts, constants.GanacheAccount4, wethFeeAmount) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) + + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) + + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherUnfundedInsufficientERC721Balance(t *testing.T) { @@ -330,56 +601,75 @@ func TestOrderWatcherUnfundedInsufficientERC721Balance(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - tokenID := big.NewInt(1) - makerAssetData := scenario.GetDummyERC721AssetData(tokenID) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetAmount(big.NewInt(1)), - orderopts.MakerAssetData(makerAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - // Transfer makerAsset out of maker address - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := dummyERC721Token.TransferFrom(opts, signedOrder.MakerAddress, constants.GanacheAccount4, tokenID) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + tokenID := big.NewInt(1) + makerAssetData := scenario.GetDummyERC721AssetData(tokenID) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetAmount(big.NewInt(1)), + orderopts.MakerAssetData(makerAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Transfer makerAsset out of maker address + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := dummyERC721Token.TransferFrom(opts, signedOrder.MakerAddress, constants.GanacheAccount4, tokenID) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) - } func TestOrderWatcherUnfundedInsufficientERC721Allowance(t *testing.T) { @@ -387,56 +677,76 @@ func TestOrderWatcherUnfundedInsufficientERC721Allowance(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - tokenID := big.NewInt(1) - makerAssetData := scenario.GetDummyERC721AssetData(tokenID) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetAmount(big.NewInt(1)), - orderopts.MakerAssetData(makerAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - // Remove Maker's NFT approval to ERC721Proxy. We do this by setting the - // operator/spender to the null address. - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := dummyERC721Token.Approve(opts, constants.NullAddress, tokenID) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + tokenID := big.NewInt(1) + makerAssetData := scenario.GetDummyERC721AssetData(tokenID) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetAmount(big.NewInt(1)), + orderopts.MakerAssetData(makerAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Remove Maker's NFT approval to ERC721Proxy. We do this by setting the + // operator/spender to the null address. + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := dummyERC721Token.Approve(opts, constants.NullAddress, tokenID) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherUnfundedInsufficientERC1155Allowance(t *testing.T) { @@ -444,54 +754,74 @@ func TestOrderWatcherUnfundedInsufficientERC1155Allowance(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - makerAssetData := scenario.GetDummyERC1155AssetData(t, []*big.Int{big.NewInt(1)}, []*big.Int{big.NewInt(100)}) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetAmount(big.NewInt(1)), - orderopts.MakerAssetData(makerAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - // Remove Maker's ERC1155 approval to ERC1155Proxy - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := erc1155Mintable.SetApprovalForAll(opts, ganacheAddresses.ERC1155Proxy, false) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + makerAssetData := scenario.GetDummyERC1155AssetData(t, []*big.Int{big.NewInt(1)}, []*big.Int{big.NewInt(100)}) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetAmount(big.NewInt(1)), + orderopts.MakerAssetData(makerAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Remove Maker's ERC1155 approval to ERC1155Proxy + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := erc1155Mintable.SetApprovalForAll(opts, ganacheAddresses.ERC1155Proxy, false) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherUnfundedInsufficientERC1155Balance(t *testing.T) { @@ -499,56 +829,77 @@ func TestOrderWatcherUnfundedInsufficientERC1155Balance(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + tokenID := big.NewInt(1) + tokenAmount := big.NewInt(100) + makerAssetData := scenario.GetDummyERC1155AssetData(t, []*big.Int{tokenID}, []*big.Int{tokenAmount}) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetAmount(big.NewInt(1)), + orderopts.MakerAssetData(makerAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Reduce Maker's ERC1155 balance + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := erc1155Mintable.SafeTransferFrom(opts, signedOrder.MakerAddress, constants.GanacheAccount4, tokenID, tokenAmount, []byte{}) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - tokenID := big.NewInt(1) - tokenAmount := big.NewInt(100) - makerAssetData := scenario.GetDummyERC1155AssetData(t, []*big.Int{tokenID}, []*big.Int{tokenAmount}) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetAmount(big.NewInt(1)), - orderopts.MakerAssetData(makerAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - // Reduce Maker's ERC1155 balance - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + cancel() + teardownSubTest(t) } - txn, err := erc1155Mintable.SafeTransferFrom(opts, signedOrder.MakerAddress, constants.GanacheAccount4, tokenID, tokenAmount, []byte{}) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) - - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) - - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, - } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherUnfundedInsufficientERC20Allowance(t *testing.T) { @@ -556,52 +907,71 @@ func TestOrderWatcherUnfundedInsufficientERC20Allowance(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) - - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.ZRXAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) - - // Remove Maker's ZRX approval to ERC20Proxy - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := zrx.Approve(opts, ganacheAddresses.ERC20Proxy, big.NewInt(0)) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Remove Maker's ZRX approval to ERC20Proxy + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := zrx.Approve(opts, ganacheAddresses.ERC20Proxy, big.NewInt(0)) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherUnfundedThenFundedAgain(t *testing.T) { @@ -609,85 +979,106 @@ func TestOrderWatcherUnfundedThenFundedAgain(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) - - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.ZRXAssetData), - orderopts.TakerAssetData(scenario.WETHAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) - - // Transfer makerAsset out of maker address - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - txn, err := zrx.Transfer(opts, constants.GanacheAccount4, signedOrder.MakerAssetAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.TakerAssetData(scenario.WETHAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Transfer makerAsset out of maker address + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + txn, err := zrx.Transfer(opts, constants.GanacheAccount4, signedOrder.MakerAssetAmount) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, - } - checkOrderState(t, expectedOrderState, orders[0]) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - // Transfer makerAsset back to maker address - zrxCoinbase := constants.GanacheAccount0 - opts = &bind.TransactOpts{ - From: zrxCoinbase, - Signer: scenario.GetTestSignerFn(zrxCoinbase), - } - txn, err = zrx.Transfer(opts, signedOrder.MakerAddress, signedOrder.MakerAssetAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) - - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - orderEvents = <-orderEventsChan - require.Len(t, orderEvents, 1) - orderEvent = orderEvents[0] - assert.Equal(t, zeroex.ESOrderAdded, orderEvent.EndState) + // Transfer makerAsset back to maker address + zrxCoinbase := constants.GanacheAccount0 + opts = &bind.TransactOpts{ + From: zrxCoinbase, + Signer: scenario.GetTestSignerFn(zrxCoinbase), + } + txn, err = zrx.Transfer(opts, signedOrder.MakerAddress, signedOrder.MakerAssetAmount) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) + + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) + + orderEvents = <-orderEventsChan + require.Len(t, orderEvents, 1, testCase.description) + orderEvent = orderEvents[0] + assert.Equal(t, zeroex.ESOrderAdded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err = database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + newOrders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, newOrders, 1, testCase.description) + expectedOrderState = orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, newOrders[0]) - latestStoredBlock, err = database.GetLatestMiniHeader() - require.NoError(t, err) - newOrders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, newOrders, 1) - expectedOrderState = orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, newOrders[0]) } func TestOrderWatcherNoChange(t *testing.T) { @@ -695,71 +1086,99 @@ func TestOrderWatcherNoChange(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "no change with empty configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + // NOTE(jalextowle): We use all of the configurations here since this test + // doesn't rely on a particular configuration being set. This tests that + // these configurations do not change behvior when there are no changes + // to the orders validity. + { + description: "no change with all configurations", + addOrdersOpts: &types.AddOrdersOpts{ + KeepCancelled: true, + KeepExpired: true, + KeepFullyFilled: true, + KeepUnfunded: true, + }, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - ctx, cancel := context.WithCancel(context.Background()) - defer func() { - cancel() - }() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err) - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.ZRXAssetData), - orderopts.TakerAssetData(scenario.WETHAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, _ := setupOrderWatcherScenario(ctx, t, database, signedOrder) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.ZRXAssetData), + orderopts.TakerAssetData(scenario.WETHAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err) + blockWatcher, _ := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, - } - checkOrderState(t, expectedOrderState, orders[0]) + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err) + orders, err := database.FindOrders(nil) + require.NoError(t, err) + require.Len(t, orders, 1) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - // Transfer more ZRX to makerAddress (doesn't impact the order) - zrxCoinbase := constants.GanacheAccount0 - opts := &bind.TransactOpts{ - From: zrxCoinbase, - Signer: scenario.GetTestSignerFn(zrxCoinbase), - } - txn, err := zrx.Transfer(opts, signedOrder.MakerAddress, signedOrder.MakerAssetAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + // Transfer more ZRX to makerAddress (doesn't impact the order) + zrxCoinbase := constants.GanacheAccount0 + opts := &bind.TransactOpts{ + From: zrxCoinbase, + Signer: scenario.GetTestSignerFn(zrxCoinbase), + } + txn, err := zrx.Transfer(opts, signedOrder.MakerAddress, signedOrder.MakerAssetAmount) + require.NoError(t, err) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err) - // HACK(albrow): Normally we would wait for order events instead of sleeping here, - // but in this case we don't *expect* any order events. Sleeping is a workaround. - // We could potentially solve this by adding internal events inside of order watcher - // that are only used for testing, but that would also incur some overhead. - time.Sleep(processBlockSleepTime) + // HACK(albrow): Normally we would wait for order events instead of sleeping here, + // but in this case we don't *expect* any order events. Sleeping is a workaround. + // We could potentially solve this by adding internal events inside of order watcher + // that are only used for testing, but that would also incur some overhead. + time.Sleep(processBlockSleepTime) - latestStoredBlock, err = database.GetLatestMiniHeader() - require.NoError(t, err) - newOrders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, newOrders, 1) - expectedOrderState = orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + latestStoredBlock, err = database.GetLatestMiniHeader() + require.NoError(t, err) + newOrders, err := database.FindOrders(nil) + require.NoError(t, err) + require.Len(t, newOrders, 1) + expectedOrderState = orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, newOrders[0]) + + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, newOrders[0]) } func TestOrderWatcherWETHWithdrawAndDeposit(t *testing.T) { @@ -767,90 +1186,111 @@ func TestOrderWatcherWETHWithdrawAndDeposit(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) - - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.MakerAssetData(scenario.WETHAssetData), - orderopts.TakerAssetData(scenario.ZRXAssetData), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) - - // Withdraw maker's WETH (i.e. decrease WETH balance) - // HACK(fabio): For some reason the txn fails with "out of gas" error with the - // estimated gas amount - gasLimit := uint64(50000) - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - GasLimit: gasLimit, - } - txn, err := weth.Withdraw(opts, signedOrder.MakerAssetAmount) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) - - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepUnfunded", + addOrdersOpts: &types.AddOrdersOpts{KeepUnfunded: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - assert.Equal(t, orderEvent.OrderHash, orders[0].Hash) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, - } - checkOrderState(t, expectedOrderState, orders[0]) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.MakerAssetData(scenario.WETHAssetData), + orderopts.TakerAssetData(scenario.ZRXAssetData), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Withdraw maker's WETH (i.e. decrease WETH balance) + // HACK(fabio): For some reason the txn fails with "out of gas" error with the + // estimated gas amount + gasLimit := uint64(50000) + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + GasLimit: gasLimit, + } + txn, err := weth.Withdraw(opts, signedOrder.MakerAssetAmount) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - // Deposit maker's ETH (i.e. increase WETH balance) - opts = &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - Value: signedOrder.MakerAssetAmount, - } - txn, err = weth.Deposit(opts) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderBecameUnfunded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + assert.Equal(t, orderEvent.OrderHash, orders[0].Hash, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - orderEvents = <-orderEventsChan - require.Len(t, orderEvents, 1) - orderEvent = orderEvents[0] - assert.Equal(t, zeroex.ESOrderAdded, orderEvent.EndState) + // Deposit maker's ETH (i.e. increase WETH balance) + opts = &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + Value: signedOrder.MakerAssetAmount, + } + txn, err = weth.Deposit(opts) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) + + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) + + orderEvents = <-orderEventsChan + require.Len(t, orderEvents, 1) + orderEvent = orderEvents[0] + assert.Equal(t, zeroex.ESOrderAdded, orderEvent.EndState, testCase.description) + + latestStoredBlock, err = database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + newOrders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, newOrders, 1, testCase.description) + expectedOrderState = orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, newOrders[0]) - latestStoredBlock, err = database.GetLatestMiniHeader() - require.NoError(t, err) - newOrders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, newOrders, 1) - expectedOrderState = orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, newOrders[0]) } func TestOrderWatcherCanceled(t *testing.T) { @@ -858,50 +1298,70 @@ func TestOrderWatcherCanceled(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) - - signedOrder := scenario.NewSignedTestOrder(t, orderopts.SetupMakerState(true)) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) - - // Cancel order - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - trimmedOrder := signedOrder.Trim() - txn, err := exchange.CancelOrder(opts, trimmedOrder) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) - - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepCancelled", + addOrdersOpts: &types.AddOrdersOpts{KeepCancelled: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + signedOrder := scenario.NewSignedTestOrder(t, orderopts.SetupMakerState(true)) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Cancel order + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.CancelOrder(opts, trimmedOrder) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderCancelled, orderEvent.EndState) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderCancelled, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherCancelUpTo(t *testing.T) { @@ -909,50 +1369,70 @@ func TestOrderWatcherCancelUpTo(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) - - signedOrder := scenario.NewSignedTestOrder(t, orderopts.SetupMakerState(true)) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) - - // Cancel order with epoch - opts := &bind.TransactOpts{ - From: signedOrder.MakerAddress, - Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), - } - targetOrderEpoch := signedOrder.Salt - txn, err := exchange.CancelOrdersUpTo(opts, targetOrderEpoch) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepCancelled", + addOrdersOpts: &types.AddOrdersOpts{KeepCancelled: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) + + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + signedOrder := scenario.NewSignedTestOrder(t, orderopts.SetupMakerState(true)) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Cancel order with epoch + opts := &bind.TransactOpts{ + From: signedOrder.MakerAddress, + Signer: scenario.GetTestSignerFn(signedOrder.MakerAddress), + } + targetOrderEpoch := signedOrder.Salt + txn, err := exchange.CancelOrdersUpTo(opts, targetOrderEpoch) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderCancelled, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderCancelled, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherERC20Filled(t *testing.T) { @@ -960,55 +1440,75 @@ func TestOrderWatcherERC20Filled(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepFullyFilled", + addOrdersOpts: &types.AddOrdersOpts{KeepFullyFilled: true}, + shouldBeRemoved: false, + }, + } { + teardownSubTest := setupSubTest(t) - takerAddress := constants.GanacheAccount3 - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.SetupTakerAddress(takerAddress), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - // Fill order - opts := &bind.TransactOpts{ - From: takerAddress, - Signer: scenario.GetTestSignerFn(takerAddress), - Value: big.NewInt(100000000000000000), - } - trimmedOrder := signedOrder.Trim() - txn, err := exchange.FillOrder(opts, trimmedOrder, signedOrder.TakerAssetAmount, signedOrder.Signature) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) + takerAddress := constants.GanacheAccount3 + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.SetupTakerAddress(takerAddress), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Fill order + opts := &bind.TransactOpts{ + From: takerAddress, + Signer: scenario.GetTestSignerFn(takerAddress), + Value: big.NewInt(100000000000000000), + } + trimmedOrder := signedOrder.Trim() + txn, err := exchange.FillOrder(opts, trimmedOrder, signedOrder.TakerAssetAmount, signedOrder.Signature) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderFullyFilled, orderEvent.EndState) + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderFullyFilled, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + fillableAmount: big.NewInt(0), + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: true, - fillableAmount: big.NewInt(0), - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } func TestOrderWatcherERC20PartiallyFilled(t *testing.T) { @@ -1016,59 +1516,213 @@ func TestOrderWatcherERC20PartiallyFilled(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + }{ + { + description: "should be kept with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + }, + { + description: "should be kept with KeepFullyFilled", + addOrdersOpts: &types.AddOrdersOpts{KeepFullyFilled: true}, + }, + } { + teardownSubTest := setupSubTest(t) - ctx, cancel := context.WithCancel(context.Background()) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + ctx, cancel := context.WithCancel(context.Background()) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) - takerAddress := constants.GanacheAccount3 - signedOrder := scenario.NewSignedTestOrder(t, - orderopts.SetupMakerState(true), - orderopts.SetupTakerAddress(takerAddress), - ) - expectedOrderHash, err := signedOrder.ComputeOrderHash() - require.NoError(t, err) - blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder) + takerAddress := constants.GanacheAccount3 + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.SetupTakerAddress(takerAddress), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockWatcher, orderEventsChan := setupOrderWatcherScenario(ctx, t, database, signedOrder, testCase.addOrdersOpts) + + // Partially fill order + opts := &bind.TransactOpts{ + From: takerAddress, + Signer: scenario.GetTestSignerFn(takerAddress), + Value: big.NewInt(100000000000000000), + } + trimmedOrder := signedOrder.Trim() + halfAmount := new(big.Int).Div(signedOrder.TakerAssetAmount, big.NewInt(2)) + txn, err := exchange.FillOrder(opts, trimmedOrder, halfAmount, signedOrder.Signature) + require.NoError(t, err, testCase.description) + waitTxnSuccessfullyMined(t, ethClient, txn) - // Partially fill order - opts := &bind.TransactOpts{ - From: takerAddress, - Signer: scenario.GetTestSignerFn(takerAddress), - Value: big.NewInt(100000000000000000), + err = blockWatcher.SyncToLatestBlock() + require.NoError(t, err, testCase.description) + + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderFilled, orderEvent.EndState, testCase.description) + + latestStoredBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + isExpired: false, + fillableAmount: halfAmount, + lastUpdated: time.Now(), + lastValidatedBlock: latestStoredBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + cancel() + teardownSubTest(t) } - trimmedOrder := signedOrder.Trim() - halfAmount := new(big.Int).Div(signedOrder.TakerAssetAmount, big.NewInt(2)) - txn, err := exchange.FillOrder(opts, trimmedOrder, halfAmount, signedOrder.Signature) - require.NoError(t, err) - waitTxnSuccessfullyMined(t, ethClient, txn) +} - err = blockWatcher.SyncToLatestBlock() - require.NoError(t, err) +func TestOrderWatcherOrderExpiredThenUnexpired(t *testing.T) { + if !serialTestsEnabled { + t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") + } - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderFilled, orderEvent.EndState) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepExpired", + addOrdersOpts: &types.AddOrdersOpts{KeepExpired: true}, + shouldBeRemoved: false, + }, + } { + // Set up test and orderWatcher + teardownSubTest := setupSubTest(t) + ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second) + defer cancel() + dbOptions := db.TestOptions() + database, err := db.New(ctx, dbOptions) + require.NoError(t, err, testCase.description) + + // Create and add an order (which will later become expired) to OrderWatcher + expirationTime := time.Now().Add(24 * time.Hour) + expirationTimeSeconds := big.NewInt(expirationTime.Unix()) + signedOrder := scenario.NewSignedTestOrder(t, + orderopts.SetupMakerState(true), + orderopts.ExpirationTimeSeconds(expirationTimeSeconds), + ) + expectedOrderHash, err := signedOrder.ComputeOrderHash() + require.NoError(t, err, testCase.description) + blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrder, false, testCase.addOrdersOpts) + + orderEventsChan := make(chan []*zeroex.OrderEvent, 2*orderWatcher.maxOrders) + orderWatcher.Subscribe(orderEventsChan) + + // Simulate a block found with a timestamp past expirationTime + latestBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + nextBlock := &types.MiniHeader{ + Parent: latestBlock.Hash, + Hash: common.HexToHash("0x1"), + Number: big.NewInt(0).Add(latestBlock.Number, big.NewInt(1)), + Timestamp: expirationTime.Add(1 * time.Minute), + } + expiringBlockEvents := []*blockwatch.Event{ + { + Type: blockwatch.Added, + BlockHeader: nextBlock, + }, + } + orderWatcher.blockEventsChan <- expiringBlockEvents - latestStoredBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - orders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, orders, 1) - expectedOrderState := orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: halfAmount, - lastUpdated: time.Now(), - lastValidatedBlock: latestStoredBlock, + // Await expired event + orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent := orderEvents[0] + assert.Equal(t, zeroex.ESOrderExpired, orderEvent.EndState, testCase.description) + + orders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, orders, 1, testCase.description) + expectedOrderState := orderState{ + hash: expectedOrderHash, + isRemoved: testCase.shouldBeRemoved, + isUnfillable: true, + isExpired: true, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: nextBlock, + } + checkOrderState(t, expectedOrderState, orders[0]) + + // Simulate a block re-org + replacementBlockHash := common.HexToHash("0x2") + reorgBlockEvents := []*blockwatch.Event{ + { + Type: blockwatch.Removed, + BlockHeader: nextBlock, + }, + { + Type: blockwatch.Added, + BlockHeader: &types.MiniHeader{ + Parent: nextBlock.Parent, + Hash: replacementBlockHash, + Number: nextBlock.Number, + Logs: []ethtypes.Log{}, + Timestamp: expirationTime.Add(-2 * time.Hour), + }, + }, + { + Type: blockwatch.Added, + BlockHeader: &types.MiniHeader{ + Parent: replacementBlockHash, + Hash: common.HexToHash("0x3"), + Number: big.NewInt(0).Add(nextBlock.Number, big.NewInt(1)), + Logs: []ethtypes.Log{}, + Timestamp: expirationTime.Add(-1 * time.Hour), + }, + }, + } + orderWatcher.blockEventsChan <- reorgBlockEvents + + // Await unexpired event + orderEvents = waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) + require.Len(t, orderEvents, 1, testCase.description) + orderEvent = orderEvents[0] + assert.Equal(t, zeroex.ESOrderUnexpired, orderEvent.EndState, testCase.description) + + newOrders, err := database.FindOrders(nil) + require.NoError(t, err, testCase.description) + require.Len(t, newOrders, 1, testCase.description) + expectedOrderState = orderState{ + hash: expectedOrderHash, + isRemoved: false, + isUnfillable: false, + isExpired: false, + fillableAmount: signedOrder.TakerAssetAmount, + lastUpdated: time.Now(), + lastValidatedBlock: reorgBlockEvents[len(reorgBlockEvents)-1].BlockHeader, + } + checkOrderState(t, expectedOrderState, newOrders[0]) + + cancel() + teardownSubTest(t) } - checkOrderState(t, expectedOrderState, orders[0]) } -func TestOrderWatcherOrderExpiredThenUnexpired(t *testing.T) { +func TestOrderWatcherOrderExpiredWhenAddedThenUnexpired(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } @@ -1081,9 +1735,10 @@ func TestOrderWatcherOrderExpiredThenUnexpired(t *testing.T) { dbOptions := db.TestOptions() database, err := db.New(ctx, dbOptions) require.NoError(t, err) + blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - // Create and add an order (which will later become expired) to OrderWatcher - expirationTime := time.Now().Add(24 * time.Hour) + // Create an order which will be expired when added to the OrderWatcher + expirationTime := time.Now().Add(-24 * time.Hour) expirationTimeSeconds := big.NewInt(expirationTime.Unix()) signedOrder := scenario.NewSignedTestOrder(t, orderopts.SetupMakerState(true), @@ -1091,96 +1746,88 @@ func TestOrderWatcherOrderExpiredThenUnexpired(t *testing.T) { ) expectedOrderHash, err := signedOrder.ComputeOrderHash() require.NoError(t, err) - blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrder, false) orderEventsChan := make(chan []*zeroex.OrderEvent, 2*orderWatcher.maxOrders) orderWatcher.Subscribe(orderEventsChan) - // Simulate a block found with a timestamp past expirationTime - latestBlock, err := database.GetLatestMiniHeader() + // Add the order to Mesh + err = blockwatcher.SyncToLatestBlock() + require.NoError(t, err) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, &types.AddOrdersOpts{KeepExpired: true}) require.NoError(t, err) - nextBlock := &types.MiniHeader{ - Parent: latestBlock.Hash, - Hash: common.HexToHash("0x1"), - Number: big.NewInt(0).Add(latestBlock.Number, big.NewInt(1)), - Timestamp: expirationTime.Add(1 * time.Minute), - } - expiringBlockEvents := []*blockwatch.Event{ - { - Type: blockwatch.Added, - BlockHeader: nextBlock, - }, - } - orderWatcher.blockEventsChan <- expiringBlockEvents - // Await expired event - orderEvents := waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - assert.Equal(t, zeroex.ESOrderExpired, orderEvent.EndState) + assert.Len(t, validationResults.Accepted, 0) + assert.Len(t, validationResults.Rejected, 1) + assert.Equal(t, ordervalidator.ROExpired, validationResults.Rejected[0].Status) orders, err := database.FindOrders(nil) require.NoError(t, err) require.Len(t, orders, 1) + expectedValidationBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err) expectedOrderState := orderState{ hash: expectedOrderHash, - isRemoved: true, - fillableAmount: signedOrder.TakerAssetAmount, + isRemoved: false, + isUnfillable: true, + isExpired: true, + fillableAmount: big.NewInt(0), lastUpdated: time.Now(), - lastValidatedBlock: nextBlock, + lastValidatedBlock: expectedValidationBlock, } checkOrderState(t, expectedOrderState, orders[0]) + // TODO(jalextowle): This code isn't needed with the current hacky test. + // This could be improved by stubbing out validation. + // Grep for SlowContractCaller in this file to see how the interface + // works. The idea would be to create a contract caller that ensures that + // DevUtils is called when the OrderWatcher is deciding whether or not to + // unexpire the order. + // + // The reason why this can't be tested in a more straightforward + // way is that it's non-trivial to implement a re-org at the level of ganache. + // Using ganache to simulate the whole workflow would be the optimal testing + // solution. + // // Simulate a block re-org - replacementBlockHash := common.HexToHash("0x2") - reorgBlockEvents := []*blockwatch.Event{ - { - Type: blockwatch.Removed, - BlockHeader: nextBlock, - }, - { - Type: blockwatch.Added, - BlockHeader: &types.MiniHeader{ - Parent: nextBlock.Parent, - Hash: replacementBlockHash, - Number: nextBlock.Number, - Logs: []ethtypes.Log{}, - Timestamp: expirationTime.Add(-2 * time.Hour), - }, - }, - { - Type: blockwatch.Added, - BlockHeader: &types.MiniHeader{ - Parent: replacementBlockHash, - Hash: common.HexToHash("0x3"), - Number: big.NewInt(0).Add(nextBlock.Number, big.NewInt(1)), - Logs: []ethtypes.Log{}, - Timestamp: expirationTime.Add(-1 * time.Hour), - }, - }, - } - orderWatcher.blockEventsChan <- reorgBlockEvents - - // Await unexpired event - orderEvents = waitForOrderEvents(t, orderEventsChan, 1, 4*time.Second) - require.Len(t, orderEvents, 1) - orderEvent = orderEvents[0] - assert.Equal(t, zeroex.ESOrderUnexpired, orderEvent.EndState) - - newOrders, err := database.FindOrders(nil) - require.NoError(t, err) - require.Len(t, newOrders, 1) - expectedOrderState = orderState{ - hash: expectedOrderHash, - isRemoved: false, - fillableAmount: signedOrder.TakerAssetAmount, - lastUpdated: time.Now(), - lastValidatedBlock: reorgBlockEvents[len(reorgBlockEvents)-1].BlockHeader, - } - checkOrderState(t, expectedOrderState, newOrders[0]) + // replacementBlockHash := common.HexToHash("0x2") + // reorgBlockEvents := []*blockwatch.Event{ + // { + // Type: blockwatch.Removed, + // BlockHeader: expectedValidationBlock, + // }, + // { + // Type: blockwatch.Added, + // BlockHeader: &types.MiniHeader{ + // Parent: expectedValidationBlock.Parent, + // Hash: replacementBlockHash, + // Number: expectedValidationBlock.Number, + // Logs: []ethtypes.Log{}, + // Timestamp: expirationTime.Add(-2 * time.Hour), + // }, + // }, + // { + // Type: blockwatch.Added, + // BlockHeader: &types.MiniHeader{ + // Parent: replacementBlockHash, + // Hash: common.HexToHash("0x3"), + // Number: big.NewInt(0).Add(expectedValidationBlock.Number, big.NewInt(1)), + // Logs: []ethtypes.Log{}, + // Timestamp: expirationTime.Add(-1 * time.Hour), + // }, + // }, + // } + // orderWatcher.blockEventsChan <- reorgBlockEvents + + // HACK(jalextowle): The block events above don't actually exist in the Ganache + // environment that Mesh uses to validate orders. This means that Mesh won't be + // able to actually validate the order. + possiblyUnexpiredOrders, err := orderWatcher.findOrdersToPossiblyUnexpire(expirationTime.Add(-2 * time.Hour)) + require.NoError(t, err) + assert.Len(t, possiblyUnexpiredOrders, 1) } +// NOTE(jalextowle): We don't need to implement a test for this with configurations +// as the configurations do not interact with the pinning system. func TestOrderWatcherDecreaseExpirationTime(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") @@ -1211,7 +1858,7 @@ func TestOrderWatcherDecreaseExpirationTime(t *testing.T) { } signedOrders := scenario.NewSignedTestOrdersBatch(t, maxOrders, optionsForIndex) for _, signedOrder := range signedOrders { - watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false) + watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false, &types.AddOrdersOpts{}) } // We don't care about the order events above for the purposes of this test, @@ -1227,7 +1874,7 @@ func TestOrderWatcherDecreaseExpirationTime(t *testing.T) { orderopts.SetupMakerState(true), orderopts.ExpirationTimeSeconds(expirationTimeSeconds), ) - watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false) + watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false, &types.AddOrdersOpts{}) expectedOrderEvents := 2 orderEvents := waitForOrderEvents(t, orderEventsChan, expectedOrderEvents, 4*time.Second) require.Len(t, orderEvents, expectedOrderEvents, "wrong number of order events were fired") @@ -1274,7 +1921,7 @@ func TestOrderWatcherDecreaseExpirationTime(t *testing.T) { ) pinnedOrderHash, err := pinnedOrder.ComputeOrderHash() require.NoError(t, err) - watchOrder(ctx, t, orderWatcher, blockWatcher, pinnedOrder, true) + watchOrder(ctx, t, orderWatcher, blockWatcher, pinnedOrder, true, &types.AddOrdersOpts{}) expectedOrderEvents = 2 orderEvents = waitForOrderEvents(t, orderEventsChan, expectedOrderEvents, 4*time.Second) @@ -1326,7 +1973,7 @@ func TestOrderWatcherBatchEmitsAddedEvents(t *testing.T) { err = blockWatcher.SyncToLatestBlock() require.NoError(t, err) - validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, signedOrders, false, constants.TestChainID) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, signedOrders, constants.TestChainID, false, &types.AddOrdersOpts{}) require.Len(t, validationResults.Rejected, 0) require.NoError(t, err) @@ -1359,9 +2006,9 @@ func TestOrderWatcherCleanup(t *testing.T) { orderOptions := scenario.OptionsForAll(orderopts.SetupMakerState(true)) signedOrders := scenario.NewSignedTestOrdersBatch(t, 2, orderOptions) signedOrderOne := signedOrders[0] - watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrderOne, false) + watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrderOne, false, &types.AddOrdersOpts{}) signedOrderTwo := signedOrders[1] - watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrderTwo, false) + watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrderTwo, false, &types.AddOrdersOpts{}) signedOrderOneHash, err := signedOrderTwo.ComputeOrderHash() require.NoError(t, err) @@ -1395,59 +2042,82 @@ func TestOrderWatcherHandleOrderExpirationsExpired(t *testing.T) { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") } - // Set up test and orderWatcher - teardownSubTest := setupSubTest(t) - defer teardownSubTest(t) - ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second) - defer cancel() - database, err := db.New(ctx, db.TestOptions()) - require.NoError(t, err) + for _, testCase := range []*struct { + description string + addOrdersOpts *types.AddOrdersOpts + shouldBeRemoved bool + }{ + { + description: "should be removed with no configurations", + addOrdersOpts: &types.AddOrdersOpts{}, + shouldBeRemoved: true, + }, + { + description: "should be kept with KeepExpired", + addOrdersOpts: &types.AddOrdersOpts{KeepExpired: true}, + shouldBeRemoved: false, + }, + } { + // Set up test and orderWatcher + teardownSubTest := setupSubTest(t) + ctx, cancel := context.WithTimeout(context.Background(), 20*time.Second) + defer cancel() + database, err := db.New(ctx, db.TestOptions()) + require.NoError(t, err, testCase.description) + + // Create and add an order (which will later become expired) to OrderWatcher + expirationTime := time.Now().Add(24 * time.Hour) + expirationTimeSeconds := big.NewInt(expirationTime.Unix()) + orderOptions := scenario.OptionsForAll( + orderopts.SetupMakerState(true), + orderopts.ExpirationTimeSeconds(expirationTimeSeconds), + ) + signedOrders := scenario.NewSignedTestOrdersBatch(t, 2, orderOptions) + signedOrderOne := signedOrders[0] + signedOrderTwo := signedOrders[1] + blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderOne, false, testCase.addOrdersOpts) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderTwo, false, testCase.addOrdersOpts) + + signedOrderOneHash, err := signedOrderOne.ComputeOrderHash() + require.NoError(t, err, testCase.description) + orderOne, err := database.GetOrder(signedOrderOneHash) + require.NoError(t, err, testCase.description) + // Since we flag SignedOrderOne for revalidation, we expect `handleOrderExpirations` not to return an + // expiry event for it. + ordersToRevalidate := map[common.Hash]*types.OrderWithMetadata{ + signedOrderOneHash: orderOne, + } - // Create and add an order (which will later become expired) to OrderWatcher - expirationTime := time.Now().Add(24 * time.Hour) - expirationTimeSeconds := big.NewInt(expirationTime.Unix()) - orderOptions := scenario.OptionsForAll( - orderopts.SetupMakerState(true), - orderopts.ExpirationTimeSeconds(expirationTimeSeconds), - ) - signedOrders := scenario.NewSignedTestOrdersBatch(t, 2, orderOptions) - signedOrderOne := signedOrders[0] - signedOrderTwo := signedOrders[1] - blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderOne, false) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderTwo, false) + // Make a "fake" block with a timestamp 1 second after expirationTime. + latestBlock, err := database.GetLatestMiniHeader() + require.NoError(t, err, testCase.description) + latestBlock.Timestamp = expirationTime.Add(1 * time.Second) + orderEvents, _, err := orderWatcher.handleOrderExpirations(latestBlock, ordersToRevalidate) + require.NoError(t, err, testCase.description) + + require.Len(t, orderEvents, 1) + orderEvent := orderEvents[0] + signedOrderTwoHash, err := signedOrderTwo.ComputeOrderHash() + require.NoError(t, err, testCase.description) + assert.Equal(t, signedOrderTwoHash, orderEvent.OrderHash, testCase.description) + assert.Equal(t, zeroex.ESOrderExpired, orderEvent.EndState, testCase.description) + assert.Equal(t, big.NewInt(0), orderEvent.FillableTakerAssetAmount, testCase.description) + assert.Len(t, orderEvent.ContractEvents, 0, testCase.description) + + orderTwo, err := database.GetOrder(signedOrderTwoHash) + require.NoError(t, err, testCase.description) + assert.Equal(t, testCase.shouldBeRemoved, orderTwo.IsRemoved, testCase.description) + assert.Equal(t, true, orderTwo.IsUnfillable, testCase.description) + assert.Equal(t, true, orderTwo.IsExpired, testCase.description) - signedOrderOneHash, err := signedOrderOne.ComputeOrderHash() - require.NoError(t, err) - orderOne, err := database.GetOrder(signedOrderOneHash) - require.NoError(t, err) - // Since we flag SignedOrderOne for revalidation, we expect `handleOrderExpirations` not to return an - // expiry event for it. - ordersToRevalidate := map[common.Hash]*types.OrderWithMetadata{ - signedOrderOneHash: orderOne, + cancel() + teardownSubTest(t) } - - // Make a "fake" block with a timestamp 1 second after expirationTime. - latestBlock, err := database.GetLatestMiniHeader() - require.NoError(t, err) - latestBlock.Timestamp = expirationTime.Add(1 * time.Second) - orderEvents, err := orderWatcher.handleOrderExpirations(latestBlock, ordersToRevalidate) - require.NoError(t, err) - - require.Len(t, orderEvents, 1) - orderEvent := orderEvents[0] - signedOrderTwoHash, err := signedOrderTwo.ComputeOrderHash() - require.NoError(t, err) - assert.Equal(t, signedOrderTwoHash, orderEvent.OrderHash) - assert.Equal(t, zeroex.ESOrderExpired, orderEvent.EndState) - assert.Equal(t, big.NewInt(0), orderEvent.FillableTakerAssetAmount) - assert.Len(t, orderEvent.ContractEvents, 0) - - orderTwo, err := database.GetOrder(signedOrderTwoHash) - require.NoError(t, err) - assert.Equal(t, true, orderTwo.IsRemoved) } +// NOTE(jalextowle): We don't need a corresponding test with configurations +// because this test does not test for removal. func TestOrderWatcherHandleOrderExpirationsUnexpired(t *testing.T) { if !serialTestsEnabled { t.Skip("Serial tests (tests which cannot run in parallel) are disabled. You can enable them with the --serial flag") @@ -1472,8 +2142,8 @@ func TestOrderWatcherHandleOrderExpirationsUnexpired(t *testing.T) { signedOrderOne := signedOrders[0] signedOrderTwo := signedOrders[1] blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderOne, false) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderTwo, false) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderOne, false, &types.AddOrdersOpts{}) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrderTwo, false, &types.AddOrdersOpts{}) orderEventsChan := make(chan []*zeroex.OrderEvent, 2*orderWatcher.maxOrders) orderWatcher.Subscribe(orderEventsChan) @@ -1518,7 +2188,7 @@ func TestOrderWatcherHandleOrderExpirationsUnexpired(t *testing.T) { latestBlock, err = database.GetLatestMiniHeader() require.NoError(t, err) latestBlock.Timestamp = expirationTime.Add(-1 * time.Minute) - orderEvents, err = orderWatcher.handleOrderExpirations(latestBlock, ordersToRevalidate) + orderEvents, _, err = orderWatcher.handleOrderExpirations(latestBlock, ordersToRevalidate) require.NoError(t, err) require.Len(t, orderEvents, 1) @@ -1533,6 +2203,8 @@ func TestOrderWatcherHandleOrderExpirationsUnexpired(t *testing.T) { orderTwo, err := database.GetOrder(signedOrderTwoHash) require.NoError(t, err) assert.Equal(t, false, orderTwo.IsRemoved) + assert.Equal(t, false, orderTwo.IsUnfillable) + assert.Equal(t, false, orderTwo.IsExpired) } // Scenario: Order has become unexpired and filled in the same block events processed. We test this case using @@ -1559,7 +2231,7 @@ func TestConvertValidationResultsIntoOrderEventsUnexpired(t *testing.T) { orderopts.ExpirationTimeSeconds(expirationTimeSeconds), ) blockwatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) - watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrder, false) + watchOrder(ctx, t, orderWatcher, blockwatcher, signedOrder, false, &types.AddOrdersOpts{}) orderEventsChan := make(chan []*zeroex.OrderEvent, 2*orderWatcher.maxOrders) orderWatcher.Subscribe(orderEventsChan) @@ -1619,7 +2291,7 @@ func TestConvertValidationResultsIntoOrderEventsUnexpired(t *testing.T) { validationBlock, err := database.GetLatestMiniHeader() require.NoError(t, err) validationBlock.Timestamp = expirationTime.Add(-1 * time.Minute) - orderEvents, err = orderWatcher.convertValidationResultsIntoOrderEvents(&validationResults, orderHashToDBOrder, orderHashToEvents, validationBlock) + orderEvents, err = orderWatcher.convertValidationResultsIntoOrderEvents(&validationResults, orderHashToDBOrder, orderHashToEvents, map[common.Hash]struct{}{}, validationBlock) require.NoError(t, err) require.Len(t, orderEvents, 2) @@ -1636,6 +2308,8 @@ func TestConvertValidationResultsIntoOrderEventsUnexpired(t *testing.T) { existingOrder, err := database.GetOrder(orderHash) require.NoError(t, err) assert.Equal(t, false, existingOrder.IsRemoved) + assert.Equal(t, false, existingOrder.IsUnfillable) + assert.Equal(t, false, existingOrder.IsExpired) } func TestDrainAllBlockEventsChan(t *testing.T) { @@ -1727,7 +2401,7 @@ func TestRevalidateOrdersForMissingEvents(t *testing.T) { return err }) g.Go(func() error { - validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, false, constants.TestChainID) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, &types.AddOrdersOpts{}) if err != nil { return err } @@ -1815,7 +2489,7 @@ func TestMissingOrderEvents(t *testing.T) { return err }) g.Go(func() error { - validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, false, constants.TestChainID) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, &types.AddOrdersOpts{}) if err != nil { return err } @@ -1932,7 +2606,7 @@ func TestMissingOrderEventsWithMissingBlocks(t *testing.T) { return err }) g.Go(func() error { - validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, false, constants.TestChainID) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(innerCtx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, false, &types.AddOrdersOpts{}) if err != nil { return err } @@ -1976,11 +2650,11 @@ func TestMissingOrderEventsWithMissingBlocks(t *testing.T) { assert.Equal(t, orderHash, orderEvents[0].OrderHash) } -func setupOrderWatcherScenario(ctx context.Context, t *testing.T, database *db.DB, signedOrder *zeroex.SignedOrder) (*blockwatch.Watcher, chan []*zeroex.OrderEvent) { +func setupOrderWatcherScenario(ctx context.Context, t *testing.T, database *db.DB, signedOrder *zeroex.SignedOrder, opts *types.AddOrdersOpts) (*blockwatch.Watcher, chan []*zeroex.OrderEvent) { blockWatcher, orderWatcher := setupOrderWatcher(ctx, t, ethRPCClient, database) // Start watching an order - watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false) + watchOrder(ctx, t, orderWatcher, blockWatcher, signedOrder, false, opts) // Subscribe to OrderWatcher orderEventsChan := make(chan []*zeroex.OrderEvent, 10) @@ -1989,11 +2663,11 @@ func setupOrderWatcherScenario(ctx context.Context, t *testing.T, database *db.D return blockWatcher, orderEventsChan } -func watchOrder(ctx context.Context, t *testing.T, orderWatcher *Watcher, blockWatcher *blockwatch.Watcher, signedOrder *zeroex.SignedOrder, pinned bool) { +func watchOrder(ctx context.Context, t *testing.T, orderWatcher *Watcher, blockWatcher *blockwatch.Watcher, signedOrder *zeroex.SignedOrder, pinned bool, opts *types.AddOrdersOpts) { err := blockWatcher.SyncToLatestBlock() require.NoError(t, err) - validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{signedOrder}, pinned, constants.TestChainID) + validationResults, err := orderWatcher.ValidateAndStoreValidOrders(ctx, []*zeroex.SignedOrder{signedOrder}, constants.TestChainID, pinned, opts) require.NoError(t, err) if len(validationResults.Rejected) != 0 { spew.Dump(validationResults.Rejected) @@ -2116,6 +2790,8 @@ func waitTxnSuccessfullyMined(t *testing.T, ethClient *ethclient.Client, txn *et type orderState struct { hash common.Hash isRemoved bool + isUnfillable bool + isExpired bool fillableAmount *big.Int lastUpdated time.Time lastValidatedBlock *types.MiniHeader @@ -2124,6 +2800,8 @@ type orderState struct { func checkOrderState(t *testing.T, expectedState orderState, order *types.OrderWithMetadata) { assert.Equal(t, expectedState.hash, order.Hash, "Hash") assert.Equal(t, expectedState.isRemoved, order.IsRemoved, "IsRemoved") + assert.Equal(t, expectedState.isUnfillable, order.IsUnfillable, "IsUnfillable") + assert.Equal(t, expectedState.isExpired, order.IsExpired, "IsExpired") assert.Equal(t, expectedState.fillableAmount, order.FillableTakerAssetAmount, "FillableTakerAssetAmount") assert.WithinDuration(t, expectedState.lastUpdated, order.LastUpdated, 4*time.Second, "LastUpdated") assert.Equal(t, expectedState.lastValidatedBlock.Number, order.LastValidatedBlockNumber, "LastValidatedBlockNumber")