@safe-global/safe-deployments 1.20.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 (62) hide show
  1. package/LICENSE +9 -0
  2. package/README.md +91 -0
  3. package/dist/assets/v1.0.0/gnosis_safe.json +419 -0
  4. package/dist/assets/v1.0.0/proxy_factory.json +105 -0
  5. package/dist/assets/v1.1.1/default_callback_handler.json +206 -0
  6. package/dist/assets/v1.1.1/gnosis_safe.json +995 -0
  7. package/dist/assets/v1.1.1/multi_send.json +39 -0
  8. package/dist/assets/v1.1.1/proxy_factory.json +185 -0
  9. package/dist/assets/v1.2.0/gnosis_safe.json +1016 -0
  10. package/dist/assets/v1.3.0/compatibility_fallback_handler.json +436 -0
  11. package/dist/assets/v1.3.0/create_call.json +179 -0
  12. package/dist/assets/v1.3.0/gnosis_safe.json +1144 -0
  13. package/dist/assets/v1.3.0/gnosis_safe_l2.json +1249 -0
  14. package/dist/assets/v1.3.0/multi_send.json +130 -0
  15. package/dist/assets/v1.3.0/multi_send_call_only.json +126 -0
  16. package/dist/assets/v1.3.0/proxy_factory.json +274 -0
  17. package/dist/assets/v1.3.0/sign_message_lib.json +157 -0
  18. package/dist/factories.d.ts +2 -0
  19. package/dist/factories.js +18 -0
  20. package/dist/handler.d.ts +4 -0
  21. package/dist/handler.js +33 -0
  22. package/dist/index.d.ts +5 -0
  23. package/dist/index.js +17 -0
  24. package/dist/libs.d.ts +5 -0
  25. package/dist/libs.js +43 -0
  26. package/dist/safes.d.ts +5 -0
  27. package/dist/safes.js +28 -0
  28. package/dist/types.d.ts +13 -0
  29. package/dist/types.js +2 -0
  30. package/dist/utils.d.ts +2 -0
  31. package/dist/utils.js +18 -0
  32. package/package.json +56 -0
  33. package/src/__tests__/factories.test.ts +13 -0
  34. package/src/__tests__/handler.test.ts +31 -0
  35. package/src/__tests__/libs.test.ts +39 -0
  36. package/src/__tests__/safes.test.ts +27 -0
  37. package/src/__tests__/utilts.test.ts +339 -0
  38. package/src/assets/v1.0.0/gnosis_safe.json +419 -0
  39. package/src/assets/v1.0.0/proxy_factory.json +105 -0
  40. package/src/assets/v1.1.1/create_and_add_modules.json +49 -0
  41. package/src/assets/v1.1.1/create_call.json +84 -0
  42. package/src/assets/v1.1.1/default_callback_handler.json +206 -0
  43. package/src/assets/v1.1.1/gnosis_safe.json +995 -0
  44. package/src/assets/v1.1.1/multi_send.json +39 -0
  45. package/src/assets/v1.1.1/proxy_factory.json +185 -0
  46. package/src/assets/v1.2.0/gnosis_safe.json +1016 -0
  47. package/src/assets/v1.3.0/compatibility_fallback_handler.json +436 -0
  48. package/src/assets/v1.3.0/create_call.json +179 -0
  49. package/src/assets/v1.3.0/gnosis_safe.json +1144 -0
  50. package/src/assets/v1.3.0/gnosis_safe_l2.json +1249 -0
  51. package/src/assets/v1.3.0/multi_send.json +130 -0
  52. package/src/assets/v1.3.0/multi_send_call_only.json +126 -0
  53. package/src/assets/v1.3.0/proxy_factory.json +274 -0
  54. package/src/assets/v1.3.0/sign_message_lib.json +157 -0
  55. package/src/assets/v1.3.0/simulate_tx_accessor.json +162 -0
  56. package/src/factories.ts +14 -0
  57. package/src/handler.ts +31 -0
  58. package/src/index.ts +5 -0
  59. package/src/libs.ts +42 -0
  60. package/src/safes.ts +25 -0
  61. package/src/types.ts +14 -0
  62. package/src/utils.ts +12 -0
