@paraswap/dex-lib 4.1.7-pub-sub.2 → 4.1.7-pub-sub.4

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 (96) hide show
  1. package/build/dex/angle-staked-stable/angle-staked-stable.js +2 -1
  2. package/build/dex/angle-staked-stable/angle-staked-stable.js.map +1 -1
  3. package/build/dex/angle-transmuter/angle-transmuter.js.map +1 -1
  4. package/build/dex/balancer-v1/config.js +2 -1
  5. package/build/dex/balancer-v1/config.js.map +1 -1
  6. package/build/dex/dexalot/dexalot.d.ts +2 -9
  7. package/build/dex/dexalot/dexalot.js +18 -62
  8. package/build/dex/dexalot/dexalot.js.map +1 -1
  9. package/build/dex/dexalot/rate-fetcher.d.ts +19 -4
  10. package/build/dex/dexalot/rate-fetcher.js +112 -8
  11. package/build/dex/dexalot/rate-fetcher.js.map +1 -1
  12. package/build/dex/dexalot/types.d.ts +0 -1
  13. package/build/dex/generic-rfq/rate-fetcher.js +0 -12
  14. package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
  15. package/build/dex/hashflow/constants.d.ts +2 -2
  16. package/build/dex/hashflow/constants.js +2 -2
  17. package/build/dex/hashflow/hashflow.d.ts +1 -6
  18. package/build/dex/hashflow/hashflow.js +9 -34
  19. package/build/dex/hashflow/hashflow.js.map +1 -1
  20. package/build/dex/hashflow/rate-fetcher.d.ts +12 -2
  21. package/build/dex/hashflow/rate-fetcher.js +54 -6
  22. package/build/dex/hashflow/rate-fetcher.js.map +1 -1
  23. package/build/dex/hashflow/types.d.ts +0 -1
  24. package/build/dex/weth/weth.js +2 -1
  25. package/build/dex/weth/weth.js.map +1 -1
  26. package/build/lib/pub-sub.d.ts +0 -2
  27. package/build/lib/pub-sub.js +0 -12
  28. package/build/lib/pub-sub.js.map +1 -1
  29. package/build/pricing-helper.d.ts +1 -1
  30. package/build/pricing-helper.js +13 -9
  31. package/build/pricing-helper.js.map +1 -1
  32. package/build/types.d.ts +1 -0
  33. package/package.json +1 -1
  34. package/src/dex/aave-gsm/aave-gsm-gas-estimation.test.ts +32 -0
  35. package/src/dex/aave-v2/aave-v2-gas-estimation.test.ts +28 -0
  36. package/src/dex/aave-v3/aave-v3-gas-estimation.test.ts +66 -0
  37. package/src/dex/aave-v3-stata/aave-v3-stata-gas-estimation.test.ts +41 -0
  38. package/src/dex/aave-v3-stata-v2/aave-v3-stata-v2-gas-estimation.test.ts +41 -0
  39. package/src/dex/angle-staked-stable/angle-staked-stable-gas-estimation.test.ts +29 -0
  40. package/src/dex/angle-staked-stable/angle-staked-stable.ts +2 -1
  41. package/src/dex/angle-transmuter/angle-transmuter-gas-estimation.test.ts +41 -0
  42. package/src/dex/angle-transmuter/angle-transmuter.ts +0 -1
  43. package/src/dex/balancer-v1/balancer-v1-gas-estimation.test.ts +29 -0
  44. package/src/dex/balancer-v1/config.ts +2 -1
  45. package/src/dex/balancer-v2/balancer-v2-gas-estimation.test.ts +98 -0
  46. package/src/dex/balancer-v3/balancer-v3-gas-estimation.test.ts +30 -0
  47. package/src/dex/bancor/bancor-gas-estimation.test.ts +30 -0
  48. package/src/dex/bebop/bebop-gas-estimation.test.ts +30 -0
  49. package/src/dex/concentrator-arusd/concentrator-arusd-gas-estimation.test.ts +29 -0
  50. package/src/dex/curve-v1/curve-v1-gas-estimation.test.ts +29 -0
  51. package/src/dex/curve-v2/curve-v2-gas-estimation.test.ts +29 -0
  52. package/src/dex/dexalot/dexalot.ts +27 -127
  53. package/src/dex/dexalot/rate-fetcher.ts +219 -9
  54. package/src/dex/dexalot/types.ts +0 -1
  55. package/src/dex/fluid-dex/fluid-dex-gas-estimation.test.ts +29 -0
  56. package/src/dex/fx-protocol-rusd/fx-protocol-rusd-gas-estimation.test.ts +29 -0
  57. package/src/dex/generic-rfq/rate-fetcher.ts +0 -30
  58. package/src/dex/hashflow/constants.ts +2 -2
  59. package/src/dex/hashflow/hashflow-gas-estimation.test.ts +30 -0
  60. package/src/dex/hashflow/hashflow.ts +11 -67
  61. package/src/dex/hashflow/rate-fetcher.ts +106 -8
  62. package/src/dex/hashflow/types.ts +0 -1
  63. package/src/dex/idle-dao/idle-dao--gas-estimation.test.ts +30 -0
  64. package/src/dex/lido/lido-gas-estimation.test.ts +29 -0
  65. package/src/dex/lite-psm/lite-psm-gas-estimation.test.ts +34 -0
  66. package/src/dex/maker-psm/maker-psm-gas-estimation.test.ts +34 -0
  67. package/src/dex/maverick-v1/maverick-v1-gas-estimation.test.ts +29 -0
  68. package/src/dex/maverick-v2/maverick-v2-gas-estimation.test.ts +29 -0
  69. package/src/dex/pancakeswap-v3/pancakeswap-v3-gas-estimation.test.ts +29 -0
  70. package/src/dex/polygon-migrator/polygon-migrator-gas-estimation.test.ts +41 -0
  71. package/src/dex/sky-converter/sky-converter-gas-estimation.test.ts +78 -0
  72. package/src/dex/solidly/solidly-gas-estimation.test.ts +29 -0
  73. package/src/dex/solidly-v3/solidly-v3-gas-estimation.test.ts +29 -0
  74. package/src/dex/spark/spark-gas-estimation.test.ts +29 -0
  75. package/src/dex/stader/stader-gas-estimation.test.ts +29 -0
  76. package/src/dex/stkgho/stkgho-gas-estimation.test.ts +29 -0
  77. package/src/dex/swaap-v2/swaap-v2-estimation.test.ts +29 -0
  78. package/src/dex/swell/swell-estimation.test.ts +29 -0
  79. package/src/dex/trader-joe-v2.1/trader-joe-v2.1-gas-estimation.test.ts +29 -0
  80. package/src/dex/uniswap-v2/uniswap-v2-gas-estimation.test.ts +98 -0
  81. package/src/dex/uniswap-v3/uniswap-v3-gas-estimation.test.ts +98 -0
  82. package/src/dex/usual/usual-gas-estimation.test.ts +54 -0
  83. package/src/dex/usual-pp/usual-pp-gas-estimation.test.ts +29 -0
  84. package/src/dex/weth/weth-gas-estimation.test.ts +42 -0
  85. package/src/dex/weth/weth.ts +3 -1
  86. package/src/dex/wombat/wombat-gas-estimation.test.ts +29 -0
  87. package/src/dex/wsteth/wsteth-gas-estimation.test.ts +41 -0
  88. package/src/dex/wusdm/wusdm-gas-estimation.test.ts +41 -0
  89. package/src/lib/pub-sub.ts +0 -27
  90. package/src/pricing-helper.ts +19 -11
  91. package/src/types.ts +1 -0
  92. package/tests/constants-e2e.ts +8 -0
  93. package/tests/tenderly-simulation-new.test.ts +151 -0
  94. package/tests/tenderly-simulation-new.ts +698 -0
  95. package/tests/token-storage-slots.json +532 -0
  96. package/tests/utils-e2e.ts +137 -1
