@paraswap/dex-lib 3.8.27-dualsync.0 → 3.8.27

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 (86) hide show
  1. package/.idea/codeStyles/Project.xml +59 -0
  2. package/.idea/codeStyles/codeStyleConfig.xml +5 -0
  3. package/.idea/inspectionProfiles/Project_Default.xml +6 -0
  4. package/.idea/modules.xml +8 -0
  5. package/.idea/paraswap-dex-lib.iml +12 -0
  6. package/.idea/vcs.xml +6 -0
  7. package/build/abi/BProtocol.json +1155 -0
  8. package/build/abi/Jarvis.json +1172 -0
  9. package/build/abi/MStableAsset.json +1545 -0
  10. package/build/abi/OneInchLp.json +1304 -0
  11. package/build/abi/Onebit.json +736 -0
  12. package/build/abi/Shell.json +1294 -0
  13. package/build/abi/TraderJoeV2Router.json +50 -0
  14. package/build/abi/zrx.v2.json +1967 -0
  15. package/build/abi/zrx.v3.json +3454 -0
  16. package/build/abi/zrx.v4.json +2193 -0
  17. package/build/dex/OneInchLp.d.ts +24 -0
  18. package/build/dex/OneInchLp.js +43 -0
  19. package/build/dex/OneInchLp.js.map +1 -0
  20. package/build/dex/bProtocol/bProtocol.d.ts +15 -0
  21. package/build/dex/bProtocol/bProtocol.js +56 -0
  22. package/build/dex/bProtocol/bProtocol.js.map +1 -0
  23. package/build/dex/bProtocol/types.d.ts +11 -0
  24. package/build/dex/bProtocol/types.js +8 -0
  25. package/build/dex/bProtocol/types.js.map +1 -0
  26. package/build/dex/idex.d.ts +0 -4
  27. package/build/dex/jarvis.d.ts +56 -0
  28. package/build/dex/jarvis.js +163 -0
  29. package/build/dex/jarvis.js.map +1 -0
  30. package/build/dex/lite-psm/lite-psm.js +3 -1
  31. package/build/dex/lite-psm/lite-psm.js.map +1 -1
  32. package/build/dex/mStable.d.ts +44 -0
  33. package/build/dex/mStable.js +75 -0
  34. package/build/dex/mStable.js.map +1 -0
  35. package/build/dex/onebit/onebit.d.ts +16 -0
  36. package/build/dex/onebit/onebit.js +61 -0
  37. package/build/dex/onebit/onebit.js.map +1 -0
  38. package/build/dex/onebit/types.d.ts +14 -0
  39. package/build/dex/onebit/types.js +8 -0
  40. package/build/dex/onebit/types.js.map +1 -0
  41. package/build/dex/shell.d.ts +25 -0
  42. package/build/dex/shell.js +41 -0
  43. package/build/dex/shell.js.map +1 -0
  44. package/build/dex/trader-joe-v2.d.ts +40 -0
  45. package/build/dex/trader-joe-v2.js +74 -0
  46. package/build/dex/trader-joe-v2.js.map +1 -0
  47. package/build/dex/uniswap-v2/uniswap-v2.d.ts +4 -11
  48. package/build/dex/uniswap-v2/uniswap-v2.js +13 -40
  49. package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
  50. package/build/dex/uniswap-v3/uniswap-v3-pool.d.ts +2 -3
  51. package/build/dex/uniswap-v3/uniswap-v3-pool.js +3 -3
  52. package/build/dex/uniswap-v3/uniswap-v3-pool.js.map +1 -1
  53. package/build/dex/uniswap-v3/uniswap-v3.d.ts +0 -4
  54. package/build/dex/uniswap-v3/uniswap-v3.js +2 -11
  55. package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
  56. package/build/dex/zerox/config.d.ts +2 -0
  57. package/build/dex/zerox/config.js +33 -0
  58. package/build/dex/zerox/config.js.map +1 -0
  59. package/build/dex/zerox/index.d.ts +22 -0
  60. package/build/dex/zerox/index.js +225 -0
  61. package/build/dex/zerox/index.js.map +1 -0
  62. package/build/dex/zerox/order.d.ts +88 -0
  63. package/build/dex/zerox/order.js +53 -0
  64. package/build/dex/zerox/order.js.map +1 -0
  65. package/build/dex/zerox/types.d.ts +73 -0
  66. package/build/dex/zerox/types.js +21 -0
  67. package/build/dex/zerox/types.js.map +1 -0
  68. package/build/dex-helper/dummy-dex-helper.d.ts +0 -2
  69. package/build/dex-helper/dummy-dex-helper.js.map +1 -1
  70. package/build/dex-helper/idex-helper.d.ts +0 -2
  71. package/package.json +3 -2
  72. package/src/dex/idex.ts +0 -8
  73. package/src/dex/lite-psm/lite-psm.ts +4 -5
  74. package/src/dex/uniswap-v2/uniswap-v2.ts +16 -66
  75. package/src/dex/uniswap-v3/uniswap-v3-pool.ts +6 -4
  76. package/src/dex/uniswap-v3/uniswap-v3.ts +2 -28
  77. package/src/dex-helper/dummy-dex-helper.ts +0 -2
  78. package/src/dex-helper/idex-helper.ts +0 -2
  79. package/build/dex-utils.d.ts +0 -3
  80. package/build/dex-utils.js +0 -10
  81. package/build/dex-utils.js.map +0 -1
  82. package/build/stateful-dual-synchronizer.d.ts +0 -46
  83. package/build/stateful-dual-synchronizer.js +0 -300
  84. package/build/stateful-dual-synchronizer.js.map +0 -1
  85. package/src/dex-utils.ts +0 -5
  86. package/src/stateful-dual-synchronizer.ts +0 -415
