Browser-Lite API documentation

Class: Mesh

The main class for this package. Has methods for receiving order events and sending orders through the 0x Mesh network.

Hierarchy

  • Mesh

Constructors

constructer

+ new Mesh(config: Config): Mesh

Defined in mesh.ts:141

Instantiates a new Mesh instance.

Parameters:

Name

Type

Description

config

Configuration options for Mesh

Returns: Mesh

An instance of Mesh

Methods

addOrdersAsync

addOrdersAsync(orders: SignedOrder[], pinned: boolean): Promise‹ValidationResults

Defined in mesh.ts:291

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 watching it for changes (e.g. filled, canceled, expired). The returned promise will only be rejected if there was an error validating or adding the order; it will not be rejected for any invalid orders (check results.rejected instead).

Parameters:

Name

Type

Default

Description

orders

SignedOrder[]

-

An array of orders to add.

pinned

boolean

true

Whether or not the orders should be 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.

Returns: Promise‹ValidationResults

Validation results for the given orders, indicating which orders were accepted and which were rejected.

getOrdersAsync

getOrdersAsync(perPage: number): Promise‹GetOrdersResponse

Defined in mesh.ts:220

Get all 0x signed orders currently stored in the Mesh node

Parameters:

Name

Type

Default

Description

perPage

number

200

number of signedOrders to fetch per paginated request

Returns: Promise‹GetOrdersResponse

the snapshotID, snapshotTimestamp and all orders, their hashes and fillableTakerAssetAmounts

getOrdersForPageAsync

getOrdersForPageAsync(page: number, perPage: number, snapshotID?: undefined | string): Promise‹GetOrdersResponse

Defined in mesh.ts:262

Get page of 0x signed orders stored on the Mesh node at the specified snapshot

Parameters:

Name

Type

Description

page

number

Page index at which to retrieve orders

perPage

number

Number of signedOrders to fetch per paginated request

snapshotID?

undefined | string

The DB snapshot at which to fetch orders. If omitted, a new snapshot is created

Returns: Promise‹GetOrdersResponse

the snapshotID, snapshotTimestamp and all orders, their hashes and fillableTakerAssetAmounts

getStatsAsync

getStatsAsync(): Promise‹Stats

Defined in mesh.ts:203

Returns various stats about Mesh, including the total number of orders and the number of peers Mesh is connected to.

Returns: Promise‹Stats

onError

onError(handler: function): void

Defined in mesh.ts:161

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. In order to ensure no errors are missed, this should be called before startAsync.

Parameters:

handler: function

The handler to be called.

▸ (err: Error): void

Parameters:

Name

Type

err

Error

Returns: void

onOrderEvents

onOrderEvents(handler: function): void

Defined in mesh.ts:176

Registers a handler which will be called for any incoming order events. Order events are fired whenver an order is added, canceled, expired, or filled. In order to ensure no events are missed, this should be called before startAsync.

Parameters:

handler: function

The handler to be called.

▸ (events: OrderEvent[]): void

Parameters:

Name

Type

events

Returns: void

startAsync

startAsync(): Promise‹void›

Defined in mesh.ts:187

Starts the Mesh node in the background. Mesh will automatically find peers in the network and begin receiving orders from them.

Returns: Promise‹void›

Enumeration: ContractEventKind

Enumeration members

ERC1155ApprovalForAllEvent

ERC1155ApprovalForAllEvent: = "ERC1155ApprovalForAllEvent"

Defined in types.ts:444

ERC1155TransferBatchEvent

ERC1155TransferBatchEvent: = "ERC1155TransferBatchEvent"

Defined in types.ts:446

ERC1155TransferSingleEvent

ERC1155TransferSingleEvent: = "ERC1155TransferSingleEvent"

Defined in types.ts:445

ERC20ApprovalEvent

ERC20ApprovalEvent: = "ERC20ApprovalEvent"

Defined in types.ts:440

ERC20TransferEvent

ERC20TransferEvent: = "ERC20TransferEvent"

Defined in types.ts:439

ERC721ApprovalEvent

ERC721ApprovalEvent: = "ERC721ApprovalEvent"

Defined in types.ts:442

ERC721ApprovalForAllEvent

ERC721ApprovalForAllEvent: = "ERC721ApprovalForAllEvent"

Defined in types.ts:443

ERC721TransferEvent

ERC721TransferEvent: = "ERC721TransferEvent"

