@actalink/commonlib 0.0.2 → 0.0.3

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 CHANGED
@@ -177,14 +177,14 @@ function getChainExplorerByChainId(chainId) {
177
177
 
178
178
  // src/types.ts
179
179
  var TokenLogo = /* @__PURE__ */ ((TokenLogo2) => {
180
- TokenLogo2["ETH"] = "https://pay.daimo.com/chain-logos/ethereum.png";
181
- TokenLogo2["WETH"] = "https://pay.daimo.com/coin-logos/weth.png";
182
- TokenLogo2["USDC"] = "https://pay.daimo.com/coin-logos/usdc.png";
183
- TokenLogo2["EURC"] = "https://pay.daimo.com/coin-logos/eurc.png";
184
- TokenLogo2["USDT"] = "https://pay.daimo.com/coin-logos/usdt.png";
185
- TokenLogo2["DAI"] = "https://pay.daimo.com/coin-logos/dai.png";
186
- TokenLogo2["POL"] = "https://pay.daimo.com/coin-logos/pol.png";
187
- TokenLogo2["BNB"] = "https://pay.daimo.com/coin-logos/bnb.png";
180
+ TokenLogo2["ETH"] = "https://api.acta.link/deposit/v1/logos/ethereum.png";
181
+ TokenLogo2["WETH"] = "https://api.acta.link/deposit/v1/logos/weth.png";
182
+ TokenLogo2["USDC"] = "https://api.acta.link/deposit/v1/logos/usdc.png";
183
+ TokenLogo2["EURC"] = "https://api.acta.link/deposit/v1/logos/eurc.png";
184
+ TokenLogo2["USDT"] = "https://api.acta.link/deposit/v1/logos/usdt.png";
185
+ TokenLogo2["DAI"] = "https://api.acta.link/deposit/v1/logos/dai.png";
186
+ TokenLogo2["POL"] = "https://api.acta.link/deposit/v1/logos/pol.png";
187
+ TokenLogo2["BNB"] = "https://api.acta.link/deposit/v1/logos/bnb.png";
188
188
  return TokenLogo2;
189
189
  })(TokenLogo || {});
190
190
  var ConnectorType = /* @__PURE__ */ ((ConnectorType2) => {
@@ -207,7 +207,7 @@ var arbitrumWETH = token({
207
207
  decimals: 18,
208
208
  name: "Wrapped Ether",
209
209
  symbol: "WETH",
210
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
210
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
211
211
  });
212
212
  var arbitrumUSDC = token({
213
213
  chainId: import_chains2.arbitrum.id,
@@ -216,7 +216,7 @@ var arbitrumUSDC = token({
216
216
  symbol: "USDC",
217
217
  fiatISO: "USD",
218
218
  decimals: 6,
219
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
219
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
220
220
  });
221
221
  var arbitrumDAI = token({
222
222
  chainId: import_chains2.arbitrum.id,
@@ -225,7 +225,7 @@ var arbitrumDAI = token({
225
225
  fiatISO: "USD",
226
226
  name: "Dai Stablecoin",
227
227
  symbol: "DAI",
228
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
228
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
229
229
  });
230
230
  var arbitrumUSDT = token({
231
231
  chainId: import_chains2.arbitrum.id,
@@ -234,7 +234,7 @@ var arbitrumUSDT = token({
234
234
  fiatISO: "USD",
235
235
  name: "Tether USD",
236
236
  symbol: "USDT",
237
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
237
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
238
238
  });
239
239
  var arbitrumUSDCe = token({
240
240
  chainId: import_chains2.arbitrum.id,
@@ -243,7 +243,7 @@ var arbitrumUSDCe = token({
243
243
  fiatISO: "USD",
244
244
  name: "Bridged USD Coin",
245
245
  symbol: "USDCe",
246
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
246
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
247
247
  });
248
248
  var arbitrumTokens = [arbitrumUSDC, arbitrumUSDT];
249
249
  var baseETH = nativeETH(import_chains2.base.id);
@@ -253,7 +253,7 @@ var baseWETH = token({
253
253
  decimals: 18,
254
254
  name: "Wrapped Ether",
255
255
  symbol: "WETH",
256
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
256
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
257
257
  });
258
258
  var baseUSDC = token({
259
259
  chainId: import_chains2.base.id,
@@ -262,7 +262,7 @@ var baseUSDC = token({
262
262
  symbol: "USDC",
263
263
  fiatISO: "USD",
264
264
  decimals: 6,
265
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
265
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
266
266
  });
267
267
  var baseEURC = token({
268
268
  chainId: import_chains2.base.id,
@@ -271,7 +271,7 @@ var baseEURC = token({
271
271
  fiatISO: "EUR",
272
272
  name: "EURC",
273
273
  symbol: "EURC",
274
- logoURI: "https://pay.daimo.com/coin-logos/eurc.png" /* EURC */
274
+ logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
275
275
  });
276
276
  var baseUSDbC = token({
277
277
  chainId: import_chains2.base.id,
@@ -280,7 +280,7 @@ var baseUSDbC = token({
280
280
  symbol: "USDbC",
281
281
  fiatISO: "USD",
282
282
  decimals: 6,
283
- logoURI: "https://pay.daimo.com/coin-logos/usdbc.png"
283
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdbc.png"
284
284
  });
285
285
  var baseDAI = token({
286
286
  chainId: import_chains2.base.id,
@@ -289,7 +289,7 @@ var baseDAI = token({
289
289
  symbol: "DAI",
290
290
  fiatISO: "USD",
291
291
  decimals: 18,
292
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
292
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
293
293
  });
294
294
  var baseUSDT = token({
295
295
  chainId: import_chains2.base.id,
@@ -298,14 +298,14 @@ var baseUSDT = token({
298
298
  symbol: "USDT",
299
299
  fiatISO: "USD",
300
300
  decimals: 6,
301
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
301
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
302
302
  });
303
303
  var baseTokens = [baseUSDC, baseUSDT];
304
304
  var bscBNB = nativeToken({
305
305
  chainId: import_chains2.bsc.id,
306
306
  name: "BNB",
307
307
  symbol: "BNB",
308
- logoURI: "https://pay.daimo.com/coin-logos/bnb.png" /* BNB */
308
+ logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
309
309
  });
310
310
  var bscWBNB = token({
311
311
  chainId: import_chains2.bsc.id,
@@ -313,7 +313,7 @@ var bscWBNB = token({
313
313
  decimals: 18,
314
314
  name: "Wrapped BNB",
315
315
  symbol: "WBNB",
316
- logoURI: "https://pay.daimo.com/coin-logos/bnb.png" /* BNB */
316
+ logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
317
317
  });
318
318
  var bscUSDC = token({
319
319
  chainId: import_chains2.bsc.id,
@@ -322,7 +322,7 @@ var bscUSDC = token({
322
322
  fiatISO: "USD",
323
323
  name: "USD Coin",
324
324
  symbol: "USDC",
325
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
325
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
326
326
  });
327
327
  var bscUSDT = token({
328
328
  chainId: import_chains2.bsc.id,
@@ -331,7 +331,7 @@ var bscUSDT = token({
331
331
  fiatISO: "USD",
332
332
  name: "Tether USD",
333
333
  symbol: "USDT",
334
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
334
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
335
335
  });
336
336
  var bscTokens = [bscUSDT];
337
337
  var ethereumETH = nativeETH(import_chains2.mainnet.id);
@@ -341,7 +341,7 @@ var ethereumWETH = token({
341
341
  decimals: 18,
342
342
  name: "Wrapped Ether",
343
343
  symbol: "WETH",
344
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
344
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
345
345
  });
346
346
  var ethereumUSDC = token({
347
347
  chainId: import_chains2.mainnet.id,
@@ -350,7 +350,7 @@ var ethereumUSDC = token({
350
350
  fiatISO: "USD",
351
351
  name: "USD Coin",
352
352
  symbol: "USDC",
353
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
353
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
354
354
  });
355
355
  var ethereumDAI = token({
356
356
  chainId: import_chains2.mainnet.id,
@@ -359,7 +359,7 @@ var ethereumDAI = token({
359
359
  fiatISO: "USD",
360
360
  name: "Dai Stablecoin",
361
361
  symbol: "DAI",
362
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
362
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
363
363
  });
364
364
  var ethereumUSDT = token({
365
365
  chainId: import_chains2.mainnet.id,
@@ -368,7 +368,7 @@ var ethereumUSDT = token({
368
368
  fiatISO: "USD",
369
369
  name: "Tether USD",
370
370
  symbol: "USDT",
371
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
371
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
372
372
  });
373
373
  var ethereumEURC = token({
374
374
  chainId: import_chains2.mainnet.id,
@@ -377,7 +377,7 @@ var ethereumEURC = token({
377
377
  fiatISO: "EUR",
378
378
  name: "EURC",
379
379
  symbol: "EURC",
380
- logoURI: "https://pay.daimo.com/coin-logos/eurc.png" /* EURC */
380
+ logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
381
381
  });
382
382
  var ethereumTokens = [ethereumUSDC, ethereumUSDT];
383
383
  var lineaETH = nativeETH(import_chains2.linea.id);
@@ -387,7 +387,7 @@ var lineaWETH = token({
387
387
  decimals: 18,
388
388
  name: "Wrapped Ether",
389
389
  symbol: "WETH",
390
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
390
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
391
391
  });
392
392
  var lineaUSDC = token({
393
393
  chainId: import_chains2.linea.id,
@@ -396,7 +396,7 @@ var lineaUSDC = token({
396
396
  fiatISO: "USD",
397
397
  name: "USD Coin",
398
398
  symbol: "USDC",
399
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
399
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
400
400
  });
401
401
  var lineaDAI = token({
402
402
  chainId: import_chains2.linea.id,
@@ -405,7 +405,7 @@ var lineaDAI = token({
405
405
  fiatISO: "USD",
406
406
  name: "Dai Stablecoin",
407
407
  symbol: "DAI",
408
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
408
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
409
409
  });
410
410
  var optimismETH = nativeETH(import_chains2.optimism.id);
411
411
  var optimismWETH = token({
@@ -414,7 +414,7 @@ var optimismWETH = token({
414
414
  decimals: 18,
415
415
  name: "Wrapped Ether",
416
416
  symbol: "WETH",
417
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
417
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
418
418
  });
419
419
  var optimismUSDC = token({
420
420
  chainId: import_chains2.optimism.id,
@@ -423,7 +423,7 @@ var optimismUSDC = token({
423
423
  fiatISO: "USD",
424
424
  name: "USD Coin",
425
425
  symbol: "USDC",
426
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
426
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
427
427
  });
428
428
  var optimismDAI = token({
429
429
  chainId: import_chains2.optimism.id,
@@ -432,7 +432,7 @@ var optimismDAI = token({
432
432
  fiatISO: "USD",
433
433
  name: "Dai Stablecoin",
434
434
  symbol: "DAI",
435
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
435
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
436
436
  });
437
437
  var optimismUSDT = token({
438
438
  chainId: import_chains2.optimism.id,
@@ -441,7 +441,7 @@ var optimismUSDT = token({
441
441
  fiatISO: "USD",
442
442
  name: "Tether USD",
443
443
  symbol: "USDT",
444
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
444
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
445
445
  });
446
446
  var optimismUSDCe = token({
447
447
  chainId: import_chains2.optimism.id,
@@ -450,14 +450,14 @@ var optimismUSDCe = token({
450
450
  fiatISO: "USD",
451
451
  name: "Bridged USD Coin",
452
452
  symbol: "USDCe",
453
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
453
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
454
454
  });
455
455
  var optimismTokens = [optimismUSDC, optimismUSDT];
456
456
  var polygonPOL = nativeToken({
457
457
  chainId: import_chains2.polygon.id,
458
458
  name: "Polygon",
459
459
  symbol: "POL",
460
- logoURI: "https://pay.daimo.com/coin-logos/pol.png" /* POL */
460
+ logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
461
461
  });
462
462
  var polygonWPOL = token({
463
463
  chainId: import_chains2.polygon.id,
@@ -465,7 +465,7 @@ var polygonWPOL = token({
465
465
  decimals: 18,
466
466
  name: "Wrapped Polygon",
467
467
  symbol: "WPOL",
468
- logoURI: "https://pay.daimo.com/coin-logos/pol.png" /* POL */
468
+ logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
469
469
  });
470
470
  var polygonWETH = token({
471
471
  chainId: import_chains2.polygon.id,
@@ -473,7 +473,7 @@ var polygonWETH = token({
473
473
  decimals: 18,
474
474
  name: "Wrapped Ether",
475
475
  symbol: "WETH",
476
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
476
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
477
477
  });
478
478
  var polygonUSDC = token({
479
479
  chainId: import_chains2.polygon.id,
@@ -482,7 +482,7 @@ var polygonUSDC = token({
482
482
  fiatISO: "USD",
483
483
  name: "USD Coin",
484
484
  symbol: "USDC",
485
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
485
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
486
486
  });
487
487
  var polygonDAI = token({
488
488
  chainId: import_chains2.polygon.id,
@@ -491,7 +491,7 @@ var polygonDAI = token({
491
491
  fiatISO: "USD",
492
492
  name: "Dai Stablecoin",
493
493
  symbol: "DAI",
494
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
494
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
495
495
  });
496
496
  var polygonUSDT = token({
497
497
  chainId: import_chains2.polygon.id,
@@ -500,7 +500,7 @@ var polygonUSDT = token({
500
500
  fiatISO: "USD",
501
501
  name: "Tether USD",
502
502
  symbol: "USDT",
503
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
503
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
504
504
  });
505
505
  var polygonUSDCe = token({
506
506
  chainId: import_chains2.polygon.id,
@@ -509,7 +509,7 @@ var polygonUSDCe = token({
509
509
  fiatISO: "USD",
510
510
  name: "USD Coin (PoS)",
511
511
  symbol: "USDCe",
512
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
512
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
513
513
  });
514
514
  var polygonTokens = [polygonUSDC, polygonUSDT];
515
515
  var supportedTokensByChain = /* @__PURE__ */ new Map([
@@ -531,7 +531,7 @@ function nativeETH(chainId) {
531
531
  chainId,
532
532
  name: "Ether",
533
533
  symbol: "ETH",
534
- logoURI: "https://pay.daimo.com/chain-logos/ethereum.png" /* ETH */
534
+ logoURI: "https://api.acta.link/deposit/v1/logos/ethereum.png" /* ETH */
535
535
  });
536
536
  }
537
537
  function nativeToken({
@@ -602,7 +602,8 @@ function getTokenByChainIdAndAddress(chainId, address) {
602
602
  const tokens = supportedTokensByChain.get(chain.id);
603
603
  if (!tokens) throw new Error(`Tokens not found for chain ${chainId}.`);
604
604
  const token2 = tokens.find((t) => t.address === address);
605
- if (!token2) throw new Error(`Token ${address} not found for chain ${chainId}.`);
605
+ if (!token2)
606
+ throw new Error(`Token ${address} not found for chain ${chainId}.`);
606
607
  return token2;
607
608
  }
608
609
 
@@ -688,7 +689,7 @@ var ViemClient = class {
688
689
  return allowance;
689
690
  });
690
691
  }
691
- checkAndApproveToken(token2, spender, amount) {
692
+ checkAndApproveToken(token2, spender, amount, allowMaxTokenApproval) {
692
693
  return __async(this, null, function* () {
693
694
  var _a;
694
695
  if (this.walletClient === void 0) {
@@ -704,7 +705,7 @@ var ViemClient = class {
704
705
  signerAddress,
705
706
  spender
706
707
  );
707
- if (allowance < amount) {
708
+ if (allowance < amount || allowMaxTokenApproval) {
708
709
  const txn = yield this.walletClient.sendTransaction({
709
710
  to: token2.address,
710
711
  account: signerAddress,
@@ -713,7 +714,7 @@ var ViemClient = class {
713
714
  data: (0, import_viem2.encodeFunctionData)({
714
715
  abi: (0, import_viem2.parseAbi)(["function approve(address,uint)"]),
715
716
  functionName: "approve",
716
- args: [spender, amount]
717
+ args: [spender, allowMaxTokenApproval ? import_viem2.maxUint256 : amount]
717
718
  })
718
719
  });
719
720
  const receipt = yield this.publicClient().waitForTransactionReceipt({
@@ -1244,7 +1245,8 @@ var ActaAccount = class {
1244
1245
  token: tokenSymbol,
1245
1246
  amount,
1246
1247
  receiver,
1247
- feeInclusive
1248
+ feeInclusive,
1249
+ allowMaxTokenApproval
1248
1250
  } = singlePaymentParams;
1249
1251
  if (amount <= BigInt(0)) {
1250
1252
  throw new Error("Amount must be greater than 0.");
@@ -1281,7 +1283,8 @@ var ActaAccount = class {
1281
1283
  yield viemClient.checkAndApproveToken(
1282
1284
  token2,
1283
1285
  smartAccountAddress,
1284
- amountToTransfer
1286
+ amountToTransfer,
1287
+ allowMaxTokenApproval != null ? allowMaxTokenApproval : false
1285
1288
  );
1286
1289
  const userOperation = yield accountClient.prepareUserOperation({
1287
1290
  calls: [
@@ -1347,7 +1350,8 @@ var ActaAccount = class {
1347
1350
  count,
1348
1351
  intervalUnit,
1349
1352
  startDate,
1350
- endDate
1353
+ endDate,
1354
+ allowMaxTokenApproval
1351
1355
  } = recurringPaymentParams;
1352
1356
  if (amount <= BigInt(0)) {
1353
1357
  throw new Error("Amount must be greater than 0.");
@@ -1406,7 +1410,8 @@ var ActaAccount = class {
1406
1410
  yield viemClient.checkAndApproveToken(
1407
1411
  token2,
1408
1412
  smartAccountAddress,
1409
- amountToTransfer * BigInt(paymentCount) + estimatedGasCostInToken * BigInt(2) * BigInt(paymentCount)
1413
+ amountToTransfer * BigInt(paymentCount) + estimatedGasCostInToken * BigInt(2) * BigInt(paymentCount),
1414
+ allowMaxTokenApproval != null ? allowMaxTokenApproval : false
1410
1415
  );
1411
1416
  const callPolicy = (0, import_policies2.toCallPolicy)({
1412
1417
  policyVersion: import_policies2.CallPolicyVersion.V0_0_4,
@@ -1619,7 +1624,8 @@ var ActaDeposit = class {
1619
1624
  this.depositSessionId = "";
1620
1625
  this.status = "not_started";
1621
1626
  this.serviceType = "deposit";
1622
- var _a;
1627
+ this.allowMaxTokenApproval = false;
1628
+ var _a, _b;
1623
1629
  this.connectorType = parameters.connectorType;
1624
1630
  this.walletClient = parameters.walletClient;
1625
1631
  this.signerAddress = parameters.signerAddress;
@@ -1634,6 +1640,7 @@ var ActaDeposit = class {
1634
1640
  this.startDate = parameters.startDate;
1635
1641
  this.endDate = parameters.endDate;
1636
1642
  this.depositSessionId = (_a = parameters.depositSessionId) != null ? _a : "";
1643
+ this.allowMaxTokenApproval = (_b = parameters.allowMaxTokenApproval) != null ? _b : false;
1637
1644
  this.viemClient = new ViemClient(this.chainId, this.walletClient);
1638
1645
  this.account = new ActaAccount(
1639
1646
  this.chainId,
@@ -1797,7 +1804,8 @@ var ActaDeposit = class {
1797
1804
  token: tokenSymbol,
1798
1805
  amount,
1799
1806
  receiver,
1800
- feeInclusive
1807
+ feeInclusive,
1808
+ allowMaxTokenApproval: this.allowMaxTokenApproval
1801
1809
  });
1802
1810
  const txn = yield executeSinglePaymentAPICall(
1803
1811
  `${transactionServiceUrl}execute/single`,
@@ -1889,7 +1897,8 @@ var ActaDeposit = class {
1889
1897
  intervalUnit,
1890
1898
  startDate,
1891
1899
  endDate,
1892
- receiver
1900
+ receiver,
1901
+ allowMaxTokenApproval: this.allowMaxTokenApproval
1893
1902
  });
1894
1903
  const txn = yield scheduleRecurringPaymentsAPICall(
1895
1904
  `${transactionServiceUrl}schedule/recurring`,
package/dist/index.d.cts CHANGED
@@ -19,14 +19,14 @@ import { KernelSmartAccountImplementation } from '@zerodev/sdk/accounts';
19
19
  import * as viem__types_actions_siwe_verifySiweMessage_js from 'viem/_types/actions/siwe/verifySiweMessage.js';
20
20
 
21
21
  declare enum TokenLogo {
22
- ETH = "https://pay.daimo.com/chain-logos/ethereum.png",
23
- WETH = "https://pay.daimo.com/coin-logos/weth.png",
24
- USDC = "https://pay.daimo.com/coin-logos/usdc.png",
25
- EURC = "https://pay.daimo.com/coin-logos/eurc.png",
26
- USDT = "https://pay.daimo.com/coin-logos/usdt.png",
27
- DAI = "https://pay.daimo.com/coin-logos/dai.png",
28
- POL = "https://pay.daimo.com/coin-logos/pol.png",
29
- BNB = "https://pay.daimo.com/coin-logos/bnb.png"
22
+ ETH = "https://api.acta.link/deposit/v1/logos/ethereum.png",
23
+ WETH = "https://api.acta.link/deposit/v1/logos/weth.png",
24
+ USDC = "https://api.acta.link/deposit/v1/logos/usdc.png",
25
+ EURC = "https://api.acta.link/deposit/v1/logos/eurc.png",
26
+ USDT = "https://api.acta.link/deposit/v1/logos/usdt.png",
27
+ DAI = "https://api.acta.link/deposit/v1/logos/dai.png",
28
+ POL = "https://api.acta.link/deposit/v1/logos/pol.png",
29
+ BNB = "https://api.acta.link/deposit/v1/logos/bnb.png"
30
30
  }
31
31
  type Token = {
32
32
  chainId: number;
@@ -60,6 +60,7 @@ interface AbstractPaymentParams {
60
60
  }
61
61
  interface DepositClassParams extends AbstractPaymentParams {
62
62
  depositSessionId?: string;
63
+ allowMaxTokenApproval?: boolean;
63
64
  }
64
65
  type EstimateSinglePaymentGasParameters = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "paymentType" | "count" | "intervalUnit" | "startDate" | "endDate" | "serviceUrl" | "serviceParams" | "serviceSessionParams">;
65
66
  type ModularSigner = {
@@ -120,9 +121,12 @@ type PermissionAccountParams = {
120
121
  privateKey?: Hex;
121
122
  eip7702Auth?: SignAuthorizationReturnType;
122
123
  };
123
- type SinglePaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "serviceUrl" | "serviceSessionParams" | "count" | "intervalUnit" | "startDate" | "endDate" | "paymentType">;
124
+ type SinglePaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "serviceUrl" | "serviceSessionParams" | "count" | "intervalUnit" | "startDate" | "endDate" | "paymentType"> & {
125
+ allowMaxTokenApproval?: boolean;
126
+ };
124
127
  type RecurringPaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "paymentType" | "serviceUrl" | "serviceSessionParams"> & {
125
128
  endDate?: number;
129
+ allowMaxTokenApproval?: boolean;
126
130
  };
127
131
 
128
132
  declare const arbitrumETH: Token;
@@ -203,6 +207,7 @@ declare class ActaDeposit {
203
207
  private readonly account;
204
208
  private readonly viemClient;
205
209
  private readonly serviceType;
210
+ private readonly allowMaxTokenApproval;
206
211
  constructor(parameters: DepositClassParams);
207
212
  createSession(serviceSessionparams: {
208
213
  projectId: string;
@@ -9181,7 +9186,7 @@ declare class ViemClient {
9181
9186
  } & viem.ExactPartial<Pick<viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined>, "call" | "getChainId" | "prepareTransactionRequest" | "sendRawTransaction" | "createContractEventFilter" | "createEventFilter" | "estimateContractGas" | "estimateGas" | "getBlock" | "getBlockNumber" | "getContractEvents" | "getEnsText" | "getFilterChanges" | "getGasPrice" | "getLogs" | "getTransaction" | "getTransactionCount" | "getTransactionReceipt" | "readContract" | "simulateContract" | "uninstallFilter" | "watchBlockNumber" | "watchContractEvent"> & Pick<viem.WalletActions<viem.Chain | undefined, undefined>, "sendTransaction" | "writeContract">>>(fn: (client: viem.Client<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined, viem.PublicRpcSchema, viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined>>) => client) => viem.Client<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined, viem.PublicRpcSchema, { [K in keyof client]: client[K]; } & viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined>>;
9182
9187
  };
9183
9188
  checkTokenAllowance(token: Token, owner: Address, spender: Address): Promise<bigint>;
9184
- checkAndApproveToken(token: Token, spender: Address, amount: bigint): Promise<bigint>;
9189
+ checkAndApproveToken(token: Token, spender: Address, amount: bigint, allowMaxTokenApproval: boolean): Promise<bigint>;
9185
9190
  }
9186
9191
 
9187
9192
  declare function getRpcByChainId(chainId: number): string | undefined;
package/dist/index.d.ts CHANGED
@@ -19,14 +19,14 @@ import { KernelSmartAccountImplementation } from '@zerodev/sdk/accounts';
19
19
  import * as viem__types_actions_siwe_verifySiweMessage_js from 'viem/_types/actions/siwe/verifySiweMessage.js';
20
20
 
21
21
  declare enum TokenLogo {
22
- ETH = "https://pay.daimo.com/chain-logos/ethereum.png",
23
- WETH = "https://pay.daimo.com/coin-logos/weth.png",
24
- USDC = "https://pay.daimo.com/coin-logos/usdc.png",
25
- EURC = "https://pay.daimo.com/coin-logos/eurc.png",
26
- USDT = "https://pay.daimo.com/coin-logos/usdt.png",
27
- DAI = "https://pay.daimo.com/coin-logos/dai.png",
28
- POL = "https://pay.daimo.com/coin-logos/pol.png",
29
- BNB = "https://pay.daimo.com/coin-logos/bnb.png"
22
+ ETH = "https://api.acta.link/deposit/v1/logos/ethereum.png",
23
+ WETH = "https://api.acta.link/deposit/v1/logos/weth.png",
24
+ USDC = "https://api.acta.link/deposit/v1/logos/usdc.png",
25
+ EURC = "https://api.acta.link/deposit/v1/logos/eurc.png",
26
+ USDT = "https://api.acta.link/deposit/v1/logos/usdt.png",
27
+ DAI = "https://api.acta.link/deposit/v1/logos/dai.png",
28
+ POL = "https://api.acta.link/deposit/v1/logos/pol.png",
29
+ BNB = "https://api.acta.link/deposit/v1/logos/bnb.png"
30
30
  }
31
31
  type Token = {
32
32
  chainId: number;
@@ -60,6 +60,7 @@ interface AbstractPaymentParams {
60
60
  }
61
61
  interface DepositClassParams extends AbstractPaymentParams {
62
62
  depositSessionId?: string;
63
+ allowMaxTokenApproval?: boolean;
63
64
  }
64
65
  type EstimateSinglePaymentGasParameters = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "paymentType" | "count" | "intervalUnit" | "startDate" | "endDate" | "serviceUrl" | "serviceParams" | "serviceSessionParams">;
65
66
  type ModularSigner = {
@@ -120,9 +121,12 @@ type PermissionAccountParams = {
120
121
  privateKey?: Hex;
121
122
  eip7702Auth?: SignAuthorizationReturnType;
122
123
  };
123
- type SinglePaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "serviceUrl" | "serviceSessionParams" | "count" | "intervalUnit" | "startDate" | "endDate" | "paymentType">;
124
+ type SinglePaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "serviceUrl" | "serviceSessionParams" | "count" | "intervalUnit" | "startDate" | "endDate" | "paymentType"> & {
125
+ allowMaxTokenApproval?: boolean;
126
+ };
124
127
  type RecurringPaymentParamsType = Omit<AbstractPaymentParams, "connectorType" | "signer" | "walletClient" | "serviceType" | "paymentType" | "serviceUrl" | "serviceSessionParams"> & {
125
128
  endDate?: number;
129
+ allowMaxTokenApproval?: boolean;
126
130
  };
127
131
 
128
132
  declare const arbitrumETH: Token;
@@ -203,6 +207,7 @@ declare class ActaDeposit {
203
207
  private readonly account;
204
208
  private readonly viemClient;
205
209
  private readonly serviceType;
210
+ private readonly allowMaxTokenApproval;
206
211
  constructor(parameters: DepositClassParams);
207
212
  createSession(serviceSessionparams: {
208
213
  projectId: string;
@@ -9181,7 +9186,7 @@ declare class ViemClient {
9181
9186
  } & viem.ExactPartial<Pick<viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined>, "call" | "getChainId" | "prepareTransactionRequest" | "sendRawTransaction" | "createContractEventFilter" | "createEventFilter" | "estimateContractGas" | "estimateGas" | "getBlock" | "getBlockNumber" | "getContractEvents" | "getEnsText" | "getFilterChanges" | "getGasPrice" | "getLogs" | "getTransaction" | "getTransactionCount" | "getTransactionReceipt" | "readContract" | "simulateContract" | "uninstallFilter" | "watchBlockNumber" | "watchContractEvent"> & Pick<viem.WalletActions<viem.Chain | undefined, undefined>, "sendTransaction" | "writeContract">>>(fn: (client: viem.Client<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined, viem.PublicRpcSchema, viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined>>) => client) => viem.Client<viem.HttpTransport<undefined, false>, viem.Chain | undefined, undefined, viem.PublicRpcSchema, { [K in keyof client]: client[K]; } & viem.PublicActions<viem.HttpTransport<undefined, false>, viem.Chain | undefined>>;
9182
9187
  };
9183
9188
  checkTokenAllowance(token: Token, owner: Address, spender: Address): Promise<bigint>;
9184
- checkAndApproveToken(token: Token, spender: Address, amount: bigint): Promise<bigint>;
9189
+ checkAndApproveToken(token: Token, spender: Address, amount: bigint, allowMaxTokenApproval: boolean): Promise<bigint>;
9185
9190
  }
9186
9191
 
9187
9192
  declare function getRpcByChainId(chainId: number): string | undefined;
package/dist/index.js CHANGED
@@ -86,14 +86,14 @@ function getChainExplorerByChainId(chainId) {
86
86
 
87
87
  // src/types.ts
88
88
  var TokenLogo = /* @__PURE__ */ ((TokenLogo2) => {
89
- TokenLogo2["ETH"] = "https://pay.daimo.com/chain-logos/ethereum.png";
90
- TokenLogo2["WETH"] = "https://pay.daimo.com/coin-logos/weth.png";
91
- TokenLogo2["USDC"] = "https://pay.daimo.com/coin-logos/usdc.png";
92
- TokenLogo2["EURC"] = "https://pay.daimo.com/coin-logos/eurc.png";
93
- TokenLogo2["USDT"] = "https://pay.daimo.com/coin-logos/usdt.png";
94
- TokenLogo2["DAI"] = "https://pay.daimo.com/coin-logos/dai.png";
95
- TokenLogo2["POL"] = "https://pay.daimo.com/coin-logos/pol.png";
96
- TokenLogo2["BNB"] = "https://pay.daimo.com/coin-logos/bnb.png";
89
+ TokenLogo2["ETH"] = "https://api.acta.link/deposit/v1/logos/ethereum.png";
90
+ TokenLogo2["WETH"] = "https://api.acta.link/deposit/v1/logos/weth.png";
91
+ TokenLogo2["USDC"] = "https://api.acta.link/deposit/v1/logos/usdc.png";
92
+ TokenLogo2["EURC"] = "https://api.acta.link/deposit/v1/logos/eurc.png";
93
+ TokenLogo2["USDT"] = "https://api.acta.link/deposit/v1/logos/usdt.png";
94
+ TokenLogo2["DAI"] = "https://api.acta.link/deposit/v1/logos/dai.png";
95
+ TokenLogo2["POL"] = "https://api.acta.link/deposit/v1/logos/pol.png";
96
+ TokenLogo2["BNB"] = "https://api.acta.link/deposit/v1/logos/bnb.png";
97
97
  return TokenLogo2;
98
98
  })(TokenLogo || {});
99
99
  var ConnectorType = /* @__PURE__ */ ((ConnectorType2) => {
@@ -116,7 +116,7 @@ var arbitrumWETH = token({
116
116
  decimals: 18,
117
117
  name: "Wrapped Ether",
118
118
  symbol: "WETH",
119
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
119
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
120
120
  });
121
121
  var arbitrumUSDC = token({
122
122
  chainId: arbitrum2.id,
@@ -125,7 +125,7 @@ var arbitrumUSDC = token({
125
125
  symbol: "USDC",
126
126
  fiatISO: "USD",
127
127
  decimals: 6,
128
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
128
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
129
129
  });
130
130
  var arbitrumDAI = token({
131
131
  chainId: arbitrum2.id,
@@ -134,7 +134,7 @@ var arbitrumDAI = token({
134
134
  fiatISO: "USD",
135
135
  name: "Dai Stablecoin",
136
136
  symbol: "DAI",
137
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
137
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
138
138
  });
139
139
  var arbitrumUSDT = token({
140
140
  chainId: arbitrum2.id,
@@ -143,7 +143,7 @@ var arbitrumUSDT = token({
143
143
  fiatISO: "USD",
144
144
  name: "Tether USD",
145
145
  symbol: "USDT",
146
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
146
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
147
147
  });
148
148
  var arbitrumUSDCe = token({
149
149
  chainId: arbitrum2.id,
@@ -152,7 +152,7 @@ var arbitrumUSDCe = token({
152
152
  fiatISO: "USD",
153
153
  name: "Bridged USD Coin",
154
154
  symbol: "USDCe",
155
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
155
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
156
156
  });
157
157
  var arbitrumTokens = [arbitrumUSDC, arbitrumUSDT];
158
158
  var baseETH = nativeETH(base2.id);
@@ -162,7 +162,7 @@ var baseWETH = token({
162
162
  decimals: 18,
163
163
  name: "Wrapped Ether",
164
164
  symbol: "WETH",
165
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
165
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
166
166
  });
167
167
  var baseUSDC = token({
168
168
  chainId: base2.id,
@@ -171,7 +171,7 @@ var baseUSDC = token({
171
171
  symbol: "USDC",
172
172
  fiatISO: "USD",
173
173
  decimals: 6,
174
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
174
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
175
175
  });
176
176
  var baseEURC = token({
177
177
  chainId: base2.id,
@@ -180,7 +180,7 @@ var baseEURC = token({
180
180
  fiatISO: "EUR",
181
181
  name: "EURC",
182
182
  symbol: "EURC",
183
- logoURI: "https://pay.daimo.com/coin-logos/eurc.png" /* EURC */
183
+ logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
184
184
  });
185
185
  var baseUSDbC = token({
186
186
  chainId: base2.id,
@@ -189,7 +189,7 @@ var baseUSDbC = token({
189
189
  symbol: "USDbC",
190
190
  fiatISO: "USD",
191
191
  decimals: 6,
192
- logoURI: "https://pay.daimo.com/coin-logos/usdbc.png"
192
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdbc.png"
193
193
  });
194
194
  var baseDAI = token({
195
195
  chainId: base2.id,
@@ -198,7 +198,7 @@ var baseDAI = token({
198
198
  symbol: "DAI",
199
199
  fiatISO: "USD",
200
200
  decimals: 18,
201
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
201
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
202
202
  });
203
203
  var baseUSDT = token({
204
204
  chainId: base2.id,
@@ -207,14 +207,14 @@ var baseUSDT = token({
207
207
  symbol: "USDT",
208
208
  fiatISO: "USD",
209
209
  decimals: 6,
210
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
210
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
211
211
  });
212
212
  var baseTokens = [baseUSDC, baseUSDT];
213
213
  var bscBNB = nativeToken({
214
214
  chainId: bsc2.id,
215
215
  name: "BNB",
216
216
  symbol: "BNB",
217
- logoURI: "https://pay.daimo.com/coin-logos/bnb.png" /* BNB */
217
+ logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
218
218
  });
219
219
  var bscWBNB = token({
220
220
  chainId: bsc2.id,
@@ -222,7 +222,7 @@ var bscWBNB = token({
222
222
  decimals: 18,
223
223
  name: "Wrapped BNB",
224
224
  symbol: "WBNB",
225
- logoURI: "https://pay.daimo.com/coin-logos/bnb.png" /* BNB */
225
+ logoURI: "https://api.acta.link/deposit/v1/logos/bnb.png" /* BNB */
226
226
  });
227
227
  var bscUSDC = token({
228
228
  chainId: bsc2.id,
@@ -231,7 +231,7 @@ var bscUSDC = token({
231
231
  fiatISO: "USD",
232
232
  name: "USD Coin",
233
233
  symbol: "USDC",
234
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
234
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
235
235
  });
236
236
  var bscUSDT = token({
237
237
  chainId: bsc2.id,
@@ -240,7 +240,7 @@ var bscUSDT = token({
240
240
  fiatISO: "USD",
241
241
  name: "Tether USD",
242
242
  symbol: "USDT",
243
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
243
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
244
244
  });
245
245
  var bscTokens = [bscUSDT];
246
246
  var ethereumETH = nativeETH(mainnet2.id);
@@ -250,7 +250,7 @@ var ethereumWETH = token({
250
250
  decimals: 18,
251
251
  name: "Wrapped Ether",
252
252
  symbol: "WETH",
253
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
253
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
254
254
  });
255
255
  var ethereumUSDC = token({
256
256
  chainId: mainnet2.id,
@@ -259,7 +259,7 @@ var ethereumUSDC = token({
259
259
  fiatISO: "USD",
260
260
  name: "USD Coin",
261
261
  symbol: "USDC",
262
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
262
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
263
263
  });
264
264
  var ethereumDAI = token({
265
265
  chainId: mainnet2.id,
@@ -268,7 +268,7 @@ var ethereumDAI = token({
268
268
  fiatISO: "USD",
269
269
  name: "Dai Stablecoin",
270
270
  symbol: "DAI",
271
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
271
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
272
272
  });
273
273
  var ethereumUSDT = token({
274
274
  chainId: mainnet2.id,
@@ -277,7 +277,7 @@ var ethereumUSDT = token({
277
277
  fiatISO: "USD",
278
278
  name: "Tether USD",
279
279
  symbol: "USDT",
280
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
280
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
281
281
  });
282
282
  var ethereumEURC = token({
283
283
  chainId: mainnet2.id,
@@ -286,7 +286,7 @@ var ethereumEURC = token({
286
286
  fiatISO: "EUR",
287
287
  name: "EURC",
288
288
  symbol: "EURC",
289
- logoURI: "https://pay.daimo.com/coin-logos/eurc.png" /* EURC */
289
+ logoURI: "https://api.acta.link/deposit/v1/logos/eurc.png" /* EURC */
290
290
  });
291
291
  var ethereumTokens = [ethereumUSDC, ethereumUSDT];
292
292
  var lineaETH = nativeETH(linea.id);
@@ -296,7 +296,7 @@ var lineaWETH = token({
296
296
  decimals: 18,
297
297
  name: "Wrapped Ether",
298
298
  symbol: "WETH",
299
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
299
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
300
300
  });
301
301
  var lineaUSDC = token({
302
302
  chainId: linea.id,
@@ -305,7 +305,7 @@ var lineaUSDC = token({
305
305
  fiatISO: "USD",
306
306
  name: "USD Coin",
307
307
  symbol: "USDC",
308
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
308
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
309
309
  });
310
310
  var lineaDAI = token({
311
311
  chainId: linea.id,
@@ -314,7 +314,7 @@ var lineaDAI = token({
314
314
  fiatISO: "USD",
315
315
  name: "Dai Stablecoin",
316
316
  symbol: "DAI",
317
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
317
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
318
318
  });
319
319
  var optimismETH = nativeETH(optimism2.id);
320
320
  var optimismWETH = token({
@@ -323,7 +323,7 @@ var optimismWETH = token({
323
323
  decimals: 18,
324
324
  name: "Wrapped Ether",
325
325
  symbol: "WETH",
326
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
326
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
327
327
  });
328
328
  var optimismUSDC = token({
329
329
  chainId: optimism2.id,
@@ -332,7 +332,7 @@ var optimismUSDC = token({
332
332
  fiatISO: "USD",
333
333
  name: "USD Coin",
334
334
  symbol: "USDC",
335
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
335
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
336
336
  });
337
337
  var optimismDAI = token({
338
338
  chainId: optimism2.id,
@@ -341,7 +341,7 @@ var optimismDAI = token({
341
341
  fiatISO: "USD",
342
342
  name: "Dai Stablecoin",
343
343
  symbol: "DAI",
344
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
344
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
345
345
  });
346
346
  var optimismUSDT = token({
347
347
  chainId: optimism2.id,
@@ -350,7 +350,7 @@ var optimismUSDT = token({
350
350
  fiatISO: "USD",
351
351
  name: "Tether USD",
352
352
  symbol: "USDT",
353
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
353
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
354
354
  });
355
355
  var optimismUSDCe = token({
356
356
  chainId: optimism2.id,
@@ -359,14 +359,14 @@ var optimismUSDCe = token({
359
359
  fiatISO: "USD",
360
360
  name: "Bridged USD Coin",
361
361
  symbol: "USDCe",
362
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
362
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
363
363
  });
364
364
  var optimismTokens = [optimismUSDC, optimismUSDT];
365
365
  var polygonPOL = nativeToken({
366
366
  chainId: polygon2.id,
367
367
  name: "Polygon",
368
368
  symbol: "POL",
369
- logoURI: "https://pay.daimo.com/coin-logos/pol.png" /* POL */
369
+ logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
370
370
  });
371
371
  var polygonWPOL = token({
372
372
  chainId: polygon2.id,
@@ -374,7 +374,7 @@ var polygonWPOL = token({
374
374
  decimals: 18,
375
375
  name: "Wrapped Polygon",
376
376
  symbol: "WPOL",
377
- logoURI: "https://pay.daimo.com/coin-logos/pol.png" /* POL */
377
+ logoURI: "https://api.acta.link/deposit/v1/logos/pol.png" /* POL */
378
378
  });
379
379
  var polygonWETH = token({
380
380
  chainId: polygon2.id,
@@ -382,7 +382,7 @@ var polygonWETH = token({
382
382
  decimals: 18,
383
383
  name: "Wrapped Ether",
384
384
  symbol: "WETH",
385
- logoURI: "https://pay.daimo.com/coin-logos/weth.png" /* WETH */
385
+ logoURI: "https://api.acta.link/deposit/v1/logos/weth.png" /* WETH */
386
386
  });
387
387
  var polygonUSDC = token({
388
388
  chainId: polygon2.id,
@@ -391,7 +391,7 @@ var polygonUSDC = token({
391
391
  fiatISO: "USD",
392
392
  name: "USD Coin",
393
393
  symbol: "USDC",
394
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
394
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
395
395
  });
396
396
  var polygonDAI = token({
397
397
  chainId: polygon2.id,
@@ -400,7 +400,7 @@ var polygonDAI = token({
400
400
  fiatISO: "USD",
401
401
  name: "Dai Stablecoin",
402
402
  symbol: "DAI",
403
- logoURI: "https://pay.daimo.com/coin-logos/dai.png" /* DAI */
403
+ logoURI: "https://api.acta.link/deposit/v1/logos/dai.png" /* DAI */
404
404
  });
405
405
  var polygonUSDT = token({
406
406
  chainId: polygon2.id,
@@ -409,7 +409,7 @@ var polygonUSDT = token({
409
409
  fiatISO: "USD",
410
410
  name: "Tether USD",
411
411
  symbol: "USDT",
412
- logoURI: "https://pay.daimo.com/coin-logos/usdt.png" /* USDT */
412
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdt.png" /* USDT */
413
413
  });
414
414
  var polygonUSDCe = token({
415
415
  chainId: polygon2.id,
@@ -418,7 +418,7 @@ var polygonUSDCe = token({
418
418
  fiatISO: "USD",
419
419
  name: "USD Coin (PoS)",
420
420
  symbol: "USDCe",
421
- logoURI: "https://pay.daimo.com/coin-logos/usdc.png" /* USDC */
421
+ logoURI: "https://api.acta.link/deposit/v1/logos/usdc.png" /* USDC */
422
422
  });
423
423
  var polygonTokens = [polygonUSDC, polygonUSDT];
424
424
  var supportedTokensByChain = /* @__PURE__ */ new Map([
@@ -440,7 +440,7 @@ function nativeETH(chainId) {
440
440
  chainId,
441
441
  name: "Ether",
442
442
  symbol: "ETH",
443
- logoURI: "https://pay.daimo.com/chain-logos/ethereum.png" /* ETH */
443
+ logoURI: "https://api.acta.link/deposit/v1/logos/ethereum.png" /* ETH */
444
444
  });
445
445
  }
446
446
  function nativeToken({
@@ -511,7 +511,8 @@ function getTokenByChainIdAndAddress(chainId, address) {
511
511
  const tokens = supportedTokensByChain.get(chain.id);
512
512
  if (!tokens) throw new Error(`Tokens not found for chain ${chainId}.`);
513
513
  const token2 = tokens.find((t) => t.address === address);
514
- if (!token2) throw new Error(`Token ${address} not found for chain ${chainId}.`);
514
+ if (!token2)
515
+ throw new Error(`Token ${address} not found for chain ${chainId}.`);
515
516
  return token2;
516
517
  }
517
518
 
@@ -583,7 +584,8 @@ import {
583
584
  http,
584
585
  createPublicClient,
585
586
  parseAbi,
586
- encodeFunctionData
587
+ encodeFunctionData,
588
+ maxUint256
587
589
  } from "viem";
588
590
  var ViemClient = class {
589
591
  constructor(chainId, walletClient) {
@@ -609,7 +611,7 @@ var ViemClient = class {
609
611
  return allowance;
610
612
  });
611
613
  }
612
- checkAndApproveToken(token2, spender, amount) {
614
+ checkAndApproveToken(token2, spender, amount, allowMaxTokenApproval) {
613
615
  return __async(this, null, function* () {
614
616
  var _a;
615
617
  if (this.walletClient === void 0) {
@@ -625,7 +627,7 @@ var ViemClient = class {
625
627
  signerAddress,
626
628
  spender
627
629
  );
628
- if (allowance < amount) {
630
+ if (allowance < amount || allowMaxTokenApproval) {
629
631
  const txn = yield this.walletClient.sendTransaction({
630
632
  to: token2.address,
631
633
  account: signerAddress,
@@ -634,7 +636,7 @@ var ViemClient = class {
634
636
  data: encodeFunctionData({
635
637
  abi: parseAbi(["function approve(address,uint)"]),
636
638
  functionName: "approve",
637
- args: [spender, amount]
639
+ args: [spender, allowMaxTokenApproval ? maxUint256 : amount]
638
640
  })
639
641
  });
640
642
  const receipt = yield this.publicClient().waitForTransactionReceipt({
@@ -1199,7 +1201,8 @@ var ActaAccount = class {
1199
1201
  token: tokenSymbol,
1200
1202
  amount,
1201
1203
  receiver,
1202
- feeInclusive
1204
+ feeInclusive,
1205
+ allowMaxTokenApproval
1203
1206
  } = singlePaymentParams;
1204
1207
  if (amount <= BigInt(0)) {
1205
1208
  throw new Error("Amount must be greater than 0.");
@@ -1236,7 +1239,8 @@ var ActaAccount = class {
1236
1239
  yield viemClient.checkAndApproveToken(
1237
1240
  token2,
1238
1241
  smartAccountAddress,
1239
- amountToTransfer
1242
+ amountToTransfer,
1243
+ allowMaxTokenApproval != null ? allowMaxTokenApproval : false
1240
1244
  );
1241
1245
  const userOperation = yield accountClient.prepareUserOperation({
1242
1246
  calls: [
@@ -1302,7 +1306,8 @@ var ActaAccount = class {
1302
1306
  count,
1303
1307
  intervalUnit,
1304
1308
  startDate,
1305
- endDate
1309
+ endDate,
1310
+ allowMaxTokenApproval
1306
1311
  } = recurringPaymentParams;
1307
1312
  if (amount <= BigInt(0)) {
1308
1313
  throw new Error("Amount must be greater than 0.");
@@ -1361,7 +1366,8 @@ var ActaAccount = class {
1361
1366
  yield viemClient.checkAndApproveToken(
1362
1367
  token2,
1363
1368
  smartAccountAddress,
1364
- amountToTransfer * BigInt(paymentCount) + estimatedGasCostInToken * BigInt(2) * BigInt(paymentCount)
1369
+ amountToTransfer * BigInt(paymentCount) + estimatedGasCostInToken * BigInt(2) * BigInt(paymentCount),
1370
+ allowMaxTokenApproval != null ? allowMaxTokenApproval : false
1365
1371
  );
1366
1372
  const callPolicy = toCallPolicy2({
1367
1373
  policyVersion: CallPolicyVersion.V0_0_4,
@@ -1574,7 +1580,8 @@ var ActaDeposit = class {
1574
1580
  this.depositSessionId = "";
1575
1581
  this.status = "not_started";
1576
1582
  this.serviceType = "deposit";
1577
- var _a;
1583
+ this.allowMaxTokenApproval = false;
1584
+ var _a, _b;
1578
1585
  this.connectorType = parameters.connectorType;
1579
1586
  this.walletClient = parameters.walletClient;
1580
1587
  this.signerAddress = parameters.signerAddress;
@@ -1589,6 +1596,7 @@ var ActaDeposit = class {
1589
1596
  this.startDate = parameters.startDate;
1590
1597
  this.endDate = parameters.endDate;
1591
1598
  this.depositSessionId = (_a = parameters.depositSessionId) != null ? _a : "";
1599
+ this.allowMaxTokenApproval = (_b = parameters.allowMaxTokenApproval) != null ? _b : false;
1592
1600
  this.viemClient = new ViemClient(this.chainId, this.walletClient);
1593
1601
  this.account = new ActaAccount(
1594
1602
  this.chainId,
@@ -1752,7 +1760,8 @@ var ActaDeposit = class {
1752
1760
  token: tokenSymbol,
1753
1761
  amount,
1754
1762
  receiver,
1755
- feeInclusive
1763
+ feeInclusive,
1764
+ allowMaxTokenApproval: this.allowMaxTokenApproval
1756
1765
  });
1757
1766
  const txn = yield executeSinglePaymentAPICall(
1758
1767
  `${transactionServiceUrl}execute/single`,
@@ -1844,7 +1853,8 @@ var ActaDeposit = class {
1844
1853
  intervalUnit,
1845
1854
  startDate,
1846
1855
  endDate,
1847
- receiver
1856
+ receiver,
1857
+ allowMaxTokenApproval: this.allowMaxTokenApproval
1848
1858
  });
1849
1859
  const txn = yield scheduleRecurringPaymentsAPICall(
1850
1860
  `${transactionServiceUrl}schedule/recurring`,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@actalink/commonlib",
3
- "version": "0.0.2",
3
+ "version": "0.0.3",
4
4
  "author": "Actalink",
5
5
  "license": "MIT license",
6
6
  "publishConfig": {