@luxfi/exchange 0.2.0 → 1.0.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 (53) hide show
  1. package/dist/contracts/abis/amm-v2-factory.d.ts +148 -0
  2. package/dist/contracts/abis/amm-v2-factory.d.ts.map +1 -0
  3. package/dist/contracts/abis/amm-v2-factory.js +52 -0
  4. package/dist/contracts/abis/amm-v2-pair.d.ts +236 -0
  5. package/dist/contracts/abis/amm-v2-pair.d.ts.map +1 -0
  6. package/dist/contracts/abis/amm-v2-pair.js +88 -0
  7. package/dist/contracts/abis/amm-v2-router.d.ts +496 -0
  8. package/dist/contracts/abis/amm-v2-router.d.ts.map +1 -0
  9. package/dist/contracts/abis/amm-v2-router.js +149 -0
  10. package/dist/contracts/abis/amm-v3-factory.d.ts +152 -0
  11. package/dist/contracts/abis/amm-v3-factory.d.ts.map +1 -0
  12. package/dist/contracts/abis/amm-v3-factory.js +48 -0
  13. package/dist/contracts/abis/amm-v3-pool.d.ts +254 -0
  14. package/dist/contracts/abis/amm-v3-pool.d.ts.map +1 -0
  15. package/dist/contracts/abis/amm-v3-pool.js +84 -0
  16. package/dist/contracts/abis/index.d.ts +8 -5
  17. package/dist/contracts/abis/index.d.ts.map +1 -1
  18. package/dist/contracts/abis/index.js +13 -6
  19. package/dist/contracts/abis/lux-amm-v2-factory.d.ts +148 -0
  20. package/dist/contracts/abis/lux-amm-v2-factory.d.ts.map +1 -0
  21. package/dist/contracts/abis/lux-amm-v2-factory.js +52 -0
  22. package/dist/contracts/abis/lux-amm-v2-pair.d.ts +236 -0
  23. package/dist/contracts/abis/lux-amm-v2-pair.d.ts.map +1 -0
  24. package/dist/contracts/abis/lux-amm-v2-pair.js +88 -0
  25. package/dist/contracts/abis/lux-amm-v2-router.d.ts +496 -0
  26. package/dist/contracts/abis/lux-amm-v2-router.d.ts.map +1 -0
  27. package/dist/contracts/abis/lux-amm-v2-router.js +149 -0
  28. package/dist/contracts/abis/lux-amm-v3-factory.d.ts +152 -0
  29. package/dist/contracts/abis/lux-amm-v3-factory.d.ts.map +1 -0
  30. package/dist/contracts/abis/lux-amm-v3-factory.js +48 -0
  31. package/dist/contracts/abis/lux-amm-v3-pool.d.ts +254 -0
  32. package/dist/contracts/abis/lux-amm-v3-pool.d.ts.map +1 -0
  33. package/dist/contracts/abis/lux-amm-v3-pool.js +84 -0
  34. package/dist/contracts/addresses.d.ts +18 -48
  35. package/dist/contracts/addresses.d.ts.map +1 -1
  36. package/dist/contracts/addresses.js +30 -22
  37. package/dist/tokens/index.d.ts +25 -0
  38. package/dist/tokens/index.d.ts.map +1 -1
  39. package/dist/tokens/index.js +90 -5
  40. package/package.json +2 -2
  41. package/src/contracts/abis/{uniswap-v2-factory.ts → amm-v2-factory.ts} +6 -2
  42. package/src/contracts/abis/{uniswap-v2-pair.ts → amm-v2-pair.ts} +6 -2
  43. package/src/contracts/abis/{uniswap-v2-router.ts → amm-v2-router.ts} +6 -2
  44. package/src/contracts/abis/{uniswap-v3-factory.ts → amm-v3-factory.ts} +6 -2
  45. package/src/contracts/abis/{uniswap-v3-pool.ts → amm-v3-pool.ts} +6 -2
  46. package/src/contracts/abis/index.ts +16 -6
  47. package/src/contracts/abis/pool-manager.ts +1 -1
  48. package/src/contracts/addresses.ts +53 -52
  49. package/src/hooks/use-pools.ts +8 -6
  50. package/src/hooks/use-positions.ts +3 -3
  51. package/src/hooks/use-swap-quote.ts +1 -1
  52. package/src/hooks/use-swap.ts +1 -1
  53. package/src/tokens/index.ts +148 -32
