@zoralabs/comments-contracts 0.0.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 (140) hide show
  1. package/.env.example +11 -0
  2. package/.turbo/turbo-build.log +60 -0
  3. package/LICENSE +21 -0
  4. package/README.md +70 -0
  5. package/_imagine/Enjoy.sol +41 -0
  6. package/abis/AccessControlUpgradeable.json +250 -0
  7. package/abis/Address.json +29 -0
  8. package/abis/Comments.json +62 -0
  9. package/abis/CommentsDeployerBase.json +15 -0
  10. package/abis/CommentsImpl.json +1750 -0
  11. package/abis/CommentsPermitTest.json +847 -0
  12. package/abis/CommentsTest.json +986 -0
  13. package/abis/CommentsTestBase.json +577 -0
  14. package/abis/Comments_mintAndCommentTest.json +690 -0
  15. package/abis/ContextUpgradeable.json +25 -0
  16. package/abis/ContractVersionBase.json +15 -0
  17. package/abis/Create2.json +28 -0
  18. package/abis/DeployImpl.json +22 -0
  19. package/abis/DeployNonDeterministic.json +22 -0
  20. package/abis/DeployScript.json +22 -0
  21. package/abis/DeterministicDeployerAndCaller.json +315 -0
  22. package/abis/DeterministicUUPSProxyDeployer.json +167 -0
  23. package/abis/ECDSA.json +29 -0
  24. package/abis/EIP712.json +67 -0
  25. package/abis/EIP712UpgradeableWithChainId.json +25 -0
  26. package/abis/ERC1155.json +416 -0
  27. package/abis/ERC1155Holder.json +99 -0
  28. package/abis/ERC165.json +21 -0
  29. package/abis/ERC165Upgradeable.json +44 -0
  30. package/abis/ERC1967Proxy.json +67 -0
  31. package/abis/ERC1967Utils.json +85 -0
  32. package/abis/GenerateDeterministicParams.json +22 -0
  33. package/abis/IAccessControl.json +195 -0
  34. package/abis/IBeacon.json +15 -0
  35. package/abis/IComments.json +654 -0
  36. package/abis/IContractMetadata.json +28 -0
  37. package/abis/IERC1155.json +295 -0
  38. package/abis/IERC1155Errors.json +104 -0
  39. package/abis/IERC1155MetadataURI.json +314 -0
  40. package/abis/IERC1155Receiver.json +99 -0
  41. package/abis/IERC1271.json +26 -0
  42. package/abis/IERC165.json +21 -0
  43. package/abis/IERC1822Proxiable.json +15 -0
  44. package/abis/IERC20.json +224 -0
  45. package/abis/IERC20Errors.json +88 -0
  46. package/abis/IERC5267.json +51 -0
  47. package/abis/IERC721.json +287 -0
  48. package/abis/IERC721Enumerable.json +343 -0
  49. package/abis/IERC721Errors.json +105 -0
  50. package/abis/IERC721Metadata.json +332 -0
  51. package/abis/IERC721TokenReceiver.json +36 -0
  52. package/abis/IHasContractName.json +15 -0
  53. package/abis/IImmutableCreate2Factory.json +93 -0
  54. package/abis/IMulticall3.json +440 -0
  55. package/abis/IProtocolRewards.json +342 -0
  56. package/abis/ISafe.json +15 -0
  57. package/abis/ISymbol.json +15 -0
  58. package/abis/IVersionedContract.json +15 -0
  59. package/abis/IZoraCreator1155.json +343 -0
  60. package/abis/ImmutableCreate2FactoryUtils.json +15 -0
  61. package/abis/Initializable.json +25 -0
  62. package/abis/LibString.json +7 -0
  63. package/abis/Math.json +7 -0
  64. package/abis/Mock1155.json +547 -0
  65. package/abis/MockERC20.json +322 -0
  66. package/abis/MockERC721.json +350 -0
  67. package/abis/MockMinter.json +64 -0
  68. package/abis/OwnableUpgradeable.json +99 -0
  69. package/abis/ProtocolRewards.json +494 -0
  70. package/abis/Proxy.json +6 -0
  71. package/abis/ProxyDeployerScript.json +15 -0
  72. package/abis/ProxyShim.json +112 -0
  73. package/abis/Script.json +15 -0
  74. package/abis/ShortStrings.json +18 -0
  75. package/abis/StdAssertions.json +379 -0
  76. package/abis/StdInvariant.json +180 -0
  77. package/abis/Strings.json +18 -0
  78. package/abis/Test.json +570 -0
  79. package/abis/UUPSUpgradeable.json +130 -0
  80. package/abis/UnorderedNoncesUpgradeable.json +42 -0
  81. package/abis/Vm.json +8627 -0
  82. package/abis/VmSafe.json +7297 -0
  83. package/abis/stdError.json +119 -0
  84. package/abis/stdStorageSafe.json +52 -0
  85. package/addresses/999999999.json +4 -0
  86. package/deterministicConfig/comments.json +8 -0
  87. package/dist/index.cjs +935 -0
  88. package/dist/index.cjs.map +1 -0
  89. package/dist/index.d.ts +2 -0
  90. package/dist/index.d.ts.map +1 -0
  91. package/dist/index.js +908 -0
  92. package/dist/index.js.map +1 -0
  93. package/dist/types.d.ts +4 -0
  94. package/dist/types.d.ts.map +1 -0
  95. package/dist/wagmiGenerated.d.ts +1354 -0
  96. package/dist/wagmiGenerated.d.ts.map +1 -0
  97. package/foundry.toml +24 -0
  98. package/package/index.ts +4 -0
  99. package/package/types.ts +5 -0
  100. package/package/wagmiGenerated.ts +907 -0
  101. package/package.json +62 -0
  102. package/remappings.txt +8 -0
  103. package/script/CommentsDeployerBase.sol +60 -0
  104. package/script/Deploy.s.sol +66 -0
  105. package/script/DeployImpl.s.sol +26 -0
  106. package/script/DeployNonDeterministic.s.sol +43 -0
  107. package/script/GenerateDeterministicParams.s.sol +55 -0
  108. package/script/bundle-abis.ts +109 -0
  109. package/script/storage-check.sh +57 -0
  110. package/script/update-contract-version.ts +63 -0
  111. package/scripts/abis.ts +3 -0
  112. package/scripts/backfillComments.ts +176 -0
  113. package/scripts/generateCommentsTestData.ts +247 -0
  114. package/scripts/getCommentsAddresses.ts +10 -0
  115. package/scripts/queries.ts +73 -0
  116. package/scripts/queryAndSaveComments.ts +48 -0
  117. package/scripts/queryQuantityOfComments.ts +53 -0
  118. package/scripts/signDeployAndCall.ts +51 -0
  119. package/scripts/turnkey.ts +36 -0
  120. package/scripts/utils.ts +127 -0
  121. package/scripts/writeComments.ts +198 -0
  122. package/slither.config.json +7 -0
  123. package/src/CommentsImpl.sol +552 -0
  124. package/src/deployments/CommentsDeployment.sol +14 -0
  125. package/src/interfaces/IComments.sol +156 -0
  126. package/src/interfaces/IZoraCreator1155.sol +12 -0
  127. package/src/proxy/Comments.sol +43 -0
  128. package/src/utils/EIP712UpgradeableWithChainId.sol +36 -0
  129. package/src/version/ContractVersionBase.sol +14 -0
  130. package/test/Comments.t.sol +482 -0
  131. package/test/CommentsTestBase.sol +86 -0
  132. package/test/Comments_mintAndComment.t.sol +101 -0
  133. package/test/Comments_permit.t.sol +397 -0
  134. package/test/mocks/Mock1155.sol +50 -0
  135. package/test/mocks/MockMinter.sol +29 -0
  136. package/test/mocks/ProtocolRewards.sol +1497 -0
  137. package/tsconfig.build.json +10 -0
  138. package/tsconfig.json +9 -0
  139. package/tsup.config.ts +11 -0
  140. package/wagmi.config.ts +14 -0
