@actalink/commonlib 0.0.13 → 0.0.15
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/index.cjs +401 -73
- package/dist/index.d.cts +1162 -3
- package/dist/index.d.ts +1162 -3
- package/dist/index.js +342 -17
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -76,6 +76,7 @@ __export(index_exports, {
|
|
|
76
76
|
baseDAI: () => baseDAI,
|
|
77
77
|
baseETH: () => baseETH,
|
|
78
78
|
baseEURC: () => baseEURC,
|
|
79
|
+
baseSepoliaUSDC: () => baseSepoliaUSDC,
|
|
79
80
|
baseUSDC: () => baseUSDC,
|
|
80
81
|
baseUSDT: () => baseUSDT,
|
|
81
82
|
baseUSDbC: () => baseUSDbC,
|
|
@@ -101,6 +102,7 @@ __export(index_exports, {
|
|
|
101
102
|
ethereumUSDC: () => ethereumUSDC,
|
|
102
103
|
ethereumUSDT: () => ethereumUSDT,
|
|
103
104
|
ethereumWETH: () => ethereumWETH,
|
|
105
|
+
executeScheduleBatchPaymentAPICall: () => executeScheduleBatchPaymentAPICall,
|
|
104
106
|
executeSingleBatchPaymentAPICall: () => executeSingleBatchPaymentAPICall,
|
|
105
107
|
executeSinglePaymentAPICall: () => executeSinglePaymentAPICall,
|
|
106
108
|
fetchBatchInstructionDetails: () => fetchBatchInstructionDetails,
|
|
@@ -120,12 +122,14 @@ __export(index_exports, {
|
|
|
120
122
|
lineaETH: () => lineaETH,
|
|
121
123
|
lineaUSDC: () => lineaUSDC,
|
|
122
124
|
lineaWETH: () => lineaWETH,
|
|
125
|
+
mainnetChains: () => mainnetChains,
|
|
123
126
|
optimismDAI: () => optimismDAI,
|
|
124
127
|
optimismETH: () => optimismETH,
|
|
125
128
|
optimismUSDC: () => optimismUSDC,
|
|
126
129
|
optimismUSDCe: () => optimismUSDCe,
|
|
127
130
|
optimismUSDT: () => optimismUSDT,
|
|
128
131
|
optimismWETH: () => optimismWETH,
|
|
132
|
+
polygonAmoyUSDC: () => polygonAmoyUSDC,
|
|
129
133
|
polygonDAI: () => polygonDAI,
|
|
130
134
|
polygonPOL: () => polygonPOL,
|
|
131
135
|
polygonUSDC: () => polygonUSDC,
|
|
@@ -135,9 +139,11 @@ __export(index_exports, {
|
|
|
135
139
|
polygonWPOL: () => polygonWPOL,
|
|
136
140
|
scheduleRecurringPaymentsAPICall: () => scheduleRecurringPaymentsAPICall,
|
|
137
141
|
sendRequest: () => sendRequest,
|
|
142
|
+
sepoliaUSDC: () => sepoliaUSDC,
|
|
138
143
|
serializePermissionAccountParams: () => serializePermissionAccountParams,
|
|
139
144
|
supportedChains: () => supportedChains,
|
|
140
145
|
supportedTokensByChain: () => supportedTokensByChain,
|
|
146
|
+
testnetChains: () => testnetChains,
|
|
141
147
|
toECDSASigner: () => toECDSASigner2,
|
|
142
148
|
toPermissionValidator: () => toPermissionValidator2,
|
|
143
149
|
toPolicyId: () => toPolicyId,
|
|
@@ -150,18 +156,24 @@ module.exports = __toCommonJS(index_exports);
|
|
|
150
156
|
|
|
151
157
|
// src/tokens.ts
|
|
152
158
|
var import_viem = require("viem");
|
|
153
|
-
var
|
|
159
|
+
var import_chains3 = require("viem/chains");
|
|
154
160
|
|
|
155
161
|
// src/chains.ts
|
|
156
162
|
var import_chains = require("viem/chains");
|
|
163
|
+
var import_chains2 = require("viem/chains");
|
|
157
164
|
var supportedChains = [
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
165
|
+
import_chains2.arbitrum,
|
|
166
|
+
import_chains2.base,
|
|
167
|
+
import_chains2.bsc,
|
|
168
|
+
import_chains2.mainnet,
|
|
169
|
+
import_chains2.optimism,
|
|
170
|
+
import_chains2.polygon,
|
|
171
|
+
import_chains.baseSepolia,
|
|
172
|
+
import_chains.sepolia,
|
|
173
|
+
import_chains.polygonAmoy
|
|
164
174
|
];
|
|
175
|
+
var mainnetChains = [import_chains2.arbitrum, import_chains2.base, import_chains2.bsc, import_chains2.mainnet, import_chains2.optimism, import_chains2.polygon];
|
|
176
|
+
var testnetChains = [import_chains.sepolia, import_chains.baseSepolia, import_chains.polygonAmoy];
|
|
165
177
|
function getChainById(chainId) {
|
|
166
178
|
const chain = supportedChains.find((c) => c.id === chainId);
|
|
167
179
|
if (!chain) throw new Error(`Chain ${chainId} not supported.`);
|
|
@@ -169,18 +181,24 @@ function getChainById(chainId) {
|
|
|
169
181
|
}
|
|
170
182
|
function getChainExplorerByChainId(chainId) {
|
|
171
183
|
switch (chainId) {
|
|
172
|
-
case
|
|
184
|
+
case import_chains2.arbitrum.id:
|
|
173
185
|
return "https://arbiscan.io";
|
|
174
|
-
case
|
|
186
|
+
case import_chains2.base.id:
|
|
175
187
|
return "https://basescan.org";
|
|
176
|
-
case
|
|
188
|
+
case import_chains2.bsc.id:
|
|
177
189
|
return "https://bscscan.com";
|
|
178
|
-
case
|
|
190
|
+
case import_chains2.mainnet.id:
|
|
179
191
|
return "https://etherscan.io";
|
|
180
|
-
case
|
|
192
|
+
case import_chains2.optimism.id:
|
|
181
193
|
return "https://optimistic.etherscan.io";
|
|
182
|
-
case
|
|
194
|
+
case import_chains2.polygon.id:
|
|
183
195
|
return "https://polygonscan.com";
|
|
196
|
+
case import_chains.baseSepolia.id:
|
|
197
|
+
return "https://sepolia.basescan.org";
|
|
198
|
+
case import_chains.sepolia.id:
|
|
199
|
+
return "https://sepolia.etherscan.io";
|
|
200
|
+
case import_chains.polygonAmoy.id:
|
|
201
|
+
return "https://amoy.polygonscan.com";
|
|
184
202
|
default:
|
|
185
203
|
return void 0;
|
|
186
204
|
}
|
|
@@ -211,9 +229,9 @@ var PolicyFlags = /* @__PURE__ */ ((PolicyFlags2) => {
|
|
|
211
229
|
})(PolicyFlags || {});
|
|
212
230
|
|
|
213
231
|
// src/tokens.ts
|
|
214
|
-
var arbitrumETH = nativeETH(
|
|
232
|
+
var arbitrumETH = nativeETH(import_chains3.arbitrum.id);
|
|
215
233
|
var arbitrumWETH = token({
|
|
216
|
-
chainId:
|
|
234
|
+
chainId: import_chains3.arbitrum.id,
|
|
217
235
|
address: (0, import_viem.getAddress)("0x82aF49447D8a07e3bd95BD0d56f35241523fBab1"),
|
|
218
236
|
decimals: 18,
|
|
219
237
|
name: "Wrapped Ether",
|
|
@@ -221,7 +239,7 @@ var arbitrumWETH = token({
|
|
|
221
239
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
222
240
|
});
|
|
223
241
|
var arbitrumUSDC = token({
|
|
224
|
-
chainId:
|
|
242
|
+
chainId: import_chains3.arbitrum.id,
|
|
225
243
|
address: (0, import_viem.getAddress)("0xaf88d065e77c8cC2239327C5EDb3A432268e5831"),
|
|
226
244
|
name: "USD Coin",
|
|
227
245
|
symbol: "USDC",
|
|
@@ -230,7 +248,7 @@ var arbitrumUSDC = token({
|
|
|
230
248
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
231
249
|
});
|
|
232
250
|
var arbitrumDAI = token({
|
|
233
|
-
chainId:
|
|
251
|
+
chainId: import_chains3.arbitrum.id,
|
|
234
252
|
address: (0, import_viem.getAddress)("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
|
|
235
253
|
decimals: 18,
|
|
236
254
|
fiatISO: "USD",
|
|
@@ -239,7 +257,7 @@ var arbitrumDAI = token({
|
|
|
239
257
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
240
258
|
});
|
|
241
259
|
var arbitrumUSDT = token({
|
|
242
|
-
chainId:
|
|
260
|
+
chainId: import_chains3.arbitrum.id,
|
|
243
261
|
address: (0, import_viem.getAddress)("0xFd086bC7CD5C481DCC9C85ebE478A1C0b69FCbb9"),
|
|
244
262
|
decimals: 6,
|
|
245
263
|
fiatISO: "USD",
|
|
@@ -248,7 +266,7 @@ var arbitrumUSDT = token({
|
|
|
248
266
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
|
|
249
267
|
});
|
|
250
268
|
var arbitrumUSDCe = token({
|
|
251
|
-
chainId:
|
|
269
|
+
chainId: import_chains3.arbitrum.id,
|
|
252
270
|
address: (0, import_viem.getAddress)("0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8"),
|
|
253
271
|
decimals: 6,
|
|
254
272
|
fiatISO: "USD",
|
|
@@ -257,9 +275,9 @@ var arbitrumUSDCe = token({
|
|
|
257
275
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
258
276
|
});
|
|
259
277
|
var arbitrumTokens = [arbitrumUSDC, arbitrumUSDT];
|
|
260
|
-
var baseETH = nativeETH(
|
|
278
|
+
var baseETH = nativeETH(import_chains3.base.id);
|
|
261
279
|
var baseWETH = token({
|
|
262
|
-
chainId:
|
|
280
|
+
chainId: import_chains3.base.id,
|
|
263
281
|
address: (0, import_viem.getAddress)("0x4200000000000000000000000000000000000006"),
|
|
264
282
|
decimals: 18,
|
|
265
283
|
name: "Wrapped Ether",
|
|
@@ -267,7 +285,7 @@ var baseWETH = token({
|
|
|
267
285
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
268
286
|
});
|
|
269
287
|
var baseUSDC = token({
|
|
270
|
-
chainId:
|
|
288
|
+
chainId: import_chains3.base.id,
|
|
271
289
|
address: (0, import_viem.getAddress)("0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"),
|
|
272
290
|
name: "USD Coin",
|
|
273
291
|
symbol: "USDC",
|
|
@@ -276,7 +294,7 @@ var baseUSDC = token({
|
|
|
276
294
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
277
295
|
});
|
|
278
296
|
var baseEURC = token({
|
|
279
|
-
chainId:
|
|
297
|
+
chainId: import_chains3.base.id,
|
|
280
298
|
address: (0, import_viem.getAddress)("0x60a3E35Cc302bFA44Cb288Bc5a4F316Fdb1adb42"),
|
|
281
299
|
decimals: 6,
|
|
282
300
|
fiatISO: "EUR",
|
|
@@ -285,7 +303,7 @@ var baseEURC = token({
|
|
|
285
303
|
logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
|
|
286
304
|
});
|
|
287
305
|
var baseUSDbC = token({
|
|
288
|
-
chainId:
|
|
306
|
+
chainId: import_chains3.base.id,
|
|
289
307
|
address: (0, import_viem.getAddress)("0xd9aAEc86B65D86f6A7B5B1b0c42FFA531710b6CA"),
|
|
290
308
|
name: "Bridged USD Coin",
|
|
291
309
|
symbol: "USDbC",
|
|
@@ -294,7 +312,7 @@ var baseUSDbC = token({
|
|
|
294
312
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdbc.png"
|
|
295
313
|
});
|
|
296
314
|
var baseDAI = token({
|
|
297
|
-
chainId:
|
|
315
|
+
chainId: import_chains3.base.id,
|
|
298
316
|
address: (0, import_viem.getAddress)("0x50c5725949A6F0c72E6C4a641F24049A917DB0Cb"),
|
|
299
317
|
name: "Dai Stablecoin",
|
|
300
318
|
symbol: "DAI",
|
|
@@ -303,7 +321,7 @@ var baseDAI = token({
|
|
|
303
321
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
304
322
|
});
|
|
305
323
|
var baseUSDT = token({
|
|
306
|
-
chainId:
|
|
324
|
+
chainId: import_chains3.base.id,
|
|
307
325
|
address: (0, import_viem.getAddress)("0xfde4C96c8593536E31F229EA8f37b2ADa2699bb2"),
|
|
308
326
|
name: "Tether USD",
|
|
309
327
|
symbol: "USDT",
|
|
@@ -313,13 +331,13 @@ var baseUSDT = token({
|
|
|
313
331
|
});
|
|
314
332
|
var baseTokens = [baseUSDC, baseUSDT];
|
|
315
333
|
var bscBNB = nativeToken({
|
|
316
|
-
chainId:
|
|
334
|
+
chainId: import_chains3.bsc.id,
|
|
317
335
|
name: "BNB",
|
|
318
336
|
symbol: "BNB",
|
|
319
337
|
logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
|
|
320
338
|
});
|
|
321
339
|
var bscWBNB = token({
|
|
322
|
-
chainId:
|
|
340
|
+
chainId: import_chains3.bsc.id,
|
|
323
341
|
address: (0, import_viem.getAddress)("0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c"),
|
|
324
342
|
decimals: 18,
|
|
325
343
|
name: "Wrapped BNB",
|
|
@@ -327,7 +345,7 @@ var bscWBNB = token({
|
|
|
327
345
|
logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
|
|
328
346
|
});
|
|
329
347
|
var bscUSDC = token({
|
|
330
|
-
chainId:
|
|
348
|
+
chainId: import_chains3.bsc.id,
|
|
331
349
|
address: (0, import_viem.getAddress)("0x8AC76a51cc950d9822D68b83fE1Ad97B32Cd580d"),
|
|
332
350
|
decimals: 18,
|
|
333
351
|
fiatISO: "USD",
|
|
@@ -336,7 +354,7 @@ var bscUSDC = token({
|
|
|
336
354
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
337
355
|
});
|
|
338
356
|
var bscUSDT = token({
|
|
339
|
-
chainId:
|
|
357
|
+
chainId: import_chains3.bsc.id,
|
|
340
358
|
address: (0, import_viem.getAddress)("0x55d398326f99059fF775485246999027B3197955"),
|
|
341
359
|
decimals: 18,
|
|
342
360
|
fiatISO: "USD",
|
|
@@ -345,9 +363,9 @@ var bscUSDT = token({
|
|
|
345
363
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
|
|
346
364
|
});
|
|
347
365
|
var bscTokens = [bscUSDT];
|
|
348
|
-
var ethereumETH = nativeETH(
|
|
366
|
+
var ethereumETH = nativeETH(import_chains3.mainnet.id);
|
|
349
367
|
var ethereumWETH = token({
|
|
350
|
-
chainId:
|
|
368
|
+
chainId: import_chains3.mainnet.id,
|
|
351
369
|
address: (0, import_viem.getAddress)("0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2"),
|
|
352
370
|
decimals: 18,
|
|
353
371
|
name: "Wrapped Ether",
|
|
@@ -355,7 +373,7 @@ var ethereumWETH = token({
|
|
|
355
373
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
356
374
|
});
|
|
357
375
|
var ethereumUSDC = token({
|
|
358
|
-
chainId:
|
|
376
|
+
chainId: import_chains3.mainnet.id,
|
|
359
377
|
address: (0, import_viem.getAddress)("0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48"),
|
|
360
378
|
decimals: 6,
|
|
361
379
|
fiatISO: "USD",
|
|
@@ -364,7 +382,7 @@ var ethereumUSDC = token({
|
|
|
364
382
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
365
383
|
});
|
|
366
384
|
var ethereumDAI = token({
|
|
367
|
-
chainId:
|
|
385
|
+
chainId: import_chains3.mainnet.id,
|
|
368
386
|
address: (0, import_viem.getAddress)("0x6B175474E89094C44Da98b954EedeAC495271d0F"),
|
|
369
387
|
decimals: 18,
|
|
370
388
|
fiatISO: "USD",
|
|
@@ -373,7 +391,7 @@ var ethereumDAI = token({
|
|
|
373
391
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
374
392
|
});
|
|
375
393
|
var ethereumUSDT = token({
|
|
376
|
-
chainId:
|
|
394
|
+
chainId: import_chains3.mainnet.id,
|
|
377
395
|
address: (0, import_viem.getAddress)("0xdAC17F958D2ee523a2206206994597C13D831ec7"),
|
|
378
396
|
decimals: 6,
|
|
379
397
|
fiatISO: "USD",
|
|
@@ -382,7 +400,7 @@ var ethereumUSDT = token({
|
|
|
382
400
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
|
|
383
401
|
});
|
|
384
402
|
var ethereumEURC = token({
|
|
385
|
-
chainId:
|
|
403
|
+
chainId: import_chains3.mainnet.id,
|
|
386
404
|
address: (0, import_viem.getAddress)("0x1aBaEA1f7C830bD89Acc67eC4af516284b1bC33c"),
|
|
387
405
|
decimals: 6,
|
|
388
406
|
fiatISO: "EUR",
|
|
@@ -391,9 +409,9 @@ var ethereumEURC = token({
|
|
|
391
409
|
logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
|
|
392
410
|
});
|
|
393
411
|
var ethereumTokens = [ethereumUSDC, ethereumUSDT];
|
|
394
|
-
var lineaETH = nativeETH(
|
|
412
|
+
var lineaETH = nativeETH(import_chains3.linea.id);
|
|
395
413
|
var lineaWETH = token({
|
|
396
|
-
chainId:
|
|
414
|
+
chainId: import_chains3.linea.id,
|
|
397
415
|
address: (0, import_viem.getAddress)("0xe5d7c2a44ffddf6b295a15c148167daaaf5cf34f"),
|
|
398
416
|
decimals: 18,
|
|
399
417
|
name: "Wrapped Ether",
|
|
@@ -401,7 +419,7 @@ var lineaWETH = token({
|
|
|
401
419
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
402
420
|
});
|
|
403
421
|
var lineaUSDC = token({
|
|
404
|
-
chainId:
|
|
422
|
+
chainId: import_chains3.linea.id,
|
|
405
423
|
address: (0, import_viem.getAddress)("0x176211869cA2b568f2A7D4EE941E073a821EE1ff"),
|
|
406
424
|
decimals: 6,
|
|
407
425
|
fiatISO: "USD",
|
|
@@ -410,7 +428,7 @@ var lineaUSDC = token({
|
|
|
410
428
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
411
429
|
});
|
|
412
430
|
var lineaDAI = token({
|
|
413
|
-
chainId:
|
|
431
|
+
chainId: import_chains3.linea.id,
|
|
414
432
|
address: (0, import_viem.getAddress)("0x4AF15ec2A0BD43Db75dd04E62FAA3B8EF36b00d5"),
|
|
415
433
|
decimals: 18,
|
|
416
434
|
fiatISO: "USD",
|
|
@@ -418,9 +436,9 @@ var lineaDAI = token({
|
|
|
418
436
|
symbol: "DAI",
|
|
419
437
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
420
438
|
});
|
|
421
|
-
var optimismETH = nativeETH(
|
|
439
|
+
var optimismETH = nativeETH(import_chains3.optimism.id);
|
|
422
440
|
var optimismWETH = token({
|
|
423
|
-
chainId:
|
|
441
|
+
chainId: import_chains3.optimism.id,
|
|
424
442
|
address: (0, import_viem.getAddress)("0x4200000000000000000000000000000000000006"),
|
|
425
443
|
decimals: 18,
|
|
426
444
|
name: "Wrapped Ether",
|
|
@@ -428,7 +446,7 @@ var optimismWETH = token({
|
|
|
428
446
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
429
447
|
});
|
|
430
448
|
var optimismUSDC = token({
|
|
431
|
-
chainId:
|
|
449
|
+
chainId: import_chains3.optimism.id,
|
|
432
450
|
address: (0, import_viem.getAddress)("0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85"),
|
|
433
451
|
decimals: 6,
|
|
434
452
|
fiatISO: "USD",
|
|
@@ -437,7 +455,7 @@ var optimismUSDC = token({
|
|
|
437
455
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
438
456
|
});
|
|
439
457
|
var optimismDAI = token({
|
|
440
|
-
chainId:
|
|
458
|
+
chainId: import_chains3.optimism.id,
|
|
441
459
|
address: (0, import_viem.getAddress)("0xDA10009cBd5D07dd0CeCc66161FC93D7c9000da1"),
|
|
442
460
|
decimals: 18,
|
|
443
461
|
fiatISO: "USD",
|
|
@@ -446,7 +464,7 @@ var optimismDAI = token({
|
|
|
446
464
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
447
465
|
});
|
|
448
466
|
var optimismUSDT = token({
|
|
449
|
-
chainId:
|
|
467
|
+
chainId: import_chains3.optimism.id,
|
|
450
468
|
address: (0, import_viem.getAddress)("0x94b008aA00579c1307B0EF2c499aD98a8ce58e58"),
|
|
451
469
|
decimals: 6,
|
|
452
470
|
fiatISO: "USD",
|
|
@@ -455,7 +473,7 @@ var optimismUSDT = token({
|
|
|
455
473
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
|
|
456
474
|
});
|
|
457
475
|
var optimismUSDCe = token({
|
|
458
|
-
chainId:
|
|
476
|
+
chainId: import_chains3.optimism.id,
|
|
459
477
|
address: (0, import_viem.getAddress)("0x7F5c764cBc14f9669B88837ca1490cCa17c31607"),
|
|
460
478
|
decimals: 6,
|
|
461
479
|
fiatISO: "USD",
|
|
@@ -465,13 +483,13 @@ var optimismUSDCe = token({
|
|
|
465
483
|
});
|
|
466
484
|
var optimismTokens = [optimismUSDC, optimismUSDT];
|
|
467
485
|
var polygonPOL = nativeToken({
|
|
468
|
-
chainId:
|
|
486
|
+
chainId: import_chains3.polygon.id,
|
|
469
487
|
name: "Polygon",
|
|
470
488
|
symbol: "POL",
|
|
471
489
|
logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
|
|
472
490
|
});
|
|
473
491
|
var polygonWPOL = token({
|
|
474
|
-
chainId:
|
|
492
|
+
chainId: import_chains3.polygon.id,
|
|
475
493
|
address: (0, import_viem.getAddress)("0x0d500B1d8E8eF31E21C99d1Db9A6444d3ADf1270"),
|
|
476
494
|
decimals: 18,
|
|
477
495
|
name: "Wrapped Polygon",
|
|
@@ -479,7 +497,7 @@ var polygonWPOL = token({
|
|
|
479
497
|
logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
|
|
480
498
|
});
|
|
481
499
|
var polygonWETH = token({
|
|
482
|
-
chainId:
|
|
500
|
+
chainId: import_chains3.polygon.id,
|
|
483
501
|
address: (0, import_viem.getAddress)("0x7ceB23fD6bC0adD59E62ac25578270cFf1b9f619"),
|
|
484
502
|
decimals: 18,
|
|
485
503
|
name: "Wrapped Ether",
|
|
@@ -487,7 +505,7 @@ var polygonWETH = token({
|
|
|
487
505
|
logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
|
|
488
506
|
});
|
|
489
507
|
var polygonUSDC = token({
|
|
490
|
-
chainId:
|
|
508
|
+
chainId: import_chains3.polygon.id,
|
|
491
509
|
address: (0, import_viem.getAddress)("0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359"),
|
|
492
510
|
decimals: 6,
|
|
493
511
|
fiatISO: "USD",
|
|
@@ -496,7 +514,7 @@ var polygonUSDC = token({
|
|
|
496
514
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
497
515
|
});
|
|
498
516
|
var polygonDAI = token({
|
|
499
|
-
chainId:
|
|
517
|
+
chainId: import_chains3.polygon.id,
|
|
500
518
|
address: (0, import_viem.getAddress)("0x8f3Cf7ad23Cd3CaDbD9735AFf958023239c6A063"),
|
|
501
519
|
decimals: 18,
|
|
502
520
|
fiatISO: "USD",
|
|
@@ -505,7 +523,7 @@ var polygonDAI = token({
|
|
|
505
523
|
logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
|
|
506
524
|
});
|
|
507
525
|
var polygonUSDT = token({
|
|
508
|
-
chainId:
|
|
526
|
+
chainId: import_chains3.polygon.id,
|
|
509
527
|
address: (0, import_viem.getAddress)("0xc2132D05D31c914a87C6611C10748AEb04B58e8F"),
|
|
510
528
|
decimals: 6,
|
|
511
529
|
fiatISO: "USD",
|
|
@@ -514,7 +532,7 @@ var polygonUSDT = token({
|
|
|
514
532
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
|
|
515
533
|
});
|
|
516
534
|
var polygonUSDCe = token({
|
|
517
|
-
chainId:
|
|
535
|
+
chainId: import_chains3.polygon.id,
|
|
518
536
|
address: (0, import_viem.getAddress)("0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174"),
|
|
519
537
|
decimals: 6,
|
|
520
538
|
fiatISO: "USD",
|
|
@@ -523,19 +541,52 @@ var polygonUSDCe = token({
|
|
|
523
541
|
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
524
542
|
});
|
|
525
543
|
var polygonTokens = [polygonUSDC, polygonUSDT];
|
|
544
|
+
var polygonAmoyUSDC = token({
|
|
545
|
+
chainId: import_chains3.polygonAmoy.id,
|
|
546
|
+
address: (0, import_viem.getAddress)("0x41E94Eb019C0762f9Bfcf9Fb1E58725BfB0e7582"),
|
|
547
|
+
decimals: 6,
|
|
548
|
+
fiatISO: "USDC",
|
|
549
|
+
name: "USDC",
|
|
550
|
+
symbol: "USDC",
|
|
551
|
+
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
552
|
+
});
|
|
553
|
+
var polygonAmoyTokens = [polygonAmoyUSDC];
|
|
554
|
+
var baseSepoliaUSDC = token({
|
|
555
|
+
chainId: import_chains3.baseSepolia.id,
|
|
556
|
+
address: (0, import_viem.getAddress)("0x036CbD53842c5426634e7929541eC2318f3dCF7e"),
|
|
557
|
+
decimals: 6,
|
|
558
|
+
fiatISO: "USDC",
|
|
559
|
+
name: "USDC",
|
|
560
|
+
symbol: "USDC",
|
|
561
|
+
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
562
|
+
});
|
|
563
|
+
var baseSepoliaTokens = [baseSepoliaUSDC];
|
|
564
|
+
var sepoliaUSDC = token({
|
|
565
|
+
chainId: import_chains3.sepolia.id,
|
|
566
|
+
address: (0, import_viem.getAddress)("0x1c7D4B196Cb0C7B01d743Fbc6116a902379C7238"),
|
|
567
|
+
decimals: 6,
|
|
568
|
+
fiatISO: "USDC",
|
|
569
|
+
name: "USDC",
|
|
570
|
+
symbol: "USDC",
|
|
571
|
+
logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
|
|
572
|
+
});
|
|
573
|
+
var sepoliaTokens = [sepoliaUSDC];
|
|
526
574
|
var supportedTokensByChain = /* @__PURE__ */ new Map([
|
|
527
|
-
[
|
|
575
|
+
[import_chains3.arbitrum.id, arbitrumTokens],
|
|
528
576
|
//done
|
|
529
|
-
[
|
|
577
|
+
[import_chains3.base.id, baseTokens],
|
|
530
578
|
//done
|
|
531
|
-
[
|
|
579
|
+
[import_chains3.bsc.id, bscTokens],
|
|
532
580
|
//done
|
|
533
|
-
[
|
|
581
|
+
[import_chains3.mainnet.id, ethereumTokens],
|
|
534
582
|
//done
|
|
535
|
-
[
|
|
583
|
+
[import_chains3.optimism.id, optimismTokens],
|
|
536
584
|
//done
|
|
537
|
-
[
|
|
585
|
+
[import_chains3.polygon.id, polygonTokens],
|
|
538
586
|
//done
|
|
587
|
+
[import_chains3.sepolia.id, sepoliaTokens],
|
|
588
|
+
[import_chains3.polygonAmoy.id, polygonAmoyTokens],
|
|
589
|
+
[import_chains3.baseSepolia.id, baseSepoliaTokens]
|
|
539
590
|
]);
|
|
540
591
|
function nativeETH(chainId) {
|
|
541
592
|
return nativeToken({
|
|
@@ -648,6 +699,12 @@ function getRpcByChainId(chainId) {
|
|
|
648
699
|
return "https://arbitrum-mainnet.g.alchemy.com/v2/2uxlNSyeU1IcP7HMKteJM21td0IAHroW";
|
|
649
700
|
case 59144:
|
|
650
701
|
return "https://linea-mainnet.g.alchemy.com/v2/2uxlNSyeU1IcP7HMKteJM21td0IAHroW";
|
|
702
|
+
case 80002:
|
|
703
|
+
return `https://polygon-amoy.g.alchemy.com/v2/2uxlNSyeU1IcP7HMKteJM21td0IAHroW`;
|
|
704
|
+
case 84532:
|
|
705
|
+
return `https://base-sepolia.g.alchemy.com/v2/2uxlNSyeU1IcP7HMKteJM21td0IAHroW`;
|
|
706
|
+
case 11155111:
|
|
707
|
+
return `https://eth-sepolia.g.alchemy.com/v2/2uxlNSyeU1IcP7HMKteJM21td0IAHroW`;
|
|
651
708
|
default:
|
|
652
709
|
return void 0;
|
|
653
710
|
}
|
|
@@ -668,6 +725,12 @@ function getPimlicoRpcByChainId(chainId) {
|
|
|
668
725
|
return `https://api.pimlico.io/v2/${chainId}/rpc?apikey=pim_Jjg9Mp3i5LPCvgSyqXKK5T`;
|
|
669
726
|
case 59144:
|
|
670
727
|
return `https://api.pimlico.io/v2/${chainId}/rpc?apikey=pim_Jjg9Mp3i5LPCvgSyqXKK5T`;
|
|
728
|
+
case 80002:
|
|
729
|
+
return `https://api.pimlico.io/v2/${chainId}/rpc?apikey=pim_Jjg9Mp3i5LPCvgSyqXKK5T`;
|
|
730
|
+
case 84532:
|
|
731
|
+
return `https://api.pimlico.io/v2/${chainId}/rpc?apikey=pim_Jjg9Mp3i5LPCvgSyqXKK5T`;
|
|
732
|
+
case 11155111:
|
|
733
|
+
return `https://api.pimlico.io/v2/${chainId}/rpc?apikey=pim_Jjg9Mp3i5LPCvgSyqXKK5T`;
|
|
671
734
|
default:
|
|
672
735
|
return void 0;
|
|
673
736
|
}
|
|
@@ -729,7 +792,7 @@ var ViemClient = class {
|
|
|
729
792
|
});
|
|
730
793
|
const receipt = yield this.publicClient().waitForTransactionReceipt({
|
|
731
794
|
hash: txn,
|
|
732
|
-
confirmations: token2.chainId === 1 ? 1 : 5
|
|
795
|
+
confirmations: token2.chainId === 1 || 11155111 ? 1 : 5
|
|
733
796
|
});
|
|
734
797
|
return amount;
|
|
735
798
|
}
|
|
@@ -845,7 +908,7 @@ var ActaAccount = class {
|
|
|
845
908
|
functionName: "transferFrom",
|
|
846
909
|
args: [
|
|
847
910
|
fromAddress,
|
|
848
|
-
"
|
|
911
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
849
912
|
BigInt(0)
|
|
850
913
|
]
|
|
851
914
|
},
|
|
@@ -928,7 +991,7 @@ var ActaAccount = class {
|
|
|
928
991
|
functionName: "transferFrom",
|
|
929
992
|
args: [
|
|
930
993
|
fromAddress,
|
|
931
|
-
"
|
|
994
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
932
995
|
BigInt(0)
|
|
933
996
|
]
|
|
934
997
|
}
|
|
@@ -1015,7 +1078,7 @@ var ActaAccount = class {
|
|
|
1015
1078
|
functionName: "transferFrom",
|
|
1016
1079
|
args: [
|
|
1017
1080
|
fromAddress,
|
|
1018
|
-
"
|
|
1081
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
1019
1082
|
estimatedGasCostInToken
|
|
1020
1083
|
]
|
|
1021
1084
|
},
|
|
@@ -1070,7 +1133,6 @@ var ActaAccount = class {
|
|
|
1070
1133
|
}
|
|
1071
1134
|
const viemClient = new ViemClient(this.chainId, this.signer);
|
|
1072
1135
|
console.log("validating gas");
|
|
1073
|
-
console.log(receivers);
|
|
1074
1136
|
const {
|
|
1075
1137
|
estimatedGasCostInToken,
|
|
1076
1138
|
ActalinkFeesInToken,
|
|
@@ -1117,7 +1179,7 @@ var ActaAccount = class {
|
|
|
1117
1179
|
functionName: "transferFrom",
|
|
1118
1180
|
args: [
|
|
1119
1181
|
fromAddress,
|
|
1120
|
-
"
|
|
1182
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
1121
1183
|
estimatedGasCostInToken
|
|
1122
1184
|
]
|
|
1123
1185
|
}
|
|
@@ -1231,7 +1293,7 @@ var ActaAccount = class {
|
|
|
1231
1293
|
{
|
|
1232
1294
|
condition: import_policies.ParamCondition.ONE_OF,
|
|
1233
1295
|
value: [
|
|
1234
|
-
"
|
|
1296
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
1235
1297
|
(0, import_viem3.getAddress)(receiver)
|
|
1236
1298
|
]
|
|
1237
1299
|
},
|
|
@@ -1269,6 +1331,133 @@ var ActaAccount = class {
|
|
|
1269
1331
|
return { approval, amountExclusive };
|
|
1270
1332
|
});
|
|
1271
1333
|
}
|
|
1334
|
+
signRecurringOrScheduleBatchPayments(paymentParams) {
|
|
1335
|
+
return __async(this, null, function* () {
|
|
1336
|
+
if (!this.signer) {
|
|
1337
|
+
throw new Error("Signer is required for self custody payments.");
|
|
1338
|
+
}
|
|
1339
|
+
const {
|
|
1340
|
+
signerAddress,
|
|
1341
|
+
chainId,
|
|
1342
|
+
token: tokenSymbol,
|
|
1343
|
+
feeInclusive,
|
|
1344
|
+
count,
|
|
1345
|
+
allowMaxTokenApproval,
|
|
1346
|
+
receivers,
|
|
1347
|
+
totalAmount,
|
|
1348
|
+
walletClient
|
|
1349
|
+
} = paymentParams;
|
|
1350
|
+
if (signerAddress === void 0) {
|
|
1351
|
+
throw new Error("signer address is not provided.");
|
|
1352
|
+
}
|
|
1353
|
+
if (totalAmount <= BigInt(0)) {
|
|
1354
|
+
throw new Error("Amount must be greater than 0.");
|
|
1355
|
+
}
|
|
1356
|
+
if (receivers.length === 0) {
|
|
1357
|
+
throw new Error("Receivers not found for batch payment");
|
|
1358
|
+
}
|
|
1359
|
+
const token2 = getTokenByChainIdAndSymbol(chainId, tokenSymbol);
|
|
1360
|
+
if (!token2) {
|
|
1361
|
+
throw new Error("Token not found.");
|
|
1362
|
+
}
|
|
1363
|
+
const kernelVersion = import_constants.KERNEL_V3_1;
|
|
1364
|
+
const entryPoint = (0, import_constants.getEntryPoint)("0.7");
|
|
1365
|
+
const paymentCount = count != null ? count : 24;
|
|
1366
|
+
const account = yield this.createAccount();
|
|
1367
|
+
const smartAccountAddress = account.address;
|
|
1368
|
+
const viemClient = new ViemClient(this.chainId, this.signer);
|
|
1369
|
+
const { paymasterClient, pimlicoClient } = yield this.createAccountHelpers();
|
|
1370
|
+
const ecdsaValidator = yield (0, import_ecdsa_validator.signerToEcdsaValidator)(
|
|
1371
|
+
viemClient.publicClient(),
|
|
1372
|
+
{
|
|
1373
|
+
entryPoint,
|
|
1374
|
+
kernelVersion,
|
|
1375
|
+
signer: this.signer
|
|
1376
|
+
}
|
|
1377
|
+
);
|
|
1378
|
+
const sessionKeyAddress = "0xFDEed8e268D74DF71f3Db7409F8A8290FF1263ED";
|
|
1379
|
+
const emptyAccount = (0, import_sdk.addressToEmptyAccount)(sessionKeyAddress);
|
|
1380
|
+
const emptySessionKeySigner = yield (0, import_signers.toECDSASigner)({ signer: emptyAccount });
|
|
1381
|
+
const {
|
|
1382
|
+
estimatedGasCostInToken,
|
|
1383
|
+
ActalinkFeesInToken,
|
|
1384
|
+
feeInclusiveAmountInToken,
|
|
1385
|
+
feeExclusiveAmountInToken,
|
|
1386
|
+
estimatedTotalFeesInToken,
|
|
1387
|
+
paymaster
|
|
1388
|
+
} = yield this.estimateSingleBatchPaymentGas({
|
|
1389
|
+
signerAddress,
|
|
1390
|
+
chainId,
|
|
1391
|
+
token: tokenSymbol,
|
|
1392
|
+
receivers,
|
|
1393
|
+
feeInclusive,
|
|
1394
|
+
totalAmount,
|
|
1395
|
+
walletClient
|
|
1396
|
+
});
|
|
1397
|
+
const amountToTransfer = feeInclusive ? totalAmount : feeExclusiveAmountInToken;
|
|
1398
|
+
const receiverAmount = feeInclusive ? feeInclusiveAmountInToken : totalAmount;
|
|
1399
|
+
yield viemClient.checkAndApproveToken(
|
|
1400
|
+
token2,
|
|
1401
|
+
smartAccountAddress,
|
|
1402
|
+
amountToTransfer * BigInt(paymentCount) + estimatedGasCostInToken * BigInt(2) * BigInt(paymentCount),
|
|
1403
|
+
allowMaxTokenApproval != null ? allowMaxTokenApproval : false
|
|
1404
|
+
);
|
|
1405
|
+
const amountExclusive = amountToTransfer + amountToTransfer / BigInt(2);
|
|
1406
|
+
const receiversAddress = receivers.map((r) => (0, import_viem3.getAddress)(r.address));
|
|
1407
|
+
const callPolicy = (0, import_policies.toCallPolicy)({
|
|
1408
|
+
policyVersion: import_policies.CallPolicyVersion.V0_0_4,
|
|
1409
|
+
permissions: [
|
|
1410
|
+
{
|
|
1411
|
+
target: token2.address,
|
|
1412
|
+
valueLimit: BigInt(0),
|
|
1413
|
+
abi: (0, import_viem3.parseAbi)(["function transferFrom(address,address,uint)"]),
|
|
1414
|
+
functionName: "transferFrom",
|
|
1415
|
+
args: [
|
|
1416
|
+
{
|
|
1417
|
+
condition: import_policies.ParamCondition.EQUAL,
|
|
1418
|
+
value: (0, import_viem3.getAddress)(signerAddress)
|
|
1419
|
+
},
|
|
1420
|
+
{
|
|
1421
|
+
condition: import_policies.ParamCondition.ONE_OF,
|
|
1422
|
+
value: [
|
|
1423
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
1424
|
+
...receiversAddress
|
|
1425
|
+
]
|
|
1426
|
+
},
|
|
1427
|
+
{
|
|
1428
|
+
condition: import_policies.ParamCondition.LESS_THAN_OR_EQUAL,
|
|
1429
|
+
value: amountExclusive
|
|
1430
|
+
}
|
|
1431
|
+
]
|
|
1432
|
+
}
|
|
1433
|
+
]
|
|
1434
|
+
});
|
|
1435
|
+
const permissionPlugin = yield (0, import_permissions.toPermissionValidator)(
|
|
1436
|
+
viemClient.publicClient(),
|
|
1437
|
+
{
|
|
1438
|
+
entryPoint,
|
|
1439
|
+
kernelVersion,
|
|
1440
|
+
signer: emptySessionKeySigner,
|
|
1441
|
+
policies: [callPolicy]
|
|
1442
|
+
}
|
|
1443
|
+
);
|
|
1444
|
+
const serializedSessionKeyAccount = yield (0, import_sdk.createKernelAccount)(
|
|
1445
|
+
viemClient.publicClient(),
|
|
1446
|
+
{
|
|
1447
|
+
entryPoint,
|
|
1448
|
+
kernelVersion,
|
|
1449
|
+
plugins: {
|
|
1450
|
+
sudo: ecdsaValidator,
|
|
1451
|
+
regular: permissionPlugin
|
|
1452
|
+
}
|
|
1453
|
+
}
|
|
1454
|
+
);
|
|
1455
|
+
const approval = yield (0, import_permissions.serializePermissionAccount)(
|
|
1456
|
+
serializedSessionKeyAccount
|
|
1457
|
+
);
|
|
1458
|
+
return { approval, amountExclusive };
|
|
1459
|
+
});
|
|
1460
|
+
}
|
|
1272
1461
|
signRecurringTransactionCancellation(paymentCancellationParams) {
|
|
1273
1462
|
return __async(this, null, function* () {
|
|
1274
1463
|
var _a;
|
|
@@ -1310,7 +1499,7 @@ var ActaAccount = class {
|
|
|
1310
1499
|
{
|
|
1311
1500
|
condition: import_policies.ParamCondition.ONE_OF,
|
|
1312
1501
|
value: [
|
|
1313
|
-
"
|
|
1502
|
+
"0x26eeCa5956Bf8C01040BAC9e6D7982a0e87F31B4",
|
|
1314
1503
|
(0, import_viem3.getAddress)(receiverAddress)
|
|
1315
1504
|
]
|
|
1316
1505
|
},
|
|
@@ -1516,6 +1705,23 @@ function executeSingleBatchPaymentAPICall(url, APIKey, userOperation, paymentPar
|
|
|
1516
1705
|
return response.data;
|
|
1517
1706
|
});
|
|
1518
1707
|
}
|
|
1708
|
+
function executeScheduleBatchPaymentAPICall(url, APIKey, paymentParams, serviceParams) {
|
|
1709
|
+
return __async(this, null, function* () {
|
|
1710
|
+
const params = {
|
|
1711
|
+
paymentParams,
|
|
1712
|
+
serviceParams
|
|
1713
|
+
};
|
|
1714
|
+
const response = yield sendRequest({
|
|
1715
|
+
url,
|
|
1716
|
+
method: "post" /* Post */,
|
|
1717
|
+
body: params,
|
|
1718
|
+
headers: {
|
|
1719
|
+
"x-api-key": APIKey
|
|
1720
|
+
}
|
|
1721
|
+
});
|
|
1722
|
+
return response.data;
|
|
1723
|
+
});
|
|
1724
|
+
}
|
|
1519
1725
|
function fetchRecurringTransactionWithId(url) {
|
|
1520
1726
|
return __async(this, null, function* () {
|
|
1521
1727
|
const response = yield sendRequest({ url, method: "get" /* Get */ });
|
|
@@ -2128,7 +2334,28 @@ var ActaBilling = class {
|
|
|
2128
2334
|
|
|
2129
2335
|
// src/batch.ts
|
|
2130
2336
|
var import_viem7 = require("viem");
|
|
2337
|
+
var transactionServiceUrl3 = "https://api.acta.link/transaction/v1/";
|
|
2131
2338
|
var batchServiceUrl = "https://api.acta.link/batch/api/v1/";
|
|
2339
|
+
var transactionServiceTestUrl = "https://api.acta.link/transaction/test/v1/";
|
|
2340
|
+
var batchServiceTestUrl = "https://api.acta.link/batch/test/api/v1/";
|
|
2341
|
+
var returnEnvUrl = (chainId) => {
|
|
2342
|
+
const mainnetChain = mainnetChains.find((c) => c.id === chainId);
|
|
2343
|
+
const testnetChain = testnetChains.find((c) => c.id === chainId);
|
|
2344
|
+
if (!mainnetChain && !testnetChain) {
|
|
2345
|
+
throw new Error(`Chain ${chainId} not supported.`);
|
|
2346
|
+
}
|
|
2347
|
+
if (mainnetChain) {
|
|
2348
|
+
return {
|
|
2349
|
+
envTransactionServiceUrl: transactionServiceUrl3,
|
|
2350
|
+
envBatchServiceUrl: batchServiceUrl
|
|
2351
|
+
};
|
|
2352
|
+
} else {
|
|
2353
|
+
return {
|
|
2354
|
+
envTransactionServiceUrl: transactionServiceTestUrl,
|
|
2355
|
+
envBatchServiceUrl: batchServiceTestUrl
|
|
2356
|
+
};
|
|
2357
|
+
}
|
|
2358
|
+
};
|
|
2132
2359
|
var ActaBatch = class {
|
|
2133
2360
|
constructor(parameters) {
|
|
2134
2361
|
this.APIkey = parameters.APIKey;
|
|
@@ -2149,8 +2376,9 @@ var ActaBatch = class {
|
|
|
2149
2376
|
if (!instructionId || instructionId === "") {
|
|
2150
2377
|
throw new Error("Instruction id is required");
|
|
2151
2378
|
}
|
|
2379
|
+
const { envBatchServiceUrl } = returnEnvUrl(chainId);
|
|
2152
2380
|
const session = yield createBatchSessionAPICall(
|
|
2153
|
-
`${
|
|
2381
|
+
`${envBatchServiceUrl}create/session`,
|
|
2154
2382
|
this.APIkey,
|
|
2155
2383
|
{
|
|
2156
2384
|
name,
|
|
@@ -2182,8 +2410,9 @@ var ActaBatch = class {
|
|
|
2182
2410
|
walletClient,
|
|
2183
2411
|
instructionId
|
|
2184
2412
|
} = parameters;
|
|
2413
|
+
const { envBatchServiceUrl } = returnEnvUrl(chainId);
|
|
2185
2414
|
const instuctionData = yield fetchBatchInstructionDetails(
|
|
2186
|
-
`${
|
|
2415
|
+
`${envBatchServiceUrl}instruction/${instructionId}`,
|
|
2187
2416
|
this.APIkey
|
|
2188
2417
|
);
|
|
2189
2418
|
if (instuctionData.receivers.length === 0 || instuctionData.receivers.length === void 0) {
|
|
@@ -2259,8 +2488,9 @@ var ActaBatch = class {
|
|
|
2259
2488
|
allowMaxTokenApproval,
|
|
2260
2489
|
instructionId
|
|
2261
2490
|
} = params;
|
|
2491
|
+
const { envBatchServiceUrl } = returnEnvUrl(chainId);
|
|
2262
2492
|
const instuctionData = yield fetchBatchInstructionDetails(
|
|
2263
|
-
`${
|
|
2493
|
+
`${envBatchServiceUrl}instruction/${instructionId}`,
|
|
2264
2494
|
this.APIkey
|
|
2265
2495
|
);
|
|
2266
2496
|
if (instuctionData.receivers.length === 0 || instuctionData.receivers.length === void 0) {
|
|
@@ -2303,7 +2533,7 @@ var ActaBatch = class {
|
|
|
2303
2533
|
allowMaxTokenApproval
|
|
2304
2534
|
});
|
|
2305
2535
|
const txn = yield executeSingleBatchPaymentAPICall(
|
|
2306
|
-
`${
|
|
2536
|
+
`${envBatchServiceUrl}execute/single/batch`,
|
|
2307
2537
|
this.APIkey,
|
|
2308
2538
|
rpcParameters,
|
|
2309
2539
|
{
|
|
@@ -2326,6 +2556,98 @@ var ActaBatch = class {
|
|
|
2326
2556
|
}
|
|
2327
2557
|
});
|
|
2328
2558
|
}
|
|
2559
|
+
createScheduleBatchPayment(params, serviceParams) {
|
|
2560
|
+
return __async(this, null, function* () {
|
|
2561
|
+
try {
|
|
2562
|
+
const {
|
|
2563
|
+
chainId,
|
|
2564
|
+
feeInclusive,
|
|
2565
|
+
signerAddress,
|
|
2566
|
+
token: tokenSymbol,
|
|
2567
|
+
walletClient,
|
|
2568
|
+
allowMaxTokenApproval,
|
|
2569
|
+
instructionId,
|
|
2570
|
+
executionTime
|
|
2571
|
+
} = params;
|
|
2572
|
+
const { envBatchServiceUrl } = returnEnvUrl(chainId);
|
|
2573
|
+
if (executionTime <= Date.now() + 1e3 * 60 * 2) {
|
|
2574
|
+
throw new Error(
|
|
2575
|
+
"Execution time must be more than 5 mins from current time."
|
|
2576
|
+
);
|
|
2577
|
+
}
|
|
2578
|
+
const instuctionData = yield fetchBatchInstructionDetails(
|
|
2579
|
+
`${envBatchServiceUrl}instruction/${instructionId}`,
|
|
2580
|
+
this.APIkey
|
|
2581
|
+
);
|
|
2582
|
+
if (instuctionData.receivers.length === 0 || instuctionData.receivers.length === void 0) {
|
|
2583
|
+
throw new Error("Instruction not found");
|
|
2584
|
+
}
|
|
2585
|
+
console.log(instuctionData);
|
|
2586
|
+
const tokenData = getTokenByChainIdAndSymbol(chainId, tokenSymbol);
|
|
2587
|
+
if (!tokenData) {
|
|
2588
|
+
throw new Error("Token not supported");
|
|
2589
|
+
}
|
|
2590
|
+
const totalAmount = instuctionData.totalAmount;
|
|
2591
|
+
const totalAmountParsed = BigInt(
|
|
2592
|
+
(0, import_viem7.parseUnits)(totalAmount, tokenData.decimals)
|
|
2593
|
+
);
|
|
2594
|
+
const receivers = instuctionData.receivers.map(
|
|
2595
|
+
(i) => {
|
|
2596
|
+
const receiver = (0, import_viem7.getAddress)(i.address);
|
|
2597
|
+
const tokenAmount = BigInt((0, import_viem7.parseUnits)(i.amount, tokenData.decimals));
|
|
2598
|
+
return {
|
|
2599
|
+
address: receiver,
|
|
2600
|
+
amount: tokenAmount
|
|
2601
|
+
};
|
|
2602
|
+
}
|
|
2603
|
+
);
|
|
2604
|
+
const viemClient = new ViemClient(chainId, walletClient);
|
|
2605
|
+
const account = new ActaAccount(
|
|
2606
|
+
chainId,
|
|
2607
|
+
viemClient.publicClient(),
|
|
2608
|
+
walletClient
|
|
2609
|
+
);
|
|
2610
|
+
console.log("signing");
|
|
2611
|
+
const { amountExclusive, approval } = yield account.signRecurringOrScheduleBatchPayments({
|
|
2612
|
+
signerAddress,
|
|
2613
|
+
chainId,
|
|
2614
|
+
token: tokenSymbol,
|
|
2615
|
+
feeInclusive,
|
|
2616
|
+
receivers,
|
|
2617
|
+
totalAmount: totalAmountParsed,
|
|
2618
|
+
walletClient,
|
|
2619
|
+
allowMaxTokenApproval,
|
|
2620
|
+
count: 1
|
|
2621
|
+
});
|
|
2622
|
+
const txn = yield executeScheduleBatchPaymentAPICall(
|
|
2623
|
+
`${envBatchServiceUrl}execute/schedule/batch`,
|
|
2624
|
+
this.APIkey,
|
|
2625
|
+
{
|
|
2626
|
+
senderAddress: signerAddress,
|
|
2627
|
+
chainId,
|
|
2628
|
+
tokenAddress: tokenData.address,
|
|
2629
|
+
amount: (0, import_viem7.toHex)(totalAmountParsed),
|
|
2630
|
+
feeInclusive,
|
|
2631
|
+
serviceType: "batch",
|
|
2632
|
+
amountExclusive: (0, import_viem7.toHex)(amountExclusive),
|
|
2633
|
+
approval,
|
|
2634
|
+
executionAt: executionTime
|
|
2635
|
+
},
|
|
2636
|
+
{
|
|
2637
|
+
sessionId: serviceParams.sessionId
|
|
2638
|
+
}
|
|
2639
|
+
);
|
|
2640
|
+
console.log(txn);
|
|
2641
|
+
return txn.transaction.id;
|
|
2642
|
+
} catch (error) {
|
|
2643
|
+
console.log(error);
|
|
2644
|
+
if (error instanceof Error) {
|
|
2645
|
+
throw new Error(error.message);
|
|
2646
|
+
}
|
|
2647
|
+
throw new Error("Failed to create payment.");
|
|
2648
|
+
}
|
|
2649
|
+
});
|
|
2650
|
+
}
|
|
2329
2651
|
};
|
|
2330
2652
|
|
|
2331
2653
|
// src/utils.ts
|
|
@@ -2341,7 +2663,7 @@ var import_semver = require("semver");
|
|
|
2341
2663
|
var ECDSA_SIGNER_CONTRACT = "0x6A6F069E2a08c2468e7724Ab3250CdBFBA14D4FF";
|
|
2342
2664
|
var billingServiceUrl = "https://api.acta.link/billing/v1/";
|
|
2343
2665
|
var depositServiceUrl2 = "https://api.acta.link/deposit/v1/";
|
|
2344
|
-
var
|
|
2666
|
+
var transactionServiceUrl4 = "https://api.acta.link/transaction/v1/";
|
|
2345
2667
|
var toSignerId = (signer) => {
|
|
2346
2668
|
return (0, import_viem8.encodeAbiParameters)(
|
|
2347
2669
|
[{ name: "signerData", type: "bytes" }],
|
|
@@ -2740,7 +3062,7 @@ var cancelRecurringTransaction = (_0) => __async(null, [_0], function* ({
|
|
|
2740
3062
|
});
|
|
2741
3063
|
console.log(rpcParameters);
|
|
2742
3064
|
const txn = yield cancelRecurringPaymentAPICall(
|
|
2743
|
-
`${
|
|
3065
|
+
`${transactionServiceUrl4}execute/cancel`,
|
|
2744
3066
|
rpcParameters,
|
|
2745
3067
|
{
|
|
2746
3068
|
chainId,
|
|
@@ -2775,6 +3097,7 @@ var cancelRecurringTransaction = (_0) => __async(null, [_0], function* ({
|
|
|
2775
3097
|
baseDAI,
|
|
2776
3098
|
baseETH,
|
|
2777
3099
|
baseEURC,
|
|
3100
|
+
baseSepoliaUSDC,
|
|
2778
3101
|
baseUSDC,
|
|
2779
3102
|
baseUSDT,
|
|
2780
3103
|
baseUSDbC,
|
|
@@ -2800,6 +3123,7 @@ var cancelRecurringTransaction = (_0) => __async(null, [_0], function* ({
|
|
|
2800
3123
|
ethereumUSDC,
|
|
2801
3124
|
ethereumUSDT,
|
|
2802
3125
|
ethereumWETH,
|
|
3126
|
+
executeScheduleBatchPaymentAPICall,
|
|
2803
3127
|
executeSingleBatchPaymentAPICall,
|
|
2804
3128
|
executeSinglePaymentAPICall,
|
|
2805
3129
|
fetchBatchInstructionDetails,
|
|
@@ -2819,12 +3143,14 @@ var cancelRecurringTransaction = (_0) => __async(null, [_0], function* ({
|
|
|
2819
3143
|
lineaETH,
|
|
2820
3144
|
lineaUSDC,
|
|
2821
3145
|
lineaWETH,
|
|
3146
|
+
mainnetChains,
|
|
2822
3147
|
optimismDAI,
|
|
2823
3148
|
optimismETH,
|
|
2824
3149
|
optimismUSDC,
|
|
2825
3150
|
optimismUSDCe,
|
|
2826
3151
|
optimismUSDT,
|
|
2827
3152
|
optimismWETH,
|
|
3153
|
+
polygonAmoyUSDC,
|
|
2828
3154
|
polygonDAI,
|
|
2829
3155
|
polygonPOL,
|
|
2830
3156
|
polygonUSDC,
|
|
@@ -2834,9 +3160,11 @@ var cancelRecurringTransaction = (_0) => __async(null, [_0], function* ({
|
|
|
2834
3160
|
polygonWPOL,
|
|
2835
3161
|
scheduleRecurringPaymentsAPICall,
|
|
2836
3162
|
sendRequest,
|
|
3163
|
+
sepoliaUSDC,
|
|
2837
3164
|
serializePermissionAccountParams,
|
|
2838
3165
|
supportedChains,
|
|
2839
3166
|
supportedTokensByChain,
|
|
3167
|
+
testnetChains,
|
|
2840
3168
|
toECDSASigner,
|
|
2841
3169
|
toPermissionValidator,
|
|
2842
3170
|
toPolicyId,
|