@paraswap/dex-lib 3.8.25 → 3.8.26-aave-gsm

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 (224) hide show
  1. package/build/abi/Aave_GSM.json +751 -0
  2. package/build/abi/{integral/pool.json → inception/inception-ineth-pool.json} +558 -537
  3. package/build/abi/inception/inception-ineth.json +609 -0
  4. package/build/abi/inception/inception-ratio-feed.json +93 -0
  5. package/build/abi/inception/inception-vault.json +991 -0
  6. package/build/dex/aave-gsm/aave-gsm.d.ts +33 -0
  7. package/build/dex/aave-gsm/aave-gsm.js +278 -0
  8. package/build/dex/aave-gsm/aave-gsm.js.map +1 -0
  9. package/build/dex/aave-gsm/config.d.ts +3 -0
  10. package/build/dex/aave-gsm/config.js +17 -0
  11. package/build/dex/aave-gsm/config.js.map +1 -0
  12. package/build/dex/aave-gsm/types.d.ts +11 -0
  13. package/build/dex/aave-gsm/types.js +3 -0
  14. package/build/dex/aave-gsm/types.js.map +1 -0
  15. package/build/dex/aave-v1/aave-v1.d.ts +2 -1
  16. package/build/dex/aave-v1/aave-v1.js +22 -0
  17. package/build/dex/aave-v1/aave-v1.js.map +1 -1
  18. package/build/dex/generic-rfq/rate-fetcher.js +1 -1
  19. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  20. package/build/dex/idle-dao/idle-dao-pool.d.ts +56 -0
  21. package/build/dex/idle-dao/idle-dao-pool.js +176 -0
  22. package/build/dex/idle-dao/idle-dao-pool.js.map +1 -0
  23. package/build/dex/idle-dao/idle-dao-pooling-pool.d.ts +16 -0
  24. package/build/dex/idle-dao/idle-dao-pooling-pool.js +57 -0
  25. package/build/dex/idle-dao/idle-dao-pooling-pool.js.map +1 -0
  26. package/build/dex/idle-dao/scripts.d.ts +9 -0
  27. package/build/dex/idle-dao/scripts.js +552 -0
  28. package/build/dex/idle-dao/scripts.js.map +1 -0
  29. package/build/dex/inception/config.d.ts +5 -0
  30. package/build/dex/inception/config.js +112 -0
  31. package/build/dex/inception/config.js.map +1 -0
  32. package/build/dex/inception/inception-event-pool.d.ts +25 -0
  33. package/build/dex/inception/inception-event-pool.js +57 -0
  34. package/build/dex/inception/inception-event-pool.js.map +1 -0
  35. package/build/dex/{integral/integral.d.ts → inception/inception-native.d.ts} +21 -19
  36. package/build/dex/inception/inception-native.js +131 -0
  37. package/build/dex/inception/inception-native.js.map +1 -0
  38. package/build/dex/inception/inception-pool.d.ts +18 -0
  39. package/build/dex/inception/inception-pool.js +32 -0
  40. package/build/dex/inception/inception-pool.js.map +1 -0
  41. package/build/dex/inception/inception-price-feed.d.ts +19 -0
  42. package/build/dex/inception/inception-price-feed.js +51 -0
  43. package/build/dex/inception/inception-price-feed.js.map +1 -0
  44. package/build/dex/inception/inception.d.ts +44 -0
  45. package/build/dex/inception/inception.js +177 -0
  46. package/build/dex/inception/inception.js.map +1 -0
  47. package/build/dex/inception/tokens.d.ts +9 -0
  48. package/build/dex/inception/tokens.js +28 -0
  49. package/build/dex/inception/tokens.js.map +1 -0
  50. package/build/dex/inception/types.d.ts +22 -0
  51. package/build/dex/inception/types.js +3 -0
  52. package/build/dex/inception/types.js.map +1 -0
  53. package/build/dex/inception/utils.d.ts +7 -0
  54. package/build/dex/inception/utils.js +58 -0
  55. package/build/dex/inception/utils.js.map +1 -0
  56. package/build/dex/index.js +2 -0
  57. package/build/dex/index.js.map +1 -1
  58. package/build/dex/platypus/platypus.d.ts +2 -1
  59. package/build/dex/platypus/platypus.js +31 -0
  60. package/build/dex/platypus/platypus.js.map +1 -1
  61. package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
  62. package/build/dex/swaap-v1/swaap-v1.js +10 -0
  63. package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
  64. package/package.json +1 -1
  65. package/src/abi/Aave_GSM.json +751 -0
  66. package/src/dex/aave-gsm/aave-gsm-e2e.test.ts +109 -0
  67. package/src/dex/aave-gsm/aave-gsm-integration.test.ts +318 -0
  68. package/src/dex/aave-gsm/aave-gsm.ts +359 -0
  69. package/src/dex/aave-gsm/config.ts +16 -0
  70. package/src/dex/aave-gsm/types.ts +15 -0
  71. package/src/dex/generic-rfq/rate-fetcher.ts +6 -5
  72. package/src/dex/index.ts +2 -0
  73. package/.vscode/launch.json +0 -16
  74. package/.vscode/settings.json +0 -3
  75. package/build/abi/Uncompressor.json +0 -250
  76. package/build/abi/integral/factory.json +0 -333
  77. package/build/abi/integral/oracle.json +0 -501
  78. package/build/abi/integral/relayer.json +0 -1536
  79. package/build/dex/bProtocol.d.ts +0 -18
  80. package/build/dex/bProtocol.js +0 -39
  81. package/build/dex/bProtocol.js.map +0 -1
  82. package/build/dex/bancor.d.ts +0 -26
  83. package/build/dex/bancor.js +0 -58
  84. package/build/dex/bancor.js.map +0 -1
  85. package/build/dex/compound.d.ts +0 -18
  86. package/build/dex/compound.js +0 -46
  87. package/build/dex/compound.js.map +0 -1
  88. package/build/dex/curve-v2.d.ts +0 -58
  89. package/build/dex/curve-v2.js +0 -180
  90. package/build/dex/curve-v2.js.map +0 -1
  91. package/build/dex/dodo-v1.d.ts +0 -33
  92. package/build/dex/dodo-v1.js +0 -63
  93. package/build/dex/dodo-v1.js.map +0 -1
  94. package/build/dex/etherfi/etherfi.d.ts +0 -26
  95. package/build/dex/etherfi/etherfi.js +0 -96
  96. package/build/dex/etherfi/etherfi.js.map +0 -1
  97. package/build/dex/integral/config.d.ts +0 -4
  98. package/build/dex/integral/config.js +0 -20
  99. package/build/dex/integral/config.js.map +0 -1
  100. package/build/dex/integral/context.d.ts +0 -40
  101. package/build/dex/integral/context.js +0 -158
  102. package/build/dex/integral/context.js.map +0 -1
  103. package/build/dex/integral/helpers.d.ts +0 -17
  104. package/build/dex/integral/helpers.js +0 -157
  105. package/build/dex/integral/helpers.js.map +0 -1
  106. package/build/dex/integral/integral-factory.d.ts +0 -24
  107. package/build/dex/integral/integral-factory.js +0 -95
  108. package/build/dex/integral/integral-factory.js.map +0 -1
  109. package/build/dex/integral/integral-pool.d.ts +0 -50
  110. package/build/dex/integral/integral-pool.js +0 -149
  111. package/build/dex/integral/integral-pool.js.map +0 -1
  112. package/build/dex/integral/integral-pricing.d.ts +0 -18
  113. package/build/dex/integral/integral-pricing.js +0 -114
  114. package/build/dex/integral/integral-pricing.js.map +0 -1
  115. package/build/dex/integral/integral-relayer.d.ts +0 -42
  116. package/build/dex/integral/integral-relayer.js +0 -192
  117. package/build/dex/integral/integral-relayer.js.map +0 -1
  118. package/build/dex/integral/integral-token.d.ts +0 -27
  119. package/build/dex/integral/integral-token.js +0 -59
  120. package/build/dex/integral/integral-token.js.map +0 -1
  121. package/build/dex/integral/integral.js +0 -376
  122. package/build/dex/integral/integral.js.map +0 -1
  123. package/build/dex/integral/types.d.ts +0 -85
  124. package/build/dex/integral/types.js +0 -9
  125. package/build/dex/integral/types.js.map +0 -1
  126. package/build/dex/integral/utils-e2e.d.ts +0 -9
  127. package/build/dex/integral/utils-e2e.js +0 -131
  128. package/build/dex/integral/utils-e2e.js.map +0 -1
  129. package/build/dex/integral/utils.d.ts +0 -17
  130. package/build/dex/integral/utils.js +0 -94
  131. package/build/dex/integral/utils.js.map +0 -1
  132. package/build/dex/lido.d.ts +0 -19
  133. package/build/dex/lido.js +0 -42
  134. package/build/dex/lido.js.map +0 -1
  135. package/build/dex/onebit.d.ts +0 -25
  136. package/build/dex/onebit.js +0 -42
  137. package/build/dex/onebit.js.map +0 -1
  138. package/build/dex/sdai/config.d.ts +0 -11
  139. package/build/dex/sdai/config.js +0 -21
  140. package/build/dex/sdai/config.js.map +0 -1
  141. package/build/dex/sdai/constants.d.ts +0 -2
  142. package/build/dex/sdai/constants.js +0 -6
  143. package/build/dex/sdai/constants.js.map +0 -1
  144. package/build/dex/sdai/scripts/validate-state.d.ts +0 -1
  145. package/build/dex/sdai/scripts/validate-state.js +0 -102
  146. package/build/dex/sdai/scripts/validate-state.js.map +0 -1
  147. package/build/dex/sdai/sdai-pool.d.ts +0 -16
  148. package/build/dex/sdai/sdai-pool.js +0 -85
  149. package/build/dex/sdai/sdai-pool.js.map +0 -1
  150. package/build/dex/sdai/sdai.d.ts +0 -51
  151. package/build/dex/sdai/sdai.js +0 -172
  152. package/build/dex/sdai/sdai.js.map +0 -1
  153. package/build/dex/sdai/types.d.ts +0 -21
  154. package/build/dex/sdai/types.js +0 -11
  155. package/build/dex/sdai/types.js.map +0 -1
  156. package/build/dex/sdai/utils.d.ts +0 -4
  157. package/build/dex/sdai/utils.js +0 -39
  158. package/build/dex/sdai/utils.js.map +0 -1
  159. package/build/dex/smoothy.d.ts +0 -26
  160. package/build/dex/smoothy.js +0 -48
  161. package/build/dex/smoothy.js.map +0 -1
  162. package/build/dex/stable-pool.d.ts +0 -28
  163. package/build/dex/stable-pool.js +0 -62
  164. package/build/dex/stable-pool.js.map +0 -1
  165. package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
  166. package/build/dex/trader-joe-v2.1/optimizer.js +0 -44
  167. package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
  168. package/build/dex/trader-joe-v2.1.d.ts +0 -43
  169. package/build/dex/trader-joe-v2.1.js +0 -79
  170. package/build/dex/trader-joe-v2.1.js.map +0 -1
  171. package/build/executor/compressor/Compressor.d.ts +0 -23
  172. package/build/executor/compressor/Compressor.js +0 -144
  173. package/build/executor/compressor/Compressor.js.map +0 -1
  174. package/build/executor/compressor/compress.d.ts +0 -17
  175. package/build/executor/compressor/compress.js +0 -187
  176. package/build/executor/compressor/compress.js.map +0 -1
  177. package/build/executor/compressor/compress_functions/addressSubstitution.d.ts +0 -6
  178. package/build/executor/compressor/compress_functions/addressSubstitution.js +0 -29
  179. package/build/executor/compressor/compress_functions/addressSubstitution.js.map +0 -1
  180. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.d.ts +0 -10
  181. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.js +0 -40
  182. package/build/executor/compressor/compress_functions/addressSubstitutionFromObject.js.map +0 -1
  183. package/build/executor/compressor/compress_functions/byteSubstitution.d.ts +0 -11
  184. package/build/executor/compressor/compress_functions/byteSubstitution.js +0 -64
  185. package/build/executor/compressor/compress_functions/byteSubstitution.js.map +0 -1
  186. package/build/executor/compressor/compress_functions/ffSubstitution.d.ts +0 -7
  187. package/build/executor/compressor/compress_functions/ffSubstitution.js +0 -54
  188. package/build/executor/compressor/compress_functions/ffSubstitution.js.map +0 -1
  189. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.d.ts +0 -8
  190. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.js +0 -67
  191. package/build/executor/compressor/compress_functions/findLongestAndSubstitute.js.map +0 -1
  192. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.d.ts +0 -8
  193. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.js +0 -61
  194. package/build/executor/compressor/compress_functions/findLongestAndSubstitute_old.js.map +0 -1
  195. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.d.ts +0 -6
  196. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.js +0 -37
  197. package/build/executor/compressor/compress_functions/reverseAddressSubstitution.js.map +0 -1
  198. package/build/executor/compressor/compress_functions/searchUnusedBytes.d.ts +0 -9
  199. package/build/executor/compressor/compress_functions/searchUnusedBytes.js +0 -33
  200. package/build/executor/compressor/compress_functions/searchUnusedBytes.js.map +0 -1
  201. package/build/executor/compressor/fetchSaved.d.ts +0 -0
  202. package/build/executor/compressor/fetchSaved.js +0 -17
  203. package/build/executor/compressor/fetchSaved.js.map +0 -1
  204. package/build/executor/compressor/utils/computeCostL2.d.ts +0 -2
  205. package/build/executor/compressor/utils/computeCostL2.js +0 -14
  206. package/build/executor/compressor/utils/computeCostL2.js.map +0 -1
  207. package/build/executor/compressor/utils/findLongestDuplicatedString.d.ts +0 -2
  208. package/build/executor/compressor/utils/findLongestDuplicatedString.js +0 -30
  209. package/build/executor/compressor/utils/findLongestDuplicatedString.js.map +0 -1
  210. package/build/executor/compressor/utils/getAllIndexes.d.ts +0 -2
  211. package/build/executor/compressor/utils/getAllIndexes.js +0 -12
  212. package/build/executor/compressor/utils/getAllIndexes.js.map +0 -1
  213. package/build/executor/compressor/utils/getByteForAddress.d.ts +0 -2
  214. package/build/executor/compressor/utils/getByteForAddress.js +0 -14
  215. package/build/executor/compressor/utils/getByteForAddress.js.map +0 -1
  216. package/build/executor/compressor/utils/intTo2Bytes.d.ts +0 -2
  217. package/build/executor/compressor/utils/intTo2Bytes.js +0 -14
  218. package/build/executor/compressor/utils/intTo2Bytes.js.map +0 -1
  219. package/build/executor/compressor/utils/intTo3Bytes.d.ts +0 -2
  220. package/build/executor/compressor/utils/intTo3Bytes.js +0 -18
  221. package/build/executor/compressor/utils/intTo3Bytes.js.map +0 -1
  222. package/build/executor/compressor/utils/intToByte.d.ts +0 -2
  223. package/build/executor/compressor/utils/intToByte.js +0 -10
  224. package/build/executor/compressor/utils/intToByte.js.map +0 -1