@@ -0,0 +1,25 @@
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
+ ]
@@ -0,0 +1,416 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "balanceOf",
5
+ "inputs": [
6
+ {
7
+ "name": "account",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "id",
13
+ "type": "uint256",
14
+ "internalType": "uint256"
15
+ }
16
+ ],
17
+ "outputs": [
18
+ {
19
+ "name": "",
20
+ "type": "uint256",
21
+ "internalType": "uint256"
22
+ }
23
+ ],
24
+ "stateMutability": "view"
25
+ },
26
+ {
27
+ "type": "function",
28
+ "name": "balanceOfBatch",
29
+ "inputs": [
30
+ {
31
+ "name": "accounts",
32
+ "type": "address[]",
33
+ "internalType": "address[]"
34
+ },
35
+ {
36
+ "name": "ids",
37
+ "type": "uint256[]",
38
+ "internalType": "uint256[]"
39
+ }
40
+ ],
41
+ "outputs": [
42
+ {
43
+ "name": "",
44
+ "type": "uint256[]",
45
+ "internalType": "uint256[]"
46
+ }
47
+ ],
48
+ "stateMutability": "view"
49
+ },
50
+ {
51
+ "type": "function",
52
+ "name": "isApprovedForAll",
53
+ "inputs": [
54
+ {
55
+ "name": "account",
56
+ "type": "address",
57
+ "internalType": "address"
58
+ },
59
+ {
60
+ "name": "operator",
61
+ "type": "address",
62
+ "internalType": "address"
63
+ }
64
+ ],
65
+ "outputs": [
66
+ {
67
+ "name": "",
68
+ "type": "bool",
69
+ "internalType": "bool"
70
+ }
71
+ ],
72
+ "stateMutability": "view"
73
+ },
74
+ {
75
+ "type": "function",
76
+ "name": "safeBatchTransferFrom",
77
+ "inputs": [
78
+ {
79
+ "name": "from",
80
+ "type": "address",
81
+ "internalType": "address"
82
+ },
83
+ {
84
+ "name": "to",
85
+ "type": "address",
86
+ "internalType": "address"
87
+ },
88
+ {
89
+ "name": "ids",
90
+ "type": "uint256[]",
91
+ "internalType": "uint256[]"
92
+ },
93
+ {
94
+ "name": "values",
95
+ "type": "uint256[]",
96
+ "internalType": "uint256[]"
97
+ },
98
+ {
99
+ "name": "data",
100
+ "type": "bytes",
101
+ "internalType": "bytes"
102
+ }
103
+ ],
104
+ "outputs": [],
105
+ "stateMutability": "nonpayable"
106
+ },
107
+ {
108
+ "type": "function",
109
+ "name": "safeTransferFrom",
110
+ "inputs": [
111
+ {
112
+ "name": "from",
113
+ "type": "address",
114
+ "internalType": "address"
115
+ },
116
+ {
117
+ "name": "to",
118
+ "type": "address",
119
+ "internalType": "address"
120
+ },
121
+ {
122
+ "name": "id",
123
+ "type": "uint256",
124
+ "internalType": "uint256"
125
+ },
126
+ {
127
+ "name": "value",
128
+ "type": "uint256",
129
+ "internalType": "uint256"
130
+ },
131
+ {
132
+ "name": "data",
133
+ "type": "bytes",
134
+ "internalType": "bytes"
135
+ }
136
+ ],
137
+ "outputs": [],
138
+ "stateMutability": "nonpayable"
139
+ },
140
+ {
141
+ "type": "function",
142
+ "name": "setApprovalForAll",
143
+ "inputs": [
144
+ {
145
+ "name": "operator",
146
+ "type": "address",
147
+ "internalType": "address"
148
+ },
149
+ {
150
+ "name": "approved",
151
+ "type": "bool",
152
+ "internalType": "bool"
153
+ }
154
+ ],
155
+ "outputs": [],
156
+ "stateMutability": "nonpayable"
157
+ },
158
+ {
159
+ "type": "function",
160
+ "name": "supportsInterface",
161
+ "inputs": [
162
+ {
163
+ "name": "interfaceId",
164
+ "type": "bytes4",
165
+ "internalType": "bytes4"
166
+ }
167
+ ],
168
+ "outputs": [
169
+ {
170
+ "name": "",
171
+ "type": "bool",
172
+ "internalType": "bool"
173
+ }
174
+ ],
175
+ "stateMutability": "view"
176
+ },
177
+ {
178
+ "type": "function",
179
+ "name": "uri",
180
+ "inputs": [
181
+ {
182
+ "name": "",
183
+ "type": "uint256",
184
+ "internalType": "uint256"
185
+ }
186
+ ],
187
+ "outputs": [
188
+ {
189
+ "name": "",
190
+ "type": "string",
191
+ "internalType": "string"
192
+ }
193
+ ],
194
+ "stateMutability": "view"
195
+ },
196
+ {
197
+ "type": "event",
198
+ "name": "ApprovalForAll",
199
+ "inputs": [
200
+ {
201
+ "name": "account",
202
+ "type": "address",
203
+ "indexed": true,
204
+ "internalType": "address"
205
+ },
206
+ {
207
+ "name": "operator",
208
+ "type": "address",
209
+ "indexed": true,
210
+ "internalType": "address"
211
+ },
212
+ {
213
+ "name": "approved",
214
+ "type": "bool",
215
+ "indexed": false,
216
+ "internalType": "bool"
217
+ }
218
+ ],
219
+ "anonymous": false
220
+ },
221
+ {
222
+ "type": "event",
223
+ "name": "TransferBatch",
224
+ "inputs": [
225
+ {
226
+ "name": "operator",
227
+ "type": "address",
228
+ "indexed": true,
229
+ "internalType": "address"
230
+ },
231
+ {
232
+ "name": "from",
233
+ "type": "address",
234
+ "indexed": true,
235
+ "internalType": "address"
236
+ },
237
+ {
238
+ "name": "to",
239
+ "type": "address",
240
+ "indexed": true,
241
+ "internalType": "address"
242
+ },
243
+ {
244
+ "name": "ids",
245
+ "type": "uint256[]",
246
+ "indexed": false,
247
+ "internalType": "uint256[]"
248
+ },
249
+ {
250
+ "name": "values",
251
+ "type": "uint256[]",
252
+ "indexed": false,
253
+ "internalType": "uint256[]"
254
+ }
255
+ ],
256
+ "anonymous": false
257
+ },
258
+ {
259
+ "type": "event",
260
+ "name": "TransferSingle",
261
+ "inputs": [
262
+ {
263
+ "name": "operator",
264
+ "type": "address",
265
+ "indexed": true,
266
+ "internalType": "address"
267
+ },
268
+ {
269
+ "name": "from",
270
+ "type": "address",
271
+ "indexed": true,
272
+ "internalType": "address"
273
+ },
274
+ {
275
+ "name": "to",
276
+ "type": "address",
277
+ "indexed": true,
278
+ "internalType": "address"
279
+ },
280
+ {
281
+ "name": "id",
282
+ "type": "uint256",
283
+ "indexed": false,
284
+ "internalType": "uint256"
285
+ },
286
+ {
287
+ "name": "value",
288
+ "type": "uint256",
289
+ "indexed": false,
290
+ "internalType": "uint256"
291
+ }
292
+ ],
293
+ "anonymous": false
294
+ },
295
+ {
296
+ "type": "event",
297
+ "name": "URI",
298
+ "inputs": [
299
+ {
300
+ "name": "value",
301
+ "type": "string",
302
+ "indexed": false,
303
+ "internalType": "string"
304
+ },
305
+ {
306
+ "name": "id",
307
+ "type": "uint256",
308
+ "indexed": true,
309
+ "internalType": "uint256"
310
+ }
311
+ ],
312
+ "anonymous": false
313
+ },
314
+ {
315
+ "type": "error",
316
+ "name": "ERC1155InsufficientBalance",
317
+ "inputs": [
318
+ {
319
+ "name": "sender",
320
+ "type": "address",
321
+ "internalType": "address"
322
+ },
323
+ {
324
+ "name": "balance",
325
+ "type": "uint256",
326
+ "internalType": "uint256"
327
+ },
328
+ {
329
+ "name": "needed",
330
+ "type": "uint256",
331
+ "internalType": "uint256"
332
+ },
333
+ {
334
+ "name": "tokenId",
335
+ "type": "uint256",
336
+ "internalType": "uint256"
337
+ }
338
+ ]
339
+ },
340
+ {
341
+ "type": "error",
342
+ "name": "ERC1155InvalidApprover",
343
+ "inputs": [
344
+ {
345
+ "name": "approver",
346
+ "type": "address",
347
+ "internalType": "address"
348
+ }
349
+ ]
350
+ },
351
+ {
352
+ "type": "error",
353
+ "name": "ERC1155InvalidArrayLength",
354
+ "inputs": [
355
+ {
356
+ "name": "idsLength",
357
+ "type": "uint256",
358
+ "internalType": "uint256"
359
+ },
360
+ {
361
+ "name": "valuesLength",
362
+ "type": "uint256",
363
+ "internalType": "uint256"
364
+ }
365
+ ]
366
+ },
367
+ {
368
+ "type": "error",
369
+ "name": "ERC1155InvalidOperator",
370
+ "inputs": [
371
+ {
372
+ "name": "operator",
373
+ "type": "address",
374
+ "internalType": "address"
375
+ }
376
+ ]
377
+ },
378
+ {
379
+ "type": "error",
380
+ "name": "ERC1155InvalidReceiver",
381
+ "inputs": [
382
+ {
383
+ "name": "receiver",
384
+ "type": "address",
385
+ "internalType": "address"
386
+ }
387
+ ]
388
+ },
389
+ {
390
+ "type": "error",
391
+ "name": "ERC1155InvalidSender",
392
+ "inputs": [
393
+ {
394
+ "name": "sender",
395
+ "type": "address",
396
+ "internalType": "address"
397
+ }
398
+ ]
399
+ },
400
+ {
401
+ "type": "error",
402
+ "name": "ERC1155MissingApprovalForAll",
403
+ "inputs": [
404
+ {
405
+ "name": "operator",
406
+ "type": "address",
407
+ "internalType": "address"
408
+ },
409
+ {
410
+ "name": "owner",
411
+ "type": "address",
412
+ "internalType": "address"
413
+ }
414
+ ]
415
+ }
416
+ ]
@@ -0,0 +1,99 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "onERC1155BatchReceived",
5
+ "inputs": [
6
+ {
7
+ "name": "",
8
+ "type": "address",
9
+ "internalType": "address"
10
+ },
11
+ {
12
+ "name": "",
13
+ "type": "address",
14
+ "internalType": "address"
15
+ },
16
+ {
17
+ "name": "",
18
+ "type": "uint256[]",
19
+ "internalType": "uint256[]"
20
+ },
21
+ {
22
+ "name": "",
23
+ "type": "uint256[]",
24
+ "internalType": "uint256[]"
25
+ },
26
+ {
27
+ "name": "",
28
+ "type": "bytes",
29
+ "internalType": "bytes"
30
+ }
31
+ ],
32
+ "outputs": [
33
+ {
34
+ "name": "",
35
+ "type": "bytes4",
36
+ "internalType": "bytes4"
37
+ }
38
+ ],
39
+ "stateMutability": "nonpayable"
40
+ },
41
+ {
42
+ "type": "function",
43
+ "name": "onERC1155Received",
44
+ "inputs": [
45
+ {
46
+ "name": "",
47
+ "type": "address",
48
+ "internalType": "address"
49
+ },
50
+ {
51
+ "name": "",
52
+ "type": "address",
53
+ "internalType": "address"
54
+ },
55
+ {
56
+ "name": "",
57
+ "type": "uint256",
58
+ "internalType": "uint256"
59
+ },
60
+ {
61
+ "name": "",
62
+ "type": "uint256",
63
+ "internalType": "uint256"
64
+ },
65
+ {
66
+ "name": "",
67
+ "type": "bytes",
68
+ "internalType": "bytes"
69
+ }
70
+ ],
71
+ "outputs": [
72
+ {
73
+ "name": "",
74
+ "type": "bytes4",
75
+ "internalType": "bytes4"
76
+ }
77
+ ],
78
+ "stateMutability": "nonpayable"
79
+ },
80
+ {
81
+ "type": "function",
82
+ "name": "supportsInterface",
83
+ "inputs": [
84
+ {
85
+ "name": "interfaceId",
86
+ "type": "bytes4",
87
+ "internalType": "bytes4"
88
+ }
89
+ ],
90
+ "outputs": [
91
+ {
92
+ "name": "",
93
+ "type": "bool",
94
+ "internalType": "bool"
95
+ }
96
+ ],
97
+ "stateMutability": "view"
98
+ }
99
+ ]
@@ -0,0 +1,21 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "supportsInterface",
5
+ "inputs": [
6
+ {
7
+ "name": "interfaceId",
8
+ "type": "bytes4",
9
+ "internalType": "bytes4"
10
+ }
11
+ ],
12
+ "outputs": [
13
+ {
14
+ "name": "",
15
+ "type": "bool",
16
+ "internalType": "bool"
17
+ }
18
+ ],
19
+ "stateMutability": "view"
20
+ }
21
+ ]
@@ -0,0 +1,44 @@
1
+ [
2
+ {
3
+ "type": "function",
4
+ "name": "supportsInterface",
5
+ "inputs": [
6
+ {
7
+ "name": "interfaceId",
8
+ "type": "bytes4",
9
+ "internalType": "bytes4"
10
+ }
11
+ ],
12
+ "outputs": [
13
+ {
14
+ "name": "",
15
+ "type": "bool",
16
+ "internalType": "bool"
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": "InvalidInitialization",
37
+ "inputs": []
38
+ },
39
+ {
40
+ "type": "error",
41
+ "name": "NotInitializing",
42
+ "inputs": []
43
+ }
44
+ ]
@@ -0,0 +1,67 @@
1
+ [
2
+ {
3
+ "type": "constructor",
4
+ "inputs": [
5
+ {
6
+ "name": "implementation",
7
+ "type": "address",
8
+ "internalType": "address"
9
+ },
10
+ {
11
+ "name": "_data",
12
+ "type": "bytes",
13
+ "internalType": "bytes"
14
+ }
15
+ ],
16
+ "stateMutability": "payable"
17
+ },
18
+ {
19
+ "type": "fallback",
20
+ "stateMutability": "payable"
21
+ },
22
+ {
23
+ "type": "event",
24
+ "name": "Upgraded",
25
+ "inputs": [
26
+ {
27
+ "name": "implementation",
28
+ "type": "address",
29
+ "indexed": true,
30
+ "internalType": "address"
31
+ }
32
+ ],
33
+ "anonymous": false
34
+ },
35
+ {
36
+ "type": "error",
37
+ "name": "AddressEmptyCode",
38
+ "inputs": [
39
+ {
40
+ "name": "target",
41
+ "type": "address",
42
+ "internalType": "address"
43
+ }
44
+ ]
45
+ },
46
+ {
47
+ "type": "error",
48
+ "name": "ERC1967InvalidImplementation",
49
+ "inputs": [
50
+ {
51
+ "name": "implementation",
52
+ "type": "address",
53
+ "internalType": "address"
54
+ }
55
+ ]
56
+ },
57
+ {
58
+ "type": "error",
59
+ "name": "ERC1967NonPayable",
60
+ "inputs": []
61
+ },
62
+ {
63
+ "type": "error",
64
+ "name": "FailedInnerCall",
65
+ "inputs": []
66
+ }
67
+ ]