@safe-global/protocol-kit 6.1.2 → 7.1.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.
Files changed (73) hide show
  1. package/dist/cjs/src/index.cjs +1498 -198
  2. package/dist/cjs/test-utils/index.cjs +584 -73
  3. package/dist/esm/src/index.mjs +1462 -143
  4. package/dist/esm/test-utils/index.mjs +566 -36
  5. package/dist/src/Safe.d.ts +125 -3
  6. package/dist/src/Safe.d.ts.map +1 -1
  7. package/dist/src/SafeProvider.d.ts.map +1 -1
  8. package/dist/src/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerBaseContract.d.ts +1 -0
  9. package/dist/src/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerBaseContract.d.ts.map +1 -1
  10. package/dist/src/contracts/CompatibilityFallbackHandler/v1.5.0/CompatibilityFallbackHandlerContract_v1_5_0.d.ts +33 -0
  11. package/dist/src/contracts/CompatibilityFallbackHandler/v1.5.0/CompatibilityFallbackHandlerContract_v1_5_0.d.ts.map +1 -0
  12. package/dist/src/contracts/CreateCall/CreateCallBaseContract.d.ts +1 -0
  13. package/dist/src/contracts/CreateCall/CreateCallBaseContract.d.ts.map +1 -1
  14. package/dist/src/contracts/CreateCall/v1.5.0/CreateCallContract_v1_5_0.d.ts +38 -0
  15. package/dist/src/contracts/CreateCall/v1.5.0/CreateCallContract_v1_5_0.d.ts.map +1 -0
  16. package/dist/src/contracts/ExtensibleFallbackHandler/ExtensibleFallbackHandlerBaseContract.d.ts +36 -0
  17. package/dist/src/contracts/ExtensibleFallbackHandler/ExtensibleFallbackHandlerBaseContract.d.ts.map +1 -0
  18. package/dist/src/contracts/ExtensibleFallbackHandler/v1.5.0/ExtensibleFallbackHandlerContract_v1_5_0.d.ts +86 -0
  19. package/dist/src/contracts/ExtensibleFallbackHandler/v1.5.0/ExtensibleFallbackHandlerContract_v1_5_0.d.ts.map +1 -0
  20. package/dist/src/contracts/MultiSend/MultiSendBaseContract.d.ts +1 -0
  21. package/dist/src/contracts/MultiSend/MultiSendBaseContract.d.ts.map +1 -1
  22. package/dist/src/contracts/MultiSend/v1.5.0/MultiSendCallOnlyContract_v1_5_0.d.ts +26 -0
  23. package/dist/src/contracts/MultiSend/v1.5.0/MultiSendCallOnlyContract_v1_5_0.d.ts.map +1 -0
  24. package/dist/src/contracts/MultiSend/v1.5.0/MultiSendContract_v1_5_0.d.ts +26 -0
  25. package/dist/src/contracts/MultiSend/v1.5.0/MultiSendContract_v1_5_0.d.ts.map +1 -0
  26. package/dist/src/contracts/Safe/SafeBaseContract.d.ts +1 -0
  27. package/dist/src/contracts/Safe/SafeBaseContract.d.ts.map +1 -1
  28. package/dist/src/contracts/Safe/v1.4.1/SafeContract_v1_4_1.d.ts +1 -1
  29. package/dist/src/contracts/Safe/v1.5.0/SafeContract_v1_5_0.d.ts +156 -0
  30. package/dist/src/contracts/Safe/v1.5.0/SafeContract_v1_5_0.d.ts.map +1 -0
  31. package/dist/src/contracts/SafeProxyFactory/v1.5.0/SafeProxyFactoryContract_v1_5_0.d.ts +60 -0
  32. package/dist/src/contracts/SafeProxyFactory/v1.5.0/SafeProxyFactoryContract_v1_5_0.d.ts.map +1 -0
  33. package/dist/src/contracts/SignMessageLib/SignMessageLibBaseContract.d.ts +1 -0
  34. package/dist/src/contracts/SignMessageLib/SignMessageLibBaseContract.d.ts.map +1 -1
  35. package/dist/src/contracts/SignMessageLib/v1.5.0/SignMessageLibContract_v1_5_0.d.ts +34 -0
  36. package/dist/src/contracts/SignMessageLib/v1.5.0/SignMessageLibContract_v1_5_0.d.ts.map +1 -0
  37. package/dist/src/contracts/SimulateTxAccessor/SimulateTxAccessorBaseContract.d.ts +1 -0
  38. package/dist/src/contracts/SimulateTxAccessor/SimulateTxAccessorBaseContract.d.ts.map +1 -1
  39. package/dist/src/contracts/SimulateTxAccessor/v1.5.0/SimulateTxAccessorContract_v1_5_0.d.ts +31 -0
  40. package/dist/src/contracts/SimulateTxAccessor/v1.5.0/SimulateTxAccessorContract_v1_5_0.d.ts.map +1 -0
  41. package/dist/src/contracts/config.d.ts +1 -1
  42. package/dist/src/contracts/config.d.ts.map +1 -1
  43. package/dist/src/contracts/contractInstances.d.ts +18 -8
  44. package/dist/src/contracts/contractInstances.d.ts.map +1 -1
  45. package/dist/src/contracts/index.d.ts +2 -1
  46. package/dist/src/contracts/index.d.ts.map +1 -1
  47. package/dist/src/contracts/safeDeploymentContracts.d.ts +2 -1
  48. package/dist/src/contracts/safeDeploymentContracts.d.ts.map +1 -1
  49. package/dist/src/contracts/utils.d.ts.map +1 -1
  50. package/dist/src/index.d.ts +6 -4
  51. package/dist/src/index.d.ts.map +1 -1
  52. package/dist/src/managers/fallbackHandlerManager.d.ts +1 -0
  53. package/dist/src/managers/fallbackHandlerManager.d.ts.map +1 -1
  54. package/dist/src/managers/moduleManager.d.ts +7 -0
  55. package/dist/src/managers/moduleManager.d.ts.map +1 -1
  56. package/dist/src/types/contracts.d.ts +22 -8
  57. package/dist/src/types/contracts.d.ts.map +1 -1
  58. package/dist/src/types/passkeys.d.ts +13 -2
  59. package/dist/src/types/passkeys.d.ts.map +1 -1
  60. package/dist/src/utils/eip-3770/config.d.ts.map +1 -1
  61. package/dist/src/utils/eip-3770/index.d.ts +1 -0
  62. package/dist/src/utils/eip-3770/index.d.ts.map +1 -1
  63. package/dist/src/utils/passkeys/PasskeyClient.d.ts +1 -1
  64. package/dist/src/utils/passkeys/PasskeyClient.d.ts.map +1 -1
  65. package/dist/src/utils/passkeys/extractPasskeyData.d.ts +8 -11
  66. package/dist/src/utils/passkeys/extractPasskeyData.d.ts.map +1 -1
  67. package/dist/src/utils/passkeys/isSharedSigner.d.ts +1 -1
  68. package/dist/src/utils/passkeys/isSharedSigner.d.ts.map +1 -1
  69. package/dist/src/utils/safeVersions.d.ts +10 -7
  70. package/dist/src/utils/safeVersions.d.ts.map +1 -1
  71. package/dist/test-utils/passkeys.d.ts +2 -2
  72. package/dist/test-utils/passkeys.d.ts.map +1 -1
  73. package/package.json +7 -5
