ponder 0.14.13 → 0.15.0
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/CHANGELOG.md +16 -0
- package/dist/esm/bin/commands/createViews.js +28 -11
- package/dist/esm/bin/commands/createViews.js.map +1 -1
- package/dist/esm/bin/commands/dev.js +42 -22
- package/dist/esm/bin/commands/dev.js.map +1 -1
- package/dist/esm/bin/commands/prune.js +3 -0
- package/dist/esm/bin/commands/prune.js.map +1 -1
- package/dist/esm/bin/commands/serve.js +4 -1
- package/dist/esm/bin/commands/serve.js.map +1 -1
- package/dist/esm/bin/commands/start.js +18 -6
- package/dist/esm/bin/commands/start.js.map +1 -1
- package/dist/esm/bin/isolatedController.js +200 -0
- package/dist/esm/bin/isolatedController.js.map +1 -0
- package/dist/esm/bin/isolatedWorker.js +146 -0
- package/dist/esm/bin/isolatedWorker.js.map +1 -0
- package/dist/esm/build/config.js +322 -402
- package/dist/esm/build/config.js.map +1 -1
- package/dist/esm/build/index.js +8 -11
- package/dist/esm/build/index.js.map +1 -1
- package/dist/esm/build/pre.js +1 -4
- package/dist/esm/build/pre.js.map +1 -1
- package/dist/esm/build/schema.js +25 -3
- package/dist/esm/build/schema.js.map +1 -1
- package/dist/esm/client/index.js +306 -42
- package/dist/esm/client/index.js.map +1 -1
- package/dist/esm/database/actions.js +264 -104
- package/dist/esm/database/actions.js.map +1 -1
- package/dist/esm/database/index.js +39 -33
- package/dist/esm/database/index.js.map +1 -1
- package/dist/esm/database/queryBuilder.js +1 -0
- package/dist/esm/database/queryBuilder.js.map +1 -1
- package/dist/esm/drizzle/index.js +11 -7
- package/dist/esm/drizzle/index.js.map +1 -1
- package/dist/esm/drizzle/onchain.js +18 -0
- package/dist/esm/drizzle/onchain.js.map +1 -1
- package/dist/esm/indexing/client.js +32 -25
- package/dist/esm/indexing/client.js.map +1 -1
- package/dist/esm/indexing/index.js +110 -178
- package/dist/esm/indexing/index.js.map +1 -1
- package/dist/esm/indexing/profile.js +1 -1
- package/dist/esm/indexing/profile.js.map +1 -1
- package/dist/esm/indexing-store/cache.js +196 -274
- package/dist/esm/indexing-store/cache.js.map +1 -1
- package/dist/esm/indexing-store/historical.js +17 -13
- package/dist/esm/indexing-store/historical.js.map +1 -1
- package/dist/esm/indexing-store/index.js +10 -1
- package/dist/esm/indexing-store/index.js.map +1 -1
- package/dist/esm/indexing-store/profile.js +3 -3
- package/dist/esm/indexing-store/profile.js.map +1 -1
- package/dist/esm/indexing-store/realtime.js +27 -2
- package/dist/esm/indexing-store/realtime.js.map +1 -1
- package/dist/esm/internal/errors.js +28 -0
- package/dist/esm/internal/errors.js.map +1 -1
- package/dist/esm/internal/metrics.js +279 -82
- package/dist/esm/internal/metrics.js.map +1 -1
- package/dist/esm/internal/options.js +1 -0
- package/dist/esm/internal/options.js.map +1 -1
- package/dist/esm/internal/telemetry.js +1 -1
- package/dist/esm/internal/telemetry.js.map +1 -1
- package/dist/esm/rpc/http.js +130 -0
- package/dist/esm/rpc/http.js.map +1 -0
- package/dist/esm/rpc/index.js +38 -7
- package/dist/esm/rpc/index.js.map +1 -1
- package/dist/esm/runtime/events.js +179 -212
- package/dist/esm/runtime/events.js.map +1 -1
- package/dist/esm/runtime/filter.js +71 -0
- package/dist/esm/runtime/filter.js.map +1 -1
- package/dist/esm/runtime/fragments.js +78 -73
- package/dist/esm/runtime/fragments.js.map +1 -1
- package/dist/esm/runtime/historical.js +306 -130
- package/dist/esm/runtime/historical.js.map +1 -1
- package/dist/esm/runtime/index.js +183 -58
- package/dist/esm/runtime/index.js.map +1 -1
- package/dist/esm/runtime/isolated.js +462 -0
- package/dist/esm/runtime/isolated.js.map +1 -0
- package/dist/esm/runtime/multichain.js +80 -73
- package/dist/esm/runtime/multichain.js.map +1 -1
- package/dist/esm/runtime/omnichain.js +82 -75
- package/dist/esm/runtime/omnichain.js.map +1 -1
- package/dist/esm/runtime/realtime.js +198 -66
- package/dist/esm/runtime/realtime.js.map +1 -1
- package/dist/esm/sync-historical/index.js +416 -457
- package/dist/esm/sync-historical/index.js.map +1 -1
- package/dist/esm/sync-realtime/bloom.js +3 -3
- package/dist/esm/sync-realtime/bloom.js.map +1 -1
- package/dist/esm/sync-realtime/index.js +27 -46
- package/dist/esm/sync-realtime/index.js.map +1 -1
- package/dist/esm/sync-store/index.js +112 -63
- package/dist/esm/sync-store/index.js.map +1 -1
- package/dist/esm/utils/abi.js +20 -32
- package/dist/esm/utils/abi.js.map +1 -1
- package/dist/esm/utils/chunk.js +8 -0
- package/dist/esm/utils/chunk.js.map +1 -0
- package/dist/esm/utils/promiseAllSettledWithThrow.js +19 -0
- package/dist/esm/utils/promiseAllSettledWithThrow.js.map +1 -0
- package/dist/esm/{client/parse.js → utils/sql-parse.js} +94 -80
- package/dist/esm/utils/sql-parse.js.map +1 -0
- package/dist/types/bin/commands/createViews.d.ts.map +1 -1
- package/dist/types/bin/commands/dev.d.ts.map +1 -1
- package/dist/types/bin/commands/prune.d.ts.map +1 -1
- package/dist/types/bin/commands/serve.d.ts.map +1 -1
- package/dist/types/bin/commands/start.d.ts.map +1 -1
- package/dist/types/bin/isolatedController.d.ts +13 -0
- package/dist/types/bin/isolatedController.d.ts.map +1 -0
- package/dist/types/bin/isolatedWorker.d.ts +9 -0
- package/dist/types/bin/isolatedWorker.d.ts.map +1 -0
- package/dist/types/build/config.d.ts +29 -11
- package/dist/types/build/config.d.ts.map +1 -1
- package/dist/types/build/index.d.ts +3 -2
- package/dist/types/build/index.d.ts.map +1 -1
- package/dist/types/build/pre.d.ts +1 -1
- package/dist/types/build/pre.d.ts.map +1 -1
- package/dist/types/build/schema.d.ts +5 -3
- package/dist/types/build/schema.d.ts.map +1 -1
- package/dist/types/client/index.d.ts +1 -1
- package/dist/types/client/index.d.ts.map +1 -1
- package/dist/types/config/index.d.ts +3 -3
- package/dist/types/config/index.d.ts.map +1 -1
- package/dist/types/database/actions.d.ts +53 -7
- package/dist/types/database/actions.d.ts.map +1 -1
- package/dist/types/database/index.d.ts +21 -21
- package/dist/types/database/index.d.ts.map +1 -1
- package/dist/types/database/queryBuilder.d.ts.map +1 -1
- package/dist/types/drizzle/index.d.ts +4 -5
- package/dist/types/drizzle/index.d.ts.map +1 -1
- package/dist/types/drizzle/onchain.d.ts +6 -0
- package/dist/types/drizzle/onchain.d.ts.map +1 -1
- package/dist/types/indexing/client.d.ts.map +1 -1
- package/dist/types/indexing/index.d.ts +2 -5
- package/dist/types/indexing/index.d.ts.map +1 -1
- package/dist/types/indexing-store/cache.d.ts +3 -2
- package/dist/types/indexing-store/cache.d.ts.map +1 -1
- package/dist/types/indexing-store/historical.d.ts +2 -1
- package/dist/types/indexing-store/historical.d.ts.map +1 -1
- package/dist/types/indexing-store/index.d.ts +1 -0
- package/dist/types/indexing-store/index.d.ts.map +1 -1
- package/dist/types/indexing-store/realtime.d.ts +2 -1
- package/dist/types/indexing-store/realtime.d.ts.map +1 -1
- package/dist/types/internal/errors.d.ts +5 -0
- package/dist/types/internal/errors.d.ts.map +1 -1
- package/dist/types/internal/metrics.d.ts +21 -0
- package/dist/types/internal/metrics.d.ts.map +1 -1
- package/dist/types/internal/options.d.ts +2 -0
- package/dist/types/internal/options.d.ts.map +1 -1
- package/dist/types/internal/types.d.ts +66 -58
- package/dist/types/internal/types.d.ts.map +1 -1
- package/dist/types/rpc/http.d.ts +17 -0
- package/dist/types/rpc/http.d.ts.map +1 -0
- package/dist/types/rpc/index.d.ts.map +1 -1
- package/dist/types/runtime/events.d.ts +4 -4
- package/dist/types/runtime/events.d.ts.map +1 -1
- package/dist/types/runtime/filter.d.ts +5 -1
- package/dist/types/runtime/filter.d.ts.map +1 -1
- package/dist/types/runtime/fragments.d.ts +4 -3
- package/dist/types/runtime/fragments.d.ts.map +1 -1
- package/dist/types/runtime/historical.d.ts +29 -13
- package/dist/types/runtime/historical.d.ts.map +1 -1
- package/dist/types/runtime/index.d.ts +49 -6
- package/dist/types/runtime/index.d.ts.map +1 -1
- package/dist/types/runtime/init.d.ts +5 -5
- package/dist/types/runtime/init.d.ts.map +1 -1
- package/dist/types/runtime/isolated.d.ts +14 -0
- package/dist/types/runtime/isolated.d.ts.map +1 -0
- package/dist/types/runtime/multichain.d.ts.map +1 -1
- package/dist/types/runtime/omnichain.d.ts.map +1 -1
- package/dist/types/runtime/realtime.d.ts +21 -10
- package/dist/types/runtime/realtime.d.ts.map +1 -1
- package/dist/types/sync-historical/index.d.ts +18 -8
- package/dist/types/sync-historical/index.d.ts.map +1 -1
- package/dist/types/sync-realtime/bloom.d.ts.map +1 -1
- package/dist/types/sync-realtime/index.d.ts +2 -2
- package/dist/types/sync-realtime/index.d.ts.map +1 -1
- package/dist/types/sync-store/index.d.ts +9 -9
- package/dist/types/sync-store/index.d.ts.map +1 -1
- package/dist/types/utils/abi.d.ts +3 -34
- package/dist/types/utils/abi.d.ts.map +1 -1
- package/dist/types/utils/chunk.d.ts +2 -0
- package/dist/types/utils/chunk.d.ts.map +1 -0
- package/dist/types/utils/promiseAllSettledWithThrow.d.ts +8 -0
- package/dist/types/utils/promiseAllSettledWithThrow.d.ts.map +1 -0
- package/dist/types/utils/sql-parse.d.ts +21 -0
- package/dist/types/utils/sql-parse.d.ts.map +1 -0
- package/package.json +2 -2
- package/src/bin/commands/createViews.ts +35 -15
- package/src/bin/commands/dev.ts +43 -21
- package/src/bin/commands/prune.ts +6 -0
- package/src/bin/commands/serve.ts +4 -1
- package/src/bin/commands/start.ts +20 -5
- package/src/bin/isolatedController.ts +300 -0
- package/src/bin/isolatedWorker.ts +192 -0
- package/src/build/config.ts +570 -632
- package/src/build/index.ts +14 -14
- package/src/build/pre.ts +1 -4
- package/src/build/schema.ts +49 -4
- package/src/client/index.ts +386 -48
- package/src/config/index.ts +3 -3
- package/src/database/actions.ts +469 -120
- package/src/database/index.ts +85 -58
- package/src/database/queryBuilder.ts +1 -0
- package/src/drizzle/index.ts +15 -7
- package/src/drizzle/onchain.ts +19 -0
- package/src/indexing/client.ts +38 -25
- package/src/indexing/index.ts +137 -230
- package/src/indexing/profile.ts +1 -1
- package/src/indexing-store/cache.ts +285 -414
- package/src/indexing-store/historical.ts +20 -10
- package/src/indexing-store/index.ts +16 -0
- package/src/indexing-store/profile.ts +3 -3
- package/src/indexing-store/realtime.ts +28 -0
- package/src/internal/errors.ts +26 -0
- package/src/internal/metrics.ts +341 -111
- package/src/internal/options.ts +4 -0
- package/src/internal/telemetry.ts +1 -1
- package/src/internal/types.ts +70 -87
- package/src/rpc/http.ts +164 -0
- package/src/rpc/index.ts +39 -7
- package/src/runtime/events.ts +195 -240
- package/src/runtime/filter.ts +85 -1
- package/src/runtime/fragments.ts +109 -113
- package/src/runtime/historical.ts +467 -189
- package/src/runtime/index.ts +337 -69
- package/src/runtime/init.ts +5 -5
- package/src/runtime/isolated.ts +768 -0
- package/src/runtime/multichain.ts +137 -102
- package/src/runtime/omnichain.ts +138 -106
- package/src/runtime/realtime.ts +322 -123
- package/src/sync-historical/index.ts +556 -692
- package/src/sync-realtime/bloom.ts +7 -3
- package/src/sync-realtime/index.ts +31 -46
- package/src/sync-store/index.ts +189 -95
- package/src/utils/abi.ts +33 -90
- package/src/utils/chunk.ts +7 -0
- package/src/utils/promiseAllSettledWithThrow.ts +27 -0
- package/src/{client/parse.ts → utils/sql-parse.ts} +100 -90
- package/dist/esm/client/parse.js.map +0 -1
- package/dist/types/client/parse.d.ts +0 -14
- package/dist/types/client/parse.d.ts.map +0 -1
|
@@ -1,50 +1,50 @@
|
|
|
1
1
|
import { EVENT_TYPES, MAX_CHECKPOINT, ZERO_CHECKPOINT, encodeCheckpoint, } from '../utils/checkpoint.js';
|
|
2
2
|
import { decodeEventLog } from '../utils/decodeEventLog.js';
|
|
3
3
|
import { toLowerCase } from '../utils/lowercase.js';
|
|
4
|
-
import {
|
|
5
|
-
import { decodeFunctionData, decodeFunctionResult, hexToBigInt, hexToNumber, } from "viem";
|
|
4
|
+
import { decodeFunctionData, decodeFunctionResult, hexToBigInt, hexToNumber, toEventSelector, toFunctionSelector, } from "viem";
|
|
6
5
|
import { isAddressMatched, isBlockFilterMatched, isLogFilterMatched, isTraceFilterMatched, isTransactionFilterMatched, isTransferFilterMatched, } from "./filter.js";
|
|
7
6
|
import { isAddressFactory } from "./filter.js";
|
|
8
7
|
/**
|
|
9
8
|
* Create `RawEvent`s from raw data types
|
|
10
9
|
*/
|
|
11
|
-
export const buildEvents = ({
|
|
10
|
+
export const buildEvents = ({ eventCallbacks, blocks, logs, transactions, transactionReceipts, traces, childAddresses, chainId, }) => {
|
|
12
11
|
const events = [];
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
const
|
|
18
|
-
for (let i = 0; i <
|
|
19
|
-
const
|
|
20
|
-
if (chainId !==
|
|
12
|
+
const blockEventCallbackIndexes = [];
|
|
13
|
+
const transactionEventCallbackIndexes = [];
|
|
14
|
+
const logEventCallbackIndexes = [];
|
|
15
|
+
const traceEventCallbackIndexes = [];
|
|
16
|
+
const transferEventCallbackIndexes = [];
|
|
17
|
+
for (let i = 0; i < eventCallbacks.length; i++) {
|
|
18
|
+
const eventCallback = eventCallbacks[i];
|
|
19
|
+
if (chainId !== eventCallback.filter.chainId)
|
|
21
20
|
continue;
|
|
22
|
-
if (
|
|
23
|
-
|
|
21
|
+
if (eventCallback.filter.type === "block") {
|
|
22
|
+
blockEventCallbackIndexes.push(i);
|
|
24
23
|
}
|
|
25
|
-
else if (
|
|
26
|
-
|
|
24
|
+
else if (eventCallback.filter.type === "transaction") {
|
|
25
|
+
transactionEventCallbackIndexes.push(i);
|
|
27
26
|
}
|
|
28
|
-
else if (
|
|
29
|
-
|
|
27
|
+
else if (eventCallback.filter.type === "log") {
|
|
28
|
+
logEventCallbackIndexes.push(i);
|
|
30
29
|
}
|
|
31
|
-
else if (
|
|
32
|
-
|
|
30
|
+
else if (eventCallback.filter.type === "trace") {
|
|
31
|
+
traceEventCallbackIndexes.push(i);
|
|
33
32
|
}
|
|
34
|
-
else if (
|
|
35
|
-
|
|
33
|
+
else if (eventCallback.filter.type === "transfer") {
|
|
34
|
+
transferEventCallbackIndexes.push(i);
|
|
36
35
|
}
|
|
37
36
|
}
|
|
38
37
|
let blocksIndex = 0;
|
|
39
38
|
let transactionsIndex = 0;
|
|
40
39
|
let transactionReceiptsIndex = 0;
|
|
41
40
|
for (const block of blocks) {
|
|
42
|
-
for (const
|
|
43
|
-
const filter =
|
|
41
|
+
for (const blockEventCallbackIndex of blockEventCallbackIndexes) {
|
|
42
|
+
const filter = eventCallbacks[blockEventCallbackIndex]
|
|
43
|
+
.filter;
|
|
44
44
|
if (isBlockFilterMatched({ filter, block })) {
|
|
45
45
|
events.push({
|
|
46
46
|
chainId: filter.chainId,
|
|
47
|
-
|
|
47
|
+
eventCallbackIndex: blockEventCallbackIndex,
|
|
48
48
|
checkpoint: encodeCheckpoint({
|
|
49
49
|
blockTimestamp: block.timestamp,
|
|
50
50
|
chainId: filter.chainId,
|
|
@@ -83,8 +83,8 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
83
83
|
transactionReceiptsIndex++;
|
|
84
84
|
}
|
|
85
85
|
const transactionReceipt = transactionReceipts[transactionReceiptsIndex];
|
|
86
|
-
for (const
|
|
87
|
-
const filter =
|
|
86
|
+
for (const transactionEventCallbackIndex of transactionEventCallbackIndexes) {
|
|
87
|
+
const filter = eventCallbacks[transactionEventCallbackIndex]
|
|
88
88
|
.filter;
|
|
89
89
|
if (isTransactionFilterMatched({ filter, transaction }) &&
|
|
90
90
|
(isAddressFactory(filter.fromAddress)
|
|
@@ -109,7 +109,7 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
109
109
|
}
|
|
110
110
|
events.push({
|
|
111
111
|
chainId: filter.chainId,
|
|
112
|
-
|
|
112
|
+
eventCallbackIndex: transactionEventCallbackIndex,
|
|
113
113
|
checkpoint: encodeCheckpoint({
|
|
114
114
|
blockTimestamp: block.timestamp,
|
|
115
115
|
chainId: filter.chainId,
|
|
@@ -173,8 +173,9 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
173
173
|
transactionIndex) {
|
|
174
174
|
transactionReceipt = transactionReceipts[transactionReceiptsIndex];
|
|
175
175
|
}
|
|
176
|
-
for (const
|
|
177
|
-
const filter =
|
|
176
|
+
for (const traceEventCallbackIndex of traceEventCallbackIndexes) {
|
|
177
|
+
const filter = eventCallbacks[traceEventCallbackIndex]
|
|
178
|
+
.filter;
|
|
178
179
|
if (isTraceFilterMatched({ filter, trace, block }) &&
|
|
179
180
|
(isAddressFactory(filter.fromAddress)
|
|
180
181
|
? isAddressMatched({
|
|
@@ -199,7 +200,7 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
199
200
|
}
|
|
200
201
|
events.push({
|
|
201
202
|
chainId: filter.chainId,
|
|
202
|
-
|
|
203
|
+
eventCallbackIndex: traceEventCallbackIndex,
|
|
203
204
|
checkpoint: encodeCheckpoint({
|
|
204
205
|
blockTimestamp: block.timestamp,
|
|
205
206
|
chainId: filter.chainId,
|
|
@@ -218,8 +219,9 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
218
219
|
});
|
|
219
220
|
}
|
|
220
221
|
}
|
|
221
|
-
for (const
|
|
222
|
-
const filter =
|
|
222
|
+
for (const transferEventCallbackIndex of transferEventCallbackIndexes) {
|
|
223
|
+
const filter = eventCallbacks[transferEventCallbackIndex]
|
|
224
|
+
.filter;
|
|
223
225
|
if (isTransferFilterMatched({ filter, trace, block }) &&
|
|
224
226
|
(isAddressFactory(filter.fromAddress)
|
|
225
227
|
? isAddressMatched({
|
|
@@ -241,7 +243,7 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
241
243
|
}
|
|
242
244
|
events.push({
|
|
243
245
|
chainId: filter.chainId,
|
|
244
|
-
|
|
246
|
+
eventCallbackIndex: transferEventCallbackIndex,
|
|
245
247
|
checkpoint: encodeCheckpoint({
|
|
246
248
|
blockTimestamp: block.timestamp,
|
|
247
249
|
chainId: filter.chainId,
|
|
@@ -306,8 +308,8 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
306
308
|
transactionIndex) {
|
|
307
309
|
transactionReceipt = transactionReceipts[transactionReceiptsIndex];
|
|
308
310
|
}
|
|
309
|
-
for (const
|
|
310
|
-
const filter =
|
|
311
|
+
for (const logEventCallbackIndex of logEventCallbackIndexes) {
|
|
312
|
+
const filter = eventCallbacks[logEventCallbackIndex].filter;
|
|
311
313
|
if (isLogFilterMatched({ filter, log }) &&
|
|
312
314
|
(isAddressFactory(filter.address)
|
|
313
315
|
? isAddressMatched({
|
|
@@ -321,7 +323,7 @@ export const buildEvents = ({ sources, blocks, logs, transactions, transactionRe
|
|
|
321
323
|
}
|
|
322
324
|
events.push({
|
|
323
325
|
chainId: filter.chainId,
|
|
324
|
-
|
|
326
|
+
eventCallbackIndex: logEventCallbackIndex,
|
|
325
327
|
checkpoint: encodeCheckpoint({
|
|
326
328
|
blockTimestamp: block.timestamp,
|
|
327
329
|
chainId: filter.chainId,
|
|
@@ -350,11 +352,11 @@ export const splitEvents = (events) => {
|
|
|
350
352
|
if (hash === undefined || hash !== event.event.block.hash) {
|
|
351
353
|
result.push({
|
|
352
354
|
events: [],
|
|
353
|
-
chainId: event.
|
|
355
|
+
chainId: event.chain.id,
|
|
354
356
|
checkpoint: encodeCheckpoint({
|
|
355
357
|
...MAX_CHECKPOINT,
|
|
356
358
|
blockTimestamp: event.event.block.timestamp,
|
|
357
|
-
chainId: BigInt(event.
|
|
359
|
+
chainId: BigInt(event.chain.id),
|
|
358
360
|
blockNumber: event.event.block.number,
|
|
359
361
|
}),
|
|
360
362
|
});
|
|
@@ -364,7 +366,7 @@ export const splitEvents = (events) => {
|
|
|
364
366
|
}
|
|
365
367
|
return result;
|
|
366
368
|
};
|
|
367
|
-
export const decodeEvents = (common,
|
|
369
|
+
export const decodeEvents = (common, chain, eventCallbacks, rawEvents) => {
|
|
368
370
|
const events = [];
|
|
369
371
|
const logDecodeFailureSelectors = new Set();
|
|
370
372
|
let logDecodeFailureCount = 0;
|
|
@@ -373,184 +375,149 @@ export const decodeEvents = (common, sources, rawEvents) => {
|
|
|
373
375
|
let traceDecodeFailureCount = 0;
|
|
374
376
|
let traceDecodeSuccessCount = 0;
|
|
375
377
|
for (const event of rawEvents) {
|
|
376
|
-
const
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
break;
|
|
388
|
-
}
|
|
389
|
-
const { safeName, item } = abiItem;
|
|
390
|
-
let args;
|
|
391
|
-
try {
|
|
392
|
-
args = decodeEventLog({
|
|
393
|
-
abiItem: item,
|
|
394
|
-
data: event.log.data,
|
|
395
|
-
topics: event.log.topics,
|
|
396
|
-
});
|
|
397
|
-
logDecodeSuccessCount++;
|
|
398
|
-
}
|
|
399
|
-
catch (err) {
|
|
400
|
-
logDecodeFailureCount++;
|
|
401
|
-
if (!logDecodeFailureSelectors.has(selector)) {
|
|
402
|
-
logDecodeFailureSelectors.add(selector);
|
|
403
|
-
common.logger.debug({
|
|
404
|
-
msg: "Failed to decode matched event log using provided ABI item",
|
|
405
|
-
chain: source.chain.name,
|
|
406
|
-
chain_id: source.chain.id,
|
|
407
|
-
event: safeName,
|
|
408
|
-
block_number: event?.block?.number ?? "unknown",
|
|
409
|
-
log_index: event.log?.logIndex,
|
|
410
|
-
data: event.log?.data,
|
|
411
|
-
topics: JSON.stringify(event.log?.topics),
|
|
412
|
-
});
|
|
413
|
-
}
|
|
414
|
-
break;
|
|
415
|
-
}
|
|
416
|
-
events.push({
|
|
417
|
-
type: "log",
|
|
418
|
-
chainId: event.chainId,
|
|
419
|
-
checkpoint: event.checkpoint,
|
|
420
|
-
name: `${source.name}:${safeName}`,
|
|
421
|
-
event: {
|
|
422
|
-
id: event.checkpoint,
|
|
423
|
-
args,
|
|
424
|
-
log: event.log,
|
|
425
|
-
block: event.block,
|
|
426
|
-
transaction: event.transaction,
|
|
427
|
-
transactionReceipt: event.transactionReceipt,
|
|
428
|
-
},
|
|
429
|
-
});
|
|
430
|
-
break;
|
|
431
|
-
}
|
|
432
|
-
case "trace": {
|
|
433
|
-
const selector = event
|
|
434
|
-
.trace.input.slice(0, 10)
|
|
435
|
-
.toLowerCase();
|
|
436
|
-
const abiItem = source.abiFunctions.bySelector[selector];
|
|
437
|
-
if (abiItem === undefined) {
|
|
438
|
-
break;
|
|
439
|
-
}
|
|
440
|
-
const { item, safeName } = abiItem;
|
|
441
|
-
let decodedData;
|
|
442
|
-
let decodedResult;
|
|
443
|
-
try {
|
|
444
|
-
decodedData = decodeFunctionData({
|
|
445
|
-
abi: [item],
|
|
446
|
-
data: event.trace.input,
|
|
447
|
-
});
|
|
448
|
-
decodedResult = decodeFunctionResult({
|
|
449
|
-
abi: [item],
|
|
450
|
-
data: event.trace.output ?? "0x",
|
|
451
|
-
functionName: decodedData.functionName,
|
|
452
|
-
});
|
|
453
|
-
traceDecodeSuccessCount++;
|
|
454
|
-
}
|
|
455
|
-
catch (err) {
|
|
456
|
-
traceDecodeFailureCount++;
|
|
457
|
-
if (!traceDecodeFailureSelectors.has(selector)) {
|
|
458
|
-
traceDecodeFailureSelectors.add(selector);
|
|
459
|
-
common.logger.debug({
|
|
460
|
-
msg: "Failed to decode matched call trace using provided ABI item",
|
|
461
|
-
chain: source.chain.name,
|
|
462
|
-
chain_id: source.chain.id,
|
|
463
|
-
function: safeName,
|
|
464
|
-
block_number: event?.block?.number ?? "unknown",
|
|
465
|
-
transaction_index: event.transaction?.transactionIndex,
|
|
466
|
-
trace_index: event.trace?.traceIndex,
|
|
467
|
-
input: event.trace?.input,
|
|
468
|
-
output: event.trace?.output,
|
|
469
|
-
});
|
|
470
|
-
}
|
|
471
|
-
break;
|
|
472
|
-
}
|
|
473
|
-
events.push({
|
|
474
|
-
type: "trace",
|
|
475
|
-
chainId: event.chainId,
|
|
476
|
-
checkpoint: event.checkpoint,
|
|
477
|
-
// NOTE: `safename` includes ()
|
|
478
|
-
name: `${source.name}.${safeName}`,
|
|
479
|
-
event: {
|
|
480
|
-
id: event.checkpoint,
|
|
481
|
-
args: decodedData.args,
|
|
482
|
-
result: decodedResult,
|
|
483
|
-
trace: event.trace,
|
|
484
|
-
block: event.block,
|
|
485
|
-
transaction: event.transaction,
|
|
486
|
-
transactionReceipt: event.transactionReceipt,
|
|
487
|
-
},
|
|
488
|
-
});
|
|
489
|
-
break;
|
|
490
|
-
}
|
|
491
|
-
default:
|
|
492
|
-
never(source.filter);
|
|
493
|
-
}
|
|
494
|
-
break;
|
|
378
|
+
const eventCallback = eventCallbacks[event.eventCallbackIndex];
|
|
379
|
+
if (eventCallback.type === "contract" &&
|
|
380
|
+
eventCallback.filter.type === "log") {
|
|
381
|
+
let args;
|
|
382
|
+
try {
|
|
383
|
+
args = decodeEventLog({
|
|
384
|
+
abiItem: eventCallback.abiItem,
|
|
385
|
+
data: event.log.data,
|
|
386
|
+
topics: event.log.topics,
|
|
387
|
+
});
|
|
388
|
+
logDecodeSuccessCount++;
|
|
495
389
|
}
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
});
|
|
512
|
-
break;
|
|
513
|
-
}
|
|
514
|
-
case "transfer": {
|
|
515
|
-
const isFrom = source.filter.toAddress === undefined;
|
|
516
|
-
events.push({
|
|
517
|
-
type: "transfer",
|
|
518
|
-
chainId: event.chainId,
|
|
519
|
-
checkpoint: event.checkpoint,
|
|
520
|
-
name: `${source.name}:transfer:${isFrom ? "from" : "to"}`,
|
|
521
|
-
event: {
|
|
522
|
-
id: event.checkpoint,
|
|
523
|
-
transfer: {
|
|
524
|
-
from: event.trace.from,
|
|
525
|
-
to: event.trace.to,
|
|
526
|
-
value: event.trace.value,
|
|
527
|
-
},
|
|
528
|
-
block: event.block,
|
|
529
|
-
transaction: event.transaction,
|
|
530
|
-
transactionReceipt: event.transactionReceipt,
|
|
531
|
-
trace: event.trace,
|
|
532
|
-
},
|
|
533
|
-
});
|
|
534
|
-
break;
|
|
535
|
-
}
|
|
390
|
+
catch (err) {
|
|
391
|
+
logDecodeFailureCount++;
|
|
392
|
+
const selector = toEventSelector(eventCallback.abiItem);
|
|
393
|
+
if (!logDecodeFailureSelectors.has(selector)) {
|
|
394
|
+
logDecodeFailureSelectors.add(selector);
|
|
395
|
+
common.logger.debug({
|
|
396
|
+
msg: "Failed to decode matched event log using provided ABI item",
|
|
397
|
+
chain: eventCallback.chain.name,
|
|
398
|
+
chain_id: eventCallback.chain.id,
|
|
399
|
+
event: eventCallback.name,
|
|
400
|
+
block_number: event?.block?.number ?? "unknown",
|
|
401
|
+
log_index: event.log?.logIndex,
|
|
402
|
+
data: event.log?.data,
|
|
403
|
+
topics: JSON.stringify(event.log?.topics),
|
|
404
|
+
});
|
|
536
405
|
}
|
|
537
|
-
|
|
406
|
+
continue;
|
|
538
407
|
}
|
|
539
|
-
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
408
|
+
events.push({
|
|
409
|
+
type: "log",
|
|
410
|
+
checkpoint: event.checkpoint,
|
|
411
|
+
chain,
|
|
412
|
+
eventCallback,
|
|
413
|
+
event: {
|
|
414
|
+
id: event.checkpoint,
|
|
415
|
+
args,
|
|
416
|
+
log: event.log,
|
|
417
|
+
block: event.block,
|
|
418
|
+
transaction: event.transaction,
|
|
419
|
+
transactionReceipt: event.transactionReceipt,
|
|
420
|
+
},
|
|
421
|
+
});
|
|
422
|
+
}
|
|
423
|
+
else if (eventCallback.type === "contract" &&
|
|
424
|
+
eventCallback.filter.type === "trace") {
|
|
425
|
+
let decodedData;
|
|
426
|
+
let decodedResult;
|
|
427
|
+
try {
|
|
428
|
+
decodedData = decodeFunctionData({
|
|
429
|
+
abi: [eventCallback.abiItem],
|
|
430
|
+
data: event.trace.input,
|
|
549
431
|
});
|
|
550
|
-
|
|
432
|
+
decodedResult = decodeFunctionResult({
|
|
433
|
+
abi: [eventCallback.abiItem],
|
|
434
|
+
data: event.trace.output ?? "0x",
|
|
435
|
+
functionName: decodedData.functionName,
|
|
436
|
+
});
|
|
437
|
+
traceDecodeSuccessCount++;
|
|
551
438
|
}
|
|
552
|
-
|
|
553
|
-
|
|
439
|
+
catch (err) {
|
|
440
|
+
traceDecodeFailureCount++;
|
|
441
|
+
const selector = toFunctionSelector(eventCallback.abiItem);
|
|
442
|
+
if (!traceDecodeFailureSelectors.has(selector)) {
|
|
443
|
+
traceDecodeFailureSelectors.add(selector);
|
|
444
|
+
common.logger.debug({
|
|
445
|
+
msg: "Failed to decode matched call trace using provided ABI item",
|
|
446
|
+
chain: eventCallback.chain.name,
|
|
447
|
+
chain_id: eventCallback.chain.id,
|
|
448
|
+
function: eventCallback.name,
|
|
449
|
+
block_number: event?.block?.number ?? "unknown",
|
|
450
|
+
transaction_index: event.transaction?.transactionIndex,
|
|
451
|
+
trace_index: event.trace?.traceIndex,
|
|
452
|
+
input: event.trace?.input,
|
|
453
|
+
output: event.trace?.output,
|
|
454
|
+
});
|
|
455
|
+
}
|
|
456
|
+
continue;
|
|
457
|
+
}
|
|
458
|
+
events.push({
|
|
459
|
+
type: "trace",
|
|
460
|
+
checkpoint: event.checkpoint,
|
|
461
|
+
chain,
|
|
462
|
+
eventCallback,
|
|
463
|
+
event: {
|
|
464
|
+
id: event.checkpoint,
|
|
465
|
+
args: decodedData.args,
|
|
466
|
+
result: decodedResult,
|
|
467
|
+
trace: event.trace,
|
|
468
|
+
block: event.block,
|
|
469
|
+
transaction: event.transaction,
|
|
470
|
+
transactionReceipt: event.transactionReceipt,
|
|
471
|
+
},
|
|
472
|
+
});
|
|
473
|
+
}
|
|
474
|
+
else if (eventCallback.type === "account" &&
|
|
475
|
+
eventCallback.filter.type === "transaction") {
|
|
476
|
+
events.push({
|
|
477
|
+
type: "transaction",
|
|
478
|
+
checkpoint: event.checkpoint,
|
|
479
|
+
chain,
|
|
480
|
+
eventCallback,
|
|
481
|
+
event: {
|
|
482
|
+
id: event.checkpoint,
|
|
483
|
+
block: event.block,
|
|
484
|
+
transaction: event.transaction,
|
|
485
|
+
transactionReceipt: event.transactionReceipt,
|
|
486
|
+
},
|
|
487
|
+
});
|
|
488
|
+
}
|
|
489
|
+
else if (eventCallback.type === "account" &&
|
|
490
|
+
eventCallback.filter.type === "transfer") {
|
|
491
|
+
events.push({
|
|
492
|
+
type: "transfer",
|
|
493
|
+
checkpoint: event.checkpoint,
|
|
494
|
+
chain,
|
|
495
|
+
eventCallback,
|
|
496
|
+
event: {
|
|
497
|
+
id: event.checkpoint,
|
|
498
|
+
transfer: {
|
|
499
|
+
from: event.trace.from,
|
|
500
|
+
to: event.trace.to,
|
|
501
|
+
value: event.trace.value,
|
|
502
|
+
},
|
|
503
|
+
block: event.block,
|
|
504
|
+
transaction: event.transaction,
|
|
505
|
+
transactionReceipt: event.transactionReceipt,
|
|
506
|
+
trace: event.trace,
|
|
507
|
+
},
|
|
508
|
+
});
|
|
509
|
+
}
|
|
510
|
+
else if (eventCallback.type === "block") {
|
|
511
|
+
events.push({
|
|
512
|
+
type: "block",
|
|
513
|
+
checkpoint: event.checkpoint,
|
|
514
|
+
chain,
|
|
515
|
+
eventCallback,
|
|
516
|
+
event: {
|
|
517
|
+
id: event.checkpoint,
|
|
518
|
+
block: event.block,
|
|
519
|
+
},
|
|
520
|
+
});
|
|
554
521
|
}
|
|
555
522
|
}
|
|
556
523
|
if (logDecodeFailureCount > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/runtime/events.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"events.js","sourceRoot":"","sources":["../../../src/runtime/events.ts"],"names":[],"mappings":"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"}
|