@lidofinance/lsv-cli 1.0.0-alpha.60 → 1.0.0-alpha.61

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 (114) hide show
  1. package/README.md +25 -13
  2. package/dist/abi/LazyOracle.d.ts +14 -26
  3. package/dist/abi/LazyOracle.js +18 -34
  4. package/dist/abi/LazyOracle.js.map +1 -1
  5. package/dist/abi/VaultViewer.d.ts +173 -86
  6. package/dist/abi/VaultViewer.js +212 -100
  7. package/dist/abi/VaultViewer.js.map +1 -1
  8. package/dist/command/index.js +2 -0
  9. package/dist/command/index.js.map +1 -1
  10. package/dist/configs/constants.d.ts +1 -0
  11. package/dist/contracts/vault-viewer.d.ts +3651 -1529
  12. package/dist/contracts/vault-viewer.js +1 -1
  13. package/dist/features/deposits/no-pdg.js +5 -5
  14. package/dist/features/deposits/no-pdg.js.map +1 -1
  15. package/dist/features/mint-burn/allowance.js +1 -1
  16. package/dist/features/mint-burn/allowance.js.map +1 -1
  17. package/dist/features/utils/get-address.js +1 -1
  18. package/dist/features/utils/get-address.js.map +1 -1
  19. package/dist/features/vault-operations/create-vault.js +2 -2
  20. package/dist/features/vault-operations/create-vault.js.map +1 -1
  21. package/dist/features/vault-operations/vault-roles.js +4 -2
  22. package/dist/features/vault-operations/vault-roles.js.map +1 -1
  23. package/dist/features/vault-operations/vaults-by-role.d.ts +0 -2
  24. package/dist/features/vault-operations/vaults-by-role.js +8 -6
  25. package/dist/features/vault-operations/vaults-by-role.js.map +1 -1
  26. package/dist/programs/account/read.js +3 -3
  27. package/dist/programs/account/read.js.map +1 -1
  28. package/dist/programs/account/write.js +13 -5
  29. package/dist/programs/account/write.js.map +1 -1
  30. package/dist/programs/contracts/dashboard/read.js +1 -1
  31. package/dist/programs/contracts/dashboard/read.js.map +1 -1
  32. package/dist/programs/contracts/dashboard/write.js +18 -1
  33. package/dist/programs/contracts/dashboard/write.js.map +1 -1
  34. package/dist/programs/contracts/index.d.ts +1 -0
  35. package/dist/programs/contracts/index.js +1 -0
  36. package/dist/programs/contracts/index.js.map +1 -1
  37. package/dist/programs/contracts/lazy-oracle/config.d.ts +3 -0
  38. package/dist/programs/contracts/lazy-oracle/config.js +57 -0
  39. package/dist/programs/contracts/lazy-oracle/config.js.map +1 -0
  40. package/dist/programs/contracts/lazy-oracle/index.d.ts +2 -0
  41. package/dist/programs/contracts/lazy-oracle/index.js +3 -0
  42. package/dist/programs/contracts/lazy-oracle/index.js.map +1 -0
  43. package/dist/programs/contracts/lazy-oracle/main.d.ts +1 -0
  44. package/dist/programs/contracts/lazy-oracle/main.js +5 -0
  45. package/dist/programs/contracts/lazy-oracle/main.js.map +1 -0
  46. package/dist/programs/contracts/lazy-oracle/read.d.ts +1 -0
  47. package/dist/programs/contracts/lazy-oracle/read.js +17 -0
  48. package/dist/programs/contracts/lazy-oracle/read.js.map +1 -0
  49. package/dist/programs/contracts/operator-grid/write.js +4 -4
  50. package/dist/programs/contracts/operator-grid/write.js.map +1 -1
  51. package/dist/programs/contracts/pdg/write.js +2 -2
  52. package/dist/programs/contracts/pdg/write.js.map +1 -1
  53. package/dist/programs/contracts/vault-viewer/read.js +4 -4
  54. package/dist/programs/contracts/vault-viewer/read.js.map +1 -1
  55. package/dist/programs/use-cases/deposits/read.js +1 -1
  56. package/dist/programs/use-cases/deposits/read.js.map +1 -1
  57. package/dist/programs/use-cases/metrics/read.js +64 -6
  58. package/dist/programs/use-cases/metrics/read.js.map +1 -1
  59. package/dist/programs/use-cases/report/write.js +43 -62
  60. package/dist/programs/use-cases/report/write.js.map +1 -1
  61. package/dist/programs/use-cases/vault-operations/write.js +30 -8
  62. package/dist/programs/use-cases/vault-operations/write.js.map +1 -1
  63. package/dist/providers/wallet.d.ts +7670 -3
  64. package/dist/providers/wallet.js +25 -5
  65. package/dist/providers/wallet.js.map +1 -1
  66. package/dist/tests/utils/ipfs.test.js +22 -10
  67. package/dist/tests/utils/ipfs.test.js.map +1 -1
  68. package/dist/types/config.d.ts +1 -0
  69. package/dist/utils/charts/blessed/datasets/prepare-metrics.d.ts +4 -0
  70. package/dist/utils/charts/blessed/datasets/prepare-metrics.js +15 -1
  71. package/dist/utils/charts/blessed/datasets/prepare-metrics.js.map +1 -1
  72. package/dist/utils/commands/confirmations.d.ts +2 -2
  73. package/dist/utils/commands/confirmations.js +3 -4
  74. package/dist/utils/commands/confirmations.js.map +1 -1
  75. package/dist/utils/csv-file.d.ts +6 -0
  76. package/dist/utils/csv-file.js +48 -0
  77. package/dist/utils/csv-file.js.map +1 -0
  78. package/dist/utils/index.d.ts +3 -1
  79. package/dist/utils/index.js +3 -1
  80. package/dist/utils/index.js.map +1 -1
  81. package/dist/utils/ipfs.js +1 -1
  82. package/dist/utils/ipfs.js.map +1 -1
  83. package/dist/utils/logging/console.d.ts +1 -0
  84. package/dist/utils/logging/console.js +9 -1
  85. package/dist/utils/logging/console.js.map +1 -1
  86. package/dist/utils/report/report-proof.d.ts +3 -0
  87. package/dist/utils/report/report-proof.js +2 -2
  88. package/dist/utils/report/report-proof.js.map +1 -1
  89. package/dist/utils/report/report.d.ts +1 -1
  90. package/dist/utils/report/report.js +5 -4
  91. package/dist/utils/report/report.js.map +1 -1
  92. package/dist/utils/report/types.d.ts +1 -0
  93. package/dist/utils/timestamp.d.ts +1 -1
  94. package/dist/utils/timestamp.js +9 -2
  95. package/dist/utils/timestamp.js.map +1 -1
  96. package/dist/utils/transactions/index.d.ts +3 -0
  97. package/dist/utils/transactions/index.js +4 -0
  98. package/dist/utils/transactions/index.js.map +1 -0
  99. package/dist/utils/transactions/tx-private-key.d.ts +26 -0
  100. package/dist/utils/{contract.js → transactions/tx-private-key.js} +105 -9
  101. package/dist/utils/transactions/tx-private-key.js.map +1 -0
  102. package/dist/utils/transactions/tx-wc.d.ts +34 -0
  103. package/dist/utils/transactions/tx-wc.js +174 -0
  104. package/dist/utils/transactions/tx-wc.js.map +1 -0
  105. package/dist/utils/transactions/types.d.ts +40 -0
  106. package/dist/utils/transactions/types.js +2 -0
  107. package/dist/utils/transactions/types.js.map +1 -0
  108. package/dist/utils/wallet-connect.d.ts +7677 -0
  109. package/dist/utils/wallet-connect.js +179 -0
  110. package/dist/utils/wallet-connect.js.map +1 -0
  111. package/dist/version/index.js +1 -1
  112. package/package.json +9 -5
  113. package/dist/utils/contract.d.ts +0 -59
  114. package/dist/utils/contract.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../utils/report/report.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../../utils/report/report.ts"],"names":[],"mappings":"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"}
