0x Mesh
latest
Search…
⌃K

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:132
Instantiates a new Mesh instance.
Parameters:
Name
Type
Description
config
Config
Configuration options for Mesh
Returns: Mesh
An instance of Mesh

Properties

Optional wrapper

wrapper? : MeshWrapper
Defined in mesh.ts:129

Methods

addOrdersAsync

addOrdersAsync(orders: SignedOrder[], pinned: boolean): Promise‹ValidationResults
Defined in mesh.ts:269
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:207
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(perPage: number, minOrderHash?: undefined | string): Promise‹GetOrdersResponse
Defined in mesh.ts:240
Get page of 0x signed orders stored on the Mesh node at the specified snapshot
Parameters:
Name
Type
Description
perPage
number
Number of signedOrders to fetch per paginated request
minOrderHash?
undefined | string
The minimum order hash for the returned orders. Should be set based on the last hash from the previous response.
Returns: Promise‹GetOrdersResponse
Up to perPage orders with hash greater than minOrderHash, including order hashes and fillableTakerAssetAmounts

getStatsAsync

getStatsAsync(): Promise‹Stats
Defined in mesh.ts:190
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:152
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:165
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:174
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:505

ERC1155TransferBatchEvent

ERC1155TransferBatchEvent: = "ERC1155TransferBatchEvent"
Defined in types.ts:507

ERC1155TransferSingleEvent

ERC1155TransferSingleEvent: = "ERC1155TransferSingleEvent"
Defined in types.ts:506

ERC20ApprovalEvent

ERC20ApprovalEvent: = "ERC20ApprovalEvent"
Defined in types.ts:501

ERC20TransferEvent

ERC20TransferEvent: = "ERC20TransferEvent"
Defined in types.ts:500

ERC721ApprovalEvent

ERC721ApprovalEvent: = "ERC721ApprovalEvent"
Defined in types.ts:503

ERC721ApprovalForAllEvent

ERC721ApprovalForAllEvent: = "ERC721ApprovalForAllEvent"
Defined in types.ts:504

ERC721TransferEvent

ERC721TransferEvent: = "ERC721TransferEvent"
Defined in types.ts:502

ExchangeCancelEvent

ExchangeCancelEvent: = "ExchangeCancelEvent"
Defined in types.ts:509

ExchangeCancelUpToEvent

ExchangeCancelUpToEvent: = "ExchangeCancelUpToEvent"
Defined in types.ts:510

ExchangeFillEvent

ExchangeFillEvent: = "ExchangeFillEvent"
Defined in types.ts:508

WethDepositEvent

WethDepositEvent: = "WethDepositEvent"
Defined in types.ts:511

WethWithdrawalEvent

WethWithdrawalEvent: = "WethWithdrawalEvent"
Defined in types.ts:512

Enumeration: OrderEventEndState

Enumeration members

Added

Added: = "ADDED"
Defined in types.ts:575

Cancelled

Cancelled: = "CANCELLED"
Defined in types.ts:578

Expired

Expired: = "EXPIRED"
Defined in types.ts:579

FillabilityIncreased

FillabilityIncreased: = "FILLABILITY_INCREASED"
Defined in types.ts:582

Filled

Filled: = "FILLED"
Defined in types.ts:576

FullyFilled

FullyFilled: = "FULLY_FILLED"
Defined in types.ts:577

Invalid

Invalid: = "INVALID"
Defined in types.ts:574

StoppedWatching

StoppedWatching: = "STOPPED_WATCHING"
Defined in types.ts:583

Unexpired

Unexpired: = "UNEXPIRED"
Defined in types.ts:580

Unfunded

Unfunded: = "UNFUNDED"
Defined in types.ts:581

Enumeration: RejectedOrderKind

A set of categories for rejected orders.

Enumeration members

MeshError

MeshError: = "MESH_ERROR"
Defined in types.ts:714

MeshValidation

MeshValidation: = "MESH_VALIDATION"
Defined in types.ts:715

ZeroExValidation

ZeroExValidation: = "ZEROEX_VALIDATION"
Defined in types.ts:713

Enumeration: Verbosity

Enumeration members

Debug

Debug: = 5
Defined in types.ts:238

Error

Error: = 2
Defined in types.ts:235

Fatal

Fatal: = 1
Defined in types.ts:234

Info

Info: = 4
Defined in types.ts:237