@@ -0,0 +1,33 @@
1
+ import { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, PoolLiquidity, Logger, NumberAsString, DexExchangeParam } from '../../types';
2
+ import { SwapSide, Network } from '../../constants';
3
+ import { IDex } from '../../dex/idex';
4
+ import { IDexHelper } from '../../dex-helper/idex-helper';
5
+ import { AaveGsmData, DexParams } from './types';
6
+ import { SimpleExchange } from '../simple-exchange';
7
+ import { Interface } from '@ethersproject/abi';
8
+ export declare class AaveGsm extends SimpleExchange implements IDex<AaveGsmData> {
9
+ readonly network: Network;
10
+ readonly dexKey: string;
11
+ readonly dexHelper: IDexHelper;
12
+ static readonly gsmInterface: Interface;
13
+ protected config: DexParams;
14
+ readonly hasConstantPriceLargeAmounts = false;
15
+ readonly needWrapNative = false;
16
+ readonly isFeeOnTransferSupported = false;
17
+ static dexKeysWithNetwork: {
18
+ key: string;
19
+ networks: Network[];
20
+ }[];
21
+ logger: Logger;
22
+ constructor(network: Network, dexKey: string, dexHelper: IDexHelper);
23
+ getAdapters(side: SwapSide): {
24
+ name: string;
25
+ index: number;
26
+ }[] | null;
27
+ getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
28
+ getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<null | ExchangePrices<AaveGsmData>>;
29
+ getCalldataGasCost(poolPrices: PoolPrices<AaveGsmData>): number | number[];
30
+ getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AaveGsmData, side: SwapSide): AdapterExchangeParam;
31
+ getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: AaveGsmData, side: SwapSide): Promise<DexExchangeParam>;
32
+ getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
33
+ }
@@ -0,0 +1,278 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ var __importDefault = (this && this.__importDefault) || function (mod) {
26
+ return (mod && mod.__esModule) ? mod : { "default": mod };
27
+ };
28
+ Object.defineProperty(exports, "__esModule", { value: true });
29
+ exports.AaveGsm = void 0;
30
+ const constants_1 = require("../../constants");
31
+ const CALLDATA_GAS_COST = __importStar(require("../../calldata-gas-cost"));
32
+ const utils_1 = require("../../utils");
33
+ const simple_exchange_1 = require("../simple-exchange");
34
+ const config_1 = require("./config");
35
+ const Aave_GSM_json_1 = __importDefault(require("../../abi/Aave_GSM.json"));
36
+ const abi_1 = require("@ethersproject/abi");
37
+ const decoders_1 = require("../../lib/decoders");
38
+ const utils_2 = require("ethers/lib/utils");
39
+ class AaveGsm extends simple_exchange_1.SimpleExchange {
40
+ constructor(network, dexKey, dexHelper) {
41
+ super(dexHelper, dexKey);
42
+ this.network = network;
43
+ this.dexKey = dexKey;
44
+ this.dexHelper = dexHelper;
45
+ this.hasConstantPriceLargeAmounts = false;
46
+ this.needWrapNative = false;
47
+ this.isFeeOnTransferSupported = false;
48
+ const config = config_1.AaveGsmConfig[dexKey][network];
49
+ this.config = {
50
+ GSM_USDT: config.GSM_USDT.toLowerCase(),
51
+ GSM_USDC: config.GSM_USDC.toLowerCase(),
52
+ USDT: config.USDT.toLowerCase(),
53
+ USDC: config.USDC.toLowerCase(),
54
+ GHO: config.GHO.toLowerCase(),
55
+ };
56
+ this.logger = dexHelper.getLogger(dexKey);
57
+ }
58
+ getAdapters(side) {
59
+ return null;
60
+ }
61
+ async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
62
+ const srcTokenAddress = srcToken.address.toLowerCase();
63
+ const destTokenAddress = destToken.address.toLowerCase();
64
+ if ((srcTokenAddress === this.config.GHO &&
65
+ destTokenAddress === this.config.USDT) ||
66
+ (srcTokenAddress === this.config.USDT &&
67
+ destTokenAddress === this.config.GHO)) {
68
+ return [`${this.dexKey}_${this.config.GSM_USDT}`];
69
+ }
70
+ else if ((srcTokenAddress === this.config.GHO &&
71
+ destTokenAddress === this.config.USDC) ||
72
+ (srcTokenAddress === this.config.USDC &&
73
+ destTokenAddress === this.config.GHO)) {
74
+ return [`${this.dexKey}_${this.config.GSM_USDC}`];
75
+ }
76
+ else {
77
+ return [];
78
+ }
79
+ }
80
+ // Returns pool prices for amounts.
81
+ // If limitPools is defined only pools in limitPools
82
+ // should be used. If limitPools is undefined then
83
+ // any pools can be used.
84
+ async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
85
+ const srcTokenAddress = srcToken.address.toLowerCase();
86
+ const destTokenAddress = destToken.address.toLowerCase();
87
+ if (!((srcTokenAddress == this.config.GHO &&
88
+ (destTokenAddress == this.config.USDC ||
89
+ destTokenAddress == this.config.USDT)) ||
90
+ (destTokenAddress == this.config.GHO &&
91
+ (srcTokenAddress == this.config.USDC ||
92
+ srcTokenAddress == this.config.USDT)))) {
93
+ return null;
94
+ }
95
+ let endpoint;
96
+ let target;
97
+ let resultIsGho;
98
+ if (srcTokenAddress == this.config.GHO && side == constants_1.SwapSide.BUY) {
99
+ endpoint = 'getGhoAmountForBuyAsset';
100
+ resultIsGho = true;
101
+ }
102
+ else if (srcTokenAddress == this.config.GHO && side == constants_1.SwapSide.SELL) {
103
+ endpoint = 'getAssetAmountForBuyAsset';
104
+ resultIsGho = false;
105
+ }
106
+ else if (destTokenAddress == this.config.GHO && side == constants_1.SwapSide.SELL) {
107
+ endpoint = 'getGhoAmountForSellAsset';
108
+ resultIsGho = true;
109
+ }
110
+ else {
111
+ endpoint = 'getAssetAmountForSellAsset';
112
+ resultIsGho = false;
113
+ }
114
+ if (srcTokenAddress == this.config.USDT ||
115
+ destTokenAddress == this.config.USDT) {
116
+ target = this.config.GSM_USDT;
117
+ }
118
+ else {
119
+ target = this.config.GSM_USDC;
120
+ }
121
+ const unit = (0, utils_2.parseUnits)('1', side == constants_1.SwapSide.SELL ? srcToken.decimals : destToken.decimals).toBigInt();
122
+ const amountsWithUnit = [...amounts, unit];
123
+ const calls = amountsWithUnit.map(amount => ({
124
+ target,
125
+ callData: AaveGsm.gsmInterface.encodeFunctionData(endpoint, [amount]),
126
+ decodeFunction: (result) => {
127
+ return (0, decoders_1.generalDecoder)(result, ['uint256', 'uint256', 'uint256', 'uint256'], {
128
+ underlying: 0n,
129
+ gho: 0n,
130
+ }, value => ({
131
+ underlying: value[0].toBigInt(),
132
+ gho: value[1].toBigInt(),
133
+ }));
134
+ },
135
+ }));
136
+ let results = await this.dexHelper.multiWrapper.tryAggregate(true, calls, blockNumber);
137
+ const unitPriceResult = results.pop();
138
+ return [
139
+ {
140
+ unit: resultIsGho
141
+ ? unitPriceResult.returnData.gho
142
+ : unitPriceResult.returnData.underlying,
143
+ prices: results.map(result => resultIsGho ? result.returnData.gho : result.returnData.underlying),
144
+ data: {
145
+ exchange: this.dexKey,
146
+ },
147
+ poolAddresses: [target],
148
+ exchange: this.dexKey,
149
+ gasCost: endpoint.indexOf('BuyAsset') > 0 ? 80000 : 74000,
150
+ poolIdentifier: `${this.dexKey}_${target}`,
151
+ },
152
+ ];
153
+ }
154
+ // Returns estimated gas cost of calldata for this DEX in multiSwap
155
+ getCalldataGasCost(poolPrices) {
156
+ return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
157
+ }
158
+ getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
159
+ const { exchange } = data;
160
+ const payload = '';
161
+ return {
162
+ targetExchange: exchange,
163
+ payload,
164
+ networkFee: '0',
165
+ };
166
+ }
167
+ async getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side) {
168
+ const isSrcGho = srcToken.toLowerCase() === this.config.GHO;
169
+ const swapFunction = isSrcGho ? 'buyAsset' : 'sellAsset';
170
+ const ghoAmount = isSrcGho ? srcAmount : destAmount;
171
+ let assetAmount = isSrcGho ? destAmount : srcAmount;
172
+ const targetExchange = srcToken.toLowerCase() === this.config.USDT ||
173
+ destToken.toLowerCase() === this.config.USDT
174
+ ? this.config.GSM_USDT
175
+ : this.config.GSM_USDC;
176
+ if (BigInt(assetAmount) == 1n) {
177
+ const endpoint = isSrcGho
178
+ ? 'getAssetAmountForBuyAsset'
179
+ : 'getAssetAmountForSellAsset';
180
+ const calldata = {
181
+ target: targetExchange,
182
+ callData: AaveGsm.gsmInterface.encodeFunctionData(endpoint, [
183
+ ghoAmount,
184
+ ]),
185
+ decodeFunction: (result) => {
186
+ return (0, decoders_1.generalDecoder)(result, ['uint256', 'uint256', 'uint256', 'uint256'], {
187
+ underlying: 0n,
188
+ gho: 0n,
189
+ }, value => ({
190
+ underlying: value[0].toBigInt(),
191
+ gho: value[1].toBigInt(),
192
+ }));
193
+ },
194
+ };
195
+ const result = await this.dexHelper.multiWrapper.tryAggregate(true, [calldata]);
196
+ assetAmount = result[0].returnData.underlying.toString();
197
+ }
198
+ const exchangeData = AaveGsm.gsmInterface.encodeFunctionData(swapFunction, [
199
+ assetAmount,
200
+ recipient,
201
+ ]);
202
+ return {
203
+ needWrapNative: this.needWrapNative,
204
+ dexFuncHasRecipient: true,
205
+ exchangeData,
206
+ targetExchange,
207
+ returnAmountPos: isSrcGho ? 1 : 0,
208
+ };
209
+ }
210
+ // Returns list of top pools based on liquidity. Max
211
+ // limit number pools should be returned.
212
+ async getTopPoolsForToken(tokenAddress, limit) {
213
+ tokenAddress = tokenAddress.toLowerCase();
214
+ if (tokenAddress == this.config.GHO) {
215
+ return [
216
+ {
217
+ exchange: this.dexKey,
218
+ address: this.config.GSM_USDC,
219
+ connectorTokens: [
220
+ {
221
+ decimals: 6,
222
+ address: this.config.USDC,
223
+ },
224
+ ],
225
+ liquidityUSD: 1000000000, // Just returning a big number so this DEX will be preferred
226
+ },
227
+ {
228
+ exchange: this.dexKey,
229
+ address: this.config.GSM_USDT,
230
+ connectorTokens: [
231
+ {
232
+ decimals: 6,
233
+ address: this.config.USDT,
234
+ },
235
+ ],
236
+ liquidityUSD: 1000000000, // Just returning a big number so this DEX will be preferred
237
+ },
238
+ ];
239
+ }
240
+ else if (tokenAddress == this.config.USDC) {
241
+ return [
242
+ {
243
+ exchange: this.dexKey,
244
+ address: this.config.GSM_USDC,
245
+ connectorTokens: [
246
+ {
247
+ decimals: 18,
248
+ address: this.config.GHO,
249
+ },
250
+ ],
251
+ liquidityUSD: 1000000000, // Just returning a big number so this DEX will be preferred
252
+ },
253
+ ];
254
+ }
255
+ else if (tokenAddress == this.config.USDT) {
256
+ return [
257
+ {
258
+ exchange: this.dexKey,
259
+ address: this.config.GSM_USDT,
260
+ connectorTokens: [
261
+ {
262
+ decimals: 18,
263
+ address: this.config.GHO,
264
+ },
265
+ ],
266
+ liquidityUSD: 1000000000, // Just returning a big number so this DEX will be preferred
267
+ },
268
+ ];
269
+ }
270
+ else {
271
+ return [];
272
+ }
273
+ }
274
+ }
275
+ exports.AaveGsm = AaveGsm;
276
+ AaveGsm.gsmInterface = new abi_1.Interface(Aave_GSM_json_1.default);
277
+ AaveGsm.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.AaveGsmConfig);
278
+ //# sourceMappingURL=aave-gsm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aave-gsm.js","sourceRoot":"","sources":["../../../src/dex/aave-gsm/aave-gsm.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { DexParams } from './types';
2
+ import { DexConfigMap } from '../../types';
3
+ export declare const AaveGsmConfig: DexConfigMap<DexParams>;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AaveGsmConfig = void 0;
4
+ const constants_1 = require("../../constants");
5
+ const aave_address_book_1 = require("@bgd-labs/aave-address-book");
6
+ exports.AaveGsmConfig = {
7
+ AaveGsm: {
8
+ [constants_1.Network.MAINNET]: {
9
+ GSM_USDT: aave_address_book_1.MiscEthereum.GSM_USDT,
10
+ GSM_USDC: aave_address_book_1.MiscEthereum.GSM_USDC,
11
+ USDT: aave_address_book_1.AaveV3Ethereum.ASSETS.USDT.UNDERLYING,
12
+ USDC: aave_address_book_1.AaveV3Ethereum.ASSETS.USDC.UNDERLYING,
13
+ GHO: aave_address_book_1.AaveV3Ethereum.ASSETS.GHO.UNDERLYING,
14
+ },
15
+ },
16
+ };
17
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/aave-gsm/config.ts"],"names":[],"mappings":";;;AAEA,+CAAoD;AACpD,mEAA2E;AAE9D,QAAA,aAAa,GAA4B;IACpD,OAAO,EAAE;QACP,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE;YACjB,QAAQ,EAAE,gCAAY,CAAC,QAAQ;YAC/B,QAAQ,EAAE,gCAAY,CAAC,QAAQ;YAC/B,IAAI,EAAE,kCAAc,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU;YAC3C,IAAI,EAAE,kCAAc,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU;YAC3C,GAAG,EAAE,kCAAc,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU;SAC1C;KACF;CACF,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { Address } from '../../types';
2
+ export declare type AaveGsmData = {
3
+ exchange: Address;
4
+ };
5
+ export declare type DexParams = {
6
+ GSM_USDT: string;
7
+ GSM_USDC: string;
8
+ USDT: string;
9
+ USDC: string;
10
+ GHO: string;
11
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/aave-gsm/types.ts"],"names":[],"mappings":""}
@@ -1,5 +1,5 @@
1
1
  import { Interface } from '@ethersproject/abi';
2
- import { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, SimpleExchangeParam, PoolLiquidity, Logger } from '../../types';
2
+ import { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, SimpleExchangeParam, PoolLiquidity, Logger, NumberAsString, DexExchangeParam } from '../../types';
3
3
  import { SwapSide, Network } from '../../constants';
4
4
  import { IDex } from '../../dex/idex';
5
5
  import { IDexHelper } from '../../dex-helper/idex-helper';
@@ -28,6 +28,7 @@ export declare class AaveV1 extends SimpleExchange implements IDex<AaveV1Data, A
28
28
  getCalldataGasCost(poolPrices: PoolPrices<AaveV1Data>): number | number[];
29
29
  getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AaveV1Data, side: SwapSide): AdapterExchangeParam;
