@zoralabs/coins 2.1.2 → 2.2.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 (97) hide show
  1. package/.turbo/turbo-build$colon$js.log +152 -0
  2. package/CHANGELOG.md +54 -0
  3. package/abis/BaseCoin.json +26 -0
  4. package/abis/BaseTest.json +2 -7
  5. package/abis/CoinConstants.json +0 -104
  6. package/abis/ContentCoin.json +26 -0
  7. package/abis/CreatorCoin.json +30 -4
  8. package/abis/FeeEstimatorHook.json +0 -5
  9. package/abis/ICoin.json +26 -0
  10. package/abis/ICoinV3.json +26 -0
  11. package/abis/ICreatorCoin.json +39 -0
  12. package/abis/IERC721.json +36 -36
  13. package/abis/IHasCoinType.json +15 -0
  14. package/abis/IHasTotalSupplyForPositions.json +15 -0
  15. package/abis/IZoraFactory.json +52 -0
  16. package/abis/IZoraHookRegistry.json +188 -0
  17. package/abis/VmContractHelper227.json +233 -0
  18. package/abis/ZoraFactoryImpl.json +32 -6
  19. package/abis/ZoraHookRegistry.json +375 -0
  20. package/abis/{CreatorCoinHook.json → ZoraV4CoinHook.json} +1 -1
  21. package/addresses/8453.json +2 -1
  22. package/dist/index.cjs +72 -10
  23. package/dist/index.cjs.map +1 -1
  24. package/dist/index.js +72 -10
  25. package/dist/index.js.map +1 -1
  26. package/dist/wagmiGenerated.d.ts +90 -10
  27. package/dist/wagmiGenerated.d.ts.map +1 -1
  28. package/foundry.toml +4 -1
  29. package/package/wagmiGenerated.ts +72 -10
  30. package/package.json +6 -4
  31. package/script/PrintRegisterUpgradePath.s.sol +0 -7
  32. package/script/TestBackingCoinSwap.s.sol +0 -1
  33. package/script/TestV4Swap.s.sol +0 -1
  34. package/script/UpgradeFactoryImpl.s.sol +1 -1
  35. package/src/BaseCoin.sol +15 -12
  36. package/src/ContentCoin.sol +10 -0
  37. package/src/CreatorCoin.sol +28 -7
  38. package/src/ZoraFactoryImpl.sol +62 -23
  39. package/src/deployment/CoinsDeployerBase.sol +24 -58
  40. package/src/hook-registry/ZoraHookRegistry.sol +93 -0
  41. package/src/hooks/{BaseZoraV4CoinHook.sol → ZoraV4CoinHook.sol} +13 -8
  42. package/src/interfaces/ICoin.sol +19 -1
  43. package/src/interfaces/ICreatorCoin.sol +4 -0
  44. package/src/interfaces/IZoraFactory.sol +32 -10
  45. package/src/interfaces/IZoraHookRegistry.sol +47 -0
  46. package/src/libs/CoinConstants.sol +0 -32
  47. package/src/libs/CoinRewardsV4.sol +53 -15
  48. package/src/libs/CreatorCoinConstants.sol +0 -1
  49. package/src/libs/HooksDeployment.sol +13 -65
  50. package/src/libs/MarketConstants.sol +11 -3
  51. package/src/libs/V4Liquidity.sol +30 -0
  52. package/src/version/ContractVersionBase.sol +1 -1
  53. package/test/CoinUniV4.t.sol +33 -30
  54. package/test/ContentCoinRewards.t.sol +320 -0
  55. package/test/CreatorCoin.t.sol +1 -1
  56. package/test/CreatorCoinRewards.t.sol +375 -0
  57. package/test/DeploymentHooks.t.sol +10 -10
  58. package/test/Factory.t.sol +24 -7
  59. package/test/HooksDeployment.t.sol +4 -4
  60. package/test/LiquidityMigration.t.sol +4 -9
  61. package/test/Upgrades.t.sol +44 -48
  62. package/test/ZoraHookRegistry.t.sol +266 -0
  63. package/test/utils/BaseTest.sol +25 -42
  64. package/test/utils/FeeEstimatorHook.sol +4 -6
  65. package/test/utils/RewardTestHelpers.sol +106 -0
  66. package/.turbo/turbo-build.log +0 -199
  67. package/abis/AutoSwapperTest.json +0 -618
  68. package/abis/BadImpl.json +0 -15
  69. package/abis/BaseZoraV4CoinHook.json +0 -1664
  70. package/abis/CoinTest.json +0 -819
  71. package/abis/CoinUniV4Test.json +0 -1128
  72. package/abis/ContentCoinHook.json +0 -1733
  73. package/abis/CreatorCoinTest.json +0 -887
  74. package/abis/Deploy.json +0 -9
  75. package/abis/DeployHooks.json +0 -9
  76. package/abis/DeployScript.json +0 -35
  77. package/abis/DeployedCoinVersionLookupTest.json +0 -740
  78. package/abis/DifferentNamespaceVersionLookup.json +0 -39
  79. package/abis/FactoryTest.json +0 -748
  80. package/abis/FakeHookNoInterface.json +0 -21
  81. package/abis/GenerateDeterministicParams.json +0 -9
  82. package/abis/HooksDeploymentTest.json +0 -645
  83. package/abis/HooksTest.json +0 -709
  84. package/abis/InvalidLiquidityMigrationReceiver.json +0 -21
  85. package/abis/LiquidityMigrationReceiver.json +0 -103
  86. package/abis/LiquidityMigrationTest.json +0 -889
  87. package/abis/MockBadFactory.json +0 -15
  88. package/abis/MultiOwnableTest.json +0 -766
  89. package/abis/PrintUpgradeCommand.json +0 -9
  90. package/abis/TestDeployedCoinVersionLookupImplementation.json +0 -39
  91. package/abis/TestV4Swap.json +0 -9
  92. package/abis/UpgradeFactoryImpl.json +0 -9
  93. package/abis/UpgradeHooks.json +0 -35
  94. package/abis/UpgradesTest.json +0 -723
  95. package/src/hooks/ContentCoinHook.sol +0 -27
  96. package/src/hooks/CreatorCoinHook.sol +0 -27
  97. package/src/libs/CreatorCoinRewards.sol +0 -34