Panic

Panic: = 0
Defined in types.ts:233

Trace

Trace: = 6
Defined in types.ts:239

Warn

Warn: = 3
Defined in types.ts:236

Interface: AcceptedOrderInfo

Info for any orders that were accepted.

Hierarchy

  • AcceptedOrderInfo

Properties

fillableTakerAssetAmount

fillableTakerAssetAmount: BigNumber
Defined in types.ts:694

isNew

isNew: boolean
Defined in types.ts:695

orderHash

orderHash: string
Defined in types.ts:692

signedOrder

signedOrder: SignedOrder
Defined in types.ts:693

Interface: Config

A set of configuration options for Mesh.

Hierarchy

  • Config

Properties

Optional blockPollingIntervalSeconds

blockPollingIntervalSeconds? : undefined | number
Defined in types.ts:144

Optional bootstrapList

bootstrapList? : string[]
Defined in types.ts:137

Optional customContractAddresses

customContractAddresses? : ContractAddresses
Defined in types.ts:188

Optional customOrderFilter

customOrderFilter? : JsonSchema
Defined in types.ts:213

Optional enableEthereumRPCRateLimiting

enableEthereumRPCRateLimiting? : undefined | false | true
Defined in types.ts:161

ethereumChainID

ethereumChainID: number
Defined in types.ts:129

Optional ethereumRPCMaxContentLength

ethereumRPCMaxContentLength? : undefined | number
Defined in types.ts:153

Optional ethereumRPCMaxRequestsPer24HrUTC

ethereumRPCMaxRequestsPer24HrUTC? : undefined | number
Defined in types.ts:166

Optional ethereumRPCMaxRequestsPerSecond

ethereumRPCMaxRequestsPerSecond? : undefined | number
Defined in types.ts:172

Optional ethereumRPCURL

ethereumRPCURL? : undefined | string
Defined in types.ts:126

Optional maxBytesPerSecond

maxBytesPerSecond? : undefined | number
Defined in types.ts:219

Optional maxOrdersInStorage

maxOrdersInStorage? : undefined | number
Defined in types.ts:193

Optional useBootstrapList

useBootstrapList? : undefined | false | true
Defined in types.ts:132

Optional verbosity

verbosity? : Verbosity
Defined in types.ts:123

Optional web3Provider

web3Provider? : SupportedProvider
Defined in types.ts:216

Interface: ContractAddresses

Hierarchy

  • ContractAddresses

Properties

devUtils

devUtils: string
Defined in types.ts:224

erc1155Proxy

erc1155Proxy: string
Defined in types.ts:227

erc20Proxy

erc20Proxy: string
Defined in types.ts:225

erc721Proxy

erc721Proxy: string
Defined in types.ts:226

exchange

exchange: string
Defined in types.ts:223

Optional weth9

weth9? : undefined | string
Defined in types.ts:228

Optional zrxToken

zrxToken? : undefined | string
Defined in types.ts:229

Interface: ContractEvent

Hierarchy

  • ContractEvent

Properties

address

address: string
Defined in types.ts:553

blockHash

blockHash: string
Defined in types.ts:548

isRemoved

isRemoved: boolean
Defined in types.ts:552

kind

kind: ContractEventKind
Defined in types.ts:554

logIndex

logIndex: number
Defined in types.ts:551

parameters

parameters: ContractEventParameters
Defined in types.ts:555

txHash

txHash: string
Defined in types.ts:549

txIndex

txIndex: number
Defined in types.ts:550

Interface: ERC1155ApprovalForAllEvent

Hierarchy

  • ERC1155ApprovalForAllEvent

Properties

approved

approved: boolean
Defined in types.ts:417

operator

operator: string
Defined in types.ts:416

owner

owner: string
Defined in types.ts:415

Interface: ERC1155TransferBatchEvent

Hierarchy

  • ERC1155TransferBatchEvent

Properties

from

from: string
Defined in types.ts:399

ids

ids: BigNumber[]
Defined in types.ts:401

operator

operator: string
Defined in types.ts:398

to

to: string
Defined in types.ts:400

values

values: BigNumber[]
Defined in types.ts:402

Interface: ERC1155TransferSingleEvent

Hierarchy

  • ERC1155TransferSingleEvent

Properties

from

from: string
Defined in types.ts:382

id

id: BigNumber
Defined in types.ts:384

operator