30
30
  getSimpleParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: AaveV1Data, side: SwapSide): Promise<SimpleExchangeParam>;
31
+ getDexParam(srcToken: Address, destToken: Address, srcAmount: NumberAsString, destAmount: NumberAsString, recipient: Address, data: AaveV1Data, side: SwapSide): DexExchangeParam;
31
32
  updatePoolState(): Promise<void>;
32
33
  getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
33
34
  }
@@ -139,6 +139,28 @@ class AaveV1 extends simple_exchange_1.SimpleExchange {
139
139
  const swapData = Interface.encodeFunctionData(swapFunction, swapFunctionParams);
140
140
  return this.buildSimpleParamWithoutWETHConversion(srcToken, amount, destToken, destAmount, swapData, swapCallee, spender);
141
141
  }
142
+ // DEAD
143
+ getDexParam(srcToken, destToken, srcAmount, destAmount, recipient, data, side) {
144
+ const amount = side === constants_1.SwapSide.SELL ? srcAmount : destAmount;
145
+ const [Interface, swapFunction, swapFunctionParams, swapCallee] = (() => {
146
+ if (data.fromAToken) {
147
+ return [this.aContract, AaveV1Functions.redeem, [amount], srcToken];
148
+ }
149
+ return [
150
+ this.aavePool,
151
+ AaveV1Functions.deposit,
152
+ [srcToken, amount, REF_CODE],
153
+ AAVE_LENDING_POOL,
154
+ ];
155
+ })();
156
+ const exchangeData = Interface.encodeFunctionData(swapFunction, swapFunctionParams);
157
+ return {
158
+ needWrapNative: this.needWrapNative,
159
+ dexFuncHasRecipient: false,
160
+ exchangeData,
161
+ targetExchange: swapCallee,
162
+ };
163
+ }
142
164
  // This is called once before getTopPoolsForToken is
