@paraswap/dex-lib 2.42.26 → 2.42.27-solidly-v3

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/build/abi/smardex/all/smardex-router.json +648 -0
  2. package/build/abi/smardex/layer-1/smardex-factory.json +242 -0
  3. package/build/abi/smardex/layer-1/smardex-pool.json +506 -0
  4. package/build/abi/smardex/layer-2/smardex-factory.json +185 -0
  5. package/build/abi/smardex/layer-2/smardex-pool.json +578 -0
  6. package/build/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
  7. package/build/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
  8. package/build/config.js +20 -10
  9. package/build/config.js.map +1 -1
  10. package/build/dex/index.js +4 -0
  11. package/build/dex/index.js.map +1 -1
  12. package/build/dex/smardex/config.d.ts +4 -0
  13. package/build/dex/smardex/config.js +64 -0
  14. package/build/dex/smardex/config.js.map +1 -0
  15. package/build/dex/smardex/constants.d.ts +18 -0
  16. package/build/dex/smardex/constants.js +33 -0
  17. package/build/dex/smardex/constants.js.map +1 -0
  18. package/build/dex/smardex/sdk/constants.d.ts +6 -0
  19. package/build/dex/smardex/sdk/constants.js +13 -0
  20. package/build/dex/smardex/sdk/constants.js.map +1 -0
  21. package/build/dex/smardex/sdk/core.d.ts +113 -0
  22. package/build/dex/smardex/sdk/core.js +499 -0
  23. package/build/dex/smardex/sdk/core.js.map +1 -0
  24. package/build/dex/smardex/sdk/errors.d.ts +15 -0
  25. package/build/dex/smardex/sdk/errors.js +22 -0
  26. package/build/dex/smardex/sdk/errors.js.map +1 -0
  27. package/build/dex/smardex/sdk/types.d.ts +62 -0
  28. package/build/dex/smardex/sdk/types.js +3 -0
  29. package/build/dex/smardex/sdk/types.js.map +1 -0
  30. package/build/dex/smardex/sdk/utils.d.ts +44 -0
  31. package/build/dex/smardex/sdk/utils.js +133 -0
  32. package/build/dex/smardex/sdk/utils.js.map +1 -0
  33. package/build/dex/smardex/smardex-event-pool.d.ts +28 -0
  34. package/build/dex/smardex/smardex-event-pool.js +119 -0
  35. package/build/dex/smardex/smardex-event-pool.js.map +1 -0
  36. package/build/dex/smardex/smardex.d.ts +65 -0
  37. package/build/dex/smardex/smardex.js +519 -0
  38. package/build/dex/smardex/smardex.js.map +1 -0
  39. package/build/dex/smardex/types.d.ts +55 -0
  40. package/build/dex/smardex/types.js +3 -0
  41. package/build/dex/smardex/types.js.map +1 -0
  42. package/build/dex/solidly-v3/config.d.ts +9 -0
  43. package/build/dex/solidly-v3/config.js +58 -0
  44. package/build/dex/solidly-v3/config.js.map +1 -0
  45. package/build/dex/solidly-v3/constants.d.ts +27 -0
  46. package/build/dex/solidly-v3/constants.js +34 -0
  47. package/build/dex/solidly-v3/constants.js.map +1 -0
  48. package/build/dex/solidly-v3/contract-math/BitMath.d.ts +4 -0
  49. package/build/dex/solidly-v3/contract-math/BitMath.js +93 -0
  50. package/build/dex/solidly-v3/contract-math/BitMath.js.map +1 -0
  51. package/build/dex/solidly-v3/contract-math/FixedPoint128.d.ts +3 -0
  52. package/build/dex/solidly-v3/contract-math/FixedPoint128.js +8 -0
  53. package/build/dex/solidly-v3/contract-math/FixedPoint128.js.map +1 -0
  54. package/build/dex/solidly-v3/contract-math/FixedPoint96.d.ts +4 -0
  55. package/build/dex/solidly-v3/contract-math/FixedPoint96.js +9 -0
  56. package/build/dex/solidly-v3/contract-math/FixedPoint96.js.map +1 -0
  57. package/build/dex/solidly-v3/contract-math/FullMath.d.ts +4 -0
  58. package/build/dex/solidly-v3/contract-math/FullMath.js +19 -0
  59. package/build/dex/solidly-v3/contract-math/FullMath.js.map +1 -0
  60. package/build/dex/solidly-v3/contract-math/LiquidityMath.d.ts +3 -0
  61. package/build/dex/solidly-v3/contract-math/LiquidityMath.js +22 -0
  62. package/build/dex/solidly-v3/contract-math/LiquidityMath.js.map +1 -0
  63. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.d.ts +10 -0
  64. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js +91 -0
  65. package/build/dex/solidly-v3/contract-math/SqrtPriceMath.js.map +1 -0
  66. package/build/dex/solidly-v3/contract-math/SwapMath.d.ts +8 -0
  67. package/build/dex/solidly-v3/contract-math/SwapMath.js +70 -0
  68. package/build/dex/solidly-v3/contract-math/SwapMath.js.map +1 -0
  69. package/build/dex/solidly-v3/contract-math/Tick.d.ts +7 -0
  70. package/build/dex/solidly-v3/contract-math/Tick.js +36 -0
  71. package/build/dex/solidly-v3/contract-math/Tick.js.map +1 -0
  72. package/build/dex/solidly-v3/contract-math/TickBitMap.d.ts +7 -0
  73. package/build/dex/solidly-v3/contract-math/TickBitMap.js +84 -0
  74. package/build/dex/solidly-v3/contract-math/TickBitMap.js.map +1 -0
  75. package/build/dex/solidly-v3/contract-math/TickMath.d.ts +8 -0
  76. package/build/dex/solidly-v3/contract-math/TickMath.js +162 -0
  77. package/build/dex/solidly-v3/contract-math/TickMath.js.map +1 -0
  78. package/build/dex/solidly-v3/contract-math/UnsafeMath.d.ts +3 -0
  79. package/build/dex/solidly-v3/contract-math/UnsafeMath.js +10 -0
  80. package/build/dex/solidly-v3/contract-math/UnsafeMath.js.map +1 -0
  81. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.d.ts +31 -0
  82. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js +363 -0
  83. package/build/dex/solidly-v3/contract-math/uniswap-v3-math.js.map +1 -0
  84. package/build/dex/solidly-v3/contract-math/utils.d.ts +7 -0
  85. package/build/dex/solidly-v3/contract-math/utils.js +39 -0
  86. package/build/dex/solidly-v3/contract-math/utils.js.map +1 -0
  87. package/build/dex/solidly-v3/solidly-v3-pool.d.ts +44 -0
  88. package/build/dex/solidly-v3/solidly-v3-pool.js +298 -0
  89. package/build/dex/solidly-v3/solidly-v3-pool.js.map +1 -0
  90. package/build/dex/solidly-v3/solidly-v3.d.ts +64 -0
  91. package/build/dex/solidly-v3/solidly-v3.js +565 -0
  92. package/build/dex/solidly-v3/solidly-v3.js.map +1 -0
  93. package/build/dex/solidly-v3/types.d.ts +131 -0
  94. package/build/dex/solidly-v3/types.js +9 -0
  95. package/build/dex/solidly-v3/types.js.map +1 -0
  96. package/build/dex/solidly-v3/utils.d.ts +6 -0
  97. package/build/dex/solidly-v3/utils.js +53 -0
  98. package/build/dex/solidly-v3/utils.js.map +1 -0
  99. package/build/dex/uniswap-v3/contract-math/Oracle.js.map +1 -1
  100. package/build/types.d.ts +1 -0
  101. package/package.json +3 -2
  102. package/src/abi/smardex/all/smardex-router.json +648 -0
  103. package/src/abi/smardex/layer-1/smardex-factory.json +242 -0
  104. package/src/abi/smardex/layer-1/smardex-pool.json +506 -0
  105. package/src/abi/smardex/layer-2/smardex-factory.json +185 -0
  106. package/src/abi/smardex/layer-2/smardex-pool.json +578 -0
  107. package/src/abi/solidly-v3/SolidlyV3Pool.abi.json +738 -0
  108. package/src/abi/solidly-v3/SolidlyV3StateMulticall.abi.json +375 -0
  109. package/src/config.ts +21 -10
  110. package/src/dex/index.ts +4 -0
  111. package/src/dex/smardex/config.ts +67 -0
  112. package/src/dex/smardex/constants.ts +35 -0
  113. package/src/dex/smardex/sdk/constants.ts +10 -0
  114. package/src/dex/smardex/sdk/core.ts +832 -0
  115. package/src/dex/smardex/sdk/errors.ts +18 -0
  116. package/src/dex/smardex/sdk/types.ts +68 -0
  117. package/src/dex/smardex/sdk/utils.ts +156 -0
  118. package/src/dex/smardex/smardex-e2e.test.ts +275 -0
  119. package/src/dex/smardex/smardex-event-pool.ts +164 -0
  120. package/src/dex/smardex/smardex-events.test.ts +297 -0
  121. package/src/dex/smardex/smardex-integration.test.ts +258 -0
  122. package/src/dex/smardex/smardex.ts +770 -0
  123. package/src/dex/smardex/types.ts +69 -0
  124. package/src/dex/solidly-v3/config.ts +64 -0
  125. package/src/dex/solidly-v3/constants.ts +42 -0
  126. package/src/dex/solidly-v3/contract-math/BitMath.ts +90 -0
  127. package/src/dex/solidly-v3/contract-math/FixedPoint128.ts +3 -0
  128. package/src/dex/solidly-v3/contract-math/FixedPoint96.ts +4 -0
  129. package/src/dex/solidly-v3/contract-math/FullMath.ts +30 -0
  130. package/src/dex/solidly-v3/contract-math/LiquidityMath.ts +17 -0
  131. package/src/dex/solidly-v3/contract-math/SqrtPriceMath.ts +226 -0
  132. package/src/dex/solidly-v3/contract-math/SwapMath.ts +139 -0
  133. package/src/dex/solidly-v3/contract-math/Tick.ts +66 -0
  134. package/src/dex/solidly-v3/contract-math/TickBitMap.ts +123 -0
  135. package/src/dex/solidly-v3/contract-math/TickMath.ts +211 -0
  136. package/src/dex/solidly-v3/contract-math/UnsafeMath.ts +5 -0
  137. package/src/dex/solidly-v3/contract-math/uniswap-v3-math.ts +570 -0
  138. package/src/dex/solidly-v3/contract-math/utils.ts +50 -0
  139. package/src/dex/solidly-v3/solidly-v3-e2e.test.ts +124 -0
  140. package/src/dex/solidly-v3/solidly-v3-events.test.ts +144 -0
  141. package/src/dex/solidly-v3/solidly-v3-integration.test.ts +358 -0
  142. package/src/dex/solidly-v3/solidly-v3-pool.ts +494 -0
  143. package/src/dex/solidly-v3/solidly-v3.ts +934 -0
  144. package/src/dex/solidly-v3/types.ts +156 -0
  145. package/src/dex/solidly-v3/utils.ts +71 -0
  146. package/src/dex/uniswap-v3/contract-math/Oracle.ts +204 -204
  147. package/src/dex/uniswap-v3/uniswap-v3-events.test.ts +3 -0
  148. package/src/types.ts +1 -0
  149. package/tests/constants-e2e.ts +26 -1
  150. package/.vscode/launch.json +0 -54
  151. package/.vscode/settings.json +0 -2
  152. package/.vscode/tasks.json +0 -15