operator: string
Defined in types.ts:381

to

to: string
Defined in types.ts:383

value

value: BigNumber
Defined in types.ts:385

Interface: ERC20ApprovalEvent

Hierarchy

  • ERC20ApprovalEvent

Properties

owner

owner: string
Defined in types.ts:336

spender

spender: string
Defined in types.ts:337

value

value: BigNumber
Defined in types.ts:338

Interface: ERC20TransferEvent

Hierarchy

  • ERC20TransferEvent

Properties

from

from: string
Defined in types.ts:323

to

to: string
Defined in types.ts:324

value

value: BigNumber
Defined in types.ts:325

Interface: ERC721ApprovalEvent

Hierarchy

  • ERC721ApprovalEvent

Properties

approved

approved: string
Defined in types.ts:363

owner

owner: string
Defined in types.ts:362

tokenId

tokenId: BigNumber
Defined in types.ts:364

Interface: ERC721ApprovalForAllEvent

Hierarchy

  • ERC721ApprovalForAllEvent

Properties

approved

approved: boolean
Defined in types.ts:377

operator

operator: string
Defined in types.ts:376

owner

owner: string
Defined in types.ts:375

Interface: ERC721TransferEvent

Hierarchy

  • ERC721TransferEvent

Properties

from

from: string
Defined in types.ts:349

to

to: string
Defined in types.ts:350

tokenId

tokenId: BigNumber
Defined in types.ts:351

Interface: ExchangeCancelEvent

Hierarchy

  • ExchangeCancelEvent

Properties

feeRecipientAddress

feeRecipientAddress: string
Defined in types.ts:458

makerAddress

makerAddress: string
Defined in types.ts:456

makerAssetData

makerAssetData: string
Defined in types.ts:460

orderHash

orderHash: string
Defined in types.ts:459

senderAddress

senderAddress: string
Defined in types.ts:457

takerAssetData

takerAssetData: string
Defined in types.ts:461

Interface: ExchangeCancelUpToEvent

Hierarchy

  • ExchangeCancelUpToEvent

Properties

makerAddress

makerAddress: string
Defined in types.ts:465

orderEpoch

orderEpoch: BigNumber
Defined in types.ts:467

orderSenderAddress

orderSenderAddress: string
Defined in types.ts:466

Interface: ExchangeFillEvent

Hierarchy

  • ExchangeFillEvent

Properties

feeRecipientAddress

feeRecipientAddress: string
Defined in types.ts:424

makerAddress

makerAddress: string
Defined in types.ts:421

makerAssetData

makerAssetData: string
Defined in types.ts:431

makerAssetFilledAmount

makerAssetFilledAmount: BigNumber
Defined in types.ts:425

makerFeeAssetData

makerFeeAssetData: string
Defined in types.ts:433

makerFeePaid

makerFeePaid: BigNumber
Defined in types.ts:427

orderHash

orderHash: string
Defined in types.ts:430

protocolFeePaid

protocolFeePaid: BigNumber
Defined in types.ts:429

senderAddress

senderAddress: string
Defined in types.ts:423

takerAddress

takerAddress: string
Defined in types.ts:422

takerAssetData

takerAssetData: string
Defined in types.ts:432

takerAssetFilledAmount

takerAssetFilledAmount: BigNumber
Defined in types.ts:426

takerFeeAssetData

takerFeeAssetData: string
Defined in types.ts:434

takerFeePaid

takerFeePaid: BigNumber
Defined in types.ts:428

Interface: GetOrdersResponse

Hierarchy

  • GetOrdersResponse

Properties

ordersInfos

ordersInfos: OrderInfo[]
Defined in types.ts:45

timestamp

timestamp: number
Defined in types.ts:44

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:67

Optional $schema

$schema? : undefined | string
Defined in types.ts:66

Optional additionalItems

additionalItems? : boolean | JsonSchema
Defined in types.ts:78

Optional additionalProperties

additionalProperties? : boolean | JsonSchema
Defined in types.ts:86

Optional allOf

allOf? : JsonSchema[]
Defined in types.ts:108

Optional anyOf

anyOf? : JsonSchema[]
Defined in types.ts:109

Optional const

const? : any
Defined in types.ts:105

Optional definitions

definitions? : undefined | object
Defined in types.ts:87

Optional dependencies

dependencies? : undefined | object
Defined in types.ts:96