@zoralabs/coins 2.4.0 → 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 (120) hide show
  1. package/.turbo/turbo-build$colon$js.log +116 -124
  2. package/CHANGELOG.md +6 -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/IZoraLimitOrderBookCoinsInterface.json +67 -0
  18. package/abis/IZoraV4CoinHook.json +10 -0
  19. package/abis/ProxyShim.json +15 -16
  20. package/abis/SafeCast.json +51 -0
  21. package/abis/{AddressConstants.json → SafeCast160.json} +1 -1
  22. package/abis/Strings.json +10 -0
  23. package/abis/UUPSUpgradeable.json +1 -1
  24. package/abis/V3ToV4SwapLib.json +28 -0
  25. package/abis/ZoraFactory.json +1 -1
  26. package/abis/ZoraFactoryImpl.json +22 -6
  27. package/abis/ZoraV4CoinHook.json +20 -48
  28. package/dist/index.cjs +950 -43
  29. package/dist/index.cjs.map +1 -1
  30. package/dist/index.js +948 -41
  31. package/dist/index.js.map +1 -1
  32. package/dist/wagmiGenerated.d.ts +1459 -76
  33. package/dist/wagmiGenerated.d.ts.map +1 -1
  34. package/package/wagmiGenerated.ts +951 -44
  35. package/package.json +9 -9
  36. package/remappings.txt +2 -1
  37. package/src/ZoraFactoryImpl.sol +8 -0
  38. package/src/deployment/ForkedCoinsAddresses.sol +54 -0
  39. package/src/hooks/ZoraV4CoinHook.sol +74 -20
  40. package/src/hooks/deployment/BuySupplyWithV4SwapHook.sol +20 -142
  41. package/src/interfaces/ISupportsLimitOrderFill.sol +11 -0
  42. package/src/interfaces/IZoraLimitOrderBookCoinsInterface.sol +21 -0
  43. package/src/interfaces/IZoraV4CoinHook.sol +6 -0
  44. package/src/libs/CoinConstants.sol +6 -0
  45. package/src/libs/CoinDopplerMultiCurve.sol +1 -1
  46. package/src/libs/CoinRewardsV4.sol +0 -1
  47. package/src/libs/HooksDeployment.sol +20 -8
  48. package/src/libs/UniV4SwapHelper.sol +35 -0
  49. package/src/libs/V3ToV4SwapLib.sol +261 -0
  50. package/src/version/ContractVersionBase.sol +1 -1
  51. package/test/BuySupplyWithV4SwapHook.t.sol +4 -3
  52. package/test/Coin.t.sol +7 -1
  53. package/test/CoinUniV4.t.sol +2 -1
  54. package/test/ContentCoinRewards.t.sol +5 -1
  55. package/test/CreatorCoin.t.sol +3 -1
  56. package/test/CreatorCoinRewards.t.sol +3 -1
  57. package/test/Factory.t.sol +20 -7
  58. package/test/HooksDeployment.t.sol +16 -3
  59. package/test/LiquidityMigration.t.sol +52 -44
  60. package/test/MultiOwnable.t.sol +2 -1
  61. package/test/Upgrades.t.sol +110 -81
  62. package/test/V4Liquidity.t.sol +1 -1
  63. package/test/mocks/MockSwapRouter.sol +33 -0
  64. package/test/mocks/MockZoraLimitOrderBook.sol +14 -0
  65. package/test/utils/BaseTest.sol +14 -448
  66. package/test/utils/FeeEstimatorHook.sol +6 -2
  67. package/test/utils/V4TestSetup.sol +595 -0
  68. package/wagmi.config.ts +1 -1
  69. package/abis/BaseTest.json +0 -718
  70. package/abis/DeterministicDeployerAndCaller.json +0 -315
  71. package/abis/DeterministicUUPSProxyDeployer.json +0 -167
  72. package/abis/EIP712.json +0 -67
  73. package/abis/ERC20.json +0 -310
  74. package/abis/FeeEstimatorHook.json +0 -1938
  75. package/abis/IERC721.json +0 -287
  76. package/abis/IERC721Enumerable.json +0 -343
  77. package/abis/IERC721Metadata.json +0 -332
  78. package/abis/IERC721TokenReceiver.json +0 -36
  79. package/abis/IImmutableCreate2Factory.json +0 -93
  80. package/abis/IMulticall3.json +0 -440
  81. package/abis/ISafe.json +0 -15
  82. package/abis/ISymbol.json +0 -15
  83. package/abis/IUniswapV4Router04.json +0 -484
  84. package/abis/IUniversalRouter.json +0 -61
  85. package/abis/IV4Quoter.json +0 -310
  86. package/abis/ImmutableCreate2FactoryUtils.json +0 -15
  87. package/abis/LibString.json +0 -7
  88. package/abis/Math.json +0 -7
  89. package/abis/MockAirlock.json +0 -39
  90. package/abis/MockERC721.json +0 -350
  91. package/abis/ProtocolRewards.json +0 -494
  92. package/abis/ShortStrings.json +0 -18
  93. package/abis/SimpleERC20.json +0 -326
  94. package/abis/StdAssertions.json +0 -379
  95. package/abis/StdInvariant.json +0 -180
  96. package/abis/Test.json +0 -570
  97. package/abis/VmContractHelper235.json +0 -233
  98. package/abis/VmContractHelper242.json +0 -233
  99. package/abis/stdError.json +0 -119
  100. package/abis/stdStorageSafe.json +0 -52
  101. package/addresses/8453.json +0 -13
  102. package/addresses/84532.json +0 -10
  103. package/deterministicConfig/deployerAndCaller.json +0 -5
  104. package/deterministicConfig/zoraFactory.json +0 -8
  105. package/script/Deploy.s.sol +0 -23
  106. package/script/DeployAutoSwapper.s.sol +0 -30
  107. package/script/DeployDevFactory.s.sol +0 -21
  108. package/script/DeployPostDeploymentHooks.s.sol +0 -20
  109. package/script/DeployTrustedMsgSenderLookup.s.sol +0 -20
  110. package/script/DeployUpgradeGate.s.sol +0 -21
  111. package/script/GenerateDeterministicParams.s.sol +0 -43
  112. package/script/PrintRegisterUpgradePath.s.sol +0 -28
  113. package/script/PrintUpgradeCommand.s.sol +0 -13
  114. package/script/TestBackingCoinSwap.s.sol +0 -144
  115. package/script/TestV4Swap.s.sol +0 -133
  116. package/script/UpgradeCoinImpl.sol +0 -23
  117. package/script/UpgradeFactoryImpl.s.sol +0 -28
  118. package/script/UpgradeHooks.s.sol +0 -23
  119. package/src/deployment/CoinsDeployerBase.sol +0 -297
  120. /package/{test → src}/utils/ProxyShim.sol +0 -0
