@paraswap/dex-lib 3.8.16 → 3.8.17-insert-amount-solidly-v3.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 (152) hide show
  1. package/.vscode/launch.json +53 -0
  2. package/.vscode/settings.json +2 -0
  3. package/.vscode/tasks.json +15 -0
  4. package/build/abi/maverick-v2/MaverickV2Router.json +778 -0
  5. package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
  6. package/build/abi/wombat/pool.json +1289 -0
  7. package/build/dex/aave-v1/aave-v1.js +1 -0
  8. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  9. package/build/dex/aave-v2/tokens-avalanche.json +44 -0
  10. package/build/dex/aave-v2/tokens-mainnet.json +188 -0
  11. package/build/dex/aave-v2/tokens-polygon.json +44 -0
  12. package/build/dex/bProtocol.d.ts +18 -0
  13. package/build/dex/bProtocol.js +39 -0
  14. package/build/dex/bProtocol.js.map +1 -0
  15. package/build/dex/bancor.d.ts +26 -0
  16. package/build/dex/bancor.js +58 -0
  17. package/build/dex/bancor.js.map +1 -0
  18. package/build/dex/compound.d.ts +18 -0
  19. package/build/dex/compound.js +46 -0
  20. package/build/dex/compound.js.map +1 -0
  21. package/build/dex/curve-v2.d.ts +58 -0
  22. package/build/dex/curve-v2.js +180 -0
  23. package/build/dex/curve-v2.js.map +1 -0
  24. package/build/dex/dodo-v1.d.ts +33 -0
  25. package/build/dex/dodo-v1.js +63 -0
  26. package/build/dex/dodo-v1.js.map +1 -0
  27. package/build/dex/lido.d.ts +19 -0
  28. package/build/dex/lido.js +42 -0
  29. package/build/dex/lido.js.map +1 -0
  30. package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
  31. package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
  32. package/build/dex/maker-psm/scripts/validate-state.js +185 -0
  33. package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
  34. package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
  35. package/build/dex/onebit.d.ts +25 -0
  36. package/build/dex/onebit.js +42 -0
  37. package/build/dex/onebit.js.map +1 -0
  38. package/build/dex/platypus/platypus.js +17 -3
  39. package/build/dex/platypus/platypus.js.map +1 -1
  40. package/build/dex/smoothy.d.ts +26 -0
  41. package/build/dex/smoothy.js +48 -0
  42. package/build/dex/smoothy.js.map +1 -0
  43. package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
  44. package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
  45. package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
  46. package/build/dex/solidly-v3/solidly-v3.js +7 -0
  47. package/build/dex/solidly-v3/solidly-v3.js.map +1 -1
  48. package/build/dex/stable-pool.d.ts +28 -0
  49. package/build/dex/stable-pool.js +55 -0
  50. package/build/dex/stable-pool.js.map +1 -0
  51. package/build/dex/swaap-v1/swaap-v1.js +4 -0
  52. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  53. package/build/dex/trader-joe-v2.1/base.d.ts +18 -0
  54. package/build/dex/trader-joe-v2.1/base.js +99 -0
  55. package/build/dex/trader-joe-v2.1/base.js.map +1 -0
  56. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.d.ts +7 -0
  57. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js +20 -0
  58. package/build/dex/trader-joe-v2.1/trader-joe-v2.1-new.js.map +1 -0
  59. package/build/dex/trader-joe-v2.1/trader-joe-v2.2.d.ts +7 -0
  60. package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js +20 -0
  61. package/build/dex/trader-joe-v2.1/trader-joe-v2.2.js.map +1 -0
  62. package/build/dex/trader-joe-v2.1.d.ts +43 -0
  63. package/build/dex/trader-joe-v2.1.js +79 -0
  64. package/build/dex/trader-joe-v2.1.js.map +1 -0
  65. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
  66. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
  67. package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
  68. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
  69. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
  70. package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
  71. package/build/executor/types.d.ts +2 -1
  72. package/build/executor/types.js +1 -0
  73. package/build/executor/types.js.map +1 -1
  74. package/build/generic-swap-transaction-builder.js +8 -3
  75. package/build/generic-swap-transaction-builder.js.map +1 -1
  76. package/config.ts +1946 -0
  77. package/package.json +1 -1
  78. package/src/dex/dexs.txt +58 -0
  79. package/src/dex/solidly-v3/solidly-v3.ts +7 -0
  80. package/src/executor/types.ts +1 -0
  81. package/src/generic-swap-transaction-builder.ts +14 -3
  82. package/build/abi/inception/inception-ineth-pool.json +0 -1062
  83. package/build/abi/inception/inception-ineth.json +0 -609
  84. package/build/abi/inception/inception-ratio-feed.json +0 -93
  85. package/build/abi/inception/inception-vault.json +0 -991
  86. package/build/abi/infusion/InfusionFactory.json +0 -147
  87. package/build/abi/infusion/InfusionPair.json +0 -658
  88. package/build/abi/infusion/InfusionRouter.json +0 -442
  89. package/build/abi/oswap/oswap.abi.json +0 -452
  90. package/build/dex/idle-dao/idle-dao-pool.d.ts +0 -56
  91. package/build/dex/idle-dao/idle-dao-pool.js +0 -176
  92. package/build/dex/idle-dao/idle-dao-pool.js.map +0 -1
  93. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +0 -16
  94. package/build/dex/idle-dao/idle-dao-pooling-pool.js +0 -57
  95. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +0 -1
  96. package/build/dex/idle-dao/scripts.d.ts +0 -9
  97. package/build/dex/idle-dao/scripts.js +0 -552
  98. package/build/dex/idle-dao/scripts.js.map +0 -1
  99. package/build/dex/inception/config.d.ts +0 -5
  100. package/build/dex/inception/config.js +0 -112
  101. package/build/dex/inception/config.js.map +0 -1
  102. package/build/dex/inception/inception-event-pool.d.ts +0 -23
  103. package/build/dex/inception/inception-event-pool.js +0 -34
  104. package/build/dex/inception/inception-event-pool.js.map +0 -1
  105. package/build/dex/inception/inception-native.d.ts +0 -43
  106. package/build/dex/inception/inception-native.js +0 -131
  107. package/build/dex/inception/inception-native.js.map +0 -1
  108. package/build/dex/inception/inception-pool.d.ts +0 -18
  109. package/build/dex/inception/inception-pool.js +0 -32
  110. package/build/dex/inception/inception-pool.js.map +0 -1
  111. package/build/dex/inception/inception-price-feed.d.ts +0 -19
  112. package/build/dex/inception/inception-price-feed.js +0 -51
  113. package/build/dex/inception/inception-price-feed.js.map +0 -1
  114. package/build/dex/inception/inception.d.ts +0 -44
  115. package/build/dex/inception/inception.js +0 -162
  116. package/build/dex/inception/inception.js.map +0 -1
  117. package/build/dex/inception/tokens.d.ts +0 -9
  118. package/build/dex/inception/tokens.js +0 -28
  119. package/build/dex/inception/tokens.js.map +0 -1
  120. package/build/dex/inception/types.d.ts +0 -22
  121. package/build/dex/inception/types.js +0 -3
  122. package/build/dex/inception/types.js.map +0 -1
  123. package/build/dex/inception/utils.d.ts +0 -7
  124. package/build/dex/inception/utils.js +0 -58
  125. package/build/dex/inception/utils.js.map +0 -1
  126. package/build/dex/infusion/config.d.ts +0 -4
  127. package/build/dex/infusion/config.js +0 -25
  128. package/build/dex/infusion/config.js.map +0 -1
  129. package/build/dex/infusion/infusion-stable-pool.d.ts +0 -4
  130. package/build/dex/infusion/infusion-stable-pool.js +0 -74
  131. package/build/dex/infusion/infusion-stable-pool.js.map +0 -1
  132. package/build/dex/infusion/infusion.d.ts +0 -54
  133. package/build/dex/infusion/infusion.js +0 -510
  134. package/build/dex/infusion/infusion.js.map +0 -1
  135. package/build/dex/infusion/types.d.ts +0 -47
  136. package/build/dex/infusion/types.js +0 -3
  137. package/build/dex/infusion/types.js.map +0 -1
  138. package/build/dex/infusion/utils/isStablePair.d.ts +0 -2
  139. package/build/dex/infusion/utils/isStablePair.js +0 -18
  140. package/build/dex/infusion/utils/isStablePair.js.map +0 -1
  141. package/build/dex/oswap/config.d.ts +0 -5
  142. package/build/dex/oswap/config.js +0 -31
  143. package/build/dex/oswap/config.js.map +0 -1
  144. package/build/dex/oswap/oswap-pool.d.ts +0 -51
  145. package/build/dex/oswap/oswap-pool.js +0 -150
  146. package/build/dex/oswap/oswap-pool.js.map +0 -1
  147. package/build/dex/oswap/oswap.d.ts +0 -46
  148. package/build/dex/oswap/oswap.js +0 -263
  149. package/build/dex/oswap/oswap.js.map +0 -1
  150. package/build/dex/oswap/types.d.ts +0 -20
  151. package/build/dex/oswap/types.js +0 -3
  152. package/build/dex/oswap/types.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "3.8.16",
