@zoralabs/coins 0.1.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 (116) hide show
  1. package/.turbo/turbo-build.log +76 -0
  2. package/CHANGELOG.md +14 -0
  3. package/LICENSE +21 -0
  4. package/abis/Address.json +29 -0
  5. package/abis/BaseTest.json +691 -0
  6. package/abis/Clones.json +7 -0
  7. package/abis/Coin.json +1693 -0
  8. package/abis/CoinConstants.json +93 -0
  9. package/abis/CoinTest.json +998 -0
  10. package/abis/ContextUpgradeable.json +25 -0
  11. package/abis/ContractVersionBase.json +15 -0
  12. package/abis/Deploy.json +29 -0
  13. package/abis/ECDSA.json +29 -0
  14. package/abis/EIP712.json +67 -0
  15. package/abis/EIP712Upgradeable.json +74 -0
  16. package/abis/ERC1967Proxy.json +67 -0
  17. package/abis/ERC1967Utils.json +85 -0
  18. package/abis/ERC20PermitUpgradeable.json +527 -0
  19. package/abis/ERC20Upgradeable.json +333 -0
  20. package/abis/FactoryTest.json +845 -0
  21. package/abis/IBeacon.json +15 -0
  22. package/abis/ICoin.json +541 -0
  23. package/abis/ICoinComments.json +53 -0
  24. package/abis/IERC1155Errors.json +104 -0
  25. package/abis/IERC165.json +21 -0
  26. package/abis/IERC1822Proxiable.json +15 -0
  27. package/abis/IERC20.json +221 -0
  28. package/abis/IERC20Errors.json +88 -0
  29. package/abis/IERC20Metadata.json +224 -0
  30. package/abis/IERC20Permit.json +77 -0
  31. package/abis/IERC5267.json +51 -0
  32. package/abis/IERC721.json +287 -0
  33. package/abis/IERC721Enumerable.json +343 -0
  34. package/abis/IERC721Errors.json +105 -0
  35. package/abis/IERC721Metadata.json +332 -0
  36. package/abis/IERC721Receiver.json +36 -0
  37. package/abis/IERC721TokenReceiver.json +36 -0
  38. package/abis/IERC7572.json +21 -0
  39. package/abis/IMulticall3.json +440 -0
  40. package/abis/INonfungiblePositionManager.json +366 -0
  41. package/abis/IProtocolRewards.json +348 -0
  42. package/abis/ISwapRouter.json +137 -0
  43. package/abis/IUniswapV3Pool.json +148 -0
  44. package/abis/IUniswapV3SwapCallback.json +25 -0
  45. package/abis/IVersionedContract.json +15 -0
  46. package/abis/IWETH.json +118 -0
  47. package/abis/IZoraFactory.json +138 -0
  48. package/abis/Initializable.json +25 -0
  49. package/abis/Math.json +7 -0
  50. package/abis/MockERC20.json +322 -0
  51. package/abis/MockERC721.json +350 -0
  52. package/abis/MultiOwnable.json +171 -0
  53. package/abis/MultiOwnableTest.json +796 -0
  54. package/abis/NoncesUpgradeable.json +60 -0
  55. package/abis/OwnableUpgradeable.json +99 -0
  56. package/abis/ProtocolRewards.json +494 -0
  57. package/abis/Proxy.json +6 -0
  58. package/abis/ReentrancyGuardUpgradeable.json +30 -0
  59. package/abis/SafeERC20.json +34 -0
  60. package/abis/Script.json +15 -0
  61. package/abis/ShortStrings.json +18 -0
  62. package/abis/StdAssertions.json +379 -0
  63. package/abis/StdInvariant.json +180 -0
  64. package/abis/Strings.json +18 -0
  65. package/abis/Test.json +570 -0
  66. package/abis/UUPSUpgradeable.json +130 -0
  67. package/abis/Vm.json +8627 -0
  68. package/abis/VmSafe.json +7297 -0
  69. package/abis/ZoraFactory.json +67 -0
  70. package/abis/ZoraFactoryImpl.json +422 -0
  71. package/abis/stdError.json +119 -0
  72. package/abis/stdStorageSafe.json +52 -0
  73. package/addresses/1.json +4 -0
  74. package/addresses/8453.json +9 -0
  75. package/addresses/84532.json +9 -0
  76. package/dist/index.cjs +1236 -0
  77. package/dist/index.cjs.map +1 -0
  78. package/dist/index.d.ts +2 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +1208 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/wagmiGenerated.d.ts +1645 -0
  83. package/dist/wagmiGenerated.d.ts.map +1 -0
  84. package/foundry.toml +9 -0
  85. package/package/index.ts +1 -0
  86. package/package/wagmiGenerated.ts +1211 -0
  87. package/package.json +48 -0
  88. package/remappings.txt +4 -0
  89. package/script/Deploy.s.sol +14 -0
  90. package/slither.config.json +6 -0
  91. package/src/Coin.sol +579 -0
  92. package/src/ZoraFactoryImpl.sol +142 -0
  93. package/src/interfaces/ICoin.sol +194 -0
  94. package/src/interfaces/ICoinComments.sol +8 -0
  95. package/src/interfaces/IERC7572.sol +12 -0
  96. package/src/interfaces/INonfungiblePositionManager.sol +104 -0
  97. package/src/interfaces/IProtocolRewards.sol +12 -0
  98. package/src/interfaces/ISwapRouter.sol +38 -0
  99. package/src/interfaces/IUniswapV3Pool.sol +43 -0
  100. package/src/interfaces/IUniswapV3SwapCallback.sol +17 -0
  101. package/src/interfaces/IWETH.sol +16 -0
  102. package/src/interfaces/IZoraFactory.sol +56 -0
  103. package/src/proxy/ZoraFactory.sol +26 -0
  104. package/src/utils/CoinConstants.sol +67 -0
  105. package/src/utils/MultiOwnable.sol +126 -0
  106. package/src/utils/TickMath.sol +210 -0
  107. package/src/version/ContractVersionBase.sol +14 -0
  108. package/test/Coin.t.sol +443 -0
  109. package/test/Factory.t.sol +298 -0
  110. package/test/MultiOwnable.t.sol +156 -0
  111. package/test/utils/BaseTest.sol +178 -0
  112. package/test/utils/ProtocolRewards.sol +1499 -0
  113. package/tsconfig.build.json +10 -0
  114. package/tsconfig.json +9 -0
  115. package/tsup.config.ts +11 -0
  116. package/wagmi.config.ts +16 -0