@@ -1,24 +1,17 @@
1
1
  [
2
- {
3
- "type": "function",
4
- "name": "run",
5
- "inputs": [],
6
- "outputs": [],
7
- "stateMutability": "nonpayable"
8
- },
9
2
  {
10
3
  "type": "error",
11
- "name": "Create2EmptyBytecode",
4
+ "name": "FailedCall",
12
5
  "inputs": []
13
6
  },
14
7
  {
15
8
  "type": "error",
16
- "name": "Create2FailedDeployment",
9
+ "name": "FailedDeployment",
17
10
  "inputs": []
18
11
  },
19
12
  {
20
13
  "type": "error",
21
- "name": "Create2InsufficientBalance",
14
+ "name": "InsufficientBalance",
22
15
  "inputs": [
23
16
  {
24
17
  "name": "balance",
@@ -31,5 +24,16 @@
31
24
  "internalType": "uint256"
32
25
  }
33
26
  ]
27
+ },
28
+ {
29
+ "type": "error",
30
+ "name": "MissingPrecompile",
31
+ "inputs": [
32
+ {
33
+ "name": "",
34
+ "type": "address",
35
+ "internalType": "address"
36
+ }
37
+ ]
34
38
  }
35
39
  ]
@@ -1,17 +1,4 @@
1
1
  [
2
- {
3
- "type": "function",
4
- "name": "DOMAIN_SEPARATOR",
5
- "inputs": [],
6
- "outputs": [
7
- {
8
- "name": "",
9
- "type": "bytes32",
10
- "internalType": "bytes32"
11
- }
12
- ],
13
- "stateMutability": "view"
14
- },
15
2
  {
16
3
  "type": "function",
17
4
  "name": "allowance",
@@ -46,7 +33,7 @@
46
33
  "internalType": "address"
47
34
  },
48
35
  {
49
- "name": "amount",
36
+ "name": "value",
50
37
  "type": "uint256",
51
38
  "internalType": "uint256"
52
39
  }
@@ -62,82 +49,99 @@
62
49
  },