3
+ "version": "3.8.17-insert-amount-solidly-v3.0",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -0,0 +1,58 @@
1
+ aave-v2
2
+ aave-v3
3
+ aave-v3-stata
4
+ algebra
5
+ angle-staked-stable
6
+ angle-transmuter
7
+ augustus-approvals.ts
8
+ augustus-rfq.ts
9
+ balancer-v1
10
+ balancer-v2
11
+ bancor
12
+ camelot
13
+ compound
14
+ curve-v1
15
+ curve-v1-factory
16
+ curve-v1-stable-ng
17
+ curve-v2
18
+ dexalot
19
+ dexs.txt
20
+ dodo-v1
21
+ dodo-v2.ts
22
+ etherfi.ts
23
+ generic-rfq
24
+ gmx
25
+ hashflow
26
+ idex.ts
27
+ idle-dao
28
+ index.ts
29
+ jarvis-v6
30
+ kyberdmm
31
+ lido
32
+ limit-order-exchange.ts
33
+ maker-psm
34
+ maverick-v1
35
+ maverick-v2
36
+ nerve
37
+ pancakeswap-v3
38
+ paraswap-limit-orders
39
+ polygon-migrator
40
+ quick-perps
41
+ quickswap
42
+ simple-exchange.ts
43
+ smoothy
44
+ solidly
45
+ solidly-v3
46
+ spark
47
+ stable-pool
48
+ swaap-v2
49
+ swell
50
+ synthetix
51
+ trader-joe-v2.1
52
+ uniswap-v2
53
+ uniswap-v3
54
+ uniswap-v3.ts
55
+ weth
56
+ wombat
57
+ woo-fi-v2
58
+ wsteth
@@ -49,6 +49,7 @@ import { Contract } from 'web3-eth-contract';
49
49
  import { AbiItem } from 'web3-utils';