@@ -1 +1 @@
1
- {"version":3,"file":"hashflow.js","sourceRoot":"","sources":["../../../src/dex/hashflow/hashflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hashflow.js","sourceRoot":"","sources":["../../../src/dex/hashflow/hashflow.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
+ import { MarketMakersResponse, PriceLevelsResponse } from '@hashflow/taker-js/dist/types/rest';
1
2
  import { Network } from '../../constants';
2
3
  import { IDexHelper } from '../../dex-helper';
3
- import { Logger } from '../../types';
4
+ import { Address, Logger } from '../../types';
4
5
  import { HashflowRateFetcherConfig } from './types';
5
6
  export declare class RateFetcher {
6
7
  private dexHelper;
@@ -8,14 +9,23 @@ export declare class RateFetcher {
8
9
  private network;
9
10
  private logger;
10
11
  private rateFetcher;
12
+ private ratePubSub;
11
13
  private pricesCacheKey;
12
14
  private pricesCacheTTL;
13
15
  private marketMakersFetcher;
14
16
  private marketMakersCacheKey;
15
17
  private marketMakersCacheTTL;
18
+ private blacklistedPubSub;
16
19
  constructor(dexHelper: IDexHelper, dexKey: string, network: Network, logger: Logger, config: HashflowRateFetcherConfig);
17
- start(): void;
20
+ start(): Promise<void>;
18
21
  stop(): void;
19
22
  private handleMarketMakersResponse;
20
23
  private handleRatesResponse;
24
+ getCachedMarketMakers(): Promise<MarketMakersResponse['marketMakers'] | null>;
25
+ getCachedLevels(): Promise<PriceLevelsResponse['levels'] | null>;
26
+ isBlacklisted(txOrigin: Address): Promise<boolean>;
27
+ setBlacklist(txOrigin: Address, ttl?: number): Promise<boolean>;
28
+ getAllBlacklisted(): Promise<Address[]>;
29
+ getBlackListKey(address: Address): string;
30
+ getAddressFromBlackListKey(key: Address): string;
21
31
  }
@@ -4,17 +4,21 @@ exports.RateFetcher = void 0;
4
4
  const fetcher_1 = require("../../lib/fetcher/fetcher");
5
5
  const validators_1 = require("../../lib/validators");
6
6
  const validators_2 = require("./validators");
7
+ const constants_1 = require("./constants");
8
+ const pub_sub_1 = require("../../lib/pub-sub");
7
9
  class RateFetcher {
8
10
  dexHelper;
9
11
  dexKey;
10
12
  network;
11
13
  logger;
12
14
  rateFetcher;
15
+ ratePubSub;
13
16
  pricesCacheKey;
14
17
  pricesCacheTTL;
15
18
  marketMakersFetcher;
16
19
  marketMakersCacheKey;
17
20
  marketMakersCacheTTL;
21
+ blacklistedPubSub;
18
22
  constructor(dexHelper, dexKey, network, logger, config) {
19
23
  this.dexHelper = dexHelper;
20
24
  this.dexKey = dexKey;
@@ -33,12 +37,13 @@ class RateFetcher {
33
37
  },
34
38
  handler: this.handleMarketMakersResponse.bind(this),
35
39
  }, config.rateConfig.markerMakersIntervalMs, logger);
40
+ this.ratePubSub = new pub_sub_1.ExpKeyValuePubSub(dexHelper, dexKey, 'rates');
36
41
  this.rateFetcher = new fetcher_1.Fetcher(dexHelper.httpRequest, {
37
42
  info: {
38
43
  requestOptions: config.rateConfig.pricesReqParams,
39
44
  requestFunc: async (options) => {
40
- const { filterMarketMakers, getCachedMarketMakers } = config.rateConfig;
41
- const cachedMarketMakers = (await getCachedMarketMakers()) || [];
45
+ const { filterMarketMakers } = config.rateConfig;
46
+ const cachedMarketMakers = (await this.getCachedMarketMakers()) || [];
42
47
  const filteredMarketMakers = await filterMarketMakers(cachedMarketMakers);
43
48
  if (filteredMarketMakers.length === 0) {
44
49
  return new fetcher_1.SkippingRequest(`${dexKey}-${network}: got ${filteredMarketMakers.length} market makers.`);
@@ -53,10 +58,18 @@ class RateFetcher {
53
58
  },
54
59
  handler: this.handleRatesResponse.bind(this),
55
60
  }, config.rateConfig.pricesIntervalMs, logger);
61
+ this.blacklistedPubSub = new pub_sub_1.NonExpSetPubSub(dexHelper, dexKey, 'blacklisted');
56
62
  }
57
- start() {
58
- this.marketMakersFetcher.startPolling();
59
- this.rateFetcher.startPolling();
63
+ async start() {
64
+ if (!this.dexHelper.config.isSlave) {
65
+ this.marketMakersFetcher.startPolling();
66
+ this.rateFetcher.startPolling();
67
+ }
68
+ else {
69
+ this.ratePubSub.subscribe();
70
+ const allBlacklisted = await this.getAllBlacklisted();
71
+ this.blacklistedPubSub.initializeAndSubscribe(allBlacklisted);
72
+ }
60
73
  }
61
74
  stop() {
62
75
  this.marketMakersFetcher.stopPolling();
@@ -68,7 +81,42 @@ class RateFetcher {
68
81
  }
69
82
  handleRatesResponse(resp) {
70
83
  const { levels } = resp;
71
- this.dexHelper.cache.rawset(this.pricesCacheKey, JSON.stringify(levels), this.pricesCacheTTL);
84
+ this.dexHelper.cache.setex(this.dexKey, this.network, this.pricesCacheKey, this.pricesCacheTTL, JSON.stringify(levels));
85
+ this.ratePubSub.publish({ [this.pricesCacheKey]: levels }, this.pricesCacheTTL);
86
+ }
87
+ async getCachedMarketMakers() {
88
+ const cachedMarketMakers = await this.dexHelper.cache.rawget(this.marketMakersCacheKey);
89
+ if (cachedMarketMakers) {
90
+ return JSON.parse(cachedMarketMakers);
91
+ }
92
+ return null;
93
+ }
94
+ async getCachedLevels() {
95
+ const cachedLevels = await this.ratePubSub.getAndCache(this.pricesCacheKey);
96
+ if (cachedLevels) {
97
+ return cachedLevels;
98
+ }
99
+ return null;
100
+ }
101
+ async isBlacklisted(txOrigin) {
102
+ return this.blacklistedPubSub.has(txOrigin.toLowerCase());
103
+ }
104
+ async setBlacklist(txOrigin, ttl = constants_1.HASHFLOW_BLACKLIST_TTL_S) {
105
+ await this.dexHelper.cache.setex(this.dexKey, this.network, this.getBlackListKey(txOrigin), ttl, 'blacklisted');
106
+ this.blacklistedPubSub.publish([txOrigin.toLowerCase()]);
107
+ return true;
108
+ }
109
+ async getAllBlacklisted() {
110
+ const defaultKey = this.getBlackListKey('');
111
+ const pattern = `${defaultKey}*`;
112
+ const allBlacklisted = await this.dexHelper.cache.keys(this.dexKey, this.network, pattern);
113
+ return allBlacklisted.map(t => this.getAddressFromBlackListKey(t));
114
+ }
115
+ getBlackListKey(address) {
116
+ return `blacklist_${address}`.toLowerCase();
117
+ }
118
+ getAddressFromBlackListKey(key) {
119
+ return (key.split('blacklist_')[1] ?? '').toLowerCase();
72
120
  }
73
121
  }
74
122
  exports.RateFetcher = RateFetcher;
@@ -1 +1 @@
1
- {"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/hashflow/rate-fetcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rate-fetcher.js","sourceRoot":"","sources":["../../../src/dex/hashflow/rate-fetcher.ts"],"names":[],"mappings":";;;AAMA,uDAAqE;AACrE,qDAAuD;AAOvD,6CAA8E;AAC9E,2CAAuD;AACvD,+CAAuE;AAEvE,MAAa,WAAW;IAaZ;IACA;IACA;IACA;IAfF,WAAW,CAAiC;IAC5C,UAAU,CAAoB;IAC9B,cAAc,CAAS;IACvB,cAAc,CAAS;IAEvB,mBAAmB,CAAwC;IAC3D,oBAAoB,CAAS;IAC7B,oBAAoB,CAAS;IAE7B,iBAAiB,CAAkB;IAE3C,YACU,SAAqB,EACrB,MAAc,EACd,OAAgB,EAChB,MAAc,EACtB,MAAiC;QAJzB,cAAS,GAAT,SAAS,CAAY;QACrB,WAAM,GAAN,MAAM,CAAQ;QACd,YAAO,GAAP,OAAO,CAAS;QAChB,WAAM,GAAN,MAAM,CAAQ;QAGtB,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,cAAc,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,kBAAkB,CAAC;QAC3D,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,UAAU,CAAC,oBAAoB,CAAC;QACnE,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,UAAU,CAAC,wBAAwB,CAAC;QACvE,IAAI,CAAC,mBAAmB,GAAG,IAAI,iBAAO,CACpC,SAAS,CAAC,WAAW,EACrB;YACE,IAAI,EAAE;gBACJ,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,qBAAqB;gBACvD,MAAM,EAAE,CAAC,IAAa,EAAE,EAAE;oBACxB,OAAO,IAAA,4BAAe,EACpB,IAAI,EACJ,kCAAqB,CACtB,CAAC;gBACJ,CAAC;aACF;YACD,OAAO,EAAE,IAAI,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC;SACpD,EACD,MAAM,CAAC,UAAU,CAAC,sBAAsB,EACxC,MAAM,CACP,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,IAAI,2BAAiB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAEpE,IAAI,CAAC,WAAW,GAAG,IAAI,iBAAO,CAC5B,SAAS,CAAC,WAAW,EACrB;YACE,IAAI,EAAE;gBACJ,cAAc,EAAE,MAAM,CAAC,UAAU,CAAC,eAAe;gBACjD,WAAW,EAAE,KAAK,EAAC,OAAO,EAAC,EAAE;oBAC3B,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;oBAEjD,MAAM,kBAAkB,GACtB,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE,CAAC,IAAI,EAAE,CAAC;oBAC7C,MAAM,oBAAoB,GAAG,MAAM,kBAAkB,CACnD,kBAAkB,CACnB,CAAC;oBAEF,IAAI,oBAAoB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;wBACtC,OAAO,IAAI,yBAAe,CACxB,GAAG,MAAM,IAAI,OAAO,SAAS,oBAAoB,CAAC,MAAM,iBAAiB,CAC1E,CAAC;oBACJ,CAAC;oBAED,OAAO,CAAC,MAAM,CAAC,YAAY,GAAG,oBAAoB,CAAC;oBAEnD,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;oBAE5D,OAAO,MAAM,CAAC;gBAChB,CAAC;gBACD,MAAM,EAAE,CAAC,IAAa,EAAE,EAAE;oBACxB,OAAO,IAAA,4BAAe,EACpB,IAAI,EACJ,oCAAuB,CACxB,CAAC;gBACJ,CAAC;aACF;YACD,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7C,EACD,MAAM,CAAC,UAAU,CAAC,gBAAgB,EAClC,MAAM,CACP,CAAC;QAEF,IAAI,CAAC,iBAAiB,GAAG,IAAI,yBAAe,CAC1C,SAAS,EACT,MAAM,EACN,aAAa,CACd,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAK;QACT,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,CAAC,mBAAmB,CAAC,YAAY,EAAE,CAAC;YACxC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,CAAC;QAClC,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YAE5B,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;YACtD,IAAI,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,cAAc,CAAC,CAAC;QAChE,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;IACjC,CAAC;IAEO,0BAA0B,CAAC,IAAkC;QACnE,MAAM,EAAE,YAAY,EAAE,GAAG,IAAI,CAAC;QAC9B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CACzB,IAAI,CAAC,oBAAoB,EACzB,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAC5B,IAAI,CAAC,oBAAoB,CAC1B,CAAC;IACJ,CAAC;IAEO,mBAAmB,CAAC,IAA2B;QACrD,MAAM,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;QACxB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CACxB,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,cAAc,EACnB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CACvB,CAAC;QAEF,IAAI,CAAC,UAAU,CAAC,OAAO,CACrB,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,EACjC,IAAI,CAAC,cAAc,CACpB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,qBAAqB;QAGzB,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAC1D,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,IAAI,kBAAkB,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,KAAK,CACf,kBAAkB,CACqB,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE5E,IAAI,YAAY,EAAE,CAAC;YACjB,OAAO,YAA6C,CAAC;QACvD,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,QAAiB;QACnC,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,QAAiB,EACjB,MAAc,oCAAwB;QAEtC,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,KAAK,CAC9B,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAC9B,GAAG,EACH,aAAa,CACd,CAAC;QAEF,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAEzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,GAAG,UAAU,GAAG,CAAC;QACjC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CACpD,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,OAAO,EACZ,OAAO,CACR,CAAC;QAEF,OAAO,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC,CAAC;IACrE,CAAC;IAED,eAAe,CAAC,OAAgB;QAC9B,OAAO,aAAa,OAAO,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,CAAC;IAED,0BAA0B,CAAC,GAAY;QACrC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC1D,CAAC;CACF;AArMD,kCAqMC"}
@@ -51,7 +51,6 @@ export type HashflowRateFetcherConfig = {
51
51
  };
52
52
  pricesIntervalMs: number;
53
53
  markerMakersIntervalMs: number;
54
- getCachedMarketMakers: () => Promise<string[] | null>;
55
54
  filterMarketMakers: (makers: string[]) => Promise<string[]>;
56
55
  pricesCacheKey: string;
57
56
  marketMakersCacheKey: string;
@@ -86,11 +86,12 @@ class Weth extends simple_exchange_1.SimpleExchange {
86
86
  (this.isWETH(srcToken.address) && (0, utils_1.isETHAddress)(destToken.address));
87
87
  if (!isWETHSwap)
88
88
  return null;
89
+ const gasCost = (0, utils_1.isETHAddress)(srcToken.address) ? 6_500 : 9000;
89
90
  return [
90
91
  {
91
92
  prices: amounts,
92
93
  unit: this.unitPrice,
93
- gasCost: this.poolGasCost,
94
+ gasCost,
94
95
  exchange: this.dexKey,
95
96
  poolAddresses: [this.address],
96
97
  data: null,
@@ -1 +1 @@
1
- {"version":3,"file":"weth.js","sourceRoot":"","sources":["../../../src/dex/weth/weth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"weth.js","sourceRoot":"","sources":["../../../src/dex/weth/weth.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,6 @@ export declare class ExpKeyValuePubSub {
15
15
  channel: string;
16
16
  network: Network;
17
17
  localCache: NodeCache;
18
- logPrefix: string;
19
18
  logger: Logger;
20
19
  constructor(dexHelper: IDexHelper, dexKey: string, channel: string, defaultValue?: any | undefined, defaultTTL?: number | undefined);
21
20
  subscribe(): void;
@@ -56,7 +55,6 @@ export declare class NonExpSetPubSub {
56
55
  channel: string;
57
56
  network: Network;
58
57
  set: Set<string>;
59
- logPrefix: string;
60
58
  logger: Logger;
61
59
  constructor(dexHelper: IDexHelper, dexKey: string, channel: string);
62
60
  initializeAndSubscribe(initialSet: string[]): Promise<void>;
@@ -14,7 +14,6 @@ class ExpKeyValuePubSub {
14
14
  channel;
15
15
  network;
16
16
  localCache = new node_cache_1.default();
17
- logPrefix = 'ExpKeyValuePubSub';
18
17
  logger;
19
18
  constructor(dexHelper, dexKey, channel, defaultValue, defaultTTL) {
20
19
  this.dexHelper = dexHelper;
@@ -29,16 +28,11 @@ class ExpKeyValuePubSub {
29
28
  this.logger.info(`Subscribing to ${this.channel}`);
30
29
  this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
31
30
  const decodedMsg = JSON.parse(msg);
32
- this.logger.info(`${this.logPrefix} Received msg: '${Object.keys(decodedMsg).length}'`);
33
31
  this.handleSubscription(decodedMsg);
34
32
  });
35
33
  }
36
34
  publish(data, ttl) {
37
35
  const expiresAt = Math.round(Date.now() / 1000) + ttl;
38
- this.logger.info(`${this.logPrefix} Publishing msg: '${JSON.stringify({
39
- expiresAt,
40
- data: Object.keys(data).length,
41
- })}'`);
42
36
  this.dexHelper.cache.publish(this.channel, JSON.stringify({ expiresAt, data }));
43
37
  }
44
38
  handleSubscription(msg) {
@@ -63,7 +57,6 @@ class ExpKeyValuePubSub {
63
57
  }
64
58
  async getAndCache(key) {
65
59
  const localValue = this.localCache.get(key);
66
- this.logger.info(`${this.logPrefix} Getting and caching key: ${key}, localValue length: ${localValue ? Object.keys(localValue).length : 0}`);
67
60
  if (localValue) {
68
61
  return localValue;
69
62
  }
@@ -224,7 +217,6 @@ class NonExpSetPubSub {
224
217
  channel;
225
218
  network;
226
219
  set = new Set();
227
- logPrefix = 'NonExpSetPubSub';
228
220
  logger;
229
221
  constructor(dexHelper, dexKey, channel) {
230
222
  this.dexHelper = dexHelper;
@@ -234,7 +226,6 @@ class NonExpSetPubSub {
234
226
  this.logger = this.dexHelper.getLogger(`NonExpSetPubSub_${this.channel}`);
235
227
  }
236
228
  async initializeAndSubscribe(initialSet) {
237
- this.logger.info(`${this.logPrefix} initializeAndSubscribe with ${initialSet}`);
238
229
  for (const member of initialSet) {
239
230
  this.set.add(member);
240
231
  }
@@ -244,18 +235,15 @@ class NonExpSetPubSub {
244
235
  this.logger.info(`Subscribing`);
245
236
  this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
246
237
  const decodedMsg = JSON.parse(msg);
247
- this.logger.info(`${this.logPrefix} Received subscription msg: '${decodedMsg.length}'`);
248
238
  this.handleSubscription(decodedMsg);
249
239
  });
250
240
  }
251
241
  publish(msg) {
252
242
  if (msg.length > 0) {
253
- this.logger.info(`${this.logPrefix} Publishing msg: '${msg.length}'`);
254
243
  this.dexHelper.cache.publish(this.channel, JSON.stringify(msg));
255
244
  }
256
245
  }
257
246
  handleSubscription(set) {
258
- this.logger.info(`${this.logPrefix} Received subscription msg: '${set}'`);
259
247
  for (const key of set) {
260
248
  this.set.add(key);
261
249
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pub-sub.js","sourceRoot":"","sources":["../../src/lib/pub-sub.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pub-sub.js","sourceRoot":"","sources":["../../src/lib/pub-sub.ts"],"names":[],"mappings":"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"}
@@ -19,5 +19,5 @@ export declare class PricingHelper {
19
19
  getDexsSupportingFeeOnTransfer(): string[];
20
20
  getPoolPrices(from: Token, to: Token, amounts: bigint[], side: SwapSide, blockNumber: number, dexKeys: string[], limitPoolsMap: {
21
21
  [key: string]: string[] | null;
22
- } | null, transferFees?: TransferFeeParams, rollupL1ToL2GasRatio?: number): Promise<PoolPrices<any>[]>;
22
+ } | null, transferFees?: TransferFeeParams, rollupL1CalldataCostToL2GasCost?: (calldataCost: number) => number): Promise<PoolPrices<any>[]>;
23
23
  }
@@ -117,7 +117,7 @@ class PricingHelper {
117
117
  destFee: 0,
118
118
  srcDexFee: 0,
119
119
  destDexFee: 0,
120
- }, rollupL1ToL2GasRatio) {
120
+ }, rollupL1CalldataCostToL2GasCost) {
121
121
  const dexPoolPrices = await Promise.all(dexKeys.map(async (key) => {
122
122
  try {
123
123
  const limitPools = limitPoolsMap ? limitPoolsMap[key] : null;
@@ -135,27 +135,31 @@ class PricingHelper {
135
135
  .getPricesVolume(from, to, amounts, side, blockNumber, limitPools ? limitPools : undefined, transferFees)
136
136
  .then(poolPrices => {
137
137
  try {
138
- if (!poolPrices || !rollupL1ToL2GasRatio) {
138
+ if (!poolPrices || !rollupL1CalldataCostToL2GasCost) {
139
139
  return resolve(poolPrices);
140
140
  }
141
141
  return resolve(poolPrices.map(pp => {
142
142
  pp.gasCostL2 = pp.gasCost;
143
- const gasCostL1 = dexInstance.getCalldataGasCost(pp);
143
+ const calldataGasCost = dexInstance.getCalldataGasCost(pp);
144
144
  if (typeof pp.gasCost === 'number' &&
145
- typeof gasCostL1 === 'number') {
146
- pp.gasCost += Math.ceil(rollupL1ToL2GasRatio * gasCostL1);
145
+ pp.gasCost !== 0 &&
146
+ typeof calldataGasCost === 'number') {
147
+ pp.gasCost += Math.ceil(rollupL1CalldataCostToL2GasCost(calldataGasCost));
147
148
  }
148
149
  else if (typeof pp.gasCost !== 'number' &&
149
- typeof gasCostL1 !== 'number') {
150
- if (pp.gasCost.length !== gasCostL1.length) {
150
+ typeof calldataGasCost !== 'number') {
151
+ if (pp.gasCost.length !== calldataGasCost.length) {
151
152
  throw new Error(`getCalldataGasCost returned wrong array length in dex ${key}`);
152
153
  }
153
- pp.gasCost = pp.gasCost.map((g, i) => g +
154
- Math.ceil(rollupL1ToL2GasRatio * gasCostL1[i]));
154
+ pp.gasCost = pp.gasCost.map((g, i) => g === 0
155
+ ? 0
156
+ : g +
157
+ Math.ceil(rollupL1CalldataCostToL2GasCost(calldataGasCost[i])));
155
158
  }
156
159
  else {
157
160
  throw new Error(`getCalldataGasCost returned wrong type in dex ${key}`);
158
161
  }
162
+ pp.calldataGasCost = calldataGasCost;
159
163
  return pp;
160
164
  }));
161
165
  }
@@ -1 +1 @@
1
- {"version":3,"file":"pricing-helper.js","sourceRoot":"","sources":["../src/pricing-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pricing-helper.js","sourceRoot":"","sources":["../src/pricing-helper.ts"],"names":[],"mappings":"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"}
package/build/types.d.ts CHANGED
@@ -194,6 +194,7 @@ export type PoolPrices<T> = {
194
194
  exchange: string;
195
195
  gasCost: number | number[];
196
196
  gasCostL2?: number | number[];
197
+ calldataGasCost?: number | number[];
197
198
  poolAddresses?: Array<Address>;
198
199
  };
199
200
  export type PoolLiquidity = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "4.1.7-pub-sub.2",
3
+ "version": "4.1.7-pub-sub.4",
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,32 @@
1
+ /* eslint-disable no-console */
2
+ import dotenv from 'dotenv';
3
+ import { testGasEstimation } from '../../../tests/utils-e2e';
4
+ import { Tokens } from '../../../tests/constants-e2e';
5
+ import { Network, SwapSide } from '../../constants';
6
+ import { ContractMethodV6 } from '@paraswap/core';
7
+
8
+ dotenv.config();
9
+
10
+ describe('AaveGsm Gas Estimation', () => {
11
+ const dexKey = 'AaveGsm';
12
+ const network = Network.MAINNET;
13
+
14
+ it('swapExactAmountIn', async () => {
15
+ const network = Network.MAINNET;
16
+
17
+ const srcToken = Tokens[network]['GHO'];
18
+ const destToken = Tokens[network]['USDT'];
19
+
20
+ const amount = 1000000000000000000n;
21
+
22
+ await testGasEstimation(
23
+ network,
24
+ srcToken,
25
+ destToken,
26
+ amount,
27
+ SwapSide.SELL,
28
+ dexKey,
29
+ ContractMethodV6.swapExactAmountIn,
30
+ );
31
+ });
32
+ });