@zoralabs/coins 2.1.1 → 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 +60 -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 +7 -5
  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 +10 -12
  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,709 +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": "getSalts",
95
- "inputs": [
96
- {
97
- "name": "trustedMessageSenders",
98
- "type": "address[]",
99
- "internalType": "address[]"
100
- }
101
- ],
102
- "outputs": [
103
- {
104
- "name": "contentCoinSalt",
105
- "type": "bytes32",
106
- "internalType": "bytes32"
107
- },
108
- {
109
- "name": "creatorCoinSalt",
110
- "type": "bytes32",
111
- "internalType": "bytes32"
112
- }
113
- ],
114
- "stateMutability": "nonpayable"
115
- },
116
- {
117
- "type": "function",
118
- "name": "setUp",
119
- "inputs": [],
120
- "outputs": [],
121
- "stateMutability": "nonpayable"
122
- },
123
- {
124
- "type": "function",
125
- "name": "setUpWithBlockNumber",
126
- "inputs": [
127
- {
128
- "name": "forkBlockNumber",
129
- "type": "uint256",
130
- "internalType": "uint256"
131
- }
132
- ],
133
- "outputs": [],
134
- "stateMutability": "nonpayable"
135
- },
136
- {
137
- "type": "function",
138
- "name": "targetArtifactSelectors",
139
- "inputs": [],
140
- "outputs": [
141
- {
142
- "name": "targetedArtifactSelectors_",
143
- "type": "tuple[]",
144
- "internalType": "struct StdInvariant.FuzzArtifactSelector[]",
145
- "components": [
146
- {
147
- "name": "artifact",
148
- "type": "string",
149
- "internalType": "string"
150
- },
151
- {
152
- "name": "selectors",
153
- "type": "bytes4[]",
154
- "internalType": "bytes4[]"
155
- }
156
- ]
157
- }
158
- ],
159
- "stateMutability": "view"
160
- },
161
- {
162
- "type": "function",
163
- "name": "targetArtifacts",
164
- "inputs": [],
165
- "outputs": [
166
- {
167
- "name": "targetedArtifacts_",
168
- "type": "string[]",
169
- "internalType": "string[]"
170
- }
171
- ],
172
- "stateMutability": "view"
173
- },
174
- {
175
- "type": "function",
176
- "name": "targetContracts",
177
- "inputs": [],
178
- "outputs": [
179
- {
180
- "name": "targetedContracts_",
181
- "type": "address[]",
182
- "internalType": "address[]"
183
- }
184
- ],
185
- "stateMutability": "view"
186
- },
187
- {
188
- "type": "function",
189
- "name": "targetInterfaces",
190
- "inputs": [],
191
- "outputs": [
192
- {
193
- "name": "targetedInterfaces_",
194
- "type": "tuple[]",
195
- "internalType": "struct StdInvariant.FuzzInterface[]",
196
- "components": [
197
- {
198
- "name": "addr",
199
- "type": "address",
200
- "internalType": "address"
201
- },
202
- {
203
- "name": "artifacts",
204
- "type": "string[]",
205
- "internalType": "string[]"
206
- }
207
- ]
208
- }
209
- ],
210
- "stateMutability": "view"
211
- },
212
- {
213
- "type": "function",
214
- "name": "targetSelectors",
215
- "inputs": [],
216
- "outputs": [
217
- {
218
- "name": "targetedSelectors_",
219
- "type": "tuple[]",
220
- "internalType": "struct StdInvariant.FuzzSelector[]",
221
- "components": [
222
- {
223
- "name": "addr",
224
- "type": "address",
225
- "internalType": "address"
226
- },
227
- {
228
- "name": "selectors",
229
- "type": "bytes4[]",
230
- "internalType": "bytes4[]"
231
- }
232
- ]
233
- }
234
- ],
235
- "stateMutability": "view"
236
- },
237
- {
238
- "type": "function",
239
- "name": "targetSenders",
240
- "inputs": [],
241
- "outputs": [
242
- {
243
- "name": "targetedSenders_",
244
- "type": "address[]",
245
- "internalType": "address[]"
246
- }
247
- ],
248
- "stateMutability": "view"
249
- },
250
- {
251
- "type": "function",
252
- "name": "test_buySupplyWithEthUsingV3Hook_revertsWhenBadCall",
253
- "inputs": [],
254
- "outputs": [],
255
- "stateMutability": "nonpayable"
256
- },
257
- {
258
- "type": "function",
259
- "name": "test_buySupplyWithEthUsingV3Hook_revertsWhenHookNotRecipient",
260
- "inputs": [],
261
- "outputs": [],
262
- "stateMutability": "nonpayable"
263
- },
264
- {
265
- "type": "function",
266
- "name": "test_buySupplyWithEthUsingV4Hook_withExactInputMultiHop",
267
- "inputs": [
268
- {
269
- "name": "initialOrderSize",
270
- "type": "uint256",
271
- "internalType": "uint256"
272
- }
273
- ],
274
- "outputs": [],
275
- "stateMutability": "nonpayable"
276
- },
277
- {
278
- "type": "function",
279
- "name": "test_deployWithHook_revertsWhenEthAndNoHook",
280
- "inputs": [],
281
- "outputs": [],
282
- "stateMutability": "nonpayable"
283
- },
284
- {
285
- "type": "function",
286
- "name": "test_invalidHookReverts",
287
- "inputs": [],
288
- "outputs": [],
289
- "stateMutability": "nonpayable"
290
- },
291
- {
292
- "type": "function",
293
- "name": "test_noHookWorksAsNormal",
294
- "inputs": [],
295
- "outputs": [],
296
- "stateMutability": "nonpayable"
297
- },
298
- {
299
- "type": "event",
300
- "name": "log",
301
- "inputs": [
302
- {
303
- "name": "",
304
- "type": "string",
305
- "indexed": false,
306
- "internalType": "string"
307
- }
308
- ],
309
- "anonymous": false
310
- },
311
- {
312
- "type": "event",
313
- "name": "log_address",
314
- "inputs": [
315
- {
316
- "name": "",
317
- "type": "address",
318
- "indexed": false,
319
- "internalType": "address"
320
- }
321
- ],
322
- "anonymous": false
323
- },
324
- {
325
- "type": "event",
326
- "name": "log_array",
327
- "inputs": [
328
- {
329
- "name": "val",
330
- "type": "uint256[]",
331
- "indexed": false,
332
- "internalType": "uint256[]"
333
- }
334
- ],
335
- "anonymous": false
336
- },
337
- {
338
- "type": "event",
339
- "name": "log_array",
340
- "inputs": [
341
- {
342
- "name": "val",
343
- "type": "int256[]",
344
- "indexed": false,
345
- "internalType": "int256[]"
346
- }
347
- ],
348
- "anonymous": false
349
- },
350
- {
351
- "type": "event",
352
- "name": "log_array",
353
- "inputs": [
354
- {
355
- "name": "val",
356
- "type": "address[]",
357
- "indexed": false,
358
- "internalType": "address[]"
359
- }
360
- ],
361
- "anonymous": false
362
- },
363
- {
364
- "type": "event",
365
- "name": "log_bytes",
366
- "inputs": [
367
- {
368
- "name": "",
369
- "type": "bytes",
370
- "indexed": false,
371
- "internalType": "bytes"
372
- }
373
- ],
374
- "anonymous": false
375
- },
376
- {
377
- "type": "event",
378
- "name": "log_bytes32",
379
- "inputs": [
380
- {
381
- "name": "",
382
- "type": "bytes32",
383
- "indexed": false,
384
- "internalType": "bytes32"
385
- }
386
- ],
387
- "anonymous": false
388
- },
389
- {
390
- "type": "event",
391
- "name": "log_int",
392
- "inputs": [
393
- {
394
- "name": "",
395
- "type": "int256",
396
- "indexed": false,
397
- "internalType": "int256"
398
- }
399
- ],
400
- "anonymous": false
401
- },
402
- {
403
- "type": "event",
404
- "name": "log_named_address",
405
- "inputs": [
406
- {
407
- "name": "key",
408
- "type": "string",
409
- "indexed": false,
410
- "internalType": "string"
411
- },
412
- {
413
- "name": "val",
414
- "type": "address",
415
- "indexed": false,
416
- "internalType": "address"
417
- }
418
- ],
419
- "anonymous": false
420
- },
421
- {
422
- "type": "event",
423
- "name": "log_named_array",
424
- "inputs": [
425
- {
426
- "name": "key",
427
- "type": "string",
428
- "indexed": false,
429
- "internalType": "string"
430
- },
431
- {
432
- "name": "val",
433
- "type": "uint256[]",
434
- "indexed": false,
435
- "internalType": "uint256[]"
436
- }
437
- ],
438
- "anonymous": false
439
- },
440
- {
441
- "type": "event",
442
- "name": "log_named_array",
443
- "inputs": [
444
- {
445
- "name": "key",
446
- "type": "string",
447
- "indexed": false,
448
- "internalType": "string"
449
- },
450
- {
451
- "name": "val",
452
- "type": "int256[]",
453
- "indexed": false,
454
- "internalType": "int256[]"
455
- }
456
- ],
457
- "anonymous": false
458
- },
459
- {
460
- "type": "event",
461
- "name": "log_named_array",
462
- "inputs": [
463
- {
464
- "name": "key",
465
- "type": "string",
466
- "indexed": false,
467
- "internalType": "string"
468
- },
469
- {
470
- "name": "val",
471
- "type": "address[]",
472
- "indexed": false,
473
- "internalType": "address[]"
474
- }
475
- ],
476
- "anonymous": false
477
- },
478
- {
479
- "type": "event",
480
- "name": "log_named_bytes",
481
- "inputs": [
482
- {
483
- "name": "key",
484
- "type": "string",
485
- "indexed": false,
486
- "internalType": "string"
487
- },
488
- {
489
- "name": "val",
490
- "type": "bytes",
491
- "indexed": false,
492
- "internalType": "bytes"
493
- }
494
- ],
495
- "anonymous": false
496
- },
497
- {
498
- "type": "event",
499
- "name": "log_named_bytes32",
500
- "inputs": [
501
- {
502
- "name": "key",
503
- "type": "string",
504
- "indexed": false,
505
- "internalType": "string"
506
- },
507
- {
508
- "name": "val",
509
- "type": "bytes32",
510
- "indexed": false,
511
- "internalType": "bytes32"
512
- }
513
- ],
514
- "anonymous": false
515
- },
516
- {
517
- "type": "event",
518
- "name": "log_named_decimal_int",
519
- "inputs": [
520
- {
521
- "name": "key",
522
- "type": "string",
523
- "indexed": false,
524
- "internalType": "string"
525
- },
526
- {
527
- "name": "val",
528
- "type": "int256",
529
- "indexed": false,
530
- "internalType": "int256"
531
- },
532
- {
533
- "name": "decimals",
534
- "type": "uint256",
535
- "indexed": false,
536
- "internalType": "uint256"
537
- }
538
- ],
539
- "anonymous": false
540
- },
541
- {
542
- "type": "event",
543
- "name": "log_named_decimal_uint",
544
- "inputs": [
545
- {
546
- "name": "key",
547
- "type": "string",
548
- "indexed": false,
549
- "internalType": "string"
550
- },
551
- {
552
- "name": "val",
553
- "type": "uint256",
554
- "indexed": false,
555
- "internalType": "uint256"
556
- },
557
- {
558
- "name": "decimals",
559
- "type": "uint256",
560
- "indexed": false,
561
- "internalType": "uint256"
562
- }
563
- ],
564
- "anonymous": false
565
- },
566
- {
567
- "type": "event",
568
- "name": "log_named_int",
569
- "inputs": [
570
- {
571
- "name": "key",
572
- "type": "string",
573
- "indexed": false,
574
- "internalType": "string"
575
- },
576
- {
577
- "name": "val",
578
- "type": "int256",
579
- "indexed": false,
580
- "internalType": "int256"
581
- }
582
- ],
583
- "anonymous": false
584
- },
585
- {
586
- "type": "event",
587
- "name": "log_named_string",
588
- "inputs": [
589
- {
590
- "name": "key",
591
- "type": "string",
592
- "indexed": false,
593
- "internalType": "string"
594
- },
595
- {
596
- "name": "val",
597
- "type": "string",
598
- "indexed": false,
599
- "internalType": "string"
600
- }
601
- ],
602
- "anonymous": false
603
- },
604
- {
605
- "type": "event",
606
- "name": "log_named_uint",
607
- "inputs": [
608
- {
609
- "name": "key",
610
- "type": "string",
611
- "indexed": false,
612
- "internalType": "string"
613
- },
614
- {
615
- "name": "val",
616
- "type": "uint256",
617
- "indexed": false,
618
- "internalType": "uint256"
619
- }
620
- ],
621
- "anonymous": false
622
- },
623
- {
624
- "type": "event",
625
- "name": "log_string",
626
- "inputs": [
627
- {
628
- "name": "",
629
- "type": "string",
630
- "indexed": false,
631
- "internalType": "string"
632
- }
633
- ],
634
- "anonymous": false
635
- },
636
- {
637
- "type": "event",
638
- "name": "log_uint",
639
- "inputs": [
640
- {
641
- "name": "",
642
- "type": "uint256",
643
- "indexed": false,
644
- "internalType": "uint256"
645
- }
646
- ],
647
- "anonymous": false
648
- },
649
- {
650
- "type": "event",
651
- "name": "logs",
652
- "inputs": [
653
- {
654
- "name": "",
655
- "type": "bytes",
656
- "indexed": false,
657
- "internalType": "bytes"
658
- }
659
- ],
660
- "anonymous": false
661
- },
662
- {
663
- "type": "error",
664
- "name": "Create2EmptyBytecode",
665
- "inputs": []
666
- },
667
- {
668
- "type": "error",
669
- "name": "Create2FailedDeployment",
670
- "inputs": []
671
- },
672
- {
673
- "type": "error",
674
- "name": "Create2InsufficientBalance",
675
- "inputs": [
676
- {
677
- "name": "balance",
678
- "type": "uint256",
679
- "internalType": "uint256"
680
- },
681
- {
682
- "name": "needed",
683
- "type": "uint256",
684
- "internalType": "uint256"
685
- }
686
- ]
687
- },
688
- {
689
- "type": "error",
690
- "name": "HookNotDeployed",
691
- "inputs": []
692
- },
693
- {
694
- "type": "error",
695
- "name": "InvalidHookAddress",
696
- "inputs": [
697
- {
698
- "name": "expected",
699
- "type": "address",
700
- "internalType": "address"
701
- },
702
- {
703
- "name": "actual",
704
- "type": "address",
705
- "internalType": "address"
706
- }
707
- ]
708
- }
709
- ]