@safe-global/safe-deployments 1.37.0 → 1.37.1

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 (106) hide show
  1. package/README.md +56 -28
  2. package/dist/accessors.js +1 -3
  3. package/dist/assets/v1.0.0/gnosis_safe.json +477 -103
  4. package/dist/assets/v1.0.0/proxy_factory.json +9 -6
  5. package/dist/assets/v1.1.1/default_callback_handler.json +12 -9
  6. package/dist/assets/v1.1.1/gnosis_safe.json +12 -9
  7. package/dist/assets/v1.1.1/multi_send.json +12 -9
  8. package/dist/assets/v1.1.1/proxy_factory.json +12 -9
  9. package/dist/assets/v1.2.0/gnosis_safe.json +12 -9
  10. package/dist/assets/v1.3.0/compatibility_fallback_handler.json +247 -235
  11. package/dist/assets/v1.3.0/create_call.json +247 -235
  12. package/dist/assets/v1.3.0/gnosis_safe.json +247 -235
  13. package/dist/assets/v1.3.0/gnosis_safe_l2.json +247 -235
  14. package/dist/assets/v1.3.0/multi_send.json +247 -235
  15. package/dist/assets/v1.3.0/multi_send_call_only.json +247 -235
  16. package/dist/assets/v1.3.0/proxy_factory.json +247 -235
  17. package/dist/assets/v1.3.0/sign_message_lib.json +248 -236
  18. package/dist/assets/v1.3.0/simulate_tx_accessor.json +247 -235
  19. package/dist/assets/v1.4.1/compatibility_fallback_handler.json +114 -108
  20. package/dist/assets/v1.4.1/create_call.json +114 -108
  21. package/dist/assets/v1.4.1/multi_send.json +114 -108
  22. package/dist/assets/v1.4.1/multi_send_call_only.json +114 -108
  23. package/dist/assets/v1.4.1/safe.json +114 -108
  24. package/dist/assets/v1.4.1/safe_l2.json +114 -108
  25. package/dist/assets/v1.4.1/safe_proxy_factory.json +115 -109
  26. package/dist/assets/v1.4.1/sign_message_lib.json +115 -109
  27. package/dist/assets/v1.4.1/simulate_tx_accessor.json +114 -108
  28. package/dist/factories.js +4 -1
  29. package/dist/handler.js +6 -5
  30. package/dist/libs.js +4 -12
  31. package/dist/safes.d.ts +3 -3
  32. package/dist/safes.js +6 -4
  33. package/dist/types.d.ts +28 -2
  34. package/dist/types.js +11 -0
  35. package/dist/utils.d.ts +9 -2
  36. package/dist/utils.js +34 -5
  37. package/package.json +15 -17
  38. package/src/__tests__/assets/v1/v1.0.0/gnosis_safe.json +794 -0
  39. package/src/__tests__/assets/v1/v1.0.0/proxy_factory.json +109 -0
  40. package/src/__tests__/assets/v1/v1.1.1/create_and_add_modules.json +57 -0
  41. package/src/__tests__/assets/v1/v1.1.1/create_call.json +88 -0
  42. package/src/__tests__/assets/v1/v1.1.1/default_callback_handler.json +210 -0
  43. package/src/__tests__/assets/v1/v1.1.1/gnosis_safe.json +999 -0
  44. package/src/__tests__/assets/v1/v1.1.1/multi_send.json +43 -0
  45. package/src/__tests__/assets/v1/v1.1.1/proxy_factory.json +189 -0
  46. package/src/__tests__/assets/v1/v1.2.0/gnosis_safe.json +1020 -0
  47. package/src/__tests__/assets/v1/v1.3.0/compatibility_fallback_handler.json +580 -0
  48. package/src/__tests__/assets/v1/v1.3.0/create_call.json +323 -0
  49. package/src/__tests__/assets/v1/v1.3.0/gnosis_safe.json +1288 -0
  50. package/src/__tests__/assets/v1/v1.3.0/gnosis_safe_l2.json +1393 -0
  51. package/src/__tests__/assets/v1/v1.3.0/multi_send.json +275 -0
  52. package/src/__tests__/assets/v1/v1.3.0/multi_send_call_only.json +270 -0
  53. package/src/__tests__/assets/v1/v1.3.0/proxy_factory.json +418 -0
  54. package/src/__tests__/assets/v1/v1.3.0/sign_message_lib.json +302 -0
  55. package/src/__tests__/assets/v1/v1.3.0/simulate_tx_accessor.json +306 -0
  56. package/src/__tests__/assets/v1/v1.4.1/compatibility_fallback_handler.json +445 -0
  57. package/src/__tests__/assets/v1/v1.4.1/create_call.json +190 -0
  58. package/src/__tests__/assets/v1/v1.4.1/multi_send.json +142 -0
  59. package/src/__tests__/assets/v1/v1.4.1/multi_send_call_only.json +137 -0
  60. package/src/__tests__/assets/v1/v1.4.1/safe.json +1121 -0
  61. package/src/__tests__/assets/v1/v1.4.1/safe_l2.json +1226 -0
  62. package/src/__tests__/assets/v1/v1.4.1/safe_proxy_factory.json +261 -0
  63. package/src/__tests__/assets/v1/v1.4.1/sign_message_lib.json +169 -0
  64. package/src/__tests__/assets/v1/v1.4.1/simulate_tx_accessor.json +173 -0
  65. package/src/__tests__/assets.test.ts +101 -38
  66. package/src/__tests__/factories.test.ts +3 -3
  67. package/src/__tests__/handler.test.ts +5 -5
  68. package/src/__tests__/libs.test.ts +9 -9
  69. package/src/__tests__/safes.test.ts +9 -12
  70. package/src/__tests__/utils.test.ts +271 -0
  71. package/src/accessors.ts +5 -7
  72. package/src/assets/v1.0.0/gnosis_safe.json +477 -103
  73. package/src/assets/v1.0.0/proxy_factory.json +9 -6
  74. package/src/assets/v1.1.1/create_and_add_modules.json +17 -10
  75. package/src/assets/v1.1.1/create_call.json +12 -9
  76. package/src/assets/v1.1.1/default_callback_handler.json +12 -9
  77. package/src/assets/v1.1.1/gnosis_safe.json +12 -9
  78. package/src/assets/v1.1.1/multi_send.json +12 -9
  79. package/src/assets/v1.1.1/proxy_factory.json +12 -9
  80. package/src/assets/v1.2.0/gnosis_safe.json +12 -9
  81. package/src/assets/v1.3.0/compatibility_fallback_handler.json +247 -235
  82. package/src/assets/v1.3.0/create_call.json +247 -235
  83. package/src/assets/v1.3.0/gnosis_safe.json +247 -235
  84. package/src/assets/v1.3.0/gnosis_safe_l2.json +247 -235
  85. package/src/assets/v1.3.0/multi_send.json +247 -235
  86. package/src/assets/v1.3.0/multi_send_call_only.json +247 -235
  87. package/src/assets/v1.3.0/proxy_factory.json +247 -235
  88. package/src/assets/v1.3.0/sign_message_lib.json +248 -236
  89. package/src/assets/v1.3.0/simulate_tx_accessor.json +247 -235
  90. package/src/assets/v1.4.1/compatibility_fallback_handler.json +114 -108
  91. package/src/assets/v1.4.1/create_call.json +114 -108
  92. package/src/assets/v1.4.1/multi_send.json +114 -108
  93. package/src/assets/v1.4.1/multi_send_call_only.json +114 -108
  94. package/src/assets/v1.4.1/safe.json +114 -108
  95. package/src/assets/v1.4.1/safe_l2.json +114 -108
  96. package/src/assets/v1.4.1/safe_proxy_factory.json +115 -109
  97. package/src/assets/v1.4.1/sign_message_lib.json +115 -109
  98. package/src/assets/v1.4.1/simulate_tx_accessor.json +114 -108
  99. package/src/factories.ts +14 -11
  100. package/src/handler.ts +24 -21
  101. package/src/index.ts +6 -6
  102. package/src/libs.ts +23 -31
  103. package/src/safes.ts +21 -19
  104. package/src/types.ts +84 -10
  105. package/src/utils.ts +50 -12
  106. package/src/__tests__/utilts.test.ts +0 -385
