@huuduynvc/v3-periphery 1.3.0

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 (88) hide show
  1. package/LICENSE +339 -0
  2. package/README.md +52 -0
  3. package/artifacts/contracts/NonfungiblePositionManager.sol/NonfungiblePositionManager.json +1230 -0
  4. package/artifacts/contracts/NonfungibleTokenPositionDescriptor.sol/NonfungibleTokenPositionDescriptor.json +161 -0
  5. package/artifacts/contracts/SwapRouter.sol/SwapRouter.json +574 -0
  6. package/artifacts/contracts/V3Migrator.sol/V3Migrator.json +360 -0
  7. package/artifacts/contracts/examples/PairFlash.sol/PairFlash.json +196 -0
  8. package/artifacts/contracts/interfaces/IERC20Metadata.sol/IERC20Metadata.json +233 -0
  9. package/artifacts/contracts/interfaces/IERC721Permit.sol/IERC721Permit.json +360 -0
  10. package/artifacts/contracts/interfaces/IMulticall.sol/IMulticall.json +30 -0
  11. package/artifacts/contracts/interfaces/INonfungiblePositionManager.sol/INonfungiblePositionManager.json +998 -0
  12. package/artifacts/contracts/interfaces/INonfungibleTokenPositionDescriptor.sol/INonfungibleTokenPositionDescriptor.json +35 -0
  13. package/artifacts/contracts/interfaces/IPeripheryImmutableState.sol/IPeripheryImmutableState.json +37 -0
  14. package/artifacts/contracts/interfaces/IPeripheryPayments.sol/IPeripheryPayments.json +59 -0
  15. package/artifacts/contracts/interfaces/IPeripheryPaymentsWithFee.sol/IPeripheryPaymentsWithFee.json +120 -0
  16. package/artifacts/contracts/interfaces/IPoolInitializer.sol/IPoolInitializer.json +45 -0
  17. package/artifacts/contracts/interfaces/IQuoter.sol/IQuoter.json +137 -0
  18. package/artifacts/contracts/interfaces/IQuoterV2.sol/IQuoterV2.json +211 -0
  19. package/artifacts/contracts/interfaces/ISelfPermit.sol/ISelfPermit.json +163 -0
  20. package/artifacts/contracts/interfaces/ISwapRouter.sol/ISwapRouter.json +248 -0
  21. package/artifacts/contracts/interfaces/ITickLens.sol/ITickLens.json +52 -0
  22. package/artifacts/contracts/interfaces/IV3Migrator.sol/IV3Migrator.json +296 -0
  23. package/artifacts/contracts/interfaces/external/IERC1271.sol/IERC1271.json +35 -0
  24. package/artifacts/contracts/interfaces/external/IERC20PermitAllowed.sol/IERC20PermitAllowed.json +59 -0
  25. package/artifacts/contracts/interfaces/external/IWETH9.sol/IWETH9.json +214 -0
  26. package/artifacts/contracts/lens/Quoter.sol/Quoter.json +202 -0
  27. package/artifacts/contracts/lens/QuoterV2.sol/QuoterV2.json +276 -0
  28. package/artifacts/contracts/lens/TickLens.sol/TickLens.json +52 -0
  29. package/artifacts/contracts/lens/UniswapInterfaceMulticall.sol/UniswapInterfaceMulticall.json +101 -0
  30. package/artifacts/contracts/libraries/BytesLib.sol/BytesLib.json +10 -0
  31. package/artifacts/contracts/libraries/CallbackValidation.sol/CallbackValidation.json +10 -0
  32. package/artifacts/contracts/libraries/ChainId.sol/ChainId.json +10 -0
  33. package/artifacts/contracts/libraries/HexStrings.sol/HexStrings.json +10 -0
  34. package/artifacts/contracts/libraries/LiquidityAmounts.sol/LiquidityAmounts.json +10 -0
  35. package/artifacts/contracts/libraries/NFTDescriptor.sol/NFTDescriptor.json +102 -0
  36. package/artifacts/contracts/libraries/NFTSVG.sol/NFTSVG.json +10 -0
  37. package/artifacts/contracts/libraries/OracleLibrary.sol/OracleLibrary.json +10 -0
  38. package/artifacts/contracts/libraries/Path.sol/Path.json +10 -0
  39. package/artifacts/contracts/libraries/PoolAddress.sol/PoolAddress.json +10 -0
  40. package/artifacts/contracts/libraries/PoolTicksCounter.sol/PoolTicksCounter.json +10 -0
  41. package/artifacts/contracts/libraries/PositionKey.sol/PositionKey.json +10 -0
  42. package/artifacts/contracts/libraries/PositionValue.sol/PositionValue.json +10 -0
  43. package/artifacts/contracts/libraries/TokenRatioSortOrder.sol/TokenRatioSortOrder.json +10 -0
  44. package/artifacts/contracts/libraries/TransferHelper.sol/TransferHelper.json +10 -0
  45. package/contracts/base/BlockTimestamp.sol +12 -0
  46. package/contracts/base/ERC721Permit.sol +86 -0
  47. package/contracts/base/LiquidityManagement.sol +90 -0
  48. package/contracts/base/Multicall.sol +28 -0
  49. package/contracts/base/PeripheryImmutableState.sol +18 -0
  50. package/contracts/base/PeripheryPayments.sol +70 -0
  51. package/contracts/base/PeripheryPaymentsWithFee.sol +55 -0
  52. package/contracts/base/PeripheryValidation.sol +11 -0
  53. package/contracts/base/PoolInitializer.sol +32 -0
  54. package/contracts/base/SelfPermit.sol +63 -0
  55. package/contracts/interfaces/IERC20Metadata.sol +18 -0
  56. package/contracts/interfaces/IERC721Permit.sol +32 -0
  57. package/contracts/interfaces/IMulticall.sol +13 -0
  58. package/contracts/interfaces/INonfungiblePositionManager.sol +180 -0
  59. package/contracts/interfaces/INonfungibleTokenPositionDescriptor.sol +17 -0
  60. package/contracts/interfaces/IPeripheryImmutableState.sol +12 -0
  61. package/contracts/interfaces/IPeripheryPayments.sol +28 -0
  62. package/contracts/interfaces/IPeripheryPaymentsWithFee.sol +29 -0
  63. package/contracts/interfaces/IPoolInitializer.sol +22 -0
  64. package/contracts/interfaces/IQuoter.sol +51 -0
  65. package/contracts/interfaces/IQuoterV2.sol +98 -0
  66. package/contracts/interfaces/ISelfPermit.sol +76 -0
  67. package/contracts/interfaces/ISwapRouter.sol +67 -0
  68. package/contracts/interfaces/ITickLens.sol +25 -0
  69. package/contracts/interfaces/IV3Migrator.sol +34 -0
  70. package/contracts/interfaces/external/IERC1271.sol +16 -0
  71. package/contracts/interfaces/external/IERC20PermitAllowed.sol +27 -0
  72. package/contracts/interfaces/external/IWETH9.sol +13 -0
  73. package/contracts/libraries/BytesLib.sol +101 -0
  74. package/contracts/libraries/CallbackValidation.sol +36 -0
  75. package/contracts/libraries/ChainId.sol +13 -0
  76. package/contracts/libraries/HexStrings.sol +29 -0
  77. package/contracts/libraries/LiquidityAmounts.sol +137 -0
  78. package/contracts/libraries/NFTDescriptor.sol +477 -0
  79. package/contracts/libraries/NFTSVG.sol +406 -0
  80. package/contracts/libraries/OracleLibrary.sol +161 -0
  81. package/contracts/libraries/Path.sol +69 -0
  82. package/contracts/libraries/PoolAddress.sol +48 -0
  83. package/contracts/libraries/PoolTicksCounter.sol +97 -0
  84. package/contracts/libraries/PositionKey.sol +13 -0
  85. package/contracts/libraries/PositionValue.sol +167 -0
  86. package/contracts/libraries/TokenRatioSortOrder.sol +12 -0
  87. package/contracts/libraries/TransferHelper.sol +60 -0
  88. package/package.json +68 -0
