@tapforce/pod-bridge-sdk 1.1.3 → 1.1.5
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.
|
@@ -91,8 +91,8 @@ class PodBridgeTrackerClient {
|
|
|
91
91
|
}
|
|
92
92
|
}
|
|
93
93
|
}
|
|
94
|
-
// Check claim status
|
|
95
|
-
await this.updateClaimStatus(deposits
|
|
94
|
+
// Check claim status (queries POD chain, not bridged)
|
|
95
|
+
await this.updateClaimStatus(deposits);
|
|
96
96
|
return deposits.sort((a, b) => b.timestamp - a.timestamp);
|
|
97
97
|
}
|
|
98
98
|
/**
|
|
@@ -167,8 +167,8 @@ class PodBridgeTrackerClient {
|
|
|
167
167
|
}
|
|
168
168
|
}
|
|
169
169
|
}
|
|
170
|
-
// Check claim status
|
|
171
|
-
await this.updateClaimStatus(deposits
|
|
170
|
+
// Check claim status (queries POD chain, not bridged)
|
|
171
|
+
await this.updateClaimStatus(deposits);
|
|
172
172
|
return deposits.sort((a, b) => b.timestamp - a.timestamp);
|
|
173
173
|
}
|
|
174
174
|
/**
|
|
@@ -224,41 +224,41 @@ class PodBridgeTrackerClient {
|
|
|
224
224
|
/**
|
|
225
225
|
* Batch check claim status for multiple deposits
|
|
226
226
|
* @param deposits Array of deposits to check
|
|
227
|
-
* @param fromBlock Starting block to query claims from
|
|
228
227
|
*/
|
|
229
|
-
async updateClaimStatus(deposits
|
|
230
|
-
var _a;
|
|
228
|
+
async updateClaimStatus(deposits) {
|
|
231
229
|
if (deposits.length === 0) {
|
|
232
230
|
return;
|
|
233
231
|
}
|
|
234
232
|
console.log('updateClaimStatus');
|
|
235
233
|
try {
|
|
236
|
-
|
|
237
|
-
const
|
|
238
|
-
|
|
234
|
+
// Get unique recipient addresses from deposits
|
|
235
|
+
const uniqueRecipients = [...new Set(deposits.map(d => d.to))];
|
|
236
|
+
console.log('Querying claims for recipients:', uniqueRecipients);
|
|
237
|
+
// Get claim events from destination chain (POD) filtered by recipient addresses
|
|
238
|
+
// Note: POD uses timestamps instead of traditional blocks
|
|
239
239
|
const allClaimLogs = [];
|
|
240
240
|
const allClaimNativeLogs = [];
|
|
241
|
-
//
|
|
242
|
-
const
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
241
|
+
// Query claims for each unique recipient
|
|
242
|
+
for (const recipient of uniqueRecipients) {
|
|
243
|
+
const claimFilter = this.podBridge.filters.Claim(null, // id - any
|
|
244
|
+
null, // claimer - any
|
|
245
|
+
recipient // to - filter by recipient
|
|
246
|
+
);
|
|
247
|
+
const claimNativeFilter = this.podBridge.filters.ClaimNative(null, // id - any
|
|
248
|
+
null, // claimer - any
|
|
249
|
+
recipient // to - filter by recipient
|
|
250
|
+
);
|
|
247
251
|
const [claimLogs, claimNativeLogs] = await Promise.all([
|
|
248
|
-
this.podBridge.queryFilter(claimFilter
|
|
249
|
-
this.podBridge.queryFilter(claimNativeFilter
|
|
252
|
+
this.podBridge.queryFilter(claimFilter),
|
|
253
|
+
this.podBridge.queryFilter(claimNativeFilter)
|
|
250
254
|
]);
|
|
251
|
-
console.log('claimLogs', claimLogs);
|
|
252
|
-
console.log('claimNativeLogs', claimNativeLogs);
|
|
253
255
|
allClaimLogs.push(...claimLogs);
|
|
254
256
|
allClaimNativeLogs.push(...claimNativeLogs);
|
|
255
|
-
// Add small delay to avoid rate limiting
|
|
256
|
-
if (start + BLOCK_BATCH_SIZE <= currentBlock) {
|
|
257
|
-
await new Promise(resolve => setTimeout(resolve, 100));
|
|
258
|
-
}
|
|
259
257
|
}
|
|
260
258
|
const claimLogs = allClaimLogs;
|
|
261
259
|
const claimNativeLogs = allClaimNativeLogs;
|
|
260
|
+
console.log('claimLogs', claimLogs);
|
|
261
|
+
console.log('claimNativeLogs', claimNativeLogs);
|
|
262
262
|
// Create a map of claimed request IDs
|
|
263
263
|
const claimedMap = new Map();
|
|
264
264
|
for (const log of [...claimLogs, ...claimNativeLogs]) {
|