@@ -1,116 +1,122 @@
1
1
  {
2
- "defaultAddress": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
3
2
  "released": true,
4
3
  "contractName": "SimulateTxAccessor",
5
4
  "version": "1.4.1",
5
+ "codeHash": "0x91f82615581fc73b190b83d72e883608b25e392f72322035df1b13d51766cf8d",
6
+ "addresses": {
7
+ "canonical": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199"
8
+ },
6
9
  "networkAddresses": {
7
- "1": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
8
- "5": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
9
- "10": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
10
- "25": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
11
- "31": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
12
- "40": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
13
- "41": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
14
- "56": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
15
- "71": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
16
- "97": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
17
- "100": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
18
- "137": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
19
- "155": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
20
- "169": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
21
- "250": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
22
- "252": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
23
- "255": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
24
- "336": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
25
- "338": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
26
- "369": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
27
- "690": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
28
- "919": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
29
- "1030": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
30
- "1101": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
31
- "1111": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
32
- "1112": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
33
- "1135": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
34
- "1284": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
35
- "1285": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
36
- "1287": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
37
- "1329": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
38
- "1442": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
39
- "1625": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
40
- "1729": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
41
- "2000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
42
- "2039": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
43
- "2358": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
44
- "2810": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
45
- "3636": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
46
- "3776": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
47
- "4002": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
48
- "4157": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
49
- "4202": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
50
- "4337": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
51
- "4653": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
52
- "5000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
53
- "5003": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
54
- "6001": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
55
- "7000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
56
- "7001": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
57
- "7171": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
58
- "7560": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
59
- "7771": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
60
- "8192": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
61
- "8194": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
62
- "8453": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
63
- "9001": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
64
- "10242": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
65
- "10243": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
66
- "11235": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
67
- "13337": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
68
- "17000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
69
- "17069": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
70
- "18233": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
71
- "23294": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
72
- "23295": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
73
- "32769": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
74
- "33101": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
75
- "34443": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
76
- "42161": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
77
- "42220": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
78
- "43114": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
79
- "54211": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
80
- "59140": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
81
- "59141": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
82
- "59144": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
83
- "80001": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
84
- "80085": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
85
- "81457": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
86
- "84531": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
87
- "84532": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
88
- "105105": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
89
- "111188": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
90
- "167000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
91
- "167009": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
92
- "205205": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
93
- "444444": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
94
- "534351": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
95
- "534352": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
96
- "555666": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
97
- "713715": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
98
- "6038361": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
99
- "7225878": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
100
- "7777777": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
101
- "11155111": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
102
- "11155420": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
103
- "94204209": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
104
- "111557560": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
105
- "123420111": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
106
- "168587773": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
107
- "666666666": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
108
- "999999999": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
109
- "1313161554": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
110
- "1313161555": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
111
- "1666600000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
112
- "1666700000": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199",
113
- "88153591557": "0x3d4BA2E0884aa488718476ca2FB8Efc291A46199"
10
+ "1": "canonical",
11
+ "5": "canonical",
12
+ "10": "canonical",
13
+ "25": "canonical",
14
+ "31": "canonical",
15
+ "40": "canonical",
16
+ "41": "canonical",
17
+ "56": "canonical",
18
+ "71": "canonical",
19
+ "97": "canonical",
20
+ "100": "canonical",
21
+ "137": "canonical",
22
+ "155": "canonical",
23
+ "169": "canonical",
24
+ "250": "canonical",
25
+ "252": "canonical",
26
+ "255": "canonical",
27
+ "336": "canonical",
28
+ "338": "canonical",
29
+ "369": "canonical",
30
+ "530": "canonical",
31
+ "690": "canonical",
32
+ "919": "canonical",
33
+ "1030": "canonical",
34
+ "1101": "canonical",
35
+ "1111": "canonical",
36
+ "1112": "canonical",
37
+ "1135": "canonical",
38
+ "1284": "canonical",
39
+ "1285": "canonical",
40
+ "1287": "canonical",
41
+ "1329": "canonical",
42
+ "1337": "canonical",
43
+ "1442": "canonical",
44
+ "1625": "canonical",
45
+ "1729": "canonical",
46
+ "2000": "canonical",
47
+ "2039": "canonical",
48
+ "2358": "canonical",
49
+ "2810": "canonical",
50
+ "3636": "canonical",
51
+ "3776": "canonical",
52
+ "4002": "canonical",
53
+ "4157": "canonical",
54
+ "4202": "canonical",
55
+ "4337": "canonical",
56
+ "4653": "canonical",
57
+ "5000": "canonical",
58
+ "5003": "canonical",
59
+ "6001": "canonical",
60
+ "7000": "canonical",
61
+ "7001": "canonical",
62
+ "7171": "canonical",
63
+ "7560": "canonical",
64
+ "7771": "canonical",
65
+ "8192": "canonical",
66
+ "8194": "canonical",
67
+ "8453": "canonical",
68
+ "9001": "canonical",
69
+ "10242": "canonical",
70
+ "10243": "canonical",
71
+ "11235": "canonical",
72
+ "13337": "canonical",
73
+ "17000": "canonical",
74
+ "17069": "canonical",
75
+ "18233": "canonical",
76
+ "23294": "canonical",
77
+ "23295": "canonical",
78
+ "32769": "canonical",
79
+ "33101": "canonical",
80
+ "34443": "canonical",
81
+ "42161": "canonical",
82
+ "42220": "canonical",
83
+ "43114": "canonical",
84
+ "54211": "canonical",
85
+ "59140": "canonical",
86
+ "59141": "canonical",
87
+ "59144": "canonical",
88
+ "80001": "canonical",
89
+ "80085": "canonical",
90
+ "81457": "canonical",
91
+ "84531": "canonical",
92
+ "84532": "canonical",
93
+ "90001": "canonical",
94
+ "105105": "canonical",
95
+ "111188": "canonical",
96
+ "167000": "canonical",
97
+ "167009": "canonical",
98
+ "205205": "canonical",
99
+ "444444": "canonical",
100
+ "534351": "canonical",
101
+ "534352": "canonical",
102
+ "555666": "canonical",
103
+ "713715": "canonical",
104
+ "6038361": "canonical",
105
+ "7225878": "canonical",
106
+ "7777777": "canonical",
107
+ "11155111": "canonical",
108
+ "11155420": "canonical",
109
+ "94204209": "canonical",
110
+ "111557560": "canonical",
111
+ "123420111": "canonical",
112
+ "168587773": "canonical",
113
+ "666666666": "canonical",
114
+ "999999999": "canonical",
115
+ "1313161554": "canonical",
116
+ "1313161555": "canonical",
117
+ "1666600000": "canonical",
118
+ "1666700000": "canonical",
119
+ "88153591557": "canonical"
114
120
  },
115
121
  "abi": [
116
122
  {
package/dist/factories.js CHANGED
@@ -11,7 +11,10 @@ const safe_proxy_factory_json_1 = __importDefault(require("./assets/v1.4.1/safe_
11
11
  const utils_1 = require("./utils");
12
12
  // This is a sorted array (newest to oldest)
13
13
  const factoryDeployments = [
14
- safe_proxy_factory_json_1.default, proxy_factory_json_3.default, proxy_factory_json_2.default, proxy_factory_json_1.default
14
+ safe_proxy_factory_json_1.default,
15
+ proxy_factory_json_3.default,
16
+ proxy_factory_json_2.default,
17
+ proxy_factory_json_1.default,
15
18
  ];
16
19
  const getProxyFactoryDeployment = (filter) => {
17
20
  return (0, utils_1.findDeployment)(filter, factoryDeployments);
package/dist/handler.js CHANGED
@@ -9,16 +9,15 @@ const compatibility_fallback_handler_json_1 = __importDefault(require("./assets/
9
9
  const compatibility_fallback_handler_json_2 = __importDefault(require("./assets/v1.4.1/compatibility_fallback_handler.json"));
10
10
  const utils_1 = require("./utils");
11
11
  // This is a sorted array (by preference)
12
- const defaultCallbackHandlerDeployments = [
13
- default_callback_handler_json_1.default
14
- ];
12
+ const defaultCallbackHandlerDeployments = [default_callback_handler_json_1.default];
15
13
  const getDefaultCallbackHandlerDeployment = (filter) => {
16
14
  return (0, utils_1.findDeployment)(filter, defaultCallbackHandlerDeployments);
17
15
  };
18
16
  exports.getDefaultCallbackHandlerDeployment = getDefaultCallbackHandlerDeployment;
19
17
  // This is a sorted array (by preference)
20
18
  const compatFallbackHandlerDeployments = [
21
- compatibility_fallback_handler_json_2.default, compatibility_fallback_handler_json_1.default
19
+ compatibility_fallback_handler_json_2.default,
20
+ compatibility_fallback_handler_json_1.default,
22
21
  ];
23
22
  const getCompatibilityFallbackHandlerDeployment = (filter) => {
24
23
  return (0, utils_1.findDeployment)(filter, compatFallbackHandlerDeployments);
@@ -26,7 +25,9 @@ const getCompatibilityFallbackHandlerDeployment = (filter) => {
26
25
  exports.getCompatibilityFallbackHandlerDeployment = getCompatibilityFallbackHandlerDeployment;
27
26
  // This is a sorted array (by preference)
28
27
  const fallbackHandlerDeployments = [
29
- compatibility_fallback_handler_json_2.default, compatibility_fallback_handler_json_1.default, default_callback_handler_json_1.default
28
+ compatibility_fallback_handler_json_2.default,
29
+ compatibility_fallback_handler_json_1.default,
30
+ default_callback_handler_json_1.default,
30
31
  ];
31
32
  const getFallbackHandlerDeployment = (filter) => {
32
33
  return (0, utils_1.findDeployment)(filter, fallbackHandlerDeployments);
package/dist/libs.js CHANGED
@@ -15,32 +15,24 @@ const sign_message_lib_json_1 = __importDefault(require("./assets/v1.3.0/sign_me
15
15
  const sign_message_lib_json_2 = __importDefault(require("./assets/v1.4.1/sign_message_lib.json"));
16
16
  const utils_1 = require("./utils");
17
17
  // This is a sorted array (by preference, currently we use 111 in most cases)
18
- const multiSendDeployments = [
19
- multi_send_json_3.default, multi_send_json_2.default, multi_send_json_1.default
20
- ];
18
+ const multiSendDeployments = [multi_send_json_3.default, multi_send_json_2.default, multi_send_json_1.default];
21
19
  const getMultiSendDeployment = (filter) => {
22
20
  return (0, utils_1.findDeployment)(filter, multiSendDeployments);
23
21
  };
24
22
  exports.getMultiSendDeployment = getMultiSendDeployment;
25
23
  // This is a sorted array (by preference)
26
- const multiSendCallOnlyDeployments = [
27
- multi_send_call_only_json_2.default, multi_send_call_only_json_1.default
28
- ];
24
+ const multiSendCallOnlyDeployments = [multi_send_call_only_json_2.default, multi_send_call_only_json_1.default];
29
25
  const getMultiSendCallOnlyDeployment = (filter) => {
30
26
  return (0, utils_1.findDeployment)(filter, multiSendCallOnlyDeployments);
31
27
  };
32
28
  exports.getMultiSendCallOnlyDeployment = getMultiSendCallOnlyDeployment;
33
29
  // This is a sorted array (by preference)
34
- const createCallDeployments = [
35
- create_call_json_2.default, create_call_json_1.default
36
- ];
30
+ const createCallDeployments = [create_call_json_2.default, create_call_json_1.default];
37
31
  const getCreateCallDeployment = (filter) => {
38
32
  return (0, utils_1.findDeployment)(filter, createCallDeployments);
39
33
  };
40
34
  exports.getCreateCallDeployment = getCreateCallDeployment;
41
- const signMessageLibDeployments = [
42
- sign_message_lib_json_2.default, sign_message_lib_json_1.default
43
- ];
35
+ const signMessageLibDeployments = [sign_message_lib_json_2.default, sign_message_lib_json_1.default];
44
36
  const getSignMessageLibDeployment = (filter) => {
45
37
  return (0, utils_1.findDeployment)(filter, signMessageLibDeployments);
46
38
  };
package/dist/safes.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { DeploymentFilter, SingletonDeployment } from './types';
2
- export declare const _safeDeployments: SingletonDeployment[];
1
+ import { DeploymentFilter, SingletonDeployment, SingletonDeploymentJSON } from './types';
2
+ export declare const _safeDeployments: SingletonDeploymentJSON[];
3
3
  export declare const getSafeSingletonDeployment: (filter?: DeploymentFilter) => SingletonDeployment | undefined;
4
- export declare const _safeL2Deployments: SingletonDeployment[];
4
+ export declare const _safeL2Deployments: SingletonDeploymentJSON[];
5
5
  export declare const getSafeL2SingletonDeployment: (filter?: DeploymentFilter) => SingletonDeployment | undefined;
package/dist/safes.js CHANGED
@@ -14,16 +14,18 @@ const gnosis_safe_json_4 = __importDefault(require("./assets/v1.0.0/gnosis_safe.
14
14
  const utils_1 = require("./utils");
15
15
  // This is a sorted array (newest to oldest), exported for tests
16
16
  exports._safeDeployments = [
17
- safe_json_1.default, gnosis_safe_json_1.default, gnosis_safe_json_2.default, gnosis_safe_json_3.default, gnosis_safe_json_4.default
17
+ safe_json_1.default,
18
+ gnosis_safe_json_1.default,
19
+ gnosis_safe_json_2.default,
20
+ gnosis_safe_json_3.default,
21
+ gnosis_safe_json_4.default,
18
22
  ];
19
23
  const getSafeSingletonDeployment = (filter) => {
20
24
  return (0, utils_1.findDeployment)(filter, exports._safeDeployments);
21
25
  };
22
26
  exports.getSafeSingletonDeployment = getSafeSingletonDeployment;
23
27
  // This is a sorted array (newest to oldest), exported for tests
24
- exports._safeL2Deployments = [
25
- safe_l2_json_1.default, gnosis_safe_l2_json_1.default
26
- ];
28
+ exports._safeL2Deployments = [safe_l2_json_1.default, gnosis_safe_l2_json_1.default];
27
29
  const getSafeL2SingletonDeployment = (filter) => {
28
30
  return (0, utils_1.findDeployment)(filter, exports._safeL2Deployments);
29
31
  };
package/dist/types.d.ts CHANGED
@@ -1,13 +1,39 @@
1
+ declare enum AddressType {
2
+ CANONICAL = "canonical",
3
+ EIP155 = "eip155",
4
+ ZKSYNC = "zksync"
5
+ }
6
+ export interface SingletonDeploymentJSON {
7
+ released: boolean;
8
+ contractName: string;
9
+ version: string;
10
+ codeHash: string;
11
+ networkAddresses: Record<string, string | string[]>;
12
+ addresses: Record<string, string>;
13
+ abi: any[];
14
+ }
1
15
  export interface SingletonDeployment {
2
16
  defaultAddress: string;
17
+ released: boolean;
18
+ contractName: string;
3
19
  version: string;
4
- abi: any[];
20
+ codeHash: string;
21
+ addresses: Record<string, string>;
5
22
  networkAddresses: Record<string, string>;
6
- contractName: string;
23
+ abi: any[];
24
+ }
25
+ export interface SingletonDeploymentV2 {
7
26
  released: boolean;
27
+ contractName: string;
28
+ version: string;
29
+ codeHash: string;
30
+ abi: any[];
31
+ networkAddresses: Record<string, AddressType | AddressType[]>;
32
+ addresses: Partial<Record<AddressType, string>>;
8
33
  }
9
34
  export interface DeploymentFilter {
10
35
  version?: string;
11
36
  released?: boolean;
12
37
  network?: string;
13
38
  }
39
+ export {};
package/dist/types.js CHANGED
@@ -1,2 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ var AddressType;
4
+ (function (AddressType) {
5
+ // The original address the contract was deployed on.
6
+ // Starting with 1.4.1, the contracts are deployed with an EIP155-compatible transaction.
7
+ AddressType["CANONICAL"] = "canonical";
8
+ // An address that was deployed with a transaction compatible with the EIP155 standard.
9
+ // The type is only used for 1.3.0 deployments.
10
+ AddressType["EIP155"] = "eip155";
11
+ // An address that is deployed to the ZkSync VM networks.
12
+ AddressType["ZKSYNC"] = "zksync";
13
+ })(AddressType || (AddressType = {}));
package/dist/utils.d.ts CHANGED
@@ -1,2 +1,9 @@
1
- import { DeploymentFilter, SingletonDeployment } from './types';
2
- export declare const findDeployment: (criteria: DeploymentFilter | undefined, deployments: SingletonDeployment[]) => SingletonDeployment | undefined;
1
+ import { DeploymentFilter, SingletonDeployment, SingletonDeploymentJSON } from './types';
2
+ /**
3
+ * Finds a deployment that matches the given criteria.
4
+ *
5
+ * @param {DeploymentFilter} [criteria=DEFAULT_FILTER] - The filter criteria to match deployments.
6
+ * @param {SingletonDeploymentJSON[]} deployments - The list of deployment JSON objects to search.
7
+ * @returns {SingletonDeployment | undefined} - The found deployment object or undefined if no match is found.
8
+ */
9
+ export declare const findDeployment: (criteria: DeploymentFilter | undefined, deployments: SingletonDeploymentJSON[]) => SingletonDeployment | undefined;
package/dist/utils.js CHANGED
@@ -6,16 +6,45 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.findDeployment = void 0;
7
7
  const satisfies_1 = __importDefault(require("semver/functions/satisfies"));
8
8
  const DEFAULT_FILTER = { released: true };
9
+ // The older JSON format had a `defaultAddress` field, which became obsolete due to EIP-155 enforcement and non-EVM compatible chains.
10
+ // This led to multiple "default" addresses, sometimes on the same chain ID. To maintain backwards compatibility, we map `defaultAddress`
11
+ // to the address deployed on a chosen default network.
12
+ const DEFAULT_NETWORK_CHAIN_ID = '1';
13
+ /**
14
+ * Maps a SingletonDeploymentJSON object to a SingletonDeployment object.
15
+ *
16
+ * @param {SingletonDeploymentJSON} deployment - The deployment JSON object to map.
17
+ * @returns {SingletonDeployment} - The mapped deployment object.
18
+ */
19
+ const mapJsonToDeploymentsFormatV1 = (deployment) => {
20
+ const defaultAddressType = Array.isArray(deployment.networkAddresses[DEFAULT_NETWORK_CHAIN_ID])
21
+ ? deployment.networkAddresses[DEFAULT_NETWORK_CHAIN_ID][0]
22
+ : deployment.networkAddresses[DEFAULT_NETWORK_CHAIN_ID];
23
+ const defaultAddress = deployment.addresses[defaultAddressType];
24
+ const networkAddresses = Object.fromEntries(Object.entries(deployment.networkAddresses).map(([chainId, addressTypes]) => [
25
+ chainId,
26
+ Array.isArray(addressTypes) ? deployment.addresses[addressTypes[0]] : deployment.addresses[addressTypes],
27
+ ]));
28
+ return Object.assign(Object.assign({}, deployment), { defaultAddress, networkAddresses });
29
+ };
30
+ /**
31
+ * Finds a deployment that matches the given criteria.
32
+ *
33
+ * @param {DeploymentFilter} [criteria=DEFAULT_FILTER] - The filter criteria to match deployments.
34
+ * @param {SingletonDeploymentJSON[]} deployments - The list of deployment JSON objects to search.
35
+ * @returns {SingletonDeployment | undefined} - The found deployment object or undefined if no match is found.
36
+ */
9
37
  const findDeployment = (criteria = DEFAULT_FILTER, deployments) => {
10
- const criteriaWithDefaults = Object.assign(Object.assign({}, DEFAULT_FILTER), criteria);
11
- return deployments.find((deployment) => {
12
- if (typeof criteriaWithDefaults.version !== 'undefined' && !(0, satisfies_1.default)(deployment.version, criteriaWithDefaults.version))
38
+ const { version, released, network } = Object.assign(Object.assign({}, DEFAULT_FILTER), criteria);
39
+ const deploymentJson = deployments.find((deployment) => {
40
+ if (version && !(0, satisfies_1.default)(deployment.version, version))
13
41
  return false;
14
- if (typeof criteriaWithDefaults.released === 'boolean' && deployment.released != criteriaWithDefaults.released)
42
+ if (typeof released === 'boolean' && deployment.released !== released)
15
43
  return false;
16
- if (criteriaWithDefaults.network && !deployment.networkAddresses[criteriaWithDefaults.network])
44
+ if (network && !deployment.networkAddresses[network])
17
45
  return false;
18
46
  return true;
19
47
  });
48
+ return deploymentJson ? mapJsonToDeploymentsFormatV1(deploymentJson) : undefined;
20
49
  };
21
50
  exports.findDeployment = findDeployment;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@safe-global/safe-deployments",
3
- "version": "1.37.0",
3
+ "version": "1.37.1",
4
4
  "description": "Collection of Safe singleton deployments",
5
5
  "homepage": "https://github.com/safe-global/safe-deployments/",
6
6
  "license": "MIT",
@@ -13,12 +13,14 @@
13
13
  "build"
14
14
  ],
15
15
  "scripts": {
16
- "build": "yarn rimraf dist && tsc",
17
- "lint": "yarn lint:ts && yarn lint:json",
18
- "lint:ts": "eslint --max-warnings 0 .",
16
+ "build": "rimraf dist && tsc",
17
+ "lint": "npm run lint:ts && npm run lint:json",
18
+ "lint:ts": "eslint --max-warnings 0 src/",
19
19
  "lint:json": "prettier -c src/assets/*/*.json",
20
- "prepack": "yarn build",
21
- "prepare": "husky install",
20
+ "lint:fix": "npm run lint:fix:ts && npm run lint:fix:json",
21
+ "lint:fix:ts": "npm run lint:ts -- --fix",
22
+ "lint:fix:json": "prettier -w src/assets/*/*.json",
23
+ "prepack": "npm run build",
22
24
  "test": "jest"
23
25
  },
24
26
  "repository": {
@@ -35,24 +37,20 @@
35
37
  "url": "https://github.com/safe-global/safe-deployments/issues"
36
38
  },
37
39
  "devDependencies": {
40
+ "@eslint/js": "^8.57.0",
38
41
  "@types/jest": "^29.5.12",
39
- "@types/node": "^20.11.30",
42
+ "@types/node": "^20.14.9",
40
43
  "@types/semver": "^7.5.8",
41
- "@typescript-eslint/eslint-plugin": "^7.4.0",
42
- "@typescript-eslint/parser": "^7.4.0",
43
44
  "eslint": "^8.57.0",
44
45
  "eslint-config-prettier": "^9.1.0",
45
- "eslint-plugin-import": "^2.29.1",
46
- "eslint-plugin-no-only-tests": "^3.1.0",
47
46
  "eslint-plugin-prettier": "^5.1.3",
48
- "husky": "^9.0.11",
49
47
  "jest": "^29.7.0",
50
- "prettier": "^3.2.5",
51
- "ts-jest": "^29.1.2",
52
- "ts-node": "^10.9.2",
53
- "typescript": "^5.4.3"
48
+ "prettier": "^3.3.2",
49
+ "ts-jest": "^29.1.5",
50
+ "typescript": "^5.5.2",
51
+ "typescript-eslint": "^7.14.1"
54
52
  },
55
53
  "dependencies": {
56
- "semver": "^7.6.0"
54
+ "semver": "^7.6.2"
57
55
  }
58
56
  }