50
50
  import { TickMath } from './contract-math/TickMath';
51
51
  import { OnPoolCreatedCallback, SolidlyV3Factory } from './solidly-v3-factory';
52
+ import { SpecialDex } from '../../executor/types';
52
53
 
53
54
  type PoolPairsInfo = {
54
55
  token0: Address;
@@ -727,6 +728,12 @@ export class SolidlyV3
727
728
  exchangeData: swapData,
728
729
  targetExchange: data.poolAddress,
729
730
  returnAmountPos: undefined,
731
+ ...(side === SwapSide.BUY
732
+ ? {
733
+ specialDexSupportsInsertFromAmount: true,
734
+ specialDexFlag: SpecialDex.BUY_ON_SOLIDLY_V3,
735
+ }
736
+ : {}),
730
737
  };
731
738
  }
732
739
 
@@ -24,6 +24,7 @@ export enum SpecialDex {
24
24
  SWAP_ON_DYSTOPIA_UNISWAP_V2_FORK_WITH_FEE = 8,
25
25
  SWAP_ON_AUGUSTUS_RFQ = 9, // swapOnAugustusRFQ
26
26
  EXECUTE_VERTICAL_BRANCHING = 10, // execute vertical branching
27
+ BUY_ON_SOLIDLY_V3 = 11,
27
28
  }
28
29
 
29
30
  export enum Executors {
@@ -251,9 +251,20 @@ export class GenericSwapTransactionBuilder {
251
251
  [
252
252
  priceRoute.srcToken,
253
253
  priceRoute.destToken,
254
- isSell ? priceRoute.srcAmount : minMaxAmount,
255
- isSell ? minMaxAmount : priceRoute.destAmount,
256
- isSell ? priceRoute.destAmount : priceRoute.srcAmount,
254
+ // TODO: temporary artificially increase total amounts by 10% to test insert from amount
255
+ (
256
+ (BigInt(isSell ? priceRoute.srcAmount : minMaxAmount) * 11n) /
257
+ 10n
258
+ ).toString(),
259
+ (
260
+ (BigInt(isSell ? minMaxAmount : priceRoute.destAmount) * 11n) /
261
+ 10n
262
+ ).toString(),
263
+ (
264
+ (BigInt(isSell ? priceRoute.destAmount : priceRoute.srcAmount) *
265
+ 11n) /
266
+ 10n
267
+ ).toString(),
257
268
  hexConcat([
258
269
  hexZeroPad(uuidToBytes16(uuid), 16),
259
270
  hexZeroPad(hexlify(priceRoute.blockNumber), 16),