@paraswap/dex-lib 2.16.7 → 2.16.8-balancer-v2-buy
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.
- package/.idea/aws.xml +17 -0
- package/.idea/codeStyles/Project.xml +19 -0
- package/.idea/codeStyles/codeStyleConfig.xml +5 -0
- package/.idea/inspectionProfiles/Project_Default.xml +6 -0
- package/.idea/misc.xml +6 -0
- package/.idea/modules.xml +8 -0
- package/.idea/paraswap-dex-lib.iml +9 -0
- package/.idea/vcs.xml +6 -0
- package/build/config.js +4 -4
- package/build/dex/balancer-v2/balancer-v2.d.ts +14 -19
- package/build/dex/balancer-v2/balancer-v2.js +27 -22
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/balancer-v2/config.d.ts +2 -7
- package/build/dex/balancer-v2/config.js +20 -30
- package/build/dex/balancer-v2/config.js.map +1 -1
- package/build/dex/balancer-v2/pools/balancer-v2-pool.d.ts +25 -0
- package/build/dex/balancer-v2/pools/balancer-v2-pool.js +107 -0
- package/build/dex/balancer-v2/pools/balancer-v2-pool.js.map +1 -0
- package/build/dex/balancer-v2/pools/linear/LinearMath.d.ts +20 -0
- package/build/dex/balancer-v2/pools/linear/LinearMath.js +179 -0
- package/build/dex/balancer-v2/pools/linear/LinearMath.js.map +1 -0
- package/build/dex/balancer-v2/pools/linear/LinearPool.d.ts +50 -0
- package/build/dex/balancer-v2/pools/linear/LinearPool.js +458 -0
- package/build/dex/balancer-v2/pools/linear/LinearPool.js.map +1 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.d.ts +10 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.js +314 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStableMath.js.map +1 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.d.ts +50 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js +367 -0
- package/build/dex/balancer-v2/pools/phantom-stable/PhantomStablePool.js.map +1 -0
- package/build/dex/balancer-v2/pools/stable/StableMath.d.ts +7 -0
- package/build/dex/balancer-v2/pools/stable/StableMath.js +111 -0
- package/build/dex/balancer-v2/pools/stable/StableMath.js.map +1 -0
- package/build/dex/balancer-v2/pools/stable/StablePool.d.ts +30 -0
- package/build/dex/balancer-v2/pools/stable/StablePool.js +129 -0
- package/build/dex/balancer-v2/pools/stable/StablePool.js.map +1 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedMath.d.ts +6 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedMath.js +61 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedMath.js.map +1 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedPool.d.ts +30 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedPool.js +112 -0
- package/build/dex/balancer-v2/pools/weighted/WeightedPool.js.map +1 -0
- package/build/dex/balancer-v2/types.d.ts +1 -0
- package/build/dex/balancer-v2/types.js.map +1 -1
- package/build/dex/balancer-v2/utils.d.ts +3 -2
- package/build/dex/balancer-v2/utils.js +6 -4
- package/build/dex/balancer-v2/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/config.ts +4 -4
- package/src/dex/balancer-v2/balancer-v2-e2e.test.ts +538 -225
- package/src/dex/balancer-v2/balancer-v2-integration.test.ts +305 -122
- package/src/dex/balancer-v2/balancer-v2.ts +60 -56
- package/src/dex/balancer-v2/config.ts +23 -35
- package/src/dex/balancer-v2/pools/balancer-v2-pool.ts +274 -0
- package/src/dex/balancer-v2/{LinearMath.ts → pools/linear/LinearMath.ts} +11 -10
- package/src/dex/balancer-v2/{LinearPool.ts → pools/linear/LinearPool.ts} +210 -6
- package/src/dex/balancer-v2/{StableMath.ts → pools/phantom-stable/PhantomStableMath.ts} +101 -21
- package/src/dex/balancer-v2/{PhantomStablePool.ts → pools/phantom-stable/PhantomStablePool.ts} +167 -12
- package/src/dex/balancer-v2/pools/stable/StableMath.ts +204 -0
- package/src/dex/balancer-v2/pools/stable/StablePool.ts +221 -0
- package/src/dex/balancer-v2/pools/weighted/WeightedMath.ts +84 -0
- package/src/dex/balancer-v2/pools/weighted/WeightedPool.ts +189 -0
- package/src/dex/balancer-v2/types.ts +1 -0
- package/src/dex/balancer-v2/utils.ts +7 -1
- package/tests/constants-e2e.ts +33 -8
- package/build/abi/DirectSwap.json +0 -970
- package/build/dex/test-dex/config.d.ts +0 -4
- package/build/dex/test-dex/config.js +0 -15
- package/build/dex/test-dex/config.js.map +0 -1
- package/build/dex/test-dex/test-dex-pool.d.ts +0 -39
- package/build/dex/test-dex/test-dex-pool.js +0 -63
- package/build/dex/test-dex/test-dex-pool.js.map +0 -1
- package/build/dex/test-dex/test-dex.d.ts +0 -37
- package/build/dex/test-dex/test-dex.js +0 -126
- package/build/dex/test-dex/test-dex.js.map +0 -1
- package/build/dex/test-dex/types.d.ts +0 -6
- package/build/dex/test-dex/types.js +0 -3
- package/build/dex/test-dex/types.js.map +0 -1
- package/build/dex/woo-fi-v2/woo-fi-math.d.ts +0 -16
- package/build/dex/woo-fi-v2/woo-fi-math.js +0 -137
- package/build/dex/woo-fi-v2/woo-fi-math.js.map +0 -1
- package/src/dex/balancer-v2/balancer-v2-pool.ts +0 -744
|
@@ -2,6 +2,7 @@ import { getAddress } from '@ethersproject/address';
|
|
|
2
2
|
import { Interface, Result } from '@ethersproject/abi';
|
|
3
3
|
import { getBigIntPow } from '../../utils';
|
|
4
4
|
import { BI_POWS } from '../../bigint-constants';
|
|
5
|
+
import { SwapSide } from '../../constants';
|
|
5
6
|
|
|
6
7
|
import {
|
|
7
8
|
BalancerPoolTypes,
|
|
@@ -44,6 +45,7 @@ export function poolGetPathForTokenInOut(
|
|
|
44
45
|
tokenOutAddress: string,
|
|
45
46
|
pool: SubgraphPoolBase,
|
|
46
47
|
poolsMap: SubgraphPoolAddressDictionary,
|
|
48
|
+
side: SwapSide,
|
|
47
49
|
): BalancerPathHop[] {
|
|
48
50
|
const tokenIn = findRequiredMainTokenInPool(tokenInAddress, pool);
|
|
49
51
|
const tokenOut = findRequiredMainTokenInPool(tokenOutAddress, pool);
|
|
@@ -62,11 +64,13 @@ export function poolGetPathForTokenInOut(
|
|
|
62
64
|
tokenOut: hop.token,
|
|
63
65
|
}));
|
|
64
66
|
|
|
65
|
-
|
|
67
|
+
const result = [
|
|
66
68
|
...tokenInHops,
|
|
67
69
|
{ pool, tokenIn: tokenIn.poolToken, tokenOut: tokenOut.poolToken },
|
|
68
70
|
...tokenOutHops,
|
|
69
71
|
];
|
|
72
|
+
|
|
73
|
+
return side === SwapSide.SELL ? result : result.reverse();
|
|
70
74
|
}
|
|
71
75
|
|
|
72
76
|
export function getAllPoolsUsedInPaths(
|
|
@@ -74,6 +78,7 @@ export function getAllPoolsUsedInPaths(
|
|
|
74
78
|
to: string,
|
|
75
79
|
allowedPools: SubgraphPoolBase[],
|
|
76
80
|
poolAddressMap: SubgraphPoolAddressDictionary,
|
|
81
|
+
side: SwapSide,
|
|
77
82
|
) {
|
|
78
83
|
//get all pools from the nested paths
|
|
79
84
|
return uniqBy(
|
|
@@ -84,6 +89,7 @@ export function getAllPoolsUsedInPaths(
|
|
|
84
89
|
to.toLowerCase(),
|
|
85
90
|
pool,
|
|
86
91
|
poolAddressMap,
|
|
92
|
+
side,
|
|
87
93
|
).map(hop => hop.pool),
|
|
88
94
|
)
|
|
89
95
|
.flat(),
|
package/tests/constants-e2e.ts
CHANGED
|
@@ -67,6 +67,10 @@ export const Tokens: {
|
|
|
67
67
|
addBalance: balanceOfFn,
|
|
68
68
|
addAllowance: allowanceFn,
|
|
69
69
|
},
|
|
70
|
+
PSP: {
|
|
71
|
+
address: '0xcafe001067cdef266afb7eb5a286dcfd277f3de5',
|
|
72
|
+
decimals: 18,
|
|
73
|
+
},
|
|
70
74
|
SETH: {
|
|
71
75
|
address: '0x5e74C9036fb86BD7eCdcb084a0673EFc32eA31cb',
|
|
72
76
|
decimals: 18,
|
|
@@ -98,7 +102,7 @@ export const Tokens: {
|
|
|
98
102
|
decimals: 18,
|
|
99
103
|
},
|
|
100
104
|
aUSDT: {
|
|
101
|
-
address: '
|
|
105
|
+
address: '0x3Ed3B47Dd13ECAURA9a98b44e6204A523E766B225811',
|
|
102
106
|
decimals: 6,
|
|
103
107
|
},
|
|
104
108
|
waUSDT: {
|
|
@@ -113,6 +117,14 @@ export const Tokens: {
|
|
|
113
117
|
address: '0xba100000625a3754423978a60c9317c58a424e3D',
|
|
114
118
|
decimals: 18,
|
|
115
119
|
},
|
|
120
|
+
OHM: {
|
|
121
|
+
address: '0x64aa3364f17a4d01c6f1751fd97c2bd3d7e7f1d5',
|
|
122
|
+
decimals: 9,
|
|
123
|
+
},
|
|
124
|
+
AURA: {
|
|
125
|
+
address: '0xc0c293ce456ff0ed870add98a0828dd4d2903dbf',
|
|
126
|
+
decimals: 18,
|
|
127
|
+
},
|
|
116
128
|
WISE: {
|
|
117
129
|
address: '0x66a0f676479cee1d7373f3dc2e2952778bff5bd6',
|
|
118
130
|
decimals: 18,
|
|
@@ -703,6 +715,14 @@ export const Tokens: {
|
|
|
703
715
|
address: '0xFF970A61A04b1cA14834A43f5dE4533eBDDB5CC8',
|
|
704
716
|
decimals: 6,
|
|
705
717
|
},
|
|
718
|
+
OHM: {
|
|
719
|
+
address: '0xf0cb2dc0db5e6c66b9a70ac27b06b878da017028',
|
|
720
|
+
decimals: 9,
|
|
721
|
+
},
|
|
722
|
+
RDNT: {
|
|
723
|
+
address: '0x3082cc23568ea640225c2467653db90e9250aaa0',
|
|
724
|
+
decimals: 18,
|
|
725
|
+
},
|
|
706
726
|
USDT: {
|
|
707
727
|
address: '0xfd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9',
|
|
708
728
|
decimals: 6,
|
|
@@ -812,13 +832,13 @@ export const Holders: {
|
|
|
812
832
|
} = {
|
|
813
833
|
[Network.MAINNET]: {
|
|
814
834
|
ETH: '0x176F3DAb24a159341c0509bB36B833E7fdd0a132',
|
|
815
|
-
USDC: '
|
|
816
|
-
WBTC: '
|
|
835
|
+
USDC: '0x79E2Ba942B0e8fDB6ff3d406e930289d10B49ADe',
|
|
836
|
+
WBTC: '0x1Cb17a66DC606a52785f69F08F4256526aBd4943',
|
|
817
837
|
BADGER: '0x34e2741a3f8483dbe5231f61c005110ff4b9f50a',
|
|
818
838
|
STETH: '0x9bdb521a97e95177bf252c253e256a60c3e14447',
|
|
819
839
|
wstETH: '0x6cE0F913F035ec6195bC3cE885aec4C66E485BC4',
|
|
820
|
-
WETH: '
|
|
821
|
-
USDT: '
|
|
840
|
+
WETH: '0x2fEb1512183545f48f6b9C5b4EbfCaF49CfCa6F3',
|
|
841
|
+
USDT: '0x8A446971dbB112f3be15bc38C14D44B94D9E94b9',
|
|
822
842
|
XAUT: '0xc4e161e8d8a4bc4ac762ab33a28bbac5474203d7',
|
|
823
843
|
CVX: '0x0aCA67Fa70B142A3b9bF2eD89A81B40ff85dACdC',
|
|
824
844
|
MIM: '0xa046a8660e66d178ee07ec97c585eeb6aa18c26c',
|
|
@@ -827,7 +847,9 @@ export const Holders: {
|
|
|
827
847
|
oldFRAX: '0x183d0dc5867c01bfb1dbbc41d6a9d3de6e044626',
|
|
828
848
|
newFRAX: '0x183d0dc5867c01bfb1dbbc41d6a9d3de6e044626',
|
|
829
849
|
FEI: '0x19c549357034d10db8d75ed812b45be1dd8a7218',
|
|
830
|
-
BAL: '
|
|
850
|
+
BAL: '0x740a4AEEfb44484853AA96aB12545FC0290805F3',
|
|
851
|
+
OHM: '0x3D7FEAB5cfab1c7De8ab2b7D5B260E76fD88BC78',
|
|
852
|
+
AURA: '0xBB19053E031D9B2B364351B21a8ed3568b21399b',
|
|
831
853
|
WISE: '0x25c315e0758beeab30ee048a4e2080e7084b64b3',
|
|
832
854
|
DDIM: '0x229cbd1955fee93ab6e7876c1b17f6d0b859e953',
|
|
833
855
|
DODO: '0x3e19d726ed435afd3a42967551426b3a47c0f5b7',
|
|
@@ -864,7 +886,8 @@ export const Holders: {
|
|
|
864
886
|
SHIBA: '0x73af3bcf944a6559933396c1577b257e2054d935',
|
|
865
887
|
aEthUSDC: '0x3178490d60B5cceaA5a79FD4D9050C7405Bab80c',
|
|
866
888
|
aEthWETH: '0x645C4c0c95C1Aa6EF25d12f4a25038cA9b0C6Cc7',
|
|
867
|
-
dUSDC: '
|
|
889
|
+
dUSDC: '0x2FC2F705110A7F46Ce85F701d7217EF1018f01A3',
|
|
890
|
+
PSP: '0xE5E5440a1CE69C5cf67BFFA74d185e57c31b43E5',
|
|
868
891
|
},
|
|
869
892
|
[Network.ROPSTEN]: {
|
|
870
893
|
ETH: '0x43262A12d8610AA70C15DbaeAC321d51613c9071',
|
|
@@ -972,7 +995,8 @@ export const Holders: {
|
|
|
972
995
|
ETH: '0xF977814e90dA44bFA03b6295A0616a897441aceC',
|
|
973
996
|
DAI: '0x07d7f291e731a41d3f0ea4f1ae5b6d920ffb3fe0',
|
|
974
997
|
WETH: '0xc31e54c7a869b9fcbecc14363cf510d1c41fa443',
|
|
975
|
-
USDC: '
|
|
998
|
+
USDC: '0x62383739d68dd0f844103db8dfb05a7eded5bbe6',
|
|
999
|
+
OHM: '0xebce5f29ff5ca9aa330ebdf7ec6b5f474bff271e',
|
|
976
1000
|
USDT: '0x62383739d68dd0f844103db8dfb05a7eded5bbe6',
|
|
977
1001
|
POPS: '0x4b78b52e7de4d8b7d367297cb8a87c1875a9d591',
|
|
978
1002
|
FRAX: '0x59bf0545fca0e5ad48e13da269facd2e8c886ba4',
|
|
@@ -987,6 +1011,7 @@ export const Holders: {
|
|
|
987
1011
|
aArbUSDC: '0x048BF2F5908e95976CeAD0E47D805b3803E286e2',
|
|
988
1012
|
ZYB: '0x3ec0eddcd1e25025077327886a78133589082fb2',
|
|
989
1013
|
WBTC: '0xd9d611c6943585bc0e18e51034af8fa28778f7da',
|
|
1014
|
+
RDNT: '0x62383739d68dd0f844103db8dfb05a7eded5bbe6'
|
|
990
1015
|
},
|
|
991
1016
|
[Network.OPTIMISM]: {
|
|
992
1017
|
ETH: '0x9ef21bE1C270AA1c3c3d750F458442397fBFFCB6',
|