@@ -0,0 +1,296 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IV3Migrator",
4
+ "sourceName": "contracts/interfaces/IV3Migrator.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "token0",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "token1",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint24",
20
+ "name": "fee",
21
+ "type": "uint24"
22
+ },
23
+ {
24
+ "internalType": "uint160",
25
+ "name": "sqrtPriceX96",
26
+ "type": "uint160"
27
+ }
28
+ ],
29
+ "name": "createAndInitializePoolIfNecessary",
30
+ "outputs": [
31
+ {
32
+ "internalType": "address",
33
+ "name": "pool",
34
+ "type": "address"
35
+ }
36
+ ],
37
+ "stateMutability": "payable",
38
+ "type": "function"
39
+ },
40
+ {
41
+ "inputs": [
42
+ {
43
+ "components": [
44
+ {
45
+ "internalType": "address",
46
+ "name": "pair",
47
+ "type": "address"
48
+ },
49
+ {
50
+ "internalType": "uint256",
51
+ "name": "liquidityToMigrate",
52
+ "type": "uint256"
53
+ },
54
+ {
55
+ "internalType": "uint8",
56
+ "name": "percentageToMigrate",
57
+ "type": "uint8"
58
+ },
59
+ {
60
+ "internalType": "address",
61
+ "name": "token0",
62
+ "type": "address"
63
+ },
64
+ {
65
+ "internalType": "address",
66
+ "name": "token1",
67
+ "type": "address"
68
+ },
69
+ {
70
+ "internalType": "uint24",
71
+ "name": "fee",
72
+ "type": "uint24"
73
+ },
74
+ {
75
+ "internalType": "int24",
76
+ "name": "tickLower",
77
+ "type": "int24"
78
+ },
79
+ {
80
+ "internalType": "int24",
81
+ "name": "tickUpper",
82
+ "type": "int24"
83
+ },
84
+ {
85
+ "internalType": "uint256",
86
+ "name": "amount0Min",
87
+ "type": "uint256"
88
+ },
89
+ {
90
+ "internalType": "uint256",
91
+ "name": "amount1Min",
92
+ "type": "uint256"
93
+ },
94
+ {
95
+ "internalType": "address",
96
+ "name": "recipient",
97
+ "type": "address"
98
+ },
99
+ {
100
+ "internalType": "uint256",
101
+ "name": "deadline",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "internalType": "bool",
106
+ "name": "refundAsETH",
107
+ "type": "bool"
108
+ }
109
+ ],
110
+ "internalType": "struct IV3Migrator.MigrateParams",
111
+ "name": "params",
112
+ "type": "tuple"
113
+ }
114
+ ],
115
+ "name": "migrate",
116
+ "outputs": [],
117
+ "stateMutability": "nonpayable",
118
+ "type": "function"
119
+ },
120
+ {
121
+ "inputs": [
122
+ {
123
+ "internalType": "bytes[]",
124
+ "name": "data",
125
+ "type": "bytes[]"
126
+ }
127
+ ],
128
+ "name": "multicall",
129
+ "outputs": [
130
+ {
131
+ "internalType": "bytes[]",
132
+ "name": "results",
133
+ "type": "bytes[]"
134
+ }
135
+ ],
136
+ "stateMutability": "payable",
137
+ "type": "function"
138
+ },
139
+ {
140
+ "inputs": [
141
+ {
142
+ "internalType": "address",
143
+ "name": "token",
144
+ "type": "address"
145
+ },
146
+ {
147
+ "internalType": "uint256",
148
+ "name": "value",
149
+ "type": "uint256"
150
+ },
151
+ {
152
+ "internalType": "uint256",
153
+ "name": "deadline",
154
+ "type": "uint256"
155
+ },
156
+ {
157
+ "internalType": "uint8",
158
+ "name": "v",
159
+ "type": "uint8"
160
+ },
161
+ {
162
+ "internalType": "bytes32",
163
+ "name": "r",
164
+ "type": "bytes32"
165
+ },
166
+ {
167
+ "internalType": "bytes32",
168
+ "name": "s",
169
+ "type": "bytes32"
170
+ }
171
+ ],
172
+ "name": "selfPermit",
173
+ "outputs": [],
174
+ "stateMutability": "payable",
175
+ "type": "function"
176
+ },
177
+ {
178
+ "inputs": [
179
+ {
180
+ "internalType": "address",
181
+ "name": "token",
182
+ "type": "address"
183
+ },
184
+ {
185
+ "internalType": "uint256",
186
+ "name": "nonce",
187
+ "type": "uint256"
188
+ },
189
+ {
190
+ "internalType": "uint256",
191
+ "name": "expiry",
192
+ "type": "uint256"
193
+ },
194
+ {
195
+ "internalType": "uint8",
196
+ "name": "v",
197
+ "type": "uint8"
198
+ },
199
+ {
200
+ "internalType": "bytes32",
201
+ "name": "r",
202
+ "type": "bytes32"
203
+ },
204
+ {
205
+ "internalType": "bytes32",
206
+ "name": "s",
207
+ "type": "bytes32"
208
+ }
209
+ ],
210
+ "name": "selfPermitAllowed",
211
+ "outputs": [],
212
+ "stateMutability": "payable",
213
+ "type": "function"
214
+ },
215
+ {
216
+ "inputs": [
217
+ {
218
+ "internalType": "address",
219
+ "name": "token",
220
+ "type": "address"
221
+ },
222
+ {
223
+ "internalType": "uint256",
224
+ "name": "nonce",
225
+ "type": "uint256"
226
+ },
227
+ {
228
+ "internalType": "uint256",
229
+ "name": "expiry",
230
+ "type": "uint256"
231
+ },
232
+ {
233
+ "internalType": "uint8",
234
+ "name": "v",
235
+ "type": "uint8"
236
+ },
237
+ {
238
+ "internalType": "bytes32",
239
+ "name": "r",
240
+ "type": "bytes32"
241
+ },
242
+ {
243
+ "internalType": "bytes32",
244
+ "name": "s",
245
+ "type": "bytes32"
246
+ }
247
+ ],
248
+ "name": "selfPermitAllowedIfNecessary",
249
+ "outputs": [],
250
+ "stateMutability": "payable",
251
+ "type": "function"
252
+ },
253
+ {
254
+ "inputs": [
255
+ {
256
+ "internalType": "address",
257
+ "name": "token",
258
+ "type": "address"
259
+ },
260
+ {
261
+ "internalType": "uint256",
262
+ "name": "value",
263
+ "type": "uint256"
264
+ },
265
+ {
266
+ "internalType": "uint256",
267
+ "name": "deadline",
268
+ "type": "uint256"
269
+ },
270
+ {
271
+ "internalType": "uint8",
272
+ "name": "v",
273
+ "type": "uint8"
274
+ },
275
+ {
276
+ "internalType": "bytes32",
277
+ "name": "r",
278
+ "type": "bytes32"
279
+ },
280
+ {
281
+ "internalType": "bytes32",
282
+ "name": "s",
283
+ "type": "bytes32"
284
+ }
285
+ ],
286
+ "name": "selfPermitIfNecessary",
287
+ "outputs": [],
288
+ "stateMutability": "payable",
289
+ "type": "function"
290
+ }
291
+ ],
292
+ "bytecode": "0x",
293
+ "deployedBytecode": "0x",
294
+ "linkReferences": {},
295
+ "deployedLinkReferences": {}
296
+ }
@@ -0,0 +1,35 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IERC1271",
4
+ "sourceName": "contracts/interfaces/external/IERC1271.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "bytes32",
10
+ "name": "hash",
11
+ "type": "bytes32"
12
+ },
13
+ {
14
+ "internalType": "bytes",
15
+ "name": "signature",
16
+ "type": "bytes"
17
+ }
18
+ ],
19
+ "name": "isValidSignature",
20
+ "outputs": [
21
+ {
22
+ "internalType": "bytes4",
23
+ "name": "magicValue",
24
+ "type": "bytes4"
25
+ }
26
+ ],
27
+ "stateMutability": "view",
28
+ "type": "function"
29
+ }
30
+ ],
31
+ "bytecode": "0x",
32
+ "deployedBytecode": "0x",
33
+ "linkReferences": {},
34
+ "deployedLinkReferences": {}
35
+ }
@@ -0,0 +1,59 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IERC20PermitAllowed",
4
+ "sourceName": "contracts/interfaces/external/IERC20PermitAllowed.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "holder",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "spender",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "nonce",
21
+ "type": "uint256"
22
+ },
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "expiry",
26
+ "type": "uint256"
27
+ },
28
+ {
29
+ "internalType": "bool",
30
+ "name": "allowed",
31
+ "type": "bool"
32
+ },
33
+ {
34
+ "internalType": "uint8",
35
+ "name": "v",
36
+ "type": "uint8"
37
+ },
38
+ {
39
+ "internalType": "bytes32",
40
+ "name": "r",
41
+ "type": "bytes32"
42
+ },
43
+ {
44
+ "internalType": "bytes32",
45
+ "name": "s",
46
+ "type": "bytes32"
47
+ }
48
+ ],
49
+ "name": "permit",
50
+ "outputs": [],
51
+ "stateMutability": "nonpayable",
52
+ "type": "function"
53
+ }
54
+ ],
55
+ "bytecode": "0x",
56
+ "deployedBytecode": "0x",
57
+ "linkReferences": {},
58
+ "deployedLinkReferences": {}
59
+ }
@@ -0,0 +1,214 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "IWETH9",
4
+ "sourceName": "contracts/interfaces/external/IWETH9.sol",
5
+ "abi": [
6
+ {
7
+ "anonymous": false,
8
+ "inputs": [
9
+ {
10
+ "indexed": true,
11
+ "internalType": "address",
12
+ "name": "owner",
13
+ "type": "address"
14
+ },
15
+ {
16
+ "indexed": true,
17
+ "internalType": "address",
18
+ "name": "spender",
19
+ "type": "address"
20
+ },
21
+ {
22
+ "indexed": false,
23
+ "internalType": "uint256",
24
+ "name": "value",
25
+ "type": "uint256"
26
+ }
27
+ ],
28
+ "name": "Approval",
29
+ "type": "event"
30
+ },
31
+ {
32
+ "anonymous": false,
33
+ "inputs": [
34
+ {
35
+ "indexed": true,
36
+ "internalType": "address",
37
+ "name": "from",
38
+ "type": "address"
39
+ },
40
+ {
41
+ "indexed": true,
42
+ "internalType": "address",
43
+ "name": "to",
44
+ "type": "address"
45
+ },
46
+ {
47
+ "indexed": false,
48
+ "internalType": "uint256",
49
+ "name": "value",
50
+ "type": "uint256"
51
+ }
52
+ ],
53
+ "name": "Transfer",
54
+ "type": "event"
55
+ },
56
+ {
57
+ "inputs": [
58
+ {
59
+ "internalType": "address",
60
+ "name": "owner",
61
+ "type": "address"
62
+ },
63
+ {
64
+ "internalType": "address",
65
+ "name": "spender",
66
+ "type": "address"
67
+ }
68
+ ],
69
+ "name": "allowance",
70
+ "outputs": [
71
+ {
72
+ "internalType": "uint256",
73
+ "name": "",
74
+ "type": "uint256"
75
+ }
76
+ ],
77
+ "stateMutability": "view",
78
+ "type": "function"
79
+ },
80
+ {
81
+ "inputs": [
82
+ {
83
+ "internalType": "address",
84
+ "name": "spender",
85
+ "type": "address"
86
+ },
87
+ {
88
+ "internalType": "uint256",
89
+ "name": "amount",
90
+ "type": "uint256"
91
+ }
92
+ ],
93
+ "name": "approve",
94
+ "outputs": [
95
+ {
96
+ "internalType": "bool",
97
+ "name": "",
98
+ "type": "bool"
99
+ }
100
+ ],
101
+ "stateMutability": "nonpayable",
102
+ "type": "function"
103
+ },
104
+ {
105
+ "inputs": [
106
+ {
107
+ "internalType": "address",
108
+ "name": "account",
109
+ "type": "address"
110
+ }
111
+ ],
112
+ "name": "balanceOf",
113
+ "outputs": [
114
+ {
115
+ "internalType": "uint256",
116
+ "name": "",
117
+ "type": "uint256"
118
+ }
119
+ ],
120
+ "stateMutability": "view",
121
+ "type": "function"
122
+ },
123
+ {
124
+ "inputs": [],
125
+ "name": "deposit",
126
+ "outputs": [],
127
+ "stateMutability": "payable",
128
+ "type": "function"
129
+ },
130
+ {
131
+ "inputs": [],
132
+ "name": "totalSupply",
133
+ "outputs": [
134
+ {
135
+ "internalType": "uint256",
136
+ "name": "",
137
+ "type": "uint256"
138
+ }
139
+ ],
140
+ "stateMutability": "view",
141
+ "type": "function"
142
+ },
143
+ {
144
+ "inputs": [
145
+ {
146
+ "internalType": "address",
147
+ "name": "recipient",
148
+ "type": "address"
149
+ },
150
+ {
151
+ "internalType": "uint256",
152
+ "name": "amount",
153
+ "type": "uint256"
154
+ }
155
+ ],
156
+ "name": "transfer",
157
+ "outputs": [
158
+ {
159
+ "internalType": "bool",
160
+ "name": "",
161
+ "type": "bool"
162
+ }
163
+ ],
164
+ "stateMutability": "nonpayable",
165
+ "type": "function"
166
+ },
167
+ {
168
+ "inputs": [
169
+ {
170
+ "internalType": "address",
171
+ "name": "sender",
172
+ "type": "address"
173
+ },
174
+ {
175
+ "internalType": "address",
176
+ "name": "recipient",
177
+ "type": "address"
178
+ },
179
+ {
180
+ "internalType": "uint256",
181
+ "name": "amount",
182
+ "type": "uint256"
183
+ }
184
+ ],
185
+ "name": "transferFrom",
186
+ "outputs": [
187
+ {
188
+ "internalType": "bool",
189
+ "name": "",
190
+ "type": "bool"
191
+ }
192
+ ],
193
+ "stateMutability": "nonpayable",
194
+ "type": "function"
195
+ },
196
+ {
197
+ "inputs": [
198
+ {
199
+ "internalType": "uint256",
200
+ "name": "",
201
+ "type": "uint256"
202
+ }
203
+ ],
204
+ "name": "withdraw",
205
+ "outputs": [],
206
+ "stateMutability": "nonpayable",
207
+ "type": "function"
208
+ }
209
+ ],
210
+ "bytecode": "0x",
211
+ "deployedBytecode": "0x",
212
+ "linkReferences": {},
213
+ "deployedLinkReferences": {}
214
+ }