Defined in types.ts:441

ExchangeCancelEvent

ExchangeCancelEvent: = "ExchangeCancelEvent"

Defined in types.ts:448

ExchangeCancelUpToEvent

ExchangeCancelUpToEvent: = "ExchangeCancelUpToEvent"

Defined in types.ts:449

ExchangeFillEvent

ExchangeFillEvent: = "ExchangeFillEvent"

Defined in types.ts:447

WethDepositEvent

WethDepositEvent: = "WethDepositEvent"

Defined in types.ts:450

WethWithdrawalEvent

WethWithdrawalEvent: = "WethWithdrawalEvent"

Defined in types.ts:451

Enumeration: OrderEventEndState

Enumeration members

Added

Added: = "ADDED"

Defined in types.ts:509

Cancelled

Cancelled: = "CANCELLED"

Defined in types.ts:512

Expired

Expired: = "EXPIRED"

Defined in types.ts:513

FillabilityIncreased

FillabilityIncreased: = "FILLABILITY_INCREASED"

Defined in types.ts:516

Filled

Filled: = "FILLED"

Defined in types.ts:510

FullyFilled

FullyFilled: = "FULLY_FILLED"

Defined in types.ts:511

Invalid

Invalid: = "INVALID"

Defined in types.ts:508

StoppedWatching

StoppedWatching: = "STOPPED_WATCHING"

Defined in types.ts:517

Unexpired

Unexpired: = "UNEXPIRED"

Defined in types.ts:514

Unfunded

Unfunded: = "UNFUNDED"

Defined in types.ts:515

Enumeration: RejectedOrderKind

A set of categories for rejected orders.

Enumeration members

CoordinatorError

CoordinatorError: = "COORDINATOR_ERROR"

Defined in types.ts:600

MeshError

MeshError: = "MESH_ERROR"

Defined in types.ts:598

MeshValidation

MeshValidation: = "MESH_VALIDATION"

Defined in types.ts:599

ZeroExValidation

ZeroExValidation: = "ZEROEX_VALIDATION"

Defined in types.ts:597

Enumeration: Verbosity

Enumeration members

Debug

Debug: = 5

Defined in types.ts:209

Error

Error: = 2

Defined in types.ts:206

Fatal

Fatal: = 1

Defined in types.ts:205

Info

Info: = 4

Defined in types.ts:208

Panic

Panic: = 0

Defined in types.ts:204

Trace

Trace: = 6

Defined in types.ts:210

Warn

Warn: = 3

Defined in types.ts:207

Interface: AcceptedOrderInfo

Info for any orders that were accepted.

Hierarchy

  • AcceptedOrderInfo

Properties

fillableTakerAssetAmount

fillableTakerAssetAmount: BigNumber

Defined in types.ts:578

isNew

isNew: boolean

Defined in types.ts:579

orderHash

orderHash: string

Defined in types.ts:576

signedOrder

signedOrder: SignedOrder

Defined in types.ts:577

Interface: Config

A set of configuration options for Mesh.

Hierarchy

  • Config

Properties

Optional blockPollingIntervalSeconds

blockPollingIntervalSeconds? : undefined | number

Defined in types.ts:116

Optional bootstrapList

bootstrapList? : string[]

Defined in types.ts:109

Optional customContractAddresses

customContractAddresses? : ContractAddresses

Defined in types.ts:160

Optional customOrderFilter

customOrderFilter? : JsonSchema

Defined in types.ts:185

Optional enableEthereumRPCRateLimiting

enableEthereumRPCRateLimiting? : undefined | false | true

Defined in types.ts:133

ethereumChainID

ethereumChainID: number

Defined in types.ts:101

Optional ethereumRPCMaxContentLength

ethereumRPCMaxContentLength? : undefined | number

Defined in types.ts:125

Optional ethereumRPCMaxRequestsPer24HrUTC

ethereumRPCMaxRequestsPer24HrUTC? : undefined | number

Defined in types.ts:138

Optional ethereumRPCMaxRequestsPerSecond

ethereumRPCMaxRequestsPerSecond? : undefined | number

Defined in types.ts:144

Optional ethereumRPCURL

ethereumRPCURL? : undefined | string

Defined in types.ts:98

Optional maxOrdersInStorage

maxOrdersInStorage? : undefined | number

Defined in types.ts:165

Optional useBootstrapList

useBootstrapList? : undefined | false | true

Defined in types.ts:104