143
165
  // called for multiple tokens. This can be helpful to
144
166
  // update common state required for calculating
@@ -1 +1 @@
1
- {"version":3,"file":"aave-v1.js","sourceRoot":"","sources":["../../../src/dex/aave-v1/aave-v1.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"aave-v1.js","sourceRoot":"","sources":["../../../src/dex/aave-v1/aave-v1.ts"],"names":[],"mappings":"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"}
@@ -259,11 +259,11 @@ class RateFetcher {
259
259
  ...this.config.firmRateConfig,
260
260
  timeout: GET_FIRM_RATE_TIMEOUT_MS,
261
261
  };
262
+ this.logger.info('FirmRate Request:', JSON.stringify((0, lodash_1.omit)(payload, 'secret')).replace(/(?:\r\n|\r|\n)/g, ' '));
262
263
  if (this.firmRateAuth) {
263
264
  this.firmRateAuth(payload);
264
265
  delete payload.secret;
265
266
  }
266
- this.logger.info('FirmRate Request:', JSON.stringify(payload).replace(/(?:\r\n|\r|\n)/g, ' '));
267
267
  const { data } = await this.dexHelper.httpRequest.request(payload);
268
268
  this.logger.info('FirmRate Response: ', JSON.stringify(data).replace(/(?:\r\n|\r|\n)/g, ' '));
269
269
  const firmRateResp = (0, validators_2.validateAndCast)(data, (0, validators_1.firmRateWithTakerValidator)(takerAddress));
@@ -1 +1 @@
1
- {"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/generic-rfq/rate-fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/generic-rfq/rate-fetcher.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import BigNumber from 'bignumber.js';
2
+ import { Contract } from 'web3-eth-contract';
3
+ import { Interface } from '@ethersproject/abi';
4
+ import { DeepReadonly } from 'ts-essentials';
5
+ import { Log, Logger } from '../../types';
6
+ import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
7
+ import { IDexHelper } from '../../dex-helper/idex-helper';
8
+ import { PoolState, IdleToken } from './types';
9
+ import { IdleDao } from './idle-dao';
10
+ declare type BlocksTransfers = Record<number, {
11
+ underlyingAmount: BigNumber;
12
+ idleAmount: BigNumber;
13
+ processed: boolean;
14
+ }>;
15
+ export declare class IdleDaoEventPool extends StatefulEventSubscriber<PoolState> {
16
+ readonly parentName: string;
17
+ protected network: number;
18
+ protected dexHelper: IDexHelper;
19
+ protected logger: Logger;
20
+ protected idleToken: IdleToken;
21
+ protected IdleDao: IdleDao;
22
+ handlers: {
23
+ [event: string]: (event: any, state: DeepReadonly<PoolState>, log: Readonly<Log>) => Promise<DeepReadonly<PoolState> | null>;
24
+ };
25
+ logDecoder: (log: Log) => any;
26
+ cdoContract: Contract;
27
+ poolInterface: Interface;
28
+ addressesSubscribed: string[];
29
+ blocksTransfers: BlocksTransfers;
30
+ constructor(parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, idleToken: IdleToken, IdleDao: IdleDao);
31
+ /**
32
+ * The function is called every time any of the subscribed
33
+ * addresses release log. The function accepts the current
34
+ * state, updates the state according to the log, and returns
35
+ * the updated state.
36
+ * @param state - Current state of event subscriber
37
+ * @param log - Log released by one of the subscribed addresses
38
+ * @returns Updates state of the event subscriber after the log
39
+ */
40
+ protected processLog(state: DeepReadonly<PoolState>, log: Readonly<Log>): Promise<DeepReadonly<PoolState> | null>;
41
+ /**
42
+ * The function generates state using on-chain calls. This
43
+ * function is called to regenerate state if the event based
44
+ * system fails to fetch events and the local state is no
45
+ * more correct.
46
+ * @param blockNumber - Blocknumber for which the state should
47
+ * should be generated
48
+ * @returns state of the event subscriber at blocknumber
49
+ */
50
+ generateState(blockNumber: number): Promise<DeepReadonly<PoolState>>;
51
+ setBlockState(blockNumber: number, state: PoolState): void;
52
+ handleCoinTransfer(event: any, state: PoolState, log: Log): Promise<DeepReadonly<PoolState> | null>;
53
+ processBlockTransfer(blockNumber: number, state: PoolState): PoolState;
54
+ handleCoinTransfer_old(event: any, state: PoolState, log: Log): Promise<DeepReadonly<PoolState> | null>;
55
+ }
56
+ export {};