@safe-global/safe-deployments 1.37.36 → 1.37.38

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 (104) hide show
  1. package/README.md +18 -10
  2. package/dist/assets/v1.3.0/compatibility_fallback_handler.json +20 -6
  3. package/dist/assets/v1.3.0/create_call.json +20 -6
  4. package/dist/assets/v1.3.0/gnosis_safe.json +20 -6
  5. package/dist/assets/v1.3.0/gnosis_safe_l2.json +21 -7
  6. package/dist/assets/v1.3.0/multi_send.json +20 -6
  7. package/dist/assets/v1.3.0/multi_send_call_only.json +20 -6
  8. package/dist/assets/v1.3.0/proxy_factory.json +20 -6
  9. package/dist/assets/v1.3.0/sign_message_lib.json +20 -6
  10. package/dist/assets/v1.3.0/simulate_tx_accessor.json +20 -6
  11. package/dist/assets/v1.4.1/compatibility_fallback_handler.json +15 -3
  12. package/dist/assets/v1.4.1/create_call.json +15 -3
  13. package/dist/assets/v1.4.1/multi_send.json +15 -3
  14. package/dist/assets/v1.4.1/multi_send_call_only.json +15 -3
  15. package/dist/assets/v1.4.1/safe.json +15 -3
  16. package/dist/assets/v1.4.1/safe_l2.json +15 -3
  17. package/dist/assets/v1.4.1/safe_migration.json +16 -3
  18. package/dist/assets/v1.4.1/safe_proxy_factory.json +15 -3
  19. package/dist/assets/v1.4.1/safe_to_l2_migration.json +16 -3
  20. package/dist/assets/v1.4.1/safe_to_l2_setup.json +16 -3
  21. package/dist/assets/v1.4.1/sign_message_lib.json +15 -3
  22. package/dist/assets/v1.4.1/simulate_tx_accessor.json +15 -3
  23. package/dist/assets/v1.5.0/compatibility_fallback_handler.json +378 -0
  24. package/dist/assets/v1.5.0/create_call.json +83 -0
  25. package/dist/assets/v1.5.0/extensible_fallback_handler.json +438 -0
  26. package/dist/assets/v1.5.0/multi_send.json +35 -0
  27. package/dist/assets/v1.5.0/multi_send_call_only.json +30 -0
  28. package/dist/assets/v1.5.0/safe.json +1014 -0
  29. package/dist/assets/v1.5.0/safe_l2.json +1119 -0
  30. package/dist/assets/v1.5.0/safe_migration.json +131 -0
  31. package/dist/assets/v1.5.0/safe_proxy_factory.json +246 -0
  32. package/dist/assets/v1.5.0/safe_to_l2_setup.json +48 -0
  33. package/dist/assets/v1.5.0/sign_message_lib.json +62 -0
  34. package/dist/assets/v1.5.0/simulate_tx_accessor.json +66 -0
  35. package/dist/assets/v1.5.0/token_callback_handler.json +186 -0
  36. package/dist/deployments.d.ts +3 -2
  37. package/dist/deployments.js +52 -19
  38. package/dist/handler.d.ts +26 -0
  39. package/dist/handler.js +40 -8
  40. package/package.json +1 -1
  41. package/src/__tests__/assets.test.ts +0 -16
  42. package/src/__tests__/factories.test.ts +10 -4
  43. package/src/__tests__/handler.test.ts +49 -9
  44. package/src/__tests__/libs.test.ts +43 -10
  45. package/src/__tests__/safes.test.ts +70 -10
  46. package/src/__tests__/utils.test.ts +141 -95
  47. package/src/assets/v1.3.0/compatibility_fallback_handler.json +20 -6
  48. package/src/assets/v1.3.0/create_call.json +20 -6
  49. package/src/assets/v1.3.0/gnosis_safe.json +20 -6
  50. package/src/assets/v1.3.0/gnosis_safe_l2.json +21 -7
  51. package/src/assets/v1.3.0/multi_send.json +20 -6
  52. package/src/assets/v1.3.0/multi_send_call_only.json +20 -6
  53. package/src/assets/v1.3.0/proxy_factory.json +20 -6
  54. package/src/assets/v1.3.0/sign_message_lib.json +20 -6
  55. package/src/assets/v1.3.0/simulate_tx_accessor.json +20 -6
  56. package/src/assets/v1.4.1/compatibility_fallback_handler.json +15 -3
  57. package/src/assets/v1.4.1/create_call.json +15 -3
  58. package/src/assets/v1.4.1/multi_send.json +15 -3
  59. package/src/assets/v1.4.1/multi_send_call_only.json +15 -3
  60. package/src/assets/v1.4.1/safe.json +15 -3
  61. package/src/assets/v1.4.1/safe_l2.json +15 -3
  62. package/src/assets/v1.4.1/safe_migration.json +16 -3
  63. package/src/assets/v1.4.1/safe_proxy_factory.json +15 -3
  64. package/src/assets/v1.4.1/safe_to_l2_migration.json +16 -3
  65. package/src/assets/v1.4.1/safe_to_l2_setup.json +16 -3
  66. package/src/assets/v1.4.1/sign_message_lib.json +15 -3
  67. package/src/assets/v1.4.1/simulate_tx_accessor.json +15 -3
  68. package/src/assets/v1.5.0/compatibility_fallback_handler.json +378 -0
  69. package/src/{__tests__/assets/v1/v1.1.1 → assets/v1.5.0}/create_call.json +6 -13
  70. package/src/assets/v1.5.0/extensible_fallback_handler.json +438 -0
  71. package/src/assets/v1.5.0/multi_send.json +35 -0
  72. package/src/assets/v1.5.0/multi_send_call_only.json +30 -0
  73. package/src/{__tests__/assets/v1/v1.1.1/gnosis_safe.json → assets/v1.5.0/safe.json} +413 -400
  74. package/src/{__tests__/assets/v1/v1.2.0/gnosis_safe.json → assets/v1.5.0/safe_l2.json} +514 -417
  75. package/src/assets/v1.5.0/safe_migration.json +131 -0
  76. package/src/{__tests__/assets/v1/v1.1.1/proxy_factory.json → assets/v1.5.0/safe_proxy_factory.json} +120 -65
  77. package/src/assets/v1.5.0/safe_to_l2_setup.json +48 -0
  78. package/src/assets/v1.5.0/sign_message_lib.json +62 -0
  79. package/src/assets/v1.5.0/simulate_tx_accessor.json +66 -0
  80. package/src/{__tests__/assets/v1/v1.1.1/default_callback_handler.json → assets/v1.5.0/token_callback_handler.json} +39 -65
  81. package/src/deployments.ts +50 -15
  82. package/src/handler.ts +46 -6
  83. package/src/__tests__/assets/v1/v1.0.0/gnosis_safe.json +0 -796
  84. package/src/__tests__/assets/v1/v1.0.0/proxy_factory.json +0 -111
  85. package/src/__tests__/assets/v1/v1.1.1/create_and_add_modules.json +0 -59
  86. package/src/__tests__/assets/v1/v1.1.1/multi_send.json +0 -45
  87. package/src/__tests__/assets/v1/v1.3.0/compatibility_fallback_handler.json +0 -588
  88. package/src/__tests__/assets/v1/v1.3.0/create_call.json +0 -331
  89. package/src/__tests__/assets/v1/v1.3.0/gnosis_safe.json +0 -1296
  90. package/src/__tests__/assets/v1/v1.3.0/gnosis_safe_l2.json +0 -1401
  91. package/src/__tests__/assets/v1/v1.3.0/multi_send.json +0 -283
  92. package/src/__tests__/assets/v1/v1.3.0/multi_send_call_only.json +0 -278
  93. package/src/__tests__/assets/v1/v1.3.0/proxy_factory.json +0 -426
  94. package/src/__tests__/assets/v1/v1.3.0/sign_message_lib.json +0 -310
  95. package/src/__tests__/assets/v1/v1.3.0/simulate_tx_accessor.json +0 -314
  96. package/src/__tests__/assets/v1/v1.4.1/compatibility_fallback_handler.json +0 -447
  97. package/src/__tests__/assets/v1/v1.4.1/create_call.json +0 -192
  98. package/src/__tests__/assets/v1/v1.4.1/multi_send.json +0 -144
  99. package/src/__tests__/assets/v1/v1.4.1/multi_send_call_only.json +0 -139
  100. package/src/__tests__/assets/v1/v1.4.1/safe.json +0 -1123
  101. package/src/__tests__/assets/v1/v1.4.1/safe_l2.json +0 -1228
  102. package/src/__tests__/assets/v1/v1.4.1/safe_proxy_factory.json +0 -263
  103. package/src/__tests__/assets/v1/v1.4.1/sign_message_lib.json +0 -171
  104. package/src/__tests__/assets/v1/v1.4.1/simulate_tx_accessor.json +0 -175
