Skip to content

Commit 8f368bc

Browse files
authored
Merge pull request #233 from solidstate-network/beacon
Beacon patterns
2 parents 25e7a6c + fe9d763 commit 8f368bc

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+1772
-507
lines changed

abi/Beacon.json

+83
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
[
2+
{
3+
"inputs": [],
4+
"name": "Ownable__NotOwner",
5+
"type": "error"
6+
},
7+
{
8+
"inputs": [],
9+
"name": "Ownable__NotTransitiveOwner",
10+
"type": "error"
11+
},
12+
{
13+
"anonymous": false,
14+
"inputs": [
15+
{
16+
"indexed": true,
17+
"internalType": "address",
18+
"name": "previousOwner",
19+
"type": "address"
20+
},
21+
{
22+
"indexed": true,
23+
"internalType": "address",
24+
"name": "newOwner",
25+
"type": "address"
26+
}
27+
],
28+
"name": "OwnershipTransferred",
29+
"type": "event"
30+
},
31+
{
32+
"inputs": [],
33+
"name": "getImplementation",
34+
"outputs": [
35+
{
36+
"internalType": "address",
37+
"name": "implementation",
38+
"type": "address"
39+
}
40+
],
41+
"stateMutability": "view",
42+
"type": "function"
43+
},
44+
{
45+
"inputs": [],
46+
"name": "owner",
47+
"outputs": [
48+
{
49+
"internalType": "address",
50+
"name": "",
51+
"type": "address"
52+
}
53+
],
54+
"stateMutability": "view",
55+
"type": "function"
56+
},
57+
{
58+
"inputs": [
59+
{
60+
"internalType": "address",
61+
"name": "implementation",
62+
"type": "address"
63+
}
64+
],
65+
"name": "setImplementation",
66+
"outputs": [],
67+
"stateMutability": "nonpayable",
68+
"type": "function"
69+
},
70+
{
71+
"inputs": [
72+
{
73+
"internalType": "address",
74+
"name": "account",
75+
"type": "address"
76+
}
77+
],
78+
"name": "transferOwnership",
79+
"outputs": [],
80+
"stateMutability": "nonpayable",
81+
"type": "function"
82+
}
83+
]

abi/ManagedProxyOwnableInternal.json abi/BeaconInternal.json

