@zoralabs/coins 2.3.1 → 2.4.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 (126) hide show
  1. package/.turbo/turbo-build$colon$js.log +119 -128
  2. package/CHANGELOG.md +30 -0
  3. package/abis/Address.json +0 -16
  4. package/abis/BuySupplyWithSwapRouterHook.json +0 -27
  5. package/abis/BuySupplyWithV4SwapHook.json +0 -32
  6. package/abis/Clones.json +1 -1
  7. package/abis/CoinDopplerMultiCurve.json +109 -0
  8. package/abis/Create2.json +0 -21
  9. package/abis/ERC1967Proxy.json +1 -1
  10. package/abis/ERC1967Utils.json +0 -45
  11. package/abis/{UpgradeCoinImpl.json → Errors.json} +14 -10
  12. package/abis/{MockERC20.json → IERC1363.json} +134 -104
  13. package/abis/IERC1967.json +47 -0
  14. package/abis/IERC20.json +0 -36
  15. package/abis/IProtocolRewards.json +0 -258
  16. package/abis/{Script.json → ISupportsLimitOrderFill.json} +2 -2
  17. package/abis/ITrustedMsgSenderProviderLookup.json +21 -0
  18. package/abis/IZoraLimitOrderBookCoinsInterface.json +67 -0
  19. package/abis/IZoraV4CoinHook.json +15 -0
  20. package/abis/ProxyShim.json +15 -16
  21. package/abis/SafeCast.json +51 -0
  22. package/abis/{AddressConstants.json → SafeCast160.json} +1 -1
  23. package/abis/Strings.json +10 -0
  24. package/abis/TrustedMsgSenderProviderLookup.json +215 -0
  25. package/abis/UUPSUpgradeable.json +1 -1
  26. package/abis/V3ToV4SwapLib.json +28 -0
  27. package/abis/ZoraFactory.json +1 -1
  28. package/abis/ZoraFactoryImpl.json +22 -6
  29. package/abis/ZoraV4CoinHook.json +41 -51
  30. package/dist/index.cjs +950 -43
  31. package/dist/index.cjs.map +1 -1
  32. package/dist/index.js +948 -41
  33. package/dist/index.js.map +1 -1
  34. package/dist/wagmiGenerated.d.ts +1459 -76
  35. package/dist/wagmiGenerated.d.ts.map +1 -1
  36. package/foundry.toml +5 -1
  37. package/package/wagmiGenerated.ts +951 -44
  38. package/package.json +7 -7
  39. package/remappings.txt +2 -1
  40. package/src/ZoraFactoryImpl.sol +8 -0
  41. package/src/deployment/ForkedCoinsAddresses.sol +54 -0
  42. package/src/hooks/ZoraV4CoinHook.sol +92 -74
  43. package/src/hooks/deployment/BuySupplyWithV4SwapHook.sol +20 -142
  44. package/src/interfaces/ISupportsLimitOrderFill.sol +11 -0
  45. package/src/interfaces/ITrustedMsgSenderProviderLookup.sol +18 -0
  46. package/src/interfaces/IZoraLimitOrderBookCoinsInterface.sol +21 -0
  47. package/src/interfaces/IZoraV4CoinHook.sol +9 -0
  48. package/src/libs/CoinConstants.sol +6 -0
  49. package/src/libs/CoinDopplerMultiCurve.sol +1 -1
  50. package/src/libs/CoinRewardsV4.sol +0 -1
  51. package/src/libs/HooksDeployment.sol +25 -12
  52. package/src/libs/UniV4SwapHelper.sol +35 -0
  53. package/src/libs/V3ToV4SwapLib.sol +261 -0
  54. package/src/libs/V4Liquidity.sol +50 -6
  55. package/src/utils/TrustedMsgSenderProviderLookup.sol +73 -0
  56. package/src/version/ContractVersionBase.sol +1 -1
  57. package/test/BuySupplyWithV4SwapHook.t.sol +4 -3
  58. package/test/Coin.t.sol +7 -1
  59. package/test/CoinUniV4.t.sol +2 -1
  60. package/test/ContentCoinRewards.t.sol +5 -1
  61. package/test/CreatorCoin.t.sol +3 -1
  62. package/test/CreatorCoinRewards.t.sol +7 -1
  63. package/test/Factory.t.sol +20 -7
  64. package/test/HooksDeployment.t.sol +73 -8
  65. package/test/LiquidityMigration.t.sol +55 -43
  66. package/test/MultiOwnable.t.sol +2 -1
  67. package/test/TrustedMsgSenderProviderLookup.t.sol +112 -0
  68. package/test/Upgrades.t.sol +112 -78
  69. package/test/V4Liquidity.t.sol +1 -1
  70. package/test/mocks/MockSwapRouter.sol +33 -0
  71. package/test/mocks/MockZoraLimitOrderBook.sol +14 -0
  72. package/test/utils/BaseTest.sol +17 -425
  73. package/test/utils/FeeEstimatorHook.sol +8 -2
  74. package/test/utils/TrustedSenderTestHelper.sol +18 -0
  75. package/test/utils/V4TestSetup.sol +595 -0
  76. package/wagmi.config.ts +1 -1
  77. package/abis/BaseTest.json +0 -718
  78. package/abis/DeterministicDeployerAndCaller.json +0 -315
  79. package/abis/DeterministicUUPSProxyDeployer.json +0 -167
  80. package/abis/EIP712.json +0 -67
  81. package/abis/ERC20.json +0 -310
  82. package/abis/FeeEstimatorHook.json +0 -1915
  83. package/abis/IERC721.json +0 -287
  84. package/abis/IERC721Enumerable.json +0 -343
  85. package/abis/IERC721Metadata.json +0 -332
  86. package/abis/IERC721TokenReceiver.json +0 -36
  87. package/abis/IImmutableCreate2Factory.json +0 -93
  88. package/abis/IMulticall3.json +0 -440
  89. package/abis/ISafe.json +0 -15
  90. package/abis/ISymbol.json +0 -15
  91. package/abis/IUniswapV4Router04.json +0 -484
  92. package/abis/IUniversalRouter.json +0 -61
  93. package/abis/IV4Quoter.json +0 -310
  94. package/abis/ImmutableCreate2FactoryUtils.json +0 -15
  95. package/abis/LibString.json +0 -7
  96. package/abis/Math.json +0 -7
  97. package/abis/MockAirlock.json +0 -39
  98. package/abis/MockERC721.json +0 -350
  99. package/abis/ProtocolRewards.json +0 -494
  100. package/abis/ShortStrings.json +0 -18
  101. package/abis/SimpleERC20.json +0 -326
  102. package/abis/StdAssertions.json +0 -379
  103. package/abis/StdInvariant.json +0 -180
  104. package/abis/Test.json +0 -570
  105. package/abis/VmContractHelper239.json +0 -233
  106. package/abis/stdError.json +0 -119
  107. package/abis/stdStorageSafe.json +0 -52
  108. package/addresses/8453.json +0 -13
  109. package/addresses/84532.json +0 -10
  110. package/deterministicConfig/deployerAndCaller.json +0 -5
  111. package/deterministicConfig/zoraFactory.json +0 -8
  112. package/script/Deploy.s.sol +0 -23
  113. package/script/DeployAutoSwapper.s.sol +0 -30
  114. package/script/DeployDevFactory.s.sol +0 -21
  115. package/script/DeployPostDeploymentHooks.s.sol +0 -20
  116. package/script/DeployUpgradeGate.s.sol +0 -21
  117. package/script/GenerateDeterministicParams.s.sol +0 -43
  118. package/script/PrintRegisterUpgradePath.s.sol +0 -28
  119. package/script/PrintUpgradeCommand.s.sol +0 -13
  120. package/script/TestBackingCoinSwap.s.sol +0 -144
  121. package/script/TestV4Swap.s.sol +0 -133
  122. package/script/UpgradeCoinImpl.sol +0 -23
  123. package/script/UpgradeFactoryImpl.s.sol +0 -28
  124. package/script/UpgradeHooks.s.sol +0 -23
  125. package/src/deployment/CoinsDeployerBase.sol +0 -276
  126. /package/{test → src}/utils/ProxyShim.sol +0 -0
