UNPKG

22.4 kBJSONView Raw
1{
2 "_format": "hh-sol-artifact-1",
3 "contractName": "IPFSMetadataMembershipContract",
4 "sourceName": "contracts/membership/IPFSMetadataMembershipContract.sol",
5 "abi": [
6 {
7 "inputs": [],
8 "stateMutability": "nonpayable",
9 "type": "constructor"
10 },
11 {
12 "anonymous": false,
13 "inputs": [
14 {
15 "indexed": true,
16 "internalType": "address",
17 "name": "owner",
18 "type": "address"
19 },
20 {
21 "indexed": true,
22 "internalType": "address",
23 "name": "target",
24 "type": "address"
25 }
26 ],
27 "name": "MembershipAdded",
28 "type": "event"
29 },
30 {
31 "anonymous": false,
32 "inputs": [
33 {
34 "indexed": true,
35 "internalType": "address",
36 "name": "owner",
37 "type": "address"
38 },
39 {
40 "indexed": true,
41 "internalType": "address",
42 "name": "target",
43 "type": "address"
44 }
45 ],
46 "name": "MembershipRemoved",
47 "type": "event"
48 },
49 {
50 "inputs": [
51 {
52 "internalType": "address",
53 "name": "customerAddress",
54 "type": "address"
55 },
56 {
57 "internalType": "string",
58 "name": "metadata",
59 "type": "string"
60 },
61 {
62 "internalType": "string",
63 "name": "file",
64 "type": "string"
65 }
66 ],
67 "name": "addMembership",
68 "outputs": [],
69 "stateMutability": "nonpayable",
70 "type": "function"
71 },
72 {
73 "inputs": [
74 {
75 "internalType": "address",
76 "name": "customerAddress",
77 "type": "address"
78 },
79 {
80 "internalType": "string",
81 "name": "metadata",
82 "type": "string"
83 }
84 ],
85 "name": "addMembership",
86 "outputs": [],
87 "stateMutability": "nonpayable",
88 "type": "function"
89 },
90 {
91 "inputs": [
92 {
93 "internalType": "address",
94 "name": "newOwner",
95 "type": "address"
96 }
97 ],
98 "name": "addOwner",
99 "outputs": [],
100 "stateMutability": "nonpayable",
101 "type": "function"
102 },
103 {
104 "inputs": [
105 {
106 "internalType": "address",
107 "name": "customerAddress",
108 "type": "address"
109 }
110 ],
111 "name": "confirmMembership",
112 "outputs": [
113 {
114 "internalType": "bool",
115 "name": "",
116 "type": "bool"
117 }
118 ],
119 "stateMutability": "view",
120 "type": "function"
121 },
122 {
123 "inputs": [],
124 "name": "getDescription",
125 "outputs": [
126 {
127 "internalType": "string",
128 "name": "",
129 "type": "string"
130 }
131 ],
132 "stateMutability": "view",
133 "type": "function"
134 },
135 {
136 "inputs": [
137 {
138 "internalType": "address",
139 "name": "customerAddress",
140 "type": "address"
141 }
142 ],
143 "name": "getMembershipFile",
144 "outputs": [
145 {
146 "internalType": "string",
147 "name": "",
148 "type": "string"
149 }
150 ],
151 "stateMutability": "view",
152 "type": "function"
153 },
154 {
155 "inputs": [
156 {
157 "internalType": "address",
158 "name": "customerAddress",
159 "type": "address"
160 }
161 ],
162 "name": "getMembershipMetadata",
163 "outputs": [
164 {
165 "internalType": "string",
166 "name": "",
167 "type": "string"
168 }
169 ],
170 "stateMutability": "view",
171 "type": "function"
172 },
173 {
174 "inputs": [],
175 "name": "getOwners",
176 "outputs": [
177 {
178 "internalType": "address[]",
179 "name": "",
180 "type": "address[]"
181 }
182 ],
183 "stateMutability": "view",
184 "type": "function"
185 },
186 {
187 "inputs": [],
188 "name": "getTrustedForwarder",
189 "outputs": [
190 {
191 "internalType": "address",
192 "name": "forwarder",
193 "type": "address"
194 }
195 ],
196 "stateMutability": "view",
197 "type": "function"
198 },
199 {
200 "inputs": [],
201 "name": "getVersion",
202 "outputs": [
203 {
204 "internalType": "string",
205 "name": "",
206 "type": "string"
207 }
208 ],
209 "stateMutability": "pure",
210 "type": "function"
211 },
212 {
213 "inputs": [
214 {
215 "internalType": "address",
216 "name": "addr",
217 "type": "address"
218 }
219 ],
220 "name": "isOwner",
221 "outputs": [
222 {
223 "internalType": "bool",
224 "name": "",
225 "type": "bool"
226 }
227 ],
228 "stateMutability": "view",
229 "type": "function"
230 },
231 {
232 "inputs": [
233 {
234 "internalType": "address",
235 "name": "forwarder",
236 "type": "address"
237 }
238 ],
239 "name": "isTrustedForwarder",
240 "outputs": [
241 {
242 "internalType": "bool",
243 "name": "",
244 "type": "bool"
245 }
246 ],
247 "stateMutability": "view",
248 "type": "function"
249 },
250 {
251 "inputs": [
252 {
253 "internalType": "address",
254 "name": "customerAddress",
255 "type": "address"
256 }
257 ],
258 "name": "removeMembership",
259 "outputs": [],
260 "stateMutability": "nonpayable",
261 "type": "function"
262 },
263 {
264 "inputs": [
265 {
266 "internalType": "address",
267 "name": "owner",
268 "type": "address"
269 }
270 ],
271 "name": "removeOwner",
272 "outputs": [],
273 "stateMutability": "nonpayable",
274 "type": "function"
275 },
276 {
277 "inputs": [
278 {
279 "internalType": "string",
280 "name": "description",
281 "type": "string"
282 }
283 ],
284 "name": "setDescription",
285 "outputs": [],
286 "stateMutability": "nonpayable",
287 "type": "function"
288 },
289 {
290 "inputs": [
291 {
292 "internalType": "address",
293 "name": "_forwarder",
294 "type": "address"
295 }
296 ],
297 "name": "setTrustedForwarder",
298 "outputs": [],
299 "stateMutability": "nonpayable",
300 "type": "function"
301 }
302 ],
303 "bytecode": "0x608060405234801561001057600080fd5b5061002161001c610031565b610065565b61002c61001c610031565b610169565b60006014361080159061004e57506003546001600160a01b031633145b15610060575060131936013560601c90565b503390565b6001541580159061008657503360009081526020819052604090205460ff16155b156100e25760405162461bcd60e51b815260206004820152602260248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604482015261371760f11b606482015260840160405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff16156101065750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b610ee2806101786000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c80635b64bed011610097578063b3d6818111610066578063b3d6818114610225578063ce1b815f14610238578063da74222814610253578063f17fa44e1461026657600080fd5b80635b64bed0146101d75780637065cb48146101ea57806390c3f38f146101fd578063a0e67e2b1461021057600080fd5b80631f45405e116100d35780631f45405e146101535780632f54bf6e14610166578063502ccb09146101a2578063572b6c05146101b557600080fd5b80630d8e6e2c146101055780630e8ce1c514610123578063173825d9146101365780631a0925411461014b575b600080fd5b61010d610292565b60405161011a9190610d58565b60405180910390f35b61010d610131366004610bd2565b6102b2565b610149610144366004610bd2565b6103ec565b005b61010d6104b2565b610149610161366004610c3f565b610544565b610192610174366004610bd2565b6001600160a01b031660009081526020819052604090205460ff1690565b604051901515815260200161011a565b6101496101b0366004610bf3565b6105af565b6101926101c3366004610bd2565b6003546001600160a01b0391821691161490565b61010d6101e5366004610bd2565b61064c565b6101496101f8366004610bd2565b610701565b61014961020b366004610cd0565b6107c6565b610218610804565b60405161011a9190610d0b565b610149610233366004610bd2565b610865565b6003546040516001600160a01b03909116815260200161011a565b610149610261366004610bd2565b6108d6565b610192610274366004610bd2565b6001600160a01b031660009081526004602052604090205460ff1690565b6060604051806060016040528060268152602001610e8760269139905090565b6040516378bfd22760e11b81526001600160a01b0382166004820152606090309063f17fa44e9060240160206040518083038186803b1580156102f457600080fd5b505afa158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032c9190610cb0565b61034457505060408051602081019091526000815290565b6001600160a01b0382166000908152600660205260409020805461036790610e04565b80601f016020809104026020016040519081016040528092919081815260200182805461039390610e04565b80156103e05780601f106103b5576101008083540402835291602001916103e0565b820191906000526020600020905b8154815290600101906020018083116103c357829003601f168201915b50505050509050919050565b6103f761017461091b565b61041c5760405162461bcd60e51b815260040161041390610dab565b60405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff166104845760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610413565b6001600160a01b0381166000908152602081905260409020805460ff191690556104af60018261094f565b50565b6060600280546104c190610e04565b80601f01602080910402602001604051908101604052809291908181526020018280546104ed90610e04565b801561053a5780601f1061050f5761010080835404028352916020019161053a565b820191906000526020600020905b81548152906001019060200180831161051d57829003601f168201915b5050505050905090565b6001600160a01b0383166000908152600460209081526040808320805460ff1916600117905560058252909120835161057f92850190610a96565b506001600160a01b038316600090815260066020908152604090912082516105a992840190610a96565b50505050565b6105ba61017461091b565b6105d65760405162461bcd60e51b815260040161041390610dab565b6001600160a01b0382166000908152600460209081526040808320805460ff1916600117905560058252909120825161061192840190610a96565b506040516001600160a01b0383169033907fce83807ca74d689869c29adbce77172c8a762f90e26450adebe0a2ec29c80c2b90600090a35050565b6040516378bfd22760e11b81526001600160a01b0382166004820152606090309063f17fa44e9060240160206040518083038186803b15801561068e57600080fd5b505afa1580156106a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c69190610cb0565b6106de57505060408051602081019091526000815290565b6001600160a01b0382166000908152600560205260409020805461036790610e04565b6001541580159061072257503360009081526020819052604090205460ff16155b1561073f5760405162461bcd60e51b815260040161041390610dab565b6001600160a01b03811660009081526020819052604090205460ff16156107635750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b6107d161017461091b565b6107ed5760405162461bcd60e51b815260040161041390610dab565b8051610800906002906020840190610a96565b5050565b6060600180548060200260200160405190810160405280929190818152602001828054801561053a57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161083e575050505050905090565b61087061017461091b565b61088c5760405162461bcd60e51b815260040161041390610dab565b6001600160a01b038116600081815260046020526040808220805460ff191690555133917f153a07e9ccc07353bbcd9c48710cd8ff1be4828e16589d8aa5f708d24ba1954691a350565b6108e161017461091b565b6108fd5760405162461bcd60e51b815260040161041390610dab565b600380546001600160a01b0319166001600160a01b03831617905550565b60006014361080159061093857506003546001600160a01b031633145b1561094a575060131936013560601c90565b503390565b60005b8254811015610a9157816001600160a01b031683828154811061098557634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610a7f57825483906109b090600190610ded565b815481106109ce57634e487b7160e01b600052603260045260246000fd5b9060005260206000200160009054906101000a90046001600160a01b0316838281548110610a0c57634e487b7160e01b600052603260045260246000fd5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555082805480610a5857634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80610a8981610e3f565b915050610952565b505050565b828054610aa290610e04565b90600052602060002090601f016020900481019282610ac45760008555610b0a565b82601f10610add57805160ff1916838001178555610b0a565b82800160010185558215610b0a579182015b82811115610b0a578251825591602001919060010190610aef565b50610b16929150610b1a565b5090565b5b80821115610b165760008155600101610b1b565b80356001600160a01b0381168114610b4657600080fd5b919050565b600082601f830112610b5b578081fd5b813567ffffffffffffffff80821115610b7657610b76610e70565b604051601f8301601f19908116603f01168101908282118183101715610b9e57610b9e610e70565b81604052838152866020858801011115610bb6578485fd5b8360208701602083013792830160200193909352509392505050565b600060208284031215610be3578081fd5b610bec82610b2f565b9392505050565b60008060408385031215610c05578081fd5b610c0e83610b2f565b9150602083013567ffffffffffffffff811115610c29578182fd5b610c3585828601610b4b565b9150509250929050565b600080600060608486031215610c53578081fd5b610c5c84610b2f565b9250602084013567ffffffffffffffff80821115610c78578283fd5b610c8487838801610b4b565b93506040860135915080821115610c99578283fd5b50610ca686828701610b4b565b9150509250925092565b600060208284031215610cc1578081fd5b81518015158114610bec578182fd5b600060208284031215610ce1578081fd5b813567ffffffffffffffff811115610cf7578182fd5b610d0384828501610b4b565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015610d4c5783516001600160a01b031683529284019291840191600101610d27565b50909695505050505050565b6000602080835283518082850152825b81811015610d8457858101830151858201604001528201610d68565b81811115610d955783604083870101525b50601f01601f1916929092016040019392505050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b600082821015610dff57610dff610e5a565b500390565b600181811c90821680610e1857607f821691505b60208210811415610e3957634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415610e5357610e53610e5a565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfe495046534d657461646174614d656d62657273686970436f6e7472616374207620302e312e30a26469706673582212205a214af57c1c38774b65cff0714ed2737d76bba9804634c57cd4bff2a56f196a64736f6c63430008040033",
304 "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101005760003560e01c80635b64bed011610097578063b3d6818111610066578063b3d6818114610225578063ce1b815f14610238578063da74222814610253578063f17fa44e1461026657600080fd5b80635b64bed0146101d75780637065cb48146101ea57806390c3f38f146101fd578063a0e67e2b1461021057600080fd5b80631f45405e116100d35780631f45405e146101535780632f54bf6e14610166578063502ccb09146101a2578063572b6c05146101b557600080fd5b80630d8e6e2c146101055780630e8ce1c514610123578063173825d9146101365780631a0925411461014b575b600080fd5b61010d610292565b60405161011a9190610d58565b60405180910390f35b61010d610131366004610bd2565b6102b2565b610149610144366004610bd2565b6103ec565b005b61010d6104b2565b610149610161366004610c3f565b610544565b610192610174366004610bd2565b6001600160a01b031660009081526020819052604090205460ff1690565b604051901515815260200161011a565b6101496101b0366004610bf3565b6105af565b6101926101c3366004610bd2565b6003546001600160a01b0391821691161490565b61010d6101e5366004610bd2565b61064c565b6101496101f8366004610bd2565b610701565b61014961020b366004610cd0565b6107c6565b610218610804565b60405161011a9190610d0b565b610149610233366004610bd2565b610865565b6003546040516001600160a01b03909116815260200161011a565b610149610261366004610bd2565b6108d6565b610192610274366004610bd2565b6001600160a01b031660009081526004602052604090205460ff1690565b6060604051806060016040528060268152602001610e8760269139905090565b6040516378bfd22760e11b81526001600160a01b0382166004820152606090309063f17fa44e9060240160206040518083038186803b1580156102f457600080fd5b505afa158015610308573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061032c9190610cb0565b61034457505060408051602081019091526000815290565b6001600160a01b0382166000908152600660205260409020805461036790610e04565b80601f016020809104026020016040519081016040528092919081815260200182805461039390610e04565b80156103e05780601f106103b5576101008083540402835291602001916103e0565b820191906000526020600020905b8154815290600101906020018083116103c357829003601f168201915b50505050509050919050565b6103f761017461091b565b61041c5760405162461bcd60e51b815260040161041390610dab565b60405180910390fd5b6001600160a01b03811660009081526020819052604090205460ff166104845760405162461bcd60e51b815260206004820152601e60248201527f5461726765742061646472657373206973206e6f7420616e206f776e657200006044820152606401610413565b6001600160a01b0381166000908152602081905260409020805460ff191690556104af60018261094f565b50565b6060600280546104c190610e04565b80601f01602080910402602001604051908101604052809291908181526020018280546104ed90610e04565b801561053a5780601f1061050f5761010080835404028352916020019161053a565b820191906000526020600020905b81548152906001019060200180831161051d57829003601f168201915b5050505050905090565b6001600160a01b0383166000908152600460209081526040808320805460ff1916600117905560058252909120835161057f92850190610a96565b506001600160a01b038316600090815260066020908152604090912082516105a992840190610a96565b50505050565b6105ba61017461091b565b6105d65760405162461bcd60e51b815260040161041390610dab565b6001600160a01b0382166000908152600460209081526040808320805460ff1916600117905560058252909120825161061192840190610a96565b506040516001600160a01b0383169033907fce83807ca74d689869c29adbce77172c8a762f90e26450adebe0a2ec29c80c2b90600090a35050565b6040516378bfd22760e11b81526001600160a01b0382166004820152606090309063f17fa44e9060240160206040518083038186803b15801561068e57600080fd5b505afa1580156106a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106c69190610cb0565b6106de57505060408051602081019091526000815290565b6001600160a01b0382166000908152600560205260409020805461036790610e04565b6001541580159061072257503360009081526020819052604090205460ff16155b1561073f5760405162461bcd60e51b815260040161041390610dab565b6001600160a01b03811660009081526020819052604090205460ff16156107635750565b6001600160a01b03166000818152602081905260408120805460ff191660019081179091558054808201825591527fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf60180546001600160a01b0319169091179055565b6107d161017461091b565b6107ed5760405162461bcd60e51b815260040161041390610dab565b8051610800906002906020840190610a96565b5050565b6060600180548060200260200160405190810160405280929190818152602001828054801561053a57602002820191906000526020600020905b81546001600160a01b0316815260019091019060200180831161083e575050505050905090565b61087061017461091b565b61088c5760405162461bcd60e51b815260040161041390610dab565b6001600160a01b038116600081815260046020526040808220805460ff191690555133917f153a07e9ccc07353bbcd9c48710cd8ff1be4828e16589d8aa5f708d24ba1954691a350565b6108e161017461091b565b6108fd5760405162461bcd60e51b815260040161041390610dab565b600380546001600160a01b0319166001600160a01b03831617905550565b60006014361080159061093857506003546001600160a01b031633145b1561094a575060131936013560601c90565b503390565b60005b8254811015610a9157816001600160a01b031683828154811061098557634e487b7160e01b600052603260045260246000fd5b6000918252602090912001546001600160a01b03161415610a7f57825483906109b090600190610ded565b815481106109ce57634e487b7160e01b600052603260045260246000fd5b9060005260206000200160009054906101000a90046001600160a01b0316838281548110610a0c57634e487b7160e01b600052603260045260246000fd5b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555082805480610a5857634e487b7160e01b600052603160045260246000fd5b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80610a8981610e3f565b915050610952565b505050565b828054610aa290610e04565b90600052602060002090601f016020900481019282610ac45760008555610b0a565b82601f10610add57805160ff1916838001178555610b0a565b82800160010185558215610b0a579182015b82811115610b0a578251825591602001919060010190610aef565b50610b16929150610b1a565b5090565b5b80821115610b165760008155600101610b1b565b80356001600160a01b0381168114610b4657600080fd5b919050565b600082601f830112610b5b578081fd5b813567ffffffffffffffff80821115610b7657610b76610e70565b604051601f8301601f19908116603f01168101908282118183101715610b9e57610b9e610e70565b81604052838152866020858801011115610bb6578485fd5b8360208701602083013792830160200193909352509392505050565b600060208284031215610be3578081fd5b610bec82610b2f565b9392505050565b60008060408385031215610c05578081fd5b610c0e83610b2f565b9150602083013567ffffffffffffffff811115610c29578182fd5b610c3585828601610b4b565b9150509250929050565b600080600060608486031215610c53578081fd5b610c5c84610b2f565b9250602084013567ffffffffffffffff80821115610c78578283fd5b610c8487838801610b4b565b93506040860135915080821115610c99578283fd5b50610ca686828701610b4b565b9150509250925092565b600060208284031215610cc1578081fd5b81518015158114610bec578182fd5b600060208284031215610ce1578081fd5b813567ffffffffffffffff811115610cf7578182fd5b610d0384828501610b4b565b949350505050565b6020808252825182820181905260009190848201906040850190845b81811015610d4c5783516001600160a01b031683529284019291840191600101610d27565b50909695505050505050565b6000602080835283518082850152825b81811015610d8457858101830151858201604001528201610d68565b81811115610d955783604083870101525b50601f01601f1916929092016040019392505050565b60208082526022908201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f604082015261371760f11b606082015260800190565b600082821015610dff57610dff610e5a565b500390565b600181811c90821680610e1857607f821691505b60208210811415610e3957634e487b7160e01b600052602260045260246000fd5b50919050565b6000600019821415610e5357610e53610e5a565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052604160045260246000fdfe495046534d657461646174614d656d62657273686970436f6e7472616374207620302e312e30a26469706673582212205a214af57c1c38774b65cff0714ed2737d76bba9804634c57cd4bff2a56f196a64736f6c63430008040033",
305 "linkReferences": {},
306 "deployedLinkReferences": {}
307}