@zoralabs/comments-contracts 0.0.1 → 0.0.2

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 (110) hide show
  1. package/.turbo/turbo-build.log +49 -31
  2. package/README.md +10 -39
  3. package/abis/AddDelegateCommenterRole.json +9 -0
  4. package/abis/CallerAndCommenter.json +62 -0
  5. package/abis/CallerAndCommenterImpl.json +1218 -0
  6. package/abis/CallerAndCommenterMintAndCommentTest.json +771 -0
  7. package/abis/CallerAndCommenterSwapAndCommentTest.json +844 -0
  8. package/abis/CallerAndCommenterTestBase.json +577 -0
  9. package/abis/CommentsImpl.json +189 -59
  10. package/abis/CommentsImplConstants.json +106 -0
  11. package/abis/CommentsPermitTest.json +26 -6
  12. package/abis/CommentsTest.json +58 -10
  13. package/abis/Comments_mintAndCommentTest.json +11 -4
  14. package/abis/Comments_smartWallet.json +711 -0
  15. package/abis/DeployCallerAndCommenterImpl.json +9 -0
  16. package/abis/DeployImpl.json +0 -13
  17. package/abis/DeployNonDeterministic.json +0 -13
  18. package/abis/DeployScript.json +0 -13
  19. package/abis/EIP712Upgradeable.json +74 -0
  20. package/abis/EIP712UpgradeableWithChainId.json +49 -0
  21. package/abis/ERC20.json +310 -0
  22. package/abis/GenerateDeterministicParams.json +0 -13
  23. package/abis/ICallerAndCommenter.json +797 -0
  24. package/abis/IComments.json +629 -9
  25. package/abis/IERC20.json +39 -42
  26. package/abis/IERC20Metadata.json +224 -0
  27. package/abis/{CommentsDeployerBase.json → IMultiOwnable.json} +8 -2
  28. package/abis/IProtocolRewards.json +19 -0
  29. package/abis/ISecondarySwap.json +45 -0
  30. package/abis/IZoraCreator1155.json +51 -0
  31. package/abis/IZoraTimedSaleStrategy.json +91 -0
  32. package/abis/Mock1155.json +75 -1
  33. package/abis/Mock1155NoCreatorRewardRecipient.json +605 -0
  34. package/abis/Mock1155NoOwner.json +566 -0
  35. package/abis/{MockMinter.json → MockDelegateCommenter.json} +12 -2
  36. package/abis/MockERC20z.json +315 -0
  37. package/abis/MockMultiOwnable.json +212 -0
  38. package/abis/MockSecondarySwap.json +95 -0
  39. package/abis/MockZoraTimedSale.json +139 -0
  40. package/abis/Ownable2StepUpgradeable.json +138 -0
  41. package/abis/UnorderedNoncesUpgradeable.json +4 -4
  42. package/addresses/1.json +9 -0
  43. package/addresses/10.json +9 -0
  44. package/addresses/11155111.json +9 -0
  45. package/addresses/11155420.json +9 -0
  46. package/addresses/42161.json +9 -0
  47. package/addresses/7777777.json +9 -0
  48. package/addresses/81457.json +9 -0
  49. package/addresses/8453.json +9 -0
  50. package/addresses/84532.json +9 -0
  51. package/addresses/999999999.json +7 -2
  52. package/deterministicConfig/callerAndCommenter.json +8 -0
  53. package/deterministicConfig/comments.json +2 -2
  54. package/dist/index.cjs +724 -35
  55. package/dist/index.cjs.map +1 -1
  56. package/dist/index.js +723 -35
  57. package/dist/index.js.map +1 -1
  58. package/dist/types.d.ts +1 -1
  59. package/dist/types.d.ts.map +1 -1
  60. package/dist/wagmiGenerated.d.ts +1102 -57
  61. package/dist/wagmiGenerated.d.ts.map +1 -1
  62. package/package/types.ts +4 -1
  63. package/package/wagmiGenerated.ts +728 -32
  64. package/package.json +12 -11
  65. package/script/AddDelegateCommenterRole.s.sol +24 -0
  66. package/script/CommentsDeployerBase.sol +102 -19
  67. package/script/Deploy.s.sol +2 -44
  68. package/script/DeployCallerAndCommenterImpl.s.sol +29 -0
  69. package/script/DeployImpl.s.sol +1 -0
  70. package/script/DeployNonDeterministic.s.sol +22 -13
  71. package/script/GenerateDeterministicParams.s.sol +32 -4
  72. package/scripts/generateCommentsTestData.ts +170 -79
  73. package/src/CommentsImpl.sol +267 -134
  74. package/src/CommentsImplConstants.sol +44 -0
  75. package/src/interfaces/ICallerAndCommenter.sol +215 -0
  76. package/src/interfaces/IComments.sol +189 -42
  77. package/src/interfaces/IMultiOwnable.sol +10 -0
  78. package/src/interfaces/ISecondarySwap.sol +40 -0
  79. package/src/interfaces/IZoraCreator1155.sol +6 -1
  80. package/src/interfaces/IZoraCreator1155TypesV1.sol +46 -0
  81. package/src/interfaces/IZoraTimedSaleStrategy.sol +25 -0
  82. package/src/proxy/CallerAndCommenter.sol +43 -0
  83. package/src/utils/CallerAndCommenterImpl.sol +376 -0
  84. package/src/utils/EIP712UpgradeableWithChainId.sol +12 -23
  85. package/src/version/ContractVersionBase.sol +1 -1
  86. package/test/CallerAndCommenterTestBase.sol +77 -0
  87. package/test/CallerAndCommenter_mintAndComment.t copy.sol +214 -0
  88. package/test/CallerAndCommenter_swapAndComment.t.sol +523 -0
  89. package/test/Comments.t.sol +166 -29
  90. package/test/CommentsTestBase.sol +12 -20
  91. package/test/Comments_delegateComment.t.sol +129 -0
  92. package/test/Comments_permit.t.sol +131 -44
  93. package/test/Comments_smartWallet.t.sol +152 -0
  94. package/test/mocks/Mock1155.sol +12 -1
  95. package/test/mocks/Mock1155NoCreatorRewardRecipient.sol +65 -0
  96. package/test/mocks/Mock1155NoOwner.sol +53 -0
  97. package/test/mocks/MockDelegateCommenter.sol +36 -0
  98. package/test/mocks/MockIZoraCreator1155.sol +16 -0
  99. package/test/mocks/MockSecondarySwap.sol +30 -0
  100. package/test/mocks/MockZoraTimedSale.sol +38 -0
  101. package/wagmi.config.ts +3 -1
  102. package/abis/ProxyDeployerScript.json +0 -15
  103. package/scripts/backfillComments.ts +0 -176
  104. package/scripts/queries.ts +0 -73
  105. package/scripts/queryAndSaveComments.ts +0 -48
  106. package/scripts/queryQuantityOfComments.ts +0 -53
  107. package/scripts/writeComments.ts +0 -198
  108. package/src/deployments/CommentsDeployment.sol +0 -14
  109. package/test/Comments_mintAndComment.t.sol +0 -101
  110. package/test/mocks/MockMinter.sol +0 -29