@@ -1,21 +0,0 @@
1
- [
2
- {
3
- "type": "function",
4
- "name": "supportsInterface",
5
- "inputs": [
6
- {
7
- "name": "",
8
- "type": "bytes4",
9
- "internalType": "bytes4"
10
- }
11
- ],
12
- "outputs": [
13
- {
14
- "name": "",
15
- "type": "bool",
16
- "internalType": "bool"
17
- }
18
- ],
19
- "stateMutability": "pure"
20
- }
21
- ]
@@ -1,9 +0,0 @@
1
- [
2
- {
3
- "type": "function",
4
- "name": "run",
5
- "inputs": [],
6
- "outputs": [],
7
- "stateMutability": "nonpayable"
8
- }
9
- ]
@@ -1,645 +0,0 @@
1
- [
2
- {
3
- "type": "function",
4
- "name": "IS_TEST",
5
- "inputs": [],
6
- "outputs": [
7
- {
8
- "name": "",
9
- "type": "bool",
10
- "internalType": "bool"
11
- }
12
- ],
13
- "stateMutability": "view"
14
- },
15
- {
16
- "type": "function",
17
- "name": "excludeArtifacts",
18
- "inputs": [],
19
- "outputs": [
20
- {
21
- "name": "excludedArtifacts_",
22
- "type": "string[]",
23
- "internalType": "string[]"
24
- }
25
- ],
26
- "stateMutability": "view"
27
- },
28
- {
29
- "type": "function",
30
- "name": "excludeContracts",
31
- "inputs": [],
32
- "outputs": [
33
- {
34
- "name": "excludedContracts_",
35
- "type": "address[]",
36
- "internalType": "address[]"
37
- }
38
- ],
39
- "stateMutability": "view"
40
- },
41
- {
42
- "type": "function",
43
- "name": "excludeSelectors",
44
- "inputs": [],
45
- "outputs": [
46
- {
47
- "name": "excludedSelectors_",
48
- "type": "tuple[]",
49
- "internalType": "struct StdInvariant.FuzzSelector[]",
50
- "components": [
51
- {
52
- "name": "addr",
53
- "type": "address",
54
- "internalType": "address"
55
- },
56
- {
57
- "name": "selectors",
58
- "type": "bytes4[]",
59
- "internalType": "bytes4[]"
60
- }
61
- ]
62
- }
63
- ],
64
- "stateMutability": "view"
65
- },
66
- {
67
- "type": "function",
68
- "name": "excludeSenders",
69
- "inputs": [],
70
- "outputs": [
71
- {
72
- "name": "excludedSenders_",
73
- "type": "address[]",
74
- "internalType": "address[]"
75
- }
76
- ],
77
- "stateMutability": "view"
78
- },
79
- {
80
- "type": "function",
81
- "name": "failed",
82
- "inputs": [],
83
- "outputs": [
84
- {
85
- "name": "",
86
- "type": "bool",
87
- "internalType": "bool"
88
- }
89
- ],
90
- "stateMutability": "view"
91
- },
92
- {
93
- "type": "function",
94
- "name": "setUp",
95
- "inputs": [],
96
- "outputs": [],
97
- "stateMutability": "nonpayable"
98
- },
99
- {
100
- "type": "function",
101
- "name": "targetArtifactSelectors",
102
- "inputs": [],
103
- "outputs": [
104
- {
105
- "name": "targetedArtifactSelectors_",
106
- "type": "tuple[]",
107
- "internalType": "struct StdInvariant.FuzzArtifactSelector[]",
108
- "components": [
109
- {
110
- "name": "artifact",
111
- "type": "string",
112
- "internalType": "string"
113
- },
114
- {
115
- "name": "selectors",
116
- "type": "bytes4[]",
117
- "internalType": "bytes4[]"
118
- }
119
- ]
120
- }
121
- ],
122
- "stateMutability": "view"
123
- },
124
- {
125
- "type": "function",
126
- "name": "targetArtifacts",
127
- "inputs": [],
128
- "outputs": [
129
- {
130
- "name": "targetedArtifacts_",
131
- "type": "string[]",
132
- "internalType": "string[]"
133
- }
134
- ],
135
- "stateMutability": "view"
136
- },
137
- {
138
- "type": "function",
139
- "name": "targetContracts",
140
- "inputs": [],
141
- "outputs": [
142
- {
143
- "name": "targetedContracts_",
144
- "type": "address[]",
145
- "internalType": "address[]"
146
- }
147
- ],
148
- "stateMutability": "view"
149
- },
150
- {
151
- "type": "function",
152
- "name": "targetInterfaces",
153
- "inputs": [],
154
- "outputs": [
155
- {
156
- "name": "targetedInterfaces_",
157
- "type": "tuple[]",
158
- "internalType": "struct StdInvariant.FuzzInterface[]",
159
- "components": [
160
- {
161
- "name": "addr",
162
- "type": "address",
163
- "internalType": "address"
164
- },
165
- {
166
- "name": "artifacts",
167
- "type": "string[]",
168
- "internalType": "string[]"
169
- }
170
- ]
171
- }
172
- ],
173
- "stateMutability": "view"
174
- },
175
- {
176
- "type": "function",
177
- "name": "targetSelectors",
178
- "inputs": [],
179
- "outputs": [
180
- {
181
- "name": "targetedSelectors_",
182
- "type": "tuple[]",
183
- "internalType": "struct StdInvariant.FuzzSelector[]",
184
- "components": [
185
- {
186
- "name": "addr",
187
- "type": "address",
188
- "internalType": "address"
189
- },
190
- {
191
- "name": "selectors",
192
- "type": "bytes4[]",
193
- "internalType": "bytes4[]"
194
- }
195
- ]
196
- }
197
- ],
198
- "stateMutability": "view"
199
- },
200
- {
201
- "type": "function",
202
- "name": "targetSenders",
203
- "inputs": [],
204
- "outputs": [
205
- {
206
- "name": "targetedSenders_",
207
- "type": "address[]",
208
- "internalType": "address[]"
209
- }
210
- ],
211
- "stateMutability": "view"
212
- },
213
- {
214
- "type": "function",
215
- "name": "test_canDeployContentCoinHookFromScript",
216
- "inputs": [],
217
- "outputs": [],
218
- "stateMutability": "nonpayable"
219
- },
220
- {
221
- "type": "function",
222
- "name": "test_canDeployCreatorCoinHookFromScript",
223
- "inputs": [],
224
- "outputs": [],
225
- "stateMutability": "nonpayable"
226
- },
227
- {
228
- "type": "function",
229
- "name": "test_canMineAndCacheSalt",
230
- "inputs": [],
231
- "outputs": [],
232
- "stateMutability": "nonpayable"
233
- },
234
- {
235
- "type": "event",
236
- "name": "log",
237
- "inputs": [
238
- {
239
- "name": "",
240
- "type": "string",
241
- "indexed": false,
242
- "internalType": "string"
243
- }
244
- ],
245
- "anonymous": false
246
- },
247
- {
248
- "type": "event",
249
- "name": "log_address",
250
- "inputs": [
251
- {
252
- "name": "",
253
- "type": "address",
254
- "indexed": false,
255
- "internalType": "address"
256
- }
257
- ],
258
- "anonymous": false
259
- },
260
- {
261
- "type": "event",
262
- "name": "log_array",
263
- "inputs": [
264
- {
265
- "name": "val",
266
- "type": "uint256[]",
267
- "indexed": false,
268
- "internalType": "uint256[]"
269
- }
270
- ],
271
- "anonymous": false
272
- },
273
- {
274
- "type": "event",
275
- "name": "log_array",
276
- "inputs": [
277
- {
278
- "name": "val",
279
- "type": "int256[]",
280
- "indexed": false,
281
- "internalType": "int256[]"
282
- }
283
- ],
284
- "anonymous": false
285
- },
286
- {
287
- "type": "event",
288
- "name": "log_array",
289
- "inputs": [
290
- {
291
- "name": "val",
292
- "type": "address[]",
293
- "indexed": false,
294
- "internalType": "address[]"
295
- }
296
- ],
297
- "anonymous": false
298
- },
299
- {
300
- "type": "event",
301
- "name": "log_bytes",
302
- "inputs": [
303
- {
304
- "name": "",
305
- "type": "bytes",
306
- "indexed": false,
307
- "internalType": "bytes"
308
- }
309
- ],
310
- "anonymous": false
311
- },
312
- {
313
- "type": "event",
314
- "name": "log_bytes32",
315
- "inputs": [
316
- {
317
- "name": "",
318
- "type": "bytes32",
319
- "indexed": false,
320
- "internalType": "bytes32"
321
- }
322
- ],
323
- "anonymous": false
324
- },
325
- {
326
- "type": "event",
327
- "name": "log_int",
328
- "inputs": [
329
- {
330
- "name": "",
331
- "type": "int256",
332
- "indexed": false,
333
- "internalType": "int256"
334
- }
335
- ],
336
- "anonymous": false
337
- },
338
- {
339
- "type": "event",
340
- "name": "log_named_address",
341
- "inputs": [
342
- {
343
- "name": "key",
344
- "type": "string",
345
- "indexed": false,
346
- "internalType": "string"
347
- },
348
- {
349
- "name": "val",
350
- "type": "address",
351
- "indexed": false,
352
- "internalType": "address"
353
- }
354
- ],
355
- "anonymous": false
356
- },
357
- {
358
- "type": "event",
359
- "name": "log_named_array",
360
- "inputs": [
361
- {
362
- "name": "key",
363
- "type": "string",
364
- "indexed": false,
365
- "internalType": "string"
366
- },
367
- {
368
- "name": "val",
369
- "type": "uint256[]",
370
- "indexed": false,
371
- "internalType": "uint256[]"
372
- }
373
- ],
374
- "anonymous": false
375
- },
376
- {
377
- "type": "event",
378
- "name": "log_named_array",
379
- "inputs": [
380
- {
381
- "name": "key",
382
- "type": "string",
383
- "indexed": false,
384
- "internalType": "string"
385
- },
386
- {
387
- "name": "val",
388
- "type": "int256[]",
389
- "indexed": false,
390
- "internalType": "int256[]"
391
- }
392
- ],
393
- "anonymous": false
394
- },
395
- {
396
- "type": "event",
397
- "name": "log_named_array",
398
- "inputs": [
399
- {
400
- "name": "key",
401
- "type": "string",
402
- "indexed": false,
403
- "internalType": "string"
404
- },
405
- {
406
- "name": "val",
407
- "type": "address[]",
408
- "indexed": false,
409
- "internalType": "address[]"
410
- }
411
- ],
412
- "anonymous": false
413
- },
414
- {
415
- "type": "event",
416
- "name": "log_named_bytes",
417
- "inputs": [
418
- {
419
- "name": "key",
420
- "type": "string",
421
- "indexed": false,
422
- "internalType": "string"
423
- },
424
- {
425
- "name": "val",
426
- "type": "bytes",
427
- "indexed": false,
428
- "internalType": "bytes"
429
- }
430
- ],
431
- "anonymous": false
432
- },
433
- {
434
- "type": "event",
435
- "name": "log_named_bytes32",
436
- "inputs": [
437
- {
438
- "name": "key",
439
- "type": "string",
440
- "indexed": false,
441
- "internalType": "string"
442
- },
443
- {
444
- "name": "val",
445
- "type": "bytes32",
446
- "indexed": false,
447
- "internalType": "bytes32"
448
- }
449
- ],
450
- "anonymous": false
451
- },
452
- {
453
- "type": "event",
454
- "name": "log_named_decimal_int",
455
- "inputs": [
456
- {
457
- "name": "key",
458
- "type": "string",
459
- "indexed": false,
460
- "internalType": "string"
461
- },
462
- {
463
- "name": "val",
464
- "type": "int256",
465
- "indexed": false,
466
- "internalType": "int256"
467
- },
468
- {
469
- "name": "decimals",
470
- "type": "uint256",
471
- "indexed": false,
472
- "internalType": "uint256"
473
- }
474
- ],
475
- "anonymous": false
476
- },
477
- {
478
- "type": "event",
479
- "name": "log_named_decimal_uint",
480
- "inputs": [
481
- {
482
- "name": "key",
483
- "type": "string",
484
- "indexed": false,
485
- "internalType": "string"
486
- },
487
- {
488
- "name": "val",
489
- "type": "uint256",
490
- "indexed": false,
491
- "internalType": "uint256"
492
- },
493
- {
494
- "name": "decimals",
495
- "type": "uint256",
496
- "indexed": false,
497
- "internalType": "uint256"
498
- }
499
- ],
500
- "anonymous": false
501
- },
502
- {
503
- "type": "event",
504
- "name": "log_named_int",
505
- "inputs": [
506
- {
507
- "name": "key",
508
- "type": "string",
509
- "indexed": false,
510
- "internalType": "string"
511
- },
512
- {
513
- "name": "val",
514
- "type": "int256",
515
- "indexed": false,
516
- "internalType": "int256"
517
- }
518
- ],
519
- "anonymous": false
520
- },
521
- {
522
- "type": "event",
523
- "name": "log_named_string",
524
- "inputs": [
525
- {
526
- "name": "key",
527
- "type": "string",
528
- "indexed": false,
529
- "internalType": "string"
530
- },
531
- {
532
- "name": "val",
533
- "type": "string",
534
- "indexed": false,
535
- "internalType": "string"
536
- }
537
- ],
538
- "anonymous": false
539
- },
540
- {
541
- "type": "event",
542
- "name": "log_named_uint",
543
- "inputs": [
544
- {
545
- "name": "key",
546
- "type": "string",
547
- "indexed": false,
548
- "internalType": "string"
549
- },
550
- {
551
- "name": "val",
552
- "type": "uint256",
553
- "indexed": false,
554
- "internalType": "uint256"
555
- }
556
- ],
557
- "anonymous": false
558
- },
559
- {
560
- "type": "event",
561
- "name": "log_string",
562
- "inputs": [
563
- {
564
- "name": "",
565
- "type": "string",
566
- "indexed": false,
567
- "internalType": "string"
568
- }
569
- ],
570
- "anonymous": false
571
- },
572
- {
573
- "type": "event",
574
- "name": "log_uint",
575
- "inputs": [
576
- {
577
- "name": "",
578
- "type": "uint256",
579
- "indexed": false,
580
- "internalType": "uint256"
581
- }
582
- ],
583
- "anonymous": false
584
- },
585
- {
586
- "type": "event",
587
- "name": "logs",
588
- "inputs": [
589
- {
590
- "name": "",
591
- "type": "bytes",
592
- "indexed": false,
593
- "internalType": "bytes"
594
- }
595
- ],
596
- "anonymous": false
597
- },
598
- {
599
- "type": "error",
600
- "name": "Create2EmptyBytecode",
601
- "inputs": []
602
- },
603
- {
604
- "type": "error",
605
- "name": "Create2FailedDeployment",
606
- "inputs": []
607
- },
608
- {
609
- "type": "error",
610
- "name": "Create2InsufficientBalance",
611
- "inputs": [
612
- {
613
- "name": "balance",
614
- "type": "uint256",
615
- "internalType": "uint256"
616
- },
617
- {
618
- "name": "needed",
619
- "type": "uint256",
620
- "internalType": "uint256"
621
- }
622
- ]
623
- },
624
- {
625
- "type": "error",
626
- "name": "HookNotDeployed",
627
- "inputs": []
628
- },
629
- {
630
- "type": "error",
631
- "name": "InvalidHookAddress",
632
- "inputs": [
633
- {
634
- "name": "expected",
635
- "type": "address",
636
- "internalType": "address"
637
- },
638
- {
639
- "name": "actual",
640
- "type": "address",
641
- "internalType": "address"
642
- }
643
- ]
644
- }
645
- ]