@@ -0,0 +1,287 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "approve",
5
+ "inputs": [
6
+ {
7
+ "name": "_approved",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "_tokenId",
13
+ "type": "uint256",
14
+ "internalType": "uint256"
15
+ }
16
+ ],
17
+ "outputs": [],
18
+ "stateMutability": "payable"
19
+ },
20
+ {
21
+ "type": "function",
22
+ "name": "balanceOf",
23
+ "inputs": [
24
+ {
25
+ "name": "_owner",
26
+ "type": "address",
27
+ "internalType": "address"
28
+ }
29
+ ],
30
+ "outputs": [
31
+ {
32
+ "name": "",
33
+ "type": "uint256",
34
+ "internalType": "uint256"
35
+ }
36
+ ],
37
+ "stateMutability": "view"
38
+ },
39
+ {
40
+ "type": "function",
41
+ "name": "getApproved",
42
+ "inputs": [
43
+ {
44
+ "name": "_tokenId",
45
+ "type": "uint256",
46
+ "internalType": "uint256"
47
+ }
48
+ ],
49
+ "outputs": [
50
+ {
51
+ "name": "",
52
+ "type": "address",
53
+ "internalType": "address"
54
+ }
55
+ ],
56
+ "stateMutability": "view"
57
+ },
58
+ {
59
+ "type": "function",
60
+ "name": "isApprovedForAll",
61
+ "inputs": [
62
+ {
63
+ "name": "_owner",
64
+ "type": "address",
65
+ "internalType": "address"
66
+ },
67
+ {
68
+ "name": "_operator",
69
+ "type": "address",
70
+ "internalType": "address"
71
+ }
72
+ ],
73
+ "outputs": [
74
+ {
75
+ "name": "",
76
+ "type": "bool",
77
+ "internalType": "bool"
78
+ }
79
+ ],
80
+ "stateMutability": "view"
81
+ },
82
+ {
83
+ "type": "function",
84
+ "name": "ownerOf",
85
+ "inputs": [
86
+ {
87
+ "name": "_tokenId",
88
+ "type": "uint256",
89
+ "internalType": "uint256"
90
+ }
91
+ ],
92
+ "outputs": [
93
+ {
94
+ "name": "",
95
+ "type": "address",
96
+ "internalType": "address"
97
+ }
98
+ ],
99
+ "stateMutability": "view"
100
+ },
101
+ {
102
+ "type": "function",
103
+ "name": "safeTransferFrom",
104
+ "inputs": [
105
+ {
106
+ "name": "_from",
107
+ "type": "address",
108
+ "internalType": "address"
109
+ },
110
+ {
111
+ "name": "_to",
112
+ "type": "address",
113
+ "internalType": "address"
114
+ },
115
+ {
116
+ "name": "_tokenId",
117
+ "type": "uint256",
118
+ "internalType": "uint256"
119
+ }
120
+ ],
121
+ "outputs": [],
122
+ "stateMutability": "payable"
123
+ },
124
+ {
125
+ "type": "function",
126
+ "name": "safeTransferFrom",
127
+ "inputs": [
128
+ {
129
+ "name": "_from",
130
+ "type": "address",
131
+ "internalType": "address"
132
+ },
133
+ {
134
+ "name": "_to",
135
+ "type": "address",
136
+ "internalType": "address"
137
+ },
138
+ {
139
+ "name": "_tokenId",
140
+ "type": "uint256",
141
+ "internalType": "uint256"
142
+ },
143
+ {
144
+ "name": "data",
145
+ "type": "bytes",
146
+ "internalType": "bytes"
147
+ }
148
+ ],
149
+ "outputs": [],
150
+ "stateMutability": "payable"
151
+ },
152
+ {
153
+ "type": "function",
154
+ "name": "setApprovalForAll",
155
+ "inputs": [
156
+ {
157
+ "name": "_operator",
158
+ "type": "address",
159
+ "internalType": "address"
160
+ },
161
+ {
162
+ "name": "_approved",
163
+ "type": "bool",
164
+ "internalType": "bool"
165
+ }
166
+ ],
167
+ "outputs": [],
168
+ "stateMutability": "nonpayable"
169
+ },
170
+ {
171
+ "type": "function",
172
+ "name": "supportsInterface",
173
+ "inputs": [
174
+ {
175
+ "name": "interfaceID",
176
+ "type": "bytes4",
177
+ "internalType": "bytes4"
178
+ }
179
+ ],
180
+ "outputs": [
181
+ {
182
+ "name": "",
183
+ "type": "bool",
184
+ "internalType": "bool"
185
+ }
186
+ ],
187
+ "stateMutability": "view"
188
+ },
189
+ {
190
+ "type": "function",
191
+ "name": "transferFrom",
192
+ "inputs": [
193
+ {
194
+ "name": "_from",
195
+ "type": "address",
196
+ "internalType": "address"
197
+ },
198
+ {
199
+ "name": "_to",
200
+ "type": "address",
201
+ "internalType": "address"
202
+ },
203
+ {
204
+ "name": "_tokenId",
205
+ "type": "uint256",
206
+ "internalType": "uint256"
207
+ }
208
+ ],
209
+ "outputs": [],
210
+ "stateMutability": "payable"
211
+ },
212
+ {
213
+ "type": "event",
214
+ "name": "Approval",
215
+ "inputs": [
216
+ {
217
+ "name": "_owner",
218
+ "type": "address",
219
+ "indexed": true,
220
+ "internalType": "address"
221
+ },
222
+ {
223
+ "name": "_approved",
224
+ "type": "address",
225
+ "indexed": true,
226
+ "internalType": "address"
227
+ },
228
+ {
229
+ "name": "_tokenId",
230
+ "type": "uint256",
231
+ "indexed": true,
232
+ "internalType": "uint256"
233
+ }
234
+ ],
235
+ "anonymous": false
236
+ },
237
+ {
238
+ "type": "event",
239
+ "name": "ApprovalForAll",
240
+ "inputs": [
241
+ {
242
+ "name": "_owner",
243
+ "type": "address",
244
+ "indexed": true,
245
+ "internalType": "address"
246
+ },
247
+ {
248
+ "name": "_operator",
249
+ "type": "address",
250
+ "indexed": true,
251
+ "internalType": "address"
252
+ },
253
+ {
254
+ "name": "_approved",
255
+ "type": "bool",
256
+ "indexed": false,
257
+ "internalType": "bool"
258
+ }
259
+ ],
260
+ "anonymous": false
261
+ },
262
+ {
263
+ "type": "event",
264
+ "name": "Transfer",
265
+ "inputs": [
266
+ {
267
+ "name": "_from",
268
+ "type": "address",
269
+ "indexed": true,
270
+ "internalType": "address"
271
+ },
272
+ {
273
+ "name": "_to",
274
+ "type": "address",
275
+ "indexed": true,
276
+ "internalType": "address"
277
+ },
278
+ {
279
+ "name": "_tokenId",
280
+ "type": "uint256",
281
+ "indexed": true,
282
+ "internalType": "uint256"
283
+ }
284
+ ],
285
+ "anonymous": false
286
+ }
287
+ ]
@@ -0,0 +1,343 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "approve",
5
+ "inputs": [
6
+ {
7
+ "name": "_approved",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "_tokenId",
13
+ "type": "uint256",
14
+ "internalType": "uint256"
15
+ }
16
+ ],
17
+ "outputs": [],
18
+ "stateMutability": "payable"
19
+ },
20
+ {
21
+ "type": "function",
22
+ "name": "balanceOf",
23
+ "inputs": [
24
+ {
25
+ "name": "_owner",
26
+ "type": "address",
27
+ "internalType": "address"
28
+ }
29
+ ],
30
+ "outputs": [
31
+ {
32
+ "name": "",
33
+ "type": "uint256",
34
+ "internalType": "uint256"
35
+ }
36
+ ],
37
+ "stateMutability": "view"
38
+ },
39
+ {
40
+ "type": "function",
41
+ "name": "getApproved",
42
+ "inputs": [
43
+ {
44
+ "name": "_tokenId",
45
+ "type": "uint256",
46
+ "internalType": "uint256"
47
+ }
48
+ ],
49
+ "outputs": [
50
+ {
51
+ "name": "",
52
+ "type": "address",
53
+ "internalType": "address"
54
+ }
55
+ ],
56
+ "stateMutability": "view"
57
+ },
58
+ {
59
+ "type": "function",
60
+ "name": "isApprovedForAll",
61
+ "inputs": [
62
+ {
63
+ "name": "_owner",
64
+ "type": "address",
65
+ "internalType": "address"
66
+ },
67
+ {
68
+ "name": "_operator",
69
+ "type": "address",
70
+ "internalType": "address"
71
+ }
72
+ ],
73
+ "outputs": [
74
+ {
75
+ "name": "",
76
+ "type": "bool",
77
+ "internalType": "bool"
78
+ }
79
+ ],
80
+ "stateMutability": "view"
81
+ },
82
+ {
83
+ "type": "function",
84
+ "name": "ownerOf",
85
+ "inputs": [
86
+ {
87
+ "name": "_tokenId",
88
+ "type": "uint256",
89
+ "internalType": "uint256"
90
+ }
91
+ ],
92
+ "outputs": [
93
+ {
94
+ "name": "",
95
+ "type": "address",
96
+ "internalType": "address"
97
+ }
98
+ ],
99
+ "stateMutability": "view"
100
+ },
101
+ {
102
+ "type": "function",
103
+ "name": "safeTransferFrom",
104
+ "inputs": [
105
+ {
106
+ "name": "_from",
107
+ "type": "address",
108
+ "internalType": "address"
109
+ },
110
+ {
111
+ "name": "_to",
112
+ "type": "address",
113
+ "internalType": "address"
114
+ },
115
+ {
116
+ "name": "_tokenId",
117
+ "type": "uint256",
118
+ "internalType": "uint256"
119
+ }
120
+ ],
121
+ "outputs": [],
122
+ "stateMutability": "payable"
123
+ },
124
+ {
125
+ "type": "function",
126
+ "name": "safeTransferFrom",
127
+ "inputs": [
128
+ {
129
+ "name": "_from",
130
+ "type": "address",
131
+ "internalType": "address"
132
+ },
133
+ {
134
+ "name": "_to",
135
+ "type": "address",
136
+ "internalType": "address"
137
+ },
138
+ {
139
+ "name": "_tokenId",
140
+ "type": "uint256",
141
+ "internalType": "uint256"
142
+ },
143
+ {
144
+ "name": "data",
145
+ "type": "bytes",
146
+ "internalType": "bytes"
147
+ }
148
+ ],
149
+ "outputs": [],
150
+ "stateMutability": "payable"
151
+ },
152
+ {
153
+ "type": "function",
154
+ "name": "setApprovalForAll",
155
+ "inputs": [
156
+ {
157
+ "name": "_operator",
158
+ "type": "address",
159
+ "internalType": "address"
160
+ },
161
+ {
162
+ "name": "_approved",
163
+ "type": "bool",
164
+ "internalType": "bool"
165
+ }
166
+ ],
167
+ "outputs": [],
168
+ "stateMutability": "nonpayable"
169
+ },
170
+ {
171
+ "type": "function",
172
+ "name": "supportsInterface",
173
+ "inputs": [
174
+ {
175
+ "name": "interfaceID",
176
+ "type": "bytes4",
177
+ "internalType": "bytes4"
178
+ }
179
+ ],
180
+ "outputs": [
181
+ {
182
+ "name": "",
183
+ "type": "bool",
184
+ "internalType": "bool"
185
+ }
186
+ ],
187
+ "stateMutability": "view"
188
+ },
189
+ {
190
+ "type": "function",
191
+ "name": "tokenByIndex",
192
+ "inputs": [
193
+ {
194
+ "name": "_index",
195
+ "type": "uint256",
196
+ "internalType": "uint256"
197
+ }
198
+ ],
199
+ "outputs": [
200
+ {
201
+ "name": "",
202
+ "type": "uint256",
203
+ "internalType": "uint256"
204
+ }
205
+ ],
206
+ "stateMutability": "view"
207
+ },
208
+ {
209
+ "type": "function",
210
+ "name": "tokenOfOwnerByIndex",
211
+ "inputs": [
212
+ {
213
+ "name": "_owner",
214
+ "type": "address",
215
+ "internalType": "address"
216
+ },
217
+ {
218
+ "name": "_index",
219
+ "type": "uint256",
220
+ "internalType": "uint256"
221
+ }
222
+ ],
223
+ "outputs": [
224
+ {
225
+ "name": "",
226
+ "type": "uint256",
227
+ "internalType": "uint256"
228
+ }
229
+ ],
230
+ "stateMutability": "view"
231
+ },
232
+ {
233
+ "type": "function",
234
+ "name": "totalSupply",
235
+ "inputs": [],
236
+ "outputs": [
237
+ {
238
+ "name": "",
239
+ "type": "uint256",
240
+ "internalType": "uint256"
241
+ }
242
+ ],
243
+ "stateMutability": "view"
244
+ },
245
+ {
246
+ "type": "function",
247
+ "name": "transferFrom",
248
+ "inputs": [
249
+ {
250
+ "name": "_from",
251
+ "type": "address",
252
+ "internalType": "address"
253
+ },
254
+ {
255
+ "name": "_to",
256
+ "type": "address",
257
+ "internalType": "address"
258
+ },
259
+ {
260
+ "name": "_tokenId",
261
+ "type": "uint256",
262
+ "internalType": "uint256"
263
+ }
264
+ ],
265
+ "outputs": [],
266
+ "stateMutability": "payable"
267
+ },
268
+ {
269
+ "type": "event",
270
+ "name": "Approval",
271
+ "inputs": [
272
+ {
273
+ "name": "_owner",
274
+ "type": "address",
275
+ "indexed": true,
276
+ "internalType": "address"
277
+ },
278
+ {
279
+ "name": "_approved",
280
+ "type": "address",
281
+ "indexed": true,
282
+ "internalType": "address"
283
+ },
284
+ {
285
+ "name": "_tokenId",
286
+ "type": "uint256",
287
+ "indexed": true,
288
+ "internalType": "uint256"
289
+ }
290
+ ],
291
+ "anonymous": false
292
+ },
293
+ {
294
+ "type": "event",
295
+ "name": "ApprovalForAll",
296
+ "inputs": [
297
+ {
298
+ "name": "_owner",
299
+ "type": "address",
300
+ "indexed": true,
301
+ "internalType": "address"
302
+ },
303
+ {
304
+ "name": "_operator",
305
+ "type": "address",
306
+ "indexed": true,
307
+ "internalType": "address"
308
+ },
309
+ {
310
+ "name": "_approved",
311
+ "type": "bool",
312
+ "indexed": false,
313
+ "internalType": "bool"
314
+ }
315
+ ],
316
+ "anonymous": false
317
+ },
318
+ {
319
+ "type": "event",
320
+ "name": "Transfer",
321
+ "inputs": [
322
+ {
323
+ "name": "_from",
324
+ "type": "address",
325
+ "indexed": true,
326
+ "internalType": "address"
327
+ },
328
+ {
329
+ "name": "_to",
330
+ "type": "address",
331
+ "indexed": true,
332
+ "internalType": "address"
333
+ },
334
+ {
335
+ "name": "_tokenId",
336
+ "type": "uint256",
337
+ "indexed": true,
338
+ "internalType": "uint256"
339
+ }
340
+ ],
341
+ "anonymous": false
342
+ }
343
+ ]