@@ -0,0 +1,1218 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "_comments",
7
+ "type": "address",
8
+ "internalType": "address"
9
+ },
10
+ {
11
+ "name": "_zoraTimedSale",
12
+ "type": "address",
13
+ "internalType": "address"
14
+ },
15
+ {
16
+ "name": "_swapHelper",
17
+ "type": "address",
18
+ "internalType": "address"
19
+ },
20
+ {
21
+ "name": "_sparksValue",
22
+ "type": "uint256",
23
+ "internalType": "uint256"
24
+ }
25
+ ],
26
+ "stateMutability": "nonpayable"
27
+ },
28
+ {
29
+ "type": "function",
30
+ "name": "UPGRADE_INTERFACE_VERSION",
31
+ "inputs": [],
32
+ "outputs": [
33
+ {
34
+ "name": "",
35
+ "type": "string",
36
+ "internalType": "string"
37
+ }
38
+ ],
39
+ "stateMutability": "view"
40
+ },
41
+ {
42
+ "type": "function",
43
+ "name": "acceptOwnership",
44
+ "inputs": [],
45
+ "outputs": [],
46
+ "stateMutability": "nonpayable"
47
+ },
48
+ {
49
+ "type": "function",
50
+ "name": "buyOnSecondaryAndComment",
51
+ "inputs": [
52
+ {
53
+ "name": "commenter",
54
+ "type": "address",
55
+ "internalType": "address"
56
+ },
57
+ {
58
+ "name": "quantity",
59
+ "type": "uint256",
60
+ "internalType": "uint256"
61
+ },
62
+ {
63
+ "name": "collection",
64
+ "type": "address",
65
+ "internalType": "address"
66
+ },
67
+ {
68
+ "name": "tokenId",
69
+ "type": "uint256",
70
+ "internalType": "uint256"
71
+ },
72
+ {
73
+ "name": "excessRefundRecipient",
74
+ "type": "address",
75
+ "internalType": "address payable"
76
+ },
77
+ {
78
+ "name": "maxEthToSpend",
79
+ "type": "uint256",
80
+ "internalType": "uint256"
81
+ },
82
+ {
83
+ "name": "sqrtPriceLimitX96",
84
+ "type": "uint160",
85
+ "internalType": "uint160"
86
+ },
87
+ {
88
+ "name": "comment",
89
+ "type": "string",
90
+ "internalType": "string"
91
+ }
92
+ ],
93
+ "outputs": [
94
+ {
95
+ "name": "",
96
+ "type": "tuple",
97
+ "internalType": "struct IComments.CommentIdentifier",
98
+ "components": [
99
+ {
100
+ "name": "commenter",
101
+ "type": "address",
102
+ "internalType": "address"
103
+ },
104
+ {
105
+ "name": "contractAddress",
106
+ "type": "address",
107
+ "internalType": "address"
108
+ },
109
+ {
110
+ "name": "tokenId",
111
+ "type": "uint256",
112
+ "internalType": "uint256"
113
+ },
114
+ {
115
+ "name": "nonce",
116
+ "type": "bytes32",
117
+ "internalType": "bytes32"
118
+ }
119
+ ]
120
+ }
121
+ ],
122
+ "stateMutability": "payable"
123
+ },
124
+ {
125
+ "type": "function",
126
+ "name": "comments",
127
+ "inputs": [],
128
+ "outputs": [
129
+ {
130
+ "name": "",
131
+ "type": "address",
132
+ "internalType": "contract IComments"
133
+ }
134
+ ],
135
+ "stateMutability": "view"
136
+ },
137
+ {
138
+ "type": "function",
139
+ "name": "contractName",
140
+ "inputs": [],
141
+ "outputs": [
142
+ {
143
+ "name": "",
144
+ "type": "string",
145
+ "internalType": "string"
146
+ }
147
+ ],
148
+ "stateMutability": "pure"
149
+ },
150
+ {
151
+ "type": "function",
152
+ "name": "contractVersion",
153
+ "inputs": [],
154
+ "outputs": [
155
+ {
156
+ "name": "",
157
+ "type": "string",
158
+ "internalType": "string"
159
+ }
160
+ ],
161
+ "stateMutability": "pure"
162
+ },
163
+ {
164
+ "type": "function",
165
+ "name": "eip712Domain",
166
+ "inputs": [],
167
+ "outputs": [
168
+ {
169
+ "name": "fields",
170
+ "type": "bytes1",
171
+ "internalType": "bytes1"
172
+ },
173
+ {
174
+ "name": "name",
175
+ "type": "string",
176
+ "internalType": "string"
177
+ },
178
+ {
179
+ "name": "version",
180
+ "type": "string",
181
+ "internalType": "string"
182
+ },
183
+ {
184
+ "name": "chainId",
185
+ "type": "uint256",
186
+ "internalType": "uint256"
187
+ },
188
+ {
189
+ "name": "verifyingContract",
190
+ "type": "address",
191
+ "internalType": "address"
192
+ },
193
+ {
194
+ "name": "salt",
195
+ "type": "bytes32",
196
+ "internalType": "bytes32"
197
+ },
198
+ {
199
+ "name": "extensions",
200
+ "type": "uint256[]",
201
+ "internalType": "uint256[]"
202
+ }
203
+ ],
204
+ "stateMutability": "view"
205
+ },
206
+ {
207
+ "type": "function",
208
+ "name": "hashPermitBuyOnSecondaryAndComment",
209
+ "inputs": [
210
+ {
211
+ "name": "permit",
212
+ "type": "tuple",
213
+ "internalType": "struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment",
214
+ "components": [
215
+ {
216
+ "name": "commenter",
217
+ "type": "address",
218
+ "internalType": "address"
219
+ },
220
+ {
221
+ "name": "quantity",
222
+ "type": "uint256",
223
+ "internalType": "uint256"
224
+ },
225
+ {
226
+ "name": "collection",
227
+ "type": "address",
228
+ "internalType": "address"
229
+ },
230
+ {
231
+ "name": "tokenId",
232
+ "type": "uint256",
233
+ "internalType": "uint256"
234
+ },
235
+ {
236
+ "name": "maxEthToSpend",
237
+ "type": "uint256",
238
+ "internalType": "uint256"
239
+ },
240
+ {
241
+ "name": "sqrtPriceLimitX96",
242
+ "type": "uint160",
243
+ "internalType": "uint160"
244
+ },
245
+ {
246
+ "name": "comment",
247
+ "type": "string",
248
+ "internalType": "string"
249
+ },
250
+ {
251
+ "name": "deadline",
252
+ "type": "uint256",
253
+ "internalType": "uint256"
254
+ },
255
+ {
256
+ "name": "nonce",
257
+ "type": "bytes32",
258
+ "internalType": "bytes32"
259
+ },
260
+ {
261
+ "name": "sourceChainId",
262
+ "type": "uint32",
263
+ "internalType": "uint32"
264
+ },
265
+ {
266
+ "name": "destinationChainId",
267
+ "type": "uint32",
268
+ "internalType": "uint32"
269
+ }
270
+ ]
271
+ }
272
+ ],
273
+ "outputs": [
274
+ {
275
+ "name": "",
276
+ "type": "bytes32",
277
+ "internalType": "bytes32"
278
+ }
279
+ ],
280
+ "stateMutability": "view"
281
+ },
282
+ {
283
+ "type": "function",
284
+ "name": "hashPermitTimedSaleMintAndComment",
285
+ "inputs": [
286
+ {
287
+ "name": "permit",
288
+ "type": "tuple",
289
+ "internalType": "struct ICallerAndCommenter.PermitTimedSaleMintAndComment",
290
+ "components": [
291
+ {
292
+ "name": "commenter",
293
+ "type": "address",
294
+ "internalType": "address"
295
+ },
296
+ {
297
+ "name": "quantity",
298
+ "type": "uint256",
299
+ "internalType": "uint256"
300
+ },
301
+ {
302
+ "name": "collection",
303
+ "type": "address",
304
+ "internalType": "address"
305
+ },
306
+ {
307
+ "name": "tokenId",
308
+ "type": "uint256",
309
+ "internalType": "uint256"
310
+ },
311
+ {
312
+ "name": "mintReferral",
313
+ "type": "address",
314
+ "internalType": "address"
315
+ },
316
+ {
317
+ "name": "comment",
318
+ "type": "string",
319
+ "internalType": "string"
320
+ },
321
+ {
322
+ "name": "deadline",
323
+ "type": "uint256",
324
+ "internalType": "uint256"
325
+ },
326
+ {
327
+ "name": "nonce",
328
+ "type": "bytes32",
329
+ "internalType": "bytes32"
330
+ },
331
+ {
332
+ "name": "sourceChainId",
333
+ "type": "uint32",
334
+ "internalType": "uint32"
335
+ },
336
+ {
337
+ "name": "destinationChainId",
338
+ "type": "uint32",
339
+ "internalType": "uint32"
340
+ }
341
+ ]
342
+ }
343
+ ],
344
+ "outputs": [
345
+ {
346
+ "name": "",
347
+ "type": "bytes32",
348
+ "internalType": "bytes32"
349
+ }
350
+ ],
351
+ "stateMutability": "view"
352
+ },
353
+ {
354
+ "type": "function",
355
+ "name": "initialize",
356
+ "inputs": [
357
+ {
358
+ "name": "owner",
359
+ "type": "address",
360
+ "internalType": "address"
361
+ }
362
+ ],
363
+ "outputs": [],
364
+ "stateMutability": "nonpayable"
365
+ },
366
+ {
367
+ "type": "function",
368
+ "name": "nonceUsed",
369
+ "inputs": [
370
+ {
371
+ "name": "owner",
372
+ "type": "address",
373
+ "internalType": "address"
374
+ },
375
+ {
376
+ "name": "nonce",
377
+ "type": "bytes32",
378
+ "internalType": "bytes32"
379
+ }
380
+ ],
381
+ "outputs": [
382
+ {
383
+ "name": "",
384
+ "type": "bool",
385
+ "internalType": "bool"
386
+ }
387
+ ],
388
+ "stateMutability": "view"
389
+ },
390
+ {
391
+ "type": "function",
392
+ "name": "owner",
393
+ "inputs": [],
394
+ "outputs": [
395
+ {
396
+ "name": "",
397
+ "type": "address",
398
+ "internalType": "address"
399
+ }
400
+ ],
401
+ "stateMutability": "view"
402
+ },
403
+ {
404
+ "type": "function",
405
+ "name": "pendingOwner",
406
+ "inputs": [],
407
+ "outputs": [
408
+ {
409
+ "name": "",
410
+ "type": "address",
411
+ "internalType": "address"
412
+ }
413
+ ],
414
+ "stateMutability": "view"
415
+ },
416
+ {
417
+ "type": "function",
418
+ "name": "permitBuyOnSecondaryAndComment",
419
+ "inputs": [
420
+ {
421
+ "name": "permit",
422
+ "type": "tuple",
423
+ "internalType": "struct ICallerAndCommenter.PermitBuyOnSecondaryAndComment",
424
+ "components": [
425
+ {
426
+ "name": "commenter",
427
+ "type": "address",
428
+ "internalType": "address"
429
+ },
430
+ {
431
+ "name": "quantity",
432
+ "type": "uint256",
433
+ "internalType": "uint256"
434
+ },
435
+ {
436
+ "name": "collection",
437
+ "type": "address",
438
+ "internalType": "address"
439
+ },
440
+ {
441
+ "name": "tokenId",
442
+ "type": "uint256",
443
+ "internalType": "uint256"
444
+ },
445
+ {
446
+ "name": "maxEthToSpend",
447
+ "type": "uint256",
448
+ "internalType": "uint256"
449
+ },
450
+ {
451
+ "name": "sqrtPriceLimitX96",
452
+ "type": "uint160",
453
+ "internalType": "uint160"
454
+ },
455
+ {
456
+ "name": "comment",
457
+ "type": "string",
458
+ "internalType": "string"
459
+ },
460
+ {
461
+ "name": "deadline",
462
+ "type": "uint256",
463
+ "internalType": "uint256"
464
+ },
465
+ {
466
+ "name": "nonce",
467
+ "type": "bytes32",
468
+ "internalType": "bytes32"
469
+ },
470
+ {
471
+ "name": "sourceChainId",
472
+ "type": "uint32",
473
+ "internalType": "uint32"
474
+ },
475
+ {
476
+ "name": "destinationChainId",
477
+ "type": "uint32",
478
+ "internalType": "uint32"
479
+ }
480
+ ]
481
+ },
482
+ {
483
+ "name": "signature",
484
+ "type": "bytes",
485
+ "internalType": "bytes"
486
+ }
487
+ ],
488
+ "outputs": [
489
+ {
490
+ "name": "",
491
+ "type": "tuple",
492
+ "internalType": "struct IComments.CommentIdentifier",
493
+ "components": [
494
+ {
495
+ "name": "commenter",
496
+ "type": "address",
497
+ "internalType": "address"
498
+ },
499
+ {
500
+ "name": "contractAddress",
501
+ "type": "address",
502
+ "internalType": "address"
503
+ },
504
+ {
505
+ "name": "tokenId",
506
+ "type": "uint256",
507
+ "internalType": "uint256"
508
+ },
509
+ {
510
+ "name": "nonce",
511
+ "type": "bytes32",
512
+ "internalType": "bytes32"
513
+ }
514
+ ]
515
+ }
516
+ ],
517
+ "stateMutability": "payable"
518
+ },
519
+ {
520
+ "type": "function",
521
+ "name": "permitTimedSaleMintAndComment",
522
+ "inputs": [
523
+ {
524
+ "name": "permit",
525
+ "type": "tuple",
526
+ "internalType": "struct ICallerAndCommenter.PermitTimedSaleMintAndComment",
527
+ "components": [
528
+ {
529
+ "name": "commenter",
530
+ "type": "address",
531
+ "internalType": "address"
532
+ },
533
+ {
534
+ "name": "quantity",
535
+ "type": "uint256",
536
+ "internalType": "uint256"
537
+ },
538
+ {
539
+ "name": "collection",
540
+ "type": "address",
541
+ "internalType": "address"
542
+ },
543
+ {
544
+ "name": "tokenId",
545
+ "type": "uint256",
546
+ "internalType": "uint256"
547
+ },
548
+ {
549
+ "name": "mintReferral",
550
+ "type": "address",
551
+ "internalType": "address"
552
+ },
553
+ {
554
+ "name": "comment",
555
+ "type": "string",
556
+ "internalType": "string"
557
+ },
558
+ {
559
+ "name": "deadline",
560
+ "type": "uint256",
561
+ "internalType": "uint256"
562
+ },
563
+ {
564
+ "name": "nonce",
565
+ "type": "bytes32",
566
+ "internalType": "bytes32"
567
+ },
568
+ {
569
+ "name": "sourceChainId",
570
+ "type": "uint32",
571
+ "internalType": "uint32"
572
+ },
573
+ {
574
+ "name": "destinationChainId",
575
+ "type": "uint32",
576
+ "internalType": "uint32"
577
+ }
578
+ ]
579
+ },
580
+ {
581
+ "name": "signature",
582
+ "type": "bytes",
583
+ "internalType": "bytes"
584
+ }
585
+ ],
586
+ "outputs": [
587
+ {
588
+ "name": "",
589
+ "type": "tuple",
590
+ "internalType": "struct IComments.CommentIdentifier",
591
+ "components": [
592
+ {
593
+ "name": "commenter",
594
+ "type": "address",
595
+ "internalType": "address"
596
+ },
597
+ {
598
+ "name": "contractAddress",
599
+ "type": "address",
600
+ "internalType": "address"
601
+ },
602
+ {
603
+ "name": "tokenId",
604
+ "type": "uint256",
605
+ "internalType": "uint256"
606
+ },
607
+ {
608
+ "name": "nonce",
609
+ "type": "bytes32",
610
+ "internalType": "bytes32"
611
+ }
612
+ ]
613
+ }
614
+ ],
615
+ "stateMutability": "payable"
616
+ },
617
+ {
618
+ "type": "function",
619
+ "name": "proxiableUUID",
620
+ "inputs": [],
621
+ "outputs": [
622
+ {
623
+ "name": "",
624
+ "type": "bytes32",
625
+ "internalType": "bytes32"
626
+ }
627
+ ],
628
+ "stateMutability": "view"
629
+ },
630
+ {
631
+ "type": "function",
632
+ "name": "renounceOwnership",
633
+ "inputs": [],
634
+ "outputs": [],
635
+ "stateMutability": "nonpayable"
636
+ },
637
+ {
638
+ "type": "function",
639
+ "name": "secondarySwap",
640
+ "inputs": [],
641
+ "outputs": [
642
+ {
643
+ "name": "",
644
+ "type": "address",
645
+ "internalType": "contract ISecondarySwap"
646
+ }
647
+ ],
648
+ "stateMutability": "view"
649
+ },
650
+ {
651
+ "type": "function",
652
+ "name": "sellOnSecondaryAndComment",
653
+ "inputs": [
654
+ {
655
+ "name": "commenter",
656
+ "type": "address",
657
+ "internalType": "address"
658
+ },
659
+ {
660
+ "name": "quantity",
661
+ "type": "uint256",
662
+ "internalType": "uint256"
663
+ },
664
+ {
665
+ "name": "collection",
666
+ "type": "address",
667
+ "internalType": "address"
668
+ },
669
+ {
670
+ "name": "tokenId",
671
+ "type": "uint256",
672
+ "internalType": "uint256"
673
+ },
674
+ {
675
+ "name": "recipient",
676
+ "type": "address",
677
+ "internalType": "address payable"
678
+ },
679
+ {
680
+ "name": "minEthToAcquire",
681
+ "type": "uint256",
682
+ "internalType": "uint256"
683
+ },
684
+ {
685
+ "name": "sqrtPriceLimitX96",
686
+ "type": "uint160",
687
+ "internalType": "uint160"
688
+ },
689
+ {
690
+ "name": "comment",
691
+ "type": "string",
692
+ "internalType": "string"
693
+ }
694
+ ],
695
+ "outputs": [
696
+ {
697
+ "name": "commentIdentifier",
698
+ "type": "tuple",
699
+ "internalType": "struct IComments.CommentIdentifier",
700
+ "components": [
701
+ {
702
+ "name": "commenter",
703
+ "type": "address",
704
+ "internalType": "address"
705
+ },
706
+ {
707
+ "name": "contractAddress",
708
+ "type": "address",
709
+ "internalType": "address"
710
+ },
711
+ {
712
+ "name": "tokenId",
713
+ "type": "uint256",
714
+ "internalType": "uint256"
715
+ },
716
+ {
717
+ "name": "nonce",
718
+ "type": "bytes32",
719
+ "internalType": "bytes32"
720
+ }
721
+ ]
722
+ }
723
+ ],
724
+ "stateMutability": "payable"
725
+ },
726
+ {
727
+ "type": "function",
728
+ "name": "sparkValue",
729
+ "inputs": [],
730
+ "outputs": [
731
+ {
732
+ "name": "",
733
+ "type": "uint256",
734
+ "internalType": "uint256"
735
+ }
736
+ ],
737
+ "stateMutability": "view"
738
+ },
739
+ {
740
+ "type": "function",
741
+ "name": "timedSaleMintAndComment",
742
+ "inputs": [
743
+ {
744
+ "name": "commenter",
745
+ "type": "address",
746
+ "internalType": "address"
747
+ },
748
+ {
749
+ "name": "quantity",
750
+ "type": "uint256",
751
+ "internalType": "uint256"
752
+ },
753
+ {
754
+ "name": "collection",
755
+ "type": "address",
756
+ "internalType": "address"
757
+ },
758
+ {
759
+ "name": "tokenId",
760
+ "type": "uint256",
761
+ "internalType": "uint256"
762
+ },
763
+ {
764
+ "name": "mintReferral",
765
+ "type": "address",
766
+ "internalType": "address"
767
+ },
768
+ {
769
+ "name": "comment",
770
+ "type": "string",
771
+ "internalType": "string"
772
+ }
773
+ ],
774
+ "outputs": [
775
+ {
776
+ "name": "",
777
+ "type": "tuple",
778
+ "internalType": "struct IComments.CommentIdentifier",
779
+ "components": [
780
+ {
781
+ "name": "commenter",
782
+ "type": "address",
783
+ "internalType": "address"
784
+ },
785
+ {
786
+ "name": "contractAddress",
787
+ "type": "address",
788
+ "internalType": "address"
789
+ },
790
+ {
791
+ "name": "tokenId",
792
+ "type": "uint256",
793
+ "internalType": "uint256"
794
+ },
795
+ {
796
+ "name": "nonce",
797
+ "type": "bytes32",
798
+ "internalType": "bytes32"
799
+ }
800
+ ]
801
+ }
802
+ ],
803
+ "stateMutability": "payable"
804
+ },
805
+ {
806
+ "type": "function",
807
+ "name": "transferOwnership",
808
+ "inputs": [
809
+ {
810
+ "name": "newOwner",
811
+ "type": "address",
812
+ "internalType": "address"
813
+ }
814
+ ],
815
+ "outputs": [],
816
+ "stateMutability": "nonpayable"
817
+ },
818
+ {
819
+ "type": "function",
820
+ "name": "upgradeToAndCall",
821
+ "inputs": [
822
+ {
823
+ "name": "newImplementation",
824
+ "type": "address",
825
+ "internalType": "address"
826
+ },
827
+ {
828
+ "name": "data",
829
+ "type": "bytes",
830
+ "internalType": "bytes"
831
+ }
832
+ ],
833
+ "outputs": [],
834
+ "stateMutability": "payable"
835
+ },
836
+ {
837
+ "type": "function",
838
+ "name": "zoraTimedSale",
839
+ "inputs": [],
840
+ "outputs": [
841
+ {
842
+ "name": "",
843
+ "type": "address",
844
+ "internalType": "contract IZoraTimedSaleStrategy"
845
+ }
846
+ ],
847
+ "stateMutability": "view"
848
+ },
849
+ {
850
+ "type": "event",
851
+ "name": "EIP712DomainChanged",
852
+ "inputs": [],
853
+ "anonymous": false
854
+ },
855
+ {
856
+ "type": "event",
857
+ "name": "Initialized",
858
+ "inputs": [
859
+ {
860
+ "name": "version",
861
+ "type": "uint64",
862
+ "indexed": false,
863
+ "internalType": "uint64"
864
+ }
865
+ ],
866
+ "anonymous": false
867
+ },
868
+ {
869
+ "type": "event",
870
+ "name": "MintedAndCommented",
871
+ "inputs": [
872
+ {
873
+ "name": "commentId",
874
+ "type": "bytes32",
875
+ "indexed": true,
876
+ "internalType": "bytes32"
877
+ },
878
+ {
879
+ "name": "commentIdentifier",
880
+ "type": "tuple",
881
+ "indexed": false,
882
+ "internalType": "struct IComments.CommentIdentifier",
883
+ "components": [
884
+ {
885
+ "name": "commenter",
886
+ "type": "address",
887
+ "internalType": "address"
888
+ },
889
+ {
890
+ "name": "contractAddress",
891
+ "type": "address",
892
+ "internalType": "address"
893
+ },
894
+ {
895
+ "name": "tokenId",
896
+ "type": "uint256",
897
+ "internalType": "uint256"
898
+ },
899
+ {
900
+ "name": "nonce",
901
+ "type": "bytes32",
902
+ "internalType": "bytes32"
903
+ }
904
+ ]
905
+ },
906
+ {
907
+ "name": "quantity",
908
+ "type": "uint256",
909
+ "indexed": false,
910
+ "internalType": "uint256"
911
+ },
912
+ {
913
+ "name": "text",
914
+ "type": "string",
915
+ "indexed": false,
916
+ "internalType": "string"
917
+ }
918
+ ],
919
+ "anonymous": false
920
+ },
921
+ {
922
+ "type": "event",
923
+ "name": "OwnershipTransferStarted",
924
+ "inputs": [
925
+ {
926
+ "name": "previousOwner",
927
+ "type": "address",
928
+ "indexed": true,
929
+ "internalType": "address"
930
+ },
931
+ {
932
+ "name": "newOwner",
933
+ "type": "address",
934
+ "indexed": true,
935
+ "internalType": "address"
936
+ }
937
+ ],
938
+ "anonymous": false
939
+ },
940
+ {
941
+ "type": "event",
942
+ "name": "OwnershipTransferred",
943
+ "inputs": [
944
+ {
945
+ "name": "previousOwner",
946
+ "type": "address",
947
+ "indexed": true,
948
+ "internalType": "address"
949
+ },
950
+ {
951
+ "name": "newOwner",
952
+ "type": "address",
953
+ "indexed": true,
954
+ "internalType": "address"
955
+ }
956
+ ],
957
+ "anonymous": false
958
+ },
959
+ {
960
+ "type": "event",
961
+ "name": "SwappedOnSecondaryAndCommented",
962
+ "inputs": [
963
+ {
964
+ "name": "commentId",
965
+ "type": "bytes32",
966
+ "indexed": true,
967
+ "internalType": "bytes32"
968
+ },
969
+ {
970
+ "name": "commentIdentifier",
971
+ "type": "tuple",
972
+ "indexed": false,
973
+ "internalType": "struct IComments.CommentIdentifier",
974
+ "components": [
975
+ {
976
+ "name": "commenter",
977
+ "type": "address",
978
+ "internalType": "address"
979
+ },
980
+ {
981
+ "name": "contractAddress",
982
+ "type": "address",
983
+ "internalType": "address"
984
+ },
985
+ {
986
+ "name": "tokenId",
987
+ "type": "uint256",
988
+ "internalType": "uint256"
989
+ },
990
+ {
991
+ "name": "nonce",
992
+ "type": "bytes32",
993
+ "internalType": "bytes32"
994
+ }
995
+ ]
996
+ },
997
+ {
998
+ "name": "quantity",
999
+ "type": "uint256",
1000
+ "indexed": true,
1001
+ "internalType": "uint256"
1002
+ },
1003
+ {
1004
+ "name": "comment",
1005
+ "type": "string",
1006
+ "indexed": false,
1007
+ "internalType": "string"
1008
+ },
1009
+ {
1010
+ "name": "swapDirection",
1011
+ "type": "uint8",
1012
+ "indexed": true,
1013
+ "internalType": "enum ICallerAndCommenter.SwapDirection"
1014
+ }
1015
+ ],
1016
+ "anonymous": false
1017
+ },
1018
+ {
1019
+ "type": "event",
1020
+ "name": "Upgraded",
1021
+ "inputs": [
1022
+ {
1023
+ "name": "implementation",
1024
+ "type": "address",
1025
+ "indexed": true,
1026
+ "internalType": "address"
1027
+ }
1028
+ ],
1029
+ "anonymous": false
1030
+ },
1031
+ {
1032
+ "type": "error",
1033
+ "name": "AddressEmptyCode",
1034
+ "inputs": [
1035
+ {
1036
+ "name": "target",
1037
+ "type": "address",
1038
+ "internalType": "address"
1039
+ }
1040
+ ]
1041
+ },
1042
+ {
1043
+ "type": "error",
1044
+ "name": "CommenterMismatch",
1045
+ "inputs": [
1046
+ {
1047
+ "name": "expected",
1048
+ "type": "address",
1049
+ "internalType": "address"
1050
+ },
1051
+ {
1052
+ "name": "actual",
1053
+ "type": "address",
1054
+ "internalType": "address"
1055
+ }
1056
+ ]
1057
+ },
1058
+ {
1059
+ "type": "error",
1060
+ "name": "ERC1967InvalidImplementation",
1061
+ "inputs": [
1062
+ {
1063
+ "name": "implementation",
1064
+ "type": "address",
1065
+ "internalType": "address"
1066
+ }
1067
+ ]
1068
+ },
1069
+ {
1070
+ "type": "error",
1071
+ "name": "ERC1967NonPayable",
1072
+ "inputs": []
1073
+ },
1074
+ {
1075
+ "type": "error",
1076
+ "name": "ERC2612ExpiredSignature",
1077
+ "inputs": [
1078
+ {
1079
+ "name": "deadline",
1080
+ "type": "uint256",
1081
+ "internalType": "uint256"
1082
+ }
1083
+ ]
1084
+ },
1085
+ {
1086
+ "type": "error",
1087
+ "name": "FailedInnerCall",
1088
+ "inputs": []
1089
+ },
1090
+ {
1091
+ "type": "error",
1092
+ "name": "IncorrectDestinationChain",
1093
+ "inputs": [
1094
+ {
1095
+ "name": "wrongDestinationChainId",
1096
+ "type": "uint256",
1097
+ "internalType": "uint256"
1098
+ }
1099
+ ]
1100
+ },
1101
+ {
1102
+ "type": "error",
1103
+ "name": "InvalidAccountNonce",
1104
+ "inputs": [
1105
+ {
1106
+ "name": "account",
1107
+ "type": "address",
1108
+ "internalType": "address"
1109
+ },
1110
+ {
1111
+ "name": "currentNonce",
1112
+ "type": "bytes32",
1113
+ "internalType": "bytes32"
1114
+ }
1115
+ ]
1116
+ },
1117
+ {
1118
+ "type": "error",
1119
+ "name": "InvalidInitialization",
1120
+ "inputs": []
1121
+ },
1122
+ {
1123
+ "type": "error",
1124
+ "name": "InvalidSignature",
1125
+ "inputs": []
1126
+ },
1127
+ {
1128
+ "type": "error",
1129
+ "name": "NotInitializing",
1130
+ "inputs": []
1131
+ },
1132
+ {
1133
+ "type": "error",
1134
+ "name": "OwnableInvalidOwner",
1135
+ "inputs": [
1136
+ {
1137
+ "name": "owner",
1138
+ "type": "address",
1139
+ "internalType": "address"
1140
+ }
1141
+ ]
1142
+ },
1143
+ {
1144
+ "type": "error",
1145
+ "name": "OwnableUnauthorizedAccount",
1146
+ "inputs": [
1147
+ {
1148
+ "name": "account",
1149
+ "type": "address",
1150
+ "internalType": "address"
1151
+ }
1152
+ ]
1153
+ },
1154
+ {
1155
+ "type": "error",
1156
+ "name": "SaleNotSet",
1157
+ "inputs": [
1158
+ {
1159
+ "name": "collection",
1160
+ "type": "address",
1161
+ "internalType": "address"
1162
+ },
1163
+ {
1164
+ "name": "tokenId",
1165
+ "type": "uint256",
1166
+ "internalType": "uint256"
1167
+ }
1168
+ ]
1169
+ },
1170
+ {
1171
+ "type": "error",
1172
+ "name": "UUPSUnauthorizedCallContext",
1173
+ "inputs": []
1174
+ },
1175
+ {
1176
+ "type": "error",
1177
+ "name": "UUPSUnsupportedProxiableUUID",
1178
+ "inputs": [
1179
+ {
1180
+ "name": "slot",
1181
+ "type": "bytes32",
1182
+ "internalType": "bytes32"
1183
+ }
1184
+ ]
1185
+ },
1186
+ {
1187
+ "type": "error",
1188
+ "name": "UpgradeToMismatchedContractName",
1189
+ "inputs": [
1190
+ {
1191
+ "name": "currentName",
1192
+ "type": "string",
1193
+ "internalType": "string"
1194
+ },
1195
+ {
1196
+ "name": "newName",
1197
+ "type": "string",
1198
+ "internalType": "string"
1199
+ }
1200
+ ]
1201
+ },
1202
+ {
1203
+ "type": "error",
1204
+ "name": "WrongValueSent",
1205
+ "inputs": [
1206
+ {
1207
+ "name": "expected",
1208
+ "type": "uint256",
1209
+ "internalType": "uint256"
1210
+ },
1211
+ {
1212
+ "name": "actual",
1213
+ "type": "uint256",
1214
+ "internalType": "uint256"
1215
+ }
1216
+ ]
1217
+ }
1218
+ ]