@@ -0,0 +1,88 @@
1
+ import { ZeroXSignedOrder, ZeroXSignedOrderV2, ZeroXSignedOrderV4 } from './types';
2
+ export declare class ZeroXOrder {
3
+ static formatOrderV4(order: ZeroXSignedOrderV4, version: number): {
4
+ makerToken: string;
5
+ takerToken: string;
6
+ makerAmount: string | number;
7
+ takerAmount: string | number;
8
+ maker: string;
9
+ taker: string;
10
+ txOrigin: string;
11
+ pool: string;
12
+ expiry: string | number;
13
+ salt: string | number;
14
+ };
15
+ static formatOrderV23(order: ZeroXSignedOrderV2, version: number): {
16
+ makerFeeAssetData: string;
17
+ takerFeeAssetData: string;
18
+ makerAddress: string;
19
+ takerAddress: string;
20
+ feeRecipientAddress: string;
21
+ senderAddress: string;
22
+ makerAssetAmount: string | number;
23
+ takerAssetAmount: string | number;
24
+ makerFee: string | number;
25
+ takerFee: string | number;
26
+ expirationTimeSeconds: string | number;
27
+ salt: string | number;
28
+ makerAssetData: string;
29
+ takerAssetData: string;
30
+ } | {
31
+ makerFeeAssetData?: undefined;
32
+ takerFeeAssetData?: undefined;
33
+ makerAddress: string;
34
+ takerAddress: string;
35
+ feeRecipientAddress: string;
36
+ senderAddress: string;
37
+ makerAssetAmount: string | number;
38
+ takerAssetAmount: string | number;
39
+ makerFee: string | number;
40
+ takerFee: string | number;
41
+ expirationTimeSeconds: string | number;
42
+ salt: string | number;
43
+ makerAssetData: string;
44
+ takerAssetData: string;
45
+ };
46
+ static formatOrders(order: ZeroXSignedOrder, version?: number): {
47
+ makerToken: string;
48
+ takerToken: string;
49
+ makerAmount: string | number;
50
+ takerAmount: string | number;
51
+ maker: string;
52
+ taker: string;
53
+ txOrigin: string;
54
+ pool: string;
55
+ expiry: string | number;
56
+ salt: string | number;
57
+ } | {
58
+ makerFeeAssetData: string;
59
+ takerFeeAssetData: string;
60
+ makerAddress: string;
61
+ takerAddress: string;
62
+ feeRecipientAddress: string;
63
+ senderAddress: string;
64
+ makerAssetAmount: string | number;
65
+ takerAssetAmount: string | number;
66
+ makerFee: string | number;
67
+ takerFee: string | number;
68
+ expirationTimeSeconds: string | number;
69
+ salt: string | number;
70
+ makerAssetData: string;
71
+ takerAssetData: string;
72
+ } | {
73
+ makerFeeAssetData?: undefined;
74
+ takerFeeAssetData?: undefined;
75
+ makerAddress: string;
76
+ takerAddress: string;
77
+ feeRecipientAddress: string;
78
+ senderAddress: string;
79
+ makerAssetAmount: string | number;
80
+ takerAssetAmount: string | number;
81
+ makerFee: string | number;
82
+ takerFee: string | number;
83
+ expirationTimeSeconds: string | number;
84
+ salt: string | number;
85
+ makerAssetData: string;
86
+ takerAssetData: string;
87
+ };
88
+ }
@@ -0,0 +1,53 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZeroXOrder = void 0;
4
+ class ZeroXOrder {
5
+ static formatOrderV4(order, version) {
6
+ return {
7
+ makerToken: order.makerToken,
8
+ takerToken: order.takerToken,
9
+ makerAmount: order.makerAmount,
10
+ takerAmount: order.takerAmount,
11
+ maker: order.maker,
12
+ taker: order.taker,
13
+ txOrigin: order.txOrigin,
14
+ pool: order.pool,
15
+ expiry: order.expiry,
16
+ salt: order.salt,
17
+ };
18
+ }
19
+ static formatOrderV23(order, version) {
20
+ const feeAssetData = version === 3
21
+ ? {
22
+ makerFeeAssetData: order.makerFeeAssetData,
23
+ takerFeeAssetData: order.takerFeeAssetData,
24
+ }
25
+ : {};
26
+ return {
27
+ makerAddress: order.makerAddress,
28
+ takerAddress: order.takerAddress,
29
+ feeRecipientAddress: order.feeRecipientAddress,
30
+ senderAddress: order.senderAddress,
31
+ makerAssetAmount: order.makerAssetAmount,
32
+ takerAssetAmount: order.takerAssetAmount,
33
+ makerFee: order.makerFee,
34
+ takerFee: order.takerFee,
35
+ expirationTimeSeconds: order.expirationTimeSeconds,
36
+ salt: order.salt,
37
+ makerAssetData: order.makerAssetData,
38
+ takerAssetData: order.takerAssetData,
39
+ ...feeAssetData,
40
+ };
41
+ }
42
+ static formatOrders(order, version = 2) {
43
+ if (isV4Order(order, version)) {
44
+ return ZeroXOrder.formatOrderV4(order, version);
45
+ }
46
+ return ZeroXOrder.formatOrderV23(order, version);
47
+ }
48
+ }
49
+ exports.ZeroXOrder = ZeroXOrder;
50
+ function isV4Order(order, version = 2) {
51
+ return version === 4;
52
+ }
53
+ //# sourceMappingURL=order.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order.js","sourceRoot":"","sources":["../../../src/dex/zerox/order.ts"],"names":[],"mappings":";;;AAMA,MAAa,UAAU;IACrB,MAAM,CAAC,aAAa,CAAC,KAAyB,EAAE,OAAe;QAC7D,OAAO;YACL,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,MAAM,EAAE,KAAK,CAAC,MAAM;YACpB,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,cAAc,CAAC,KAAyB,EAAE,OAAe;QAC9D,MAAM,YAAY,GAChB,OAAO,KAAK,CAAC;YACX,CAAC,CAAC;gBACE,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;gBAC1C,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;aAC3C;YACH,CAAC,CAAC,EAAE,CAAC;QAET,OAAO;YACL,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,YAAY,EAAE,KAAK,CAAC,YAAY;YAChC,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;YAC9C,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;YACxC,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;YAClD,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,cAAc,EAAE,KAAK,CAAC,cAAc;YACpC,GAAG,YAAY;SAChB,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,YAAY,CAAC,KAAuB,EAAE,UAAkB,CAAC;QAC9D,IAAI,SAAS,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;YAC7B,OAAO,UAAU,CAAC,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;SACjD;QACD,OAAO,UAAU,CAAC,cAAc,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IACnD,CAAC;CACF;AAhDD,gCAgDC;AAED,SAAS,SAAS,CAChB,KAAuB,EACvB,UAAkB,CAAC;IAEnB,OAAO,OAAO,KAAK,CAAC,CAAC;AACvB,CAAC"}
@@ -0,0 +1,73 @@
1
+ import { Address } from '@paraswap/sdk';
2
+ import { NumberAsString } from '../../types';
3
+ export declare enum OrderStatus {
4
+ INVALID = 0,
5
+ INVALID_MAKER_ASSET_AMOUNT = 1,
6
+ INVALID_TAKER_ASSET_AMOUNT = 2,
7
+ FILLABLE = 3,
8
+ EXPIRED = 4,
9
+ FULLY_FILLED = 5,
10
+ CANCELLED = 6
11
+ }
12
+ declare type Value = NumberAsString | number;
13
+ export interface ZeroXSignedOrderV2 {
14
+ senderAddress: string;
15
+ makerAddress: string;
16
+ takerAddress: string;
17
+ makerFee: Value;
18
+ takerFee: Value;
19
+ makerAssetAmount: Value;
20
+ takerAssetAmount: Value;
21
+ makerAssetData: string;
22
+ takerAssetData: string;
23
+ salt: Value;
24
+ exchangeAddress: string;
25
+ feeRecipientAddress: string;
26
+ expirationTimeSeconds: Value;
27
+ makerFeeAssetData: string;
28
+ takerFeeAssetData: string;
29
+ signature: string;
30
+ }
31
+ export interface ZeroXSignedOrderV4 {
32
+ makerToken: string;
33
+ takerToken: string;
34
+ makerAmount: Value;
35
+ takerAmount: Value;
36
+ maker: string;
37
+ taker: string;
38
+ txOrigin: string;
39
+ pool: string;
40
+ expiry: Value;
41
+ salt: Value;
42
+ signature: any;
43
+ }
44
+ export declare type ZeroXSignedOrder = ZeroXSignedOrderV2 | ZeroXSignedOrderV4;
45
+ export declare enum ZeroXFunctions {
46
+ swapOnZeroXv2 = "swapOnZeroXv2",
47
+ swapOnZeroXv4 = "swapOnZeroXv4",
48
+ swapOnZeroXv2WithPermit = "swapOnZeroXv2WithPermit",
49
+ swapOnZeroXv4WithPermit = "swapOnZeroXv4WithPermit"
50
+ }
51
+ export declare type ZeroXData = {
52
+ version: number;
53
+ order: ZeroXSignedOrder;
54
+ };
55
+ export declare type SwapOnZeroXParam = [
56
+ srcToken: Address,
57
+ destToken: Address,
58
+ srcAmount: NumberAsString,
59
+ destAmount: NumberAsString,
60
+ exchange: Address,
61
+ payload: string
62
+ ];
63
+ export declare type SwapOnZeroXWithPermitParam = [
64
+ srcToken: Address,
65
+ destToken: Address,
66
+ srcAmount: NumberAsString,
67
+ destAmount: NumberAsString,
68
+ exchange: Address,
69
+ payload: string,
70
+ permit: string
71
+ ];
72
+ export declare type ZeroXParam = SwapOnZeroXParam | SwapOnZeroXWithPermitParam;
73
+ export {};
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ZeroXFunctions = exports.OrderStatus = void 0;
4
+ var OrderStatus;
5
+ (function (OrderStatus) {
6
+ OrderStatus[OrderStatus["INVALID"] = 0] = "INVALID";
7
+ OrderStatus[OrderStatus["INVALID_MAKER_ASSET_AMOUNT"] = 1] = "INVALID_MAKER_ASSET_AMOUNT";
8
+ OrderStatus[OrderStatus["INVALID_TAKER_ASSET_AMOUNT"] = 2] = "INVALID_TAKER_ASSET_AMOUNT";
9
+ OrderStatus[OrderStatus["FILLABLE"] = 3] = "FILLABLE";
10
+ OrderStatus[OrderStatus["EXPIRED"] = 4] = "EXPIRED";
11
+ OrderStatus[OrderStatus["FULLY_FILLED"] = 5] = "FULLY_FILLED";
12
+ OrderStatus[OrderStatus["CANCELLED"] = 6] = "CANCELLED";
13
+ })(OrderStatus = exports.OrderStatus || (exports.OrderStatus = {}));
14
+ var ZeroXFunctions;
15
+ (function (ZeroXFunctions) {
16
+ ZeroXFunctions["swapOnZeroXv2"] = "swapOnZeroXv2";
17
+ ZeroXFunctions["swapOnZeroXv4"] = "swapOnZeroXv4";
18
+ ZeroXFunctions["swapOnZeroXv2WithPermit"] = "swapOnZeroXv2WithPermit";
19
+ ZeroXFunctions["swapOnZeroXv4WithPermit"] = "swapOnZeroXv4WithPermit";
20
+ })(ZeroXFunctions = exports.ZeroXFunctions || (exports.ZeroXFunctions = {}));
21
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/zerox/types.ts"],"names":[],"mappings":";;;AAGA,IAAY,WAQX;AARD,WAAY,WAAW;IACrB,mDAAO,CAAA;IACP,yFAA0B,CAAA;IAC1B,yFAA0B,CAAA;IAC1B,qDAAQ,CAAA;IACR,mDAAO,CAAA;IACP,6DAAY,CAAA;IACZ,uDAAS,CAAA;AACX,CAAC,EARW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAQtB;AAuCD,IAAY,cAKX;AALD,WAAY,cAAc;IACxB,iDAA+B,CAAA;IAC/B,iDAA+B,CAAA;IAC/B,qEAAmD,CAAA;IACnD,qEAAmD,CAAA;AACrD,CAAC,EALW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAKzB"}
@@ -39,8 +39,6 @@ export declare class DummyDexHelper implements IDexHelper {
39
39
  getLogger: LoggerConstructor;
40
40
  web3Provider: Web3;
41
41
  getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
42
- dexStatePublisher: any;
43
- dexStateSubscriber: any;
44
42
  constructor(network: number, rpcUrl?: string);
45
43
  replaceProviderWithRPC(rpcUrl: string): void;
46
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"dummy-dex-helper.js","sourceRoot":"","sources":["../../src/dex-helper/dummy-dex-helper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dummy-dex-helper.js","sourceRoot":"","sources":["../../src/dex-helper/dummy-dex-helper.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,4 @@ export interface IDexHelper {
23
23
  blockManager: IBlockManager;
24
24
  getLogger: LoggerConstructor;
25
25
  getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
26
- dexStateSubscriber: any;
27
- dexStatePublisher: any;
28
26
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@paraswap/dex-lib",
3
- "version": "3.8.27-dualsync.0",
3
+ "version": "3.8.27",
4
4
  "main": "build/index.js",
5
5
  "types": "build/index.d.ts",
6
6
  "repository": "https://github.com/paraswap/paraswap-dex-lib",
@@ -77,5 +77,6 @@
77
77
  "web3-eth-contract": "1.6.0",
78
78
  "web3-utils": "1.6.0"
79
79
  },
80
- "sideEffects": false
80
+ "sideEffects": false,
81
+ "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e"
81
82
  }
package/src/dex/idex.ts CHANGED
@@ -207,14 +207,6 @@ export interface IDexPricing<ExchangeData> {
207
207
  // useful for RFQ system
208
208
  isBlacklisted?(userAddress?: Address): AsyncOrSync<boolean>;
209
209
 
210
- addPoolGenerateState?({
211
- poolIdentifier,
212
- blockNumber,
213
- }: {
214
- poolIdentifier: string;
215
- blockNumber: number;
216
- }): AsyncOrSync<null | unknown>;
217
-
218
210
  // blacklist a specific userAddress from exchange
219
211
  setBlacklist?(userAddress?: Address): AsyncOrSync<boolean>;
220
212
  }
@@ -398,11 +398,10 @@ export class LitePsm
398
398
  targetExchange: data.psmAddress,
399
399
  specialDexFlag,
400
400
  spender: isGemSell ? data.gemJoinAddress : data.psmAddress,
401
- returnAmountPos: extractReturnAmountPosition(
402
- psmInterface,
403
- isGemSell ? 'sellGem' : 'buyGem',
404
- isGemSell ? 'daiOutWad' : 'daiInWad',
405
- ),
401
+ returnAmountPos:
402
+ side === SwapSide.SELL && isGemSell
403
+ ? extractReturnAmountPosition(psmInterface, 'sellGem', 'daiOutWad')
404
+ : undefined,
406
405
  };
