@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,60 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "nonces",
5
+ "inputs": [
6
+ {
7
+ "name": "owner",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ }
11
+ ],
12
+ "outputs": [
13
+ {
14
+ "name": "",
15
+ "type": "uint256",
16
+ "internalType": "uint256"
17
+ }
18
+ ],
19
+ "stateMutability": "view"
20
+ },
21
+ {
22
+ "type": "event",
23
+ "name": "Initialized",
24
+ "inputs": [
25
+ {
26
+ "name": "version",
27
+ "type": "uint64",
28
+ "indexed": false,
29
+ "internalType": "uint64"
30
+ }
31
+ ],
32
+ "anonymous": false
33
+ },
34
+ {
35
+ "type": "error",
36
+ "name": "InvalidAccountNonce",
37
+ "inputs": [
38
+ {
39
+ "name": "account",
40
+ "type": "address",
41
+ "internalType": "address"
42
+ },
43
+ {
44
+ "name": "currentNonce",
45
+ "type": "uint256",
46
+ "internalType": "uint256"
47
+ }
48
+ ]
49
+ },
50
+ {
51
+ "type": "error",
52
+ "name": "InvalidInitialization",
53
+ "inputs": []
54
+ },
55
+ {
56
+ "type": "error",
57
+ "name": "NotInitializing",
58
+ "inputs": []
59
+ }
60
+ ]
@@ -0,0 +1,99 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "owner",
5
+ "inputs": [],
6
+ "outputs": [
7
+ {
8
+ "name": "",
9
+ "type": "address",
10
+ "internalType": "address"
11
+ }
12
+ ],
13
+ "stateMutability": "view"
14
+ },
15
+ {
16
+ "type": "function",
17
+ "name": "renounceOwnership",
18
+ "inputs": [],
19
+ "outputs": [],
20
+ "stateMutability": "nonpayable"
21
+ },
22
+ {
23
+ "type": "function",
24
+ "name": "transferOwnership",
25
+ "inputs": [
26
+ {
27
+ "name": "newOwner",
28
+ "type": "address",
29
+ "internalType": "address"
30
+ }
31
+ ],
32
+ "outputs": [],
33
+ "stateMutability": "nonpayable"
34
+ },
35
+ {
36
+ "type": "event",
37
+ "name": "Initialized",
38
+ "inputs": [
39
+ {
40
+ "name": "version",
41
+ "type": "uint64",
42
+ "indexed": false,
43
+ "internalType": "uint64"
44
+ }
45
+ ],
46
+ "anonymous": false
47
+ },
48
+ {
49
+ "type": "event",
50
+ "name": "OwnershipTransferred",
51
+ "inputs": [
52
+ {
53
+ "name": "previousOwner",
54
+ "type": "address",
55
+ "indexed": true,
56
+ "internalType": "address"
57
+ },
58
+ {
59
+ "name": "newOwner",
60
+ "type": "address",
61
+ "indexed": true,
62
+ "internalType": "address"
63
+ }
64
+ ],
65
+ "anonymous": false
66
+ },
67
+ {
68
+ "type": "error",
69
+ "name": "InvalidInitialization",
70
+ "inputs": []
71
+ },
72
+ {
73
+ "type": "error",
74
+ "name": "NotInitializing",
75
+ "inputs": []
76
+ },
77
+ {
78
+ "type": "error",
79
+ "name": "OwnableInvalidOwner",
80
+ "inputs": [
81
+ {
82
+ "name": "owner",
83
+ "type": "address",
84
+ "internalType": "address"
85
+ }
86
+ ]
87
+ },
88
+ {
89
+ "type": "error",
90
+ "name": "OwnableUnauthorizedAccount",
91
+ "inputs": [
92
+ {
93
+ "name": "account",
94
+ "type": "address",
95
+ "internalType": "address"
96
+ }
97
+ ]
98
+ }
99
+ ]
@@ -0,0 +1,494 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [],
5
+ "stateMutability": "payable"
6
+ },
7
+ {
8
+ "type": "function",
9
+ "name": "WITHDRAW_TYPEHASH",
10
+ "inputs": [],
11
+ "outputs": [
12
+ {
13
+ "name": "",
14
+ "type": "bytes32",
15
+ "internalType": "bytes32"
16
+ }
17
+ ],
18
+ "stateMutability": "view"
19
+ },
20
+ {
21
+ "type": "function",
22
+ "name": "balanceOf",
23
+ "inputs": [
24
+ {
25
+ "name": "",
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": "deposit",
42
+ "inputs": [
43
+ {
44
+ "name": "to",
45
+ "type": "address",
46
+ "internalType": "address"
47
+ },
48
+ {
49
+ "name": "reason",
50
+ "type": "bytes4",
51
+ "internalType": "bytes4"
52
+ },
53
+ {
54
+ "name": "comment",
55
+ "type": "string",
56
+ "internalType": "string"
57
+ }
58
+ ],
59
+ "outputs": [],
60
+ "stateMutability": "payable"
61
+ },
62
+ {
63
+ "type": "function",
64
+ "name": "depositBatch",
65
+ "inputs": [
66
+ {
67
+ "name": "recipients",
68
+ "type": "address[]",
69
+ "internalType": "address[]"
70
+ },
71
+ {
72
+ "name": "amounts",
73
+ "type": "uint256[]",
74
+ "internalType": "uint256[]"
75
+ },
76
+ {
77
+ "name": "reasons",
78
+ "type": "bytes4[]",
79
+ "internalType": "bytes4[]"
80
+ },
81
+ {
82
+ "name": "comment",
83
+ "type": "string",
84
+ "internalType": "string"
85
+ }
86
+ ],
87
+ "outputs": [],
88
+ "stateMutability": "payable"
89
+ },
90
+ {
91
+ "type": "function",
92
+ "name": "depositRewards",
93
+ "inputs": [
94
+ {
95
+ "name": "creator",
96
+ "type": "address",
97
+ "internalType": "address"
98
+ },
99
+ {
100
+ "name": "creatorReward",
101
+ "type": "uint256",
102
+ "internalType": "uint256"
103
+ },
104
+ {
105
+ "name": "createReferral",
106
+ "type": "address",
107
+ "internalType": "address"
108
+ },
109
+ {
110
+ "name": "createReferralReward",
111
+ "type": "uint256",
112
+ "internalType": "uint256"
113
+ },
114
+ {
115
+ "name": "mintReferral",
116
+ "type": "address",
117
+ "internalType": "address"
118
+ },
119
+ {
120
+ "name": "mintReferralReward",
121
+ "type": "uint256",
122
+ "internalType": "uint256"
123
+ },
124
+ {
125
+ "name": "firstMinter",
126
+ "type": "address",
127
+ "internalType": "address"
128
+ },
129
+ {
130
+ "name": "firstMinterReward",
131
+ "type": "uint256",
132
+ "internalType": "uint256"
133
+ },
134
+ {
135
+ "name": "zora",
136
+ "type": "address",
137
+ "internalType": "address"
138
+ },
139
+ {
140
+ "name": "zoraReward",
141
+ "type": "uint256",
142
+ "internalType": "uint256"
143
+ }
144
+ ],
145
+ "outputs": [],
146
+ "stateMutability": "payable"
147
+ },
148
+ {
149
+ "type": "function",
150
+ "name": "eip712Domain",
151
+ "inputs": [],
152
+ "outputs": [
153
+ {
154
+ "name": "fields",
155
+ "type": "bytes1",
156
+ "internalType": "bytes1"
157
+ },
158
+ {
159
+ "name": "name",
160
+ "type": "string",
161
+ "internalType": "string"
162
+ },
163
+ {
164
+ "name": "version",
165
+ "type": "string",
166
+ "internalType": "string"
167
+ },
168
+ {
169
+ "name": "chainId",
170
+ "type": "uint256",
171
+ "internalType": "uint256"
172
+ },
173
+ {
174
+ "name": "verifyingContract",
175
+ "type": "address",
176
+ "internalType": "address"
177
+ },
178
+ {
179
+ "name": "salt",
180
+ "type": "bytes32",
181
+ "internalType": "bytes32"
182
+ },
183
+ {
184
+ "name": "extensions",
185
+ "type": "uint256[]",
186
+ "internalType": "uint256[]"
187
+ }
188
+ ],
189
+ "stateMutability": "view"
190
+ },
191
+ {
192
+ "type": "function",
193
+ "name": "nonces",
194
+ "inputs": [
195
+ {
196
+ "name": "",
197
+ "type": "address",
198
+ "internalType": "address"
199
+ }
200
+ ],
201
+ "outputs": [
202
+ {
203
+ "name": "",
204
+ "type": "uint256",
205
+ "internalType": "uint256"
206
+ }
207
+ ],
208
+ "stateMutability": "view"
209
+ },
210
+ {
211
+ "type": "function",
212
+ "name": "totalSupply",
213
+ "inputs": [],
214
+ "outputs": [
215
+ {
216
+ "name": "",
217
+ "type": "uint256",
218
+ "internalType": "uint256"
219
+ }
220
+ ],
221
+ "stateMutability": "view"
222
+ },
223
+ {
224
+ "type": "function",
225
+ "name": "withdraw",
226
+ "inputs": [
227
+ {
228
+ "name": "to",
229
+ "type": "address",
230
+ "internalType": "address"
231
+ },
232
+ {
233
+ "name": "amount",
234
+ "type": "uint256",
235
+ "internalType": "uint256"
236
+ }
237
+ ],
238
+ "outputs": [],
239
+ "stateMutability": "nonpayable"
240
+ },
241
+ {
242
+ "type": "function",
243
+ "name": "withdrawFor",
244
+ "inputs": [
245
+ {
246
+ "name": "to",
247
+ "type": "address",
248
+ "internalType": "address"
249
+ },
250
+ {
251
+ "name": "amount",
252
+ "type": "uint256",
253
+ "internalType": "uint256"
254
+ }
255
+ ],
256
+ "outputs": [],
257
+ "stateMutability": "nonpayable"
258
+ },
259
+ {
260
+ "type": "function",
261
+ "name": "withdrawWithSig",
262
+ "inputs": [
263
+ {
264
+ "name": "from",
265
+ "type": "address",
266
+ "internalType": "address"
267
+ },
268
+ {
269
+ "name": "to",
270
+ "type": "address",
271
+ "internalType": "address"
272
+ },
273
+ {
274
+ "name": "amount",
275
+ "type": "uint256",
276
+ "internalType": "uint256"
277
+ },
278
+ {
279
+ "name": "deadline",
280
+ "type": "uint256",
281
+ "internalType": "uint256"
282
+ },
283
+ {
284
+ "name": "v",
285
+ "type": "uint8",
286
+ "internalType": "uint8"
287
+ },
288
+ {
289
+ "name": "r",
290
+ "type": "bytes32",
291
+ "internalType": "bytes32"
292
+ },
293
+ {
294
+ "name": "s",
295
+ "type": "bytes32",
296
+ "internalType": "bytes32"
297
+ }
298
+ ],
299
+ "outputs": [],
300
+ "stateMutability": "nonpayable"
301
+ },
302
+ {
303
+ "type": "event",
304
+ "name": "Deposit",
305
+ "inputs": [
306
+ {
307
+ "name": "from",
308
+ "type": "address",
309
+ "indexed": true,
310
+ "internalType": "address"
311
+ },
312
+ {
313
+ "name": "to",
314
+ "type": "address",
315
+ "indexed": true,
316
+ "internalType": "address"
317
+ },
318
+ {
319
+ "name": "reason",
320
+ "type": "bytes4",
321
+ "indexed": true,
322
+ "internalType": "bytes4"
323
+ },
324
+ {
325
+ "name": "amount",
326
+ "type": "uint256",
327
+ "indexed": false,
328
+ "internalType": "uint256"
329
+ },
330
+ {
331
+ "name": "comment",
332
+ "type": "string",
333
+ "indexed": false,
334
+ "internalType": "string"
335
+ }
336
+ ],
337
+ "anonymous": false
338
+ },
339
+ {
340
+ "type": "event",
341
+ "name": "EIP712DomainChanged",
342
+ "inputs": [],
343
+ "anonymous": false
344
+ },
345
+ {
346
+ "type": "event",
347
+ "name": "RewardsDeposit",
348
+ "inputs": [
349
+ {
350
+ "name": "creator",
351
+ "type": "address",
352
+ "indexed": true,
353
+ "internalType": "address"
354
+ },
355
+ {
356
+ "name": "createReferral",
357
+ "type": "address",
358
+ "indexed": true,
359
+ "internalType": "address"
360
+ },
361
+ {
362
+ "name": "mintReferral",
363
+ "type": "address",
364
+ "indexed": true,
365
+ "internalType": "address"
366
+ },
367
+ {
368
+ "name": "firstMinter",
369
+ "type": "address",
370
+ "indexed": false,
371
+ "internalType": "address"
372
+ },
373
+ {
374
+ "name": "zora",
375
+ "type": "address",
376
+ "indexed": false,
377
+ "internalType": "address"
378
+ },
379
+ {
380
+ "name": "from",
381
+ "type": "address",
382
+ "indexed": false,
383
+ "internalType": "address"
384
+ },
385
+ {
386
+ "name": "creatorReward",
387
+ "type": "uint256",
388
+ "indexed": false,
389
+ "internalType": "uint256"
390
+ },
391
+ {
392
+ "name": "createReferralReward",
393
+ "type": "uint256",
394
+ "indexed": false,
395
+ "internalType": "uint256"
396
+ },
397
+ {
398
+ "name": "mintReferralReward",
399
+ "type": "uint256",
400
+ "indexed": false,
401
+ "internalType": "uint256"
402
+ },
403
+ {
404
+ "name": "firstMinterReward",
405
+ "type": "uint256",
406
+ "indexed": false,
407
+ "internalType": "uint256"
408
+ },
409
+ {
410
+ "name": "zoraReward",
411
+ "type": "uint256",
412
+ "indexed": false,
413
+ "internalType": "uint256"
414
+ }
415
+ ],
416
+ "anonymous": false
417
+ },
418
+ {
419
+ "type": "event",
420
+ "name": "Withdraw",
421
+ "inputs": [
422
+ {
423
+ "name": "from",
424
+ "type": "address",
425
+ "indexed": true,
426
+ "internalType": "address"
427
+ },
428
+ {
429
+ "name": "to",
430
+ "type": "address",
431
+ "indexed": true,
432
+ "internalType": "address"
433
+ },
434
+ {
435
+ "name": "amount",
436
+ "type": "uint256",
437
+ "indexed": false,
438
+ "internalType": "uint256"
439
+ }
440
+ ],
441
+ "anonymous": false
442
+ },
443
+ {
444
+ "type": "error",
445
+ "name": "ADDRESS_ZERO",
446
+ "inputs": []
447
+ },
448
+ {
449
+ "type": "error",
450
+ "name": "ARRAY_LENGTH_MISMATCH",
451
+ "inputs": []
452
+ },
453
+ {
454
+ "type": "error",
455
+ "name": "INVALID_DEPOSIT",
456
+ "inputs": []
457
+ },
458
+ {
459
+ "type": "error",
460
+ "name": "INVALID_SIGNATURE",
461
+ "inputs": []
462
+ },
463
+ {
464
+ "type": "error",
465
+ "name": "INVALID_WITHDRAW",
466
+ "inputs": []
467
+ },
468
+ {
469
+ "type": "error",
470
+ "name": "InvalidShortString",
471
+ "inputs": []
472
+ },
473
+ {
474
+ "type": "error",
475
+ "name": "SIGNATURE_DEADLINE_EXPIRED",
476
+ "inputs": []
477
+ },
478
+ {
479
+ "type": "error",
480
+ "name": "StringTooLong",
481
+ "inputs": [
482
+ {
483
+ "name": "str",
484
+ "type": "string",
485
+ "internalType": "string"
486
+ }
487
+ ]
488
+ },
489
+ {
490
+ "type": "error",
491
+ "name": "TRANSFER_FAILED",
492
+ "inputs": []
493
+ }
494
+ ]
@@ -0,0 +1,6 @@
1
+ [
2
+ {
3
+ "type": "fallback",
4
+ "stateMutability": "payable"
5
+ }
6
+ ]
@@ -0,0 +1,30 @@
1
+ [
2
+ {
3
+ "type": "event",
4
+ "name": "Initialized",
5
+ "inputs": [
6
+ {
7
+ "name": "version",
8
+ "type": "uint64",
9
+ "indexed": false,
10
+ "internalType": "uint64"
11
+ }
12
+ ],
13
+ "anonymous": false
14
+ },
15
+ {
16
+ "type": "error",
17
+ "name": "InvalidInitialization",
18
+ "inputs": []
19
+ },
20
+ {
21
+ "type": "error",
22
+ "name": "NotInitializing",
23
+ "inputs": []
24
+ },
25
+ {
26
+ "type": "error",
27
+ "name": "ReentrancyGuardReentrantCall",
28
+ "inputs": []
29
+ }
30
+ ]