Skip to content
This repository was archived by the owner on Aug 30, 2022. It is now read-only.

Commit 9dd43c2

Browse files
Add getPastEvents support (#485)
* Add getPastEvents support * Add events * Event filtering * Update docs and test cases Co-authored-by: Joaquim Verges <[email protected]>
1 parent 3ee9362 commit 9dd43c2

35 files changed

+361
-229
lines changed

docs/sdk.contractevent.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44

55
## ContractEvent type
66

7+
Standardized return type for contract events that returns event arguments
8+
79
<b>Signature:</b>
810

911
```typescript
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@thirdweb-dev/sdk](./sdk.md) &gt; [ContractEvents](./sdk.contractevents.md) &gt; [getAllEvents](./sdk.contractevents.getallevents.md)
4+
5+
## ContractEvents.getAllEvents() method
6+
7+
Get All Events
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
getAllEvents(filters?: QueryAllEvents): Promise<ContractEvent[]>;
13+
```
14+
15+
## Parameters
16+
17+
| Parameter | Type | Description |
18+
| --- | --- | --- |
19+
| filters | [QueryAllEvents](./sdk.queryallevents.md) | <i>(Optional)</i> Specify the from and to block numbers to get events for, defaults to all blocks |
20+
21+
<b>Returns:</b>
22+
23+
Promise&lt;[ContractEvent](./sdk.contractevent.md)<!-- -->\[\]&gt;
24+
25+
The event objects of the events emitted with event names and data for each event
26+
27+
## Remarks
28+
29+
Get a list of all the events emitted from this contract during the specified time period
30+
31+
## Example
32+
33+
34+
```javascript
35+
// Optionally pass in filters to limit the blocks from which events are retrieved
36+
const filters = {
37+
fromBlock: 0,
38+
toBlock: 1000000,
39+
}
40+
const events = await contract.events.getAllEvents(filters);
41+
console.log(events[0].eventName);
42+
console.log(events[0].data);
43+
```
44+

docs/sdk.contractevents.getevents.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@thirdweb-dev/sdk](./sdk.md) &gt; [ContractEvents](./sdk.contractevents.md) &gt; [getEvents](./sdk.contractevents.getevents.md)
4+
5+
## ContractEvents.getEvents() method
6+
7+
Get Events
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
getEvents(eventName: string, filters?: QueryAllEvents): Promise<ContractEvent[]>;
13+
```
14+
15+
## Parameters
16+
17+
| Parameter | Type | Description |
18+
| --- | --- | --- |
19+
| eventName | string | The name of the event to get logs for |
20+
| filters | [QueryAllEvents](./sdk.queryallevents.md) | <i>(Optional)</i> Specify the from and to block numbers to get events for, defaults to all blocks |
21+
22+
<b>Returns:</b>
23+
24+
Promise&lt;[ContractEvent](./sdk.contractevent.md)<!-- -->\[\]&gt;
25+
26+
The requested event objects with event data
27+
28+
## Remarks
29+
30+
Get a list of the events of a specific type emitted from this contract during the specified time period
31+
32+
## Example
33+
34+
35+
```javascript
36+
// The name of the event to get logs for
37+
const eventName = "Transfer";
38+
// Optionally pass in filters to limit the blocks from which events are retrieved
39+
const filters = {
40+
fromBlock: 0,
41+
toBlock: 1000000,
42+
}
43+
const events = await contract.events.getEvents(eventName, filters);
44+
console.log(events[0].eventName);
45+
console.log(events[0].data);
46+
```
47+

docs/sdk.contractevents.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@ export declare class ContractEvents<TContract extends BaseContract>
2424
| --- | --- | --- |
2525
| [addEventListener(eventName, listener)](./sdk.contractevents.addeventlistener.md) | | Subscribe to contract events |
2626
| [addTransactionListener(listener)](./sdk.contractevents.addtransactionlistener.md) | | Subscribe to transactions in this contract. |
27+
| [getAllEvents(filters)](./sdk.contractevents.getallevents.md) | | Get All Events |
28+
| [getEvents(eventName, filters)](./sdk.contractevents.getevents.md) | | Get Events |
2729
| [listenToAllEvents(listener)](./sdk.contractevents.listentoallevents.md) | | Listen to all events emitted from this contract |
2830
| [removeAllListeners()](./sdk.contractevents.removealllisteners.md) | | Remove all listeners on this contract |
2931
| [removeEventListener(eventName, listener)](./sdk.contractevents.removeeventlistener.md) | | Remove an event listener from this contract |

docs/sdk.droperc1155history._constructor_.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,12 @@ Constructs a new instance of the `DropErc1155History` class
99
<b>Signature:</b>
1010

1111
```typescript
12-
constructor(analytics: ContractAnalytics<DropERC1155>);
12+
constructor(events: ContractEvents<DropERC1155>);
1313
```
1414

1515
## Parameters
1616

1717
| Parameter | Type | Description |
1818
| --- | --- | --- |
19-
| analytics | ContractAnalytics&lt;DropERC1155&gt; | |
19+
| events | [ContractEvents](./sdk.contractevents.md)<!-- -->&lt;DropERC1155&gt; | |
2020

docs/sdk.droperc1155history.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ export declare class DropErc1155History
1616

1717
| Constructor | Modifiers | Description |
1818
| --- | --- | --- |
19-
| [(constructor)(analytics)](./sdk.droperc1155history._constructor_.md) | | Constructs a new instance of the <code>DropErc1155History</code> class |
19+
| [(constructor)(events)](./sdk.droperc1155history._constructor_.md) | | Constructs a new instance of the <code>DropErc1155History</code> class |
2020

2121
## Methods
2222

docs/sdk.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@
9999
| [Proposal](./sdk.proposal.md) | |
100100
| [ProposalExecutable](./sdk.proposalexecutable.md) | |
101101
| [ProposalVote](./sdk.proposalvote.md) | |
102+
| [QueryAllEvents](./sdk.queryallevents.md) | Filters for querying past events |
102103
| [QueryAllParams](./sdk.queryallparams.md) | Pagination Parameters |
103104
| [SplitContractDeployMetadata](./sdk.splitcontractdeploymetadata.md) | Options for deploying Split contract |
104105
| [SplitRecipient](./sdk.splitrecipient.md) | The SplitRecipient type represents a recipient of some royalty, indicated by their split percentage. |
@@ -133,7 +134,7 @@
133134
| [ClaimConditionInput](./sdk.claimconditioninput.md) | Input model to create a claim condition with optional snapshot of wallets |
134135
| [ClaimConditionsForToken](./sdk.claimconditionsfortoken.md) | |
135136
| [ClaimVerification](./sdk.claimverification.md) | |
136-
| [ContractEvent](./sdk.contractevent.md) | |
137+
| [ContractEvent](./sdk.contractevent.md) | Standardized return type for contract events that returns event arguments |
137138
| [ContractForContractType](./sdk.contractforcontracttype.md) | |
138139
| [ContractType](./sdk.contracttype.md) | |
139140
| [Currency](./sdk.currency.md) | |

docs/sdk.queryallevents.fromblock.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@thirdweb-dev/sdk](./sdk.md) &gt; [QueryAllEvents](./sdk.queryallevents.md) &gt; [fromBlock](./sdk.queryallevents.fromblock.md)
4+
5+
## QueryAllEvents.fromBlock property
6+
7+
<b>Signature:</b>
8+
9+
```typescript
10+
fromBlock?: number;
11+
```

docs/sdk.queryallevents.md

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@thirdweb-dev/sdk](./sdk.md) &gt; [QueryAllEvents](./sdk.queryallevents.md)
4+
5+
## QueryAllEvents interface
6+
7+
Filters for querying past events
8+
9+
<b>Signature:</b>
10+
11+
```typescript
12+
export interface QueryAllEvents
13+
```
14+
15+
## Properties
16+
17+
| Property | Type | Description |
18+
| --- | --- | --- |
19+
| [fromBlock?](./sdk.queryallevents.fromblock.md) | number | <i>(Optional)</i> |
20+
| [toBlock?](./sdk.queryallevents.toblock.md) | number | <i>(Optional)</i> |
21+

docs/sdk.queryallevents.toblock.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
2+
3+
[Home](./index.md) &gt; [@thirdweb-dev/sdk](./sdk.md) &gt; [QueryAllEvents](./sdk.queryallevents.md) &gt; [toBlock](./sdk.queryallevents.toblock.md)
4+
5+
## QueryAllEvents.toBlock property
6+
7+
<b>Signature:</b>
8+
9+
```typescript
10+
toBlock?: number;
11+
```

0 commit comments

Comments
 (0)