@@ -0,0 +1,131 @@
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
+ export declare type TickInfo = {
7
+ liquidityGross: bigint;
8
+ liquidityNet: bigint;
9
+ initialized: boolean;
10
+ };
11
+ export declare type Slot0 = {
12
+ sqrtPriceX96: bigint;
13
+ tick: bigint;
14
+ fee: bigint;
15
+ };
16
+ export declare type PoolState = {
17
+ pool: string;
18
+ blockTimestamp: bigint;
19
+ tickSpacing: bigint;
20
+ slot0: Slot0;
21
+ liquidity: bigint;
22
+ maxLiquidityPerTick: bigint;
23
+ tickBitmap: Record<NumberAsString, bigint>;
24
+ ticks: Record<NumberAsString, TickInfo>;
25
+ isValid: boolean;
26
+ startTickBitmap: bigint;
27
+ lowestKnownTick: bigint;
28
+ highestKnownTick: bigint;
29
+ balance0: bigint;
30
+ balance1: bigint;
31
+ };
32
+ export declare type SolidlyV3Data = {
33
+ zeroForOne: boolean;
34
+ poolAddress: string;
35
+ isApproved?: boolean;
36
+ };
37
+ export declare type DecodeStateMultiCallFunc = (result: MultiResult<BytesLike> | BytesLike) => DecodedStateMultiCallResultWithRelativeBitmaps;
38
+ export declare type DexParams = {
39
+ quoter: Address;
40
+ factory: Address;
41
+ stateMulticall: Address;
42
+ supportedTickSpacings: bigint[];
43
+ chunksCount: number;
44
+ initRetryFrequency: number;
45
+ deployer?: Address;
46
+ subgraphURL: string;
47
+ initHash: string;
48
+ stateMultiCallAbi?: AbiItem[];
49
+ decodeStateMultiCallResultWithRelativeBitmaps?: DecodeStateMultiCallFunc;
50
+ };
51
+ export declare type UniswapV3SimpleSwapSellParam = {
52
+ path: string;
53
+ recipient: Address;
54
+ deadline: string;
55
+ amountIn: NumberAsString;
56
+ amountOutMinimum: NumberAsString;
57
+ };
58
+ export declare type UniswapV3SimpleSwapBuyParam = {
59
+ path: string;
60
+ recipient: Address;
61
+ deadline: string;
62
+ amountOut: NumberAsString;
63
+ amountInMaximum: NumberAsString;
64
+ };
65
+ export declare type UniswapV3SimpleSwapParams = UniswapV3SimpleSwapSellParam | UniswapV3SimpleSwapBuyParam;
66
+ export declare type SolidlyV3SimpleSwapParams = {
67
+ recipient: string;
68
+ zeroForOne: boolean;
69
+ amountSpecified: NumberAsString;
70
+ sqrtPriceLimitX96: NumberAsString;
71
+ };
72
+ export declare type UniswapV3Param = [
73
+ fromToken: Address,
74
+ toToken: Address,
75
+ exchange: Address,
76
+ fromAmount: NumberAsString,
77
+ toAmount: NumberAsString,
78
+ expectedAmount: NumberAsString,
79
+ feePercent: NumberAsString,
80
+ deadline: NumberAsString,
81
+ partner: Address,
82
+ isApproved: boolean,
83
+ beneficiary: Address,
84
+ path: string,
85
+ permit: string,
86
+ uuid: string
87
+ ];
88
+ export declare enum UniswapV3Functions {
89
+ exactInput = "exactInput",
90
+ exactOutput = "exactOutput"
91
+ }
92
+ export declare type TickInfoMappings = {
93
+ index: number;
94
+ value: TickInfo;
95
+ };
96
+ export declare type TickBitMapMappings = {
97
+ index: number;
98
+ value: bigint;
99
+ };
100
+ export declare type OutputResult = {
101
+ outputs: bigint[];
102
+ tickCounts: number[];
103
+ };
104
+ export declare type TickBitMapMappingsWithBigNumber = {
105
+ index: number;
106
+ value: BigNumber;
107
+ };
108
+ export declare type TickInfoWithBigNumber = {
109
+ initialized: boolean;
110
+ liquidityGross: BigNumber;
111
+ liquidityNet: BigNumber;
112
+ };
113
+ export declare type TickInfoMappingsWithBigNumber = {
114
+ index: number;
115
+ value: TickInfoWithBigNumber;
116
+ };
117
+ export declare type DecodedStateMultiCallResultWithRelativeBitmaps = {
118
+ pool: Address;
119
+ blockTimestamp: BigNumber;
120
+ slot0: {
121
+ sqrtPriceX96: BigNumber;
122
+ tick: number;
123
+ fee: number;
124
+ unlocked: boolean;
125
+ };
126
+ liquidity: BigNumber;
127
+ tickSpacing: number;
128
+ maxLiquidityPerTick: BigNumber;
129
+ tickBitmap: TickBitMapMappingsWithBigNumber[];
130
+ ticks: TickInfoMappingsWithBigNumber[];
131
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UniswapV3Functions = void 0;
4
+ var UniswapV3Functions;
5
+ (function (UniswapV3Functions) {
6
+ UniswapV3Functions["exactInput"] = "exactInput";
7
+ UniswapV3Functions["exactOutput"] = "exactOutput";
8
+ })(UniswapV3Functions = exports.UniswapV3Functions || (exports.UniswapV3Functions = {}));
9
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/solidly-v3/types.ts"],"names":[],"mappings":";;;AAuGA,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,+CAAyB,CAAA;IACzB,iDAA2B,CAAA;AAC7B,CAAC,EAHW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAG7B"}
@@ -0,0 +1,6 @@
1
+ import { BytesLike } from 'ethers';
2
+ import { MultiResult } from '../../lib/multi-wrapper';
3
+ import { DexConfigMap } from '../../types';
4
+ import { DexParams, DecodedStateMultiCallResultWithRelativeBitmaps } from './types';
5
+ export declare function getUniswapV3DexKey(UniswapV3Config: DexConfigMap<DexParams>): string;
6
+ export declare function decodeStateMultiCallResultWithRelativeBitmaps(result: MultiResult<BytesLike> | BytesLike): DecodedStateMultiCallResultWithRelativeBitmaps;
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.decodeStateMultiCallResultWithRelativeBitmaps = exports.getUniswapV3DexKey = void 0;
4
+ const ethers_1 = require("ethers");
5
+ const ts_essentials_1 = require("ts-essentials");
6
+ const decoders_1 = require("../../lib/decoders");
7
+ function getUniswapV3DexKey(UniswapV3Config) {
8
+ const UniswapV3Keys = Object.keys(UniswapV3Config);
9
+ if (UniswapV3Keys.length !== 1) {
10
+ throw new Error(`UniswapV3 key in UniswapV3Config is not unique. Update relevant places (optimizer) or fix config issue. Received: ${JSON.stringify(UniswapV3Config, (_0, value) => (typeof value === 'bigint' ? value.toString() : value))}`);
11
+ }
12
+ return UniswapV3Keys[0].toLowerCase();
13
+ }
14
+ exports.getUniswapV3DexKey = getUniswapV3DexKey;
15
+ function decodeStateMultiCallResultWithRelativeBitmaps(result) {
16
+ const [isSuccess, toDecode] = (0, decoders_1.extractSuccessAndValue)(result);
17
+ (0, ts_essentials_1.assert)(isSuccess && toDecode !== '0x', `decodeStateMultiCallResultWithRelativeBitmaps failed to get decodable result: ${result}`);
18
+ const decoded = ethers_1.ethers.utils.defaultAbiCoder.decode([
19
+ // I don't want to pass here any interface, so I just use it in ethers format
20
+ `
21
+ tuple(
22
+ address pool,
23
+ uint256 blockTimestamp,
24
+ tuple(
25
+ uint160 sqrtPriceX96,
26
+ int24 tick,
27
+ uint24 fee,
28
+ bool unlocked,
29
+ ) slot0,
30
+ uint128 liquidity,
31
+ int24 tickSpacing,
32
+ uint128 maxLiquidityPerTick,
33
+ tuple(
34
+ int16 index,
35
+ uint256 value,
36
+ )[] tickBitmap,
37
+ tuple(
38
+ int24 index,
39
+ tuple(
40
+ uint128 liquidityGross,
41
+ int128 liquidityNet,
42
+ bool initialized,
43
+ ) value,
44
+ )[] ticks
45
+ )
46
+ `,
47
+ ], toDecode)[0];
48
+ // This conversion is not precise, because when we decode, we have more values
49
+ // But I typed only the ones that are used later
50
+ return decoded;
51
+ }
52
+ exports.decodeStateMultiCallResultWithRelativeBitmaps = decodeStateMultiCallResultWithRelativeBitmaps;
53
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/dex/solidly-v3/utils.ts"],"names":[],"mappings":";;;AAAA,mCAA2C;AAC3C,iDAAuC;AACvC,iDAA4D;AAQ5D,SAAgB,kBAAkB,CAAC,eAAwC;IACzE,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;IACnD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9B,MAAM,IAAI,KAAK,CACb,qHAAqH,IAAI,CAAC,SAAS,CACjI,eAAe,EACf,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CACtE,EAAE,CACJ,CAAC;KACH;IAED,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;AACxC,CAAC;AAZD,gDAYC;AAED,SAAgB,6CAA6C,CAC3D,MAA0C;IAE1C,MAAM,CAAC,SAAS,EAAE,QAAQ,CAAC,GAAG,IAAA,iCAAsB,EAAC,MAAM,CAAC,CAAC;IAE7D,IAAA,sBAAM,EACJ,SAAS,IAAI,QAAQ,KAAK,IAAI,EAC9B,iFAAiF,MAAM,EAAE,CAC1F,CAAC;IAEF,MAAM,OAAO,GAAG,eAAM,CAAC,KAAK,CAAC,eAAe,CAAC,MAAM,CACjD;QACE,6EAA6E;QAC7E;;;;;;;;;;;;;;;;;;;;;;;;;;KA0BD;KACA,EACD,QAAQ,CACT,CAAC,CAAC,CAAC,CAAC;IACL,8EAA8E;IAC9E,gDAAgD;IAChD,OAAO,OAAyD,CAAC;AACnE,CAAC;AA9CD,sGA8CC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Oracle.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v3/contract-math/Oracle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Oracle.js","sourceRoot":"","sources":["../../../../src/dex/uniswap-v3/contract-math/Oracle.ts"],"names":[],"mappings":"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"}
package/build/types.d.ts CHANGED
@@ -236,6 +236,7 @@ export declare type Config = {
236
236
  uniswapV3EventLoggingSampleRate?: number;
237
237
  swaapV2AuthToken?: string;
238
238
  dexalotAuthToken?: string;
239
+ smardexSubgraphAuthToken?: string;
239
240
  forceRpcFallbackDexs: string[];
240
241
  };
241
242
  export declare type BigIntAsString = string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "2.42.26",
3
+ "version": "2.42.27-solidly-v3",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -51,6 +51,7 @@
51
51
  },
52
52
  "dependencies": {
53
53
  "@0x/utils": "^4.5.2",
54
+ "@ethersproject/abi": "^5.7.0",
54
55
  "@hashflow/sdk": "1.2.4",
55
56
  "@hashflow/taker-js": "0.3.4",
56
57
  "@paraswap/core": "1.1.0",
@@ -59,7 +60,7 @@
59
60
  "bignumber.js": "9.1.0",
60
61
  "cross-fetch": "^3.1.5",
61
62
  "es6-promise": "^4.2.8",
62
- "ethers": "^5.6.5",
63
+ "ethers": "^5.7.2",
63
64
  "joi": "^17.7.0",
64
65
  "lens.ts": "^0.5.1",
65
66
  "lodash": "4.17.21",