@safe-global/protocol-kit 7.1.0 → 8.0.0

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.
@@ -483,6 +483,7 @@ var networks = [
483
483
  { chainId: 3637n, shortName: "BTNX" },
484
484
  { chainId: 3737n, shortName: "csb" },
485
485
  { chainId: 3776n, shortName: "astrzk" },
486
+ { chainId: 3946n, shortName: "nex" },
486
487
  { chainId: 4002n, shortName: "tftm" },
487
488
  { chainId: 4061n, shortName: "Nahmii3Mainnet" },
488
489
  { chainId: 4062n, shortName: "Nahmii3Testnet" },
@@ -495,6 +496,7 @@ var networks = [
495
496
  { chainId: 4217n, shortName: "tempo" },
496
497
  { chainId: 4326n, shortName: "megaeth" },
497
498
  { chainId: 4337n, shortName: "beam" },
499
+ { chainId: 4441n, shortName: "liteforge" },
498
500
  { chainId: 4460n, shortName: "orderlyl2" },
499
501
  { chainId: 4488n, shortName: "HYDRA" },
500
502
  { chainId: 4509n, shortName: "SC" },
@@ -508,7 +510,9 @@ var networks = [
508
510
  { chainId: 5001n, shortName: "mantle-testnet" },
509
511
  { chainId: 5003n, shortName: "mnt-sep" },
510
512
  { chainId: 5031n, shortName: "Somnia" },
513
+ { chainId: 5042n, shortName: "arc" },
511
514
  { chainId: 5115n, shortName: "citrea-testnet" },
515
+ { chainId: 5124n, shortName: "seismic-testnet" },
512
516
  { chainId: 5165n, shortName: "ftn" },
513
517
  { chainId: 5330n, shortName: "sseed" },
514
518
  { chainId: 5464n, shortName: "saga" },
@@ -523,6 +527,7 @@ var networks = [
523
527
  { chainId: 6322n, shortName: "aura" },
524
528
  { chainId: 6342n, shortName: "megatest" },
525
529
  { chainId: 6398n, shortName: "connext-sepolia" },
530
+ { chainId: 6497n, shortName: "awaji" },
526
531
  { chainId: 6688n, shortName: "iris" },
527
532
  { chainId: 6880n, shortName: "mtt-network" },
528
533
  { chainId: 6900n, shortName: "cataclysm-1" },
@@ -647,6 +652,7 @@ var networks = [
647
652
  { chainId: 43419n, shortName: "gunz-mainnet" },
648
653
  { chainId: 44787n, shortName: "alfa" },
649
654
  { chainId: 45000n, shortName: "autobahnnetwork" },
655
+ { chainId: 46630n, shortName: "robinhoodchaintestnet" },
650
656
  { chainId: 47763n, shortName: "neox-mainnet" },
651
657
  { chainId: 47805n, shortName: "rei" },
652
658
  { chainId: 48898n, shortName: "zircuit-garfield-testnet" },
@@ -696,6 +702,8 @@ var networks = [
696
702
  { chainId: 90001n, shortName: "dhobyghaut" },
697
703
  { chainId: 91342n, shortName: "giwasepolia" },
698
704
  { chainId: 97435n, shortName: "sling" },
705
+ { chainId: 97476n, shortName: "doma-testnet" },
706
+ { chainId: 97477n, shortName: "doma" },
699
707
  { chainId: 98864n, shortName: "plume-devnet" },
700
708
  { chainId: 98865n, shortName: "plume" },
701
709
  { chainId: 98866n, shortName: "plume-mainnet" },
@@ -774,6 +782,7 @@ var networks = [
774
782
  { chainId: 6038361n, shortName: "azkyt" },
775
783
  { chainId: 6281971n, shortName: "dogeos-chykyu" },
776
784
  { chainId: 6985385n, shortName: "hp" },
785
+ { chainId: 7080969n, shortName: "thp" },
777
786
  { chainId: 7225878n, shortName: "saakuru" },
778
787
  { chainId: 7777777n, shortName: "zora" },
779
788
  { chainId: 9999999n, shortName: "fluence" },
@@ -1046,6 +1055,7 @@ function encodeTypedData(typedData) {
1046
1055
  if (domain)
1047
1056
  parts.push(
1048
1057
  (0, import_viem4.hashDomain)({
1058
+ // domain uses the SDK's `string`-based address types; viem expects `0x${string}`
1049
1059
  domain,
1050
1060
  types
1051
1061
  })
@@ -1151,7 +1161,7 @@ function generateTypedData({
1151
1161
  };
1152
1162
  }
1153
1163
  if (eip712WithChainId) {
1154
- typedData.domain.chainId = Number(chainId);
1164
+ typedData.domain.chainId = chainId;
1155
1165
  }
1156
1166
  return typedData;
1157
1167
  }
@@ -1343,7 +1353,7 @@ var preimageSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =>
1343
1353
  const safeTxTypes = getEip712TxTypes(safeVersion);
1344
1354
  const message = safeTx;
1345
1355
  return encodeTypedData({
1346
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1356
+ domain: { verifyingContract: safeAddress, chainId },
1347
1357
  types: { SafeTx: safeTxTypes.SafeTx },
1348
1358
  message
1349
1359
  });
@@ -1351,7 +1361,7 @@ var preimageSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =>
1351
1361
  var preimageSafeMessageHash = (safeAddress, message, safeVersion, chainId) => {
1352
1362
  const safeMessageTypes = getEip712MessageTypes(safeVersion);
1353
1363
  return encodeTypedData({
1354
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1364
+ domain: { verifyingContract: safeAddress, chainId },
1355
1365
  types: { SafeMessage: safeMessageTypes.SafeMessage },
1356
1366
  message: { message }
1357
1367
  });
@@ -1361,7 +1371,7 @@ var calculateSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =
1361
1371
  const safeTxTypes = getEip712TxTypes(safeVersion);
1362
1372
  const domain = { verifyingContract: safeAddress };
1363
1373
  if ((0, import_satisfies3.default)(safeVersion, EQ_OR_GT_1_3_02)) {
1364
- domain.chainId = Number(chainId);
1374
+ domain.chainId = chainId;
1365
1375
  }
1366
1376
  const message = safeTx;
1367
1377
  return hashTypedData2({ domain, types: { SafeTx: safeTxTypes.SafeTx }, message });
@@ -1369,7 +1379,7 @@ var calculateSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =
1369
1379
  var calculateSafeMessageHash = (safeAddress, message, safeVersion, chainId) => {
1370
1380
  const safeMessageTypes = getEip712MessageTypes(safeVersion);
1371
1381
  return hashTypedData2({
1372
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1382
+ domain: { verifyingContract: safeAddress, chainId },
1373
1383
  types: { SafeMessage: safeMessageTypes.SafeMessage },
1374
1384
  message: { message }
1375
1385
  });
@@ -5449,11 +5459,23 @@ async function getExtensibleFallbackHandlerContract({
5449
5459
  // src/utils/transactions/gas.ts
5450
5460
  var CALL_DATA_ZERO_BYTE_GAS_COST = 4;
5451
5461
  var CALL_DATA_BYTE_GAS_COST = 16;
5452
- var INITIZATION_GAS_COST = 2e4;
5462
+ var INITIALIZATION_GAS_COST = 22100;
5453
5463
  var INCREMENT_NONCE_GAS_COST = 5e3;
5454
5464
  var HASH_GENERATION_GAS_COST = 1500;
5455
5465
  var ECRECOVER_GAS_COST = 6e3;
5456
- var TRANSAFER_GAS_COST = 32e3;
5466
+ var INTRINSIC_TX_GAS_COST = 21e3;
5467
+ var PRE_EXEC_STORAGE_GAS_COST = 2 * 2100;
5468
+ var MISC_OVERHEAD_GAS_COST = 3e3;
5469
+ var EXTRA_BASE_GAS_COST = INTRINSIC_TX_GAS_COST + PRE_EXEC_STORAGE_GAS_COST + MISC_OVERHEAD_GAS_COST;
5470
+ var NEW_ACCOUNT_GAS_COST = 25e3;
5471
+ var COLD_ACCOUNT_ACCESS_GAS_COST = 2600;
5472
+ var CALL_VALUE_GAS_COST = 9e3;
5473
+ var ERC20_TRANSFER_GAS_COST = 21e3;
5474
+ var ERC20_NEW_HOLDER_TRANSFER_GAS_COST = 38e3;
5475
+ var LOG_BASE_GAS_COST = 375;
5476
+ var LOG_TOPIC_GAS_COST = 375;
5477
+ var LOG_DATA_GAS_COST_PER_BYTE = 8;
5478
+ var EXECUTION_RESULT_EVENT_GAS_COST = 1500;
5457
5479
  var GAS_COST_PER_SIGNATURE = 1 * CALL_DATA_BYTE_GAS_COST + 2 * 32 * CALL_DATA_BYTE_GAS_COST + ECRECOVER_GAS_COST;
5458
5480
  function estimateDataGasCosts(data) {
5459
5481
  const bytes = data.match(/.{2}/g);
@@ -5467,6 +5489,58 @@ function estimateDataGasCosts(data) {
5467
5489
  return gasCost + CALL_DATA_BYTE_GAS_COST;
5468
5490
  }, 0);
5469
5491
  }
5492
+ function calculateExecTransactionEventsGas(isL1SafeSingleton, data, threshold) {
5493
+ let gas = EXECUTION_RESULT_EVENT_GAS_COST;
5494
+ if (!isL1SafeSingleton) {
5495
+ const dataBytes = (data.length - 2) / 2;
5496
+ const signaturesBytes = threshold * 65;
5497
+ const headBytes = 11 * 32;
5498
+ const dataDynamicBytes = 32 + Math.ceil(dataBytes / 32) * 32;
5499
+ const signaturesDynamicBytes = 32 + Math.ceil(signaturesBytes / 32) * 32;
5500
+ const additionalInfoDynamicBytes = 32 + 3 * 32;
5501
+ const eventDataBytes = headBytes + dataDynamicBytes + signaturesDynamicBytes + additionalInfoDynamicBytes;
5502
+ gas += LOG_BASE_GAS_COST + LOG_TOPIC_GAS_COST + eventDataBytes * LOG_DATA_GAS_COST_PER_BYTE;
5503
+ }
5504
+ return gas;
5505
+ }
5506
+ async function isNewEthRefundReceiver(safeProvider, gasToken, refundReceiver) {
5507
+ if (gasToken.toLowerCase() !== ZERO_ADDRESS.toLowerCase() || refundReceiver.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
5508
+ return false;
5509
+ }
5510
+ const [contractCode, nonce, balance] = await Promise.all([
5511
+ safeProvider.getContractCode(refundReceiver),
5512
+ safeProvider.getNonce(refundReceiver),
5513
+ safeProvider.getBalance(refundReceiver)
5514
+ ]);
5515
+ return contractCode === "0x" && nonce === 0 && balance === 0n;
5516
+ }
5517
+ async function hasExistingTokenBalance(safeProvider, gasToken, account) {
5518
+ const data = (0, import_viem8.encodeFunctionData)({
5519
+ abi: (0, import_viem8.parseAbi)(["function balanceOf(address account) view returns (uint256)"]),
5520
+ functionName: "balanceOf",
5521
+ args: [account]
5522
+ });
5523
+ try {
5524
+ const response = await safeProvider.call({ to: gasToken, from: gasToken, value: "0", data });
5525
+ return BigInt(response || "0x0") > 0n;
5526
+ } catch {
5527
+ return false;
5528
+ }
5529
+ }
5530
+ async function calculateRefundGas(safeProvider, gasPrice, gasToken, refundReceiver) {
5531
+ if (BigInt(gasPrice) === 0n) {
5532
+ return 0;
5533
+ }
5534
+ if (gasToken.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
5535
+ let gas = COLD_ACCOUNT_ACCESS_GAS_COST + CALL_VALUE_GAS_COST;
5536
+ if (await isNewEthRefundReceiver(safeProvider, gasToken, refundReceiver)) {
5537
+ gas += NEW_ACCOUNT_GAS_COST;
5538
+ }
5539
+ return gas;
5540
+ }
5541
+ const hasBalance = await hasExistingTokenBalance(safeProvider, gasToken, refundReceiver);
5542
+ return hasBalance ? ERC20_TRANSFER_GAS_COST : ERC20_NEW_HOLDER_TRANSFER_GAS_COST;
5543
+ }
5470
5544
  async function estimateGas(safeVersion, safeContract, safeProvider, to, valueInWei, data, operation, customContracts) {
5471
5545
  const chainId = await safeProvider.getChainId();
5472
5546
  const simulateTxAccessorContract = await getSimulateTxAccessorContract({
@@ -5518,21 +5592,25 @@ async function estimateTxGas(safeContract, safeProvider, to, valueInWei, data, o
5518
5592
  }
5519
5593
  async function estimateTxBaseGas(safe, safeTransaction) {
5520
5594
  const safeTransactionData = safeTransaction.data;
5521
- const { to, value, data, operation, safeTxGas, gasToken, refundReceiver } = safeTransactionData;
5522
- const safeThreshold = await safe.getThreshold();
5523
- const safeNonce = await safe.getNonce();
5524
- const signaturesGasCost = safeThreshold * GAS_COST_PER_SIGNATURE;
5595
+ const { to, value, data, operation, safeTxGas, gasPrice, gasToken, refundReceiver } = safeTransactionData;
5525
5596
  const encodeSafeTxGas = safeTxGas || 0;
5526
5597
  const encodeBaseGas = 0;
5527
- const gasPrice = 1;
5598
+ const encodeGasPrice = 1;
5528
5599
  const encodeGasToken = gasToken || ZERO_ADDRESS;
5529
5600
  const encodeRefundReceiver = refundReceiver || ZERO_ADDRESS;
5530
5601
  const signatures = "0x";
5531
- const safeVersion = safe.getContractVersion();
5532
5602
  const safeProvider = safe.getSafeProvider();
5533
- const isL1SafeSingleton = safe.getContractManager().isL1SafeSingleton;
5534
- const chainId = await safe.getChainId();
5535
- const customContracts = safe.getContractManager().contractNetworks?.[chainId.toString()];
5603
+ const safeVersion = safe.getContractVersion();
5604
+ const contractManager = safe.getContractManager();
5605
+ const isL1SafeSingleton = contractManager.isL1SafeSingleton;
5606
+ const [safeThreshold, safeNonce, chainId, refundGas] = await Promise.all([
5607
+ safe.getThreshold(),
5608
+ safe.getNonce(),
5609
+ safe.getChainId(),
5610
+ calculateRefundGas(safeProvider, gasPrice, encodeGasToken, encodeRefundReceiver)
5611
+ ]);
5612
+ const signaturesGasCost = safeThreshold * GAS_COST_PER_SIGNATURE;
5613
+ const customContracts = contractManager.contractNetworks?.[chainId.toString()];
5536
5614
  const safeSingletonContract = await getSafeContract({
5537
5615
  safeProvider,
5538
5616
  safeVersion,
@@ -5546,16 +5624,19 @@ async function estimateTxBaseGas(safe, safeTransaction) {
5546
5624
  operation,
5547
5625
  encodeSafeTxGas,
5548
5626
  encodeBaseGas,
5549
- gasPrice,
5627
+ encodeGasPrice,
5550
5628
  encodeGasToken,
5551
5629
  encodeRefundReceiver,
5552
5630
  signatures
5553
5631
  ]);
5554
5632
  const isSafeInitialized = safeNonce !== 0;
5555
- const incrementNonceGasCost = isSafeInitialized ? INCREMENT_NONCE_GAS_COST : INITIZATION_GAS_COST;
5633
+ const incrementNonceGasCost = isSafeInitialized ? INCREMENT_NONCE_GAS_COST : INITIALIZATION_GAS_COST;
5556
5634
  let baseGas = signaturesGasCost + estimateDataGasCosts(execTransactionData) + incrementNonceGasCost + HASH_GENERATION_GAS_COST;
5557
- baseGas > 65536 ? baseGas += 64 : baseGas += 128;
5558
- baseGas += TRANSAFER_GAS_COST;
5635
+ baseGas += refundGas;
5636
+ baseGas += calculateExecTransactionEventsGas(isL1SafeSingleton ?? false, data, safeThreshold);
5637
+ baseGas += EXTRA_BASE_GAS_COST;
5638
+ const baseGasUsedBytes = Math.ceil(baseGas.toString(16).length / 2);
5639
+ baseGas += baseGasUsedBytes * (CALL_DATA_BYTE_GAS_COST - CALL_DATA_ZERO_BYTE_GAS_COST);
5559
5640
  return baseGas.toString();
5560
5641
  }
5561
5642
  async function estimateSafeTxGas(safe, safeTransaction) {
@@ -6251,13 +6332,8 @@ var getPasskeyOwnerAddress_default = getPasskeyOwnerAddress;
6251
6332
 
6252
6333
  // src/utils/block.ts
6253
6334
  function asBlockId(blockId) {
6254
- return typeof blockId === "number" ? blockNumber(blockId) : blockTag(blockId);
6255
- }
6256
- function blockNumber(blockNumber2) {
6257
- return { blockNumber: blockNumber2.toNumber() };
6258
- }
6259
- function blockTag(blockTag2) {
6260
- return { blockTag: blockTag2 };
6335
+ if (typeof blockId === "number") return { blockNumber: BigInt(blockId) };
6336
+ return { blockTag: blockId };
6261
6337
  }
6262
6338
 
6263
6339
  // src/SafeProvider.ts
@@ -6392,16 +6468,16 @@ var SafeProvider = class _SafeProvider {
6392
6468
  const chainId = await this.getChainId();
6393
6469
  return validateEip3770Address(fullAddress, chainId);
6394
6470
  }
6395
- async getBalance(address, blockTag2) {
6471
+ async getBalance(address, blockTag) {
6396
6472
  return (0, import_actions9.getBalance)(this.#externalProvider, {
6397
6473
  address,
6398
- ...asBlockId(blockTag2)
6474
+ ...asBlockId(blockTag)
6399
6475
  });
6400
6476
  }
6401
- async getNonce(address, blockTag2) {
6477
+ async getNonce(address, blockTag) {
6402
6478
  return (0, import_actions9.getTransactionCount)(this.#externalProvider, {
6403
6479
  address,
6404
- ...asBlockId(blockTag2)
6480
+ ...asBlockId(blockTag)
6405
6481
  });
6406
6482
  }
6407
6483
  async getChainId() {
@@ -6411,17 +6487,17 @@ var SafeProvider = class _SafeProvider {
6411
6487
  getChecksummedAddress(address) {
6412
6488
  return (0, import_viem12.getAddress)(address);
6413
6489
  }
6414
- async getContractCode(address, blockTag2) {
6490
+ async getContractCode(address, blockTag) {
6415
6491
  const res = await (0, import_actions9.getCode)(this.#externalProvider, {
6416
6492
  address,
6417
- ...asBlockId(blockTag2)
6493
+ ...asBlockId(blockTag)
6418
6494
  });
6419
6495
  return res ?? "0x";
6420
6496
  }
6421
- async isContractDeployed(address, blockTag2) {
6497
+ async isContractDeployed(address, blockTag) {
6422
6498
  const contractCode = await (0, import_actions9.getCode)(this.#externalProvider, {
6423
6499
  address,
6424
- ...asBlockId(blockTag2)
6500
+ ...asBlockId(blockTag)
6425
6501
  });
6426
6502
  return !!contractCode;
6427
6503
  }
@@ -6467,8 +6543,7 @@ var SafeProvider = class _SafeProvider {
6467
6543
  if (isTypedDataSigner(signer)) {
6468
6544
  const typedData = generateTypedData(safeEIP712Args);
6469
6545
  const { chainId, verifyingContract } = typedData.domain;
6470
- const chain = chainId ? Number(chainId) : void 0;
6471
- const domain = { verifyingContract, chainId: chain };
6546
+ const domain = { verifyingContract, chainId };
6472
6547
  const signature = await signer.signTypedData({
6473
6548
  domain,
6474
6549
  types: typedData.primaryType === "SafeMessage" ? { SafeMessage: typedData.types.SafeMessage } : { SafeTx: typedData.types.SafeTx },
@@ -6483,11 +6558,11 @@ var SafeProvider = class _SafeProvider {
6483
6558
  const converted = toEstimateGasParameters(transaction);
6484
6559
  return (await (0, import_actions9.estimateGas)(this.#externalProvider, converted)).toString();
6485
6560
  }
6486
- async call(transaction, blockTag2) {
6561
+ async call(transaction, blockTag) {
6487
6562
  const converted = toTransactionRequest(transaction);
6488
6563
  const { data } = await (0, import_actions9.call)(this.#externalProvider, {
6489
6564
  ...converted,
6490
- ...asBlockId(blockTag2)
6565
+ ...asBlockId(blockTag)
6491
6566
  });
6492
6567
  return data ?? "0x";
6493
6568
  }
@@ -7335,7 +7410,7 @@ function generateOnChainIdentifier({
7335
7410
  var generateOnChainIdentifier_default = generateOnChainIdentifier;
7336
7411
 
7337
7412
  // src/utils/getProtocolKitVersion.ts
7338
- var getProtocolKitVersion = () => "7.1.0";
7413
+ var getProtocolKitVersion = () => "8.0.0";
7339
7414
 
7340
7415
  // src/Safe.ts
7341
7416
  var EQ_OR_GT_1_5_0 = ">=1.5.0";
@@ -471,6 +471,7 @@ var networks = [
471
471
  { chainId: 3637n, shortName: "BTNX" },
472
472
  { chainId: 3737n, shortName: "csb" },
473
473
  { chainId: 3776n, shortName: "astrzk" },
474
+ { chainId: 3946n, shortName: "nex" },
474
475
  { chainId: 4002n, shortName: "tftm" },
475
476
  { chainId: 4061n, shortName: "Nahmii3Mainnet" },
476
477
  { chainId: 4062n, shortName: "Nahmii3Testnet" },
@@ -483,6 +484,7 @@ var networks = [
483
484
  { chainId: 4217n, shortName: "tempo" },
484
485
  { chainId: 4326n, shortName: "megaeth" },
485
486
  { chainId: 4337n, shortName: "beam" },
487
+ { chainId: 4441n, shortName: "liteforge" },
486
488
  { chainId: 4460n, shortName: "orderlyl2" },
487
489
  { chainId: 4488n, shortName: "HYDRA" },
488
490
  { chainId: 4509n, shortName: "SC" },
@@ -496,7 +498,9 @@ var networks = [
496
498
  { chainId: 5001n, shortName: "mantle-testnet" },
497
499
  { chainId: 5003n, shortName: "mnt-sep" },
498
500
  { chainId: 5031n, shortName: "Somnia" },
501
+ { chainId: 5042n, shortName: "arc" },
499
502
  { chainId: 5115n, shortName: "citrea-testnet" },
503
+ { chainId: 5124n, shortName: "seismic-testnet" },
500
504
  { chainId: 5165n, shortName: "ftn" },
501
505
  { chainId: 5330n, shortName: "sseed" },
502
506
  { chainId: 5464n, shortName: "saga" },
@@ -511,6 +515,7 @@ var networks = [
511
515
  { chainId: 6322n, shortName: "aura" },
512
516
  { chainId: 6342n, shortName: "megatest" },
513
517
  { chainId: 6398n, shortName: "connext-sepolia" },
518
+ { chainId: 6497n, shortName: "awaji" },
514
519
  { chainId: 6688n, shortName: "iris" },
515
520
  { chainId: 6880n, shortName: "mtt-network" },
516
521
  { chainId: 6900n, shortName: "cataclysm-1" },
@@ -635,6 +640,7 @@ var networks = [
635
640
  { chainId: 43419n, shortName: "gunz-mainnet" },
636
641
  { chainId: 44787n, shortName: "alfa" },
637
642
  { chainId: 45000n, shortName: "autobahnnetwork" },
643
+ { chainId: 46630n, shortName: "robinhoodchaintestnet" },
638
644
  { chainId: 47763n, shortName: "neox-mainnet" },
639
645
  { chainId: 47805n, shortName: "rei" },
640
646
  { chainId: 48898n, shortName: "zircuit-garfield-testnet" },
@@ -684,6 +690,8 @@ var networks = [
684
690
  { chainId: 90001n, shortName: "dhobyghaut" },
685
691
  { chainId: 91342n, shortName: "giwasepolia" },
686
692
  { chainId: 97435n, shortName: "sling" },
693
+ { chainId: 97476n, shortName: "doma-testnet" },
694
+ { chainId: 97477n, shortName: "doma" },
687
695
  { chainId: 98864n, shortName: "plume-devnet" },
688
696
  { chainId: 98865n, shortName: "plume" },
689
697
  { chainId: 98866n, shortName: "plume-mainnet" },
@@ -762,6 +770,7 @@ var networks = [
762
770
  { chainId: 6038361n, shortName: "azkyt" },
763
771
  { chainId: 6281971n, shortName: "dogeos-chykyu" },
764
772
  { chainId: 6985385n, shortName: "hp" },
773
+ { chainId: 7080969n, shortName: "thp" },
765
774
  { chainId: 7225878n, shortName: "saakuru" },
766
775
  { chainId: 7777777n, shortName: "zora" },
767
776
  { chainId: 9999999n, shortName: "fluence" },
@@ -990,6 +999,7 @@ function encodeTypedData(typedData) {
990
999
  if (domain)
991
1000
  parts.push(
992
1001
  (0, import_viem4.hashDomain)({
1002
+ // domain uses the SDK's `string`-based address types; viem expects `0x${string}`
993
1003
  domain,
994
1004
  types
995
1005
  })
@@ -1095,7 +1105,7 @@ function generateTypedData({
1095
1105
  };
1096
1106
  }
1097
1107
  if (eip712WithChainId) {
1098
- typedData.domain.chainId = Number(chainId);
1108
+ typedData.domain.chainId = chainId;
1099
1109
  }
1100
1110
  return typedData;
1101
1111
  }
@@ -1380,13 +1390,8 @@ var import_actions3 = require("viem/actions");
1380
1390
 
1381
1391
  // src/utils/block.ts
1382
1392
  function asBlockId(blockId) {
1383
- return typeof blockId === "number" ? blockNumber(blockId) : blockTag(blockId);
1384
- }
1385
- function blockNumber(blockNumber2) {
1386
- return { blockNumber: blockNumber2.toNumber() };
1387
- }
1388
- function blockTag(blockTag2) {
1389
- return { blockTag: blockTag2 };
1393
+ if (typeof blockId === "number") return { blockNumber: BigInt(blockId) };
1394
+ return { blockTag: blockId };
1390
1395
  }
1391
1396
 
1392
1397
  // src/SafeProvider.ts
@@ -1705,16 +1710,16 @@ var SafeProvider = class _SafeProvider {
1705
1710
  const chainId = await this.getChainId();
1706
1711
  return validateEip3770Address(fullAddress, chainId);
1707
1712
  }
1708
- async getBalance(address, blockTag2) {
1713
+ async getBalance(address, blockTag) {
1709
1714
  return (0, import_actions2.getBalance)(this.#externalProvider, {
1710
1715
  address,
1711
- ...asBlockId(blockTag2)
1716
+ ...asBlockId(blockTag)
1712
1717
  });
1713
1718
  }
1714
- async getNonce(address, blockTag2) {
1719
+ async getNonce(address, blockTag) {
1715
1720
  return (0, import_actions2.getTransactionCount)(this.#externalProvider, {
1716
1721
  address,
1717
- ...asBlockId(blockTag2)
1722
+ ...asBlockId(blockTag)
1718
1723
  });
1719
1724
  }
1720
1725
  async getChainId() {
@@ -1724,17 +1729,17 @@ var SafeProvider = class _SafeProvider {
1724
1729
  getChecksummedAddress(address) {
1725
1730
  return (0, import_viem10.getAddress)(address);
1726
1731
  }
1727
- async getContractCode(address, blockTag2) {
1732
+ async getContractCode(address, blockTag) {
1728
1733
  const res = await (0, import_actions2.getCode)(this.#externalProvider, {
1729
1734
  address,
1730
- ...asBlockId(blockTag2)
1735
+ ...asBlockId(blockTag)
1731
1736
  });
1732
1737
  return res ?? "0x";
1733
1738
  }
1734
- async isContractDeployed(address, blockTag2) {
1739
+ async isContractDeployed(address, blockTag) {
1735
1740
  const contractCode = await (0, import_actions2.getCode)(this.#externalProvider, {
1736
1741
  address,
1737
- ...asBlockId(blockTag2)
1742
+ ...asBlockId(blockTag)
1738
1743
  });
1739
1744
  return !!contractCode;
1740
1745
  }
@@ -1780,8 +1785,7 @@ var SafeProvider = class _SafeProvider {
1780
1785
  if (isTypedDataSigner(signer)) {
1781
1786
  const typedData = generateTypedData(safeEIP712Args);
1782
1787
  const { chainId, verifyingContract } = typedData.domain;
1783
- const chain = chainId ? Number(chainId) : void 0;
1784
- const domain = { verifyingContract, chainId: chain };
1788
+ const domain = { verifyingContract, chainId };
1785
1789
  const signature = await signer.signTypedData({
1786
1790
  domain,
1787
1791
  types: typedData.primaryType === "SafeMessage" ? { SafeMessage: typedData.types.SafeMessage } : { SafeTx: typedData.types.SafeTx },
@@ -1796,11 +1800,11 @@ var SafeProvider = class _SafeProvider {
1796
1800
  const converted = toEstimateGasParameters(transaction);
1797
1801
  return (await (0, import_actions2.estimateGas)(this.#externalProvider, converted)).toString();
1798
1802
  }
1799
- async call(transaction, blockTag2) {
1803
+ async call(transaction, blockTag) {
1800
1804
  const converted = toTransactionRequest(transaction);
1801
1805
  const { data } = await (0, import_actions2.call)(this.#externalProvider, {
1802
1806
  ...converted,
1803
- ...asBlockId(blockTag2)
1807
+ ...asBlockId(blockTag)
1804
1808
  });
1805
1809
  return data ?? "0x";
1806
1810
  }
@@ -4646,6 +4650,10 @@ async function getSafeWebAuthnSharedSignerContract({
4646
4650
  // src/utils/transactions/gas.ts
4647
4651
  var CALL_DATA_BYTE_GAS_COST = 16;
4648
4652
  var ECRECOVER_GAS_COST = 6e3;
4653
+ var INTRINSIC_TX_GAS_COST = 21e3;
4654
+ var PRE_EXEC_STORAGE_GAS_COST = 2 * 2100;
4655
+ var MISC_OVERHEAD_GAS_COST = 3e3;
4656
+ var EXTRA_BASE_GAS_COST = INTRINSIC_TX_GAS_COST + PRE_EXEC_STORAGE_GAS_COST + MISC_OVERHEAD_GAS_COST;
4649
4657
  var GAS_COST_PER_SIGNATURE = 1 * CALL_DATA_BYTE_GAS_COST + 2 * 32 * CALL_DATA_BYTE_GAS_COST + ECRECOVER_GAS_COST;
4650
4658
 
4651
4659
  // src/utils/transactions/utils.ts
@@ -22,7 +22,7 @@ import {
22
22
  isAddress as isAddress4,
23
23
  keccak256 as keccak2562,
24
24
  pad,
25
- parseAbi as parseAbi3,
25
+ parseAbi as parseAbi4,
26
26
  toHex as toHex3,
27
27
  toEventHash,
28
28
  decodeEventLog
@@ -414,6 +414,7 @@ var networks = [
414
414
  { chainId: 3637n, shortName: "BTNX" },
415
415
  { chainId: 3737n, shortName: "csb" },
416
416
  { chainId: 3776n, shortName: "astrzk" },
417
+ { chainId: 3946n, shortName: "nex" },
417
418
  { chainId: 4002n, shortName: "tftm" },
418
419
  { chainId: 4061n, shortName: "Nahmii3Mainnet" },
419
420
  { chainId: 4062n, shortName: "Nahmii3Testnet" },
@@ -426,6 +427,7 @@ var networks = [
426
427
  { chainId: 4217n, shortName: "tempo" },
427
428
  { chainId: 4326n, shortName: "megaeth" },
428
429
  { chainId: 4337n, shortName: "beam" },
430
+ { chainId: 4441n, shortName: "liteforge" },
429
431
  { chainId: 4460n, shortName: "orderlyl2" },
430
432
  { chainId: 4488n, shortName: "HYDRA" },
431
433
  { chainId: 4509n, shortName: "SC" },
@@ -439,7 +441,9 @@ var networks = [
439
441
  { chainId: 5001n, shortName: "mantle-testnet" },
440
442
  { chainId: 5003n, shortName: "mnt-sep" },
441
443
  { chainId: 5031n, shortName: "Somnia" },
444
+ { chainId: 5042n, shortName: "arc" },
442
445
  { chainId: 5115n, shortName: "citrea-testnet" },
446
+ { chainId: 5124n, shortName: "seismic-testnet" },
443
447
  { chainId: 5165n, shortName: "ftn" },
444
448
  { chainId: 5330n, shortName: "sseed" },
445
449
  { chainId: 5464n, shortName: "saga" },
@@ -454,6 +458,7 @@ var networks = [
454
458
  { chainId: 6322n, shortName: "aura" },
455
459
  { chainId: 6342n, shortName: "megatest" },
456
460
  { chainId: 6398n, shortName: "connext-sepolia" },
461
+ { chainId: 6497n, shortName: "awaji" },
457
462
  { chainId: 6688n, shortName: "iris" },
458
463
  { chainId: 6880n, shortName: "mtt-network" },
459
464
  { chainId: 6900n, shortName: "cataclysm-1" },
@@ -578,6 +583,7 @@ var networks = [
578
583
  { chainId: 43419n, shortName: "gunz-mainnet" },
579
584
  { chainId: 44787n, shortName: "alfa" },
580
585
  { chainId: 45000n, shortName: "autobahnnetwork" },
586
+ { chainId: 46630n, shortName: "robinhoodchaintestnet" },
581
587
  { chainId: 47763n, shortName: "neox-mainnet" },
582
588
  { chainId: 47805n, shortName: "rei" },
583
589
  { chainId: 48898n, shortName: "zircuit-garfield-testnet" },
@@ -627,6 +633,8 @@ var networks = [
627
633
  { chainId: 90001n, shortName: "dhobyghaut" },
628
634
  { chainId: 91342n, shortName: "giwasepolia" },
629
635
  { chainId: 97435n, shortName: "sling" },
636
+ { chainId: 97476n, shortName: "doma-testnet" },
637
+ { chainId: 97477n, shortName: "doma" },
630
638
  { chainId: 98864n, shortName: "plume-devnet" },
631
639
  { chainId: 98865n, shortName: "plume" },
632
640
  { chainId: 98866n, shortName: "plume-mainnet" },
@@ -705,6 +713,7 @@ var networks = [
705
713
  { chainId: 6038361n, shortName: "azkyt" },
706
714
  { chainId: 6281971n, shortName: "dogeos-chykyu" },
707
715
  { chainId: 6985385n, shortName: "hp" },
716
+ { chainId: 7080969n, shortName: "thp" },
708
717
  { chainId: 7225878n, shortName: "saakuru" },
709
718
  { chainId: 7777777n, shortName: "zora" },
710
719
  { chainId: 9999999n, shortName: "fluence" },
@@ -985,6 +994,7 @@ function encodeTypedData(typedData) {
985
994
  if (domain)
986
995
  parts.push(
987
996
  hashDomain({
997
+ // domain uses the SDK's `string`-based address types; viem expects `0x${string}`
988
998
  domain,
989
999
  types
990
1000
  })
@@ -1090,7 +1100,7 @@ function generateTypedData({
1090
1100
  };
1091
1101
  }
1092
1102
  if (eip712WithChainId) {
1093
- typedData.domain.chainId = Number(chainId);
1103
+ typedData.domain.chainId = chainId;
1094
1104
  }
1095
1105
  return typedData;
1096
1106
  }
@@ -1284,7 +1294,7 @@ var preimageSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =>
1284
1294
  const safeTxTypes = getEip712TxTypes(safeVersion);
1285
1295
  const message = safeTx;
1286
1296
  return encodeTypedData({
1287
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1297
+ domain: { verifyingContract: safeAddress, chainId },
1288
1298
  types: { SafeTx: safeTxTypes.SafeTx },
1289
1299
  message
1290
1300
  });
@@ -1292,7 +1302,7 @@ var preimageSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =>
1292
1302
  var preimageSafeMessageHash = (safeAddress, message, safeVersion, chainId) => {
1293
1303
  const safeMessageTypes = getEip712MessageTypes(safeVersion);
1294
1304
  return encodeTypedData({
1295
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1305
+ domain: { verifyingContract: safeAddress, chainId },
1296
1306
  types: { SafeMessage: safeMessageTypes.SafeMessage },
1297
1307
  message: { message }
1298
1308
  });
@@ -1302,7 +1312,7 @@ var calculateSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =
1302
1312
  const safeTxTypes = getEip712TxTypes(safeVersion);
1303
1313
  const domain = { verifyingContract: safeAddress };
1304
1314
  if (semverSatisfies3(safeVersion, EQ_OR_GT_1_3_02)) {
1305
- domain.chainId = Number(chainId);
1315
+ domain.chainId = chainId;
1306
1316
  }
1307
1317
  const message = safeTx;
1308
1318
  return hashTypedData2({ domain, types: { SafeTx: safeTxTypes.SafeTx }, message });
@@ -1310,14 +1320,18 @@ var calculateSafeTransactionHash = (safeAddress, safeTx, safeVersion, chainId) =
1310
1320
  var calculateSafeMessageHash = (safeAddress, message, safeVersion, chainId) => {
1311
1321
  const safeMessageTypes = getEip712MessageTypes(safeVersion);
1312
1322
  return hashTypedData2({
1313
- domain: { verifyingContract: safeAddress, chainId: Number(chainId) },
1323
+ domain: { verifyingContract: safeAddress, chainId },
1314
1324
  types: { SafeMessage: safeMessageTypes.SafeMessage },
1315
1325
  message: { message }
1316
1326
  });
1317
1327
  };
1318
1328
 
1319
1329
  // src/utils/transactions/gas.ts
1320
- import { BaseError } from "viem";
1330
+ import {
1331
+ BaseError,
1332
+ encodeFunctionData as encodeFunctionData2,
1333
+ parseAbi
1334
+ } from "viem";
1321
1335
  import { OperationType } from "@safe-global/types-kit";
1322
1336
  import semverSatisfies4 from "semver/functions/satisfies.js";
1323
1337
 
@@ -5458,11 +5472,23 @@ async function getExtensibleFallbackHandlerContract({
5458
5472
  // src/utils/transactions/gas.ts
5459
5473
  var CALL_DATA_ZERO_BYTE_GAS_COST = 4;
5460
5474
  var CALL_DATA_BYTE_GAS_COST = 16;
5461
- var INITIZATION_GAS_COST = 2e4;
5475
+ var INITIALIZATION_GAS_COST = 22100;
5462
5476
  var INCREMENT_NONCE_GAS_COST = 5e3;
5463
5477
  var HASH_GENERATION_GAS_COST = 1500;
5464
5478
  var ECRECOVER_GAS_COST = 6e3;
5465
- var TRANSAFER_GAS_COST = 32e3;
5479
+ var INTRINSIC_TX_GAS_COST = 21e3;
5480
+ var PRE_EXEC_STORAGE_GAS_COST = 2 * 2100;
5481
+ var MISC_OVERHEAD_GAS_COST = 3e3;
5482
+ var EXTRA_BASE_GAS_COST = INTRINSIC_TX_GAS_COST + PRE_EXEC_STORAGE_GAS_COST + MISC_OVERHEAD_GAS_COST;
5483
+ var NEW_ACCOUNT_GAS_COST = 25e3;
5484
+ var COLD_ACCOUNT_ACCESS_GAS_COST = 2600;
5485
+ var CALL_VALUE_GAS_COST = 9e3;
5486
+ var ERC20_TRANSFER_GAS_COST = 21e3;
5487
+ var ERC20_NEW_HOLDER_TRANSFER_GAS_COST = 38e3;
5488
+ var LOG_BASE_GAS_COST = 375;
5489
+ var LOG_TOPIC_GAS_COST = 375;
5490
+ var LOG_DATA_GAS_COST_PER_BYTE = 8;
5491
+ var EXECUTION_RESULT_EVENT_GAS_COST = 1500;
5466
5492
  var GAS_COST_PER_SIGNATURE = 1 * CALL_DATA_BYTE_GAS_COST + 2 * 32 * CALL_DATA_BYTE_GAS_COST + ECRECOVER_GAS_COST;
5467
5493
  function estimateDataGasCosts(data) {
5468
5494
  const bytes = data.match(/.{2}/g);
@@ -5476,6 +5502,58 @@ function estimateDataGasCosts(data) {
5476
5502
  return gasCost + CALL_DATA_BYTE_GAS_COST;
5477
5503
  }, 0);
5478
5504
  }
5505
+ function calculateExecTransactionEventsGas(isL1SafeSingleton, data, threshold) {
5506
+ let gas = EXECUTION_RESULT_EVENT_GAS_COST;
5507
+ if (!isL1SafeSingleton) {
5508
+ const dataBytes = (data.length - 2) / 2;
5509
+ const signaturesBytes = threshold * 65;
5510
+ const headBytes = 11 * 32;
5511
+ const dataDynamicBytes = 32 + Math.ceil(dataBytes / 32) * 32;
5512
+ const signaturesDynamicBytes = 32 + Math.ceil(signaturesBytes / 32) * 32;
5513
+ const additionalInfoDynamicBytes = 32 + 3 * 32;
5514
+ const eventDataBytes = headBytes + dataDynamicBytes + signaturesDynamicBytes + additionalInfoDynamicBytes;
5515
+ gas += LOG_BASE_GAS_COST + LOG_TOPIC_GAS_COST + eventDataBytes * LOG_DATA_GAS_COST_PER_BYTE;
5516
+ }
5517
+ return gas;
5518
+ }
5519
+ async function isNewEthRefundReceiver(safeProvider, gasToken, refundReceiver) {
5520
+ if (gasToken.toLowerCase() !== ZERO_ADDRESS.toLowerCase() || refundReceiver.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
5521
+ return false;
5522
+ }
5523
+ const [contractCode, nonce, balance] = await Promise.all([
5524
+ safeProvider.getContractCode(refundReceiver),
5525
+ safeProvider.getNonce(refundReceiver),
5526
+ safeProvider.getBalance(refundReceiver)
5527
+ ]);
5528
+ return contractCode === "0x" && nonce === 0 && balance === 0n;
5529
+ }
5530
+ async function hasExistingTokenBalance(safeProvider, gasToken, account) {
5531
+ const data = encodeFunctionData2({
5532
+ abi: parseAbi(["function balanceOf(address account) view returns (uint256)"]),
5533
+ functionName: "balanceOf",
5534
+ args: [account]
5535
+ });
5536
+ try {
5537
+ const response = await safeProvider.call({ to: gasToken, from: gasToken, value: "0", data });
5538
+ return BigInt(response || "0x0") > 0n;
5539
+ } catch {
5540
+ return false;
5541
+ }
5542
+ }
5543
+ async function calculateRefundGas(safeProvider, gasPrice, gasToken, refundReceiver) {
5544
+ if (BigInt(gasPrice) === 0n) {
5545
+ return 0;
5546
+ }
5547
+ if (gasToken.toLowerCase() === ZERO_ADDRESS.toLowerCase()) {
5548
+ let gas = COLD_ACCOUNT_ACCESS_GAS_COST + CALL_VALUE_GAS_COST;
5549
+ if (await isNewEthRefundReceiver(safeProvider, gasToken, refundReceiver)) {
5550
+ gas += NEW_ACCOUNT_GAS_COST;
5551
+ }
5552
+ return gas;
5553
+ }
5554
+ const hasBalance = await hasExistingTokenBalance(safeProvider, gasToken, refundReceiver);
5555
+ return hasBalance ? ERC20_TRANSFER_GAS_COST : ERC20_NEW_HOLDER_TRANSFER_GAS_COST;
5556
+ }
5479
5557
  async function estimateGas(safeVersion, safeContract, safeProvider, to, valueInWei, data, operation, customContracts) {
5480
5558
  const chainId = await safeProvider.getChainId();
5481
5559
  const simulateTxAccessorContract = await getSimulateTxAccessorContract({
@@ -5527,21 +5605,25 @@ async function estimateTxGas(safeContract, safeProvider, to, valueInWei, data, o
5527
5605
  }
5528
5606
  async function estimateTxBaseGas(safe, safeTransaction) {
5529
5607
  const safeTransactionData = safeTransaction.data;
5530
- const { to, value, data, operation, safeTxGas, gasToken, refundReceiver } = safeTransactionData;
5531
- const safeThreshold = await safe.getThreshold();
5532
- const safeNonce = await safe.getNonce();
5533
- const signaturesGasCost = safeThreshold * GAS_COST_PER_SIGNATURE;
5608
+ const { to, value, data, operation, safeTxGas, gasPrice, gasToken, refundReceiver } = safeTransactionData;
5534
5609
  const encodeSafeTxGas = safeTxGas || 0;
5535
5610
  const encodeBaseGas = 0;
5536
- const gasPrice = 1;
5611
+ const encodeGasPrice = 1;
5537
5612
  const encodeGasToken = gasToken || ZERO_ADDRESS;
5538
5613
  const encodeRefundReceiver = refundReceiver || ZERO_ADDRESS;
5539
5614
  const signatures = "0x";
5540
- const safeVersion = safe.getContractVersion();
5541
5615
  const safeProvider = safe.getSafeProvider();
5542
- const isL1SafeSingleton = safe.getContractManager().isL1SafeSingleton;
5543
- const chainId = await safe.getChainId();
5544
- const customContracts = safe.getContractManager().contractNetworks?.[chainId.toString()];
5616
+ const safeVersion = safe.getContractVersion();
5617
+ const contractManager = safe.getContractManager();
5618
+ const isL1SafeSingleton = contractManager.isL1SafeSingleton;
5619
+ const [safeThreshold, safeNonce, chainId, refundGas] = await Promise.all([
5620
+ safe.getThreshold(),
5621
+ safe.getNonce(),
5622
+ safe.getChainId(),
5623
+ calculateRefundGas(safeProvider, gasPrice, encodeGasToken, encodeRefundReceiver)
5624
+ ]);
5625
+ const signaturesGasCost = safeThreshold * GAS_COST_PER_SIGNATURE;
5626
+ const customContracts = contractManager.contractNetworks?.[chainId.toString()];
5545
5627
  const safeSingletonContract = await getSafeContract({
5546
5628
  safeProvider,
5547
5629
  safeVersion,
@@ -5555,16 +5637,19 @@ async function estimateTxBaseGas(safe, safeTransaction) {
5555
5637
  operation,
5556
5638
  encodeSafeTxGas,
5557
5639
  encodeBaseGas,
5558
- gasPrice,
5640
+ encodeGasPrice,
5559
5641
  encodeGasToken,
5560
5642
  encodeRefundReceiver,
5561
5643
  signatures
5562
5644
  ]);
5563
5645
  const isSafeInitialized = safeNonce !== 0;
5564
- const incrementNonceGasCost = isSafeInitialized ? INCREMENT_NONCE_GAS_COST : INITIZATION_GAS_COST;
5646
+ const incrementNonceGasCost = isSafeInitialized ? INCREMENT_NONCE_GAS_COST : INITIALIZATION_GAS_COST;
5565
5647
  let baseGas = signaturesGasCost + estimateDataGasCosts(execTransactionData) + incrementNonceGasCost + HASH_GENERATION_GAS_COST;
5566
- baseGas > 65536 ? baseGas += 64 : baseGas += 128;
5567
- baseGas += TRANSAFER_GAS_COST;
5648
+ baseGas += refundGas;
5649
+ baseGas += calculateExecTransactionEventsGas(isL1SafeSingleton ?? false, data, safeThreshold);
5650
+ baseGas += EXTRA_BASE_GAS_COST;
5651
+ const baseGasUsedBytes = Math.ceil(baseGas.toString(16).length / 2);
5652
+ baseGas += baseGasUsedBytes * (CALL_DATA_BYTE_GAS_COST - CALL_DATA_ZERO_BYTE_GAS_COST);
5568
5653
  return baseGas.toString();
5569
5654
  }
5570
5655
  async function estimateSafeTxGas(safe, safeTransaction) {
@@ -5753,7 +5838,7 @@ import {
5753
5838
  encodePacked,
5754
5839
  bytesToHex,
5755
5840
  decodeFunctionData,
5756
- parseAbi
5841
+ parseAbi as parseAbi2
5757
5842
  } from "viem";
5758
5843
  import { waitForTransactionReceipt as waitForTransactionReceiptViem } from "viem/actions";
5759
5844
  function standardizeMetaTransactionData(tx) {
@@ -5853,7 +5938,7 @@ function encodeMultiSendData(txs) {
5853
5938
  }
5854
5939
  function decodeMultiSendData(encodedData) {
5855
5940
  const decodedData = decodeFunctionData({
5856
- abi: parseAbi(["function multiSend(bytes memory transactions) public payable"]),
5941
+ abi: parseAbi2(["function multiSend(bytes memory transactions) public payable"]),
5857
5942
  data: asHex(encodedData)
5858
5943
  });
5859
5944
  const args = decodedData.args;
@@ -6102,8 +6187,8 @@ import {
6102
6187
  fromBytes,
6103
6188
  fromHex,
6104
6189
  parseAbiParameters,
6105
- encodeFunctionData as encodeFunctionData2,
6106
- parseAbi as parseAbi2
6190
+ encodeFunctionData as encodeFunctionData3,
6191
+ parseAbi as parseAbi3
6107
6192
  } from "viem";
6108
6193
 
6109
6194
  // src/utils/passkeys/isSharedSigner.ts
@@ -6189,8 +6274,8 @@ var createPasskeyClient = async (passkey, safeWebAuthnSignerFactoryContract, saf
6189
6274
  signTransaction,
6190
6275
  signTypedData,
6191
6276
  encodeConfigure() {
6192
- return encodeFunctionData2({
6193
- abi: parseAbi2(["function configure((uint256 x, uint256 y, uint176 verifiers) signer)"]),
6277
+ return encodeFunctionData3({
6278
+ abi: parseAbi3(["function configure((uint256 x, uint256 y, uint176 verifiers) signer)"]),
6194
6279
  functionName: "configure",
6195
6280
  args: [
6196
6281
  {
@@ -6285,13 +6370,8 @@ var getPasskeyOwnerAddress_default = getPasskeyOwnerAddress;
6285
6370
 
6286
6371
  // src/utils/block.ts
6287
6372
  function asBlockId(blockId) {
6288
- return typeof blockId === "number" ? blockNumber(blockId) : blockTag(blockId);
6289
- }
6290
- function blockNumber(blockNumber2) {
6291
- return { blockNumber: blockNumber2.toNumber() };
6292
- }
6293
- function blockTag(blockTag2) {
6294
- return { blockTag: blockTag2 };
6373
+ if (typeof blockId === "number") return { blockNumber: BigInt(blockId) };
6374
+ return { blockTag: blockId };
6295
6375
  }
6296
6376
 
6297
6377
  // src/SafeProvider.ts
@@ -6450,16 +6530,16 @@ var SafeProvider = class _SafeProvider {
6450
6530
  const chainId = await this.getChainId();
6451
6531
  return validateEip3770Address(fullAddress, chainId);
6452
6532
  }
6453
- async getBalance(address, blockTag2) {
6533
+ async getBalance(address, blockTag) {
6454
6534
  return getBalance(this.#externalProvider, {
6455
6535
  address,
6456
- ...asBlockId(blockTag2)
6536
+ ...asBlockId(blockTag)
6457
6537
  });
6458
6538
  }
6459
- async getNonce(address, blockTag2) {
6539
+ async getNonce(address, blockTag) {
6460
6540
  return getTransactionCount(this.#externalProvider, {
6461
6541
  address,
6462
- ...asBlockId(blockTag2)
6542
+ ...asBlockId(blockTag)
6463
6543
  });
6464
6544
  }
6465
6545
  async getChainId() {
@@ -6469,17 +6549,17 @@ var SafeProvider = class _SafeProvider {
6469
6549
  getChecksummedAddress(address) {
6470
6550
  return getAddress2(address);
6471
6551
  }
6472
- async getContractCode(address, blockTag2) {
6552
+ async getContractCode(address, blockTag) {
6473
6553
  const res = await getCode(this.#externalProvider, {
6474
6554
  address,
6475
- ...asBlockId(blockTag2)
6555
+ ...asBlockId(blockTag)
6476
6556
  });
6477
6557
  return res ?? "0x";
6478
6558
  }
6479
- async isContractDeployed(address, blockTag2) {
6559
+ async isContractDeployed(address, blockTag) {
6480
6560
  const contractCode = await getCode(this.#externalProvider, {
6481
6561
  address,
6482
- ...asBlockId(blockTag2)
6562
+ ...asBlockId(blockTag)
6483
6563
  });
6484
6564
  return !!contractCode;
6485
6565
  }
@@ -6525,8 +6605,7 @@ var SafeProvider = class _SafeProvider {
6525
6605
  if (isTypedDataSigner(signer)) {
6526
6606
  const typedData = generateTypedData(safeEIP712Args);
6527
6607
  const { chainId, verifyingContract } = typedData.domain;
6528
- const chain = chainId ? Number(chainId) : void 0;
6529
- const domain = { verifyingContract, chainId: chain };
6608
+ const domain = { verifyingContract, chainId };
6530
6609
  const signature = await signer.signTypedData({
6531
6610
  domain,
6532
6611
  types: typedData.primaryType === "SafeMessage" ? { SafeMessage: typedData.types.SafeMessage } : { SafeTx: typedData.types.SafeTx },
@@ -6541,11 +6620,11 @@ var SafeProvider = class _SafeProvider {
6541
6620
  const converted = toEstimateGasParameters(transaction);
6542
6621
  return (await estimateGas2(this.#externalProvider, converted)).toString();
6543
6622
  }
6544
- async call(transaction, blockTag2) {
6623
+ async call(transaction, blockTag) {
6545
6624
  const converted = toTransactionRequest(transaction);
6546
6625
  const { data } = await call(this.#externalProvider, {
6547
6626
  ...converted,
6548
- ...asBlockId(blockTag2)
6627
+ ...asBlockId(blockTag)
6549
6628
  });
6550
6629
  return data ?? "0x";
6551
6630
  }
@@ -6721,7 +6800,7 @@ var memoizedGetSafeContract = createMemoizedFunction(
6721
6800
  async function getSafeContractVersion(safeProvider, safeAddress) {
6722
6801
  return await safeProvider.readContract({
6723
6802
  address: safeAddress,
6724
- abi: parseAbi3(["function VERSION() view returns (string)"]),
6803
+ abi: parseAbi4(["function VERSION() view returns (string)"]),
6725
6804
  functionName: "VERSION"
6726
6805
  });
6727
6806
  }
@@ -6875,7 +6954,7 @@ function getSafeAddressFromDeploymentTx(txReceipt, safeVersion) {
6875
6954
  }
6876
6955
  const { data, topics } = proxyCreationEvent;
6877
6956
  const { args } = decodeEventLog({
6878
- abi: parseAbi3([getProxyCreationEvent(safeVersion)]),
6957
+ abi: parseAbi4([getProxyCreationEvent(safeVersion)]),
6879
6958
  eventName: "ProxyCreation",
6880
6959
  data,
6881
6960
  topics
@@ -7393,7 +7472,7 @@ function generateOnChainIdentifier({
7393
7472
  var generateOnChainIdentifier_default = generateOnChainIdentifier;
7394
7473
 
7395
7474
  // src/utils/getProtocolKitVersion.ts
7396
- var getProtocolKitVersion = () => "7.1.0";
7475
+ var getProtocolKitVersion = () => "8.0.0";
7397
7476
 
7398
7477
  // src/Safe.ts
7399
7478
  var EQ_OR_GT_1_5_0 = ">=1.5.0";
@@ -9042,15 +9121,15 @@ var Safe = class _Safe {
9042
9121
  var Safe_default = Safe;
9043
9122
 
9044
9123
  // src/utils/erc-20/index.ts
9045
- import { encodeFunctionData as encodeFunctionData3, parseAbi as parseAbi4 } from "viem";
9124
+ import { encodeFunctionData as encodeFunctionData4, parseAbi as parseAbi5 } from "viem";
9046
9125
  var ERC20_ABI = [
9047
9126
  "function transfer(address recipient, uint256 amount) returns (bool)",
9048
9127
  "function decimals() view returns (uint8)"
9049
9128
  ];
9050
9129
  async function getERC20Decimals(tokenAddress, safe) {
9051
9130
  const safeProvider = safe.getSafeProvider();
9052
- const data = encodeFunctionData3({
9053
- abi: parseAbi4(ERC20_ABI),
9131
+ const data = encodeFunctionData4({
9132
+ abi: parseAbi5(ERC20_ABI),
9054
9133
  functionName: "decimals"
9055
9134
  });
9056
9135
  const getTokenDecimalsTransaction = {
@@ -9077,8 +9156,8 @@ async function isGasTokenCompatibleWithHandlePayment(gasToken, safe) {
9077
9156
  return hasTokenStandardERC20Decimals;
9078
9157
  }
9079
9158
  function createERC20TokenTransferTransaction(tokenAddress, toAddress, amount) {
9080
- const data = encodeFunctionData3({
9081
- abi: parseAbi4(ERC20_ABI),
9159
+ const data = encodeFunctionData4({
9160
+ abi: parseAbi5(ERC20_ABI),
9082
9161
  functionName: "transfer",
9083
9162
  args: [toAddress, amount]
9084
9163
  });
@@ -429,6 +429,7 @@ var networks = [
429
429
  { chainId: 3637n, shortName: "BTNX" },
430
430
  { chainId: 3737n, shortName: "csb" },
431
431
  { chainId: 3776n, shortName: "astrzk" },
432
+ { chainId: 3946n, shortName: "nex" },
432
433
  { chainId: 4002n, shortName: "tftm" },
433
434
  { chainId: 4061n, shortName: "Nahmii3Mainnet" },
434
435
  { chainId: 4062n, shortName: "Nahmii3Testnet" },
@@ -441,6 +442,7 @@ var networks = [
441
442
  { chainId: 4217n, shortName: "tempo" },
442
443
  { chainId: 4326n, shortName: "megaeth" },
443
444
  { chainId: 4337n, shortName: "beam" },
445
+ { chainId: 4441n, shortName: "liteforge" },
444
446
  { chainId: 4460n, shortName: "orderlyl2" },
445
447
  { chainId: 4488n, shortName: "HYDRA" },
446
448
  { chainId: 4509n, shortName: "SC" },
@@ -454,7 +456,9 @@ var networks = [
454
456
  { chainId: 5001n, shortName: "mantle-testnet" },
455
457
  { chainId: 5003n, shortName: "mnt-sep" },
456
458
  { chainId: 5031n, shortName: "Somnia" },
459
+ { chainId: 5042n, shortName: "arc" },
457
460
  { chainId: 5115n, shortName: "citrea-testnet" },
461
+ { chainId: 5124n, shortName: "seismic-testnet" },
458
462
  { chainId: 5165n, shortName: "ftn" },
459
463
  { chainId: 5330n, shortName: "sseed" },
460
464
  { chainId: 5464n, shortName: "saga" },
@@ -469,6 +473,7 @@ var networks = [
469
473
  { chainId: 6322n, shortName: "aura" },
470
474
  { chainId: 6342n, shortName: "megatest" },
471
475
  { chainId: 6398n, shortName: "connext-sepolia" },
476
+ { chainId: 6497n, shortName: "awaji" },
472
477
  { chainId: 6688n, shortName: "iris" },
473
478
  { chainId: 6880n, shortName: "mtt-network" },
474
479
  { chainId: 6900n, shortName: "cataclysm-1" },
@@ -593,6 +598,7 @@ var networks = [
593
598
  { chainId: 43419n, shortName: "gunz-mainnet" },
594
599
  { chainId: 44787n, shortName: "alfa" },
595
600
  { chainId: 45000n, shortName: "autobahnnetwork" },
601
+ { chainId: 46630n, shortName: "robinhoodchaintestnet" },
596
602
  { chainId: 47763n, shortName: "neox-mainnet" },
597
603
  { chainId: 47805n, shortName: "rei" },
598
604
  { chainId: 48898n, shortName: "zircuit-garfield-testnet" },
@@ -642,6 +648,8 @@ var networks = [
642
648
  { chainId: 90001n, shortName: "dhobyghaut" },
643
649
  { chainId: 91342n, shortName: "giwasepolia" },
644
650
  { chainId: 97435n, shortName: "sling" },
651
+ { chainId: 97476n, shortName: "doma-testnet" },
652
+ { chainId: 97477n, shortName: "doma" },
645
653
  { chainId: 98864n, shortName: "plume-devnet" },
646
654
  { chainId: 98865n, shortName: "plume" },
647
655
  { chainId: 98866n, shortName: "plume-mainnet" },
@@ -720,6 +728,7 @@ var networks = [
720
728
  { chainId: 6038361n, shortName: "azkyt" },
721
729
  { chainId: 6281971n, shortName: "dogeos-chykyu" },
722
730
  { chainId: 6985385n, shortName: "hp" },
731
+ { chainId: 7080969n, shortName: "thp" },
723
732
  { chainId: 7225878n, shortName: "saakuru" },
724
733
  { chainId: 7777777n, shortName: "zora" },
725
734
  { chainId: 9999999n, shortName: "fluence" },
@@ -956,6 +965,7 @@ function encodeTypedData(typedData) {
956
965
  if (domain)
957
966
  parts.push(
958
967
  hashDomain({
968
+ // domain uses the SDK's `string`-based address types; viem expects `0x${string}`
959
969
  domain,
960
970
  types
961
971
  })
@@ -1061,7 +1071,7 @@ function generateTypedData({
1061
1071
  };
1062
1072
  }
1063
1073
  if (eip712WithChainId) {
1064
- typedData.domain.chainId = Number(chainId);
1074
+ typedData.domain.chainId = chainId;
1065
1075
  }
1066
1076
  return typedData;
1067
1077
  }
@@ -1095,7 +1105,11 @@ import {
1095
1105
  import semverSatisfies3 from "semver/functions/satisfies.js";
1096
1106
 
1097
1107
  // src/utils/transactions/gas.ts
1098
- import { BaseError } from "viem";
1108
+ import {
1109
+ BaseError,
1110
+ encodeFunctionData as encodeFunctionData3,
1111
+ parseAbi as parseAbi3
1112
+ } from "viem";
1099
1113
  import { OperationType } from "@safe-global/types-kit";
1100
1114
  import semverSatisfies5 from "semver/functions/satisfies.js";
1101
1115
 
@@ -1376,13 +1390,8 @@ import { waitForTransactionReceipt } from "viem/actions";
1376
1390
 
1377
1391
  // src/utils/block.ts
1378
1392
  function asBlockId(blockId) {
1379
- return typeof blockId === "number" ? blockNumber(blockId) : blockTag(blockId);
1380
- }
1381
- function blockNumber(blockNumber2) {
1382
- return { blockNumber: blockNumber2.toNumber() };
1383
- }
1384
- function blockTag(blockTag2) {
1385
- return { blockTag: blockTag2 };
1393
+ if (typeof blockId === "number") return { blockNumber: BigInt(blockId) };
1394
+ return { blockTag: blockId };
1386
1395
  }
1387
1396
 
1388
1397
  // src/SafeProvider.ts
@@ -1741,16 +1750,16 @@ var SafeProvider = class _SafeProvider {
1741
1750
  const chainId = await this.getChainId();
1742
1751
  return validateEip3770Address(fullAddress, chainId);
1743
1752
  }
1744
- async getBalance(address, blockTag2) {
1753
+ async getBalance(address, blockTag) {
1745
1754
  return getBalance(this.#externalProvider, {
1746
1755
  address,
1747
- ...asBlockId(blockTag2)
1756
+ ...asBlockId(blockTag)
1748
1757
  });
1749
1758
  }
1750
- async getNonce(address, blockTag2) {
1759
+ async getNonce(address, blockTag) {
1751
1760
  return getTransactionCount(this.#externalProvider, {
1752
1761
  address,
1753
- ...asBlockId(blockTag2)
1762
+ ...asBlockId(blockTag)
1754
1763
  });
1755
1764
  }
1756
1765
  async getChainId() {
@@ -1760,17 +1769,17 @@ var SafeProvider = class _SafeProvider {
1760
1769
  getChecksummedAddress(address) {
1761
1770
  return getAddress(address);
1762
1771
  }
1763
- async getContractCode(address, blockTag2) {
1772
+ async getContractCode(address, blockTag) {
1764
1773
  const res = await getCode(this.#externalProvider, {
1765
1774
  address,
1766
- ...asBlockId(blockTag2)
1775
+ ...asBlockId(blockTag)
1767
1776
  });
1768
1777
  return res ?? "0x";
1769
1778
  }
1770
- async isContractDeployed(address, blockTag2) {
1779
+ async isContractDeployed(address, blockTag) {
1771
1780
  const contractCode = await getCode(this.#externalProvider, {
1772
1781
  address,
1773
- ...asBlockId(blockTag2)
1782
+ ...asBlockId(blockTag)
1774
1783
  });
1775
1784
  return !!contractCode;
1776
1785
  }
@@ -1816,8 +1825,7 @@ var SafeProvider = class _SafeProvider {
1816
1825
  if (isTypedDataSigner(signer)) {
1817
1826
  const typedData = generateTypedData(safeEIP712Args);
1818
1827
  const { chainId, verifyingContract } = typedData.domain;
1819
- const chain = chainId ? Number(chainId) : void 0;
1820
- const domain = { verifyingContract, chainId: chain };
1828
+ const domain = { verifyingContract, chainId };
1821
1829
  const signature = await signer.signTypedData({
1822
1830
  domain,
1823
1831
  types: typedData.primaryType === "SafeMessage" ? { SafeMessage: typedData.types.SafeMessage } : { SafeTx: typedData.types.SafeTx },
@@ -1832,11 +1840,11 @@ var SafeProvider = class _SafeProvider {
1832
1840
  const converted = toEstimateGasParameters(transaction);
1833
1841
  return (await estimateGas(this.#externalProvider, converted)).toString();
1834
1842
  }
1835
- async call(transaction, blockTag2) {
1843
+ async call(transaction, blockTag) {
1836
1844
  const converted = toTransactionRequest(transaction);
1837
1845
  const { data } = await call(this.#externalProvider, {
1838
1846
  ...converted,
1839
- ...asBlockId(blockTag2)
1847
+ ...asBlockId(blockTag)
1840
1848
  });
1841
1849
  return data ?? "0x";
1842
1850
  }
@@ -4746,6 +4754,10 @@ async function getSafeWebAuthnSharedSignerContract({
4746
4754
  // src/utils/transactions/gas.ts
4747
4755
  var CALL_DATA_BYTE_GAS_COST = 16;
4748
4756
  var ECRECOVER_GAS_COST = 6e3;
4757
+ var INTRINSIC_TX_GAS_COST = 21e3;
4758
+ var PRE_EXEC_STORAGE_GAS_COST = 2 * 2100;
4759
+ var MISC_OVERHEAD_GAS_COST = 3e3;
4760
+ var EXTRA_BASE_GAS_COST = INTRINSIC_TX_GAS_COST + PRE_EXEC_STORAGE_GAS_COST + MISC_OVERHEAD_GAS_COST;
4749
4761
  var GAS_COST_PER_SIGNATURE = 1 * CALL_DATA_BYTE_GAS_COST + 2 * 32 * CALL_DATA_BYTE_GAS_COST + ECRECOVER_GAS_COST;
4750
4762
 
4751
4763
  // src/utils/transactions/utils.ts
@@ -4759,7 +4771,7 @@ import {
4759
4771
  encodePacked,
4760
4772
  bytesToHex,
4761
4773
  decodeFunctionData,
4762
- parseAbi as parseAbi3
4774
+ parseAbi as parseAbi4
4763
4775
  } from "viem";
4764
4776
  import { waitForTransactionReceipt as waitForTransactionReceiptViem } from "viem/actions";
4765
4777
  function toEstimateGasParameters(tx) {
@@ -1 +1 @@
1
- {"version":3,"file":"SafeProvider.d.ts","sourceRoot":"","sources":["../../src/SafeProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SafeProvider.d.ts","sourceRoot":"","sources":["../../src/SafeProvider.ts"],"names":[],"mappings":"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"}
@@ -21,9 +21,4 @@ import { SafeFeature, hasSafeFeature } from './utils/safeVersions';
21
21
  export { estimateTxBaseGas, estimateTxGas, estimateSafeTxGas, estimateSafeDeploymentGas, extractPasskeyData, getP256VerifierAddress, ContractManager, CreateCallBaseContract, createERC20TokenTransferTransaction, DEFAULT_SAFE_VERSION, EthSafeSignature, MultiSendCallOnlyBaseContract, MultiSendBaseContract, generateOnChainIdentifier, PREDETERMINED_SALT_NONCE, SafeBaseContract, SafeProxyFactoryBaseContract, SafeTransactionOptionalProps, SignMessageLibBaseContract, encodeCreateProxyWithNonce, encodeMultiSendData, decodeMultiSendData, encodeSetupCallData, getCompatibilityFallbackHandlerContract, getExtensibleFallbackHandlerContract, getCreateCallContract, getERC20Decimals, getMultiSendCallOnlyContract, getMultiSendContract, getSafeProxyFactoryContract, getSafeContract, getSignMessageLibContract, getSafeWebAuthnSignerFactoryContract, getSafeWebAuthnSharedSignerContract, isGasTokenCompatibleWithHandlePayment, predictSafeAddress, getPredictedSafeAddressInitCode, standardizeSafeTransactionData, validateEip3770Address, validateEthereumAddress, generateSignature, generateEIP712Signature, buildContractSignature, buildSignatureBytes, preimageSafeTransactionHash, preimageSafeMessageHash, getEip712TxTypes, getEip712MessageTypes, getSafeAddressFromDeploymentTx, hashSafeMessage, generateTypedData, SafeProvider, createPasskeyClient, EthSafeTransaction, EthSafeMessage, getPasskeyOwnerAddress, adjustVInSignature, calculateSafeMessageHash, calculateSafeTransactionHash, generatePreValidatedSignature, SafeFeature, hasSafeFeature, getEip3770NetworkPrefixFromChainId, getChainIdFromEip3770NetworkPrefix };
22
22
  export * from './types';
23
23
  export default Safe;
24
- declare module 'abitype' {
25
- interface Register {
26
- AddressType: string;
27
- }
28
- }
29
24
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  import { BlockTag } from 'viem';
2
2
  export declare function asBlockId(blockId: number | string | undefined): {
3
- blockNumber: any;
3
+ blockNumber: bigint;
4
+ blockTag?: undefined;
4
5
  } | {
5
- blockTag: BlockTag;
6
+ blockTag: BlockTag | undefined;
7
+ blockNumber?: undefined;
6
8
  };
7
9
  //# sourceMappingURL=block.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../src/utils/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAE/B,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;;;cAS7B,QAAQ;EAPxC"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../../../src/utils/block.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAE/B,wBAAgB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS;;;;cAE9B,QAAQ,GAAG,SAAS;;EACnD"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/utils/eip-3770/config.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CAChB;AAID,eAAO,MAAM,QAAQ,EAAE,gBAAgB,EAkiBtC,CAAA"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../../src/utils/eip-3770/config.ts"],"names":[],"mappings":"AAAA,UAAU,gBAAgB;IACxB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;CAChB;AAID,eAAO,MAAM,QAAQ,EAAE,gBAAgB,EA2iBtC,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../../../src/utils/eip-712/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqC,MAAM,wBAAwB,CAAA;AAyK3F,wBAAgB,aAAa,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAGhE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAuClE"}
1
+ {"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../../../src/utils/eip-712/encode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqC,MAAM,wBAAwB,CAAA;AAyK3F,wBAAgB,aAAa,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAGhE;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,eAAe,GAAG,MAAM,CAwClE"}
@@ -1 +1 @@
1
- {"version":3,"file":"extractPasskeyData.d.ts","sourceRoot":"","sources":["../../../../src/utils/passkeys/extractPasskeyData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAqD1F;;;;;;;;;;GAUG;AACH,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAiC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqB/F;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAqB7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,iBAAiB,EAAE,UAAU,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CAU/B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkB9D"}
1
+ {"version":3,"file":"extractPasskeyData.d.ts","sourceRoot":"","sources":["../../../../src/utils/passkeys/extractPasskeyData.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AAoD1F;;;;;;;;;;GAUG;AACH,wBAAsB,6BAA6B,CACjD,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,kBAAkB,CAAC,CAiC7B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,qBAAqB,CAAC,SAAS,EAAE,WAAW,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAqB/F;AAED;;;;;;GAMG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,qBAAqB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CAqB7B;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACtC,iBAAiB,EAAE,UAAU,GAC5B,OAAO,CAAC,oBAAoB,CAAC,CAU/B;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkB9D"}
@@ -1 +1 @@
1
- {"version":3,"file":"gas.d.ts","sourceRoot":"","sources":["../../../../src/utils/transactions/gas.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAEpF,OAAO,IAAI,MAAM,gCAAgC,CAAA;AACjD,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC/B,MAAM,iCAAiC,CAAA;AAwDxC,wBAAsB,WAAW,CAC/B,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,8BAA8B,EAC5C,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,EACxB,eAAe,CAAC,EAAE,sBAAsB,mBAsCzC;AAED,wBAAsB,aAAa,CACjC,YAAY,EAAE,8BAA8B,EAC5C,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,GACvB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CA6DjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CAajB;AAoPD;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB3E"}
1
+ {"version":3,"file":"gas.d.ts","sourceRoot":"","sources":["../../../../src/utils/transactions/gas.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAEpF,OAAO,IAAI,MAAM,gCAAgC,CAAA;AACjD,OAAO,YAAY,MAAM,wCAAwC,CAAA;AACjE,OAAO,EACL,sBAAsB,EACtB,8BAA8B,EAC/B,MAAM,iCAAiC,CAAA;AA+LxC,wBAAsB,WAAW,CAC/B,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,8BAA8B,EAC5C,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,EACxB,eAAe,CAAC,EAAE,sBAAsB,mBAsCzC;AAED,wBAAsB,aAAa,CACjC,YAAY,EAAE,8BAA8B,EAC5C,YAAY,EAAE,YAAY,EAC1B,EAAE,EAAE,MAAM,EACV,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,aAAa,GACvB,OAAO,CAAC,MAAM,CAAC,CAgBjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CA8EjB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,IAAI,EACV,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,MAAM,CAAC,CAajB;AAoPD;;;;;;;;;GASG;AACH,wBAAsB,yBAAyB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB3E"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@safe-global/protocol-kit",
3
- "version": "7.1.0",
3
+ "version": "8.0.0",
4
4
  "description": "SDK that facilitates the interaction with Safe Smart Accounts",
5
5
  "types": "dist/src/index.d.ts",
6
6
  "main": "dist/cjs/src/index.cjs",
@@ -46,7 +46,7 @@
46
46
  "format": "prettier --write \"*/**/*.{js,json,md,ts}\"",
47
47
  "unbuild": "rimraf dist coverage .nyc_output meta-cjs.json meta-esm.json *.tsbuildinfo",
48
48
  "prebuild": "node -p \"'export const getProtocolKitVersion = () => \\'' + require('./package.json').version.split('-')[0] + '\\''\" > src/utils/getProtocolKitVersion.ts",
49
- "build": "yarn unbuild && yarn check-safe-deployments && yarn build:esm && yarn build:cjs && yarn build:types",
49
+ "build": "pnpm unbuild && pnpm check-safe-deployments && pnpm build:esm && pnpm build:cjs && pnpm build:types",
50
50
  "build:esm": "esbuild ./src/index ./test-utils/index --format=esm --bundle --metafile=meta-esm.json --packages=external --outdir=dist/esm --out-extension:.js=.mjs",
51
51
  "build:cjs": "esbuild ./src/index ./test-utils/index --format=cjs --bundle --metafile=meta-cjs.json --packages=external --outdir=dist/cjs --out-extension:.js=.cjs",
52
52
  "build:types": "NODE_OPTIONS=--max-old-space-size=8192 tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json"
@@ -65,12 +65,14 @@
65
65
  ],
66
66
  "homepage": "https://github.com/safe-global/safe-core-sdk#readme",
67
67
  "devDependencies": {
68
- "@safe-global/testing-kit": "^0.3.0",
68
+ "@safe-global/testing-kit": "workspace:^",
69
69
  "@types/chai": "^4.3.20",
70
70
  "@types/chai-as-promised": "^7.1.8",
71
71
  "@types/mocha": "^10.0.10",
72
- "@types/semver": "^7.7.0",
72
+ "@types/semver": "^7.7.1",
73
73
  "@types/sinon": "^17.0.4",
74
+ "axios": "^1.16.1",
75
+ "cbor": "^9.0.2",
74
76
  "chai": "^4.5.0",
75
77
  "chai-as-promised": "^7.1.2",
76
78
  "dotenv": "^16.4.7",
@@ -81,12 +83,12 @@
81
83
  "tsconfig-paths": "^4.2.0"
82
84
  },
83
85
  "dependencies": {
84
- "@safe-global/safe-deployments": "^1.37.54",
85
- "@safe-global/safe-modules-deployments": "^3.0.2",
86
- "@safe-global/types-kit": "^3.1.0",
87
- "abitype": "^1.0.2",
88
- "semver": "^7.7.2",
89
- "viem": "^2.21.8"
86
+ "@safe-global/safe-deployments": "^1.37.57",
87
+ "@safe-global/safe-modules-deployments": "^3.0.4",
88
+ "@safe-global/types-kit": "workspace:^",
89
+ "abitype": "^1.2.3",
90
+ "semver": "^7.8.0",
91
+ "viem": "^2.52.2"
90
92
  },
91
93
  "optionalDependencies": {
92
94
  "@noble/curves": "^1.6.0",