-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
[
2-
{
3-
"inputs": [],
4-
"name": "ManagedProxy__FetchImplementationFailed",
5-
"type": "error"
6-
},
72
{
83
"inputs": [],
94
"name": "Ownable__NotOwner",

abi/IManagedProxy.json abi/BeaconProxy.json

-5
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
[
2-
{
3-
"inputs": [],
4-
"name": "ManagedProxy__FetchImplementationFailed",
5-
"type": "error"
6-
},
72
{
83
"inputs": [],
94
"name": "Proxy__ImplementationIsNotContract",

abi/DiamondBeacon.json

+260
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
[
2+
{
3+
"inputs": [],
4+
"name": "DiamondBeacon__InvalidInput",
5+
"type": "error"
6+
},
7+
{
8+
"inputs": [],
9+
"name": "DiamondWritable__InvalidInitializationParameters",
10+
"type": "error"
11+
},
12+
{
13+
"inputs": [],
14+
"name": "DiamondWritable__RemoveTargetNotZeroAddress",
15+
"type": "error"
16+
},
17+
{
18+
"inputs": [],
19+
"name": "DiamondWritable__ReplaceTargetIsIdentical",
20+
"type": "error"
21+
},
22+
{
23+
"inputs": [],
24+
"name": "DiamondWritable__SelectorAlreadyAdded",
25+
"type": "error"
26+
},
27+
{
28+
"inputs": [],
29+
"name": "DiamondWritable__SelectorIsImmutable",
30+
"type": "error"
31+
},
32+
{
33+
"inputs": [],
34+
"name": "DiamondWritable__SelectorNotFound",
35+
"type": "error"
36+
},
37+
{
38+
"inputs": [],
39+
"name": "DiamondWritable__SelectorNotSpecified",
40+
"type": "error"
41+
},
42+
{
43+
"inputs": [],
44+
"name": "DiamondWritable__TargetHasNoCode",
45+
"type": "error"
46+
},
47+
{
48+
"inputs": [],
49+
"name": "Ownable__NotOwner",
50+
"type": "error"
51+
},
52+
{
53+
"inputs": [],
54+
"name": "Ownable__NotTransitiveOwner",
55+
"type": "error"
56+
},
57+
{
58+
"anonymous": false,
59+
"inputs": [
60+
{
61+
"components": [
62+
{
63+
"internalType": "address",
64+
"name": "target",
65+
"type": "address"
66+
},
67+
{
68+
"internalType": "enum IERC2535DiamondCutInternal.FacetCutAction",
69+
"name": "action",
70+
"type": "uint8"
71+
},
72+
{
73+
"internalType": "bytes4[]",
74+
"name": "selectors",
75+
"type": "bytes4[]"
76+
}
77+
],
78+
"indexed": false,
79+
"internalType": "struct IERC2535DiamondCutInternal.FacetCut[]",
80+
"name": "facetCuts",
81+
"type": "tuple[]"
82+
},
83+
{
84+
"indexed": false,
85+
"internalType": "address",
86+
"name": "target",
87+
"type": "address"
88+
},
89+
{
90+
"indexed": false,
91+
"internalType": "bytes",
92+
"name": "data",
93+
"type": "bytes"
94+
}
95+
],
96+
"name": "DiamondCut",
97+
"type": "event"
98+
},
99+
{
100+
"anonymous": false,
101+
"inputs": [
102+
{
103+
"indexed": true,
104+
"internalType": "address",
105+
"name": "previousOwner",
106+
"type": "address"
107+
},
108+
{
109+
"indexed": true,
110+
"internalType": "address",
111+
"name": "newOwner",
112+
"type": "address"
113+
}
114+
],
115+
"name": "OwnershipTransferred",
116+
"type": "event"
117+
},
118+
{
119+
"inputs": [
120+
{
121+
"components": [
122+
{
123+
"internalType": "address",
124+
"name": "target",
125+
"type": "address"
126+
},
127+
{
128+
"internalType": "enum IERC2535DiamondCutInternal.FacetCutAction",
129+
"name": "action",
130+
"type": "uint8"
131+
},
132+
{
133+
"internalType": "bytes4[]",
134+
"name": "selectors",
135+
"type": "bytes4[]"
136+
}
137+
],
138+
"internalType": "struct IERC2535DiamondCutInternal.FacetCut[]",
139+
"name": "facetCuts",
140+
"type": "tuple[]"
141+
},
142+
{
143+
"internalType": "address",
144+
"name": "target",
145+
"type": "address"
146+
},
147+
{
148+
"internalType": "bytes",
149+
"name": "data",
150+
"type": "bytes"
151+
}
152+
],
153+
"name": "diamondCut",
154+
"outputs": [],
155+
"stateMutability": "nonpayable",
156+
"type": "function"
157+
},
158+
{
159+
"inputs": [
160+
{
161+
"internalType": "bytes4",
162+
"name": "selector",
163+
"type": "bytes4"
164+
}
165+
],
166+
"name": "facetAddress",
167+
"outputs": [
168+
{
169+
"internalType": "address",
170+
"name": "facet",
171+
"type": "address"
172+
}
173+
],
174+
"stateMutability": "view",
175+
"type": "function"
176+
},
177+
{
178+
"inputs": [],
179+
"name": "facetAddresses",
180+
"outputs": [
181+
{
182+
"internalType": "address[]",
183+
"name": "addresses",
184+
"type": "address[]"
185+
}
186+
],
187+
"stateMutability": "view",
188+
"type": "function"
189+
},
190+
{
191+
"inputs": [
192+
{
193+
"internalType": "address",
194+
"name": "facet",
195+
"type": "address"
196+
}
197+
],
198+
"name": "facetFunctionSelectors",
199+
"outputs": [
200+
{
201+
"internalType": "bytes4[]",
202+
"name": "selectors",
203+
"type": "bytes4[]"
204+
}
205+
],
206+
"stateMutability": "view",
207+
"type": "function"
208+
},
209+
{
210+
"inputs": [],
211+
"name": "facets",
212+
"outputs": [
213+
{
214+
"components": [
215+
{
216+
"internalType": "address",
217+
"name": "target",
218+
"type": "address"
219+
},
220+
{
221+
"internalType": "bytes4[]",
222+
"name": "selectors",
223+
"type": "bytes4[]"
224+
}
225+
],
226+
"internalType": "struct IERC2535DiamondLoupeInternal.Facet[]",
227+
"name": "diamondFacets",
228+
"type": "tuple[]"
229+
}
230+
],
231+
"stateMutability": "view",
232+
"type": "function"
233+
},
234+
{
235+
"inputs": [],
236+
"name": "owner",
237+
"outputs": [
238+
{
239+
"internalType": "address",
240+
"name": "",
241+
"type": "address"
242+
}
243+
],
244+
"stateMutability": "view",
245+
"type": "function"
246+
},
247+
{
248+
"inputs": [
249+
{
250+
"internalType": "address",
251+
"name": "account",
252+
"type": "address"
253+
}
254+
],
255+
"name": "transferOwnership",
256+
"outputs": [],
257+
"stateMutability": "nonpayable",
258+
"type": "function"
259+
}
260+
]

0 commit comments

Comments
 (0)