@@ -0,0 +1,157 @@
1
+ {
2
+ "defaultAddress": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
3
+ "contractName": "SignMessageLib",
4
+ "version": "1.3.0",
5
+ "released": true,
6
+ "networkAddresses": {
7
+ "1": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
8
+ "3": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
9
+ "4": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
10
+ "5": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
11
+ "10": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
12
+ "11": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
13
+ "12": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
14
+ "25": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
15
+ "28": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
16
+ "40": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
17
+ "41": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
18
+ "42": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
19
+ "50": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
20
+ "51": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
21
+ "56": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
22
+ "61": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
23
+ "63": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
24
+ "69": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
25
+ "82": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
26
+ "83": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
27
+ "97": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
28
+ "100": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
29
+ "106": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
30
+ "108": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
31
+ "111": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
32
+ "122": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
33
+ "123": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
34
+ "137": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
35
+ "246": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
36
+ "250": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
37
+ "288": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
38
+ "300": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
39
+ "321": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
40
+ "322": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
41
+ "336": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
42
+ "338": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
43
+ "420": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
44
+ "588": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
45
+ "592": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
46
+ "595": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
47
+ "599": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
48
+ "686": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
49
+ "787": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
50
+ "1001": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
51
+ "1008": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
52
+ "1088": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
53
+ "1284": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
54
+ "1285": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
55
+ "1287": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
56
+ "1294": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
57
+ "1807": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
58
+ "1984": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
59
+ "2001": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
60
+ "2002": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
61
+ "2008": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
62
+ "2019": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
63
+ "2020": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
64
+ "2221": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
65
+ "2222": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
66
+ "4002": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
67
+ "4689": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
68
+ "4918": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
69
+ "4919": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
70
+ "7341": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
71
+ "7700": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
72
+ "8217": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
73
+ "9000": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
74
+ "9001": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
75
+ "9728": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
76
+ "10000": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
77
+ "10001": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
78
+ "10200": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
79
+ "11235": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
80
+ "11437": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
81
+ "12357": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
82
+ "42161": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
83
+ "42170": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
84
+ "42220": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
85
+ "43113": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
86
+ "43114": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
87
+ "43288": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
88
+ "44787": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
89
+ "45000": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
90
+ "47805": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
91
+ "54211": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
92
+ "56288": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
93
+ "71401": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
94
+ "71402": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
95
+ "73799": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
96
+ "80001": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
97
+ "84531": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
98
+ "200101": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
99
+ "200202": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
100
+ "421611": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
101
+ "421613": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
102
+ "11155111": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
103
+ "1313161554": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
104
+ "1313161555": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
105
+ "1666600000": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
106
+ "1666700000": "0x98FFBBF51bb33A056B08ddf711f289936AafF717",
107
+ "11297108099": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2",
108
+ "11297108109": "0xA65387F16B013cf2Af4605Ad8aA5ec25a2cbA3a2"
109
+ },
110
+ "abi": [
111
+ {
112
+ "anonymous": false,
113
+ "inputs": [
114
+ {
115
+ "indexed": true,
116
+ "internalType": "bytes32",
117
+ "name": "msgHash",
118
+ "type": "bytes32"
119
+ }
120
+ ],
121
+ "name": "SignMsg",
122
+ "type": "event"
123
+ },
124
+ {
125
+ "inputs": [
126
+ {
127
+ "internalType": "bytes",
128
+ "name": "message",
129
+ "type": "bytes"
130
+ }
131
+ ],
132
+ "name": "getMessageHash",
133
+ "outputs": [
134
+ {
135
+ "internalType": "bytes32",
136
+ "name": "",
137
+ "type": "bytes32"
138
+ }
139
+ ],
140
+ "stateMutability": "view",
141
+ "type": "function"
142
+ },
143
+ {
144
+ "inputs": [
145
+ {
146
+ "internalType": "bytes",
147
+ "name": "_data",
148
+ "type": "bytes"
149
+ }
150
+ ],
151
+ "name": "signMessage",
152
+ "outputs": [],
153
+ "stateMutability": "nonpayable",
154
+ "type": "function"
155
+ }
156
+ ]
157
+ }
@@ -0,0 +1,162 @@
1
+ {
2
+ "defaultAddress": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
3
+ "released": true,
4
+ "contractName": "SimulateTxAccesor",
5
+ "version": "1.3.0",
6
+ "networkAddresses": {
7
+ "1": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
8
+ "3": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
9
+ "4": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
10
+ "5": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
11
+ "10": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
12
+ "11": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
13
+ "12": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
14
+ "25": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
15
+ "28": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
16
+ "40": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
17
+ "41": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
18
+ "42": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
19
+ "50": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
20
+ "51": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
21
+ "56": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
22
+ "61": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
23
+ "63": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
24
+ "69": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
25
+ "82": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
26
+ "83": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
27
+ "97": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
28
+ "100": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
29
+ "106": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
30
+ "108": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
31
+ "111": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
32
+ "122": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
33
+ "123": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
34
+ "137": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
35
+ "246": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
36
+ "250": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
37
+ "288": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
38
+ "300": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
39
+ "321": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
40
+ "322": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
41
+ "336": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
42
+ "338": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
43
+ "420": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
44
+ "588": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
45
+ "592": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
46
+ "595": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
47
+ "599": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
48
+ "686": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
49
+ "787": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
50
+ "1001": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
51
+ "1008": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
52
+ "1088": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
53
+ "1284": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
54
+ "1285": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
55
+ "1287": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
56
+ "1294": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
57
+ "1807": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
58
+ "1984": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
59
+ "2001": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
60
+ "2002": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
61
+ "2008": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
62
+ "2019": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
63
+ "2020": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
64
+ "2221": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
65
+ "2222": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
66
+ "4002": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
67
+ "4689": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
68
+ "4918": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
69
+ "4919": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
70
+ "7341": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
71
+ "7700": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
72
+ "8217": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
73
+ "9000": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
74
+ "9001": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
75
+ "9728": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
76
+ "10000": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
77
+ "10001": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
78
+ "10200": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
79
+ "11235": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
80
+ "11437": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
81
+ "12357": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
82
+ "42161": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
83
+ "42170": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
84
+ "42220": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
85
+ "43113": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
86
+ "43114": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
87
+ "43288": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
88
+ "44787": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
89
+ "45000": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
90
+ "47805": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
91
+ "54211": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
92
+ "56288": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
93
+ "71401": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
94
+ "71402": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
95
+ "73799": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
96
+ "80001": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
97
+ "84531": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
98
+ "200101": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
99
+ "200202": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
100
+ "333999": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
101
+ "421611": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
102
+ "421613": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
103
+ "11155111": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
104
+ "1313161554": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
105
+ "1313161555": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
106
+ "1666600000": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
107
+ "1666700000": "0x727a77a074D1E6c4530e814F89E618a3298FC044",
108
+ "11297108099": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da",
109
+ "11297108109": "0x59AD6735bCd8152B84860Cb256dD9e96b85F69Da"
110
+ },
111
+ "abi": [
112
+ {
113
+ "inputs": [],
114
+ "stateMutability": "nonpayable",
115
+ "type": "constructor"
116
+ },
117
+ {
118
+ "inputs": [
119
+ {
120
+ "internalType": "address",
121
+ "name": "to",
122
+ "type": "address"
123
+ },
124
+ {
125
+ "internalType": "uint256",
126
+ "name": "value",
127
+ "type": "uint256"
128
+ },
129
+ {
130
+ "internalType": "bytes",
131
+ "name": "data",
132
+ "type": "bytes"
133
+ },
134
+ {
135
+ "internalType": "enum Enum.Operation",
136
+ "name": "operation",
137
+ "type": "uint8"
138
+ }
139
+ ],
140
+ "name": "simulate",
141
+ "outputs": [
142
+ {
143
+ "internalType": "uint256",
144
+ "name": "estimate",
145
+ "type": "uint256"
146
+ },
147
+ {
148
+ "internalType": "bool",
149
+ "name": "success",
150
+ "type": "bool"
151
+ },
152
+ {
153
+ "internalType": "bytes",
154
+ "name": "returnData",
155
+ "type": "bytes"
156
+ }
157
+ ],
158
+ "stateMutability": "nonpayable",
159
+ "type": "function"
160
+ }
161
+ ]
162
+ }
@@ -0,0 +1,14 @@
1
+ import ProxyFactory100 from './assets/v1.0.0/proxy_factory.json'
2
+ import ProxyFactory111 from './assets/v1.1.1/proxy_factory.json'
3
+ import ProxyFactory130 from './assets/v1.3.0/proxy_factory.json'
4
+ import { DeploymentFilter, SingletonDeployment } from './types'
5
+ import { findDeployment } from './utils'
6
+
7
+ // This is a sorted array (newest to oldest)
8
+ const factoryDeployments: SingletonDeployment[] = [
9
+ ProxyFactory130, ProxyFactory111, ProxyFactory100
10
+ ]
11
+
12
+ export const getProxyFactoryDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
13
+ return findDeployment(filter, factoryDeployments)
14
+ }
package/src/handler.ts ADDED
@@ -0,0 +1,31 @@
1
+ import DefaultCallbackHandler130 from './assets/v1.1.1/default_callback_handler.json'
2
+ import CompatibilityFallbackHandler from './assets/v1.3.0/compatibility_fallback_handler.json'
3
+ import { DeploymentFilter, SingletonDeployment } from './types'
4
+ import { findDeployment } from './utils'
5
+
6
+ // This is a sorted array (by preference)
7
+ const defaultCallbackHandlerDeployments: SingletonDeployment[] = [
8
+ DefaultCallbackHandler130
9
+ ]
10
+
11
+ export const getDefaultCallbackHandlerDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
12
+ return findDeployment(filter, defaultCallbackHandlerDeployments)
13
+ }
14
+
15
+ // This is a sorted array (by preference)
16
+ const compatFallbackHandlerDeployments: SingletonDeployment[] = [
17
+ CompatibilityFallbackHandler
18
+ ]
19
+
20
+ export const getCompatibilityFallbackHandlerDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
21
+ return findDeployment(filter, compatFallbackHandlerDeployments)
22
+ }
23
+
24
+ // This is a sorted array (by preference)
25
+ const fallbackHandlerDeployments: SingletonDeployment[] = [
26
+ CompatibilityFallbackHandler, DefaultCallbackHandler130
27
+ ]
28
+
29
+ export const getFallbackHandlerDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
30
+ return findDeployment(filter, fallbackHandlerDeployments)
31
+ }
package/src/index.ts ADDED
@@ -0,0 +1,5 @@
1
+ export * from './types'
2
+ export * from './safes'
3
+ export * from './factories'
4
+ export * from './libs'
5
+ export * from './handler'
package/src/libs.ts ADDED
@@ -0,0 +1,42 @@
1
+ import CreateCall130 from './assets/v1.3.0/create_call.json'
2
+ import MultiSend111 from './assets/v1.1.1/multi_send.json'
3
+ import MultiSend130 from './assets/v1.3.0/multi_send.json'
4
+ import MultiSendCallOnly130 from './assets/v1.3.0/multi_send_call_only.json'
5
+ import SignMessageLib130 from './assets/v1.3.0/sign_message_lib.json'
6
+ import { DeploymentFilter, SingletonDeployment } from './types'
7
+ import { findDeployment } from './utils'
8
+
9
+ // This is a sorted array (by preference, currently we use 111 in most cases)
10
+ const multiSendDeployments: SingletonDeployment[] = [
11
+ MultiSend130, MultiSend111
12
+ ]
13
+
14
+ export const getMultiSendDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
15
+ return findDeployment(filter, multiSendDeployments)
16
+ }
17
+
18
+ // This is a sorted array (by preference)
19
+ const multiSendCallOnlyDeployments: SingletonDeployment[] = [
20
+ MultiSendCallOnly130
21
+ ]
22
+
23
+ export const getMultiSendCallOnlyDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
24
+ return findDeployment(filter, multiSendCallOnlyDeployments)
25
+ }
26
+
27
+ // This is a sorted array (by preference)
28
+ const createCallDeployments: SingletonDeployment[] = [
29
+ CreateCall130
30
+ ]
31
+
32
+ export const getCreateCallDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
33
+ return findDeployment(filter, createCallDeployments)
34
+ }
35
+
36
+ const signMessageLibDeployments: SingletonDeployment[] = [
37
+ SignMessageLib130
38
+ ]
39
+
40
+ export const getSignMessageLibDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
41
+ return findDeployment(filter, signMessageLibDeployments)
42
+ }
package/src/safes.ts ADDED
@@ -0,0 +1,25 @@
1
+ import GnosisSafeL2130 from './assets/v1.3.0/gnosis_safe_l2.json'
2
+ import GnosisSafe130 from './assets/v1.3.0/gnosis_safe.json'
3
+ import GnosisSafe120 from './assets/v1.2.0/gnosis_safe.json'
4
+ import GnosisSafe111 from './assets/v1.1.1/gnosis_safe.json'
5
+ import GnosisSafe100 from './assets/v1.0.0/gnosis_safe.json'
6
+ import { DeploymentFilter, SingletonDeployment } from './types'
7
+ import { findDeployment } from './utils'
8
+
9
+ // This is a sorted array (newest to oldest), exported for tests
10
+ export const _safeDeployments: SingletonDeployment[] = [
11
+ GnosisSafe130, GnosisSafe120, GnosisSafe111, GnosisSafe100
12
+ ]
13
+
14
+ export const getSafeSingletonDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
15
+ return findDeployment(filter, _safeDeployments)
16
+ }
17
+
18
+ // This is a sorted array (newest to oldest), exported for tests
19
+ export const _safeL2Deployments: SingletonDeployment[] = [
20
+ GnosisSafeL2130
21
+ ]
22
+
23
+ export const getSafeL2SingletonDeployment = (filter?: DeploymentFilter): SingletonDeployment | undefined => {
24
+ return findDeployment(filter, _safeL2Deployments)
25
+ }
package/src/types.ts ADDED
@@ -0,0 +1,14 @@
1
+ export interface SingletonDeployment {
2
+ defaultAddress: string,
3
+ version: string,
4
+ abi: any[],
5
+ networkAddresses: Record<string, string>,
6
+ contractName: string,
7
+ released: boolean
8
+ }
9
+
10
+ export interface DeploymentFilter {
11
+ version?: string,
12
+ released?: boolean,
13
+ network?: string
14
+ }
package/src/utils.ts ADDED
@@ -0,0 +1,12 @@
1
+ import { DeploymentFilter, SingletonDeployment } from './types'
2
+ import semverSatisfies from 'semver/functions/satisfies'
3
+
4
+ const DEFAULT_FILTER: DeploymentFilter = { released: true }
5
+
6
+ export const findDeployment = (criteria: DeploymentFilter = DEFAULT_FILTER, deployments: SingletonDeployment[]): SingletonDeployment | undefined =>
7
+ deployments.find((deployment) => {
8
+ if (criteria.version && !semverSatisfies(deployment.version, criteria.version)) return false
9
+ if (typeof criteria.released === 'boolean' && deployment.released != criteria.released) return false
10
+ if (criteria.network && !deployment.networkAddresses[criteria.network]) return false
11
+ return true
12
+ })