viem 0.0.0-main.20230730T091111 → 0.0.0-main.20230730T155828
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/actions/public/createEventFilter.js +14 -8
- package/dist/cjs/actions/public/createEventFilter.js.map +1 -1
- package/dist/cjs/actions/public/getLogs.js +16 -10
- package/dist/cjs/actions/public/getLogs.js.map +1 -1
- package/dist/cjs/actions/public/watchEvent.js +4 -2
- package/dist/cjs/actions/public/watchEvent.js.map +1 -1
- package/dist/cjs/clients/decorators/public.js.map +1 -1
- package/dist/cjs/errors/version.js +1 -1
- package/dist/esm/actions/public/createEventFilter.js +14 -8
- package/dist/esm/actions/public/createEventFilter.js.map +1 -1
- package/dist/esm/actions/public/getLogs.js +16 -10
- package/dist/esm/actions/public/getLogs.js.map +1 -1
- package/dist/esm/actions/public/watchEvent.js +4 -2
- package/dist/esm/actions/public/watchEvent.js.map +1 -1
- package/dist/esm/clients/decorators/public.js.map +1 -1
- package/dist/esm/errors/version.js +1 -1
- package/dist/types/actions/public/createEventFilter.d.ts +18 -5
- package/dist/types/actions/public/createEventFilter.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterChanges.d.ts +3 -3
- package/dist/types/actions/public/getFilterChanges.d.ts.map +1 -1
- package/dist/types/actions/public/getFilterLogs.d.ts +3 -3
- package/dist/types/actions/public/getFilterLogs.d.ts.map +1 -1
- package/dist/types/actions/public/getLogs.d.ts +15 -4
- package/dist/types/actions/public/getLogs.d.ts.map +1 -1
- package/dist/types/actions/public/watchEvent.d.ts +19 -8
- package/dist/types/actions/public/watchEvent.d.ts.map +1 -1
- package/dist/types/clients/decorators/public.d.ts +5 -5
- package/dist/types/clients/decorators/public.d.ts.map +1 -1
- package/dist/types/errors/version.d.ts +1 -1
- package/dist/types/types/contract.d.ts +1 -1
- package/dist/types/types/contract.d.ts.map +1 -1
- package/dist/types/types/filter.d.ts +1 -1
- package/dist/types/types/filter.d.ts.map +1 -1
- package/dist/types/types/log.d.ts +3 -3
- package/dist/types/types/log.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/actions/public/createEventFilter.ts +52 -20
- package/src/actions/public/getFilterChanges.ts +5 -5
- package/src/actions/public/getFilterLogs.ts +5 -5
- package/src/actions/public/getLogs.ts +56 -15
- package/src/actions/public/watchEvent.ts +50 -17
- package/src/clients/decorators/public.ts +31 -12
- package/src/errors/version.ts +1 -1
- package/src/types/contract.ts +7 -3
- package/src/types/filter.ts +1 -1
- package/src/types/log.ts +7 -3
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { AbiEvent, Address, Narrow } from 'abitype'
|
1
|
+
import type { Abi, AbiEvent, Address, Narrow } from 'abitype'
|
2
2
|
|
3
3
|
import type { Client } from '../../clients/createClient.js'
|
4
4
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
@@ -25,6 +25,10 @@ import { formatLog } from '../../utils/formatters/log.js'
|
|
25
25
|
|
26
26
|
export type GetLogsParameters<
|
27
27
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
28
|
+
TAbiEvents extends
|
29
|
+
| readonly AbiEvent[]
|
30
|
+
| readonly unknown[]
|
31
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
28
32
|
TStrict extends boolean | undefined = undefined,
|
29
33
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
30
34
|
TToBlock extends BlockNumber | BlockTag | undefined = undefined,
|
@@ -35,7 +39,8 @@ export type GetLogsParameters<
|
|
35
39
|
} & (
|
36
40
|
| {
|
37
41
|
event: Narrow<TAbiEvent>
|
38
|
-
|
42
|
+
events?: never
|
43
|
+
args?: MaybeExtractEventArgsFromAbi<TAbiEvents, _EventName>
|
39
44
|
/**
|
40
45
|
* Whether or not the logs must match the indexed/non-indexed arguments on `event`.
|
41
46
|
* @default false
|
@@ -44,6 +49,17 @@ export type GetLogsParameters<
|
|
44
49
|
}
|
45
50
|
| {
|
46
51
|
event?: never
|
52
|
+
events: Narrow<TAbiEvents>
|
53
|
+
args?: never
|
54
|
+
/**
|
55
|
+
* Whether or not the logs must match the indexed/non-indexed arguments on `event`.
|
56
|
+
* @default false
|
57
|
+
*/
|
58
|
+
strict?: TStrict
|
59
|
+
}
|
60
|
+
| {
|
61
|
+
event?: never
|
62
|
+
events?: never
|
47
63
|
args?: never
|
48
64
|
strict?: never
|
49
65
|
}
|
@@ -66,6 +82,10 @@ export type GetLogsParameters<
|
|
66
82
|
|
67
83
|
export type GetLogsReturnType<
|
68
84
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
85
|
+
TAbiEvents extends
|
86
|
+
| readonly AbiEvent[]
|
87
|
+
| readonly unknown[]
|
88
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
69
89
|
TStrict extends boolean | undefined = undefined,
|
70
90
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
71
91
|
TToBlock extends BlockNumber | BlockTag | undefined = undefined,
|
@@ -73,7 +93,7 @@ export type GetLogsReturnType<
|
|
73
93
|
_Pending extends boolean =
|
74
94
|
| (TFromBlock extends 'pending' ? true : false)
|
75
95
|
| (TToBlock extends 'pending' ? true : false),
|
76
|
-
> = Log<bigint, number, _Pending, TAbiEvent, TStrict,
|
96
|
+
> = Log<bigint, number, _Pending, TAbiEvent, TStrict, TAbiEvents, _EventName>[]
|
77
97
|
|
78
98
|
/**
|
79
99
|
* Returns a list of event logs matching the provided parameters.
|
@@ -99,7 +119,11 @@ export type GetLogsReturnType<
|
|
99
119
|
*/
|
100
120
|
export async function getLogs<
|
101
121
|
TChain extends Chain | undefined,
|
102
|
-
TAbiEvent extends AbiEvent | undefined,
|
122
|
+
TAbiEvent extends AbiEvent | undefined = undefined,
|
123
|
+
TAbiEvents extends
|
124
|
+
| readonly AbiEvent[]
|
125
|
+
| readonly unknown[]
|
126
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
103
127
|
TStrict extends boolean | undefined = undefined,
|
104
128
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
105
129
|
TToBlock extends BlockNumber | BlockTag | undefined = undefined,
|
@@ -111,19 +135,35 @@ export async function getLogs<
|
|
111
135
|
fromBlock,
|
112
136
|
toBlock,
|
113
137
|
event,
|
138
|
+
events: events_,
|
114
139
|
args,
|
115
140
|
strict: strict_,
|
116
|
-
}: GetLogsParameters<
|
117
|
-
|
141
|
+
}: GetLogsParameters<
|
142
|
+
TAbiEvent,
|
143
|
+
TAbiEvents,
|
144
|
+
TStrict,
|
145
|
+
TFromBlock,
|
146
|
+
TToBlock
|
147
|
+
> = {},
|
148
|
+
): Promise<
|
149
|
+
GetLogsReturnType<TAbiEvent, TAbiEvents, TStrict, TFromBlock, TToBlock>
|
150
|
+
> {
|
118
151
|
const strict = strict_ ?? false
|
152
|
+
const events = events_ ?? (event ? [event] : undefined)
|
119
153
|
|
120
154
|
let topics: LogTopic[] = []
|
121
|
-
if (
|
122
|
-
topics =
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
155
|
+
if (events) {
|
156
|
+
topics = [
|
157
|
+
(events as AbiEvent[]).flatMap((event) =>
|
158
|
+
encodeEventTopics({
|
159
|
+
abi: [event],
|
160
|
+
eventName: (event as AbiEvent).name,
|
161
|
+
args,
|
162
|
+
} as EncodeEventTopicsParameters),
|
163
|
+
),
|
164
|
+
]
|
165
|
+
if (event) topics = topics[0] as LogTopic[]
|
166
|
+
}
|
127
167
|
|
128
168
|
let logs: RpcLog[]
|
129
169
|
if (blockHash) {
|
@@ -149,15 +189,15 @@ export async function getLogs<
|
|
149
189
|
return logs
|
150
190
|
.map((log) => {
|
151
191
|
try {
|
152
|
-
const { eventName, args } =
|
192
|
+
const { eventName, args } = events
|
153
193
|
? decodeEventLog({
|
154
|
-
abi:
|
194
|
+
abi: events as Abi,
|
155
195
|
data: log.data,
|
156
196
|
topics: log.topics as any,
|
157
197
|
strict,
|
158
198
|
})
|
159
199
|
: { eventName: undefined, args: undefined }
|
160
|
-
return formatLog(log, { args, eventName })
|
200
|
+
return formatLog(log, { args, eventName: eventName as string })
|
161
201
|
} catch (err) {
|
162
202
|
let eventName
|
163
203
|
let isUnnamed
|
@@ -177,6 +217,7 @@ export async function getLogs<
|
|
177
217
|
})
|
178
218
|
.filter(Boolean) as unknown as GetLogsReturnType<
|
179
219
|
TAbiEvent,
|
220
|
+
TAbiEvents,
|
180
221
|
TStrict,
|
181
222
|
TFromBlock,
|
182
223
|
TToBlock
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import type { AbiEvent, Address } from 'abitype'
|
1
|
+
import type { AbiEvent, Address, Narrow } from 'abitype'
|
2
2
|
|
3
3
|
import type { Client } from '../../clients/createClient.js'
|
4
4
|
import type { Transport } from '../../clients/transports/createTransport.js'
|
@@ -19,24 +19,38 @@ import {
|
|
19
19
|
} from './createEventFilter.js'
|
20
20
|
import { getBlockNumber } from './getBlockNumber.js'
|
21
21
|
import { getFilterChanges } from './getFilterChanges.js'
|
22
|
-
import { getLogs } from './getLogs.js'
|
22
|
+
import { type GetLogsParameters, getLogs } from './getLogs.js'
|
23
23
|
import { uninstallFilter } from './uninstallFilter.js'
|
24
24
|
|
25
25
|
export type WatchEventOnLogsParameter<
|
26
26
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
27
|
+
TAbiEvents extends
|
28
|
+
| readonly AbiEvent[]
|
29
|
+
| readonly unknown[]
|
30
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
27
31
|
TStrict extends boolean | undefined = undefined,
|
28
32
|
TEventName extends string | undefined = MaybeAbiEventName<TAbiEvent>,
|
29
|
-
> = Log<bigint, number, false, TAbiEvent, TStrict,
|
33
|
+
> = Log<bigint, number, false, TAbiEvent, TStrict, TAbiEvents, TEventName>[]
|
30
34
|
export type WatchEventOnLogsFn<
|
31
35
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
36
|
+
TAbiEvents extends
|
37
|
+
| readonly AbiEvent[]
|
38
|
+
| readonly unknown[]
|
39
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
32
40
|
TStrict extends boolean | undefined = undefined,
|
33
|
-
|
34
|
-
> = (
|
41
|
+
_EventName extends string | undefined = MaybeAbiEventName<TAbiEvent>,
|
42
|
+
> = (
|
43
|
+
logs: WatchEventOnLogsParameter<TAbiEvent, TAbiEvents, TStrict, _EventName>,
|
44
|
+
) => void
|
35
45
|
|
36
46
|
export type WatchEventParameters<
|
37
47
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
48
|
+
TAbiEvents extends
|
49
|
+
| readonly AbiEvent[]
|
50
|
+
| readonly unknown[]
|
51
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
38
52
|
TStrict extends boolean | undefined = undefined,
|
39
|
-
|
53
|
+
_EventName extends string | undefined = MaybeAbiEventName<TAbiEvent>,
|
40
54
|
> = {
|
41
55
|
/** The address of the contract. */
|
42
56
|
address?: Address | Address[]
|
@@ -48,13 +62,24 @@ export type WatchEventParameters<
|
|
48
62
|
/** The callback to call when an error occurred when trying to get for a new block. */
|
49
63
|
onError?: (error: Error) => void
|
50
64
|
/** The callback to call when new event logs are received. */
|
51
|
-
onLogs: WatchEventOnLogsFn<TAbiEvent, TStrict,
|
65
|
+
onLogs: WatchEventOnLogsFn<TAbiEvent, TAbiEvents, TStrict, _EventName>
|
52
66
|
/** Polling frequency (in ms). Defaults to Client's pollingInterval config. */
|
53
67
|
pollingInterval?: number
|
54
68
|
} & (
|
55
69
|
| {
|
56
|
-
event: TAbiEvent
|
57
|
-
|
70
|
+
event: Narrow<TAbiEvent>
|
71
|
+
events?: never
|
72
|
+
args?: MaybeExtractEventArgsFromAbi<TAbiEvents, _EventName>
|
73
|
+
/**
|
74
|
+
* Whether or not the logs must match the indexed/non-indexed arguments on `event`.
|
75
|
+
* @default false
|
76
|
+
*/
|
77
|
+
strict?: TStrict
|
78
|
+
}
|
79
|
+
| {
|
80
|
+
event?: never
|
81
|
+
events?: Narrow<TAbiEvents>
|
82
|
+
args?: never
|
58
83
|
/**
|
59
84
|
* Whether or not the logs must match the indexed/non-indexed arguments on `event`.
|
60
85
|
* @default false
|
@@ -63,6 +88,7 @@ export type WatchEventParameters<
|
|
63
88
|
}
|
64
89
|
| {
|
65
90
|
event?: never
|
91
|
+
events?: never
|
66
92
|
args?: never
|
67
93
|
strict?: never
|
68
94
|
}
|
@@ -104,9 +130,13 @@ export type WatchEventReturnType = () => void
|
|
104
130
|
*/
|
105
131
|
export function watchEvent<
|
106
132
|
TChain extends Chain | undefined,
|
107
|
-
TAbiEvent extends AbiEvent | undefined,
|
108
|
-
|
133
|
+
TAbiEvent extends AbiEvent | undefined = undefined,
|
134
|
+
TAbiEvents extends
|
135
|
+
| readonly AbiEvent[]
|
136
|
+
| readonly unknown[]
|
137
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
109
138
|
TStrict extends boolean | undefined = undefined,
|
139
|
+
_EventName extends string | undefined = undefined,
|
110
140
|
>(
|
111
141
|
client: Client<Transport, TChain>,
|
112
142
|
{
|
@@ -114,11 +144,12 @@ export function watchEvent<
|
|
114
144
|
args,
|
115
145
|
batch = true,
|
116
146
|
event,
|
147
|
+
events,
|
117
148
|
onError,
|
118
149
|
onLogs,
|
119
150
|
pollingInterval = client.pollingInterval,
|
120
151
|
strict: strict_,
|
121
|
-
}: WatchEventParameters<TAbiEvent, TStrict>,
|
152
|
+
}: WatchEventParameters<TAbiEvent, TAbiEvents, TStrict>,
|
122
153
|
): WatchEventReturnType {
|
123
154
|
const observerId = stringify([
|
124
155
|
'watchEvent',
|
@@ -133,7 +164,7 @@ export function watchEvent<
|
|
133
164
|
|
134
165
|
return observe(observerId, { onLogs, onError }, (emit) => {
|
135
166
|
let previousBlockNumber: bigint
|
136
|
-
let filter: Filter<'event',
|
167
|
+
let filter: Filter<'event', TAbiEvents, _EventName, any>
|
137
168
|
let initialized = false
|
138
169
|
|
139
170
|
const unwatch = poll(
|
@@ -144,11 +175,12 @@ export function watchEvent<
|
|
144
175
|
address,
|
145
176
|
args,
|
146
177
|
event: event!,
|
178
|
+
events,
|
147
179
|
strict,
|
148
180
|
} as unknown as CreateEventFilterParameters)) as unknown as Filter<
|
149
181
|
'event',
|
150
|
-
|
151
|
-
|
182
|
+
TAbiEvents,
|
183
|
+
_EventName
|
152
184
|
>
|
153
185
|
} catch {}
|
154
186
|
initialized = true
|
@@ -173,10 +205,11 @@ export function watchEvent<
|
|
173
205
|
logs = await getLogs(client, {
|
174
206
|
address,
|
175
207
|
args,
|
208
|
+
event: event!,
|
209
|
+
events,
|
176
210
|
fromBlock: previousBlockNumber + 1n,
|
177
211
|
toBlock: blockNumber,
|
178
|
-
|
179
|
-
})
|
212
|
+
} as unknown as GetLogsParameters)
|
180
213
|
} else {
|
181
214
|
logs = []
|
182
215
|
}
|
@@ -325,32 +325,35 @@ export type PublicActions<
|
|
325
325
|
* })
|
326
326
|
*/
|
327
327
|
createEventFilter: <
|
328
|
-
TAbiEvent extends AbiEvent | undefined,
|
328
|
+
TAbiEvent extends AbiEvent | undefined = undefined,
|
329
|
+
TAbiEvents extends
|
330
|
+
| readonly AbiEvent[]
|
331
|
+
| readonly unknown[]
|
332
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
329
333
|
TStrict extends boolean | undefined = undefined,
|
330
334
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
331
335
|
TToBlock extends BlockNumber | BlockTag | undefined = undefined,
|
332
|
-
_Abi extends Abi | readonly unknown[] = [TAbiEvent],
|
333
336
|
_EventName extends string | undefined = MaybeAbiEventName<TAbiEvent>,
|
334
337
|
_Args extends
|
335
|
-
| MaybeExtractEventArgsFromAbi<
|
338
|
+
| MaybeExtractEventArgsFromAbi<TAbiEvents, _EventName>
|
336
339
|
| undefined = undefined,
|
337
340
|
>(
|
338
341
|
args?: CreateEventFilterParameters<
|
339
342
|
TAbiEvent,
|
343
|
+
TAbiEvents,
|
340
344
|
TStrict,
|
341
345
|
TFromBlock,
|
342
346
|
TToBlock,
|
343
|
-
_Abi,
|
344
347
|
_EventName,
|
345
348
|
_Args
|
346
349
|
>,
|
347
350
|
) => Promise<
|
348
351
|
CreateEventFilterReturnType<
|
349
352
|
TAbiEvent,
|
353
|
+
TAbiEvents,
|
350
354
|
TStrict,
|
351
355
|
TFromBlock,
|
352
356
|
TToBlock,
|
353
|
-
_Abi,
|
354
357
|
_EventName,
|
355
358
|
_Args
|
356
359
|
>
|
@@ -841,7 +844,7 @@ export type PublicActions<
|
|
841
844
|
*/
|
842
845
|
getFilterChanges: <
|
843
846
|
TFilterType extends FilterType,
|
844
|
-
TAbi extends Abi | readonly unknown[],
|
847
|
+
TAbi extends Abi | readonly unknown[] | undefined,
|
845
848
|
TEventName extends string | undefined,
|
846
849
|
TStrict extends boolean | undefined = undefined,
|
847
850
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
@@ -892,7 +895,7 @@ export type PublicActions<
|
|
892
895
|
* const logs = await client.getFilterLogs({ filter })
|
893
896
|
*/
|
894
897
|
getFilterLogs: <
|
895
|
-
TAbi extends Abi | readonly unknown[],
|
898
|
+
TAbi extends Abi | readonly unknown[] | undefined,
|
896
899
|
TEventName extends string | undefined,
|
897
900
|
TStrict extends boolean | undefined = undefined,
|
898
901
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
@@ -948,13 +951,25 @@ export type PublicActions<
|
|
948
951
|
* const logs = await client.getLogs()
|
949
952
|
*/
|
950
953
|
getLogs: <
|
951
|
-
TAbiEvent extends AbiEvent | undefined,
|
954
|
+
TAbiEvent extends AbiEvent | undefined = undefined,
|
955
|
+
TAbiEvents extends
|
956
|
+
| readonly AbiEvent[]
|
957
|
+
| readonly unknown[]
|
958
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
952
959
|
TStrict extends boolean | undefined = undefined,
|
953
960
|
TFromBlock extends BlockNumber | BlockTag | undefined = undefined,
|
954
961
|
TToBlock extends BlockNumber | BlockTag | undefined = undefined,
|
955
962
|
>(
|
956
|
-
args?: GetLogsParameters<
|
957
|
-
|
963
|
+
args?: GetLogsParameters<
|
964
|
+
TAbiEvent,
|
965
|
+
TAbiEvents,
|
966
|
+
TStrict,
|
967
|
+
TFromBlock,
|
968
|
+
TToBlock
|
969
|
+
>,
|
970
|
+
) => Promise<
|
971
|
+
GetLogsReturnType<TAbiEvent, TAbiEvents, TStrict, TFromBlock, TToBlock>
|
972
|
+
>
|
958
973
|
/**
|
959
974
|
* Returns the value from a storage slot at a given address.
|
960
975
|
*
|
@@ -1406,10 +1421,14 @@ export type PublicActions<
|
|
1406
1421
|
* })
|
1407
1422
|
*/
|
1408
1423
|
watchEvent: <
|
1409
|
-
TAbiEvent extends AbiEvent | undefined,
|
1424
|
+
TAbiEvent extends AbiEvent | undefined = undefined,
|
1425
|
+
TAbiEvents extends
|
1426
|
+
| readonly AbiEvent[]
|
1427
|
+
| readonly unknown[]
|
1428
|
+
| undefined = TAbiEvent extends AbiEvent ? [TAbiEvent] : undefined,
|
1410
1429
|
TStrict extends boolean | undefined = undefined,
|
1411
1430
|
>(
|
1412
|
-
args: WatchEventParameters<TAbiEvent, TStrict>,
|
1431
|
+
args: WatchEventParameters<TAbiEvent, TAbiEvents, TStrict>,
|
1413
1432
|
) => WatchEventReturnType
|
1414
1433
|
/**
|
1415
1434
|
* Watches and returns pending transaction hashes.
|
package/src/errors/version.ts
CHANGED
@@ -1 +1 @@
|
|
1
|
-
export const version = '0.0.0-main.
|
1
|
+
export const version = '0.0.0-main.20230730T155828'
|
package/src/types/contract.ts
CHANGED
@@ -83,9 +83,13 @@ export type MaybeAbiEventName<TAbiEvent extends AbiEvent | undefined> =
|
|
83
83
|
TAbiEvent extends AbiEvent ? TAbiEvent['name'] : undefined
|
84
84
|
|
85
85
|
export type MaybeExtractEventArgsFromAbi<
|
86
|
-
TAbi extends Abi | readonly unknown[]
|
87
|
-
TEventName extends string | undefined
|
88
|
-
> =
|
86
|
+
TAbi extends Abi | readonly unknown[] | undefined,
|
87
|
+
TEventName extends string | undefined,
|
88
|
+
> = TAbi extends Abi | readonly unknown[]
|
89
|
+
? TEventName extends string
|
90
|
+
? GetEventArgs<TAbi, TEventName>
|
91
|
+
: undefined
|
92
|
+
: undefined
|
89
93
|
|
90
94
|
//////////////////////////////////////////////////////////////////////
|
91
95
|
// ABI item name
|
package/src/types/filter.ts
CHANGED
@@ -17,7 +17,7 @@ type FilterRpcSchema = Filter_<
|
|
17
17
|
|
18
18
|
export type Filter<
|
19
19
|
TFilterType extends FilterType = 'event',
|
20
|
-
TAbi extends Abi | readonly unknown[] =
|
20
|
+
TAbi extends Abi | readonly unknown[] | undefined = undefined,
|
21
21
|
TEventName extends string | undefined = undefined,
|
22
22
|
TArgs extends
|
23
23
|
| MaybeExtractEventArgsFromAbi<TAbi, TEventName>
|
package/src/types/log.ts
CHANGED
@@ -18,7 +18,9 @@ export type Log<
|
|
18
18
|
TPending extends boolean = boolean,
|
19
19
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
20
20
|
TStrict extends boolean | undefined = undefined,
|
21
|
-
TAbi extends Abi | readonly unknown[] =
|
21
|
+
TAbi extends Abi | readonly unknown[] | undefined = TAbiEvent extends AbiEvent
|
22
|
+
? [TAbiEvent]
|
23
|
+
: undefined,
|
22
24
|
TEventName extends string | undefined = TAbiEvent extends AbiEvent
|
23
25
|
? TAbiEvent['name']
|
24
26
|
: undefined,
|
@@ -80,7 +82,9 @@ type GetTopics<
|
|
80
82
|
|
81
83
|
type GetInferredLogValues<
|
82
84
|
TAbiEvent extends AbiEvent | undefined = undefined,
|
83
|
-
TAbi extends Abi | readonly unknown[] =
|
85
|
+
TAbi extends Abi | readonly unknown[] | undefined = TAbiEvent extends AbiEvent
|
86
|
+
? [TAbiEvent]
|
87
|
+
: undefined,
|
84
88
|
TEventName extends string | undefined = TAbiEvent extends AbiEvent
|
85
89
|
? TAbiEvent['name']
|
86
90
|
: undefined,
|
@@ -111,7 +115,7 @@ type GetInferredLogValues<
|
|
111
115
|
[TName in _EventNames]: {
|
112
116
|
args: GetEventArgs<
|
113
117
|
TAbi,
|
114
|
-
|
118
|
+
TName,
|
115
119
|
{
|
116
120
|
EnableUnion: false
|
117
121
|
IndexedOnly: false
|