@@ -38,7 +38,7 @@ export const NATIVE_ZOO: Token = {
38
38
  * Wrapped native tokens
39
39
  */
40
40
  export const WLUX_MAINNET: Token = {
41
- address: '0x55750d6CA62a041c06a8E28626b10Be6c688f471',
41
+ address: '0x4888e4a2ee0f03051c72d2bd3acf755ed3498b3e',
42
42
  chainId: 96369,
43
43
  decimals: 18,
44
44
  symbol: 'WLUX',
@@ -46,7 +46,7 @@ export const WLUX_MAINNET: Token = {
46
46
  }
47
47
 
48
48
  export const WLUX_TESTNET: Token = {
49
- address: '0x732740c5c895C9FCF619930ed4293fc858eb44c7',
49
+ address: '0xDe5310d0Eccc04C8987cB66Ff6b89Ee793442C91',
50
50
  chainId: 96368,
51
51
  decimals: 18,
52
52
  symbol: 'WLUX',
@@ -54,7 +54,8 @@ export const WLUX_TESTNET: Token = {
54
54
  }
55
55
 
56
56
  export const WLUX_DEV: Token = {
57
- address: '0x610178dA211FEF7D417bC0e6FeD39F05609AD788',
57
+ // Deterministic CREATE address from DeployFullStack.s.sol (nonce 0)
58
+ address: '0x5FbDB2315678afecb367f032d93F642f64180aa3',
58
59
  chainId: 1337,
59
60
  decimals: 18,
60
61
  symbol: 'WLUX',
@@ -65,18 +66,19 @@ export const WLUX_DEV: Token = {
65
66
  * Stablecoins
66
67
  */
67
68
  export const LUSD: Token = {
68
- address: '0x0000000000000000000000000000000000000000', // TODO: Deploy
69
+ address: '0x848Cff46eb323f323b6Bbe1Df274E40793d7f2c2',
69
70
  chainId: 96369,
70
71
  decimals: 18,
71
72
  symbol: 'LUSD',
72
- name: 'Lux Dollar',
73
+ name: 'Lux USD',
73
74
  }
74
75
 
75
76
  /**
76
77
  * Bridge tokens (L-prefix for assets bridged to Lux)
78
+ * These are the canonical mainnet addresses from @luxfi/config
77
79
  */
78
80
  export const LETH: Token = {
79
- address: '0xAA3AE951A7925F25aE8Ad65b052a76Bd8f052598',
81
+ address: '0x60E0a8167FC13dE89348978860466C9ceC24B9ba',
80
82
  chainId: 96369,
81
83
  decimals: 18,
82
84
  symbol: 'LETH',
@@ -84,13 +86,91 @@ export const LETH: Token = {
84
86
  }
85
87
 
86
88
  export const LBTC: Token = {
87
- address: '0x526903Ee6118de6737D11b37f82fC7f69B13685D',
89
+ address: '0x1E48D32a4F5e9f08DB9aE4959163300FaF8A6C8e',
90
+ chainId: 96369,
91
+ decimals: 8,
92
+ symbol: 'LBTC',
93
+ name: 'Lux BTC',
94
+ }
95
+
96
+ export const LSOL: Token = {
97
+ address: '0x26B40f650156C7EbF9e087Dd0dca181Fe87625B7',
98
+ chainId: 96369,
99
+ decimals: 18,
100
+ symbol: 'LSOL',
101
+ name: 'Lux SOL',
102
+ }
103
+
104
+ export const LTON: Token = {
105
+ address: '0x3141b94b89691009b950c96e97Bff48e0C543E3C',
88
106
  chainId: 96369,
107
+ decimals: 9,
108
+ symbol: 'LTON',
109
+ name: 'Lux TON',
110
+ }
111
+
112
+ export const LAVAX: Token = {
113
+ address: '0x0e4bD0DD67c15dECfBBBdbbE07FC9d51D737693D',
114
+ chainId: 96369,
115
+ decimals: 18,
116
+ symbol: 'LAVAX',
117
+ name: 'Lux AVAX',
118
+ }
119
+
120
+ /**
121
+ * Testnet bridge tokens
122
+ */
123
+ export const LETH_TESTNET: Token = {
124
+ address: '0xA695a8A66fbe3E32d15a531db04185313595771A',
125
+ chainId: 96368,
126
+ decimals: 18,
127
+ symbol: 'LETH',
128
+ name: 'Lux ETH',
129
+ }
130
+
131
+ export const LBTC_TESTNET: Token = {
132
+ address: '0x5a88986958ea76Dd043f834542724F081cA1443B',
133
+ chainId: 96368,
134
+ decimals: 8,
135
+ symbol: 'LBTC',
136
+ name: 'Lux BTC',
137
+ }
138
+
139
+ export const LUSD_TESTNET: Token = {
140
+ address: '0x8a3fad1c7FB94461621351aa6A983B6f814F039c',
141
+ chainId: 96368,
142
+ decimals: 6,
143
+ symbol: 'LUSDC',
144
+ name: 'Lux USDC',
145
+ }
146
+
147
+ /**
148
+ * Dev mode bridge tokens (deterministic CREATE addresses)
149
+ */
150
+ export const LETH_DEV: Token = {
151
+ address: '0xe7f1725E7734CE288F8367e1Bb143E90bb3F0512',
152
+ chainId: 1337,
153
+ decimals: 18,
154
+ symbol: 'LETH',
155
+ name: 'Lux ETH',
156
+ }
157
+
158
+ export const LBTC_DEV: Token = {
159
+ address: '0x9fE46736679d2D9a65F0992F2272dE9f3c7fa6e0',
160
+ chainId: 1337,
89
161
  decimals: 8,
90
162
  symbol: 'LBTC',
91
163
  name: 'Lux BTC',
92
164
  }
93
165
 
166
+ export const LUSD_DEV: Token = {
167
+ address: '0xCf7Ed3AccA5a467e9e704C703E8D87F634fB0Fc9',
168
+ chainId: 1337,
169
+ decimals: 6,
170
+ symbol: 'LUSD',
171
+ name: 'Lux Dollar',
172
+ }
173
+
94
174
  /**
95
175
  * Major tokens on Lux Mainnet
96
176
  */
@@ -127,7 +207,7 @@ export const WBTC_LUX: Token = {
127
207
  }
128
208
 
129
209
  export const DAI_LUX: Token = {
130
- address: '0x6B175474E89094C44Da98b954EesdscdKD34eL55',
210
+ address: '0x6B175474E89094C44Da98b954EedeAC495271d0F',
131
211
  chainId: 96369,
132
212
  decimals: 18,
133
213
  symbol: 'DAI',
@@ -138,35 +218,35 @@ export const DAI_LUX: Token = {
138
218
  * Zoo chain tokens
139
219
  */
140
220
  export const WZOO: Token = {
141
- address: '0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE',
221
+ address: '0x5491216406daB99b7032b83765F36790E27F8A61',
142
222
  chainId: 200200,
143
223
  decimals: 18,
144
224
  symbol: 'WZOO',
145
225
  name: 'Wrapped ZOO',
146
226
  }
147
227
 
148
- export const USDC_ZOO: Token = {
149
- address: '0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48',
228
+ export const LETH_ZOO: Token = {
229
+ address: '0x4870621EA8be7a383eFCfdA225249d35888bD9f2',
150
230
  chainId: 200200,
151
- decimals: 6,
152
- symbol: 'USDC',
153
- name: 'USD Coin',
231
+ decimals: 18,
232
+ symbol: 'LETH',
233
+ name: 'Lux ETH',
154
234
  }
155
235
 
156
- export const USDT_ZOO: Token = {
157
- address: '0xdAC17F958D2ee523a2206206994597C13D831ec7',
236
+ export const LBTC_ZOO: Token = {
237
+ address: '0x6fc44509a32E513bE1aa00d27bb298e63830C6A8',
158
238
  chainId: 200200,
159
- decimals: 6,
160
- symbol: 'USDT',
161
- name: 'Tether USD',
239
+ decimals: 8,
240
+ symbol: 'LBTC',
241
+ name: 'Lux BTC',
162
242
  }
163
243
 
164
- export const WETH_ZOO: Token = {
165
- address: '0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2',
244
+ export const LUSD_ZOO: Token = {
245
+ address: '0xb2ee1CE7b84853b83AA08702aD0aD4D79711882D',
166
246
  chainId: 200200,
167
247
  decimals: 18,
168
- symbol: 'WETH',
169
- name: 'Wrapped Ether',
248
+ symbol: 'LUSD',
249
+ name: 'Lux USD',
170
250
  }
171
251
 
172
252
  /**
@@ -175,14 +255,12 @@ export const WETH_ZOO: Token = {
175
255
  export const LUX_MAINNET_TOKENS: Token[] = [
176
256
  NATIVE_LUX,
177
257
  WLUX_MAINNET,
178
- USDC_LUX,
179
- USDT_LUX,
180
- WETH_LUX,
181
- WBTC_LUX,
182
- DAI_LUX,
258
+ LUSD,
183
259
  LETH,
184
260
  LBTC,
185
- LUSD,
261
+ LSOL,
262
+ LTON,
263
+ LAVAX,
186
264
  ]
187
265
 
188
266
  /**
@@ -191,11 +269,49 @@ export const LUX_MAINNET_TOKENS: Token[] = [
191
269
  export const ZOO_MAINNET_TOKENS: Token[] = [
192
270
  NATIVE_ZOO,
193
271
  WZOO,
194
- USDC_ZOO,
195
- USDT_ZOO,
196
- WETH_ZOO,
272
+ LUSD_ZOO,
273
+ LETH_ZOO,
274
+ LBTC_ZOO,
275
+ ]
276
+
277
+ /**
278
+ * Default token list for Lux Testnet
279
+ */
280
+ export const LUX_TESTNET_TOKENS: Token[] = [
281
+ WLUX_TESTNET,
282
+ LETH_TESTNET,
283
+ LBTC_TESTNET,
284
+ LUSD_TESTNET,
285
+ ]
286
+
287
+ /**
288
+ * Default token list for Lux Dev
289
+ */
290
+ export const LUX_DEV_TOKENS: Token[] = [
291
+ WLUX_DEV,
292
+ LETH_DEV,
293
+ LBTC_DEV,
294
+ LUSD_DEV,
197
295
  ]
198
296
 
297
+ /**
298
+ * Get tokens for a chain
299
+ */
300
+ export function getTokensForChain(chainId: number): Token[] {
301
+ switch (chainId) {
302
+ case 96369:
303
+ return LUX_MAINNET_TOKENS
304
+ case 96368:
305
+ return LUX_TESTNET_TOKENS
306
+ case 1337:
307
+ return LUX_DEV_TOKENS
308
+ case 200200:
309
+ return ZOO_MAINNET_TOKENS
310
+ default:
311
+ return []
312
+ }
313
+ }
314
+
199
315
  /**
200
316
  * Get wrapped native token for chain
201
317
  */