63
50
  {
64
51
  "type": "function",
65
- "name": "balanceOf",
52
+ "name": "approveAndCall",
66
53
  "inputs": [
67
54
  {
68
- "name": "owner",
55
+ "name": "spender",
69
56
  "type": "address",
70
57
  "internalType": "address"
71
- }
72
- ],
73
- "outputs": [
58
+ },
74
59
  {
75
- "name": "",
60
+ "name": "value",
76
61
  "type": "uint256",
77
62
  "internalType": "uint256"
78
63
  }
79
64
  ],
80
- "stateMutability": "view"
81
- },
82
- {
83
- "type": "function",
84
- "name": "decimals",
85
- "inputs": [],
86
65
  "outputs": [
87
66
  {
88
67
  "name": "",
89
- "type": "uint8",
90
- "internalType": "uint8"
68
+ "type": "bool",
69
+ "internalType": "bool"
91
70
  }
92
71
  ],
93
- "stateMutability": "view"
72
+ "stateMutability": "nonpayable"
94
73
  },
95
74
  {
96
75
  "type": "function",
97
- "name": "initialize",
76
+ "name": "approveAndCall",
98
77
  "inputs": [
99
78
  {
100
- "name": "name_",
101
- "type": "string",
102
- "internalType": "string"
79
+ "name": "spender",
80
+ "type": "address",
81
+ "internalType": "address"
103
82
  },
104
83
  {
105
- "name": "symbol_",
106
- "type": "string",
107
- "internalType": "string"
84
+ "name": "value",
85
+ "type": "uint256",
86
+ "internalType": "uint256"
108
87
  },
109
88
  {
110
- "name": "decimals_",
111
- "type": "uint8",
112
- "internalType": "uint8"
89
+ "name": "data",
90
+ "type": "bytes",
91
+ "internalType": "bytes"
92
+ }
93
+ ],
94
+ "outputs": [
95
+ {
96
+ "name": "",
97
+ "type": "bool",
98
+ "internalType": "bool"
113
99
  }
114
100
  ],
115
- "outputs": [],
116
101
  "stateMutability": "nonpayable"
117
102
  },
118
103
  {
119
104
  "type": "function",
120
- "name": "name",
121
- "inputs": [],
105
+ "name": "balanceOf",
106
+ "inputs": [
107
+ {
108
+ "name": "account",
109
+ "type": "address",
110
+ "internalType": "address"
111
+ }
112
+ ],
122
113
  "outputs": [
123
114
  {
124
115
  "name": "",
125
- "type": "string",
126
- "internalType": "string"
116
+ "type": "uint256",
117
+ "internalType": "uint256"
127
118
  }
128
119
  ],
129
120
  "stateMutability": "view"
130
121
  },
