@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
package/dist/index.cjs ADDED
@@ -0,0 +1,935 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // package/index.ts
21
+ var package_exports = {};
22
+ __export(package_exports, {
23
+ commentsImplABI: () => commentsImplABI
24
+ });
25
+ module.exports = __toCommonJS(package_exports);
26
+
27
+ // package/wagmiGenerated.ts
28
+ var commentsImplABI = [
29
+ {
30
+ stateMutability: "nonpayable",
31
+ type: "constructor",
32
+ inputs: [
33
+ { name: "_sparkValue", internalType: "uint256", type: "uint256" },
34
+ { name: "_protocolRewards", internalType: "address", type: "address" }
35
+ ]
36
+ },
37
+ {
38
+ stateMutability: "view",
39
+ type: "function",
40
+ inputs: [],
41
+ name: "BACKFILLER_ROLE",
42
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
43
+ },
44
+ {
45
+ stateMutability: "view",
46
+ type: "function",
47
+ inputs: [],
48
+ name: "DEFAULT_ADMIN_ROLE",
49
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
50
+ },
51
+ {
52
+ stateMutability: "view",
53
+ type: "function",
54
+ inputs: [],
55
+ name: "DELEGATE_COMMENTOR",
56
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
57
+ },
58
+ {
59
+ stateMutability: "view",
60
+ type: "function",
61
+ inputs: [],
62
+ name: "DOMAIN_NAME",
63
+ outputs: [{ name: "", internalType: "string", type: "string" }]
64
+ },
65
+ {
66
+ stateMutability: "view",
67
+ type: "function",
68
+ inputs: [],
69
+ name: "DOMAIN_VERSION",
70
+ outputs: [{ name: "", internalType: "string", type: "string" }]
71
+ },
72
+ {
73
+ stateMutability: "view",
74
+ type: "function",
75
+ inputs: [],
76
+ name: "PERMISSION_BIT_ADMIN",
77
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }]
78
+ },
79
+ {
80
+ stateMutability: "view",
81
+ type: "function",
82
+ inputs: [],
83
+ name: "REFERRER_REWARD_PCT",
84
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }]
85
+ },
86
+ {
87
+ stateMutability: "view",
88
+ type: "function",
89
+ inputs: [],
90
+ name: "UPGRADE_INTERFACE_VERSION",
91
+ outputs: [{ name: "", internalType: "string", type: "string" }]
92
+ },
93
+ {
94
+ stateMutability: "view",
95
+ type: "function",
96
+ inputs: [],
97
+ name: "ZORA_REWARD_NO_REFERRER_PCT",
98
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }]
99
+ },
100
+ {
101
+ stateMutability: "view",
102
+ type: "function",
103
+ inputs: [],
104
+ name: "ZORA_REWARD_PCT",
105
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }]
106
+ },
107
+ {
108
+ stateMutability: "nonpayable",
109
+ type: "function",
110
+ inputs: [
111
+ {
112
+ name: "commentIdentifiers",
113
+ internalType: "struct IComments.CommentIdentifier[]",
114
+ type: "tuple[]",
115
+ components: [
116
+ { name: "commenter", internalType: "address", type: "address" },
117
+ { name: "contractAddress", internalType: "address", type: "address" },
118
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
119
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
120
+ ]
121
+ },
122
+ { name: "texts", internalType: "string[]", type: "string[]" },
123
+ { name: "timestamps", internalType: "uint256[]", type: "uint256[]" },
124
+ {
125
+ name: "originalTransactionHashes",
126
+ internalType: "bytes32[]",
127
+ type: "bytes32[]"
128
+ }
129
+ ],
130
+ name: "backfillBatchAddComment",
131
+ outputs: []
132
+ },
133
+ {
134
+ stateMutability: "payable",
135
+ type: "function",
136
+ inputs: [
137
+ { name: "commenter", internalType: "address", type: "address" },
138
+ { name: "contractAddress", internalType: "address", type: "address" },
139
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
140
+ { name: "text", internalType: "string", type: "string" },
141
+ {
142
+ name: "replyTo",
143
+ internalType: "struct IComments.CommentIdentifier",
144
+ type: "tuple",
145
+ components: [
146
+ { name: "commenter", internalType: "address", type: "address" },
147
+ { name: "contractAddress", internalType: "address", type: "address" },
148
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
149
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
150
+ ]
151
+ },
152
+ { name: "referrer", internalType: "address", type: "address" }
153
+ ],
154
+ name: "comment",
155
+ outputs: [
156
+ {
157
+ name: "commentIdentifier",
158
+ internalType: "struct IComments.CommentIdentifier",
159
+ type: "tuple",
160
+ components: [
161
+ { name: "commenter", internalType: "address", type: "address" },
162
+ { name: "contractAddress", internalType: "address", type: "address" },
163
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
164
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
165
+ ]
166
+ }
167
+ ]
168
+ },
169
+ {
170
+ stateMutability: "view",
171
+ type: "function",
172
+ inputs: [{ name: "commentId", internalType: "bytes32", type: "bytes32" }],
173
+ name: "commentSparksQuantity",
174
+ outputs: [{ name: "", internalType: "uint64", type: "uint64" }]
175
+ },
176
+ {
177
+ stateMutability: "pure",
178
+ type: "function",
179
+ inputs: [],
180
+ name: "contractName",
181
+ outputs: [{ name: "", internalType: "string", type: "string" }]
182
+ },
183
+ {
184
+ stateMutability: "pure",
185
+ type: "function",
186
+ inputs: [],
187
+ name: "contractVersion",
188
+ outputs: [{ name: "", internalType: "string", type: "string" }]
189
+ },
190
+ {
191
+ stateMutability: "nonpayable",
192
+ type: "function",
193
+ inputs: [
194
+ { name: "commenter", internalType: "address", type: "address" },
195
+ { name: "contractAddress", internalType: "address", type: "address" },
196
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
197
+ { name: "text", internalType: "string", type: "string" },
198
+ {
199
+ name: "replyTo",
200
+ internalType: "struct IComments.CommentIdentifier",
201
+ type: "tuple",
202
+ components: [
203
+ { name: "commenter", internalType: "address", type: "address" },
204
+ { name: "contractAddress", internalType: "address", type: "address" },
205
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
206
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
207
+ ]
208
+ }
209
+ ],
210
+ name: "delegateComment",
211
+ outputs: [
212
+ {
213
+ name: "commentIdentifier",
214
+ internalType: "struct IComments.CommentIdentifier",
215
+ type: "tuple",
216
+ components: [
217
+ { name: "commenter", internalType: "address", type: "address" },
218
+ { name: "contractAddress", internalType: "address", type: "address" },
219
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
220
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
221
+ ]
222
+ }
223
+ ]
224
+ },
225
+ {
226
+ stateMutability: "view",
227
+ type: "function",
228
+ inputs: [{ name: "role", internalType: "bytes32", type: "bytes32" }],
229
+ name: "getRoleAdmin",
230
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
231
+ },
232
+ {
233
+ stateMutability: "nonpayable",
234
+ type: "function",
235
+ inputs: [
236
+ { name: "role", internalType: "bytes32", type: "bytes32" },
237
+ { name: "account", internalType: "address", type: "address" }
238
+ ],
239
+ name: "grantRole",
240
+ outputs: []
241
+ },
242
+ {
243
+ stateMutability: "view",
244
+ type: "function",
245
+ inputs: [
246
+ { name: "role", internalType: "bytes32", type: "bytes32" },
247
+ { name: "account", internalType: "address", type: "address" }
248
+ ],
249
+ name: "hasRole",
250
+ outputs: [{ name: "", internalType: "bool", type: "bool" }]
251
+ },
252
+ {
253
+ stateMutability: "view",
254
+ type: "function",
255
+ inputs: [
256
+ {
257
+ name: "commentIdentifier",
258
+ internalType: "struct IComments.CommentIdentifier",
259
+ type: "tuple",
260
+ components: [
261
+ { name: "commenter", internalType: "address", type: "address" },
262
+ { name: "contractAddress", internalType: "address", type: "address" },
263
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
264
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
265
+ ]
266
+ }
267
+ ],
268
+ name: "hashAndCheckCommentExists",
269
+ outputs: [
270
+ { name: "commentId", internalType: "bytes32", type: "bytes32" },
271
+ { name: "exists", internalType: "bool", type: "bool" }
272
+ ]
273
+ },
274
+ {
275
+ stateMutability: "view",
276
+ type: "function",
277
+ inputs: [
278
+ {
279
+ name: "commentIdentifier",
280
+ internalType: "struct IComments.CommentIdentifier",
281
+ type: "tuple",
282
+ components: [
283
+ { name: "commenter", internalType: "address", type: "address" },
284
+ { name: "contractAddress", internalType: "address", type: "address" },
285
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
286
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
287
+ ]
288
+ }
289
+ ],
290
+ name: "hashAndValidateCommentExists",
291
+ outputs: [{ name: "commentId", internalType: "bytes32", type: "bytes32" }]
292
+ },
293
+ {
294
+ stateMutability: "pure",
295
+ type: "function",
296
+ inputs: [
297
+ {
298
+ name: "commentIdentifier",
299
+ internalType: "struct IComments.CommentIdentifier",
300
+ type: "tuple",
301
+ components: [
302
+ { name: "commenter", internalType: "address", type: "address" },
303
+ { name: "contractAddress", internalType: "address", type: "address" },
304
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
305
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
306
+ ]
307
+ }
308
+ ],
309
+ name: "hashCommentIdentifier",
310
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
311
+ },
312
+ {
313
+ stateMutability: "view",
314
+ type: "function",
315
+ inputs: [
316
+ {
317
+ name: "permit",
318
+ internalType: "struct IComments.PermitComment",
319
+ type: "tuple",
320
+ components: [
321
+ { name: "commenter", internalType: "address", type: "address" },
322
+ { name: "contractAddress", internalType: "address", type: "address" },
323
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
324
+ {
325
+ name: "replyTo",
326
+ internalType: "struct IComments.CommentIdentifier",
327
+ type: "tuple",
328
+ components: [
329
+ { name: "commenter", internalType: "address", type: "address" },
330
+ {
331
+ name: "contractAddress",
332
+ internalType: "address",
333
+ type: "address"
334
+ },
335
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
336
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
337
+ ]
338
+ },
339
+ { name: "text", internalType: "string", type: "string" },
340
+ { name: "sparksQuantity", internalType: "uint64", type: "uint64" },
341
+ { name: "deadline", internalType: "uint256", type: "uint256" },
342
+ { name: "nonce", internalType: "bytes32", type: "bytes32" },
343
+ { name: "referrer", internalType: "address", type: "address" },
344
+ { name: "sourceChainId", internalType: "uint256", type: "uint256" },
345
+ {
346
+ name: "destinationChainId",
347
+ internalType: "uint256",
348
+ type: "uint256"
349
+ }
350
+ ]
351
+ }
352
+ ],
353
+ name: "hashPermitComment",
354
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
355
+ },
356
+ {
357
+ stateMutability: "view",
358
+ type: "function",
359
+ inputs: [
360
+ {
361
+ name: "permit",
362
+ internalType: "struct IComments.PermitSparkComment",
363
+ type: "tuple",
364
+ components: [
365
+ {
366
+ name: "comment",
367
+ internalType: "struct IComments.CommentIdentifier",
368
+ type: "tuple",
369
+ components: [
370
+ { name: "commenter", internalType: "address", type: "address" },
371
+ {
372
+ name: "contractAddress",
373
+ internalType: "address",
374
+ type: "address"
375
+ },
376
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
377
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
378
+ ]
379
+ },
380
+ { name: "sparker", internalType: "address", type: "address" },
381
+ { name: "sparksQuantity", internalType: "uint64", type: "uint64" },
382
+ { name: "deadline", internalType: "uint256", type: "uint256" },
383
+ { name: "nonce", internalType: "bytes32", type: "bytes32" },
384
+ { name: "referrer", internalType: "address", type: "address" },
385
+ { name: "sourceChainId", internalType: "uint256", type: "uint256" },
386
+ {
387
+ name: "destinationChainId",
388
+ internalType: "uint256",
389
+ type: "uint256"
390
+ }
391
+ ]
392
+ }
393
+ ],
394
+ name: "hashPermitSparkComment",
395
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
396
+ },
397
+ {
398
+ stateMutability: "nonpayable",
399
+ type: "function",
400
+ inputs: [
401
+ { name: "_zoraRecipient", internalType: "address", type: "address" },
402
+ { name: "defaultAdmin", internalType: "address", type: "address" },
403
+ { name: "backfiller", internalType: "address", type: "address" },
404
+ {
405
+ name: "delegateCommenters",
406
+ internalType: "address[]",
407
+ type: "address[]"
408
+ }
409
+ ],
410
+ name: "initialize",
411
+ outputs: []
412
+ },
413
+ {
414
+ stateMutability: "view",
415
+ type: "function",
416
+ inputs: [],
417
+ name: "nextNonce",
418
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
419
+ },
420
+ {
421
+ stateMutability: "view",
422
+ type: "function",
423
+ inputs: [
424
+ { name: "owner", internalType: "address", type: "address" },
425
+ { name: "nonce", internalType: "uint256", type: "uint256" }
426
+ ],
427
+ name: "nonceUsed",
428
+ outputs: [{ name: "", internalType: "bool", type: "bool" }]
429
+ },
430
+ {
431
+ stateMutability: "payable",
432
+ type: "function",
433
+ inputs: [
434
+ {
435
+ name: "permit",
436
+ internalType: "struct IComments.PermitComment",
437
+ type: "tuple",
438
+ components: [
439
+ { name: "commenter", internalType: "address", type: "address" },
440
+ { name: "contractAddress", internalType: "address", type: "address" },
441
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
442
+ {
443
+ name: "replyTo",
444
+ internalType: "struct IComments.CommentIdentifier",
445
+ type: "tuple",
446
+ components: [
447
+ { name: "commenter", internalType: "address", type: "address" },
448
+ {
449
+ name: "contractAddress",
450
+ internalType: "address",
451
+ type: "address"
452
+ },
453
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
454
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
455
+ ]
456
+ },
457
+ { name: "text", internalType: "string", type: "string" },
458
+ { name: "sparksQuantity", internalType: "uint64", type: "uint64" },
459
+ { name: "deadline", internalType: "uint256", type: "uint256" },
460
+ { name: "nonce", internalType: "bytes32", type: "bytes32" },
461
+ { name: "referrer", internalType: "address", type: "address" },
462
+ { name: "sourceChainId", internalType: "uint256", type: "uint256" },
463
+ {
464
+ name: "destinationChainId",
465
+ internalType: "uint256",
466
+ type: "uint256"
467
+ }
468
+ ]
469
+ },
470
+ { name: "signature", internalType: "bytes", type: "bytes" }
471
+ ],
472
+ name: "permitComment",
473
+ outputs: []
474
+ },
475
+ {
476
+ stateMutability: "payable",
477
+ type: "function",
478
+ inputs: [
479
+ {
480
+ name: "permit",
481
+ internalType: "struct IComments.PermitSparkComment",
482
+ type: "tuple",
483
+ components: [
484
+ {
485
+ name: "comment",
486
+ internalType: "struct IComments.CommentIdentifier",
487
+ type: "tuple",
488
+ components: [
489
+ { name: "commenter", internalType: "address", type: "address" },
490
+ {
491
+ name: "contractAddress",
492
+ internalType: "address",
493
+ type: "address"
494
+ },
495
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
496
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
497
+ ]
498
+ },
499
+ { name: "sparker", internalType: "address", type: "address" },
500
+ { name: "sparksQuantity", internalType: "uint64", type: "uint64" },
501
+ { name: "deadline", internalType: "uint256", type: "uint256" },
502
+ { name: "nonce", internalType: "bytes32", type: "bytes32" },
503
+ { name: "referrer", internalType: "address", type: "address" },
504
+ { name: "sourceChainId", internalType: "uint256", type: "uint256" },
505
+ {
506
+ name: "destinationChainId",
507
+ internalType: "uint256",
508
+ type: "uint256"
509
+ }
510
+ ]
511
+ },
512
+ { name: "signature", internalType: "bytes", type: "bytes" }
513
+ ],
514
+ name: "permitSparkComment",
515
+ outputs: []
516
+ },
517
+ {
518
+ stateMutability: "view",
519
+ type: "function",
520
+ inputs: [],
521
+ name: "protocolRewards",
522
+ outputs: [
523
+ { name: "", internalType: "contract IProtocolRewards", type: "address" }
524
+ ]
525
+ },
526
+ {
527
+ stateMutability: "view",
528
+ type: "function",
529
+ inputs: [],
530
+ name: "proxiableUUID",
531
+ outputs: [{ name: "", internalType: "bytes32", type: "bytes32" }]
532
+ },
533
+ {
534
+ stateMutability: "nonpayable",
535
+ type: "function",
536
+ inputs: [
537
+ { name: "role", internalType: "bytes32", type: "bytes32" },
538
+ { name: "callerConfirmation", internalType: "address", type: "address" }
539
+ ],
540
+ name: "renounceRole",
541
+ outputs: []
542
+ },
543
+ {
544
+ stateMutability: "nonpayable",
545
+ type: "function",
546
+ inputs: [
547
+ { name: "role", internalType: "bytes32", type: "bytes32" },
548
+ { name: "account", internalType: "address", type: "address" }
549
+ ],
550
+ name: "revokeRole",
551
+ outputs: []
552
+ },
553
+ {
554
+ stateMutability: "payable",
555
+ type: "function",
556
+ inputs: [
557
+ {
558
+ name: "commentIdentifier",
559
+ internalType: "struct IComments.CommentIdentifier",
560
+ type: "tuple",
561
+ components: [
562
+ { name: "commenter", internalType: "address", type: "address" },
563
+ { name: "contractAddress", internalType: "address", type: "address" },
564
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
565
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
566
+ ]
567
+ },
568
+ { name: "sparksQuantity", internalType: "uint64", type: "uint64" },
569
+ { name: "referrer", internalType: "address", type: "address" }
570
+ ],
571
+ name: "sparkComment",
572
+ outputs: []
573
+ },
574
+ {
575
+ stateMutability: "view",
576
+ type: "function",
577
+ inputs: [],
578
+ name: "sparkValue",
579
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }]
580
+ },
581
+ {
582
+ stateMutability: "view",
583
+ type: "function",
584
+ inputs: [{ name: "interfaceId", internalType: "bytes4", type: "bytes4" }],
585
+ name: "supportsInterface",
586
+ outputs: [{ name: "", internalType: "bool", type: "bool" }]
587
+ },
588
+ {
589
+ stateMutability: "payable",
590
+ type: "function",
591
+ inputs: [
592
+ { name: "newImplementation", internalType: "address", type: "address" },
593
+ { name: "data", internalType: "bytes", type: "bytes" }
594
+ ],
595
+ name: "upgradeToAndCall",
596
+ outputs: []
597
+ },
598
+ {
599
+ type: "event",
600
+ anonymous: false,
601
+ inputs: [
602
+ {
603
+ name: "commentId",
604
+ internalType: "bytes32",
605
+ type: "bytes32",
606
+ indexed: true
607
+ },
608
+ {
609
+ name: "comment",
610
+ internalType: "struct IComments.CommentIdentifier",
611
+ type: "tuple",
612
+ components: [
613
+ { name: "commenter", internalType: "address", type: "address" },
614
+ { name: "contractAddress", internalType: "address", type: "address" },
615
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
616
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
617
+ ],
618
+ indexed: false
619
+ },
620
+ { name: "text", internalType: "string", type: "string", indexed: false },
621
+ {
622
+ name: "timestamp",
623
+ internalType: "uint256",
624
+ type: "uint256",
625
+ indexed: false
626
+ },
627
+ {
628
+ name: "originalTransactionId",
629
+ internalType: "bytes32",
630
+ type: "bytes32",
631
+ indexed: false
632
+ }
633
+ ],
634
+ name: "BackfilledComment"
635
+ },
636
+ {
637
+ type: "event",
638
+ anonymous: false,
639
+ inputs: [
640
+ {
641
+ name: "commentId",
642
+ internalType: "bytes32",
643
+ type: "bytes32",
644
+ indexed: true
645
+ },
646
+ {
647
+ name: "comment",
648
+ internalType: "struct IComments.CommentIdentifier",
649
+ type: "tuple",
650
+ components: [
651
+ { name: "commenter", internalType: "address", type: "address" },
652
+ { name: "contractAddress", internalType: "address", type: "address" },
653
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
654
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
655
+ ],
656
+ indexed: false
657
+ },
658
+ {
659
+ name: "replyToId",
660
+ internalType: "bytes32",
661
+ type: "bytes32",
662
+ indexed: false
663
+ },
664
+ {
665
+ name: "replyTo",
666
+ internalType: "struct IComments.CommentIdentifier",
667
+ type: "tuple",
668
+ components: [
669
+ { name: "commenter", internalType: "address", type: "address" },
670
+ { name: "contractAddress", internalType: "address", type: "address" },
671
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
672
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
673
+ ],
674
+ indexed: false
675
+ },
676
+ {
677
+ name: "sparksQuantity",
678
+ internalType: "uint64",
679
+ type: "uint64",
680
+ indexed: false
681
+ },
682
+ { name: "text", internalType: "string", type: "string", indexed: false },
683
+ {
684
+ name: "timestamp",
685
+ internalType: "uint256",
686
+ type: "uint256",
687
+ indexed: false
688
+ },
689
+ {
690
+ name: "referrer",
691
+ internalType: "address",
692
+ type: "address",
693
+ indexed: false
694
+ }
695
+ ],
696
+ name: "Commented"
697
+ },
698
+ {
699
+ type: "event",
700
+ anonymous: false,
701
+ inputs: [
702
+ {
703
+ name: "version",
704
+ internalType: "uint64",
705
+ type: "uint64",
706
+ indexed: false
707
+ }
708
+ ],
709
+ name: "Initialized"
710
+ },
711
+ {
712
+ type: "event",
713
+ anonymous: false,
714
+ inputs: [
715
+ { name: "role", internalType: "bytes32", type: "bytes32", indexed: true },
716
+ {
717
+ name: "previousAdminRole",
718
+ internalType: "bytes32",
719
+ type: "bytes32",
720
+ indexed: true
721
+ },
722
+ {
723
+ name: "newAdminRole",
724
+ internalType: "bytes32",
725
+ type: "bytes32",
726
+ indexed: true
727
+ }
728
+ ],
729
+ name: "RoleAdminChanged"
730
+ },
731
+ {
732
+ type: "event",
733
+ anonymous: false,
734
+ inputs: [
735
+ { name: "role", internalType: "bytes32", type: "bytes32", indexed: true },
736
+ {
737
+ name: "account",
738
+ internalType: "address",
739
+ type: "address",
740
+ indexed: true
741
+ },
742
+ {
743
+ name: "sender",
744
+ internalType: "address",
745
+ type: "address",
746
+ indexed: true
747
+ }
748
+ ],
749
+ name: "RoleGranted"
750
+ },
751
+ {
752
+ type: "event",
753
+ anonymous: false,
754
+ inputs: [
755
+ { name: "role", internalType: "bytes32", type: "bytes32", indexed: true },
756
+ {
757
+ name: "account",
758
+ internalType: "address",
759
+ type: "address",
760
+ indexed: true
761
+ },
762
+ {
763
+ name: "sender",
764
+ internalType: "address",
765
+ type: "address",
766
+ indexed: true
767
+ }
768
+ ],
769
+ name: "RoleRevoked"
770
+ },
771
+ {
772
+ type: "event",
773
+ anonymous: false,
774
+ inputs: [
775
+ {
776
+ name: "commentId",
777
+ internalType: "bytes32",
778
+ type: "bytes32",
779
+ indexed: true
780
+ },
781
+ {
782
+ name: "commentIdentifier",
783
+ internalType: "struct IComments.CommentIdentifier",
784
+ type: "tuple",
785
+ components: [
786
+ { name: "commenter", internalType: "address", type: "address" },
787
+ { name: "contractAddress", internalType: "address", type: "address" },
788
+ { name: "tokenId", internalType: "uint256", type: "uint256" },
789
+ { name: "nonce", internalType: "bytes32", type: "bytes32" }
790
+ ],
791
+ indexed: false
792
+ },
793
+ {
794
+ name: "sparksQuantity",
795
+ internalType: "uint64",
796
+ type: "uint64",
797
+ indexed: false
798
+ },
799
+ {
800
+ name: "sparker",
801
+ internalType: "address",
802
+ type: "address",
803
+ indexed: false
804
+ },
805
+ {
806
+ name: "timestamp",
807
+ internalType: "uint256",
808
+ type: "uint256",
809
+ indexed: false
810
+ }
811
+ ],
812
+ name: "SparkedComment"
813
+ },
814
+ {
815
+ type: "event",
816
+ anonymous: false,
817
+ inputs: [
818
+ {
819
+ name: "implementation",
820
+ internalType: "address",
821
+ type: "address",
822
+ indexed: true
823
+ }
824
+ ],
825
+ name: "Upgraded"
826
+ },
827
+ { type: "error", inputs: [], name: "AccessControlBadConfirmation" },
828
+ {
829
+ type: "error",
830
+ inputs: [
831
+ { name: "account", internalType: "address", type: "address" },
832
+ { name: "neededRole", internalType: "bytes32", type: "bytes32" }
833
+ ],
834
+ name: "AccessControlUnauthorizedAccount"
835
+ },
836
+ {
837
+ type: "error",
838
+ inputs: [{ name: "target", internalType: "address", type: "address" }],
839
+ name: "AddressEmptyCode"
840
+ },
841
+ { type: "error", inputs: [], name: "ArrayLengthMismatch" },
842
+ { type: "error", inputs: [], name: "CannotSparkOwnComment" },
843
+ {
844
+ type: "error",
845
+ inputs: [
846
+ { name: "commentAddress", internalType: "address", type: "address" },
847
+ { name: "commentTokenId", internalType: "uint256", type: "uint256" },
848
+ { name: "replyAddress", internalType: "address", type: "address" },
849
+ { name: "replyTokenId", internalType: "uint256", type: "uint256" }
850
+ ],
851
+ name: "CommentAddressOrTokenIdsDoNotMatch"
852
+ },
853
+ { type: "error", inputs: [], name: "CommentDoesntExist" },
854
+ {
855
+ type: "error",
856
+ inputs: [
857
+ { name: "expected", internalType: "address", type: "address" },
858
+ { name: "actual", internalType: "address", type: "address" }
859
+ ],
860
+ name: "CommenterMismatch"
861
+ },
862
+ {
863
+ type: "error",
864
+ inputs: [{ name: "commentId", internalType: "bytes32", type: "bytes32" }],
865
+ name: "DuplicateComment"
866
+ },
867
+ {
868
+ type: "error",
869
+ inputs: [
870
+ { name: "implementation", internalType: "address", type: "address" }
871
+ ],
872
+ name: "ERC1967InvalidImplementation"
873
+ },
874
+ { type: "error", inputs: [], name: "ERC1967NonPayable" },
875
+ {
876
+ type: "error",
877
+ inputs: [{ name: "deadline", internalType: "uint256", type: "uint256" }],
878
+ name: "ERC2612ExpiredSignature"
879
+ },
880
+ { type: "error", inputs: [], name: "EmptyComment" },
881
+ { type: "error", inputs: [], name: "FailedInnerCall" },
882
+ {
883
+ type: "error",
884
+ inputs: [
885
+ {
886
+ name: "wrongDestinationChainId",
887
+ internalType: "uint256",
888
+ type: "uint256"
889
+ }
890
+ ],
891
+ name: "IncorrectDestinationChain"
892
+ },
893
+ {
894
+ type: "error",
895
+ inputs: [
896
+ { name: "actual", internalType: "uint256", type: "uint256" },
897
+ { name: "expected", internalType: "uint256", type: "uint256" }
898
+ ],
899
+ name: "IncorrectETHAmountForSparks"
900
+ },
901
+ {
902
+ type: "error",
903
+ inputs: [
904
+ { name: "account", internalType: "address", type: "address" },
905
+ { name: "currentNonce", internalType: "uint256", type: "uint256" }
906
+ ],
907
+ name: "InvalidAccountNonce"
908
+ },
909
+ { type: "error", inputs: [], name: "InvalidInitialization" },
910
+ { type: "error", inputs: [], name: "InvalidSignature" },
911
+ { type: "error", inputs: [], name: "MustSendAtLeastOneSpark" },
912
+ { type: "error", inputs: [], name: "NotInitializing" },
913
+ { type: "error", inputs: [], name: "NotTokenHolderOrAdmin" },
914
+ { type: "error", inputs: [], name: "OnlySparksContract" },
915
+ { type: "error", inputs: [], name: "TransferFailed" },
916
+ { type: "error", inputs: [], name: "UUPSUnauthorizedCallContext" },
917
+ {
918
+ type: "error",
919
+ inputs: [{ name: "slot", internalType: "bytes32", type: "bytes32" }],
920
+ name: "UUPSUnsupportedProxiableUUID"
921
+ },
922
+ {
923
+ type: "error",
924
+ inputs: [
925
+ { name: "currentName", internalType: "string", type: "string" },
926
+ { name: "newName", internalType: "string", type: "string" }
927
+ ],
928
+ name: "UpgradeToMismatchedContractName"
929
+ }
930
+ ];
931
+ // Annotate the CommonJS export names for ESM import in node:
932
+ 0 && (module.exports = {
933
+ commentsImplABI
934
+ });
935
+ //# sourceMappingURL=index.cjs.map