@paraswap/dex-lib 2.42.26 → 2.42.27-solidly-v3.2
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/build/abi/smardex/all/smardex-router.json +648 -0
- package/build/abi/smardex/layer-1/smardex-factory.json +242 -0
- package/build/abi/smardex/layer-1/smardex-pool.json +506 -0
- package/build/abi/smardex/layer-2/smardex-factory.json +185 -0
- package/build/abi/smardex/layer-2/smardex-pool.json +578 -0
- package/build/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
- package/build/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
- package/build/config.js +20 -10
- package/build/config.js.map +1 -1
- package/build/dex/index.js +4 -0
- package/build/dex/index.js.map +1 -1
- package/build/dex/smardex/config.d.ts +4 -0
- package/build/dex/smardex/config.js +64 -0
- package/build/dex/smardex/config.js.map +1 -0
- package/build/dex/smardex/constants.d.ts +18 -0
- package/build/dex/smardex/constants.js +33 -0
- package/build/dex/smardex/constants.js.map +1 -0
- package/build/dex/smardex/sdk/constants.d.ts +6 -0
- package/build/dex/smardex/sdk/constants.js +13 -0
- package/build/dex/smardex/sdk/constants.js.map +1 -0
- package/build/dex/smardex/sdk/core.d.ts +113 -0
- package/build/dex/smardex/sdk/core.js +499 -0
- package/build/dex/smardex/sdk/core.js.map +1 -0
- package/build/dex/smardex/sdk/errors.d.ts +15 -0
- package/build/dex/smardex/sdk/errors.js +22 -0
- package/build/dex/smardex/sdk/errors.js.map +1 -0
- package/build/dex/smardex/sdk/types.d.ts +62 -0
- package/build/dex/smardex/sdk/types.js +3 -0
- package/build/dex/smardex/sdk/types.js.map +1 -0
- package/build/dex/smardex/sdk/utils.d.ts +44 -0
- package/build/dex/smardex/sdk/utils.js +133 -0
- package/build/dex/smardex/sdk/utils.js.map +1 -0
- package/build/dex/smardex/smardex-event-pool.d.ts +28 -0
- package/build/dex/smardex/smardex-event-pool.js +119 -0
- package/build/dex/smardex/smardex-event-pool.js.map +1 -0
- package/build/dex/smardex/smardex.d.ts +65 -0
- package/build/dex/smardex/smardex.js +519 -0
- package/build/dex/smardex/smardex.js.map +1 -0
- package/build/dex/smardex/types.d.ts +55 -0
- package/build/dex/smardex/types.js +3 -0
- package/build/dex/smardex/types.js.map +1 -0
- package/build/dex/solidly-v3/config.d.ts +9 -0
- package/build/dex/solidly-v3/config.js +58 -0
- package/build/dex/solidly-v3/config.js.map +1 -0
- package/build/dex/solidly-v3/constants.d.ts +27 -0
- package/build/dex/solidly-v3/constants.js +34 -0
- package/build/dex/solidly-v3/constants.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/BitMath.d.ts +4 -0
- package/build/dex/solidly-v3/contract-math/BitMath.js +93 -0
- package/build/dex/solidly-v3/contract-math/BitMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint128.d.ts +3 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint128.js +8 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint128.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint96.d.ts +4 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint96.js +9 -0
- package/build/dex/solidly-v3/contract-math/FixedPoint96.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/FullMath.d.ts +4 -0
- package/build/dex/solidly-v3/contract-math/FullMath.js +19 -0
- package/build/dex/solidly-v3/contract-math/FullMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/LiquidityMath.d.ts +3 -0
- package/build/dex/solidly-v3/contract-math/LiquidityMath.js +22 -0
- package/build/dex/solidly-v3/contract-math/LiquidityMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/SqrtPriceMath.d.ts +10 -0
- package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js +91 -0
- package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/SwapMath.d.ts +8 -0
- package/build/dex/solidly-v3/contract-math/SwapMath.js +70 -0
- package/build/dex/solidly-v3/contract-math/SwapMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/Tick.d.ts +7 -0
- package/build/dex/solidly-v3/contract-math/Tick.js +36 -0
- package/build/dex/solidly-v3/contract-math/Tick.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/TickBitMap.d.ts +7 -0
- package/build/dex/solidly-v3/contract-math/TickBitMap.js +84 -0
- package/build/dex/solidly-v3/contract-math/TickBitMap.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/TickMath.d.ts +8 -0
- package/build/dex/solidly-v3/contract-math/TickMath.js +162 -0
- package/build/dex/solidly-v3/contract-math/TickMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/UnsafeMath.d.ts +3 -0
- package/build/dex/solidly-v3/contract-math/UnsafeMath.js +10 -0
- package/build/dex/solidly-v3/contract-math/UnsafeMath.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/uniswap-v3-math.d.ts +31 -0
- package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js +363 -0
- package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js.map +1 -0
- package/build/dex/solidly-v3/contract-math/utils.d.ts +7 -0
- package/build/dex/solidly-v3/contract-math/utils.js +39 -0
- package/build/dex/solidly-v3/contract-math/utils.js.map +1 -0
- package/build/dex/solidly-v3/solidly-v3-factory.d.ts +26 -0
- package/build/dex/solidly-v3/solidly-v3-factory.js +44 -0
- package/build/dex/solidly-v3/solidly-v3-factory.js.map +1 -0
- package/build/dex/solidly-v3/solidly-v3-pool.d.ts +44 -0
- package/build/dex/solidly-v3/solidly-v3-pool.js +298 -0
- package/build/dex/solidly-v3/solidly-v3-pool.js.map +1 -0
- package/build/dex/solidly-v3/solidly-v3.d.ts +67 -0
- package/build/dex/solidly-v3/solidly-v3.js +590 -0
- package/build/dex/solidly-v3/solidly-v3.js.map +1 -0
- package/build/dex/solidly-v3/types.d.ts +132 -0
- package/build/dex/solidly-v3/types.js +9 -0
- package/build/dex/solidly-v3/types.js.map +1 -0
- package/build/dex/solidly-v3/utils.d.ts +6 -0
- package/build/dex/solidly-v3/utils.js +53 -0
- package/build/dex/solidly-v3/utils.js.map +1 -0
- package/build/dex/wombat/wombat-pool-poller.d.ts +22 -0
- package/build/dex/wombat/wombat-pool-poller.js +164 -0
- package/build/dex/wombat/wombat-pool-poller.js.map +1 -0
- package/build/types.d.ts +1 -0
- package/package.json +3 -2
- package/src/abi/smardex/all/smardex-router.json +648 -0
- package/src/abi/smardex/layer-1/smardex-factory.json +242 -0
- package/src/abi/smardex/layer-1/smardex-pool.json +506 -0
- package/src/abi/smardex/layer-2/smardex-factory.json +185 -0
- package/src/abi/smardex/layer-2/smardex-pool.json +578 -0
- package/src/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
- package/src/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
- package/src/config.ts +21 -10
- package/src/dex/index.ts +4 -0
- package/src/dex/smardex/config.ts +67 -0
- package/src/dex/smardex/constants.ts +35 -0
- package/src/dex/smardex/sdk/constants.ts +10 -0
- package/src/dex/smardex/sdk/core.ts +832 -0
- package/src/dex/smardex/sdk/errors.ts +18 -0
- package/src/dex/smardex/sdk/types.ts +68 -0
- package/src/dex/smardex/sdk/utils.ts +156 -0
- package/src/dex/smardex/smardex-e2e.test.ts +275 -0
- package/src/dex/smardex/smardex-event-pool.ts +164 -0
- package/src/dex/smardex/smardex-events.test.ts +297 -0
- package/src/dex/smardex/smardex-integration.test.ts +258 -0
- package/src/dex/smardex/smardex.ts +770 -0
- package/src/dex/smardex/types.ts +69 -0
- package/src/dex/solidly-v3/config.ts +64 -0
- package/src/dex/solidly-v3/constants.ts +42 -0
- package/src/dex/solidly-v3/contract-math/BitMath.ts +90 -0
- package/src/dex/solidly-v3/contract-math/FixedPoint128.ts +3 -0
- package/src/dex/solidly-v3/contract-math/FixedPoint96.ts +4 -0
- package/src/dex/solidly-v3/contract-math/FullMath.ts +30 -0
- package/src/dex/solidly-v3/contract-math/LiquidityMath.ts +17 -0
- package/src/dex/solidly-v3/contract-math/SqrtPriceMath.ts +226 -0
- package/src/dex/solidly-v3/contract-math/SwapMath.ts +139 -0
- package/src/dex/solidly-v3/contract-math/Tick.ts +66 -0
- package/src/dex/solidly-v3/contract-math/TickBitMap.ts +123 -0
- package/src/dex/solidly-v3/contract-math/TickMath.ts +211 -0
- package/src/dex/solidly-v3/contract-math/UnsafeMath.ts +5 -0
- package/src/dex/solidly-v3/contract-math/uniswap-v3-math.ts +570 -0
- package/src/dex/solidly-v3/contract-math/utils.ts +50 -0
- package/src/dex/solidly-v3/solidly-v3-e2e.test.ts +124 -0
- package/src/dex/solidly-v3/solidly-v3-events.test.ts +144 -0
- package/src/dex/solidly-v3/solidly-v3-factory.ts +73 -0
- package/src/dex/solidly-v3/solidly-v3-integration.test.ts +358 -0
- package/src/dex/solidly-v3/solidly-v3-pool.ts +494 -0
- package/src/dex/solidly-v3/solidly-v3.ts +988 -0
- package/src/dex/solidly-v3/types.ts +158 -0
- package/src/dex/solidly-v3/utils.ts +71 -0
- package/src/dex/uniswap-v3/uniswap-v3-events.test.ts +3 -0
- package/src/types.ts +1 -0
- package/tests/constants-e2e.ts +26 -1
- package/.vscode/launch.json +0 -54
- package/.vscode/settings.json +0 -2
- package/.vscode/tasks.json +0 -15
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import { BigNumber, BytesLike } from 'ethers';
|
|
2
|
+
import { NumberAsString } from '../../types';
|
|
3
|
+
import { Address } from '../../types';
|
|
4
|
+
import { AbiItem } from 'web3-utils';
|
|
5
|
+
import { MultiResult } from '../../lib/multi-wrapper';
|
|
6
|
+
|
|
7
|
+
export type FactoryState = Record<string, never>;
|
|
8
|
+
|
|
9
|
+
export type TickInfo = {
|
|
10
|
+
liquidityGross: bigint;
|
|
11
|
+
liquidityNet: bigint;
|
|
12
|
+
initialized: boolean;
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export type Slot0 = {
|
|
16
|
+
sqrtPriceX96: bigint;
|
|
17
|
+
tick: bigint;
|
|
18
|
+
fee: bigint;
|
|
19
|
+
};
|
|
20
|
+
|
|
21
|
+
export type PoolState = {
|
|
22
|
+
pool: string;
|
|
23
|
+
blockTimestamp: bigint;
|
|
24
|
+
tickSpacing: bigint;
|
|
25
|
+
slot0: Slot0;
|
|
26
|
+
liquidity: bigint;
|
|
27
|
+
maxLiquidityPerTick: bigint;
|
|
28
|
+
tickBitmap: Record<NumberAsString, bigint>;
|
|
29
|
+
ticks: Record<NumberAsString, TickInfo>;
|
|
30
|
+
isValid: boolean;
|
|
31
|
+
startTickBitmap: bigint;
|
|
32
|
+
lowestKnownTick: bigint;
|
|
33
|
+
highestKnownTick: bigint;
|
|
34
|
+
balance0: bigint;
|
|
35
|
+
balance1: bigint;
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
export type SolidlyV3Data = {
|
|
39
|
+
zeroForOne: boolean;
|
|
40
|
+
poolAddress: string;
|
|
41
|
+
isApproved?: boolean;
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
export type DecodeStateMultiCallFunc = (
|
|
45
|
+
result: MultiResult<BytesLike> | BytesLike,
|
|
46
|
+
) => DecodedStateMultiCallResultWithRelativeBitmaps;
|
|
47
|
+
|
|
48
|
+
export type DexParams = {
|
|
49
|
+
quoter: Address;
|
|
50
|
+
factory: Address;
|
|
51
|
+
stateMulticall: Address;
|
|
52
|
+
supportedTickSpacings: bigint[];
|
|
53
|
+
chunksCount: number;
|
|
54
|
+
initRetryFrequency: number;
|
|
55
|
+
deployer?: Address;
|
|
56
|
+
subgraphURL: string;
|
|
57
|
+
initHash: string;
|
|
58
|
+
stateMultiCallAbi?: AbiItem[];
|
|
59
|
+
decodeStateMultiCallResultWithRelativeBitmaps?: DecodeStateMultiCallFunc;
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
export type UniswapV3SimpleSwapSellParam = {
|
|
63
|
+
path: string;
|
|
64
|
+
recipient: Address;
|
|
65
|
+
deadline: string;
|
|
66
|
+
amountIn: NumberAsString;
|
|
67
|
+
amountOutMinimum: NumberAsString;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export type UniswapV3SimpleSwapBuyParam = {
|
|
71
|
+
path: string;
|
|
72
|
+
recipient: Address;
|
|
73
|
+
deadline: string;
|
|
74
|
+
amountOut: NumberAsString;
|
|
75
|
+
amountInMaximum: NumberAsString;
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export type UniswapV3SimpleSwapParams =
|
|
79
|
+
| UniswapV3SimpleSwapSellParam
|
|
80
|
+
| UniswapV3SimpleSwapBuyParam;
|
|
81
|
+
|
|
82
|
+
export type SolidlyV3SimpleSwapParams = {
|
|
83
|
+
recipient: string;
|
|
84
|
+
zeroForOne: boolean;
|
|
85
|
+
amountSpecified: NumberAsString;
|
|
86
|
+
sqrtPriceLimitX96: NumberAsString;
|
|
87
|
+
};
|
|
88
|
+
|
|
89
|
+
export type UniswapV3Param = [
|
|
90
|
+
fromToken: Address,
|
|
91
|
+
toToken: Address,
|
|
92
|
+
exchange: Address,
|
|
93
|
+
fromAmount: NumberAsString,
|
|
94
|
+
toAmount: NumberAsString,
|
|
95
|
+
expectedAmount: NumberAsString,
|
|
96
|
+
feePercent: NumberAsString,
|
|
97
|
+
deadline: NumberAsString,
|
|
98
|
+
partner: Address,
|
|
99
|
+
isApproved: boolean,
|
|
100
|
+
beneficiary: Address,
|
|
101
|
+
path: string,
|
|
102
|
+
permit: string,
|
|
103
|
+
uuid: string,
|
|
104
|
+
];
|
|
105
|
+
|
|
106
|
+
export enum UniswapV3Functions {
|
|
107
|
+
exactInput = 'exactInput',
|
|
108
|
+
exactOutput = 'exactOutput',
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export type TickInfoMappings = {
|
|
112
|
+
index: number;
|
|
113
|
+
value: TickInfo;
|
|
114
|
+
};
|
|
115
|
+
|
|
116
|
+
export type TickBitMapMappings = {
|
|
117
|
+
index: number;
|
|
118
|
+
value: bigint;
|
|
119
|
+
};
|
|
120
|
+
|
|
121
|
+
export type OutputResult = {
|
|
122
|
+
outputs: bigint[];
|
|
123
|
+
tickCounts: number[];
|
|
124
|
+
};
|
|
125
|
+
|
|
126
|
+
// Just rewrote every type with BigNumber basically
|
|
127
|
+
|
|
128
|
+
export type TickBitMapMappingsWithBigNumber = {
|
|
129
|
+
index: number;
|
|
130
|
+
value: BigNumber;
|
|
131
|
+
};
|
|
132
|
+
|
|
133
|
+
export type TickInfoWithBigNumber = {
|
|
134
|
+
initialized: boolean;
|
|
135
|
+
liquidityGross: BigNumber;
|
|
136
|
+
liquidityNet: BigNumber;
|
|
137
|
+
};
|
|
138
|
+
|
|
139
|
+
export type TickInfoMappingsWithBigNumber = {
|
|
140
|
+
index: number;
|
|
141
|
+
value: TickInfoWithBigNumber;
|
|
142
|
+
};
|
|
143
|
+
|
|
144
|
+
export type DecodedStateMultiCallResultWithRelativeBitmaps = {
|
|
145
|
+
pool: Address;
|
|
146
|
+
blockTimestamp: BigNumber;
|
|
147
|
+
slot0: {
|
|
148
|
+
sqrtPriceX96: BigNumber;
|
|
149
|
+
tick: number;
|
|
150
|
+
fee: number;
|
|
151
|
+
unlocked: boolean;
|
|
152
|
+
};
|
|
153
|
+
liquidity: BigNumber;
|
|
154
|
+
tickSpacing: number;
|
|
155
|
+
maxLiquidityPerTick: BigNumber;
|
|
156
|
+
tickBitmap: TickBitMapMappingsWithBigNumber[];
|
|
157
|
+
ticks: TickInfoMappingsWithBigNumber[];
|
|
158
|
+
};
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { BytesLike, ethers } from 'ethers';
|
|
2
|
+
import { assert } from 'ts-essentials';
|
|
3
|
+
import { extractSuccessAndValue } from '../../lib/decoders';
|
|
4
|
+
import { MultiResult } from '../../lib/multi-wrapper';
|
|
5
|
+
import { DexConfigMap } from '../../types';
|
|
6
|
+
import {
|
|
7
|
+
DexParams,
|
|
8
|
+
DecodedStateMultiCallResultWithRelativeBitmaps,
|
|
9
|
+
} from './types';
|
|
10
|
+
|
|
11
|
+
export function getUniswapV3DexKey(UniswapV3Config: DexConfigMap<DexParams>) {
|
|
12
|
+
const UniswapV3Keys = Object.keys(UniswapV3Config);
|
|
13
|
+
if (UniswapV3Keys.length !== 1) {
|
|
14
|
+
throw new Error(
|
|
15
|
+
`UniswapV3 key in UniswapV3Config is not unique. Update relevant places (optimizer) or fix config issue. Received: ${JSON.stringify(
|
|
16
|
+
UniswapV3Config,
|
|
17
|
+
(_0, value) => (typeof value === 'bigint' ? value.toString() : value),
|
|
18
|
+
)}`,
|
|
19
|
+
);
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
return UniswapV3Keys[0].toLowerCase();
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
export function decodeStateMultiCallResultWithRelativeBitmaps(
|
|
26
|
+
result: MultiResult<BytesLike> | BytesLike,
|
|
27
|
+
): DecodedStateMultiCallResultWithRelativeBitmaps {
|
|
28
|
+
const [isSuccess, toDecode] = extractSuccessAndValue(result);
|
|
29
|
+
|
|
30
|
+
assert(
|
|
31
|
+
isSuccess && toDecode !== '0x',
|
|
32
|
+
`decodeStateMultiCallResultWithRelativeBitmaps failed to get decodable result: ${result}`,
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
const decoded = ethers.utils.defaultAbiCoder.decode(
|
|
36
|
+
[
|
|
37
|
+
// I don't want to pass here any interface, so I just use it in ethers format
|
|
38
|
+
`
|
|
39
|
+
tuple(
|
|
40
|
+
address pool,
|
|
41
|
+
uint256 blockTimestamp,
|
|
42
|
+
tuple(
|
|
43
|
+
uint160 sqrtPriceX96,
|
|
44
|
+
int24 tick,
|
|
45
|
+
uint24 fee,
|
|
46
|
+
bool unlocked,
|
|
47
|
+
) slot0,
|
|
48
|
+
uint128 liquidity,
|
|
49
|
+
int24 tickSpacing,
|
|
50
|
+
uint128 maxLiquidityPerTick,
|
|
51
|
+
tuple(
|
|
52
|
+
int16 index,
|
|
53
|
+
uint256 value,
|
|
54
|
+
)[] tickBitmap,
|
|
55
|
+
tuple(
|
|
56
|
+
int24 index,
|
|
57
|
+
tuple(
|
|
58
|
+
uint128 liquidityGross,
|
|
59
|
+
int128 liquidityNet,
|
|
60
|
+
bool initialized,
|
|
61
|
+
) value,
|
|
62
|
+
)[] ticks
|
|
63
|
+
)
|
|
64
|
+
`,
|
|
65
|
+
],
|
|
66
|
+
toDecode,
|
|
67
|
+
)[0];
|
|
68
|
+
// This conversion is not precise, because when we decode, we have more values
|
|
69
|
+
// But I typed only the ones that are used later
|
|
70
|
+
return decoded as DecodedStateMultiCallResultWithRelativeBitmaps;
|
|
71
|
+
}
|
|
@@ -13,6 +13,7 @@ import { Interface } from '@ethersproject/abi';
|
|
|
13
13
|
import ERC20ABI from '../../abi/erc20.json';
|
|
14
14
|
import StateMulticallABI from '../../abi/uniswap-v3/UniswapV3StateMulticall.abi.json';
|
|
15
15
|
import { AbiItem } from 'web3-utils';
|
|
16
|
+
import { decodeStateMultiCallResultWithRelativeBitmaps } from './utils';
|
|
16
17
|
|
|
17
18
|
jest.setTimeout(300 * 1000);
|
|
18
19
|
const dexKey = 'UniswapV3';
|
|
@@ -100,6 +101,7 @@ describe('UniswapV3 Event', function () {
|
|
|
100
101
|
StateMulticallABI as AbiItem[],
|
|
101
102
|
config.stateMulticall,
|
|
102
103
|
),
|
|
104
|
+
decodeStateMultiCallResultWithRelativeBitmaps,
|
|
103
105
|
new Interface(ERC20ABI),
|
|
104
106
|
config.factory,
|
|
105
107
|
poolFeeCode,
|
|
@@ -155,6 +157,7 @@ describe('UniswapV3 Event', function () {
|
|
|
155
157
|
StateMulticallABI as AbiItem[],
|
|
156
158
|
config.stateMulticall,
|
|
157
159
|
),
|
|
160
|
+
decodeStateMultiCallResultWithRelativeBitmaps,
|
|
158
161
|
new Interface(ERC20ABI),
|
|
159
162
|
_config.factory,
|
|
160
163
|
_feeCode,
|
package/src/types.ts
CHANGED
package/tests/constants-e2e.ts
CHANGED
|
@@ -65,6 +65,10 @@ export const Tokens: {
|
|
|
65
65
|
address: '0xae7ab96520de3a18e5e111b5eaab095312d7fe84',
|
|
66
66
|
decimals: 18,
|
|
67
67
|
},
|
|
68
|
+
SDEX: {
|
|
69
|
+
address: '0x5DE8ab7E27f6E7A1fFf3E5B337584Aa43961BEeF',
|
|
70
|
+
decimals: 18,
|
|
71
|
+
},
|
|
68
72
|
wstETH: {
|
|
69
73
|
address: '0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0',
|
|
70
74
|
decimals: 18,
|
|
@@ -453,6 +457,10 @@ export const Tokens: {
|
|
|
453
457
|
address: '0xa3fa99a148fa48d14ed51d610c367c61876997f1',
|
|
454
458
|
decimals: 18,
|
|
455
459
|
},
|
|
460
|
+
SDEX: {
|
|
461
|
+
address: '0x6899fAcE15c14348E1759371049ab64A3a06bFA6',
|
|
462
|
+
decimals: 18,
|
|
463
|
+
},
|
|
456
464
|
},
|
|
457
465
|
[Network.FANTOM]: {
|
|
458
466
|
FTM: { address: ETHER_ADDRESS, decimals: 18 },
|
|
@@ -615,6 +623,10 @@ export const Tokens: {
|
|
|
615
623
|
address: '0x1d2f0da169ceb9fc7b3144628db156f3f6c60dbe',
|
|
616
624
|
decimals: 18,
|
|
617
625
|
},
|
|
626
|
+
SDEX: {
|
|
627
|
+
address: '0xFdc66A08B0d0Dc44c17bbd471B88f49F50CdD20F',
|
|
628
|
+
decimals: 18,
|
|
629
|
+
},
|
|
618
630
|
},
|
|
619
631
|
[Network.AVALANCHE]: {
|
|
620
632
|
USDCe: {
|
|
@@ -869,6 +881,10 @@ export const Tokens: {
|
|
|
869
881
|
address: '0x32eb7902d4134bf98a28b963d26de779af92a212',
|
|
870
882
|
decimals: 18,
|
|
871
883
|
},
|
|
884
|
+
SDEX: {
|
|
885
|
+
address: '0xabD587f2607542723b17f14d00d99b987C29b074',
|
|
886
|
+
decimals: 18,
|
|
887
|
+
},
|
|
872
888
|
},
|
|
873
889
|
[Network.OPTIMISM]: {
|
|
874
890
|
DAI: {
|
|
@@ -976,6 +992,10 @@ export const Tokens: {
|
|
|
976
992
|
address: '0xbeFD5C25A59ef2C1316c5A4944931171F30Cd3E4',
|
|
977
993
|
decimals: 18,
|
|
978
994
|
},
|
|
995
|
+
SDEX: {
|
|
996
|
+
address: '0xFd4330b0312fdEEC6d4225075b82E00493FF2e3f',
|
|
997
|
+
decimals: 18,
|
|
998
|
+
},
|
|
979
999
|
ETH: { address: ETHER_ADDRESS, decimals: 18 },
|
|
980
1000
|
},
|
|
981
1001
|
};
|
|
@@ -1047,6 +1067,7 @@ export const Holders: {
|
|
|
1047
1067
|
wibBTC: '0xFbdCA68601f835b27790D98bbb8eC7f05FDEaA9B',
|
|
1048
1068
|
MATIC: '0x7073783eee7e9b3e6e4ddac4d7f49dc46044dd9a',
|
|
1049
1069
|
POL: '0x57B6Ad484ccdd902C4419424bA648ba6Ed45dc68',
|
|
1070
|
+
SDEX: '0xB0470cF15B22a6A32c49a7C20E3821B944A76058',
|
|
1050
1071
|
},
|
|
1051
1072
|
[Network.ROPSTEN]: {
|
|
1052
1073
|
ETH: '0x43262A12d8610AA70C15DbaeAC321d51613c9071',
|
|
@@ -1082,6 +1103,7 @@ export const Holders: {
|
|
|
1082
1103
|
amUSDT: '0x832b11846a27b3ba25d68ae80c39fab155d18c49',
|
|
1083
1104
|
amUSDC: '0x6e7f19cd23049c7118e14470e2bf85d2e26ee0ae',
|
|
1084
1105
|
MAI: '0x9a8cf02f3e56c664ce75e395d0e4f3dc3dafe138',
|
|
1106
|
+
SDEX: '0xB0470cF15B22a6A32c49a7C20E3821B944A76058',
|
|
1085
1107
|
},
|
|
1086
1108
|
[Network.FANTOM]: {
|
|
1087
1109
|
DAI: '0x370f4b2dcf75c94d8d4450b493661a9c6170d0b5',
|
|
@@ -1125,6 +1147,7 @@ export const Holders: {
|
|
|
1125
1147
|
FRAX: '0xEB4576fE753DAB07635c0Bb6c8f0A355e1Db5d31',
|
|
1126
1148
|
frxETH: '0xf324adC872005197A6f7DAE214d3b63aa0C3625F',
|
|
1127
1149
|
USDFI: '0x2E00D722e091836B39Db3e4dcE6eE51c90c5B221',
|
|
1150
|
+
SDEX: '0xB0470cF15B22a6A32c49a7C20E3821B944A76058',
|
|
1128
1151
|
BNBx: '0xFF4606bd3884554CDbDabd9B6e25E2faD4f6fc54',
|
|
1129
1152
|
},
|
|
1130
1153
|
[Network.AVALANCHE]: {
|
|
@@ -1186,6 +1209,7 @@ export const Holders: {
|
|
|
1186
1209
|
ZYB: '0x3ec0eddcd1e25025077327886a78133589082fb2',
|
|
1187
1210
|
WBTC: '0xd9d611c6943585bc0e18e51034af8fa28778f7da',
|
|
1188
1211
|
RDNT: '0x62383739d68dd0f844103db8dfb05a7eded5bbe6',
|
|
1212
|
+
SDEX: '0xb0470cf15b22a6a32c49a7c20e3821b944a76058',
|
|
1189
1213
|
wstETH: '0x916792f7734089470de27297903bed8a4630b26d',
|
|
1190
1214
|
},
|
|
1191
1215
|
[Network.OPTIMISM]: {
|
|
@@ -1218,10 +1242,11 @@ export const Holders: {
|
|
|
1218
1242
|
ETH: '0xdd9176ea3e7559d6b68b537ef555d3e89403f742',
|
|
1219
1243
|
MAV: '0x7499785aa5d1bdf0a0ac862c1ef3698d3cba6568',
|
|
1220
1244
|
USDC: '0xaac391f166f33cdaefaa4afa6616a3bea66b694d',
|
|
1221
|
-
USDbC: '
|
|
1245
|
+
USDbC: '0xc68a33de9ceac7bdaed242ae1dc40d673ed4f643',
|
|
1222
1246
|
DAI: '0x20f03e26968b179025f65c1f4afadfd3959c8d03',
|
|
1223
1247
|
BAL: '0x854b004700885a61107b458f11ecc169a019b764',
|
|
1224
1248
|
GOLD: '0x1374c25b3710758c326ee0c70ec48b595d5ccf8c',
|
|
1249
|
+
SDEX: '0xa5d378c05192e3f1f365d6298921879c4d51c5a3',
|
|
1225
1250
|
},
|
|
1226
1251
|
};
|
|
1227
1252
|
|
package/.vscode/launch.json
DELETED
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": "0.2.0",
|
|
3
|
-
"configurations": [
|
|
4
|
-
{
|
|
5
|
-
"type": "node",
|
|
6
|
-
"request": "launch",
|
|
7
|
-
"name": "Current",
|
|
8
|
-
"program": "${file}",
|
|
9
|
-
"preLaunchTask": "npm: build",
|
|
10
|
-
"sourceMaps": true,
|
|
11
|
-
"smartStep": true,
|
|
12
|
-
"internalConsoleOptions": "openOnSessionStart",
|
|
13
|
-
"outFiles": ["${workspaceFolder}/build/**/*.js"]
|
|
14
|
-
},
|
|
15
|
-
{
|
|
16
|
-
"type": "node",
|
|
17
|
-
"request": "launch",
|
|
18
|
-
"name": "Debug dex integration",
|
|
19
|
-
"program": "${workspaceFolder}/node_modules/ts-node/dist/bin.js",
|
|
20
|
-
"args": [
|
|
21
|
-
"--project",
|
|
22
|
-
"tsconfig.json",
|
|
23
|
-
// "${workspaceFolder}/src/dex/algebra/scripts/validate-state.ts",
|
|
24
|
-
"${workspaceFolder}/scripts/dex-integration.ts",
|
|
25
|
-
"test",
|
|
26
|
-
"wombat"
|
|
27
|
-
],
|
|
28
|
-
"console": "integratedTerminal",
|
|
29
|
-
"internalConsoleOptions": "neverOpen",
|
|
30
|
-
"runtimeArgs": ["--nolazy"],
|
|
31
|
-
"sourceMaps": true,
|
|
32
|
-
"smartStep": true,
|
|
33
|
-
"skipFiles": ["<node_internals>/**"],
|
|
34
|
-
"cwd": "${workspaceFolder}"
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
"type": "node",
|
|
38
|
-
"name": "Jest file",
|
|
39
|
-
"request": "launch",
|
|
40
|
-
"runtimeExecutable": "${workspaceRoot}/node_modules/.bin/jest",
|
|
41
|
-
"args": [
|
|
42
|
-
"${fileBasenameNoExtension}",
|
|
43
|
-
"--runInBand",
|
|
44
|
-
"--watch",
|
|
45
|
-
"--coverage=false",
|
|
46
|
-
"--no-cache"
|
|
47
|
-
],
|
|
48
|
-
"cwd": "${workspaceRoot}",
|
|
49
|
-
"console": "integratedTerminal",
|
|
50
|
-
"internalConsoleOptions": "neverOpen",
|
|
51
|
-
"sourceMaps": true
|
|
52
|
-
}
|
|
53
|
-
]
|
|
54
|
-
}
|
package/.vscode/settings.json
DELETED
package/.vscode/tasks.json
DELETED