@@ -1,718 +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": "getSalt",
95
- "inputs": [
96
- {
97
- "name": "trustedMessageSenders",
98
- "type": "address[]",
99
- "internalType": "address[]"
100
- }
101
- ],
102
- "outputs": [
103
- {
104
- "name": "hookSalt",
105
- "type": "bytes32",
106
- "internalType": "bytes32"
107
- }
108
- ],
109
- "stateMutability": "nonpayable"
110
- },
111
- {
112
- "type": "function",
113
- "name": "setUp",
114
- "inputs": [],
115
- "outputs": [],
116
- "stateMutability": "nonpayable"
117
- },
118
- {
119
- "type": "function",
120
- "name": "setUpNonForked",
121
- "inputs": [],
122
- "outputs": [],
123
- "stateMutability": "nonpayable"
124
- },
125
- {
126
- "type": "function",
127
- "name": "setUpWithBlockNumber",
128
- "inputs": [
129
- {
130
- "name": "forkBlockNumber",
131
- "type": "uint256",
132
- "internalType": "uint256"
133
- }
134
- ],
135
- "outputs": [],
136
- "stateMutability": "nonpayable"
137
- },
138
- {
139
- "type": "function",
140
- "name": "targetArtifactSelectors",
141
- "inputs": [],
142
- "outputs": [
143
- {
144
- "name": "targetedArtifactSelectors_",
145
- "type": "tuple[]",
146
- "internalType": "struct StdInvariant.FuzzArtifactSelector[]",
147
- "components": [
148
- {
149
- "name": "artifact",
150
- "type": "string",
151
- "internalType": "string"
152
- },
153
- {
154
- "name": "selectors",
155
- "type": "bytes4[]",
156
- "internalType": "bytes4[]"
157
- }
158
- ]
159
- }
160
- ],
161
- "stateMutability": "view"
162
- },
163
- {
164
- "type": "function",
165
- "name": "targetArtifacts",
166
- "inputs": [],
167
- "outputs": [
168
- {
169
- "name": "targetedArtifacts_",
170
- "type": "string[]",
171
- "internalType": "string[]"
172
- }
173
- ],
174
- "stateMutability": "view"
175
- },
176
- {
177
- "type": "function",
178
- "name": "targetContracts",
179
- "inputs": [],
180
- "outputs": [
181
- {
182
- "name": "targetedContracts_",
183
- "type": "address[]",
184
- "internalType": "address[]"
185
- }
186
- ],
187
- "stateMutability": "view"
188
- },
189
- {
190
- "type": "function",
191
- "name": "targetInterfaces",
192
- "inputs": [],
193
- "outputs": [
194
- {
195
- "name": "targetedInterfaces_",
196
- "type": "tuple[]",
197
- "internalType": "struct StdInvariant.FuzzInterface[]",
198
- "components": [
199
- {
200
- "name": "addr",
201
- "type": "address",
202
- "internalType": "address"
203
- },
204
- {
205
- "name": "artifacts",
206
- "type": "string[]",
207
- "internalType": "string[]"
208
- }
209
- ]
210
- }
211
- ],
212
- "stateMutability": "view"
213
- },
214
- {
215
- "type": "function",
216
- "name": "targetSelectors",
217
- "inputs": [],
218
- "outputs": [
219
- {
220
- "name": "targetedSelectors_",
221
- "type": "tuple[]",
222
- "internalType": "struct StdInvariant.FuzzSelector[]",
223
- "components": [
224
- {
225
- "name": "addr",
226
- "type": "address",
227
- "internalType": "address"
228
- },
229
- {
230
- "name": "selectors",
231
- "type": "bytes4[]",
232
- "internalType": "bytes4[]"
233
- }
234
- ]
235
- }
236
- ],
237
- "stateMutability": "view"
238
- },
239
- {
240
- "type": "function",
241
- "name": "targetSenders",
242
- "inputs": [],
243
- "outputs": [
244
- {
245
- "name": "targetedSenders_",
246
- "type": "address[]",
247
- "internalType": "address[]"
248
- }
249
- ],
250
- "stateMutability": "view"
251
- },
252
- {
253
- "type": "event",
254
- "name": "SlotFound",
255
- "inputs": [
256
- {
257
- "name": "who",
258
- "type": "address",
259
- "indexed": false,
260
- "internalType": "address"
261
- },
262
- {
263
- "name": "fsig",
264
- "type": "bytes4",
265
- "indexed": false,
266
- "internalType": "bytes4"
267
- },
268
- {
269
- "name": "keysHash",
270
- "type": "bytes32",
271
- "indexed": false,
272
- "internalType": "bytes32"
273
- },
274
- {
275
- "name": "slot",
276
- "type": "uint256",
277
- "indexed": false,
278
- "internalType": "uint256"
279
- }
280
- ],
281
- "anonymous": false
282
- },
283
- {
284
- "type": "event",
285
- "name": "WARNING_UninitedSlot",
286
- "inputs": [
287
- {
288
- "name": "who",
289
- "type": "address",
290
- "indexed": false,
291
- "internalType": "address"
292
- },
293
- {
294
- "name": "slot",
295
- "type": "uint256",
296
- "indexed": false,
297
- "internalType": "uint256"
298
- }
299
- ],
300
- "anonymous": false
301
- },
302
- {
303
- "type": "event",
304
- "name": "log",
305
- "inputs": [
306
- {
307
- "name": "",
308
- "type": "string",
309
- "indexed": false,
310
- "internalType": "string"
311
- }
312
- ],
313
- "anonymous": false
314
- },
315
- {
316
- "type": "event",
317
- "name": "log_address",
318
- "inputs": [
319
- {
320
- "name": "",
321
- "type": "address",
322
- "indexed": false,
323
- "internalType": "address"
324
- }
325
- ],
326
- "anonymous": false
327
- },
328
- {
329
- "type": "event",
330
- "name": "log_array",
331
- "inputs": [
332
- {
333
- "name": "val",
334
- "type": "uint256[]",
335
- "indexed": false,
336
- "internalType": "uint256[]"
337
- }
338
- ],
339
- "anonymous": false
340
- },
341
- {
342
- "type": "event",
343
- "name": "log_array",
344
- "inputs": [
345
- {
346
- "name": "val",
347
- "type": "int256[]",
348
- "indexed": false,
349
- "internalType": "int256[]"
350
- }
351
- ],
352
- "anonymous": false
353
- },
354
- {
355
- "type": "event",
356
- "name": "log_array",
357
- "inputs": [
358
- {
359
- "name": "val",
360
- "type": "address[]",
361
- "indexed": false,
362
- "internalType": "address[]"
363
- }
364
- ],
365
- "anonymous": false
366
- },
367
- {
368
- "type": "event",
369
- "name": "log_bytes",
370
- "inputs": [
371
- {
372
- "name": "",
373
- "type": "bytes",
374
- "indexed": false,
375
- "internalType": "bytes"
376
- }
377
- ],
378
- "anonymous": false
379
- },
380
- {
381
- "type": "event",
382
- "name": "log_bytes32",
383
- "inputs": [
384
- {
385
- "name": "",
386
- "type": "bytes32",
387
- "indexed": false,
388
- "internalType": "bytes32"
389
- }
390
- ],
391
- "anonymous": false
392
- },
393
- {
394
- "type": "event",
395
- "name": "log_int",
396
- "inputs": [
397
- {
398
- "name": "",
399
- "type": "int256",
400
- "indexed": false,
401
- "internalType": "int256"
402
- }
403
- ],
404
- "anonymous": false
405
- },
406
- {
407
- "type": "event",
408
- "name": "log_named_address",
409
- "inputs": [
410
- {
411
- "name": "key",
412
- "type": "string",
413
- "indexed": false,
414
- "internalType": "string"
415
- },
416
- {
417
- "name": "val",
418
- "type": "address",
419
- "indexed": false,
420
- "internalType": "address"
421
- }
422
- ],
423
- "anonymous": false
424
- },
425
- {
426
- "type": "event",
427
- "name": "log_named_array",
428
- "inputs": [
429
- {
430
- "name": "key",
431
- "type": "string",
432
- "indexed": false,
433
- "internalType": "string"
434
- },
435
- {
436
- "name": "val",
437
- "type": "uint256[]",
438
- "indexed": false,
439
- "internalType": "uint256[]"
440
- }
441
- ],
442
- "anonymous": false
443
- },
444
- {
445
- "type": "event",
446
- "name": "log_named_array",
447
- "inputs": [
448
- {
449
- "name": "key",
450
- "type": "string",
451
- "indexed": false,
452
- "internalType": "string"
453
- },
454
- {
455
- "name": "val",
456
- "type": "int256[]",
457
- "indexed": false,
458
- "internalType": "int256[]"
459
- }
460
- ],
461
- "anonymous": false
462
- },
463
- {
464
- "type": "event",
465
- "name": "log_named_array",
466
- "inputs": [
467
- {
468
- "name": "key",
469
- "type": "string",
470
- "indexed": false,
471
- "internalType": "string"
472
- },
473
- {
474
- "name": "val",
475
- "type": "address[]",
476
- "indexed": false,
477
- "internalType": "address[]"
478
- }
479
- ],
480
- "anonymous": false
481
- },
482
- {
483
- "type": "event",
484
- "name": "log_named_bytes",
485
- "inputs": [
486
- {
487
- "name": "key",
488
- "type": "string",
489
- "indexed": false,
490
- "internalType": "string"
491
- },
492
- {
493
- "name": "val",
494
- "type": "bytes",
495
- "indexed": false,
496
- "internalType": "bytes"
497
- }
498
- ],
499
- "anonymous": false
500
- },
501
- {
502
- "type": "event",
503
- "name": "log_named_bytes32",
504
- "inputs": [
505
- {
506
- "name": "key",
507
- "type": "string",
508
- "indexed": false,
509
- "internalType": "string"
510
- },
511
- {
512
- "name": "val",
513
- "type": "bytes32",
514
- "indexed": false,
515
- "internalType": "bytes32"
516
- }
517
- ],
518
- "anonymous": false
519
- },
520
- {
521
- "type": "event",
522
- "name": "log_named_decimal_int",
523
- "inputs": [
524
- {
525
- "name": "key",
526
- "type": "string",
527
- "indexed": false,
528
- "internalType": "string"
529
- },
530
- {
531
- "name": "val",
532
- "type": "int256",
533
- "indexed": false,
534
- "internalType": "int256"
535
- },
536
- {
537
- "name": "decimals",
538
- "type": "uint256",
539
- "indexed": false,
540
- "internalType": "uint256"
541
- }
542
- ],
543
- "anonymous": false
544
- },
545
- {
546
- "type": "event",
547
- "name": "log_named_decimal_uint",
548
- "inputs": [
549
- {
550
- "name": "key",
551
- "type": "string",
552
- "indexed": false,
553
- "internalType": "string"
554
- },
555
- {
556
- "name": "val",
557
- "type": "uint256",
558
- "indexed": false,
559
- "internalType": "uint256"
560
- },
561
- {
562
- "name": "decimals",
563
- "type": "uint256",
564
- "indexed": false,
565
- "internalType": "uint256"
566
- }
567
- ],
568
- "anonymous": false
569
- },
570
- {
571
- "type": "event",
572
- "name": "log_named_int",
573
- "inputs": [
574
- {
575
- "name": "key",
576
- "type": "string",
577
- "indexed": false,
578
- "internalType": "string"
579
- },
580
- {
581
- "name": "val",
582
- "type": "int256",
583
- "indexed": false,
584
- "internalType": "int256"
585
- }
586
- ],
587
- "anonymous": false
588
- },
589
- {
590
- "type": "event",
591
- "name": "log_named_string",
592
- "inputs": [
593
- {
594
- "name": "key",
595
- "type": "string",
596
- "indexed": false,
597
- "internalType": "string"
598
- },
599
- {
600
- "name": "val",
601
- "type": "string",
602
- "indexed": false,
603
- "internalType": "string"
604
- }
605
- ],
606
- "anonymous": false
607
- },
608
- {
609
- "type": "event",
610
- "name": "log_named_uint",
611
- "inputs": [
612
- {
613
- "name": "key",
614
- "type": "string",
615
- "indexed": false,
616
- "internalType": "string"
617
- },
618
- {
619
- "name": "val",
620
- "type": "uint256",
621
- "indexed": false,
622
- "internalType": "uint256"
623
- }
624
- ],
625
- "anonymous": false
626
- },
627
- {
628
- "type": "event",
629
- "name": "log_string",
630
- "inputs": [
631
- {
632
- "name": "",
633
- "type": "string",
634
- "indexed": false,
635
- "internalType": "string"
636
- }
637
- ],
638
- "anonymous": false
639
- },
640
- {
641
- "type": "event",
642
- "name": "log_uint",
643
- "inputs": [
644
- {
645
- "name": "",
646
- "type": "uint256",
647
- "indexed": false,
648
- "internalType": "uint256"
649
- }
650
- ],
651
- "anonymous": false
652
- },
653
- {
654
- "type": "event",
655
- "name": "logs",
656
- "inputs": [
657
- {
658
- "name": "",
659
- "type": "bytes",
660
- "indexed": false,
661
- "internalType": "bytes"
662
- }
663
- ],
664
- "anonymous": false
665
- },
666
- {
667
- "type": "error",
668
- "name": "Create2EmptyBytecode",
669
- "inputs": []
670
- },
671
- {
672
- "type": "error",
673
- "name": "Create2FailedDeployment",
674
- "inputs": []
675
- },
676
- {
677
- "type": "error",
678
- "name": "Create2InsufficientBalance",
679
- "inputs": [
680
- {
681
- "name": "balance",
682
- "type": "uint256",
683
- "internalType": "uint256"
684
- },
685
- {
686
- "name": "needed",
687
- "type": "uint256",
688
- "internalType": "uint256"
689
- }
690
- ]
691
- },
692
- {
693
- "type": "error",
694
- "name": "HookNotDeployed",
695
- "inputs": []
696
- },
697
- {
698
- "type": "error",
699
- "name": "InvalidHookAddress",
700
- "inputs": [
701
- {
702
- "name": "expected",
703
- "type": "address",
704
- "internalType": "address"
705
- },
706
- {
707
- "name": "actual",
708
- "type": "address",
709
- "internalType": "address"
710
- }
711
- ]
712
- },
713
- {
714
- "type": "error",
715
- "name": "UnsupportedChainId",
716
- "inputs": []
717
- }
718
- ]