dequanto 0.2.27 → 0.2.29

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.
Files changed (67) hide show
  1. package/lib/cjs/class/PackedRanges.js +422 -20
  2. package/lib/cjs/class/PackedRanges.js.map +1 -1
  3. package/lib/cjs/clients/Web3Client.js +2 -1
  4. package/lib/cjs/clients/Web3Client.js.map +1 -1
  5. package/lib/cjs/contracts/ContractReader.js +24 -1
  6. package/lib/cjs/contracts/ContractReader.js.map +1 -1
  7. package/lib/cjs/contracts/ContractWriter.js +1 -1
  8. package/lib/cjs/contracts/ContractWriter.js.map +1 -1
  9. package/lib/cjs/hardhat/HardhatProvider.js +7 -0
  10. package/lib/cjs/hardhat/HardhatProvider.js.map +1 -1
  11. package/lib/cjs/indexer/EventsIndexer.js +143 -98
  12. package/lib/cjs/indexer/EventsIndexer.js.map +1 -1
  13. package/lib/cjs/rpc/RpcContract.js +21 -13
  14. package/lib/cjs/rpc/RpcContract.js.map +1 -1
  15. package/lib/cjs/safe/GnosisSafeHandler.js +1 -1
  16. package/lib/cjs/safe/GnosisSafeHandler.js.map +1 -1
  17. package/lib/cjs/safe/transport/SafeServiceTransport.js +13 -3
  18. package/lib/cjs/safe/transport/SafeServiceTransport.js.map +1 -1
  19. package/lib/cjs/txs/TxWriter.js +5 -2
  20. package/lib/cjs/txs/TxWriter.js.map +1 -1
  21. package/lib/cjs/utils/$contract.js +7 -2
  22. package/lib/cjs/utils/$contract.js.map +1 -1
  23. package/lib/esm/class/PackedRanges.js.map +1 -1
  24. package/lib/esm/class/PackedRanges.mjs +422 -20
  25. package/lib/esm/clients/Web3Client.js.map +1 -1
  26. package/lib/esm/clients/Web3Client.mjs +2 -1
  27. package/lib/esm/contracts/ContractReader.js.map +1 -1
  28. package/lib/esm/contracts/ContractReader.mjs +24 -1
  29. package/lib/esm/contracts/ContractWriter.js.map +1 -1
  30. package/lib/esm/contracts/ContractWriter.mjs +1 -1
  31. package/lib/esm/hardhat/HardhatProvider.js.map +1 -1
  32. package/lib/esm/hardhat/HardhatProvider.mjs +7 -0
  33. package/lib/esm/indexer/EventsIndexer.js.map +1 -1
  34. package/lib/esm/indexer/EventsIndexer.mjs +143 -98
  35. package/lib/esm/rpc/RpcContract.js.map +1 -1
  36. package/lib/esm/rpc/RpcContract.mjs +21 -13
  37. package/lib/esm/safe/GnosisSafeHandler.js.map +1 -1
  38. package/lib/esm/safe/GnosisSafeHandler.mjs +1 -1
  39. package/lib/esm/safe/transport/SafeServiceTransport.js.map +1 -1
  40. package/lib/esm/safe/transport/SafeServiceTransport.mjs +13 -3
  41. package/lib/esm/txs/TxWriter.js.map +1 -1
  42. package/lib/esm/txs/TxWriter.mjs +5 -2
  43. package/lib/esm/utils/$contract.js.map +1 -1
  44. package/lib/esm/utils/$contract.mjs +7 -2
  45. package/lib/types/class/PackedRanges.d.ts +224 -0
  46. package/lib/types/clients/Web3Client.d.ts +4 -0
  47. package/lib/types/contracts/ContractReader.d.ts +1 -0
  48. package/lib/types/indexer/EventsIndexer.d.ts +5 -1
  49. package/lib/types/indexer/storage/interfaces.d.ts +1 -0
  50. package/lib/types/rpc/RpcContract.d.ts +16 -0
  51. package/lib/types/safe/GnosisSafeHandler.d.ts +1 -0
  52. package/lib/types/safe/transport/ISafeServiceTransport.d.ts +1 -0
  53. package/lib/types/utils/$contract.d.ts +1 -0
  54. package/package.json +1 -1
  55. package/src/class/PackedRanges.ts +447 -27
  56. package/src/clients/Web3Client.ts +6 -1
  57. package/src/contracts/ContractReader.ts +30 -3
  58. package/src/contracts/ContractWriter.ts +1 -1
  59. package/src/hardhat/HardhatProvider.ts +9 -0
  60. package/src/indexer/EventsIndexer.ts +173 -105
  61. package/src/indexer/storage/interfaces.ts +1 -0
  62. package/src/rpc/RpcContract.ts +34 -15
  63. package/src/safe/GnosisSafeHandler.ts +1 -1
  64. package/src/safe/transport/ISafeServiceTransport.ts +5 -1
  65. package/src/safe/transport/SafeServiceTransport.ts +15 -4
  66. package/src/txs/TxWriter.ts +6 -2
  67. package/src/utils/$contract.ts +7 -2