131
122
  {
132
123
  "type": "function",
133
- "name": "nonces",
124
+ "name": "supportsInterface",
134
125
  "inputs": [
126
+ {
127
+ "name": "interfaceId",
128
+ "type": "bytes4",
129
+ "internalType": "bytes4"
130
+ }
131
+ ],
132
+ "outputs": [
135
133
  {
136
134
  "name": "",
137
- "type": "address",
138
- "internalType": "address"
135
+ "type": "bool",
136
+ "internalType": "bool"
139
137
  }
140
138
  ],
139
+ "stateMutability": "view"
140
+ },
141
+ {
142
+ "type": "function",
143
+ "name": "totalSupply",
144
+ "inputs": [],
141
145
  "outputs": [
142
146
  {
143
147
  "name": "",
@@ -149,15 +153,34 @@
149
153
  },
150
154
  {
151
155
  "type": "function",
152
- "name": "permit",
156
+ "name": "transfer",
153
157
  "inputs": [
154
158
  {
155
- "name": "owner",
159
+ "name": "to",
156
160
  "type": "address",
157
161
  "internalType": "address"
158
162
  },
159
163
  {
160
- "name": "spender",
164
+ "name": "value",
165
+ "type": "uint256",
166
+ "internalType": "uint256"
167
+ }
168
+ ],
169
+ "outputs": [
170
+ {
171
+ "name": "",
172
+ "type": "bool",
173
+ "internalType": "bool"
174
+ }
175
+ ],
176
+ "stateMutability": "nonpayable"
177
+ },
178
+ {
179
+ "type": "function",
180
+ "name": "transferAndCall",
181
+ "inputs": [
182
+ {
183
+ "name": "to",
161
184
  "type": "address",
162
185
  "internalType": "address"
163
186
  },
@@ -165,70 +188,98 @@
165
188
  "name": "value",
166
189
  "type": "uint256",
167
190
  "internalType": "uint256"
168
- },
191
+ }
192
+ ],
193
+ "outputs": [
169
194
  {
170
- "name": "deadline",
171
- "type": "uint256",
172
- "internalType": "uint256"
173
- },
195
+ "name": "",
196
+ "type": "bool",
197
+ "internalType": "bool"
198
+ }
199
+ ],
200
+ "stateMutability": "nonpayable"
201
+ },
202
+ {
203
+ "type": "function",
204
+ "name": "transferAndCall",
205
+ "inputs": [
174
206
  {
175
- "name": "v",
176
- "type": "uint8",
177
- "internalType": "uint8"
207
+ "name": "to",
208
+ "type": "address",
209
+ "internalType": "address"
178
210
  },
179
211
  {
180
- "name": "r",
181
- "type": "bytes32",
182
- "internalType": "bytes32"
212
+ "name": "value",
213
+ "type": "uint256",
214
+ "internalType": "uint256"
183
215
  },
184
216
  {
185
- "name": "s",
186
- "type": "bytes32",
187
- "internalType": "bytes32"
217
+ "name": "data",
218
+ "type": "bytes",
219
+ "internalType": "bytes"
188
220
  }
189
221
  ],
190
- "outputs": [],
191
- "stateMutability": "nonpayable"
192
- },
193
- {
194
- "type": "function",
195
- "name": "symbol",
196
- "inputs": [],
197
222
  "outputs": [
198
223
  {
199
224
  "name": "",
200
- "type": "string",
201
- "internalType": "string"
225
+ "type": "bool",
226
+ "internalType": "bool"
202
227
  }
203
228
  ],
204
- "stateMutability": "view"
229
+ "stateMutability": "nonpayable"
205
230
  },