@@ -1,36 +1,23 @@
1
1
  {
2
- "defaultAddress": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
3
2
  "released": true,
4
- "contractName": "GnosisSafe",
5
- "version": "1.2.0",
3
+ "contractName": "SafeL2",
4
+ "version": "1.5.0",
6
5
  "deployments": {
7
6
  "canonical": {
8
- "address": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
9
- "codeHash": "0x2ae2d1231f0d754a7fa4f5e5d0e5554085e1b500d8e09f95aaaaa3f49c0db922"
7
+ "address": "0xEdd160fEBBD92E350D4D398fb636302fccd67C7e",
8
+ "codeHash": "0x180193227186ccb85316c94db1f0d156ed932b14712cfaac78901899178572dc"
10
9
  }
11
10
  },
12
11
  "networkAddresses": {
13
- "1": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
14
- "4": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
15
- "5": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
16
- "42": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
17
- "88": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
18
- "100": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
19
- "246": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185",
20
- "73799": "0x6851D6fDFAfD08c0295C392436245E5bc78B0185"
12
+ "1": "canonical",
13
+ "11155111": "canonical"
21
14
  },
22
15
  "abi": [
23
- {
24
- "inputs": [],
25
- "payable": false,
26
- "stateMutability": "nonpayable",
27
- "type": "constructor"
28
- },
29
16
  {
30
17
  "anonymous": false,
31
18
  "inputs": [
32
19
  {
33
- "indexed": false,
20
+ "indexed": true,
34
21
  "internalType": "address",
35
22
  "name": "owner",
36
23
  "type": "address"
@@ -62,13 +49,39 @@
62
49
  "anonymous": false,
63
50
  "inputs": [
64
51
  {
65
- "indexed": false,
52
+ "indexed": true,
53
+ "internalType": "address",
54
+ "name": "handler",
55
+ "type": "address"
56
+ }
57
+ ],
58
+ "name": "ChangedFallbackHandler",
59
+ "type": "event"
60
+ },
61
+ {
62
+ "anonymous": false,
63
+ "inputs": [
64
+ {
65
+ "indexed": true,
66
+ "internalType": "address",
67
+ "name": "guard",
68
+ "type": "address"
69
+ }
70
+ ],
71
+ "name": "ChangedGuard",
72
+ "type": "event"
73
+ },
74
+ {
75
+ "anonymous": false,
76
+ "inputs": [
77
+ {
78
+ "indexed": true,
66
79
  "internalType": "address",
67
- "name": "masterCopy",
80
+ "name": "moduleGuard",
68
81
  "type": "address"
69
82
  }
70
83
  ],
71
- "name": "ChangedMasterCopy",
84
+ "name": "ChangedModuleGuard",
72
85
  "type": "event"
73
86
  },
74
87
  {
@@ -88,8 +101,8 @@
88
101
  "anonymous": false,
89
102
  "inputs": [
90
103
  {
91
- "indexed": false,
92
- "internalType": "contract Module",
104
+ "indexed": true,
105
+ "internalType": "address",
93
106
  "name": "module",
94
107
  "type": "address"
95
108
  }
@@ -101,8 +114,8 @@
101
114
  "anonymous": false,
102
115
  "inputs": [
103
116
  {
104
- "indexed": false,
105
- "internalType": "contract Module",
117
+ "indexed": true,
118
+ "internalType": "address",
106
119
  "name": "module",
107
120
  "type": "address"
108
121
  }
@@ -114,7 +127,7 @@
114
127
  "anonymous": false,
115
128
  "inputs": [
116
129
  {
117
- "indexed": false,
130
+ "indexed": true,
118
131
  "internalType": "bytes32",
119
132
  "name": "txHash",
120
133
  "type": "bytes32"
@@ -159,7 +172,7 @@
159
172
  "anonymous": false,
160
173
  "inputs": [
161
174
  {
162
- "indexed": false,
175
+ "indexed": true,
163
176
  "internalType": "bytes32",
164
177
  "name": "txHash",
165
178
  "type": "bytes32"
@@ -178,7 +191,7 @@
178
191
  "anonymous": false,
179
192
  "inputs": [
180
193
  {
181
- "indexed": false,
194
+ "indexed": true,
182
195
  "internalType": "address",
183
196
  "name": "owner",
184
197
  "type": "address"
@@ -187,41 +200,190 @@
187
200
  "name": "RemovedOwner",
188
201
  "type": "event"
189
202
  },
203
+ {
204
+ "anonymous": false,
205
+ "inputs": [
206
+ {
207
+ "indexed": false,
208
+ "internalType": "address",
209
+ "name": "module",
210
+ "type": "address"
211
+ },
212
+ {
213
+ "indexed": false,
214
+ "internalType": "address",
215
+ "name": "to",
216
+ "type": "address"
217
+ },
218
+ {
219
+ "indexed": false,
220
+ "internalType": "uint256",
221
+ "name": "value",
222
+ "type": "uint256"
223
+ },
224
+ {
225
+ "indexed": false,
226
+ "internalType": "bytes",
227
+ "name": "data",
228
+ "type": "bytes"
229
+ },
230
+ {
231
+ "indexed": false,
232
+ "internalType": "enum Enum.Operation",
233
+ "name": "operation",
234
+ "type": "uint8"
235
+ }
236
+ ],
237
+ "name": "SafeModuleTransaction",
238
+ "type": "event"
239
+ },
240
+ {
241
+ "anonymous": false,
242
+ "inputs": [
243
+ {
244
+ "indexed": false,
245
+ "internalType": "address",
246
+ "name": "to",
247
+ "type": "address"
248
+ },
249
+ {
250
+ "indexed": false,
251
+ "internalType": "uint256",
252
+ "name": "value",
253
+ "type": "uint256"
254
+ },
255
+ {
256
+ "indexed": false,
257
+ "internalType": "bytes",
258
+ "name": "data",
259
+ "type": "bytes"
260
+ },
261
+ {
262
+ "indexed": false,
263
+ "internalType": "enum Enum.Operation",
264
+ "name": "operation",
265
+ "type": "uint8"
266
+ },
267
+ {
268
+ "indexed": false,
269
+ "internalType": "uint256",
270
+ "name": "safeTxGas",
271
+ "type": "uint256"
272
+ },
273
+ {
274
+ "indexed": false,
275
+ "internalType": "uint256",
276
+ "name": "baseGas",
277
+ "type": "uint256"
278
+ },
279
+ {
280
+ "indexed": false,
281
+ "internalType": "uint256",
282
+ "name": "gasPrice",
283
+ "type": "uint256"
284
+ },
285
+ {
286
+ "indexed": false,
287
+ "internalType": "address",
288
+ "name": "gasToken",
289
+ "type": "address"
290
+ },
291
+ {
292
+ "indexed": false,
293
+ "internalType": "address payable",
294
+ "name": "refundReceiver",
295
+ "type": "address"
296
+ },
297
+ {
298
+ "indexed": false,
299
+ "internalType": "bytes",
300
+ "name": "signatures",
301
+ "type": "bytes"
302
+ },
303
+ {
304
+ "indexed": false,
305
+ "internalType": "bytes",
306
+ "name": "additionalInfo",
307
+ "type": "bytes"
308
+ }
309
+ ],
310
+ "name": "SafeMultiSigTransaction",
311
+ "type": "event"
312
+ },
190
313
  {
191
314
  "anonymous": false,
192
315
  "inputs": [
193
316
  {
194
317
  "indexed": true,
195
- "internalType": "bytes32",
196
- "name": "msgHash",
197
- "type": "bytes32"
318
+ "internalType": "address",
319
+ "name": "sender",
320
+ "type": "address"
321
+ },
322
+ {
323
+ "indexed": false,
324
+ "internalType": "uint256",
325
+ "name": "value",
326
+ "type": "uint256"
198
327
  }
199
328
  ],
200
- "name": "SignMsg",
329
+ "name": "SafeReceived",
201
330
  "type": "event"
202
331
  },
203
332
  {
204
- "payable": true,
205
- "stateMutability": "payable",
206
- "type": "fallback"
333
+ "anonymous": false,
334
+ "inputs": [
335
+ {
336
+ "indexed": true,
337
+ "internalType": "address",
338
+ "name": "initiator",
339
+ "type": "address"
340
+ },
341
+ {
342
+ "indexed": false,
343
+ "internalType": "address[]",
344
+ "name": "owners",
345
+ "type": "address[]"
346
+ },
347
+ {
348
+ "indexed": false,
349
+ "internalType": "uint256",
350
+ "name": "threshold",
351
+ "type": "uint256"
352
+ },
353
+ {
354
+ "indexed": false,
355
+ "internalType": "address",
356
+ "name": "initializer",
357
+ "type": "address"
358
+ },
359
+ {
360
+ "indexed": false,
361
+ "internalType": "address",
362
+ "name": "fallbackHandler",
363
+ "type": "address"
364
+ }
365
+ ],
366
+ "name": "SafeSetup",
367
+ "type": "event"
207
368
  },
208
369
  {
209
- "constant": true,
210
- "inputs": [],
211
- "name": "NAME",
212
- "outputs": [
370
+ "anonymous": false,
371
+ "inputs": [
213
372
  {
214
- "internalType": "string",
215
- "name": "",
216
- "type": "string"
373
+ "indexed": true,
374
+ "internalType": "bytes32",
375
+ "name": "msgHash",
376
+ "type": "bytes32"
217
377
  }
218
378
  ],
219
- "payable": false,
220
- "stateMutability": "view",
221
- "type": "function"
379
+ "name": "SignMsg",
380
+ "type": "event"
381
+ },
382
+ {
383
+ "stateMutability": "nonpayable",
384
+ "type": "fallback"
222
385
  },
223
386
  {
224
- "constant": true,
225
387
  "inputs": [],
226
388
  "name": "VERSION",
227
389
  "outputs": [
@@ -231,12 +393,10 @@
231
393
  "type": "string"
232
394
  }
233
395
  ],
234
- "payable": false,
235
396
  "stateMutability": "view",
236
397
  "type": "function"
237
398
  },
238
399
  {
239
- "constant": false,
240
400
  "inputs": [
241
401
  {
242
402
  "internalType": "address",
@@ -251,12 +411,23 @@
251
411
  ],
252
412
  "name": "addOwnerWithThreshold",
253
413
  "outputs": [],
254
- "payable": false,
255
414
  "stateMutability": "nonpayable",
256
415
  "type": "function"
257
416
  },
258
417
  {
259
- "constant": true,
418
+ "inputs": [
419
+ {
420
+ "internalType": "bytes32",
421
+ "name": "hashToApprove",
422
+ "type": "bytes32"
423
+ }
424
+ ],
425
+ "name": "approveHash",
426
+ "outputs": [],
427
+ "stateMutability": "nonpayable",
428
+ "type": "function"
429
+ },
430
+ {
260
431
  "inputs": [
261
432
  {
262
433
  "internalType": "address",
@@ -277,62 +448,143 @@
277
448
  "type": "uint256"
278
449
  }
279
450
  ],
280
- "payable": false,
281
451
  "stateMutability": "view",
282
452
  "type": "function"
283
453
  },
284
454
  {
285
- "constant": false,
286
455
  "inputs": [
287
456
  {
288
- "internalType": "address",
289
- "name": "_masterCopy",
290
- "type": "address"
457
+ "internalType": "uint256",
458
+ "name": "_threshold",
459
+ "type": "uint256"
291
460
  }
292
461
  ],
293
- "name": "changeMasterCopy",
462
+ "name": "changeThreshold",
294
463
  "outputs": [],
295
- "payable": false,
296
464
  "stateMutability": "nonpayable",
297
465
  "type": "function"
298
466
  },
299
467
  {
300
- "constant": false,
301
468
  "inputs": [
469
+ {
470
+ "internalType": "bytes32",
471
+ "name": "dataHash",
472
+ "type": "bytes32"
473
+ },
474
+ {
475
+ "internalType": "bytes",
476
+ "name": "data",
477
+ "type": "bytes"
478
+ },
479
+ {
480
+ "internalType": "bytes",
481
+ "name": "signatures",
482
+ "type": "bytes"
483
+ },
302
484
  {
303
485
  "internalType": "uint256",
304
- "name": "_threshold",
486
+ "name": "requiredSignatures",
305
487
  "type": "uint256"
306
488
  }
307
489
  ],
308
- "name": "changeThreshold",
490
+ "name": "checkNSignatures",
309
491
  "outputs": [],
310
- "payable": false,
311
- "stateMutability": "nonpayable",
492
+ "stateMutability": "view",
312
493
  "type": "function"
313
494
  },
314
495
  {
315
- "constant": false,
316
496
  "inputs": [
317
497
  {
318
- "internalType": "contract Module",
319
- "name": "prevModule",
498
+ "internalType": "address",
499
+ "name": "executor",
320
500
  "type": "address"
321
501
  },
322
502
  {
323
- "internalType": "contract Module",
324
- "name": "module",
325
- "type": "address"
326
- }
503
+ "internalType": "bytes32",
504
+ "name": "dataHash",
505
+ "type": "bytes32"
506
+ },
507
+ {
508
+ "internalType": "bytes",
509
+ "name": "signatures",
510
+ "type": "bytes"
511
+ },
512
+ {
513
+ "internalType": "uint256",
514
+ "name": "requiredSignatures",
515
+ "type": "uint256"
516
+ }
517
+ ],
518
+ "name": "checkNSignatures",
519
+ "outputs": [],
520
+ "stateMutability": "view",
521
+ "type": "function"
522
+ },
523
+ {
524
+ "inputs": [
525
+ {
526
+ "internalType": "bytes32",
527
+ "name": "dataHash",
528
+ "type": "bytes32"
529
+ },
530
+ {
531
+ "internalType": "bytes",
532
+ "name": "data",
533
+ "type": "bytes"
534
+ },
535
+ {
536
+ "internalType": "bytes",
537
+ "name": "signatures",
538
+ "type": "bytes"
539
+ }
540
+ ],
541
+ "name": "checkSignatures",
542
+ "outputs": [],
543
+ "stateMutability": "view",
544
+ "type": "function"
545
+ },
546
+ {
547
+ "inputs": [
548
+ {
549
+ "internalType": "address",
550
+ "name": "executor",
551
+ "type": "address"
552
+ },
553
+ {
554
+ "internalType": "bytes32",
555
+ "name": "dataHash",
556
+ "type": "bytes32"
557
+ },
558
+ {
559
+ "internalType": "bytes",
560
+ "name": "signatures",
561
+ "type": "bytes"
562
+ }
563
+ ],
564
+ "name": "checkSignatures",
565
+ "outputs": [],
566
+ "stateMutability": "view",
567
+ "type": "function"
568
+ },
569
+ {
570
+ "inputs": [
571
+ {
572
+ "internalType": "address",
573
+ "name": "prevModule",
574
+ "type": "address"
575
+ },
576
+ {
577
+ "internalType": "address",
578
+ "name": "module",
579
+ "type": "address"
580
+ }
327
581
  ],
328
582
  "name": "disableModule",
329
583
  "outputs": [],
330
- "payable": false,
331
584
  "stateMutability": "nonpayable",
332
585
  "type": "function"
333
586
  },
334
587
  {
335
- "constant": true,
336
588
  "inputs": [],
337
589
  "name": "domainSeparator",
338
590
  "outputs": [
@@ -342,27 +594,87 @@
342
594
  "type": "bytes32"
343
595
  }
344
596
  ],
345
- "payable": false,
346
597
  "stateMutability": "view",
347
598
  "type": "function"
348
599
  },
349
600
  {
350
- "constant": false,
351
601
  "inputs": [
352
602
  {
353
- "internalType": "contract Module",
603
+ "internalType": "address",
354
604
  "name": "module",
355
605
  "type": "address"
356
606
  }
357
607
  ],
358
608
  "name": "enableModule",
359
609
  "outputs": [],
360
- "payable": false,
361
610
  "stateMutability": "nonpayable",
362
611
  "type": "function"
363
612
  },
364
613
  {
365
- "constant": false,
614
+ "inputs": [
615
+ {
616
+ "internalType": "address",
617
+ "name": "to",
618
+ "type": "address"
619
+ },
620
+ {
621
+ "internalType": "uint256",
622
+ "name": "value",
623
+ "type": "uint256"
624
+ },
625
+ {
626
+ "internalType": "bytes",
627
+ "name": "data",
628
+ "type": "bytes"
629
+ },
630
+ {
631
+ "internalType": "enum Enum.Operation",
632
+ "name": "operation",
633
+ "type": "uint8"
634
+ },
635
+ {
636
+ "internalType": "uint256",
637
+ "name": "safeTxGas",
638
+ "type": "uint256"
639
+ },
640
+ {
641
+ "internalType": "uint256",
642
+ "name": "baseGas",
643
+ "type": "uint256"
644
+ },
645
+ {
646
+ "internalType": "uint256",
647
+ "name": "gasPrice",
648
+ "type": "uint256"
649
+ },
650
+ {
651
+ "internalType": "address",
652
+ "name": "gasToken",
653
+ "type": "address"
654
+ },
655
+ {
656
+ "internalType": "address payable",
657
+ "name": "refundReceiver",
658
+ "type": "address"
659
+ },
660
+ {
661
+ "internalType": "bytes",
662
+ "name": "signatures",
663
+ "type": "bytes"
664
+ }
665
+ ],
666
+ "name": "execTransaction",
667
+ "outputs": [
668
+ {
669
+ "internalType": "bool",
670
+ "name": "success",
671
+ "type": "bool"
672
+ }
673
+ ],
674
+ "stateMutability": "payable",
675
+ "type": "function"
676
+ },
677
+ {
366
678
  "inputs": [
367
679
  {
368
680
  "internalType": "address",
@@ -393,12 +705,10 @@
393
705
  "type": "bool"
394
706
  }
395
707
  ],
396
- "payable": false,
397
708
  "stateMutability": "nonpayable",
398
709
  "type": "function"
399
710
  },
400
711
  {
401
- "constant": false,
402
712
  "inputs": [
403
713
  {
404
714
  "internalType": "address",
@@ -434,27 +744,10 @@
434
744
  "type": "bytes"
435
745
  }
436
746
  ],
437
- "payable": false,
438
747
  "stateMutability": "nonpayable",
439
748
  "type": "function"
440
749
  },
441
750
  {
442
- "constant": true,
443
- "inputs": [],
444
- "name": "getModules",
445
- "outputs": [
446
- {
447
- "internalType": "address[]",
448
- "name": "",
449
- "type": "address[]"
450
- }
451
- ],
452
- "payable": false,
453
- "stateMutability": "view",
454
- "type": "function"
455
- },
456
- {
457
- "constant": true,
458
751
  "inputs": [
459
752
  {
460
753
  "internalType": "address",
@@ -480,12 +773,10 @@
480
773
  "type": "address"
481
774
  }
482
775
  ],
483
- "payable": false,
484
776
  "stateMutability": "view",
485
777
  "type": "function"
486
778
  },
487
779
  {
488
- "constant": true,
489
780
  "inputs": [],
490
781
  "name": "getOwners",
491
782
  "outputs": [
@@ -495,12 +786,34 @@
495
786
  "type": "address[]"
496
787
  }
497
788
  ],
498
- "payable": false,
499
789
  "stateMutability": "view",
500
790
  "type": "function"
501
791
  },
502
792
  {
503
- "constant": true,
793
+ "inputs": [
794
+ {
795
+ "internalType": "uint256",
796
+ "name": "offset",
797
+ "type": "uint256"
798
+ },
799
+ {
800
+ "internalType": "uint256",
801
+ "name": "length",
802
+ "type": "uint256"
803
+ }
804
+ ],
805
+ "name": "getStorageAt",
806
+ "outputs": [
807
+ {
808
+ "internalType": "bytes",
809
+ "name": "",
810
+ "type": "bytes"
811
+ }
812
+ ],
813
+ "stateMutability": "view",
814
+ "type": "function"
815
+ },
816
+ {
504
817
  "inputs": [],
505
818
  "name": "getThreshold",
506
819
  "outputs": [
@@ -510,15 +823,77 @@
510
823
  "type": "uint256"
511
824
  }
512
825
  ],
513
- "payable": false,
514
826
  "stateMutability": "view",
515
827
  "type": "function"
516
828
  },
517
829
  {
518
- "constant": true,
519
830
  "inputs": [
520
831
  {
521
- "internalType": "contract Module",
832
+ "internalType": "address",
833
+ "name": "to",
834
+ "type": "address"
835
+ },
836
+ {
837
+ "internalType": "uint256",
838
+ "name": "value",
839
+ "type": "uint256"
840
+ },
841
+ {
842
+ "internalType": "bytes",
843
+ "name": "data",
844
+ "type": "bytes"
845
+ },
846
+ {
847
+ "internalType": "enum Enum.Operation",
848
+ "name": "operation",
849
+ "type": "uint8"
850
+ },
851
+ {
852
+ "internalType": "uint256",
853
+ "name": "safeTxGas",
854
+ "type": "uint256"
855
+ },
856
+ {
857
+ "internalType": "uint256",
858
+ "name": "baseGas",
859
+ "type": "uint256"
860
+ },
861
+ {
862
+ "internalType": "uint256",
863
+ "name": "gasPrice",
864
+ "type": "uint256"
865
+ },
866
+ {
867
+ "internalType": "address",
868
+ "name": "gasToken",
869
+ "type": "address"
870
+ },
871
+ {
872
+ "internalType": "address",
873
+ "name": "refundReceiver",
874
+ "type": "address"
875
+ },
876
+ {
877
+ "internalType": "uint256",
878
+ "name": "_nonce",
879
+ "type": "uint256"
880
+ }
881
+ ],
882
+ "name": "getTransactionHash",
883
+ "outputs": [
884
+ {
885
+ "internalType": "bytes32",
886
+ "name": "txHash",
887
+ "type": "bytes32"
888
+ }
889
+ ],
890
+ "stateMutability": "view",
891
+ "type": "function"
892
+ },
893
+ {
894
+ "inputs": [
895
+ {
896
+ "internalType": "address",
522
897
  "name": "module",
523
898
  "type": "address"
524
899
  }
@@ -531,12 +906,10 @@
531
906
  "type": "bool"
532
907
  }
533
908
  ],
534
- "payable": false,
535
909
  "stateMutability": "view",
536
910
  "type": "function"
537
911
  },
538
912
  {
539
- "constant": true,
540
913
  "inputs": [
541
914
  {
542
915
  "internalType": "address",
@@ -552,12 +925,10 @@
552
925
  "type": "bool"
553
926
  }
554
927
  ],
555
- "payable": false,
556
928
  "stateMutability": "view",
557
929
  "type": "function"
558
930
  },
559
931
  {
560
- "constant": true,
561
932
  "inputs": [],
562
933
  "name": "nonce",
563
934
  "outputs": [
@@ -567,12 +938,10 @@
567
938
  "type": "uint256"
568
939
  }
569
940
  ],
570
- "payable": false,
571
941
  "stateMutability": "view",
572
942
  "type": "function"
573
943
  },
574
944
  {
575
- "constant": false,
576
945
  "inputs": [
577
946
  {
578
947
  "internalType": "address",
@@ -592,12 +961,10 @@
592
961
  ],
593
962
  "name": "removeOwner",
594
963
  "outputs": [],
595
- "payable": false,
596
964
  "stateMutability": "nonpayable",
597
965
  "type": "function"
598
966
  },
599
967
  {
600
- "constant": false,
601
968
  "inputs": [
602
969
  {
603
970
  "internalType": "address",
@@ -607,58 +974,36 @@
607
974
  ],
608
975
  "name": "setFallbackHandler",
609
976
  "outputs": [],
610
- "payable": false,
611
977
  "stateMutability": "nonpayable",
612
978
  "type": "function"
613
979
  },
614
980
  {
615
- "constant": true,
616
981
  "inputs": [
617
982
  {
618
- "internalType": "bytes32",
619
- "name": "",
620
- "type": "bytes32"
983
+ "internalType": "address",
984
+ "name": "guard",
985
+ "type": "address"
621
986
  }
622
987
  ],
623
- "name": "signedMessages",
624
- "outputs": [
988
+ "name": "setGuard",
989
+ "outputs": [],
990
+ "stateMutability": "nonpayable",
991
+ "type": "function"
992
+ },
993
+ {
994
+ "inputs": [
625
995
  {
626
- "internalType": "uint256",
627
- "name": "",
628
- "type": "uint256"
996
+ "internalType": "address",
997
+ "name": "moduleGuard",
998
+ "type": "address"
629
999
  }
630
1000
  ],
631
- "payable": false,
632
- "stateMutability": "view",
1001
+ "name": "setModuleGuard",
1002
+ "outputs": [],
1003
+ "stateMutability": "nonpayable",
633
1004
  "type": "function"
634
1005
  },
635
1006
  {
636
- "constant": false,
637
- "inputs": [
638
- {
639
- "internalType": "address",
640
- "name": "prevOwner",
641
- "type": "address"
642
- },
643
- {
644
- "internalType": "address",
645
- "name": "oldOwner",
646
- "type": "address"
647
- },
648
- {
649
- "internalType": "address",
650
- "name": "newOwner",
651
- "type": "address"
652
- }
653
- ],
654
- "name": "swapOwner",
655
- "outputs": [],
656
- "payable": false,
657
- "stateMutability": "nonpayable",
658
- "type": "function"
659
- },
660
- {
661
- "constant": false,
662
1007
  "inputs": [
663
1008
  {
664
1009
  "internalType": "address[]",
@@ -703,320 +1048,72 @@
703
1048
  ],
704
1049
  "name": "setup",
705
1050
  "outputs": [],
706
- "payable": false,
707
- "stateMutability": "nonpayable",
708
- "type": "function"
709
- },
710
- {
711
- "constant": false,
712
- "inputs": [
713
- {
714
- "internalType": "address",
715
- "name": "to",
716
- "type": "address"
717
- },
718
- {
719
- "internalType": "uint256",
720
- "name": "value",
721
- "type": "uint256"
722
- },
723
- {
724
- "internalType": "bytes",
725
- "name": "data",
726
- "type": "bytes"
727
- },
728
- {
729
- "internalType": "enum Enum.Operation",
730
- "name": "operation",
731
- "type": "uint8"
732
- },
733
- {
734
- "internalType": "uint256",
735
- "name": "safeTxGas",
736
- "type": "uint256"
737
- },
738
- {
739
- "internalType": "uint256",
740
- "name": "baseGas",
741
- "type": "uint256"
742
- },
743
- {
744
- "internalType": "uint256",
745
- "name": "gasPrice",
746
- "type": "uint256"
747
- },
748
- {
749
- "internalType": "address",
750
- "name": "gasToken",
751
- "type": "address"
752
- },
753
- {
754
- "internalType": "address payable",
755
- "name": "refundReceiver",
756
- "type": "address"
757
- },
758
- {
759
- "internalType": "bytes",
760
- "name": "signatures",
761
- "type": "bytes"
762
- }
763
- ],
764
- "name": "execTransaction",
765
- "outputs": [
766
- {
767
- "internalType": "bool",
768
- "name": "success",
769
- "type": "bool"
770
- }
771
- ],
772
- "payable": true,
773
- "stateMutability": "payable",
774
- "type": "function"
775
- },
776
- {
777
- "constant": false,
778
- "inputs": [
779
- {
780
- "internalType": "address",
781
- "name": "to",
782
- "type": "address"
783
- },
784
- {
785
- "internalType": "uint256",
786
- "name": "value",
787
- "type": "uint256"
788
- },
789
- {
790
- "internalType": "bytes",
791
- "name": "data",
792
- "type": "bytes"
793
- },
794
- {
795
- "internalType": "enum Enum.Operation",
796
- "name": "operation",
797
- "type": "uint8"
798
- }
799
- ],
800
- "name": "requiredTxGas",
801
- "outputs": [
802
- {
803
- "internalType": "uint256",
804
- "name": "",
805
- "type": "uint256"
806
- }
807
- ],
808
- "payable": false,
809
1051
  "stateMutability": "nonpayable",
810
1052
  "type": "function"
811
1053
  },
812
1054
  {
813
- "constant": false,
814
1055
  "inputs": [
815
1056
  {
816
1057
  "internalType": "bytes32",
817
- "name": "hashToApprove",
818
- "type": "bytes32"
819
- }
820
- ],
821
- "name": "approveHash",
822
- "outputs": [],
823
- "payable": false,
824
- "stateMutability": "nonpayable",
825
- "type": "function"
826
- },
827
- {
828
- "constant": false,
829
- "inputs": [
830
- {
831
- "internalType": "bytes",
832
- "name": "_data",
833
- "type": "bytes"
834
- }
835
- ],
836
- "name": "signMessage",
837
- "outputs": [],
838
- "payable": false,
839
- "stateMutability": "nonpayable",
840
- "type": "function"
841
- },
842
- {
843
- "constant": false,
844
- "inputs": [
845
- {
846
- "internalType": "bytes",
847
- "name": "_data",
848
- "type": "bytes"
849
- },
850
- {
851
- "internalType": "bytes",
852
- "name": "_signature",
853
- "type": "bytes"
854
- }
855
- ],
856
- "name": "isValidSignature",
857
- "outputs": [
858
- {
859
- "internalType": "bytes4",
860
1058
  "name": "",
861
- "type": "bytes4"
862
- }
863
- ],
864
- "payable": false,
865
- "stateMutability": "nonpayable",
866
- "type": "function"
867
- },
868
- {
869
- "constant": true,
870
- "inputs": [
871
- {
872
- "internalType": "bytes",
873
- "name": "message",
874
- "type": "bytes"
1059
+ "type": "bytes32"
875
1060
  }
876
1061
  ],
877
- "name": "getMessageHash",
1062
+ "name": "signedMessages",
878
1063
  "outputs": [
879
1064
  {
880
- "internalType": "bytes32",
1065
+ "internalType": "uint256",
881
1066
  "name": "",
882
- "type": "bytes32"
1067
+ "type": "uint256"
883
1068
  }
884
1069
  ],
885
- "payable": false,
886
1070
  "stateMutability": "view",
887
1071
  "type": "function"
888
1072
  },
889
1073
  {
890
- "constant": true,
891
1074
  "inputs": [
892
1075
  {
893
1076
  "internalType": "address",
894
- "name": "to",
1077
+ "name": "targetContract",
895
1078
  "type": "address"
896
1079
  },
897
- {
898
- "internalType": "uint256",
899
- "name": "value",
900
- "type": "uint256"
901
- },
902
1080
  {
903
1081
  "internalType": "bytes",
904
- "name": "data",
905
- "type": "bytes"
906
- },
907
- {
908
- "internalType": "enum Enum.Operation",
909
- "name": "operation",
910
- "type": "uint8"
911
- },
912
- {
913
- "internalType": "uint256",
914
- "name": "safeTxGas",
915
- "type": "uint256"
916
- },
917
- {
918
- "internalType": "uint256",
919
- "name": "baseGas",
920
- "type": "uint256"
921
- },
922
- {
923
- "internalType": "uint256",
924
- "name": "gasPrice",
925
- "type": "uint256"
926
- },
927
- {
928
- "internalType": "address",
929
- "name": "gasToken",
930
- "type": "address"
931
- },
932
- {
933
- "internalType": "address",
934
- "name": "refundReceiver",
935
- "type": "address"
936
- },
937
- {
938
- "internalType": "uint256",
939
- "name": "_nonce",
940
- "type": "uint256"
941
- }
942
- ],
943
- "name": "encodeTransactionData",
944
- "outputs": [
945
- {
946
- "internalType": "bytes",
947
- "name": "",
1082
+ "name": "calldataPayload",
948
1083
  "type": "bytes"
949
1084
  }
950
1085
  ],
951
- "payable": false,
952
- "stateMutability": "view",
1086
+ "name": "simulateAndRevert",
1087
+ "outputs": [],
1088
+ "stateMutability": "nonpayable",
953
1089
  "type": "function"
954
1090
  },
955
1091
  {
956
- "constant": true,
957
1092
  "inputs": [
958
1093
  {
959
1094
  "internalType": "address",
960
- "name": "to",
1095
+ "name": "prevOwner",
961
1096
  "type": "address"
962
1097
  },
963
- {
964
- "internalType": "uint256",
965
- "name": "value",
966
- "type": "uint256"
967
- },
968
- {
969
- "internalType": "bytes",
970
- "name": "data",
971
- "type": "bytes"
972
- },
973
- {
974
- "internalType": "enum Enum.Operation",
975
- "name": "operation",
976
- "type": "uint8"
977
- },
978
- {
979
- "internalType": "uint256",
980
- "name": "safeTxGas",
981
- "type": "uint256"
982
- },
983
- {
984
- "internalType": "uint256",
985
- "name": "baseGas",
986
- "type": "uint256"
987
- },
988
- {
989
- "internalType": "uint256",
990
- "name": "gasPrice",
991
- "type": "uint256"
992
- },
993
1098
  {
994
1099
  "internalType": "address",
995
- "name": "gasToken",
1100
+ "name": "oldOwner",
996
1101
  "type": "address"
997
1102
  },
998
1103
  {
999
1104
  "internalType": "address",
1000
- "name": "refundReceiver",
1105
+ "name": "newOwner",
1001
1106
  "type": "address"
1002
- },
1003
- {
1004
- "internalType": "uint256",
1005
- "name": "_nonce",
1006
- "type": "uint256"
1007
1107
  }
1008
1108
  ],
1009
- "name": "getTransactionHash",
1010
- "outputs": [
1011
- {
1012
- "internalType": "bytes32",
1013
- "name": "",
1014
- "type": "bytes32"
1015
- }
1016
- ],
1017
- "payable": false,
1018
- "stateMutability": "view",
1109
+ "name": "swapOwner",
1110
+ "outputs": [],
1111
+ "stateMutability": "nonpayable",
1019
1112
  "type": "function"
1113
+ },
1114
+ {
1115
+ "stateMutability": "payable",
1116
+ "type": "receive"
1020
1117
  }
1021
1118
  ]
1022
1119
  }