@etherisc/gif-next 0.0.2-e6ad61d-739 → 0.0.2-eb1b869-461
Sign up to get free protection for your applications and to get access to all the features.
- package/artifacts/contracts/components/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/components/Component.sol/InstanceLinked.dbg.json +1 -1
- package/artifacts/contracts/components/IPool.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IProduct.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +1 -1
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +1 -1
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +1 -1
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +1 -1
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +1 -1
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/access/Access.sol/AccessModule.dbg.json +1 -1
- package/artifacts/contracts/instance/access/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.dbg.json +1 -1
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.dbg.json +1 -1
- package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.dbg.json +1 -1
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.dbg.json +1 -1
- package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.dbg.json +1 -1
- package/artifacts/contracts/instance/component/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.dbg.json +1 -1
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.dbg.json +1 -1
- package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.dbg.json +1 -1
- package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.dbg.json +1 -1
- package/artifacts/contracts/instance/lifecycle/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/lifecycle/ILifecycle.sol/ILifecycleModule.dbg.json +1 -1
- package/artifacts/contracts/instance/lifecycle/LifecycleModule.sol/LifecycleModule.dbg.json +1 -1
- package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.dbg.json +1 -1
- package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.dbg.json +1 -1
- package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.dbg.json +1 -1
- package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.dbg.json +1 -1
- package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.dbg.json +1 -1
- package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.dbg.json +1 -1
- package/artifacts/contracts/instance/product/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.dbg.json +1 -1
- package/artifacts/contracts/instance/product/ProductService.sol/ProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/treasury/ITreasury.sol/ITreasury.dbg.json +1 -1
- package/artifacts/contracts/instance/treasury/ITreasury.sol/ITreasuryModule.dbg.json +1 -1
- package/artifacts/contracts/instance/treasury/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/instance/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/DIP.dbg.json +4 -0
- package/artifacts/contracts/mock/Dip.sol/DIP.json +338 -0
- package/artifacts/contracts/mock/TestPool.sol/TestPool.dbg.json +4 -0
- package/artifacts/contracts/mock/TestPool.sol/TestPool.json +294 -0
- package/artifacts/contracts/mock/TestProduct.sol/TestProduct.dbg.json +4 -0
- package/artifacts/contracts/mock/TestProduct.sol/TestProduct.json +384 -0
- package/artifacts/contracts/mock/Usdc.sol/USDC.dbg.json +4 -0
- package/artifacts/contracts/mock/Usdc.sol/USDC.json +338 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IOwnable.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +1 -1
- package/contracts/mock/Dip.sol +26 -0
- package/contracts/mock/TestPool.sol +16 -0
- package/contracts/mock/TestProduct.sol +39 -0
- package/contracts/mock/Usdc.sol +26 -0
- package/package.json +2 -1
@@ -0,0 +1,338 @@
|
|
1
|
+
{
|
2
|
+
"_format": "hh-sol-artifact-1",
|
3
|
+
"contractName": "USDC",
|
4
|
+
"sourceName": "contracts/mock/Usdc.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": "spender",
|
24
|
+
"type": "address"
|
25
|
+
},
|
26
|
+
{
|
27
|
+
"indexed": false,
|
28
|
+
"internalType": "uint256",
|
29
|
+
"name": "value",
|
30
|
+
"type": "uint256"
|
31
|
+
}
|
32
|
+
],
|
33
|
+
"name": "Approval",
|
34
|
+
"type": "event"
|
35
|
+
},
|
36
|
+
{
|
37
|
+
"anonymous": false,
|
38
|
+
"inputs": [
|
39
|
+
{
|
40
|
+
"indexed": true,
|
41
|
+
"internalType": "address",
|
42
|
+
"name": "from",
|
43
|
+
"type": "address"
|
44
|
+
},
|
45
|
+
{
|
46
|
+
"indexed": true,
|
47
|
+
"internalType": "address",
|
48
|
+
"name": "to",
|
49
|
+
"type": "address"
|
50
|
+
},
|
51
|
+
{
|
52
|
+
"indexed": false,
|
53
|
+
"internalType": "uint256",
|
54
|
+
"name": "value",
|
55
|
+
"type": "uint256"
|
56
|
+
}
|
57
|
+
],
|
58
|
+
"name": "Transfer",
|
59
|
+
"type": "event"
|
60
|
+
},
|
61
|
+
{
|
62
|
+
"inputs": [],
|
63
|
+
"name": "DECIMALS",
|
64
|
+
"outputs": [
|
65
|
+
{
|
66
|
+
"internalType": "uint8",
|
67
|
+
"name": "",
|
68
|
+
"type": "uint8"
|
69
|
+
}
|
70
|
+
],
|
71
|
+
"stateMutability": "view",
|
72
|
+
"type": "function"
|
73
|
+
},
|
74
|
+
{
|
75
|
+
"inputs": [],
|
76
|
+
"name": "INITIAL_SUPPLY",
|
77
|
+
"outputs": [
|
78
|
+
{
|
79
|
+
"internalType": "uint256",
|
80
|
+
"name": "",
|
81
|
+
"type": "uint256"
|
82
|
+
}
|
83
|
+
],
|
84
|
+
"stateMutability": "view",
|
85
|
+
"type": "function"
|
86
|
+
},
|
87
|
+
{
|
88
|
+
"inputs": [],
|
89
|
+
"name": "NAME",
|
90
|
+
"outputs": [
|
91
|
+
{
|
92
|
+
"internalType": "string",
|
93
|
+
"name": "",
|
94
|
+
"type": "string"
|
95
|
+
}
|
96
|
+
],
|
97
|
+
"stateMutability": "view",
|
98
|
+
"type": "function"
|
99
|
+
},
|
100
|
+
{
|
101
|
+
"inputs": [],
|
102
|
+
"name": "SYMBOL",
|
103
|
+
"outputs": [
|
104
|
+
{
|
105
|
+
"internalType": "string",
|
106
|
+
"name": "",
|
107
|
+
"type": "string"
|
108
|
+
}
|
109
|
+
],
|
110
|
+
"stateMutability": "view",
|
111
|
+
"type": "function"
|
112
|
+
},
|
113
|
+
{
|
114
|
+
"inputs": [
|
115
|
+
{
|
116
|
+
"internalType": "address",
|
117
|
+
"name": "owner",
|
118
|
+
"type": "address"
|
119
|
+
},
|
120
|
+
{
|
121
|
+
"internalType": "address",
|
122
|
+
"name": "spender",
|
123
|
+
"type": "address"
|
124
|
+
}
|
125
|
+
],
|
126
|
+
"name": "allowance",
|
127
|
+
"outputs": [
|
128
|
+
{
|
129
|
+
"internalType": "uint256",
|
130
|
+
"name": "",
|
131
|
+
"type": "uint256"
|
132
|
+
}
|
133
|
+
],
|
134
|
+
"stateMutability": "view",
|
135
|
+
"type": "function"
|
136
|
+
},
|
137
|
+
{
|
138
|
+
"inputs": [
|
139
|
+
{
|
140
|
+
"internalType": "address",
|
141
|
+
"name": "spender",
|
142
|
+
"type": "address"
|
143
|
+
},
|
144
|
+
{
|
145
|
+
"internalType": "uint256",
|
146
|
+
"name": "amount",
|
147
|
+
"type": "uint256"
|
148
|
+
}
|
149
|
+
],
|
150
|
+
"name": "approve",
|
151
|
+
"outputs": [
|
152
|
+
{
|
153
|
+
"internalType": "bool",
|
154
|
+
"name": "",
|
155
|
+
"type": "bool"
|
156
|
+
}
|
157
|
+
],
|
158
|
+
"stateMutability": "nonpayable",
|
159
|
+
"type": "function"
|
160
|
+
},
|
161
|
+
{
|
162
|
+
"inputs": [
|
163
|
+
{
|
164
|
+
"internalType": "address",
|
165
|
+
"name": "account",
|
166
|
+
"type": "address"
|
167
|
+
}
|
168
|
+
],
|
169
|
+
"name": "balanceOf",
|
170
|
+
"outputs": [
|
171
|
+
{
|
172
|
+
"internalType": "uint256",
|
173
|
+
"name": "",
|
174
|
+
"type": "uint256"
|
175
|
+
}
|
176
|
+
],
|
177
|
+
"stateMutability": "view",
|
178
|
+
"type": "function"
|
179
|
+
},
|
180
|
+
{
|
181
|
+
"inputs": [],
|
182
|
+
"name": "decimals",
|
183
|
+
"outputs": [
|
184
|
+
{
|
185
|
+
"internalType": "uint8",
|
186
|
+
"name": "",
|
187
|
+
"type": "uint8"
|
188
|
+
}
|
189
|
+
],
|
190
|
+
"stateMutability": "pure",
|
191
|
+
"type": "function"
|
192
|
+
},
|
193
|
+
{
|
194
|
+
"inputs": [
|
195
|
+
{
|
196
|
+
"internalType": "address",
|
197
|
+
"name": "spender",
|
198
|
+
"type": "address"
|
199
|
+
},
|
200
|
+
{
|
201
|
+
"internalType": "uint256",
|
202
|
+
"name": "subtractedValue",
|
203
|
+
"type": "uint256"
|
204
|
+
}
|
205
|
+
],
|
206
|
+
"name": "decreaseAllowance",
|
207
|
+
"outputs": [
|
208
|
+
{
|
209
|
+
"internalType": "bool",
|
210
|
+
"name": "",
|
211
|
+
"type": "bool"
|
212
|
+
}
|
213
|
+
],
|
214
|
+
"stateMutability": "nonpayable",
|
215
|
+
"type": "function"
|
216
|
+
},
|
217
|
+
{
|
218
|
+
"inputs": [
|
219
|
+
{
|
220
|
+
"internalType": "address",
|
221
|
+
"name": "spender",
|
222
|
+
"type": "address"
|
223
|
+
},
|
224
|
+
{
|
225
|
+
"internalType": "uint256",
|
226
|
+
"name": "addedValue",
|
227
|
+
"type": "uint256"
|
228
|
+
}
|
229
|
+
],
|
230
|
+
"name": "increaseAllowance",
|
231
|
+
"outputs": [
|
232
|
+
{
|
233
|
+
"internalType": "bool",
|
234
|
+
"name": "",
|
235
|
+
"type": "bool"
|
236
|
+
}
|
237
|
+
],
|
238
|
+
"stateMutability": "nonpayable",
|
239
|
+
"type": "function"
|
240
|
+
},
|
241
|
+
{
|
242
|
+
"inputs": [],
|
243
|
+
"name": "name",
|
244
|
+
"outputs": [
|
245
|
+
{
|
246
|
+
"internalType": "string",
|
247
|
+
"name": "",
|
248
|
+
"type": "string"
|
249
|
+
}
|
250
|
+
],
|
251
|
+
"stateMutability": "view",
|
252
|
+
"type": "function"
|
253
|
+
},
|
254
|
+
{
|
255
|
+
"inputs": [],
|
256
|
+
"name": "symbol",
|
257
|
+
"outputs": [
|
258
|
+
{
|
259
|
+
"internalType": "string",
|
260
|
+
"name": "",
|
261
|
+
"type": "string"
|
262
|
+
}
|
263
|
+
],
|
264
|
+
"stateMutability": "view",
|
265
|
+
"type": "function"
|
266
|
+
},
|
267
|
+
{
|
268
|
+
"inputs": [],
|
269
|
+
"name": "totalSupply",
|
270
|
+
"outputs": [
|
271
|
+
{
|
272
|
+
"internalType": "uint256",
|
273
|
+
"name": "",
|
274
|
+
"type": "uint256"
|
275
|
+
}
|
276
|
+
],
|
277
|
+
"stateMutability": "view",
|
278
|
+
"type": "function"
|
279
|
+
},
|
280
|
+
{
|
281
|
+
"inputs": [
|
282
|
+
{
|
283
|
+
"internalType": "address",
|
284
|
+
"name": "to",
|
285
|
+
"type": "address"
|
286
|
+
},
|
287
|
+
{
|
288
|
+
"internalType": "uint256",
|
289
|
+
"name": "amount",
|
290
|
+
"type": "uint256"
|
291
|
+
}
|
292
|
+
],
|
293
|
+
"name": "transfer",
|
294
|
+
"outputs": [
|
295
|
+
{
|
296
|
+
"internalType": "bool",
|
297
|
+
"name": "",
|
298
|
+
"type": "bool"
|
299
|
+
}
|
300
|
+
],
|
301
|
+
"stateMutability": "nonpayable",
|
302
|
+
"type": "function"
|
303
|
+
},
|
304
|
+
{
|
305
|
+
"inputs": [
|
306
|
+
{
|
307
|
+
"internalType": "address",
|
308
|
+
"name": "from",
|
309
|
+
"type": "address"
|
310
|
+
},
|
311
|
+
{
|
312
|
+
"internalType": "address",
|
313
|
+
"name": "to",
|
314
|
+
"type": "address"
|
315
|
+
},
|
316
|
+
{
|
317
|
+
"internalType": "uint256",
|
318
|
+
"name": "amount",
|
319
|
+
"type": "uint256"
|
320
|
+
}
|
321
|
+
],
|
322
|
+
"name": "transferFrom",
|
323
|
+
"outputs": [
|
324
|
+
{
|
325
|
+
"internalType": "bool",
|
326
|
+
"name": "",
|
327
|
+
"type": "bool"
|
328
|
+
}
|
329
|
+
],
|
330
|
+
"stateMutability": "nonpayable",
|
331
|
+
"type": "function"
|
332
|
+
}
|
333
|
+
],
|
334
|
+
"bytecode": "0x60806040523480156200001157600080fd5b506040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b815250604051806040016040528060048152602001635553444360e01b815250816003908162000065919062000228565b50600462000074828262000228565b505050620000af6200008b620000b560201b60201c565b620000996006600a62000409565b620000a990633b9aca0062000421565b620000b9565b62000451565b3390565b6001600160a01b038216620001145760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200012891906200043b565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001af57607f821691505b602082108103620001d057634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200017f57600081815260208120601f850160051c81016020861015620001ff5750805b601f850160051c820191505b8181101562000220578281556001016200020b565b505050505050565b81516001600160401b0381111562000244576200024462000184565b6200025c816200025584546200019a565b84620001d6565b602080601f8311600181146200029457600084156200027b5750858301515b600019600386901b1c1916600185901b17855562000220565b600085815260208120601f198616915b82811015620002c557888601518255948401946001909101908401620002a4565b5085821015620002e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200034b5781600019048211156200032f576200032f620002f4565b808516156200033d57918102915b93841c93908002906200030f565b509250929050565b600082620003645750600162000403565b81620003735750600062000403565b81600181146200038c57600281146200039757620003b7565b600191505062000403565b60ff841115620003ab57620003ab620002f4565b50506001821b62000403565b5060208310610133831016604e8410600b8410161715620003dc575081810a62000403565b620003e883836200030a565b8060001904821115620003ff57620003ff620002f4565b0290505b92915050565b60006200041a60ff84168362000353565b9392505050565b8082028115828204841417620004035762000403620002f4565b80820180821115620004035762000403620002f4565b610a3580620004616000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80633950935111610097578063a457c2d711610066578063a457c2d7146101f8578063a9059cbb1461020b578063dd62ed3e1461021e578063f76f8d781461023157600080fd5b8063395093511461018957806370a082311461019c57806395d89b41146101c5578063a3f4df7e146101cd57600080fd5b806323b872dd116100d357806323b872dd1461014d5780632e0f2625146101605780632ff2e9dc1461017a578063313ce5671461018257600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610254565b60405161010f919061076d565b60405180910390f35b61012b6101263660046107d7565b6102e6565b604051901515815260200161010f565b6002545b60405190815260200161010f565b61012b61015b366004610801565b610300565b610168600681565b60405160ff909116815260200161010f565b61013f610324565b6006610168565b61012b6101973660046107d7565b610341565b61013f6101aa36600461083d565b6001600160a01b031660009081526020819052604090205490565b610102610363565b6101026040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b61012b6102063660046107d7565b610372565b61012b6102193660046107d7565b6103f2565b61013f61022c36600461085f565b610400565b610102604051806040016040528060048152602001635553444360e01b81525081565b60606003805461026390610892565b80601f016020809104026020016040519081016040528092919081815260200182805461028f90610892565b80156102dc5780601f106102b1576101008083540402835291602001916102dc565b820191906000526020600020905b8154815290600101906020018083116102bf57829003601f168201915b5050505050905090565b6000336102f481858561042b565b60019150505b92915050565b60003361030e85828561054f565b6103198585856105c9565b506001949350505050565b6103306006600a6109c6565b61033e90633b9aca006109d5565b81565b6000336102f48185856103548383610400565b61035e91906109ec565b61042b565b60606004805461026390610892565b600033816103808286610400565b9050838110156103e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610319828686840361042b565b6000336102f48185856105c9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661048d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103dc565b6001600160a01b0382166104ee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061055b8484610400565b905060001981146105c357818110156105b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103dc565b6105c3848484840361042b565b50505050565b6001600160a01b03831661062d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661068f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6001600160a01b038316600090815260208190526040902054818110156107075760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103dc565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36105c3565b600060208083528351808285015260005b8181101561079a5785810183015185820160400152820161077e565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d257600080fd5b919050565b600080604083850312156107ea57600080fd5b6107f3836107bb565b946020939093013593505050565b60008060006060848603121561081657600080fd5b61081f846107bb565b925061082d602085016107bb565b9150604084013590509250925092565b60006020828403121561084f57600080fd5b610858826107bb565b9392505050565b6000806040838503121561087257600080fd5b61087b836107bb565b9150610889602084016107bb565b90509250929050565b600181811c908216806108a657607f821691505b6020821081036108c657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561091d578160001904821115610903576109036108cc565b8085161561091057918102915b93841c93908002906108e7565b509250929050565b600082610934575060016102fa565b81610941575060006102fa565b816001811461095757600281146109615761097d565b60019150506102fa565b60ff841115610972576109726108cc565b50506001821b6102fa565b5060208310610133831016604e8410600b84101617156109a0575081810a6102fa565b6109aa83836108e2565b80600019048211156109be576109be6108cc565b029392505050565b600061085860ff841683610925565b80820281158282048414176102fa576102fa6108cc565b808201808211156102fa576102fa6108cc56fea2646970667358221220f656e3cd79444e74359cb2c84f04a1954aca6550f24c3ff337826bd332dde83a64736f6c63430008140033",
|
335
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80633950935111610097578063a457c2d711610066578063a457c2d7146101f8578063a9059cbb1461020b578063dd62ed3e1461021e578063f76f8d781461023157600080fd5b8063395093511461018957806370a082311461019c57806395d89b41146101c5578063a3f4df7e146101cd57600080fd5b806323b872dd116100d357806323b872dd1461014d5780632e0f2625146101605780632ff2e9dc1461017a578063313ce5671461018257600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610254565b60405161010f919061076d565b60405180910390f35b61012b6101263660046107d7565b6102e6565b604051901515815260200161010f565b6002545b60405190815260200161010f565b61012b61015b366004610801565b610300565b610168600681565b60405160ff909116815260200161010f565b61013f610324565b6006610168565b61012b6101973660046107d7565b610341565b61013f6101aa36600461083d565b6001600160a01b031660009081526020819052604090205490565b610102610363565b6101026040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b61012b6102063660046107d7565b610372565b61012b6102193660046107d7565b6103f2565b61013f61022c36600461085f565b610400565b610102604051806040016040528060048152602001635553444360e01b81525081565b60606003805461026390610892565b80601f016020809104026020016040519081016040528092919081815260200182805461028f90610892565b80156102dc5780601f106102b1576101008083540402835291602001916102dc565b820191906000526020600020905b8154815290600101906020018083116102bf57829003601f168201915b5050505050905090565b6000336102f481858561042b565b60019150505b92915050565b60003361030e85828561054f565b6103198585856105c9565b506001949350505050565b6103306006600a6109c6565b61033e90633b9aca006109d5565b81565b6000336102f48185856103548383610400565b61035e91906109ec565b61042b565b60606004805461026390610892565b600033816103808286610400565b9050838110156103e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610319828686840361042b565b6000336102f48185856105c9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661048d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103dc565b6001600160a01b0382166104ee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061055b8484610400565b905060001981146105c357818110156105b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103dc565b6105c3848484840361042b565b50505050565b6001600160a01b03831661062d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661068f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6001600160a01b038316600090815260208190526040902054818110156107075760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103dc565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36105c3565b600060208083528351808285015260005b8181101561079a5785810183015185820160400152820161077e565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d257600080fd5b919050565b600080604083850312156107ea57600080fd5b6107f3836107bb565b946020939093013593505050565b60008060006060848603121561081657600080fd5b61081f846107bb565b925061082d602085016107bb565b9150604084013590509250925092565b60006020828403121561084f57600080fd5b610858826107bb565b9392505050565b6000806040838503121561087257600080fd5b61087b836107bb565b9150610889602084016107bb565b90509250929050565b600181811c908216806108a657607f821691505b6020821081036108c657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561091d578160001904821115610903576109036108cc565b8085161561091057918102915b93841c93908002906108e7565b509250929050565b600082610934575060016102fa565b81610941575060006102fa565b816001811461095757600281146109615761097d565b60019150506102fa565b60ff841115610972576109726108cc565b50506001821b6102fa565b5060208310610133831016604e8410600b84101617156109a0575081810a6102fa565b6109aa83836108e2565b80600019048211156109be576109be6108cc565b029392505050565b600061085860ff841683610925565b80820281158282048414176102fa576102fa6108cc565b808201808211156102fa576102fa6108cc56fea2646970667358221220f656e3cd79444e74359cb2c84f04a1954aca6550f24c3ff337826bd332dde83a64736f6c63430008140033",
|
336
|
+
"linkReferences": {},
|
337
|
+
"deployedLinkReferences": {}
|
338
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
|
5
|
+
|
6
|
+
contract DIP is ERC20 {
|
7
|
+
|
8
|
+
// https://etherscan.io/token/0xc719d010b63e5bbf2c0551872cd5316ed26acd83#readContract
|
9
|
+
string public constant NAME = "Decentralized Insurance Protocol - DUMMY";
|
10
|
+
string public constant SYMBOL = "DIP";
|
11
|
+
uint8 public constant DECIMALS = 18;
|
12
|
+
uint256 public constant INITIAL_SUPPLY = 10**9 * 10**DECIMALS; // 1 Billion 1'000'000'000
|
13
|
+
// decimals == 18 (openzeppelin erc20 default)
|
14
|
+
constructor()
|
15
|
+
ERC20(NAME, SYMBOL)
|
16
|
+
{
|
17
|
+
_mint(
|
18
|
+
_msgSender(),
|
19
|
+
INITIAL_SUPPLY
|
20
|
+
);
|
21
|
+
}
|
22
|
+
|
23
|
+
function decimals() public pure override returns(uint8) {
|
24
|
+
return DECIMALS;
|
25
|
+
}
|
26
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.19;
|
3
|
+
|
4
|
+
import {Fee, zeroFee} from "../../contracts/types/Fee.sol";
|
5
|
+
import {Pool} from "../../contracts/components/Pool.sol";
|
6
|
+
|
7
|
+
|
8
|
+
contract TestPool is Pool {
|
9
|
+
|
10
|
+
constructor(address registry, address instance, address token)
|
11
|
+
// feeless pool (no staking fee, no performance fee)
|
12
|
+
Pool(registry, instance, token, zeroFee(), zeroFee())
|
13
|
+
// solhint-disable-next-line no-empty-blocks
|
14
|
+
{}
|
15
|
+
|
16
|
+
}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.19;
|
3
|
+
|
4
|
+
import {Product} from "../../contracts/components/Product.sol";
|
5
|
+
import {NftId, toNftId} from "../../contracts/types/NftId.sol";
|
6
|
+
import {Fee, zeroFee} from "../../contracts/types/Fee.sol";
|
7
|
+
|
8
|
+
contract TestProduct is Product {
|
9
|
+
|
10
|
+
constructor(address registry, address instance, address token, address pool, Fee memory policyFee)
|
11
|
+
Product(registry, instance, token, pool, policyFee, zeroFee())
|
12
|
+
// solhint-disable-next-line no-empty-blocks
|
13
|
+
{}
|
14
|
+
|
15
|
+
function applyForPolicy(
|
16
|
+
uint256 sumInsuredAmount,
|
17
|
+
uint256 premiumAmount,
|
18
|
+
uint256 lifetime
|
19
|
+
)
|
20
|
+
external
|
21
|
+
returns(NftId nftId)
|
22
|
+
{
|
23
|
+
nftId = _createApplication(
|
24
|
+
msg.sender, // policy holder
|
25
|
+
sumInsuredAmount,
|
26
|
+
premiumAmount,
|
27
|
+
lifetime,
|
28
|
+
toNftId(0) // requested bundle nft id
|
29
|
+
);
|
30
|
+
}
|
31
|
+
|
32
|
+
function underwrite(NftId nftId) external {
|
33
|
+
_underwrite(nftId);
|
34
|
+
}
|
35
|
+
|
36
|
+
function collectPremium(NftId nftId) external {
|
37
|
+
_collectPremium(nftId);
|
38
|
+
}
|
39
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
// SPDX-License-Identifier: Apache-2.0
|
2
|
+
pragma solidity ^0.8.20;
|
3
|
+
|
4
|
+
import "@openzeppelin/contracts/token/ERC20/ERC20.sol";
|
5
|
+
|
6
|
+
contract USDC is ERC20 {
|
7
|
+
|
8
|
+
// https://etherscan.io/token/0xc719d010b63e5bbf2c0551872cd5316ed26acd83#readContract
|
9
|
+
string public constant NAME = "USDC - DUMMY";
|
10
|
+
string public constant SYMBOL = "USDC";
|
11
|
+
uint8 public constant DECIMALS = 6;
|
12
|
+
uint256 public constant INITIAL_SUPPLY = 10**9 * 10**DECIMALS; // 1 Billion 1'000'000'000
|
13
|
+
// decimals == 18 (openzeppelin erc20 default)
|
14
|
+
constructor()
|
15
|
+
ERC20(NAME, SYMBOL)
|
16
|
+
{
|
17
|
+
_mint(
|
18
|
+
_msgSender(),
|
19
|
+
INITIAL_SUPPLY
|
20
|
+
);
|
21
|
+
}
|
22
|
+
|
23
|
+
function decimals() public pure override returns(uint8) {
|
24
|
+
return DECIMALS;
|
25
|
+
}
|
26
|
+
}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@etherisc/gif-next",
|
3
|
-
"version": "0.0.2-
|
3
|
+
"version": "0.0.2-eb1b869-461",
|
4
4
|
"description": "This is the repository for the next version of the Generic Insurance Framework (GIF) smart contracts. ",
|
5
5
|
"main": "index.js",
|
6
6
|
"scripts": {
|
@@ -39,6 +39,7 @@
|
|
39
39
|
"dependencies": {
|
40
40
|
"@openzeppelin/contracts": "^4.9.3",
|
41
41
|
"@openzeppelin/contracts-upgradeable": "^4.9.3",
|
42
|
+
"abi-coder": "^5.0.0",
|
42
43
|
"ethers": "^6.7.1",
|
43
44
|
"winston": "^3.10.0"
|
44
45
|
}
|