Optional verbosity

verbosity? : Verbosity

Defined in types.ts:95

Optional web3Provider

web3Provider? : SupportedProvider

Defined in types.ts:188

Interface: ContractAddresses

Hierarchy

  • ContractAddresses

Properties

Optional coordinator

coordinator? : undefined | string

Defined in types.ts:197

Optional coordinatorRegistry

coordinatorRegistry? : undefined | string

Defined in types.ts:198

devUtils

devUtils: string

Defined in types.ts:193

erc1155Proxy

erc1155Proxy: string

Defined in types.ts:196

erc20Proxy

erc20Proxy: string

Defined in types.ts:194

erc721Proxy

erc721Proxy: string

Defined in types.ts:195

exchange

exchange: string

Defined in types.ts:192

Optional weth9

weth9? : undefined | string

Defined in types.ts:199

Optional zrxToken

zrxToken? : undefined | string

Defined in types.ts:200

Interface: ContractEvent

Hierarchy

  • ContractEvent

Properties

address

address: string

Defined in types.ts:490

blockHash

blockHash: string

Defined in types.ts:485

isRemoved

isRemoved: boolean

Defined in types.ts:489

kind

kind: ContractEventKind

Defined in types.ts:491

logIndex

logIndex: number

Defined in types.ts:488

parameters

parameters: ContractEventParameters

Defined in types.ts:492

txHash

txHash: string

Defined in types.ts:486

txIndex

txIndex: number

Defined in types.ts:487

Interface: ERC1155ApprovalForAllEvent

Hierarchy

  • ERC1155ApprovalForAllEvent

Properties

approved

approved: boolean

Defined in types.ts:360

operator

operator: string

Defined in types.ts:359

owner

owner: string

Defined in types.ts:358

Interface: ERC1155TransferBatchEvent

Hierarchy

  • ERC1155TransferBatchEvent

Properties

from

from: string

Defined in types.ts:343

ids

ids: BigNumber[]

Defined in types.ts:345

operator

operator: string

Defined in types.ts:342

to

to: string

Defined in types.ts:344

values

values: BigNumber[]

Defined in types.ts:346

Interface: ERC1155TransferSingleEvent

Hierarchy

  • ERC1155TransferSingleEvent

Properties

from

from: string

Defined in types.ts:327

id

id: BigNumber

Defined in types.ts:329

operator

operator: string

Defined in types.ts:326

to

to: string

Defined in types.ts:328

value

value: BigNumber

Defined in types.ts:330

Interface: ERC20ApprovalEvent

Hierarchy

  • ERC20ApprovalEvent

Properties

owner

owner: string

Defined in types.ts:284

spender

spender: string

Defined in types.ts:285

value

value: BigNumber

Defined in types.ts:286

Interface: ERC20TransferEvent

Hierarchy

  • ERC20TransferEvent

Properties

from

from: string

Defined in types.ts:272

to

to: string

Defined in types.ts:273

value

value: BigNumber

Defined in types.ts:274

Interface: ERC721ApprovalEvent

Hierarchy

  • ERC721ApprovalEvent

Properties

approved

approved: string

Defined in types.ts:309

owner

owner: string

Defined in types.ts:308

tokenId

tokenId: BigNumber

Defined in types.ts:310

Interface: ERC721ApprovalForAllEvent

Hierarchy

  • ERC721ApprovalForAllEvent

Properties

approved

approved: boolean

Defined in types.ts:322

operator

operator: string

Defined in types.ts:321

owner

owner: string

Defined in types.ts:320

Interface: ERC721TransferEvent

Hierarchy

  • ERC721TransferEvent

Properties

from

from: string

Defined in types.ts:296

to

to: string

Defined in types.ts:297

tokenId

tokenId: BigNumber

Defined in types.ts:298

Interface: ExchangeCancelEvent

Hierarchy

  • ExchangeCancelEvent

Properties

feeRecipientAddress

feeRecipientAddress: string

Defined in types.ts:400

makerAddress

makerAddress: string

Defined in types.ts:398

makerAssetData

makerAssetData: string

Defined in types.ts:402

orderHash

orderHash: string

Defined in types.ts:401

senderAddress

senderAddress: string

Defined in types.ts:399

takerAssetData

takerAssetData: string

Defined in types.ts:403

Interface: ExchangeCancelUpToEvent

Hierarchy

  • ExchangeCancelUpToEvent

Properties