@@ -341,7 +341,7 @@ var networks = [
341
341
  { chainId: 255n, shortName: "kroma" },
342
342
  { chainId: 274n, shortName: "lachain" },
343
343
  { chainId: 280n, shortName: "zksync-goerli" },
344
- { chainId: 282n, shortName: "zkTCRO" },
344
+ { chainId: 282n, shortName: "deprecated-zkTCRO" },
345
345
  { chainId: 288n, shortName: "boba" },
346
346
  { chainId: 291n, shortName: "orderly" },
347
347
  { chainId: 295n, shortName: "hedera-mainnet" },
@@ -374,6 +374,8 @@ var networks = [
374
374
  { chainId: 690n, shortName: "redstone" },
375
375
  { chainId: 698n, shortName: "Matchain" },
376
376
  { chainId: 747n, shortName: "flow-mainnet" },
377
+ { chainId: 756n, shortName: "capx-testnet" },
378
+ { chainId: 757n, shortName: "capx" },
377
379
  { chainId: 787n, shortName: "aca" },
378
380
  { chainId: 841n, shortName: "tara" },
379
381
  { chainId: 842n, shortName: "taratest" },
@@ -419,6 +421,7 @@ var networks = [
419
421
  { chainId: 1559n, shortName: "tenet" },
420
422
  { chainId: 1625n, shortName: "gravity" },
421
423
  { chainId: 1663n, shortName: "Gobi" },
424
+ { chainId: 1672n, shortName: "pharos" },
422
425
  { chainId: 1729n, shortName: "reya" },
423
426
  { chainId: 1740n, shortName: "metall2-testnet" },
424
427
  { chainId: 1750n, shortName: "metall2" },
@@ -456,9 +459,12 @@ var networks = [
456
459
  { chainId: 2442n, shortName: "zkevm-testnet-cardona" },
457
460
  { chainId: 2522n, shortName: "fraxtal-testnet" },
458
461
  { chainId: 2741n, shortName: "abstract" },
462
+ { chainId: 2787n, shortName: "creator-chain-mainnet" },
459
463
  { chainId: 2810n, shortName: "hmorph" },
460
464
  { chainId: 2818n, shortName: "morph" },
465
+ { chainId: 2910n, shortName: "morph-hoodi-testnet" },
461
466
  { chainId: 3068n, shortName: "bfc" },
467
+ { chainId: 3111n, shortName: "alpha" },
462
468
  { chainId: 3338n, shortName: "PEAQ" },
463
469
  { chainId: 3501n, shortName: "JFIN" },
464
470
  { chainId: 3636n, shortName: "BTNXt" },
@@ -469,14 +475,17 @@ var networks = [
469
475
  { chainId: 4061n, shortName: "Nahmii3Mainnet" },
470
476
  { chainId: 4062n, shortName: "Nahmii3Testnet" },
471
477
  { chainId: 4078n, shortName: "muster" },
478
+ { chainId: 4153n, shortName: "rise" },
472
479
  { chainId: 4157n, shortName: "crossfi-testnet" },
473
480
  { chainId: 4158n, shortName: "crossfi" },
474
481
  { chainId: 4162n, shortName: "SXR" },
475
482
  { chainId: 4202n, shortName: "lisksep" },
483
+ { chainId: 4217n, shortName: "tempo" },
476
484
  { chainId: 4326n, shortName: "megaeth" },
477
485
  { chainId: 4337n, shortName: "beam" },
478
486
  { chainId: 4460n, shortName: "orderlyl2" },
479
487
  { chainId: 4488n, shortName: "HYDRA" },
488
+ { chainId: 4509n, shortName: "SC" },
480
489
  { chainId: 4653n, shortName: "gold" },
481
490
  { chainId: 4661n, shortName: "appchaintestnet" },
482
491
  { chainId: 4689n, shortName: "iotex-mainnet" },
@@ -512,13 +521,18 @@ var networks = [
512
521
  { chainId: 7070n, shortName: "planq" },
513
522
  { chainId: 7171n, shortName: "bitrock" },
514
523
  { chainId: 7200n, shortName: "xsat" },
524
+ { chainId: 7208n, shortName: "nxra-mainnet" },
515
525
  { chainId: 7332n, shortName: "EON" },
526
+ { chainId: 7336n, shortName: "pruvtestnet" },
527
+ { chainId: 7337n, shortName: "pruvmainnet" },
516
528
  { chainId: 7341n, shortName: "shyft" },
517
529
  { chainId: 7560n, shortName: "cyeth" },
518
530
  { chainId: 7700n, shortName: "canto" },
519
531
  { chainId: 7771n, shortName: "tbitrock" },
520
532
  { chainId: 7897n, shortName: "arena-z" },
533
+ { chainId: 7979n, shortName: "dos" },
521
534
  { chainId: 8008n, shortName: "polynomial" },
535
+ { chainId: 8150n, shortName: "alpen" },
522
536
  { chainId: 8192n, shortName: "tqf" },
523
537
  { chainId: 8194n, shortName: "ttqf" },
524
538
  { chainId: 8217n, shortName: "kaia-mainnet" },
@@ -527,6 +541,7 @@ var networks = [
527
541
  { chainId: 8408n, shortName: "zentest" },
528
542
  { chainId: 8453n, shortName: "base" },
529
543
  { chainId: 8700n, shortName: "ACN" },
544
+ { chainId: 8765n, shortName: "ward" },
530
545
  { chainId: 8801n, shortName: "okto-testnet" },
531
546
  { chainId: 8822n, shortName: "iotaevm" },
532
547
  { chainId: 8844n, shortName: "THYDRA" },
@@ -552,6 +567,7 @@ var networks = [
552
567
  { chainId: 11111n, shortName: "WAGMI" },
553
568
  { chainId: 11124n, shortName: "abstract-sepolia" },
554
569
  { chainId: 11235n, shortName: "islm" },
570
+ { chainId: 11417n, shortName: "anq-testnet" },
555
571
  { chainId: 11437n, shortName: "shyftt" },
556
572
  { chainId: 11501n, shortName: "bevm" },
557
573
  { chainId: 11503n, shortName: "bevm-test" },
@@ -563,6 +579,7 @@ var networks = [
563
579
  { chainId: 12553n, shortName: "rss3" },
564
580
  { chainId: 13337n, shortName: "beam-testnet" },
565
581
  { chainId: 13371n, shortName: "imx" },
582
+ { chainId: 13441n, shortName: "bridgeless" },
566
583
  { chainId: 13473n, shortName: "imx-testnet" },
567
584
  { chainId: 13505n, shortName: "gravitysep" },
568
585
  { chainId: 13746n, shortName: "g7t" },
@@ -581,11 +598,14 @@ var networks = [
581
598
  { chainId: 23295n, shortName: "sapphire-testnet" },
582
599
  { chainId: 24101n, shortName: "incentiv" },
583
600
  { chainId: 25327n, shortName: "Everclear" },
601
+ { chainId: 25363n, shortName: "fluent" },
584
602
  { chainId: 26888n, shortName: "tABCore" },
585
603
  { chainId: 28802n, shortName: "tcent" },
586
604
  { chainId: 28882n, shortName: "BobaSepolia" },
587
605
  { chainId: 28979n, shortName: "kimbonet-testnet" },
588
- { chainId: 31611n, shortName: "mezo" },
606
+ { chainId: 30303n, shortName: "Ethiq" },
607
+ { chainId: 31611n, shortName: "mezo-testnet" },
608
+ { chainId: 31612n, shortName: "mezo" },
589
609
  { chainId: 32323n, shortName: "basedai" },
590
610
  { chainId: 32380n, shortName: "paix" },
591
611
  { chainId: 32769n, shortName: "zil" },
@@ -598,6 +618,7 @@ var networks = [
598
618
  { chainId: 35441n, shortName: "q" },
599
619
  { chainId: 35443n, shortName: "q-testnet" },
600
620
  { chainId: 36888n, shortName: "abcore" },
621
+ { chainId: 36900n, shortName: "adi" },
601
622
  { chainId: 37111n, shortName: "lens-sepolia" },
602
623
  { chainId: 41455n, shortName: "aleph-zero" },
603
624
  { chainId: 41923n, shortName: "edu-chain" },
@@ -605,6 +626,7 @@ var networks = [
605
626
  { chainId: 42170n, shortName: "arb-nova" },
606
627
  { chainId: 42220n, shortName: "celo" },
607
628
  { chainId: 42421n, shortName: "rwa" },
629
+ { chainId: 42431n, shortName: "tempo-moderato" },
608
630
  { chainId: 42793n, shortName: "etlk" },
609
631
  { chainId: 43111n, shortName: "hemi" },
610
632
  { chainId: 43113n, shortName: "fuji" },
@@ -622,6 +644,7 @@ var networks = [
622
644
  { chainId: 49321n, shortName: "Stork" },
623
645
  { chainId: 50104n, shortName: "sophon" },
624
646
  { chainId: 50312n, shortName: "SomniaTestnet" },
647
+ { chainId: 52924n, shortName: "lazai" },
625
648
  { chainId: 53302n, shortName: "seedsep" },
626
649
  { chainId: 53456n, shortName: "birdlayer" },
627
650
  { chainId: 53457n, shortName: "dodochain" },
@@ -656,6 +679,8 @@ var networks = [
656
679
  { chainId: 84532n, shortName: "basesep" },
657
680
  { chainId: 88811n, shortName: "unit0-mainnet" },
658
681
  { chainId: 88817n, shortName: "unit0-testnet" },
682
+ { chainId: 88882n, shortName: "chzspicy" },
683
+ { chainId: 88888n, shortName: "chiliz" },
659
684
  { chainId: 90001n, shortName: "dhobyghaut" },
660
685
  { chainId: 91342n, shortName: "giwasepolia" },
661
686
  { chainId: 97435n, shortName: "sling" },
@@ -663,7 +688,9 @@ var networks = [
663
688
  { chainId: 98865n, shortName: "plume" },
664
689
  { chainId: 98866n, shortName: "plume-mainnet" },
665
690
  { chainId: 98867n, shortName: "plume-testnet" },
691
+ { chainId: 98875n, shortName: "nil" },
666
692
  { chainId: 98985n, shortName: "superposition-testnet" },
693
+ { chainId: 102030n, shortName: "ctc" },
667
694
  { chainId: 103454n, shortName: "masatest" },
668
695
  { chainId: 105105n, shortName: "stratis" },
669
696
  { chainId: 111188n, shortName: "re-al" },
@@ -672,6 +699,7 @@ var networks = [
672
699
  { chainId: 167000n, shortName: "tko-mainnet" },
673
700
  { chainId: 167008n, shortName: "tko-katla" },
674
701
  { chainId: 167009n, shortName: "tko-hekla" },
702
+ { chainId: 167013n, shortName: "tko-hoodi" },
675
703
  { chainId: 175188n, shortName: "lpy" },
676
704
  { chainId: 181228n, shortName: "hpp-sepolia" },
677
705
  { chainId: 190415n, shortName: "hpp-mainnet" },
@@ -682,16 +710,19 @@ var networks = [
682
710
  { chainId: 205205n, shortName: "auroria" },
683
711
  { chainId: 210425n, shortName: "platon" },
684
712
  { chainId: 222888n, shortName: "mocat" },
713
+ { chainId: 278701n, shortName: "creator-chain-testnet" },
685
714
  { chainId: 314159n, shortName: "filecoin-calibration" },
686
715
  { chainId: 325000n, shortName: "CampV2" },
687
716
  { chainId: 328527n, shortName: "nal" },
688
717
  { chainId: 333999n, shortName: "olympus" },
718
+ { chainId: 369369n, shortName: "den-mainnet" },
689
719
  { chainId: 381931n, shortName: "metal" },
690
720
  { chainId: 421611n, shortName: "arb-rinkeby" },
691
721
  { chainId: 421613n, shortName: "arb-goerli" },
692
722
  { chainId: 421614n, shortName: "arb-sep" },
693
723
  { chainId: 444444n, shortName: "syndr" },
694
724
  { chainId: 490000n, shortName: "ATN" },
725
+ { chainId: 511111n, shortName: "alpha-testnet" },
695
726
  { chainId: 534351n, shortName: "scr-sepolia" },
696
727
  { chainId: 534352n, shortName: "scr" },
697
728
  { chainId: 534353n, shortName: "scr-alpha" },
@@ -715,6 +746,7 @@ var networks = [
715
746
  { chainId: 808813n, shortName: "bob-sepolia" },
716
747
  { chainId: 810180n, shortName: "zklink-nova" },
717
748
  { chainId: 839999n, shortName: "txsat" },
749
+ { chainId: 853211n, shortName: "haqq-testethiq" },
718
750
  { chainId: 978657n, shortName: "treasure-ruby" },
719
751
  { chainId: 984122n, shortName: "forma" },
720
752
  { chainId: 1000101n, shortName: "xo" },
@@ -725,8 +757,10 @@ var networks = [
725
757
  { chainId: 2632500n, shortName: "coti" },
726
758
  { chainId: 3441006n, shortName: "mantaSepoliaTestnet" },
727
759
  { chainId: 4457845n, shortName: "zero-sepolia" },
760
+ { chainId: 5042002n, shortName: "arc-testnet" },
728
761
  { chainId: 5064014n, shortName: "ethereal" },
729
762
  { chainId: 6038361n, shortName: "azkyt" },
763
+ { chainId: 6281971n, shortName: "dogeos-chykyu" },
730
764
  { chainId: 6985385n, shortName: "hp" },
731
765
  { chainId: 7225878n, shortName: "saakuru" },
732
766
  { chainId: 7777777n, shortName: "zora" },
@@ -738,6 +772,7 @@ var networks = [
738
772
  { chainId: 12227332n, shortName: "neox-t4" },
739
773
  { chainId: 13374202n, shortName: "ethereal-testnet-0" },
740
774
  { chainId: 13863860n, shortName: "sis" },
775
+ { chainId: 20250407n, shortName: "platondev3" },
741
776
  { chainId: 21000000n, shortName: "corn" },
742
777
  { chainId: 52164803n, shortName: "fluence-testnet" },
743
778
  { chainId: 65100004n, shortName: "piccadilly-04" },
@@ -769,8 +804,10 @@ var networks = [
769
804
  { chainId: 1666700000n, shortName: "hmy-b-s0" },
770
805
  { chainId: 1952959480n, shortName: "lumiatestnet" },
771
806
  { chainId: 2030232745n, shortName: "lumia-beam-testnet" },
807
+ { chainId: 3735928814n, shortName: "edent" },
772
808
  { chainId: 11297108099n, shortName: "tpalm" },
773
809
  { chainId: 11297108109n, shortName: "palm" },
810
+ { chainId: 30143370385n, shortName: "BUB" },
774
811
  { chainId: 37714555429n, shortName: "xaitestnet" },
775
812
  { chainId: 88153591557n, shortName: "arb-blueberry" },
776
813
  { chainId: 123420000220n, shortName: "fluence-stage" },
@@ -1074,7 +1111,8 @@ var SAFE_FEATURES_BY_VERSION = {
1074
1111
  ["REQUIRED_TXGAS" /* REQUIRED_TXGAS */]: "<=1.2.0",
1075
1112
  ["SIMULATE_AND_REVERT" /* SIMULATE_AND_REVERT */]: ">=1.3.0",
1076
1113
  ["PASSKEY_SIGNER" /* PASSKEY_SIGNER */]: ">=1.3.0",
1077
- ["SAFE_L2_CONTRACTS" /* SAFE_L2_CONTRACTS */]: ">=1.3.0"
1114
+ ["SAFE_L2_CONTRACTS" /* SAFE_L2_CONTRACTS */]: ">=1.3.0",
1115
+ ["SAFE_MODULE_GUARD" /* SAFE_MODULE_GUARD */]: ">=1.5.0"
1078
1116
  };
1079
1117
  var hasSafeFeature = (feature, version) => {
1080
1118
  if (!(feature in SAFE_FEATURES_BY_VERSION)) {
@@ -1090,7 +1128,7 @@ var import_satisfies3 = __toESM(require("semver/functions/satisfies.js"));
1090
1128
 
1091
1129
  // src/utils/transactions/gas.ts
1092
1130
  var import_viem12 = require("viem");
1093
- var import_types_kit26 = require("@safe-global/types-kit");
1131
+ var import_types_kit35 = require("@safe-global/types-kit");
1094
1132
  var import_satisfies5 = __toESM(require("semver/functions/satisfies.js"));
1095
1133
 
1096
1134
  // src/contracts/BaseContract.ts
@@ -1100,8 +1138,22 @@ var import_actions = require("viem/actions");
1100
1138
  // src/contracts/config.ts
1101
1139
  var import_safe_deployments = require("@safe-global/safe-deployments");
1102
1140
  var import_safe_modules_deployments = require("@safe-global/safe-modules-deployments");
1103
- var DEFAULT_SAFE_VERSION = "1.3.0";
1141
+ var DEFAULT_SAFE_VERSION = "1.4.1";
1104
1142
  var safeDeploymentsVersions = {
1143
+ "1.5.0": {
1144
+ safeSingletonVersion: "1.5.0",
1145
+ safeSingletonL2Version: "1.5.0",
1146
+ safeProxyFactoryVersion: "1.5.0",
1147
+ compatibilityFallbackHandler: "1.5.0",
1148
+ extensibleFallbackHandler: "1.5.0",
1149
+ multiSendVersion: "1.5.0",
1150
+ multiSendCallOnlyVersion: "1.5.0",
1151
+ signMessageLibVersion: "1.5.0",
1152
+ createCallVersion: "1.5.0",
1153
+ simulateTxAccessorVersion: "1.5.0",
1154
+ safeWebAuthnSignerFactoryVersion: "0.2.1",
1155
+ safeWebAuthnSharedSignerVersion: "0.2.1"
1156
+ },
1105
1157
  "1.4.1": {
1106
1158
  safeSingletonVersion: "1.4.1",
1107
1159
  safeSingletonL2Version: "1.4.1",
@@ -1174,6 +1226,7 @@ var contractFunctions = {
1174
1226
  safeSingletonL2Version: import_safe_deployments.getSafeL2SingletonDeployments,
1175
1227
  safeProxyFactoryVersion: import_safe_deployments.getProxyFactoryDeployments,
1176
1228
  compatibilityFallbackHandler: import_safe_deployments.getCompatibilityFallbackHandlerDeployments,
1229
+ extensibleFallbackHandler: import_safe_deployments.getExtensibleFallbackHandlerDeployments,
1177
1230
  multiSendVersion: import_safe_deployments.getMultiSendDeployments,
1178
1231
  multiSendCallOnlyVersion: import_safe_deployments.getMultiSendCallOnlyDeployments,
1179
1232
  signMessageLibVersion: import_safe_deployments.getSignMessageLibDeployments,
@@ -1364,35 +1417,19 @@ async function decodePublicKeyForWeb(publicKey) {
1364
1417
  y: "0x" + import_buffer.Buffer.from(y, "base64").toString("hex")
1365
1418
  };
1366
1419
  }
1367
- function getDefaultFCLP256VerifierAddress(chainId) {
1368
- const FCLP256VerifierDeployment = (0, import_safe_modules_deployments2.getFCLP256VerifierDeployment)({
1369
- version: "0.2.1",
1370
- released: true,
1371
- network: chainId
1372
- });
1373
- if (!FCLP256VerifierDeployment) {
1374
- throw new Error(`Failed to load FCLP256Verifier deployment for chain ID ${chainId}`);
1375
- }
1376
- const verifierAddress = FCLP256VerifierDeployment.networkAddresses[chainId];
1377
- if (!verifierAddress) {
1378
- throw new Error(`FCLP256Verifier address not found for chain ID ${chainId}`);
1379
- }
1380
- return verifierAddress;
1381
- }
1382
1420
 
1383
1421
  // src/utils/passkeys/PasskeyClient.ts
1384
1422
  var import_viem8 = require("viem");
1385
1423
 
1386
1424
  // src/utils/passkeys/isSharedSigner.ts
1387
- async function isSharedSigner(passkey, safeWebAuthnSharedSignerContract, safeAddress, owners, chainId) {
1425
+ async function isSharedSigner(passkey, safeWebAuthnSharedSignerContract, safeAddress, owners) {
1388
1426
  const sharedSignerContractAddress = safeWebAuthnSharedSignerContract.contractAddress;
1389
1427
  if (safeAddress && owners.includes(sharedSignerContractAddress)) {
1390
1428
  const [sharedSignerSlot] = await safeWebAuthnSharedSignerContract.getConfiguration([
1391
1429
  asHex(safeAddress)
1392
1430
  ]);
1393
1431
  const { x, y, verifiers } = sharedSignerSlot;
1394
- const verifierAddress = passkey.customVerifierAddress || getDefaultFCLP256VerifierAddress(chainId);
1395
- const isSharedSigner2 = BigInt(passkey.coordinates.x) === x && BigInt(passkey.coordinates.y) === y && BigInt(verifierAddress) === verifiers;
1432
+ const isSharedSigner2 = BigInt(passkey.coordinates.x) === x && BigInt(passkey.coordinates.y) === y && BigInt(passkey.verifierAddress) === verifiers;
1396
1433
  return isSharedSigner2;
1397
1434
  }
1398
1435
  return false;
@@ -1428,16 +1465,14 @@ var signTransaction = () => {
1428
1465
  var signTypedData = () => {
1429
1466
  throw new Error("Passkey Signers cannot sign signTypedData, they can only sign data.");
1430
1467
  };
1431
- var createPasskeyClient = async (passkey, safeWebAuthnSignerFactoryContract, safeWebAuthnSharedSignerContract, provider, safeAddress, owners, chainId) => {
1432
- const { rawId, coordinates, customVerifierAddress } = passkey;
1468
+ var createPasskeyClient = async (passkey, safeWebAuthnSignerFactoryContract, safeWebAuthnSharedSignerContract, provider, safeAddress, owners) => {
1469
+ const { rawId, coordinates, verifierAddress } = passkey;
1433
1470
  const passkeyRawId = (0, import_viem8.hexToBytes)(asHex(rawId));
1434
- const verifierAddress = customVerifierAddress || getDefaultFCLP256VerifierAddress(chainId);
1435
1471
  const isPasskeySharedSigner = await isSharedSigner_default(
1436
1472
  passkey,
1437
1473
  safeWebAuthnSharedSignerContract,
1438
1474
  safeAddress,
1439
- owners,
1440
- chainId
1475
+ owners
1441
1476
  );
1442
1477
  let signerAddress;
1443
1478
  if (isPasskeySharedSigner) {
@@ -1605,8 +1640,7 @@ var SafeProvider = class _SafeProvider {
1605
1640
  safeWebAuthnSharedSignerContract,
1606
1641
  safeProvider.getExternalProvider(),
1607
1642
  safeAddress || "",
1608
- owners || [],
1609
- chainId.toString()
1643
+ owners || []
1610
1644
  );
1611
1645
  } else {
1612
1646
  passkeySigner = signer;
@@ -1884,27 +1918,39 @@ function isTypedDataSigner(signer) {
1884
1918
  // src/contracts/CreateCall/v1.4.1/CreateCallContract_v1_4_1.ts
1885
1919
  var import_types_kit3 = require("@safe-global/types-kit");
1886
1920
 
1887
- // src/contracts/MultiSend/v1.1.1/MultiSendContract_v1_1_1.ts
1921
+ // src/contracts/CreateCall/v1.5.0/CreateCallContract_v1_5_0.ts
1888
1922
  var import_types_kit4 = require("@safe-global/types-kit");
1889
1923
 
1890
- // src/contracts/MultiSend/v1.3.0/MultiSendContract_v1_3_0.ts
1924
+ // src/contracts/MultiSend/v1.1.1/MultiSendContract_v1_1_1.ts
1891
1925
  var import_types_kit5 = require("@safe-global/types-kit");
1892
1926
 
1893
- // src/contracts/MultiSend/v1.4.1/MultiSendContract_v1_4_1.ts
1927
+ // src/contracts/MultiSend/v1.3.0/MultiSendContract_v1_3_0.ts
1894
1928
  var import_types_kit6 = require("@safe-global/types-kit");
1895
1929
 
1896
- // src/contracts/MultiSend/v1.3.0/MultiSendCallOnlyContract_v1_3_0.ts
1930
+ // src/contracts/MultiSend/v1.4.1/MultiSendContract_v1_4_1.ts
1897
1931
  var import_types_kit7 = require("@safe-global/types-kit");
1898
1932
 
1899
- // src/contracts/MultiSend/v1.4.1/MultiSendCallOnlyContract_v1_4_1.ts
1933
+ // src/contracts/MultiSend/v1.5.0/MultiSendContract_v1_5_0.ts
1900
1934
  var import_types_kit8 = require("@safe-global/types-kit");
1901
1935
 
1902
- // src/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_v1_3_0.ts
1936
+ // src/contracts/MultiSend/v1.3.0/MultiSendCallOnlyContract_v1_3_0.ts
1903
1937
  var import_types_kit9 = require("@safe-global/types-kit");
1904
1938
 
1905
- // src/contracts/SignMessageLib/v1.4.1/SignMessageLibContract_v1_4_1.ts
1939
+ // src/contracts/MultiSend/v1.4.1/MultiSendCallOnlyContract_v1_4_1.ts
1906
1940
  var import_types_kit10 = require("@safe-global/types-kit");
1907
1941
 
1942
+ // src/contracts/MultiSend/v1.5.0/MultiSendCallOnlyContract_v1_5_0.ts
1943
+ var import_types_kit11 = require("@safe-global/types-kit");
1944
+
1945
+ // src/contracts/SignMessageLib/v1.3.0/SignMessageLibContract_v1_3_0.ts
1946
+ var import_types_kit12 = require("@safe-global/types-kit");
1947
+
1948
+ // src/contracts/SignMessageLib/v1.4.1/SignMessageLibContract_v1_4_1.ts
1949
+ var import_types_kit13 = require("@safe-global/types-kit");
1950
+
1951
+ // src/contracts/SignMessageLib/v1.5.0/SignMessageLibContract_v1_5_0.ts
1952
+ var import_types_kit14 = require("@safe-global/types-kit");
1953
+
1908
1954
  // src/contracts/Safe/v1.0.0/SafeContract_v1_0_0.ts
1909
1955
  var import_actions4 = require("viem/actions");
1910
1956
 
@@ -1942,7 +1988,7 @@ var SafeBaseContract = class extends BaseContract_default {
1942
1988
  var SafeBaseContract_default = SafeBaseContract;
1943
1989
 
1944
1990
  // src/contracts/Safe/v1.0.0/SafeContract_v1_0_0.ts
1945
- var import_types_kit11 = require("@safe-global/types-kit");
1991
+ var import_types_kit15 = require("@safe-global/types-kit");
1946
1992
  var SafeContract_v1_0_0 = class extends SafeBaseContract_default {
1947
1993
  /**
1948
1994
  * Constructs an instance of SafeContract_v1_0_0
@@ -1956,7 +2002,7 @@ var SafeContract_v1_0_0 = class extends SafeBaseContract_default {
1956
2002
  */
1957
2003
  constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
1958
2004
  const safeVersion = "1.0.0";
1959
- const defaultAbi = import_types_kit11.safe_1_0_0_ContractArtifacts.abi;
2005
+ const defaultAbi = import_types_kit15.safe_1_0_0_ContractArtifacts.abi;
1960
2006
  super(
1961
2007
  chainId,
1962
2008
  safeProvider,
@@ -2223,7 +2269,7 @@ var SafeContract_v1_0_0_default = SafeContract_v1_0_0;
2223
2269
 
2224
2270
  // src/contracts/Safe/v1.1.1/SafeContract_v1_1_1.ts
2225
2271
  var import_actions5 = require("viem/actions");
2226
- var import_types_kit12 = require("@safe-global/types-kit");
2272
+ var import_types_kit16 = require("@safe-global/types-kit");
2227
2273
  var SafeContract_v1_1_1 = class extends SafeBaseContract_default {
2228
2274
  /**
2229
2275
  * Constructs an instance of SafeContract_v1_1_1
@@ -2237,7 +2283,7 @@ var SafeContract_v1_1_1 = class extends SafeBaseContract_default {
2237
2283
  */
2238
2284
  constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
2239
2285
  const safeVersion = "1.1.1";
2240
- const defaultAbi = import_types_kit12.safe_1_1_1_ContractArtifacts.abi;
2286
+ const defaultAbi = import_types_kit16.safe_1_1_1_ContractArtifacts.abi;
2241
2287
  super(
2242
2288
  chainId,
2243
2289
  safeProvider,
@@ -2479,7 +2525,7 @@ var SafeContract_v1_1_1_default = SafeContract_v1_1_1;
2479
2525
 
2480
2526
  // src/contracts/Safe/v1.2.0/SafeContract_v1_2_0.ts
2481
2527
  var import_actions6 = require("viem/actions");
2482
- var import_types_kit13 = require("@safe-global/types-kit");
2528
+ var import_types_kit17 = require("@safe-global/types-kit");
2483
2529
  var SafeContract_v1_2_0 = class extends SafeBaseContract_default {
2484
2530
  /**
2485
2531
  * Constructs an instance of SafeContract_v1_2_0
@@ -2493,7 +2539,7 @@ var SafeContract_v1_2_0 = class extends SafeBaseContract_default {
2493
2539
  */
2494
2540
  constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
2495
2541
  const safeVersion = "1.2.0";
2496
- const defaultAbi = import_types_kit13.safe_1_2_0_ContractArtifacts.abi;
2542
+ const defaultAbi = import_types_kit17.safe_1_2_0_ContractArtifacts.abi;
2497
2543
  super(
2498
2544
  chainId,
2499
2545
  safeProvider,
@@ -2739,7 +2785,7 @@ var SafeContract_v1_2_0_default = SafeContract_v1_2_0;
2739
2785
 
2740
2786
  // src/contracts/Safe/v1.3.0/SafeContract_v1_3_0.ts
2741
2787
  var import_actions7 = require("viem/actions");
2742
- var import_types_kit14 = require("@safe-global/types-kit");
2788
+ var import_types_kit18 = require("@safe-global/types-kit");
2743
2789
  var SafeContract_v1_3_0 = class extends SafeBaseContract_default {
2744
2790
  /**
2745
2791
  * Constructs an instance of SafeContract_v1_3_0
@@ -2753,7 +2799,7 @@ var SafeContract_v1_3_0 = class extends SafeBaseContract_default {
2753
2799
  */
2754
2800
  constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
2755
2801
  const safeVersion = "1.3.0";
2756
- const defaultAbi = import_types_kit14.safe_1_3_0_ContractArtifacts.abi;
2802
+ const defaultAbi = import_types_kit18.safe_1_3_0_ContractArtifacts.abi;
2757
2803
  super(
2758
2804
  chainId,
2759
2805
  safeProvider,
@@ -3012,7 +3058,7 @@ var SafeContract_v1_3_0_default = SafeContract_v1_3_0;
3012
3058
 
3013
3059
  // src/contracts/Safe/v1.4.1/SafeContract_v1_4_1.ts
3014
3060
  var import_actions8 = require("viem/actions");
3015
- var import_types_kit15 = require("@safe-global/types-kit");
3061
+ var import_types_kit19 = require("@safe-global/types-kit");
3016
3062
  var SafeContract_v1_4_1 = class extends SafeBaseContract_default {
3017
3063
  /**
3018
3064
  * Constructs an instance of SafeContract_v1_4_1
@@ -3026,7 +3072,7 @@ var SafeContract_v1_4_1 = class extends SafeBaseContract_default {
3026
3072
  */
3027
3073
  constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
3028
3074
  const safeVersion = "1.4.1";
3029
- const defaultAbi = import_types_kit15.safe_1_4_1_ContractArtifacts.abi;
3075
+ const defaultAbi = import_types_kit19.safe_1_4_1_ContractArtifacts.abi;
3030
3076
  super(
3031
3077
  chainId,
3032
3078
  safeProvider,
@@ -3100,7 +3146,7 @@ var SafeContract_v1_4_1 = class extends SafeBaseContract_default {
3100
3146
  return [await this.read("getOwners")];
3101
3147
  };
3102
3148
  /**
3103
- * Reads `length` bytes of storage in the currents contract
3149
+ * Reads `length` bytes of storage in the current contract
3104
3150
  * @param args - Array[offset, length]
3105
3151
  * @returns Array[storage]
3106
3152
  */
@@ -3283,6 +3329,328 @@ var SafeContract_v1_4_1 = class extends SafeBaseContract_default {
3283
3329
  };
3284
3330
  var SafeContract_v1_4_1_default = SafeContract_v1_4_1;
3285
3331
 
3332
+ // src/contracts/Safe/v1.5.0/SafeContract_v1_5_0.ts
3333
+ var import_actions9 = require("viem/actions");
3334
+ var import_types_kit20 = require("@safe-global/types-kit");
3335
+ var SafeContract_v1_5_0 = class extends SafeBaseContract_default {
3336
+ /**
3337
+ * Constructs an instance of SafeContract_v1_5_0
3338
+ *
3339
+ * @param chainId - The chain ID where the contract resides.
3340
+ * @param safeProvider - An instance of SafeProvider.
3341
+ * @param isL1SafeSingleton - A flag indicating if the contract is a L1 Safe Singleton.
3342
+ * @param customContractAddress - Optional custom address for the contract. If not provided, the address is derived from the Safe deployments based on the chainId and safeVersion.
3343
+ * @param customContractAbi - Optional custom ABI for the contract. If not provided, the default ABI for version 1.5.0 is used.
3344
+ * @param deploymentType - Optional deployment type for the contract. If not provided, the first deployment retrieved from the safe-deployments array will be used.
3345
+ */
3346
+ constructor(chainId, safeProvider, isL1SafeSingleton, customContractAddress, customContractAbi, deploymentType) {
3347
+ const safeVersion = "1.5.0";
3348
+ const defaultAbi = import_types_kit20.safe_1_5_0_ContractArtifacts.abi;
3349
+ super(
3350
+ chainId,
3351
+ safeProvider,
3352
+ defaultAbi,
3353
+ safeVersion,
3354
+ isL1SafeSingleton,
3355
+ customContractAddress,
3356
+ customContractAbi,
3357
+ deploymentType
3358
+ );
3359
+ /**
3360
+ * @returns Array[safeContractVersion]
3361
+ */
3362
+ this.VERSION = async () => {
3363
+ return [await this.read("VERSION")];
3364
+ };
3365
+ /**
3366
+ * @param args - Array[owner, txHash]
3367
+ * @returns Array[approvedHashes]
3368
+ */
3369
+ this.approvedHashes = async (args) => {
3370
+ return [await this.read("approvedHashes", args)];
3371
+ };
3372
+ /**
3373
+ * Checks whether the signature provided is valid for the provided data, hash and number of required signatures.
3374
+ * Will revert otherwise.
3375
+ * @param args - Array[dataHash, data, signatures, requiredSignatures]
3376
+ * @returns Empty array
3377
+ */
3378
+ this.checkNSignatures = async (args) => {
3379
+ await this.read("checkNSignatures", args);
3380
+ return [];
3381
+ };
3382
+ /**
3383
+ * New in v1.5.0: overload of checkNSignatures that accepts an explicit executor address.
3384
+ * Allows modules to pass msg.sender explicitly rather than relying on the contract's own context.
3385
+ * Will revert otherwise.
3386
+ * @param args - Array[executor, dataHash, signatures, requiredSignatures]
3387
+ * @returns Empty array
3388
+ */
3389
+ this.checkNSignaturesWithExecutor = async (args) => {
3390
+ await (0, import_actions9.readContract)(this.runner, {
3391
+ address: this.contractAddress,
3392
+ functionName: "checkNSignatures",
3393
+ abi: [
3394
+ {
3395
+ inputs: [
3396
+ { internalType: "address", name: "executor", type: "address" },
3397
+ { internalType: "bytes32", name: "dataHash", type: "bytes32" },
3398
+ { internalType: "bytes", name: "signatures", type: "bytes" },
3399
+ { internalType: "uint256", name: "requiredSignatures", type: "uint256" }
3400
+ ],
3401
+ name: "checkNSignatures",
3402
+ outputs: [],
3403
+ stateMutability: "view",
3404
+ type: "function"
3405
+ }
3406
+ ],
3407
+ args
3408
+ });
3409
+ return [];
3410
+ };
3411
+ /**
3412
+ * Checks whether the signature provided is valid for the provided data and hash. Will revert otherwise.
3413
+ * @param args - Array[dataHash, data, signatures]
3414
+ * @returns Empty array
3415
+ */
3416
+ this.checkSignatures = async (args) => {
3417
+ await this.read("checkSignatures", args);
3418
+ return [];
3419
+ };
3420
+ /**
3421
+ * New in v1.5.0: overload of checkSignatures that accepts an explicit executor address.
3422
+ * Allows modules to pass msg.sender explicitly rather than relying on the contract's own context.
3423
+ * Will revert otherwise.
3424
+ * @param args - Array[executor, dataHash, signatures]
3425
+ * @returns Empty array
3426
+ */
3427
+ this.checkSignaturesWithExecutor = async (args) => {
3428
+ await (0, import_actions9.readContract)(this.runner, {
3429
+ address: this.contractAddress,
3430
+ functionName: "checkSignatures",
3431
+ abi: [
3432
+ {
3433
+ inputs: [
3434
+ { internalType: "address", name: "executor", type: "address" },
3435
+ { internalType: "bytes32", name: "dataHash", type: "bytes32" },
3436
+ { internalType: "bytes", name: "signatures", type: "bytes" }
3437
+ ],
3438
+ name: "checkSignatures",
3439
+ outputs: [],
3440
+ stateMutability: "view",
3441
+ type: "function"
3442
+ }
3443
+ ],
3444
+ args
3445
+ });
3446
+ return [];
3447
+ };
3448
+ /**
3449
+ * @returns Array[domainSeparator]
3450
+ */
3451
+ this.domainSeparator = async () => {
3452
+ return [await this.read("domainSeparator")];
3453
+ };
3454
+ /**
3455
+ * Returns array of modules.
3456
+ * @param args - Array[start, pageSize]
3457
+ * @returns Array[Array[modules], next]
3458
+ */
3459
+ this.getModulesPaginated = async (args) => {
3460
+ const [array, next] = await this.read("getModulesPaginated", args);
3461
+ return [array, next];
3462
+ };
3463
+ /**
3464
+ * Returns the list of Safe owner accounts.
3465
+ * @returns Array[Array[owners]]
3466
+ */
3467
+ this.getOwners = async () => {
3468
+ return [await this.read("getOwners")];
3469
+ };
3470
+ /**
3471
+ * Reads `length` bytes of storage in the current contract
3472
+ * @param args - Array[offset, length]
3473
+ * @returns Array[storage]
3474
+ */
3475
+ this.getStorageAt = async (args) => {
3476
+ return [await this.read("getStorageAt", args)];
3477
+ };
3478
+ /**
3479
+ * Returns the Safe threshold.
3480
+ * @returns Array[threshold]
3481
+ */
3482
+ this.getThreshold = async () => {
3483
+ return [await this.read("getThreshold")];
3484
+ };
3485
+ /**
3486
+ * Returns hash to be signed by owners.
3487
+ * @param args - Array[to, value, data, operation, safeTxGas, baseGas, gasPrice, gasToken, refundReceiver, _nonce]
3488
+ * @returns Array[transactionHash]
3489
+ */
3490
+ this.getTransactionHash = async (args) => {
3491
+ return [await this.read("getTransactionHash", args)];
3492
+ };
3493
+ /**
3494
+ * Checks if a specific Safe module is enabled for the current Safe.
3495
+ * @param args - Array[moduleAddress]
3496
+ * @returns Array[isEnabled]
3497
+ */
3498
+ this.isModuleEnabled = async (args) => {
3499
+ return [await this.read("isModuleEnabled", args)];
3500
+ };
3501
+ /**
3502
+ * Checks if a specific address is an owner of the current Safe.
3503
+ * @param args - Array[address]
3504
+ * @returns Array[isOwner]
3505
+ */
3506
+ this.isOwner = async (args) => {
3507
+ return [await this.read("isOwner", args)];
3508
+ };
3509
+ /**
3510
+ * Returns the Safe nonce.
3511
+ * @returns Array[nonce]
3512
+ */
3513
+ this.nonce = async () => {
3514
+ return [await this.read("nonce")];
3515
+ };
3516
+ /**
3517
+ * @param args - Array[messageHash]
3518
+ * @returns Array[signedMessages]
3519
+ */
3520
+ this.signedMessages = async (args) => {
3521
+ return [await this.read("signedMessages", args)];
3522
+ };
3523
+ }
3524
+ /**
3525
+ * Checks whether a given Safe transaction can be executed successfully with no errors.
3526
+ * @param safeTransaction - The Safe transaction to check.
3527
+ * @param options - Optional transaction options.
3528
+ * @returns True, if the given transactions is valid.
3529
+ */
3530
+ async isValidTransaction(safeTransaction, options = {}) {
3531
+ try {
3532
+ const gasLimit = options?.gasLimit || await this.estimateGas(
3533
+ "execTransaction",
3534
+ [
3535
+ safeTransaction.data.to,
3536
+ BigInt(safeTransaction.data.value),
3537
+ asHex(safeTransaction.data.data),
3538
+ safeTransaction.data.operation,
3539
+ BigInt(safeTransaction.data.safeTxGas),
3540
+ BigInt(safeTransaction.data.baseGas),
3541
+ BigInt(safeTransaction.data.gasPrice),
3542
+ safeTransaction.data.gasToken,
3543
+ safeTransaction.data.refundReceiver,
3544
+ asHex(safeTransaction.encodedSignatures())
3545
+ ],
3546
+ options
3547
+ );
3548
+ const converted = this.convertOptions({ ...options, gasLimit });
3549
+ const txResult = await (0, import_actions9.simulateContract)(this.runner, {
3550
+ address: this.contractAddress,
3551
+ functionName: "execTransaction",
3552
+ abi: this.contractAbi,
3553
+ args: [
3554
+ safeTransaction.data.to,
3555
+ BigInt(safeTransaction.data.value),
3556
+ asHex(safeTransaction.data.data),
3557
+ safeTransaction.data.operation,
3558
+ BigInt(safeTransaction.data.safeTxGas),
3559
+ BigInt(safeTransaction.data.baseGas),
3560
+ BigInt(safeTransaction.data.gasPrice),
3561
+ safeTransaction.data.gasToken,
3562
+ safeTransaction.data.refundReceiver,
3563
+ asHex(safeTransaction.encodedSignatures())
3564
+ ],
3565
+ ...converted
3566
+ });
3567
+ return txResult.result;
3568
+ } catch (error) {
3569
+ return false;
3570
+ }
3571
+ }
3572
+ /**
3573
+ * Executes a transaction.
3574
+ * @param safeTransaction - The Safe transaction to execute.
3575
+ * @param options - Transaction options.
3576
+ * @returns Transaction result.
3577
+ */
3578
+ async execTransaction(safeTransaction, options) {
3579
+ const gasLimit = options?.gasLimit || await this.estimateGas(
3580
+ "execTransaction",
3581
+ [
3582
+ safeTransaction.data.to,
3583
+ BigInt(safeTransaction.data.value),
3584
+ asHex(safeTransaction.data.data),
3585
+ safeTransaction.data.operation,
3586
+ BigInt(safeTransaction.data.safeTxGas),
3587
+ BigInt(safeTransaction.data.baseGas),
3588
+ BigInt(safeTransaction.data.gasPrice),
3589
+ safeTransaction.data.gasToken,
3590
+ safeTransaction.data.refundReceiver,
3591
+ asHex(safeTransaction.encodedSignatures())
3592
+ ],
3593
+ options
3594
+ );
3595
+ const args = [
3596
+ safeTransaction.data.to,
3597
+ BigInt(safeTransaction.data.value),
3598
+ asHex(safeTransaction.data.data),
3599
+ safeTransaction.data.operation,
3600
+ BigInt(safeTransaction.data.safeTxGas),
3601
+ BigInt(safeTransaction.data.baseGas),
3602
+ BigInt(safeTransaction.data.gasPrice),
3603
+ safeTransaction.data.gasToken,
3604
+ safeTransaction.data.refundReceiver,
3605
+ asHex(safeTransaction.encodedSignatures())
3606
+ ];
3607
+ return toTxResult(
3608
+ this.runner,
3609
+ await this.write("execTransaction", args, { ...options, gasLimit }),
3610
+ options
3611
+ );
3612
+ }
3613
+ /**
3614
+ * Returns array of first 10 modules.
3615
+ * @returns Array[modules]
3616
+ */
3617
+ async getModules() {
3618
+ const [modules] = await this.getModulesPaginated([SENTINEL_ADDRESS, BigInt(10)]);
3619
+ return [modules.map((module2) => module2)];
3620
+ }
3621
+ /**
3622
+ * Marks a hash as approved. This can be used to validate a hash that is used by a signature.
3623
+ * @param hash - The hash that should be marked as approved for signatures that are verified by this contract.
3624
+ * @param options - Optional transaction options.
3625
+ * @returns Transaction result.
3626
+ */
3627
+ async approveHash(hash, options) {
3628
+ const gasLimit = options?.gasLimit || await this.estimateGas("approveHash", [asHash(hash)], options);
3629
+ return toTxResult(
3630
+ this.runner,
3631
+ await this.write("approveHash", [asHash(hash)], { ...options, gasLimit }),
3632
+ options
3633
+ );
3634
+ }
3635
+ /**
3636
+ * Returns the chain id of the Safe contract. (Custom method - not defined in the Safe Contract)
3637
+ * @returns Array[chainId]
3638
+ */
3639
+ async getChainId() {
3640
+ return [await Promise.resolve(this.chainId)];
3641
+ }
3642
+ /**
3643
+ * returns the nonce of the Safe contract.
3644
+ *
3645
+ * @returns {Promise<bigint>} A promise that resolves to the nonce of the Safe contract.
3646
+ */
3647
+ async getNonce() {
3648
+ const [nonce] = await this.nonce();
3649
+ return nonce;
3650
+ }
3651
+ };
3652
+ var SafeContract_v1_5_0_default = SafeContract_v1_5_0;
3653
+
3286
3654
  // src/contracts/SafeProxyFactory/SafeProxyFactoryBaseContract.ts
3287
3655
  var SafeProxyFactoryBaseContract = class extends BaseContract_default {
3288
3656
  /**
@@ -3315,7 +3683,7 @@ var SafeProxyFactoryBaseContract = class extends BaseContract_default {
3315
3683
  var SafeProxyFactoryBaseContract_default = SafeProxyFactoryBaseContract;
3316
3684
 
3317
3685
  // src/contracts/SafeProxyFactory/v1.0.0/SafeProxyFactoryContract_v1_0_0.ts
3318
- var import_types_kit16 = require("@safe-global/types-kit");
3686
+ var import_types_kit21 = require("@safe-global/types-kit");
3319
3687
  var SafeProxyFactoryContract_v1_0_0 = class extends SafeProxyFactoryBaseContract_default {
3320
3688
  /**
3321
3689
  * Constructs an instance of SafeProxyFactoryContract_v1_0_0
@@ -3328,7 +3696,7 @@ var SafeProxyFactoryContract_v1_0_0 = class extends SafeProxyFactoryBaseContract
3328
3696
  */
3329
3697
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3330
3698
  const safeVersion = "1.0.0";
3331
- const defaultAbi = import_types_kit16.safeProxyFactory_1_0_0_ContractArtifacts.abi;
3699
+ const defaultAbi = import_types_kit21.safeProxyFactory_1_0_0_ContractArtifacts.abi;
3332
3700
  super(
3333
3701
  chainId,
3334
3702
  safeProvider,
@@ -3373,7 +3741,7 @@ var SafeProxyFactoryContract_v1_0_0 = class extends SafeProxyFactoryBaseContract
3373
3741
  var SafeProxyFactoryContract_v1_0_0_default = SafeProxyFactoryContract_v1_0_0;
3374
3742
 
3375
3743
  // src/contracts/SafeProxyFactory/v1.1.1/SafeProxyFactoryContract_v1_1_1.ts
3376
- var import_types_kit17 = require("@safe-global/types-kit");
3744
+ var import_types_kit22 = require("@safe-global/types-kit");
3377
3745
  var SafeProxyFactoryContract_v1_1_1 = class extends SafeProxyFactoryBaseContract_default {
3378
3746
  /**
3379
3747
  * Constructs an instance of SafeProxyFactoryContract_v1_1_1
@@ -3386,7 +3754,7 @@ var SafeProxyFactoryContract_v1_1_1 = class extends SafeProxyFactoryBaseContract
3386
3754
  */
3387
3755
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3388
3756
  const safeVersion = "1.1.1";
3389
- const defaultAbi = import_types_kit17.safeProxyFactory_1_1_1_ContractArtifacts.abi;
3757
+ const defaultAbi = import_types_kit22.safeProxyFactory_1_1_1_ContractArtifacts.abi;
3390
3758
  super(
3391
3759
  chainId,
3392
3760
  safeProvider,
@@ -3447,7 +3815,7 @@ var SafeProxyFactoryContract_v1_1_1 = class extends SafeProxyFactoryBaseContract
3447
3815
  var SafeProxyFactoryContract_v1_1_1_default = SafeProxyFactoryContract_v1_1_1;
3448
3816
 
3449
3817
  // src/contracts/SafeProxyFactory/v1.3.0/SafeProxyFactoryContract_v1_3_0.ts
3450
- var import_types_kit18 = require("@safe-global/types-kit");
3818
+ var import_types_kit23 = require("@safe-global/types-kit");
3451
3819
  var SafeProxyFactoryContract_v1_3_0 = class extends SafeProxyFactoryBaseContract_default {
3452
3820
  /**
3453
3821
  * Constructs an instance of SafeProxyFactoryContract_v1_3_0
@@ -3460,7 +3828,7 @@ var SafeProxyFactoryContract_v1_3_0 = class extends SafeProxyFactoryBaseContract
3460
3828
  */
3461
3829
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3462
3830
  const safeVersion = "1.3.0";
3463
- const defaultAbi = import_types_kit18.safeProxyFactory_1_3_0_ContractArtifacts.abi;
3831
+ const defaultAbi = import_types_kit23.safeProxyFactory_1_3_0_ContractArtifacts.abi;
3464
3832
  super(
3465
3833
  chainId,
3466
3834
  safeProvider,
@@ -3521,7 +3889,7 @@ var SafeProxyFactoryContract_v1_3_0 = class extends SafeProxyFactoryBaseContract
3521
3889
  var SafeProxyFactoryContract_v1_3_0_default = SafeProxyFactoryContract_v1_3_0;
3522
3890
 
3523
3891
  // src/contracts/SafeProxyFactory/v1.4.1/SafeProxyFactoryContract_v1_4_1.ts
3524
- var import_types_kit19 = require("@safe-global/types-kit");
3892
+ var import_types_kit24 = require("@safe-global/types-kit");
3525
3893
  var SafeProxyFactoryContract_v1_4_1 = class extends SafeProxyFactoryBaseContract_default {
3526
3894
  /**
3527
3895
  * Constructs an instance of SafeProxyFactoryContract_v1_4_1
@@ -3534,7 +3902,7 @@ var SafeProxyFactoryContract_v1_4_1 = class extends SafeProxyFactoryBaseContract
3534
3902
  */
3535
3903
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3536
3904
  const safeVersion = "1.4.1";
3537
- const defaultAbi = import_types_kit19.safeProxyFactory_1_4_1_ContractArtifacts.abi;
3905
+ const defaultAbi = import_types_kit24.safeProxyFactory_1_4_1_ContractArtifacts.abi;
3538
3906
  super(
3539
3907
  chainId,
3540
3908
  safeProvider,
@@ -3587,11 +3955,88 @@ var SafeProxyFactoryContract_v1_4_1 = class extends SafeProxyFactoryBaseContract
3587
3955
  };
3588
3956
  var SafeProxyFactoryContract_v1_4_1_default = SafeProxyFactoryContract_v1_4_1;
3589
3957
 
3958
+ // src/contracts/SafeProxyFactory/v1.5.0/SafeProxyFactoryContract_v1_5_0.ts
3959
+ var import_types_kit25 = require("@safe-global/types-kit");
3960
+ var SafeProxyFactoryContract_v1_5_0 = class extends SafeProxyFactoryBaseContract_default {
3961
+ /**
3962
+ * Constructs an instance of SafeProxyFactoryContract_v1_5_0
3963
+ *
3964
+ * @param chainId - The chain ID where the contract resides.
3965
+ * @param safeProvider - An instance of SafeProvider.
3966
+ * @param customContractAddress - Optional custom address for the contract. If not provided, the address is derived from the Safe deployments based on the chainId and safeVersion.
3967
+ * @param customContractAbi - Optional custom ABI for the contract. If not provided, the default ABI for version 1.5.0 is used.
3968
+ * @param deploymentType - Optional deployment type for the contract. If not provided, the first deployment retrieved from the safe-deployments array will be used.
3969
+ */
3970
+ constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3971
+ const safeVersion = "1.5.0";
3972
+ const defaultAbi = import_types_kit25.safeProxyFactory_1_5_0_ContractArtifacts.abi;
3973
+ super(
3974
+ chainId,
3975
+ safeProvider,
3976
+ defaultAbi,
3977
+ safeVersion,
3978
+ customContractAddress,
3979
+ customContractAbi,
3980
+ deploymentType
3981
+ );
3982
+ /**
3983
+ * Returns the ID of the chain the contract is currently deployed on.
3984
+ * @returns Array[chainId]
3985
+ */
3986
+ this.getChainId = async () => {
3987
+ return [await this.read("getChainId")];
3988
+ };
3989
+ /**
3990
+ * Allows to retrieve the creation code used for the Proxy deployment. With this it is easily possible to calculate predicted address.
3991
+ * @returns Array[creationCode]
3992
+ */
3993
+ this.proxyCreationCode = async () => {
3994
+ return [await this.read("proxyCreationCode")];
3995
+ };
3996
+ /**
3997
+ * Deploys a new chain-specific proxy with singleton and salt. Optionally executes an initializer call to a new proxy.
3998
+ * @param args - Array[singleton, initializer, saltNonce]
3999
+ * @returns Array[proxy]
4000
+ */
4001
+ this.createChainSpecificProxyWithNonce = async (args) => {
4002
+ return [await this.write("createChainSpecificProxyWithNonce", args)];
4003
+ };
4004
+ /**
4005
+ * Deploys a new chain-specific proxy with singleton and salt. Optionally executes an initializer call to a new proxy.
4006
+ * @param args - Array[singleton, initializer, saltNonce]
4007
+ * @returns Array[proxy]
4008
+ */
4009
+ this.createChainSpecificProxyWithNonceL2 = async (args) => {
4010
+ return [await this.write("createChainSpecificProxyWithNonceL2", args)];
4011
+ };
4012
+ /**
4013
+ * Deploys a new proxy with singleton and salt. Optionally executes an initializer call to a new proxy.
4014
+ * @param args - Array[singleton, initializer, saltNonce]
4015
+ * @returns Array[proxy]
4016
+ */
4017
+ this.createProxyWithNonce = async (args) => {
4018
+ return [await this.write("createProxyWithNonce", args)];
4019
+ };
4020
+ /**
4021
+ * Deploys a new proxy with singleton and salt. Optionally executes an initializer call to a new proxy.
4022
+ * @param args - Array[singleton, initializer, saltNonce]
4023
+ * @returns Array[proxy]
4024
+ */
4025
+ this.createProxyWithNonceL2 = async (args) => {
4026
+ return [await this.write("createProxyWithNonceL2", args)];
4027
+ };
4028
+ }
4029
+ };
4030
+ var SafeProxyFactoryContract_v1_5_0_default = SafeProxyFactoryContract_v1_5_0;
4031
+
3590
4032
  // src/contracts/SimulateTxAccessor/v1.3.0/SimulateTxAccessorContract_v1_3_0.ts
3591
- var import_types_kit20 = require("@safe-global/types-kit");
4033
+ var import_types_kit26 = require("@safe-global/types-kit");
3592
4034
 
3593
4035
  // src/contracts/SimulateTxAccessor/v1.4.1/SimulateTxAccessorContract_v1_4_1.ts
3594
- var import_types_kit21 = require("@safe-global/types-kit");
4036
+ var import_types_kit27 = require("@safe-global/types-kit");
4037
+
4038
+ // src/contracts/SimulateTxAccessor/v1.5.0/SimulateTxAccessorContract_v1_5_0.ts
4039
+ var import_types_kit28 = require("@safe-global/types-kit");
3595
4040
 
3596
4041
  // src/contracts/CompatibilityFallbackHandler/CompatibilityFallbackHandlerBaseContract.ts
3597
4042
  var CompatibilityFallbackHandlerBaseContract = class extends BaseContract_default {
@@ -3625,7 +4070,7 @@ var CompatibilityFallbackHandlerBaseContract = class extends BaseContract_defaul
3625
4070
  var CompatibilityFallbackHandlerBaseContract_default = CompatibilityFallbackHandlerBaseContract;
3626
4071
 
3627
4072
  // src/contracts/CompatibilityFallbackHandler/v1.3.0/CompatibilityFallbackHandlerContract_v1_3_0.ts
3628
- var import_types_kit22 = require("@safe-global/types-kit");
4073
+ var import_types_kit29 = require("@safe-global/types-kit");
3629
4074
  var CompatibilityFallbackHandlerContract_v1_3_0 = class extends CompatibilityFallbackHandlerBaseContract_default {
3630
4075
  /**
3631
4076
  * Constructs an instance of CompatibilityFallbackHandlerContract_v1_3_0
@@ -3638,7 +4083,7 @@ var CompatibilityFallbackHandlerContract_v1_3_0 = class extends CompatibilityFal
3638
4083
  */
3639
4084
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3640
4085
  const safeVersion = "1.3.0";
3641
- const defaultAbi = import_types_kit22.compatibilityFallbackHandler_1_3_0_ContractArtifacts.abi;
4086
+ const defaultAbi = import_types_kit29.compatibilityFallbackHandler_1_3_0_ContractArtifacts.abi;
3642
4087
  super(
3643
4088
  chainId,
3644
4089
  safeProvider,
@@ -3653,7 +4098,7 @@ var CompatibilityFallbackHandlerContract_v1_3_0 = class extends CompatibilityFal
3653
4098
  var CompatibilityFallbackHandlerContract_v1_3_0_default = CompatibilityFallbackHandlerContract_v1_3_0;
3654
4099
 
3655
4100
  // src/contracts/CompatibilityFallbackHandler/v1.4.1/CompatibilityFallbackHandlerContract_v1_4_1.ts
3656
- var import_types_kit23 = require("@safe-global/types-kit");
4101
+ var import_types_kit30 = require("@safe-global/types-kit");
3657
4102
  var CompatibilityFallbackHandlerContract_v1_4_1 = class extends CompatibilityFallbackHandlerBaseContract_default {
3658
4103
  /**
3659
4104
  * Constructs an instance of CompatibilityFallbackHandlerContract_v1_4_1
@@ -3666,7 +4111,7 @@ var CompatibilityFallbackHandlerContract_v1_4_1 = class extends CompatibilityFal
3666
4111
  */
3667
4112
  constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
3668
4113
  const safeVersion = "1.4.1";
3669
- const defaultAbi = import_types_kit23.compatibilityFallbackHandler_1_4_1_ContractArtifacts.abi;
4114
+ const defaultAbi = import_types_kit30.compatibilityFallbackHandler_1_4_1_ContractArtifacts.abi;
3670
4115
  super(
3671
4116
  chainId,
3672
4117
  safeProvider,
@@ -3680,6 +4125,46 @@ var CompatibilityFallbackHandlerContract_v1_4_1 = class extends CompatibilityFal
3680
4125
  };
3681
4126
  var CompatibilityFallbackHandlerContract_v1_4_1_default = CompatibilityFallbackHandlerContract_v1_4_1;
3682
4127
 
4128
+ // src/contracts/CompatibilityFallbackHandler/v1.5.0/CompatibilityFallbackHandlerContract_v1_5_0.ts
4129
+ var import_types_kit31 = require("@safe-global/types-kit");
4130
+ var CompatibilityFallbackHandlerContract_v1_5_0 = class extends CompatibilityFallbackHandlerBaseContract_default {
4131
+ /**
4132
+ * Constructs an instance of CompatibilityFallbackHandlerContract_v1_5_0
4133
+ *
4134
+ * @param chainId - The chain ID where the contract resides.
4135
+ * @param safeProvider - An instance of SafeProvider.
4136
+ * @param customContractAddress - Optional custom address for the contract. If not provided, the address is derived from the CompatibilityFallbackHandler deployments based on the chainId and safeVersion.
4137
+ * @param customContractAbi - Optional custom ABI for the contract. If not provided, the default ABI for version 1.5.0 is used.
4138
+ * @param deploymentType - Optional deployment type for the contract. If not provided, the first deployment retrieved from the safe-deployments array will be used.
4139
+ */
4140
+ constructor(chainId, safeProvider, customContractAddress, customContractAbi, deploymentType) {
4141
+ const safeVersion = "1.5.0";
4142
+ const defaultAbi = import_types_kit31.compatibilityFallbackHandler_1_5_0_ContractArtifacts.abi;
4143
+ super(
4144
+ chainId,
4145
+ safeProvider,
4146
+ defaultAbi,
4147
+ safeVersion,
4148
+ customContractAddress,
4149
+ customContractAbi,
4150
+ deploymentType
4151
+ );
4152
+ /**
4153
+ * New in v1.5.0: encodeTransactionData was moved from the Safe contract to CompatibilityFallbackHandler
4154
+ * to preserve backwards compatibility for existing integrations.
4155
+ * @param args - Array[to, value, data, operation, safeTxGas, baseGas, gasPrice, gasToken, refundReceiver, nonce]
4156
+ * @returns Array[encodedData]
4157
+ */
4158
+ this.encodeTransactionData = async (args) => {
4159
+ return [await this.read("encodeTransactionData", args)];
4160
+ };
4161
+ }
4162
+ };
4163
+ var CompatibilityFallbackHandlerContract_v1_5_0_default = CompatibilityFallbackHandlerContract_v1_5_0;
4164
+
4165
+ // src/contracts/ExtensibleFallbackHandler/v1.5.0/ExtensibleFallbackHandlerContract_v1_5_0.ts
4166
+ var import_types_kit32 = require("@safe-global/types-kit");
4167
+
3683
4168
  // src/contracts/SafeWebAuthnSignerFactory/SafeWebAuthnSignerFactoryBaseContract.ts
3684
4169
  var SafeWebAuthnSignerFactoryBaseContract = class extends BaseContract_default {
3685
4170
  /**
@@ -3712,7 +4197,7 @@ var SafeWebAuthnSignerFactoryBaseContract = class extends BaseContract_default {
3712
4197
  var SafeWebAuthnSignerFactoryBaseContract_default = SafeWebAuthnSignerFactoryBaseContract;
3713
4198
 
3714
4199
  // src/contracts/SafeWebAuthnSignerFactory/v0.2.1/SafeWebAuthnSignerFactoryContract_v0_2_1.ts
3715
- var import_types_kit24 = require("@safe-global/types-kit");
4200
+ var import_types_kit33 = require("@safe-global/types-kit");
3716
4201
  var SafeWebAuthnSignerFactoryContract_v0_2_1 = class extends SafeWebAuthnSignerFactoryBaseContract_default {
3717
4202
  /**
3718
4203
  * Constructs an instance of SafeWebAuthnSignerFactoryContract_v0_2_1
@@ -3725,7 +4210,7 @@ var SafeWebAuthnSignerFactoryContract_v0_2_1 = class extends SafeWebAuthnSignerF
3725
4210
  * @param deploymentType - Optional deployment type for the contract. If not provided, the first deployment retrieved from the safe-deployments array will be used.
3726
4211
  */
3727
4212
  constructor(chainId, safeProvider, safeVersion, customContractAddress, customContractAbi, deploymentType) {
3728
- const defaultAbi = import_types_kit24.SafeWebAuthnSignerFactory_0_2_1_ContractArtifacts.abi;
4213
+ const defaultAbi = import_types_kit33.SafeWebAuthnSignerFactory_0_2_1_ContractArtifacts.abi;
3729
4214
  super(
3730
4215
  chainId,
3731
4216
  safeProvider,
@@ -3790,7 +4275,7 @@ var SafeWebAuthnSharedSignerBaseContract = class extends BaseContract_default {
3790
4275
  var SafeWebAuthnSharedSignerBaseContract_default = SafeWebAuthnSharedSignerBaseContract;
3791
4276
 
3792
4277
  // src/contracts/SafeWebAuthnSharedSigner/v0.2.1/SafeWebAuthnSharedSignerContract_v0_2_1.ts
3793
- var import_types_kit25 = require("@safe-global/types-kit");
4278
+ var import_types_kit34 = require("@safe-global/types-kit");
3794
4279
  var SafeWebAuthnSharedSignerContract_v0_2_1 = class extends SafeWebAuthnSharedSignerBaseContract_default {
3795
4280
  /**
3796
4281
  * Constructs an instance of SafeWebAuthnSharedSignerContract_v0_2_1
@@ -3803,7 +4288,7 @@ var SafeWebAuthnSharedSignerContract_v0_2_1 = class extends SafeWebAuthnSharedSi
3803
4288
  * @param deploymentType - Optional deployment type for the contract. If not provided, the first deployment retrieved from the safe-deployments array will be used.
3804
4289
  */
3805
4290
  constructor(chainId, safeProvider, safeVersion, customContractAddress, customContractAbi, deploymentType) {
3806
- const defaultAbi = import_types_kit25.SafeWebAuthnSharedSigner_0_2_1_ContractArtifacts.abi;
4291
+ const defaultAbi = import_types_kit34.SafeWebAuthnSharedSigner_0_2_1_ContractArtifacts.abi;
3807
4292
  super(
3808
4293
  chainId,
3809
4294
  safeProvider,
@@ -3848,6 +4333,16 @@ async function getSafeContractInstance(safeVersion, safeProvider, contractAddres
3848
4333
  const chainId = await safeProvider.getChainId();
3849
4334
  let safeContractInstance;
3850
4335
  switch (safeVersion) {
4336
+ case "1.5.0":
4337
+ safeContractInstance = new SafeContract_v1_5_0_default(
4338
+ chainId,
4339
+ safeProvider,
4340
+ isL1SafeSingleton,
4341
+ contractAddress,
4342
+ customContractAbi,
4343
+ deploymentType
4344
+ );
4345
+ break;
3851
4346
  case "1.4.1":
3852
4347
  safeContractInstance = new SafeContract_v1_4_1_default(
3853
4348
  chainId,
@@ -3908,6 +4403,15 @@ async function getCompatibilityFallbackHandlerContractInstance(safeVersion, safe
3908
4403
  const chainId = await safeProvider.getChainId();
3909
4404
  let compatibilityFallbackHandlerInstance;
3910
4405
  switch (safeVersion) {
4406
+ case "1.5.0":
4407
+ compatibilityFallbackHandlerInstance = new CompatibilityFallbackHandlerContract_v1_5_0_default(
4408
+ chainId,
4409
+ safeProvider,
4410
+ contractAddress,
4411
+ customContractAbi,
4412
+ deploymentType
4413
+ );
4414
+ break;
3911
4415
  case "1.4.1":
3912
4416
  compatibilityFallbackHandlerInstance = new CompatibilityFallbackHandlerContract_v1_4_1_default(
3913
4417
  chainId,
@@ -3938,6 +4442,15 @@ async function getSafeProxyFactoryContractInstance(safeVersion, safeProvider, co
3938
4442
  const chainId = await safeProvider.getChainId();
3939
4443
  let safeProxyFactoryContractInstance;
3940
4444
  switch (safeVersion) {
4445
+ case "1.5.0":
4446
+ safeProxyFactoryContractInstance = new SafeProxyFactoryContract_v1_5_0_default(
4447
+ chainId,
4448
+ safeProvider,
4449
+ contractAddress,
4450
+ customContractAbi,
4451
+ deploymentType
4452
+ );
4453
+ break;
3941
4454
  case "1.4.1":
3942
4455
  safeProxyFactoryContractInstance = new SafeProxyFactoryContract_v1_4_1_default(
3943
4456
  chainId,
@@ -3984,6 +4497,7 @@ async function getSafeProxyFactoryContractInstance(safeVersion, safeProvider, co
3984
4497
  async function getSafeWebAuthnSignerFactoryContractInstance(safeVersion, safeProvider, contractAddress, customContractAbi, deploymentType) {
3985
4498
  const chainId = await safeProvider.getChainId();
3986
4499
  switch (safeVersion) {
4500
+ case "1.5.0":
3987
4501
  case "1.4.1":
3988
4502
  case "1.3.0":
3989
4503
  const safeWebAuthnSignerFactoryContractInstance = new SafeWebAuthnSignerFactoryContract_v0_2_1_default(
@@ -4003,6 +4517,7 @@ async function getSafeWebAuthnSignerFactoryContractInstance(safeVersion, safePro
4003
4517
  async function getSafeWebAuthnSharedSignerContractInstance(safeVersion, safeProvider, contractAddress, customContractAbi, deploymentType) {
4004
4518
  const chainId = await safeProvider.getChainId();
4005
4519
  switch (safeVersion) {
4520
+ case "1.5.0":
4006
4521
  case "1.4.1":
4007
4522
  case "1.3.0":
4008
4523
  const safeWebAuthnSharedSignerContractInstance = new SafeWebAuthnSharedSignerContract_v0_2_1_default(
@@ -4134,10 +4649,10 @@ var ECRECOVER_GAS_COST = 6e3;
4134
4649
  var GAS_COST_PER_SIGNATURE = 1 * CALL_DATA_BYTE_GAS_COST + 2 * 32 * CALL_DATA_BYTE_GAS_COST + ECRECOVER_GAS_COST;
4135
4650
 
4136
4651
  // src/utils/transactions/utils.ts
4137
- var import_types_kit27 = require("@safe-global/types-kit");
4652
+ var import_types_kit36 = require("@safe-global/types-kit");
4138
4653
  var import_satisfies6 = __toESM(require("semver/functions/satisfies.js"));
4139
4654
  var import_viem13 = require("viem");
4140
- var import_actions9 = require("viem/actions");
4655
+ var import_actions10 = require("viem/actions");
4141
4656
  function toEstimateGasParameters(tx) {
4142
4657
  const params = isLegacyTransaction(tx) ? createLegacyTxOptions(tx) : createTxOptions(tx);
4143
4658
  if (tx.value) {
@@ -4255,9 +4770,5 @@ async function createMockPasskey(name, webAuthnCredentials) {
4255
4770
  const exportedPublicKey = await crypto.subtle.exportKey("spki", key);
4256
4771
  const rawId = Buffer.from(passkeyCredential.rawId).toString("hex");
4257
4772
  const coordinates = await decodePublicKeyForWeb(exportedPublicKey);
4258
- const passkey = {
4259
- rawId,
4260
- coordinates
4261
- };
4262
- return passkey;
4773
+ return { rawId, coordinates };
4263
4774
  }