407
406
  }
408
407
 
@@ -3,6 +3,7 @@ import { pack } from '@ethersproject/solidity';
3
3
  import _ from 'lodash';
4
4
  import { AsyncOrSync, DeepReadonly } from 'ts-essentials';
5
5
  import erc20ABI from '../../abi/erc20.json';
6
+ import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
6
7
  import {
7
8
  AdapterExchangeParam,
8
9
  Address,
@@ -68,7 +69,6 @@ import {
68
69
  hexConcat,
69
70
  } from 'ethers/lib/utils';
70
71
  import { BigNumber } from 'ethers';
71
- import { StatefulDualSynchronizer } from '../../stateful-dual-synchronizer';
72
72
 
73
73
  const rebaseTokens = _rebaseTokens as { chainId: number; address: string }[];
74
74
 
@@ -124,12 +124,11 @@ export interface UniswapV2Pair {
124
124
  pool?: UniswapV2EventPool;
125
125
  }
126
126
 
127
- export class UniswapV2EventPool extends StatefulDualSynchronizer<UniswapV2PoolState> {
127
+ export class UniswapV2EventPool extends StatefulEventSubscriber<UniswapV2PoolState> {
128
128
  decoder = (log: Log) => this.iface.parseLog(log);
129
129
 
130
130
  constructor(
131
- public parentName: string,
132
- public poolIdentifier: string,
131
+ parentName: string,
133
132
  protected dexHelper: IDexHelper,
134
133
  private poolAddress: Address,
135
134
  private token0: Token,
@@ -143,7 +142,15 @@ export class UniswapV2EventPool extends StatefulDualSynchronizer<UniswapV2PoolSt
143
142
  private feesMultiCallDecoder?: (values: any[]) => number,
144
143
  private iface: Interface = uniswapV2PoolIface,
145
144
  ) {
146
- super(parentName, poolIdentifier, dexHelper, logger);
145
+ super(
146
+ parentName,
147
+ (token0.symbol || token0.address) +
148
+ '-' +
149
+ (token1.symbol || token1.address) +
150
+ ' pool',
151
+ dexHelper,
152
+ logger,
153
+ );
147
154
  }
148
155
 
149
156
  protected processLog(
@@ -294,11 +301,10 @@ export class UniswapV2
294
301
  reserves1: string,
295
302
  feeCode: number,
296
303
  blockNumber: number,
297
- ): Promise<UniswapV2EventPool | null> {
304
+ ) {
298
305
  const { callEntry, callDecoder } = this.getFeesMultiCallData(pair) || {};
299
306
  pair.pool = new UniswapV2EventPool(
300
307
  this.dexKey,
301
- this._getPoolIdentifier(pair.token0, pair.token1),
302
308
  this.dexHelper,
303
309
  pair.exchange!,
304
310
  pair.token0,
@@ -312,50 +318,9 @@ export class UniswapV2
312
318
  );
313
319
  pair.pool.addressesSubscribed.push(pair.exchange!);
314
320
 
315
- try {
316
- await pair.pool.initialize(
317
- blockNumber,
318
- /*, {
321
+ await pair.pool.initialize(blockNumber, {
319
322
  state: { reserves0, reserves1, feeCode },
320
- }
321
- */
322
- );
323
- return pair.pool;
324
- } catch (e) {
325
- this.logger.error(`Error_addPool could not add pool with error:`, e);
326
- delete pair.pool;
327
- return null;
328
- }
329
- }
330
-
331
- async addPoolGenerateState({
332
- poolIdentifier,
333
- blockNumber,
334
- }: {
335
- poolIdentifier: string;
336
- blockNumber: number;
337
- }): Promise<UniswapV2PoolState | null> {
338
- // poolIdentifier is in the format of 'uniswapv2_<token0>_<token1>'
339
- const [, token0, token1] = poolIdentifier.split('_');
340
- const pair = await this.findPair(
341
- { address: token0, decimals: 0 },
342
- { address: token1, decimals: 0 },
343
- );
344
- if (!(pair && pair.exchange)) return null;
345
-
346
- const [pairState] = await this.getManyPoolReserves([pair], blockNumber);
347
-
348
- const pool = await this.addPool(
349
- pair,
350
- pairState.reserves0,
351
- pairState.reserves1,
352
- pairState.feeCode,
353
- blockNumber,
354
- );
355
-
356
- if (!pool) return null;
357
-
358
- return pool.getState(blockNumber);
323
+ });
359
324
  }
360
325
 
361
326
  async getBuyPrice(
@@ -514,9 +479,7 @@ export class UniswapV2
514
479
  pairState.feeCode,
515
480
  blockNumber,
516
481
  );
517
- } else {
518
- // pair.pool.setState(pairState, blockNumber); // TEMP: temporarily disabled to prevent confusions with new system
519
- }
482
+ } else pair.pool.setState(pairState, blockNumber);
520
483
  }