makerAddress

makerAddress: string

Defined in types.ts:407

orderEpoch

orderEpoch: BigNumber

Defined in types.ts:409

orderSenderAddress

orderSenderAddress: string

Defined in types.ts:408

Interface: ExchangeFillEvent

Hierarchy

  • ExchangeFillEvent

Properties

feeRecipientAddress

feeRecipientAddress: string

Defined in types.ts:367

makerAddress

makerAddress: string

Defined in types.ts:364

makerAssetData

makerAssetData: string

Defined in types.ts:374

makerAssetFilledAmount

makerAssetFilledAmount: BigNumber

Defined in types.ts:368

makerFeeAssetData

makerFeeAssetData: string

Defined in types.ts:376

makerFeePaid

makerFeePaid: BigNumber

Defined in types.ts:370

orderHash

orderHash: string

Defined in types.ts:373

protocolFeePaid

protocolFeePaid: BigNumber

Defined in types.ts:372

senderAddress

senderAddress: string

Defined in types.ts:366

takerAddress

takerAddress: string

Defined in types.ts:365

takerAssetData

takerAssetData: string

Defined in types.ts:375

takerAssetFilledAmount

takerAssetFilledAmount: BigNumber

Defined in types.ts:369

takerFeeAssetData

takerFeeAssetData: string

Defined in types.ts:377

takerFeePaid

takerFeePaid: BigNumber

Defined in types.ts:371

Interface: GetOrdersResponse

Hierarchy

  • GetOrdersResponse

Properties

ordersInfos

ordersInfos: OrderInfo[]

Defined in types.ts:18

snapshotID

snapshotID: string

Defined in types.ts:16

snapshotTimestamp

snapshotTimestamp: number

Defined in types.ts:17

Interface: JsonSchema

An interface for JSON schema types, which are used for custom order filters.

Hierarchy

  • JsonSchema

Properties

Optional $ref

$ref? : undefined | string

Defined in types.ts:39

Optional $schema

$schema? : undefined | string

Defined in types.ts:38

Optional additionalItems

additionalItems? : boolean | JsonSchema

Defined in types.ts:50

Optional additionalProperties

additionalProperties? : boolean | JsonSchema

Defined in types.ts:58

Optional allOf

allOf? : JsonSchema[]

Defined in types.ts:80

Optional anyOf

anyOf? : JsonSchema[]

Defined in types.ts:81

Optional const

const? : any

Defined in types.ts:77

Optional definitions

definitions? : undefined | object

Defined in types.ts:59

Optional dependencies

dependencies? : undefined | object

Defined in types.ts:68

Optional description

description? : undefined | string

Defined in types.ts:41

Optional enum

enum? : any[]

Defined in types.ts:71

Optional exclusiveMaximum

exclusiveMaximum? : undefined | false | true

Defined in types.ts:44

Optional exclusiveMinimum

exclusiveMinimum? : undefined | false | true

Defined in types.ts:46

Optional format

format? : undefined | string

Defined in types.ts:79

Optional id

id? : undefined | string

Defined in types.ts:37

Optional items

items? : JsonSchema | JsonSchema[]

Defined in types.ts:51

Optional maxItems

maxItems? : undefined | number

Defined in types.ts:52

Optional maxLength

maxLength? : undefined | number

Defined in types.ts:47

Optional maxProperties

maxProperties? : undefined | number

Defined in types.ts:55

Optional maximum

maximum? : undefined | number

Defined in types.ts:43

Optional minItems

minItems? : undefined | number

Defined in types.ts:53

Optional minLength

minLength? : undefined | number

Defined in types.ts:48

Optional minProperties

minProperties? : undefined | number

Defined in types.ts:56

Optional minimum

minimum? : undefined | number

Defined in types.ts:45

Optional multipleOf

multipleOf? : undefined | number

Defined in types.ts:42

Optional not

not? : JsonSchema

Defined in types.ts:83

Optional oneOf

oneOf? : JsonSchema[]

Defined in types.ts:82

Optional pattern

pattern? : string | RegExp

Defined in types.ts:49

Optional patternProperties

patternProperties? : undefined | object

Defined in types.ts:65

Optional properties

properties? : undefined | object

Defined in types.ts:62

Optional required

required? : string[]

Defined in types.ts:57

Optional title

title? : undefined | string

Defined in types.ts:40

Optional type

type? : string | string[]

Defined in types.ts:78