206
231
  {
207
232
  "type": "function",
208
- "name": "totalSupply",
209
- "inputs": [],
210
- "outputs": [
233
+ "name": "transferFrom",
234
+ "inputs": [
211
235
  {
212
- "name": "",
236
+ "name": "from",
237
+ "type": "address",
238
+ "internalType": "address"
239
+ },
240
+ {
241
+ "name": "to",
242
+ "type": "address",
243
+ "internalType": "address"
244
+ },
245
+ {
246
+ "name": "value",
213
247
  "type": "uint256",
214
248
  "internalType": "uint256"
215
249
  }
216
250
  ],
217
- "stateMutability": "view"
251
+ "outputs": [
252
+ {
253
+ "name": "",
254
+ "type": "bool",
255
+ "internalType": "bool"
256
+ }
257
+ ],
258
+ "stateMutability": "nonpayable"
218
259
  },
219
260
  {
220
261
  "type": "function",
221
- "name": "transfer",
262
+ "name": "transferFromAndCall",
222
263
  "inputs": [
264
+ {
265
+ "name": "from",
266
+ "type": "address",
267
+ "internalType": "address"
268
+ },
223
269
  {
224
270
  "name": "to",
225
271
  "type": "address",
226
272
  "internalType": "address"
227
273
  },
228
274
  {
229
- "name": "amount",
275
+ "name": "value",
230
276
  "type": "uint256",
231
277
  "internalType": "uint256"
278
+ },
279
+ {
280
+ "name": "data",
281
+ "type": "bytes",
282
+ "internalType": "bytes"
232
283
  }
233
284
  ],
234
285
  "outputs": [
@@ -242,7 +293,7 @@
242
293
  },
243
294
  {
244
295
  "type": "function",
245
- "name": "transferFrom",
296
+ "name": "transferFromAndCall",
246
297
  "inputs": [
247
298
  {
248
299
  "name": "from",
@@ -255,7 +306,7 @@
255
306
  "internalType": "address"
256
307
  },
257
308
  {
258
- "name": "amount",
309
+ "name": "value",
259
310
  "type": "uint256",
260
311
  "internalType": "uint256"
261
312
  }
@@ -319,25 +370,4 @@
319
370
  ],
320
371
  "anonymous": false
321
372
  }
322
- ]error",
323
- "name": "ERC20InvalidSender",
324
- "inputs": [
325
- {
326
- "name": "sender",
327
- "type": "address",
328
- "internalType": "address"
329
- }
330
- ]
331
- },
332
- {
333
- "type": "error",
334
- "name": "ERC20InvalidSpender",
335
- "inputs": [
336
- {
337
- "name": "spender",
338
- "type": "address",
339
- "internalType": "address"
340
- }
341
- ]
342
- }
343
373
  ]
@@ -0,0 +1,47 @@
1
+ [
2
+ {
3
+ "type": "event",
4
+ "name": "AdminChanged",
5
+ "inputs": [
6
+ {
7
+ "name": "previousAdmin",
8
+ "type": "address",
9
+ "indexed": false,
10
+ "internalType": "address"
11
+ },
12
+ {
13
+ "name": "newAdmin",
14
+ "type": "address",
15
+ "indexed": false,
16
+ "internalType": "address"
17
+ }
18
+ ],
19
+ "anonymous": false
20
+ },
21
+ {
22
+ "type": "event",
23
+ "name": "BeaconUpgraded",
24
+ "inputs": [
25
+ {
26
+ "name": "beacon",
27
+ "type": "address",
28
+ "indexed": true,
29
+ "internalType": "address"
30
+ }
31
+ ],
32
+ "anonymous": false
33
+ },
34
+ {
35
+ "type": "event",
36
+ "name": "Upgraded",
37
+ "inputs": [
38
+ {
39
+ "name": "implementation",
40
+ "type": "address",
41
+ "indexed": true,
42
+ "internalType": "address"
43
+ }
44
+ ],
45
+ "anonymous": false
46
+ }
47
+ ]
package/abis/IERC20.json CHANGED
@@ -182,40 +182,4 @@
182
182
  ],
183
183
  "anonymous": false
184
184
  }
185
- ]pe": "address"
186
- },
187
- {
188
- "name": "value",
189
- "type": "uint256",
190
- "indexed": false,
191
- "internalType": "uint256"
192
- }
193
- ],
194
- "anonymous": false
195
- },
196
- {
197
- "type": "event",
198
- "name": "Transfer",
199
- "inputs": [
200
- {
201
- "name": "from",
202
- "type": "address",
203
- "indexed": true,
204
- "internalType": "address"
205
- },
206
- {
207
- "name": "to",
208
- "type": "address",
209
- "indexed": true,
210
- "internalType": "address"
211
- },
212
- {
213
- "name": "value",
214
- "type": "uint256",
215
- "indexed": false,
216
- "internalType": "uint256"
217
- }
218
- ],
219
- "anonymous": false
220
- }
221
185
  ]