@@ -41,6 +41,7 @@ export type VaultReport = {
41
41
  blockNumber: number;
42
42
  timestamp: number;
43
43
  prevTreeCID: string;
44
+ cid: string;
44
45
  };
45
46
  export type VaultReportArgs = {
46
47
  vault: Address;
@@ -1 +1 @@
1
- export declare const formatTimestamp: (ts: number, format?: string) => string;
1
+ export declare const formatTimestamp: (ts: number, format?: string, timeZone?: string) => string;
@@ -1,10 +1,17 @@
1
- export const formatTimestamp = (ts, format = 'dd.mm.yyyy hh:mm') => {
1
+ export const formatTimestamp = (ts, format = 'dd.mm.yyyy hh:mm', timeZone = 'UTC') => {
2
2
  const d = new Date(ts * 1000);
3
- return format
3
+ if (timeZone === 'UTC') {
4
+ d.setHours(d.getHours() + d.getTimezoneOffset() / 60);
5
+ }
6
+ else {
7
+ d.setHours(d.getHours());
8
+ }
9
+ const date = format
4
10
  .replace('dd', String(d.getDate()).padStart(2, '0'))
5
11
  .replace('mm', String(d.getMonth() + 1).padStart(2, '0'))
6
12
  .replace('yyyy', String(d.getFullYear()))
7
13
  .replace('hh', String(d.getHours()).padStart(2, '0'))
8
14
  .replace('mm', String(d.getMinutes()).padStart(2, '0'));
15
+ return `${date} ${timeZone}`;
9
16
  };
10
17
  //# sourceMappingURL=timestamp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"timestamp.js","sourceRoot":"","sources":["../../utils/timestamp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAAU,EACV,MAAM,GAAG,kBAAkB,EACnB,EAAE;IACV,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAE9B,OAAO,MAAM;SACV,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACnD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACxD,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;SACxC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACpD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC"}
1
+ {"version":3,"file":"timestamp.js","sourceRoot":"","sources":["../../utils/timestamp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAAU,EACV,MAAM,GAAG,kBAAkB,EAC3B,QAAQ,GAAG,KAAK,EACR,EAAE;IACV,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC;IAE9B,IAAI,QAAQ,KAAK,KAAK,EAAE,CAAC;QACvB,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,iBAAiB,EAAE,GAAG,EAAE,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC3B,CAAC;IAED,MAAM,IAAI,GAAG,MAAM;SAChB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACnD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACxD,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;SACxC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;SACpD,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;IAE1D,OAAO,GAAG,IAAI,IAAI,QAAQ,EAAE,CAAC;AAC/B,CAAC,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './tx-private-key.js';
2
+ export * from './tx-wc.js';
3
+ export * from './types.js';
@@ -0,0 +1,4 @@
1
+ export * from './tx-private-key.js';
2
+ export * from './tx-wc.js';
3
+ export * from './types.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../utils/transactions/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { Address, SimulateContractReturnType, TransactionReceipt } from 'viem';
2
+ import { PartialContract, ReadContract, Writeable, GetFirst, PopulatedTx, BatchTxArgs, WriteTxArgs } from './types.js';
3
+ export declare const callSimulateWriteMethod: <T extends PartialContract, M extends keyof T["simulate"] & string>(args: WriteTxArgs<T, M>) => Promise<SimulateContractReturnType>;
4
+ export declare const callWriteMethod: <T extends PartialContract, M extends keyof T["write"] & string>(args: WriteTxArgs<T, M>) => Promise<Address>;
5
+ export declare const callReadMethod: <T extends ReadContract, M extends keyof T["read"] & string>(contract: T, methodName: M, ...payload: [...Parameters<T["read"][M]>, {
6
+ silent?: boolean;
7
+ }?]) => Promise<ReturnType<T["read"][M]>>;
8
+ export declare const callReadMethodSilent: <T extends ReadContract, M extends keyof T["read"] & string>(contract: T, methodName: M, ...payload: Parameters<T["read"][M]>) => Promise<ReturnType<T["read"][M]>>;
9
+ export declare const isContractAddress: (address: Address) => Promise<boolean>;
10
+ export declare const populateWriteTx: <T extends PartialContract, M extends keyof T["write"] & string>(args: {
11
+ contract: T;
12
+ methodName: M;
13
+ payload: Writeable<GetFirst<Parameters<T["write"][M]>>> | never[];
14
+ value?: bigint;
15
+ }) => PopulatedTx;
16
+ export declare const callWriteMethodWithReceipt: <T extends PartialContract, M extends keyof T["write"] & string>(args: WriteTxArgs<T, M>) => Promise<{
17
+ receipt: TransactionReceipt;
18
+ tx: Address;
19
+ }>;
20
+ export declare const callWriteMethodWithReceiptBatchCalls: (args: {
21
+ calls: PopulatedTx[];
22
+ withSpinner?: boolean;
23
+ silent?: boolean;
24
+ skipError?: boolean;
25
+ }) => Promise<void>;
26
+ export declare const callWriteMethodWithReceiptBatchPayloads: <T extends PartialContract, M extends keyof T["write"] & string>(args: BatchTxArgs<T, M>) => Promise<void>;
@@ -1,9 +1,11 @@
1
1
  import { encodeFunctionData, } from 'viem';
2
2
  import { waitForTransactionReceipt } from 'viem/actions';
3
- import { program } from '../command/index.js';
4
- import { getAccount, getPublicClient } from '../providers/index.js';
5
- import { getChain } from '../configs/index.js';
6
- import { showSpinner, printError, logResult, logInfo } from './index.js';
3
+ import { program } from '../../command/index.js';
4
+ import cliProgress from 'cli-progress';
5
+ import { getAccount, getPublicClient, getWalletWithAccount } from '../../providers/index.js';
6
+ import { getChain } from '../../configs/index.js';
7
+ import { showSpinner, printError, logResult, logInfo } from '../index.js';
8
+ import { callWCWriteMethodWithReceipt, callWCWriteMethodWithReceiptPayloads, } from './tx-wc.js';
7
9
  export const callSimulateWriteMethod = async (args) => {
8
10
  const { contract, methodName, payload, value, withSpinner = true, skipError = false, } = args;
9
11
  const hideSpinner = withSpinner
@@ -15,7 +17,7 @@ export const callSimulateWriteMethod = async (args) => {
15
17
  try {
16
18
  const method = contract.simulate[methodName];
17
19
  const result = await method?.(payload, {
18
- account: getAccount(),
20
+ account: await getAccount(),
19
21
  chain: getChain(),
20
22
  value,
21
23
  });
@@ -52,7 +54,7 @@ export const callWriteMethod = async (args) => {
52
54
  try {
53
55
  const method = contract.write[methodName];
54
56
  const tx = await method?.(payload, {
55
- account: getAccount(),
57
+ account: await getAccount(),
56
58
  chain: getChain(),
57
59
  value,
58
60
  });
@@ -139,7 +141,7 @@ export const isContractAddress = async (address) => {
139
141
  });
140
142
  return bytecode !== undefined && bytecode !== '0x';
141
143
  };
142
- export const populateWriteTx = async (args) => {
144
+ export const populateWriteTx = (args) => {
143
145
  const { contract, methodName, payload, value } = args;
144
146
  return {
145
147
  to: contract.address,
@@ -154,7 +156,7 @@ export const populateWriteTx = async (args) => {
154
156
  export const callWriteMethodWithReceipt = async (args) => {
155
157
  const { contract, methodName, payload, value, withSpinner = true, silent = false, skipError = false, } = args;
156
158
  if (program.opts().populateTx) {
157
- const data = await populateWriteTx({
159
+ const data = populateWriteTx({
158
160
  contract,
159
161
  methodName,
160
162
  payload,
@@ -170,6 +172,22 @@ export const callWriteMethodWithReceipt = async (args) => {
170
172
  });
171
173
  return { receipt: undefined, tx: data };
172
174
  }
175
+ if (program.opts().walletConnect) {
176
+ const data = await callWCWriteMethodWithReceipt({
177
+ calls: [
178
+ populateWriteTx({
179
+ contract,
180
+ methodName,
181
+ payload,
182
+ value,
183
+ }),
184
+ ],
185
+ withSpinner,
186
+ silent,
187
+ skipError,
188
+ });
189
+ return { receipt: data.receipt, tx: data.txHash };
190
+ }
173
191
  const publicClient = getPublicClient();
174
192
  const tx = await callWriteMethod({
175
193
  contract,
@@ -211,4 +229,82 @@ export const callWriteMethodWithReceipt = async (args) => {
211
229
  throw err;
212
230
  }
213
231
  };
214
- //# sourceMappingURL=contract.js.map
232
+ export const callWriteMethodWithReceiptBatchCalls = async (args) => {
233
+ const { calls, withSpinner = true, silent = false, skipError = false } = args;
234
+ if (program.opts().walletConnect) {
235
+ await callWCWriteMethodWithReceipt({
236
+ calls,
237
+ withSpinner,
238
+ silent,
239
+ skipError,
240
+ });
241
+ return;
242
+ }
243
+ const publicClient = getPublicClient();
244
+ const walletClient = await getWalletWithAccount();
245
+ if (!walletClient.account) {
246
+ throw new Error('No account found');
247
+ }
248
+ const simulateResult = await publicClient.simulateCalls({
249
+ account: walletClient.account,
250
+ calls,
251
+ });
252
+ if (simulateResult.results.some((r) => r.error)) {
253
+ throw new Error('Simulation failed');
254
+ }
255
+ for (const call of calls) {
256
+ const tx = await walletClient.sendTransaction({
257
+ account: walletClient.account,
258
+ chain: getChain(),
259
+ to: call.to,
260
+ data: call.data,
261
+ value: call.value,
262
+ });
263
+ const hideSpinner = withSpinner
264
+ ? showSpinner({
265
+ type: 'bouncingBar',
266
+ message: 'Waiting for transaction receipt...',
267
+ })
268
+ : () => { };
269
+ const receipt = await waitForTransactionReceipt(publicClient, {
270
+ hash: tx,
271
+ confirmations: 3,
272
+ });
273
+ hideSpinner();
274
+ !silent &&
275
+ logResult({
276
+ data: [
277
+ ['Call data', call.data],
278
+ ['Contract', call.to],
279
+ ['Transaction status', receipt.status],
280
+ ['Transaction block number', Number(receipt.blockNumber)],
281
+ ['Transaction gas used', Number(receipt.gasUsed)],
282
+ ],
283
+ });
284
+ }
285
+ };
286
+ export const callWriteMethodWithReceiptBatchPayloads = async (args) => {
287
+ const { contract, methodName, payloads, values, withSpinner = true, silent = false, skipError = false, } = args;
288
+ if (program.opts().walletConnect) {
289
+ await callWCWriteMethodWithReceiptPayloads(args);
290
+ return;
291
+ }
292
+ const progressBar = new cliProgress.SingleBar({
293
+ format: 'Progress |{bar}| {percentage}% || {value}/{total} Vaults Updated',
294
+ }, cliProgress.Presets.shades_classic);
295
+ progressBar.start(payloads.length, 0);
296
+ for (const [index, payload] of payloads.entries()) {
297
+ await callWriteMethodWithReceipt({
298
+ contract,
299
+ methodName,
300
+ payload,
301
+ value: values?.[index] ?? 0n,
302
+ withSpinner,
303
+ silent,
304
+ skipError,
305
+ });
306
+ progressBar.increment();
307
+ }
308
+ progressBar.stop();
309
+ };
310
+ //# sourceMappingURL=tx-private-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tx-private-key.js","sourceRoot":"","sources":["../../../utils/transactions/tx-private-key.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import { Hex, SimulateCallsReturnType } from 'viem';
2
+ import { PartialContract, PopulatedTx, BatchTxArgs } from './types.js';
3
+ export declare const PROVIDER_POLLING_INTERVAL = 12000;
4
+ export declare const AA_TX_POLLING_TIMEOUT = 180000;
5
+ export declare const simulateWCWriteTx: (args: {
6
+ calls: PopulatedTx[];
7
+ withSpinner?: boolean;
8
+ skipError?: boolean;
9
+ }) => Promise<SimulateCallsReturnType<PopulatedTx[]>>;
10
+ export declare const callWCWriteMethodWithReceipt: (args: {
11
+ calls: PopulatedTx[];
12
+ withSpinner?: boolean;
13
+ silent?: boolean;
14
+ skipError?: boolean;
15
+ }) => Promise<{
16
+ id: Hex;
17
+ callStatus: {
18
+ version: string;
19
+ atomic: boolean;
20
+ capabilities?: {
21
+ [key: string]: any;
22
+ } | {
23
+ [x: string]: any;
24
+ } | undefined;
25
+ chainId: number;
26
+ id: string;
27
+ receipts?: import("viem").WalletCallReceipt<bigint, "success" | "reverted">[] | undefined;
28
+ statusCode: number;
29
+ status: "pending" | "success" | "failure" | undefined;
30
+ };
31
+ txHash: `0x${string}`;
32
+ receipt: import("viem").TransactionReceipt;
33
+ }>;
34
+ export declare const callWCWriteMethodWithReceiptPayloads: <T extends PartialContract, M extends keyof T["write"] & string>(args: BatchTxArgs<T, M>) => Promise<void>;
@@ -0,0 +1,174 @@
1
+ import { encodeFunctionData } from 'viem';
2
+ import { waitForTransactionReceipt } from 'viem/actions';
3
+ import { getPublicClient, getWalletConnectClient } from '../../providers/index.js';
4
+ import { showSpinner, printError, logResult, disconnectWalletConnect, } from '../index.js';
5
+ export const PROVIDER_POLLING_INTERVAL = 12_000;
6
+ export const AA_TX_POLLING_TIMEOUT = 180_000; // 3 minutes
7
+ export const simulateWCWriteTx = async (args) => {
8
+ const { calls, withSpinner = true, skipError = false } = args;
9
+ const publicClient = getPublicClient();
10
+ const hideSpinner = withSpinner
11
+ ? showSpinner({
12
+ type: 'bouncingBall',
13
+ message: 'Simulating...',
14
+ })
15
+ : () => { };
16
+ try {
17
+ const walletConnectClient = await getWalletConnectClient();
18
+ const simulateResult = await publicClient.simulateCalls({
19
+ account: walletConnectClient.account,
20
+ calls,
21
+ });
22
+ if (simulateResult.results.some((r) => r.error)) {
23
+ throw new Error('Simulation failed');
24
+ }
25
+ hideSpinner();
26
+ return simulateResult;
27
+ }
28
+ catch (err) {
29
+ hideSpinner();
30
+ if (!skipError)
31
+ printError(err, 'Error when simulating write method');
32
+ throw err;
33
+ }
34
+ };
35
+ export const callWCWriteMethodWithReceipt = async (args) => {
36
+ const { calls, withSpinner = true, silent = false, skipError = false } = args;
37
+ const walletConnectClient = await getWalletConnectClient();
38
+ if (!walletConnectClient || !walletConnectClient.account) {
39
+ throw new Error('No wallet connect client found. Check your wallet and try again.');
40
+ }
41
+ const result = await callWalletConnectSendCalls({
42
+ calls,
43
+ withSpinner,
44
+ silent,
45
+ skipError,
46
+ });
47
+ !silent &&
48
+ logResult({
49
+ data: [
50
+ ['Batch calls', calls.length],
51
+ ['Batch ID', result.id],
52
+ ['Batch status', result.callStatus.status],
53
+ ['Transaction', result.txHash],
54
+ ['Transaction status', result.receipt.status],
55
+ ['Transaction block number', Number(result.receipt.blockNumber)],
56
+ ['Transaction gas used', Number(result.receipt.gasUsed)],
57
+ ],
58
+ });
59
+ return result;
60
+ };
61
+ export const callWCWriteMethodWithReceiptPayloads = async (args) => {
62
+ const { contract, methodName, payloads, values, withSpinner = true, silent = false, skipError = false, } = args;
63
+ if (!Array.isArray(payloads) || payloads.length === 0) {
64
+ throw new Error('payloads must be a non-empty array');
65
+ }
66
+ const calls = payloads.map((p, i) => ({
67
+ to: contract.address,
68
+ data: encodeFunctionData({
69
+ abi: contract.abi,
70
+ functionName: methodName,
71
+ args: p,
72
+ }),
73
+ value: values?.[i] ?? 0n,
74
+ }));
75
+ const result = await callWalletConnectSendCalls({
76
+ calls,
77
+ withSpinner,
78
+ silent,
79
+ skipError,
80
+ });
81
+ !silent &&
82
+ logResult({
83
+ data: [
84
+ ['Method name', methodName],
85
+ ['Contract', contract.address],
86
+ ['Batch calls', payloads.length],
87
+ ['Batch ID', result.id],
88
+ ['Batch status', result.callStatus.status],
89
+ ['Transaction', result.txHash],
90
+ ['Transaction status', result.receipt.status],
91
+ ['Transaction block number', Number(result.receipt.blockNumber)],
92
+ ['Transaction gas used', Number(result.receipt.gasUsed)],
93
+ ],
94
+ });
95
+ };
96
+ const callWalletConnectSendCalls = async (args) => {
97
+ const { calls, withSpinner = true, skipError = false } = args;
98
+ const isBatch = calls.length > 1;
99
+ if (!Array.isArray(calls) || calls.length === 0) {
100
+ throw new Error('calls must be a non-empty array');
101
+ }
102
+ try {
103
+ const walletConnectClient = await getWalletConnectClient();
104
+ if (!walletConnectClient || !walletConnectClient.account) {
105
+ throw new Error('No wallet connect client found. Check your wallet and try again.');
106
+ }
107
+ await simulateWCWriteTx({
108
+ calls,
109
+ withSpinner,
110
+ skipError,
111
+ });
112
+ const hideSubmitSpinner = withSpinner
113
+ ? showSpinner({
114
+ type: 'bouncingBar',
115
+ message: isBatch
116
+ ? 'Submitting batch...'
117
+ : 'Submitting transaction...',
118
+ })
119
+ : () => { };
120
+ const result = await walletConnectClient.sendCalls({
121
+ account: walletConnectClient.account.address,
122
+ calls,
123
+ experimental_fallback: true, // fallback to legacy sendTransaction if sendCalls is not supported
124
+ });
125
+ hideSubmitSpinner();
126
+ const hideStatusSpinner = withSpinner
127
+ ? showSpinner({
128
+ type: 'bouncingBar',
129
+ message: isBatch
130
+ ? 'Waiting for batch status...'
131
+ : 'Waiting for transaction status...',
132
+ })
133
+ : () => { };
134
+ const callStatus = await walletConnectClient.waitForCallsStatus({
135
+ id: result.id,
136
+ pollingInterval: PROVIDER_POLLING_INTERVAL,
137
+ timeout: AA_TX_POLLING_TIMEOUT,
138
+ });
139
+ hideStatusSpinner();
140
+ if (callStatus.status === 'failure') {
141
+ throw new Error('Transaction failed. Check your wallet for details.');
142
+ }
143
+ if (callStatus.receipts?.find((receipt) => receipt.status === 'reverted')) {
144
+ throw new Error('Some operation were reverted. Check your wallet for details.');
145
+ }
146
+ // extract last receipt if there was no atomic batch
147
+ const txHash = callStatus.receipts
148
+ ? callStatus?.receipts[callStatus.receipts.length - 1]?.transactionHash
149
+ : undefined;
150
+ if (!txHash) {
151
+ throw new Error('Could not locate TX hash.Check your wallet for details.');
152
+ }
153
+ const hideReceiptSpinner = withSpinner
154
+ ? showSpinner({
155
+ type: 'bouncingBar',
156
+ message: 'Waiting for transaction receipt...',
157
+ })
158
+ : () => { };
159
+ const publicClient = getPublicClient();
160
+ const receipt = await waitForTransactionReceipt(publicClient, {
161
+ hash: txHash,
162
+ confirmations: 3,
163
+ });
164
+ hideReceiptSpinner();
165
+ return { id: result.id, callStatus, txHash, receipt };
166
+ }
167
+ catch (err) {
168
+ await disconnectWalletConnect();
169
+ if (!skipError)
170
+ printError(err, 'Error when sending batch calls');
171
+ throw err;
172
+ }
173
+ };
174
+ //# sourceMappingURL=tx-wc.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tx-wc.js","sourceRoot":"","sources":["../../../utils/transactions/tx-wc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import { Hex, type Abi, type Address } from 'viem';
2
+ export type ReadContract = {
3
+ address: Address;
4
+ read: Record<string, (...args: any[]) => Promise<any>>;
5
+ };
6
+ export type PartialContract = ReadContract & {
7
+ simulate: Record<string, (...args: any[]) => Promise<any>>;
8
+ write: Record<string, (...args: any[]) => Promise<any>>;
9
+ abi: Abi;
10
+ };
11
+ export type Writeable<T> = {
12
+ -readonly [P in keyof T]: T[P];
13
+ };
14
+ export type GetFirst<T extends unknown[]> = T extends [
15
+ infer First,
16
+ infer _Second
17
+ ] ? First : T extends any ? [] : T;
18
+ export type PopulatedTx = {
19
+ to: Address;
20
+ value: bigint;
21
+ data: Hex;
22
+ };
23
+ export type BatchTxArgs<T extends PartialContract, M extends keyof T['write'] & string> = {
24
+ contract: T;
25
+ methodName: M;
26
+ payloads: Writeable<GetFirst<Parameters<T['write'][M]>>>[];
27
+ values?: bigint[];
28
+ withSpinner?: boolean;
29
+ silent?: boolean;
30
+ skipError?: boolean;
31
+ };
32
+ export type WriteTxArgs<T extends PartialContract, M extends keyof T['write'] & string> = {
33
+ contract: T;
34
+ methodName: M;
35
+ payload: Writeable<GetFirst<Parameters<T['write'][M]>>> | never[];
36
+ value?: bigint;
37
+ withSpinner?: boolean;
38
+ silent?: boolean;
39
+ skipError?: boolean;
40
+ };
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../utils/transactions/types.ts"],"names":[],"mappings":""}