Optional uniqueItems

uniqueItems? : undefined | false | true

Defined in types.ts:54

Interface: LatestBlock

Hierarchy

  • LatestBlock

Properties

hash

hash: string

Defined in types.ts:613

number

number: number

Defined in types.ts:612

Interface: OrderEvent

Order events are fired by Mesh whenever an order is added, canceled, expired, or filled.

Hierarchy

  • OrderEvent

Properties

contractEvents

contractEvents: ContractEvent[]

Defined in types.ts:539

endState

endState: OrderEventEndState

Defined in types.ts:537

fillableTakerAssetAmount

fillableTakerAssetAmount: BigNumber

Defined in types.ts:538

orderHash

orderHash: string

Defined in types.ts:535

signedOrder

signedOrder: SignedOrder

Defined in types.ts:536

timestampMs

timestampMs: number

Defined in types.ts:534

Interface: OrderInfo

Hierarchy

  • OrderInfo

Properties

fillableTakerAssetAmount

fillableTakerAssetAmount: BigNumber

Defined in types.ts:30

orderHash

orderHash: string

Defined in types.ts:28

signedOrder

signedOrder: SignedOrder

Defined in types.ts:29

Interface: RejectedOrderInfo

Info for any orders that were rejected, including the reason they were rejected.

Hierarchy

  • RejectedOrderInfo

Properties

kind

kind: RejectedOrderKind

Defined in types.ts:589

orderHash

orderHash: string

Defined in types.ts:587

signedOrder

signedOrder: SignedOrder

Defined in types.ts:588

status

status: RejectedOrderStatus

Defined in types.ts:590

Interface: RejectedOrderStatus

Provides more information about why an order was rejected.

Hierarchy

  • RejectedOrderStatus

Properties

code

code: string

Defined in types.ts:607

message

message: string

Defined in types.ts:608

Interface: Stats

Hierarchy

  • Stats

Properties

ethRPCRateLimitExpiredRequests

ethRPCRateLimitExpiredRequests: number

Defined in types.ts:649

ethRPCRequestsSentInCurrentUTCDay

ethRPCRequestsSentInCurrentUTCDay: number

Defined in types.ts:648

ethereumChainID

ethereumChainID: number

Defined in types.ts:640

latestBlock

latestBlock: LatestBlock

Defined in types.ts:641

maxExpirationTime

maxExpirationTime: BigNumber

Defined in types.ts:646

numOrders

numOrders: number

Defined in types.ts:643

numOrdersIncludingRemoved

numOrdersIncludingRemoved: number

Defined in types.ts:644

numPeers

numPeers: number

Defined in types.ts:642

numPinnedOrders

numPinnedOrders: number

Defined in types.ts:645

peerID

peerID: string

Defined in types.ts:639

pubSubTopic

pubSubTopic: string

Defined in types.ts:636

rendezvous

rendezvous: string

Defined in types.ts:637

secondaryRendezvous

secondaryRendezvous: string[]

Defined in types.ts:638

startOfCurrentUTCDay

startOfCurrentUTCDay: Date

Defined in types.ts:647

version

version: string

Defined in types.ts:635

Interface: ValidationResults

Indicates which orders where accepted, which were rejected, and why.

Hierarchy

  • ValidationResults

Properties

accepted

accepted: AcceptedOrderInfo[]

Defined in types.ts:568

rejected

rejected: RejectedOrderInfo[]

Defined in types.ts:569

Interface: WethDepositEvent

Hierarchy

  • WethDepositEvent

Properties

owner

owner: string

Defined in types.ts:429

value

value: BigNumber

Defined in types.ts:430

Interface: WethWithdrawalEvent

Hierarchy

  • WethWithdrawalEvent

Properties

owner

owner: string

Defined in types.ts:419

value

value: BigNumber

Defined in types.ts:420

Functions

loadMeshStreamingForURLAsync

loadMeshStreamingWithURLAsync(url: string): Promise‹void

Defined in index.ts:7

Loads the Wasm module that is provided by fetching a url.

Parameters:

Name

Type

Description

url

string

The URL to query for the Wasm binary

loadMeshStreamingAsync

loadMeshStreamingAsync(response: Response | Promise<Response>): Promise‹void

Defined in index.ts:15

Loads the Wasm module that is provided by a response.

Parameters:

Name

Type

Description

response

Response or Promise<Response>

The Wasm response that supplies the Wasm binary

Last updated