521
484
  }
522
485
 
@@ -562,19 +525,6 @@ export class UniswapV2
562
525
  };
563
526
  }
564
527
 
565
- _getPoolIdentifier(_from: Token, _to: Token) {
566
- const from = this.dexHelper.config.wrapETH(_from);
567
- const to = this.dexHelper.config.wrapETH(_to);
568
-
569
- const tokenAddress = [from.address.toLowerCase(), to.address.toLowerCase()]
570
- .sort((a, b) => (a > b ? 1 : -1))
571
- .join('_');
572
-
573
- const poolIdentifier = `${this.dexKey}_${tokenAddress}`;
574
-
575
- return poolIdentifier.toLowerCase();
576
- }
577
-
578
528
  async getPoolIdentifiers(
579
529
  _from: Token,
580
530
  _to: Token,
@@ -4,7 +4,10 @@ import { Interface } from '@ethersproject/abi';
4
4
  import { ethers } from 'ethers';
5
5
  import { assert, DeepReadonly } from 'ts-essentials';
6
6
  import { Log, Logger, BlockHeader, Address } from '../../types';
7
- import { InitializeStateOptions } from '../../stateful-event-subscriber';
7
+ import {
8
+ InitializeStateOptions,
9
+ StatefulEventSubscriber,
10
+ } from '../../stateful-event-subscriber';
8
11
  import { IDexHelper } from '../../dex-helper/idex-helper';
9
12
  import {
10
13
  PoolState,
@@ -24,9 +27,8 @@ import { TickBitMap } from './contract-math/TickBitMap';
24
27
  import { uint256ToBigInt } from '../../lib/decoders';
25
28
  import { decodeStateMultiCallResultWithRelativeBitmaps } from './utils';
26
29
  import { _reduceTickBitmap, _reduceTicks } from './contract-math/utils';
27
- import { StatefulDualSynchronizer } from '../../stateful-dual-synchronizer';
28
30
 
29
- export class UniswapV3EventPool extends StatefulDualSynchronizer<PoolState> {
31
+ export class UniswapV3EventPool extends StatefulEventSubscriber<PoolState> {
30
32
  handlers: {
31
33
  [event: string]: (
32
34
  event: any,
@@ -77,7 +79,7 @@ export class UniswapV3EventPool extends StatefulDualSynchronizer<PoolState> {
77
79
  poolKey = `${poolKey}_${tickSpacing}`;
78
80
  }
79
81
 
80
- super(parentName, poolKey, dexHelper, logger);
82
+ super(parentName, poolKey, dexHelper, logger, true, mapKey);
81
83
  this.feeCodeAsString = feeCode.toString();
82
84
  this.token0 = token0.toLowerCase();
83
85
  this.token1 = token1.toLowerCase();
@@ -72,7 +72,6 @@ import { OptimalSwapExchange } from '@paraswap/core';
72
72
  import { OnPoolCreatedCallback, UniswapV3Factory } from './uniswap-v3-factory';
73
73
  import { hexConcat, hexlify, hexZeroPad, hexValue } from 'ethers/lib/utils';
74
74
  import { extractReturnAmountPosition } from '../../executor/utils';
75
- import { DexPoolNotFoundError } from '../../dex-utils';
76
75
 
77
76
  type PoolPairsInfo = {
78
77
  token0: Address;
@@ -322,10 +321,7 @@ export class UniswapV3
322
321
  },
323
322
  });
324
323
  } catch (e) {
325
- if (
326
- (e instanceof Error && e.message.endsWith('Pool does not exist')) ||
327
- e instanceof DexPoolNotFoundError
328
- ) {
324
+ if (e instanceof Error && e.message.endsWith('Pool does not exist')) {
329
325
  // no need to await we want the set to have the pool key but it's not blocking
330
326
  this.dexHelper.cache.zadd(
331
327
  this.notExistingPoolSetKey,
@@ -447,28 +443,6 @@ export class UniswapV3
447
443
  return true;
448
444
  }
449
445
 
450
- async addPoolGenerateState({
451
- poolIdentifier,
452
- blockNumber,
453
- }: {
454
- poolIdentifier: string;
455
- blockNumber: number;
456
- }): Promise<PoolState | null> {
457
- const [token0, token1, fee, tickSpacing] = poolIdentifier.split('_');
458
-
459
- const pool = await this.getPool(
460
- token0,
461
- token1,
462
- BigInt(fee),
463
- blockNumber,
464
- tickSpacing !== undefined ? BigInt(tickSpacing) : undefined,
465
- );
466
-
467
- if (!pool) return null;
468
-
469
- return pool.getState(blockNumber);
470
- }
471
-
472
446
  async getPoolIdentifiers(
473
447
  srcToken: Token,
474
448
  destToken: Token,
@@ -789,7 +763,7 @@ export class UniswapV3
789
763
  if (state.liquidity <= 0n) {
790
764
  if (state.liquidity < 0) {
791
765
  this.logger.error(
792
- `${this.dexKey}-${this.network}: ${pool.poolAddress} pool has negative liquidity: ${state.liquidity}. Find with key: ${pool.poolIdentifier}`,
766
+ `${this.dexKey}-${this.network}: ${pool.poolAddress} pool has negative liquidity: ${state.liquidity}. Find with key: ${pool.mapKey}`,
793
767
  );
794
768
  }
795
769
  this.logger.trace(`pool have 0 liquidity`);
@@ -299,8 +299,6 @@ export class DummyDexHelper implements IDexHelper {
299
299
  getLogger: LoggerConstructor;
300
300
  web3Provider: Web3;
301
301
  getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
302
- dexStatePublisher: any; // FIXME
303
- dexStateSubscriber: any; // FIXME
304
302
 
305
303
  constructor(network: number, rpcUrl?: string) {
306
304
  this.config = new ConfigHelper(false, generateConfig(network), 'is');
@@ -24,6 +24,4 @@ export interface IDexHelper {
24
24
  blockManager: IBlockManager;
25
25
  getLogger: LoggerConstructor;
26
26
  getTokenUSDPrice: (token: Token, amount: bigint) => Promise<number>;
27
- dexStateSubscriber: any; // temp ?
28
- dexStatePublisher: any; // temp ?
29
27
  }
@@ -1,3 +0,0 @@
1
- export declare class DexPoolNotFoundError extends Error {
2
- constructor(dexKey: string, poolIdentifier: string);
3
- }
@@ -1,10 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DexPoolNotFoundError = void 0;
4
- class DexPoolNotFoundError extends Error {
5
- constructor(dexKey, poolIdentifier) {
6
- super(`Pool ${poolIdentifier} not found for DEX ${dexKey}`);
7
- }
8
- }
9
- exports.DexPoolNotFoundError = DexPoolNotFoundError;
10
- //# sourceMappingURL=dex-utils.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"dex-utils.js","sourceRoot":"","sources":["../src/dex-utils.ts"],"names":[],"mappings":";;;AAAA,MAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,MAAc,EAAE,cAAsB;QAChD,KAAK,CAAC,QAAQ,cAAc,sBAAsB,MAAM,EAAE,CAAC,CAAC;IAC9D,CAAC;CACF;AAJD,oDAIC"}
@@ -1,46 +0,0 @@
1
- import { AsyncOrSync, DeepReadonly } from 'ts-essentials';
2
- import { Log, Logger } from './types';
3
- import { BlockHeader } from 'web3-eth';
4
- import { EventSubscriber } from './dex-helper/iblock-manager';
5
- import { IDexHelper } from './dex-helper';
6
- export declare type InitializeStateOptions<State> = {
7
- state?: DeepReadonly<State>;
8
- initCallback?: (state: DeepReadonly<State>) => void;
9
- forceRegenerate?: boolean;
10
- };
11
- declare type ObjectOrString<State> = DeepReadonly<State> | string;
12
- declare type ObjectOrStringOrNull<State> = ObjectOrString<State> | null;
13
- export declare abstract class StatefulDualSynchronizer<State> implements EventSubscriber {
14
- dexKey: string;
15
- poolIdentifier: string;
16
- protected dexHelper: IDexHelper;
17
- protected logger: Logger;
18
- protected state: ObjectOrStringOrNull<State>;
19
- protected stateBlockNumber: number;
20
- protected stateHistory: {
21
- [blockNumber: number]: ObjectOrString<State>;
22
- };
23
- protected invalid: boolean;
24
- isTracking: () => boolean;
25
- addressesSubscribed: string[];
26
- parentName: string;
27
- name: string;
28
- isInitialized: boolean;
29
- constructor(dexKey: string, poolIdentifier: string, dexHelper: IDexHelper, logger: Logger);
30
- getStateBlockNumber(): Readonly<number>;
31
- initialize(blockNumber: number, options?: InitializeStateOptions<State>): Promise<void>;
32
- protected abstract processLog(state: DeepReadonly<State>, log: Readonly<Log>, blockHeader: Readonly<BlockHeader>): AsyncOrSync<DeepReadonly<State> | null>;
33
- protected processBlockLogs(state: DeepReadonly<State>, logs: Readonly<Log>[], blockHeader: Readonly<BlockHeader>): Promise<DeepReadonly<State> | null>;
34
- abstract generateState(blockNumber?: number | 'latest'): AsyncOrSync<DeepReadonly<State>>;
35
- restart(blockNumber: number): void;
36
- update(logs: Readonly<Log>[], blockHeaders: Readonly<{
37
- [blockNumber: number]: Readonly<BlockHeader>;
38
- }>): Promise<void>;
39
- rollback(blockNumber: number): void;
40
- invalidate(): void;
41
- getState(minBlockNumber: number): DeepReadonly<State> | null;
42
- getStaleState(): DeepReadonly<State> | null;
43
- _setState(state: ObjectOrStringOrNull<State>, blockNumber: number): void;
44
- setState(state: ObjectOrString<State>, blockNumber: number): void;
45
- }
46
- export {};