@@ -14,6 +14,7 @@ import { FsEventsIndexerStore } from './storage/FsEventsIndexerStore.mjs';
14
14
  import { FsEventsMetaStore } from './storage/FsEventsMetaStore.mjs';
15
15
  import { class_Dfr } from 'atma-utils';
16
16
  import { l } from '../utils/$logger.mjs';
17
+ import { PackedRanges } from '../class/PackedRanges.mjs';
17
18
  export class EventsIndexer {
18
19
  constructor(contract, options) {
19
20
  this.contract = contract;
@@ -50,29 +51,36 @@ export class EventsIndexer {
50
51
  async getPastLogs(event, filter) {
51
52
  let contract = this.contract;
52
53
  let client = contract.client;
54
+ let fromBlock = filter?.fromBlock;
53
55
  let toBlock = filter?.toBlock ?? await client.getBlockNumber();
54
56
  let events = Array.isArray(event) ? event : [event];
55
57
  let filterKey = this.getFilterKey(filter?.params);
56
- let ranges = await this.getRanges(events, this.options.initialBlockNumber, toBlock, { filterKey });
57
- let logs = await this.getPastLogsRanges(ranges, events, toBlock, filter?.fromBlock, {
58
+ let ranges = await this.getRanges(events, this.options.initialBlockNumber, toBlock, {
59
+ fromBlock,
60
+ filterKey
61
+ });
62
+ let { logs, infos } = await this.getPastLogsRanges(ranges, events, toBlock, fromBlock, {
58
63
  params: filter?.params
59
64
  });
60
65
  return {
61
- logs: logs
66
+ logs: logs,
67
+ infos,
62
68
  };
63
69
  }
64
70
  async *getPastLogsStream(event, options) {
65
71
  let contract = this.contract;
66
72
  let client = contract.client;
73
+ let fromBlock = options?.fromBlock;
67
74
  let toBlock = options?.toBlock ?? await client.getBlockNumber();
68
75
  let events = Array.isArray(event) ? event : [event];
69
76
  let filterKey = this.getFilterKey(options?.params);
70
- let ranges = await this.getRanges(events, options?.fromBlock ?? this.options.initialBlockNumber, toBlock, {
77
+ let ranges = await this.getRanges(events, this.options.initialBlockNumber, toBlock, {
78
+ fromBlock,
71
79
  filterKey
72
80
  });
73
81
  let dfrInner = new class_Dfr();
74
82
  let dfrOuter = new class_Dfr();
75
- this.getPastLogsRanges(ranges, events, toBlock, options?.fromBlock, {
83
+ this.getPastLogsRanges(ranges, events, toBlock, fromBlock, {
76
84
  params: options?.params,
77
85
  blockRangeLimits: options?.blockRangeLimits,
78
86
  streamed: true,
@@ -103,113 +111,95 @@ export class EventsIndexer {
103
111
  l `Removing ${events.length} from Block #${params.fromBlock}...`;
104
112
  await this.store.removeMany(events);
105
113
  let metas = await this.storeMeta.fetch();
106
- let lastBlock = params.fromBlock - 1;
114
+ let lastBlock = (params?.fromBlock ?? 0) - 1;
107
115
  if (lastBlock < 0) {
116
+ // remove all metas
108
117
  await this.storeMeta.removeMany(metas);
109
118
  }
110
119
  else {
120
+ // adjust the lastBlock and the ranges
111
121
  metas.forEach(x => {
112
122
  x.lastBlock = Math.min(x.lastBlock, lastBlock);
123
+ x.ranges = PackedRanges.pickTo(x.ranges, x.lastBlock);
113
124
  });
114
125
  await this.storeMeta.upsertMany(metas);
115
126
  }
116
127
  }
117
128
  async getRanges(events, initialBlockNumber, toBlock, opts) {
118
- let fromBlock = opts?.fromBlock ?? initialBlockNumber;
129
+ let fromBlock = opts?.fromBlock ?? initialBlockNumber ?? await this.getInitialBlockNumber();
119
130
  if (fromBlock != null) {
120
131
  $require.lte(fromBlock, toBlock, `Invalid block range order`);
121
132
  }
122
133
  let logsMetaArr = await this.storeMeta.fetch();
123
134
  let eventsBlock = alot(logsMetaArr)
124
135
  .filter(x => x.filterKey == opts?.filterKey)
125
- .toDictionary(x => x.event, x => x.lastBlock);
126
- let logsMeta = events.map(event => {
127
- let blockNr = eventsBlock[event] ?? initialBlockNumber;
136
+ .toDictionary(x => x.event, x => x);
137
+ let logsMeta = await alot(events).mapAsync(async (event) => {
138
+ let lastBlock = eventsBlock[event]?.lastBlock ?? initialBlockNumber ?? await this.getInitialBlockNumber();
139
+ let ranges = eventsBlock[event]?.ranges ?? [];
128
140
  return {
129
141
  event: event,
130
- lastBlock: blockNr
142
+ lastBlock: lastBlock,
143
+ ranges: ranges,
144
+ filterKey: opts?.filterKey
131
145
  };
132
- });
133
- let hasInitialBlock = logsMeta.every(x => x.lastBlock != null);
134
- if (hasInitialBlock === false) {
135
- let blockNr = opts?.fromBlock ?? await this.getInitialBlockNumber();
136
- logsMeta.filter(x => x.lastBlock == null).forEach(x => x.lastBlock = blockNr);
137
- }
138
- let ranges = [];
139
- let blockNumbers = [...logsMeta.map(x => x.lastBlock), toBlock].filter(x => x <= toBlock);
140
- let blockNumberSteps = alot(blockNumbers).distinct().sortBy(x => x).toArray();
141
- if (blockNumberSteps.length === 1) {
142
- let [block] = blockNumberSteps;
143
- ranges.push({
144
- fromBlock: block,
145
- toBlock: block,
146
- events: events
147
- });
148
- }
149
- for (let i = 0; i < blockNumberSteps.length - 1; i++) {
150
- let from = blockNumberSteps[i];
151
- if (i > 0) {
152
- // The range includes both blocks: [x, y], but we want (x, y], so we make [x + 1, y]
153
- from += 1;
154
- }
155
- let to = blockNumberSteps[i + 1];
156
- let events = logsMeta.filter(x => x.lastBlock < to).map(x => x.event);
157
- ranges.push({
146
+ }).toArrayAsync();
147
+ let intersactionRange = PackedRanges.intersection(logsMeta.map(x => x.ranges));
148
+ let rangesToLoad = PackedRanges.subtract([[fromBlock, toBlock]], intersactionRange);
149
+ let ranges = rangesToLoad.map(([from, to]) => {
150
+ return {
158
151
  fromBlock: from,
159
152
  toBlock: to,
160
- events: events
161
- });
162
- }
163
- return ranges;
153
+ events: events,
154
+ filterKey: opts?.filterKey
155
+ };
156
+ });
157
+ return {
158
+ fromBlock,
159
+ load: ranges,
160
+ current: logsMeta,
161
+ };
164
162
  }
163
+ // Save indexed logs every 2 minutes
165
164
  async getPastLogsRanges(ranges, events, toBlock, fromBlock, options) {
166
- // Save indexed logs every 2 minutes
167
165
  const PERSIST_INTERVAL = $date.parseTimespan('2min');
168
166
  // Save indexed logs every 10k logs
169
167
  const PERSIST_COUNT = 10000;
168
+ fromBlock ??= ranges.fromBlock ?? 0;
170
169
  let time = Date.now();
171
170
  let contract = this.contract;
172
171
  let buffer = [];
173
172
  let isStreamed = options?.streamed ?? false;
173
+ let infos = {
174
+ cached: 0,
175
+ fetched: 0,
176
+ };
177
+ let cachedStreamedBuffer = [];
174
178
  if (isStreamed && typeof options?.onProgress === 'function') {
175
- let arr = await this.getItemsFromStore({
179
+ cachedStreamedBuffer = await this.getItemsFromStore({
176
180
  fromBlock: fromBlock,
177
- toBlock: toBlock,
181
+ toBlock: toBlock + 1,
178
182
  events,
179
183
  params: options?.params,
180
184
  });
181
- if (arr?.length > 0) {
182
- let lastBlock = arr[arr.length - 1].blockNumber;
183
- await options.onProgress({
184
- logs: arr,
185
- paged: arr,
186
- completed: false,
187
- blocksPerSecond: 0,
188
- blocks: { total: 0, loaded: 0 },
189
- timeLeftSeconds: 0,
190
- latestBlock: lastBlock
191
- });
192
- // if (fromBlock != null) {
193
- // let latestFromStorage = alot(arr).max(x => x.blockNumber);
194
- // fromBlock = latestFromStorage + 1;
195
- // if (toBlock != null && fromBlock >= toBlock) {
196
- // // we got all from storage
197
- // return;
198
- // }
199
- // }
200
- // Adjust ranges to skip blocks already in storage
201
- for (let i = 0; i < ranges.length; i++) {
202
- let range = ranges[i];
203
- if (range.toBlock <= lastBlock) {
204
- ranges.splice(i, 1);
205
- i--;
206
- continue;
207
- }
208
- if (range.fromBlock < lastBlock) {
209
- range.fromBlock = lastBlock + 1;
210
- }
211
- }
212
- }
185
+ infos.cached = cachedStreamedBuffer.length;
186
+ // Note: we don't emit progress right away to keep the order in progress callback
187
+ // Consider: we have blocks [100-150] in cache
188
+ // Requesting range: [50-200]
189
+ // Later we fetch [50-100) and (150-200]
190
+ // The cached response will be inserted after block.100 to keep consistent order
191
+ // if (arr?.length > 0) {
192
+ // let lastBlock = arr[arr.length - 1].blockNumber;
193
+ // await options.onProgress({
194
+ // logs: arr,
195
+ // paged: arr,
196
+ // completed: false,
197
+ // blocksPerSecond: 0,
198
+ // blocks: { total: 0, loaded: 0 },
199
+ // timeLeftSeconds: 0,
200
+ // latestBlock: lastBlock
201
+ // });
202
+ // }
213
203
  }
214
204
  let bufferCount = 0;
215
205
  let savedCount = 0;
@@ -217,8 +207,8 @@ export class EventsIndexer {
217
207
  let nodeStats = Date.now();
218
208
  let uniqueCount = 0;
219
209
  let unique = {};
220
- for (let i = 0; i < ranges.length; i++) {
221
- let range = ranges[i];
210
+ for (let i = 0; i < ranges.load.length; i++) {
211
+ let range = ranges.load[i];
222
212
  let { fromBlock, toBlock, events: rangeEvents } = range;
223
213
  let fetched = await contract.getPastLogs(rangeEvents?.length > 0 ? rangeEvents : events, {
224
214
  streamed: options?.streamed,
@@ -227,11 +217,12 @@ export class EventsIndexer {
227
217
  toBlock: toBlock,
228
218
  blockRangeLimits: options?.blockRangeLimits,
229
219
  params: options?.params,
230
- onProgress: async (info) => {
220
+ onProgress: async (chunk) => {
231
221
  onProgressCount++;
232
- buffer.push(...info.logs);
233
- bufferCount += info.logs.length;
234
- for (let log of info.logs) {
222
+ buffer.push(...chunk.logs);
223
+ bufferCount += chunk.logs.length;
224
+ infos.fetched += chunk.logs.length;
225
+ for (let log of chunk.logs) {
235
226
  let key = log.id + '';
236
227
  if (key in unique) {
237
228
  uniqueCount += 1;
@@ -243,9 +234,9 @@ export class EventsIndexer {
243
234
  nodeStats = Date.now();
244
235
  l `OnProgressCalled cyan<${onProgressCount}> BufferCount cyan<${bufferCount}> SavedCount cyan<${savedCount}> Unique `;
245
236
  }
246
- let isCompleted = i < ranges.length - 1
237
+ let isCompleted = i < ranges.load.length - 1
247
238
  ? false
248
- : info.completed;
239
+ : chunk.completed;
249
240
  let now = Date.now();
250
241
  let shouldPersist = isCompleted === true;
251
242
  let shouldTimePersist = now - time >= PERSIST_INTERVAL;
@@ -255,21 +246,60 @@ export class EventsIndexer {
255
246
  buffer = [];
256
247
  time = now;
257
248
  savedCount += arr.length;
258
- await this.upsert(arr, events, info.latestBlock, options);
249
+ await this.upsert(arr, events, ranges, fromBlock, chunk.latestBlock, options);
259
250
  }
260
251
  if (options?.onProgress) {
261
252
  // completed must be set to true only when the last Range completes
262
- info.completed = isCompleted;
263
- await options.onProgress(info);
253
+ chunk.completed = isCompleted;
254
+ if (cachedStreamedBuffer.length > 0) {
255
+ if (chunk.logs.length > 0) {
256
+ // Preserve the order of logs in progress callback:
257
+ // insert cached.blockNumber < fetched.blockNumber first
258
+ let [first] = chunk.logs;
259
+ let i = 0;
260
+ for (; i < cachedStreamedBuffer.length; i++) {
261
+ let x = cachedStreamedBuffer[i];
262
+ if (x.blockNumber > first.blockNumber) {
263
+ break;
264
+ }
265
+ }
266
+ if (i > 0) {
267
+ let before = cachedStreamedBuffer.splice(0, i);
268
+ chunk.logs = before.concat(chunk.logs);
269
+ }
270
+ }
271
+ if (isCompleted) {
272
+ // insert everything left from cache
273
+ chunk.logs = chunk.logs.concat(cachedStreamedBuffer);
274
+ cachedStreamedBuffer = [];
275
+ }
276
+ }
277
+ await options.onProgress({
278
+ ...chunk,
279
+ infos,
280
+ });
264
281
  }
265
282
  }
266
283
  });
267
284
  if (buffer.length > 0) {
268
- await this.upsert(buffer, events, toBlock, options);
285
+ await this.upsert(buffer, events, ranges, fromBlock, toBlock, options);
269
286
  }
270
287
  }
271
- // Upsert final, if buffer is empty, we still persist the "toBlock" value
272
- await this.upsert(buffer, events, toBlock, options);
288
+ // Upsert final, if buffer is empty, we still persist the "toBlock" value and the ranges
289
+ await this.upsert(buffer, events, ranges, fromBlock, toBlock, options);
290
+ if (isStreamed && typeof options?.onProgress === 'function' && cachedStreamedBuffer.length > 0) {
291
+ let lastBlock = cachedStreamedBuffer[cachedStreamedBuffer.length - 1].blockNumber;
292
+ await options.onProgress({
293
+ logs: cachedStreamedBuffer,
294
+ paged: cachedStreamedBuffer,
295
+ completed: true,
296
+ blocksPerSecond: 0,
297
+ blocks: { total: 0, loaded: 0 },
298
+ timeLeftSeconds: 0,
299
+ latestBlock: lastBlock,
300
+ infos,
301
+ });
302
+ }
273
303
  if (isStreamed === true) {
274
304
  return;
275
305
  }
@@ -279,7 +309,12 @@ export class EventsIndexer {
279
309
  events: events,
280
310
  params: options?.params
281
311
  });
282
- return logs;
312
+ infos.fetched = bufferCount;
313
+ infos.cached = logs.length - infos.fetched;
314
+ return {
315
+ logs,
316
+ infos,
317
+ };
283
318
  }
284
319
  async getItemsFromStore(filter) {
285
320
  let arr = await this.store.fetch(filter);
@@ -290,7 +325,7 @@ export class EventsIndexer {
290
325
  }
291
326
  let filterKey = this.getFilterKey(filter.params);
292
327
  arr = arr.filter(x => x.filterKey == filterKey);
293
- return arr;
328
+ return alot(arr).sortBy(x => x.id).toArray();
294
329
  }
295
330
  getFilterKey(params) {
296
331
  if (params == null) {
@@ -311,7 +346,7 @@ export class EventsIndexer {
311
346
  }
312
347
  return 0;
313
348
  }
314
- async upsert(logs, events, latestBlock, options) {
349
+ async upsert(logs, events, ranges, fromBlock, latestBlock, options) {
315
350
  let filterKey = this.getFilterKey(options?.params);
316
351
  if (logs?.length > 0) {
317
352
  for (let log of logs) {
@@ -319,11 +354,21 @@ export class EventsIndexer {
319
354
  }
320
355
  await this.store.upsertMany(logs);
321
356
  }
322
- const logsMeta = events.map(event => ({
323
- event,
324
- lastBlock: latestBlock,
325
- filterKey: filterKey,
326
- }));
357
+ const logsMeta = events.map(event => {
358
+ let currentMeta = ranges
359
+ .current
360
+ .find(x => x.event === event);
361
+ let arr = PackedRanges.union([
362
+ currentMeta?.ranges ?? [],
363
+ [[fromBlock, latestBlock]]
364
+ ]);
365
+ return {
366
+ event,
367
+ lastBlock: latestBlock,
368
+ filterKey: filterKey,
369
+ ranges: arr,
370
+ };
371
+ });
327
372
  await this.storeMeta.upsertMany(logsMeta);
328
373
  }
329
374
  }
@@ -1 +1 @@
1
- {"version":3,"file":"RpcContract.js","sourceRoot":"","sources":["../../../src/rpc/RpcContract.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RpcContract.js","sourceRoot":"","sources":["../../../src/rpc/RpcContract.ts"],"names":[],"mappings":"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"}
@@ -58,33 +58,41 @@ export class RpcContract {
58
58
  return alot(requests).mapAsync(req => this.getCallRequestRaw(req)).toArrayAsync();
59
59
  }
60
60
  async getCallRequestRaw(request) {
61
- let address = request.address ?? this.defaults?.address;
61
+ let { tx, abiItem, blockNumber } = await RpcContract.createCalldata(request, this.defaults);
62
+ let rpc = new Rpc();
63
+ return {
64
+ methodRequest: rpc.req.eth_call(tx, blockNumber ?? 'latest'),
65
+ methodAbi: abiItem
66
+ };
67
+ }
68
+ static async createCalldata(request, options) {
69
+ let address = request.address ?? options?.address;
62
70
  $require.Address(address);
63
71
  let data = request.data;
64
72
  let { abi, method, params, blockNumber } = request;
65
- let abiArr = $web3Abi.ensureAbis(abi ?? this.defaults?.abi);
73
+ let abiArr = $web3Abi.ensureAbis(abi ?? options?.abi);
66
74
  let abiItem = abiArr?.find(x => x.name === method);
67
75
  if (abiItem == null) {
68
- abiItem = this.defaults?.abi?.find(x => x.name === method);
76
+ abiItem = options?.abi?.find(x => x.name === method);
69
77
  }
70
78
  if (data == null) {
71
79
  $require.notNull(abiItem, `Method ${method} not found. Available methods: ${abiArr?.map(x => x.name)}`);
72
80
  data = $abiUtils.serializeMethodCallData(abiItem, params ?? []);
73
81
  }
74
82
  if (blockNumber instanceof Date) {
75
- let resolver = di.resolve(BlockDateResolver, this.client);
83
+ let client = $require.notNull(options?.client, `Blocknumber is Date: ${blockNumber}, Client is required.`);
84
+ let resolver = di.resolve(BlockDateResolver, client);
76
85
  blockNumber = await resolver.getBlockNumberFor(blockNumber);
77
86
  }
78
- let tx = {
79
- from: request.from ?? void 0,
80
- to: address,
81
- value: $hex.ensure(request.value ?? 0n),
82
- data: data,
83
- };
84
- let rpc = new Rpc();
85
87
  return {
86
- methodRequest: rpc.req.eth_call(tx, blockNumber ?? 'latest'),
87
- methodAbi: abiItem
88
+ tx: {
89
+ from: request.from ?? void 0,
90
+ to: address,
91
+ value: $hex.ensure(request.value ?? 0n),
92
+ data: data,
93
+ },
94
+ abiItem,
95
+ blockNumber
88
96
  };
89
97
  }
90
98
  }
@@ -1 +1 @@
1
- {"version":3,"file":"GnosisSafeHandler.js","sourceRoot":"","sources":["../../../src/safe/GnosisSafeHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"GnosisSafeHandler.js","sourceRoot":"","sources":["../../../src/safe/GnosisSafeHandler.ts"],"names":[],"mappings":"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"}
@@ -112,7 +112,7 @@ export class GnosisSafeHandler {
112
112
  baseGas: 0,
113
113
  gasToken: $address.ZERO,
114
114
  refundReceiver: $address.ZERO,
115
- nonce: safeInfo.nonce,
115
+ nonce: $require.Number(Number(safeInfo.nonce) + Number(safeInfo.pending ?? 0)),
116
116
  gasPrice: 0,
117
117
  };
118
118
  let safeTxHash = await this.getTransactionHash({
@@ -1 +1 @@
1
- {"version":3,"file":"SafeServiceTransport.js","sourceRoot":"","sources":["../../../../src/safe/transport/SafeServiceTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SafeServiceTransport.js","sourceRoot":"","sources":["../../../../src/safe/transport/SafeServiceTransport.ts"],"names":[],"mappings":"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"}
@@ -82,9 +82,19 @@ class SafeServiceClientInner {
82
82
  return data;
83
83
  }
84
84
  async getSafeInfo(safeAddress) {
85
- let url = `${this.params.txServiceUrl}/api/v1/safes/${safeAddress}`;
86
- let { data } = await $http.get(url);
87
- return data;
85
+ let safeUrl = `${this.params.txServiceUrl}/api/v1/safes/${safeAddress}`;
86
+ let { data: safeInfo } = await $http.get(safeUrl);
87
+ let pendingUrl = `${this.params.txServiceUrl}/api/v1/safes/${safeAddress}/multisig-transactions/?executed=false&ordering=-nonce&limit=1`;
88
+ let { data: pendingTxs } = await $http.get(pendingUrl);
89
+ let nonce = Number(safeInfo.nonce);
90
+ let pending = 0;
91
+ if (pendingTxs.results?.length > 0) {
92
+ pending = $require.Number(Number(pendingTxs.results[0].nonce) + 1 - nonce);
93
+ }
94
+ return {
95
+ ...safeInfo,
96
+ pending
97
+ };
88
98
  }
89
99
  async estimateSafeTransaction(safeAddress, safeTransaction) {
90
100
  let url = `${this.params.txServiceUrl}/api/v1/safes/${safeAddress}/multisig-transactions/estimations/`;