@paraswap/dex-lib 4.0.13 → 4.0.14
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/launch.json +53 -0
- package/.vscode/settings.json +2 -0
- package/.vscode/tasks.json +15 -0
- package/build/abi/{integral/pool.json → inception/inception-ineth-pool.json} +558 -537
- package/build/abi/inception/inception-ratio-feed.json +329 -0
- package/build/abi/inception/inception-vault.json +991 -0
- package/build/abi/uniswap-v3/AlienBaseV3Router.abi.json +52 -0
- package/build/abi/usual-m-smart-m/usualM.abi.json +483 -0
- package/build/abi/{integral/relayer.json → wombat/pool.json} +474 -721
- package/build/dex/aave-v1/aave-v1.d.ts +2 -1
- package/build/dex/aave-v1/aave-v1.js +23 -0
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/aave-v2/tokens-avalanche.json +44 -0
- package/build/dex/aave-v2/tokens-mainnet.json +188 -0
- package/build/dex/aave-v2/tokens-polygon.json +44 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.d.ts +729 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js +732 -0
- package/build/dex/balancer-v3/abi/balancerBatchRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/balancerRouter.d.ts +1406 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js +1175 -0
- package/build/dex/balancer-v3/abi/balancerRouter.js.map +1 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.d.ts +2081 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js +1851 -0
- package/build/dex/balancer-v3/abi/vaultExtension.V3.js.map +1 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.d.ts +34 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js +406 -0
- package/build/dex/balancer-v3/balancer-v3-sepolia-pools.js.map +1 -0
- package/build/dex/bebop/bebop.js +2 -2
- package/build/dex/bebop/bebop.js.map +1 -1
- package/build/dex/cables/cables.js +7 -3
- package/build/dex/cables/cables.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-factory.js +6 -2
- package/build/dex/curve-v1-factory/curve-v1-factory.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.d.ts +1 -1
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js +8 -2
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.d.ts +3 -2
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js +7 -5
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.d.ts +7 -4
- package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js +23 -11
- package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js.map +1 -1
- package/build/dex/dexalot/constants.d.ts +2 -2
- package/build/dex/dexalot/constants.js +2 -2
- package/build/dex/dexalot/dexalot.js +8 -4
- package/build/dex/dexalot/dexalot.js.map +1 -1
- package/build/dex/dexalot/rate-fetcher.d.ts +1 -1
- package/build/dex/dexalot/rate-fetcher.js.map +1 -1
- package/build/dex/generic-rfq/rate-fetcher.js +5 -5
- package/build/dex/generic-rfq/rate-fetcher.js.map +1 -1
- package/build/dex/inception/config.d.ts +4 -0
- package/build/dex/inception/config.js +109 -0
- package/build/dex/inception/config.js.map +1 -0
- package/build/dex/inception/inception-event-pool.d.ts +16 -0
- package/build/dex/inception/inception-event-pool.js +49 -0
- package/build/dex/inception/inception-event-pool.js.map +1 -0
- package/build/dex/inception/inception.d.ts +43 -0
- package/build/dex/inception/inception.js +180 -0
- package/build/dex/inception/inception.js.map +1 -0
- package/build/dex/inception/tokens.d.ts +9 -0
- package/build/dex/inception/tokens.js +28 -0
- package/build/dex/inception/tokens.js.map +1 -0
- package/build/dex/inception/types.d.ts +22 -0
- package/build/dex/inception/types.js +3 -0
- package/build/dex/inception/types.js.map +1 -0
- package/build/dex/inception/utils.d.ts +7 -0
- package/build/dex/inception/utils.js +58 -0
- package/build/dex/inception/utils.js.map +1 -0
- package/build/dex/jarvis.d.ts +2 -1
- package/build/dex/jarvis.js +58 -0
- package/build/dex/jarvis.js.map +1 -1
- package/build/dex/maker-psm/scripts/gem.abi.json +136 -0
- package/build/dex/maker-psm/scripts/validate-state.d.ts +0 -0
- package/build/dex/maker-psm/scripts/validate-state.js +185 -0
- package/build/dex/maker-psm/scripts/validate-state.js.map +1 -0
- package/build/dex/maker-psm/scripts/vat.abi.json +243 -0
- package/build/dex/platypus/platypus.d.ts +2 -1
- package/build/dex/platypus/platypus.js +45 -0
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/solidly-v3/scripts/check-event-pool-event.d.ts +1 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js +53 -0
- package/build/dex/solidly-v3/scripts/check-event-pool-event.js.map +1 -0
- package/build/dex/stable-pool.js +1 -8
- package/build/dex/stable-pool.js.map +1 -1
- package/build/dex/swaap-v1/swaap-v1.d.ts +2 -1
- package/build/dex/swaap-v1/swaap-v1.js +14 -0
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/swaap-v2/swaap-v2.js +2 -2
- package/build/dex/swaap-v2/swaap-v2.js.map +1 -1
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js +64 -0
- package/build/dex/uniswap-v3/forks/alien-base-v3/alien-base-v3.js.map +1 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.d.ts +17 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js +79 -0
- package/build/dex/uniswap-v3/forks/alien-v3/alien-v3.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.d.ts +4 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js +43 -0
- package/build/dex/uniswap-v3/uniswap-v3-pricing.js.map +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.d.ts +1 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js +10 -0
- package/build/dex/uniswap-v3/uniswap-v3-worker.js.map +1 -0
- package/build/dex/usual/usual-m-smart-m.d.ts +17 -0
- package/build/dex/usual/usual-m-smart-m.js +50 -0
- package/build/dex/usual/usual-m-smart-m.js.map +1 -0
- package/build/dex/usual-m-smart-m/config.d.ts +3 -0
- package/build/dex/usual-m-smart-m/config.js +13 -0
- package/build/dex/usual-m-smart-m/config.js.map +1 -0
- package/build/dex/usual-m-smart-m/types.d.ts +7 -0
- package/build/dex/usual-m-smart-m/types.js +3 -0
- package/build/dex/usual-m-smart-m/types.js.map +1 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.d.ts +35 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js +161 -0
- package/build/dex/usual-m-smart-m/usual-m-smart-m.js.map +1 -0
- package/build/dex/usual-m-usd0/config.d.ts +3 -0
- package/build/dex/usual-m-usd0/config.js +14 -0
- package/build/dex/usual-m-usd0/config.js.map +1 -0
- package/build/dex/usual-m-usd0/types.d.ts +8 -0
- package/build/dex/usual-m-usd0/types.js +3 -0
- package/build/dex/usual-m-usd0/types.js.map +1 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.d.ts +35 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.js +159 -0
- package/build/dex/usual-m-usd0/usual-m-usd0.js.map +1 -0
- package/build/dex/zerox/index.d.ts +4 -26
- package/build/dex/zerox/index.js +50 -42
- package/build/dex/zerox/index.js.map +1 -1
- package/build/dex/zerox/types.d.ts +29 -0
- package/build/dex/zerox/types.js +8 -1
- package/build/dex/zerox/types.js.map +1 -1
- package/build/dex-helper/dummy-dex-helper.js +10 -0
- package/build/dex-helper/dummy-dex-helper.js.map +1 -1
- package/build/dex-helper/icache.d.ts +3 -0
- package/build/lib/pub-sub.d.ts +51 -0
- package/build/lib/pub-sub.js +199 -0
- package/build/lib/pub-sub.js.map +1 -0
- package/package.json +1 -1
- package/src/abi/fluid-dex/fluid-dex.abi.json +2 -4
- package/src/dex/bebop/bebop.ts +4 -2
- package/src/dex/cables/cables.ts +9 -3
- package/src/dex/curve-v1-factory/curve-v1-factory.ts +5 -1
- package/src/dex/curve-v1-factory/curve-v1-pool-manager.ts +17 -1
- package/src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts +4 -4
- package/src/dex/curve-v1-factory/state-polling-pools/polling-manager.ts +32 -21
- package/src/dex/dexalot/constants.ts +2 -2
- package/src/dex/dexalot/dexalot.ts +11 -4
- package/src/dex/dexalot/rate-fetcher.ts +6 -6
- package/src/dex/generic-rfq/rate-fetcher.ts +10 -5
- package/src/dex/swaap-v2/swaap-v2.ts +4 -2
- package/src/dex-helper/dummy-dex-helper.ts +21 -0
- package/src/dex-helper/icache.ts +6 -0
- package/src/lib/pub-sub.ts +252 -0
- package/.idea/aws.xml +0 -17
- package/.idea/codeStyles/Project.xml +0 -19
- package/.idea/codeStyles/codeStyleConfig.xml +0 -5
- package/.idea/misc.xml +0 -6
- package/.idea/modules.xml +0 -8
- package/.idea/paraswap-dex-lib.iml +0 -9
- package/.idea/prettier.xml +0 -7
- package/.idea/vcs.xml +0 -6
- package/build/abi/integral/factory.json +0 -333
- package/build/abi/integral/oracle.json +0 -501
- package/build/dex/fluid-dex/fluid-dex-generate-pool.d.ts +0 -49
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js +0 -104
- package/build/dex/fluid-dex/fluid-dex-generate-pool.js.map +0 -1
- package/build/dex/integral/config.d.ts +0 -4
- package/build/dex/integral/config.js +0 -20
- package/build/dex/integral/config.js.map +0 -1
- package/build/dex/integral/context.d.ts +0 -40
- package/build/dex/integral/context.js +0 -158
- package/build/dex/integral/context.js.map +0 -1
- package/build/dex/integral/integral-factory.d.ts +0 -24
- package/build/dex/integral/integral-factory.js +0 -95
- package/build/dex/integral/integral-factory.js.map +0 -1
- package/build/dex/integral/integral-pool.d.ts +0 -50
- package/build/dex/integral/integral-pool.js +0 -149
- package/build/dex/integral/integral-pool.js.map +0 -1
- package/build/dex/integral/integral-pricing.d.ts +0 -18
- package/build/dex/integral/integral-pricing.js +0 -114
- package/build/dex/integral/integral-pricing.js.map +0 -1
- package/build/dex/integral/integral-relayer.d.ts +0 -42
- package/build/dex/integral/integral-relayer.js +0 -192
- package/build/dex/integral/integral-relayer.js.map +0 -1
- package/build/dex/integral/integral-token.d.ts +0 -27
- package/build/dex/integral/integral-token.js +0 -59
- package/build/dex/integral/integral-token.js.map +0 -1
- package/build/dex/integral/integral.d.ts +0 -41
- package/build/dex/integral/integral.js +0 -376
- package/build/dex/integral/integral.js.map +0 -1
- package/build/dex/integral/types.d.ts +0 -85
- package/build/dex/integral/types.js +0 -9
- package/build/dex/integral/types.js.map +0 -1
- package/build/dex/integral/utils-e2e.d.ts +0 -9
- package/build/dex/integral/utils-e2e.js +0 -131
- package/build/dex/integral/utils-e2e.js.map +0 -1
- package/build/dex/integral/utils.d.ts +0 -17
- package/build/dex/integral/utils.js +0 -94
- package/build/dex/integral/utils.js.map +0 -1
- package/build/dex/trader-joe-v2.1/optimizer.d.ts +0 -2
- package/build/dex/trader-joe-v2.1/optimizer.js +0 -47
- package/build/dex/trader-joe-v2.1/optimizer.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dex/zerox/index.ts"],"names":[],"mappings":";;;;;;AAAA,qCAAuC;AACvC,4CAA+C;AAE/C,8EAAoD;AACpD,wEAA+C;AAC/C,wEAA+C;AAC/C,wEAA+C;AAE/C,+CAA2C;AAC3C,wDAAoD;AACpD,mCAAqC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/dex/zerox/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { Address } from '@paraswap/sdk';
|
|
1
2
|
import { NumberAsString } from '../../types';
|
|
2
3
|
export declare enum OrderStatus {
|
|
3
4
|
INVALID = 0,
|
|
@@ -41,4 +42,32 @@ export interface ZeroXSignedOrderV4 {
|
|
|
41
42
|
signature: any;
|
|
42
43
|
}
|
|
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;
|
|
44
73
|
export {};
|
package/build/dex/zerox/types.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.OrderStatus = void 0;
|
|
3
|
+
exports.ZeroXFunctions = exports.OrderStatus = void 0;
|
|
4
4
|
var OrderStatus;
|
|
5
5
|
(function (OrderStatus) {
|
|
6
6
|
OrderStatus[OrderStatus["INVALID"] = 0] = "INVALID";
|
|
@@ -11,4 +11,11 @@ var OrderStatus;
|
|
|
11
11
|
OrderStatus[OrderStatus["FULLY_FILLED"] = 5] = "FULLY_FILLED";
|
|
12
12
|
OrderStatus[OrderStatus["CANCELLED"] = 6] = "CANCELLED";
|
|
13
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 = {}));
|
|
14
21
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/zerox/types.ts"],"names":[],"mappings":";;;
|
|
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"}
|
|
@@ -29,6 +29,13 @@ class DummyCache {
|
|
|
29
29
|
}
|
|
30
30
|
return null;
|
|
31
31
|
}
|
|
32
|
+
async keys(dexKey, network, cacheKey) {
|
|
33
|
+
return [];
|
|
34
|
+
}
|
|
35
|
+
async ttl(dexKey, network, cacheKey) {
|
|
36
|
+
const key = `${network}_${dexKey}_${cacheKey}`.toLowerCase();
|
|
37
|
+
return this.storage[key] ? 1 : -1;
|
|
38
|
+
}
|
|
32
39
|
async rawget(key) {
|
|
33
40
|
return this.storage[key] ? this.storage[key] : null;
|
|
34
41
|
return null;
|
|
@@ -85,6 +92,9 @@ class DummyCache {
|
|
|
85
92
|
}
|
|
86
93
|
return set.has(key);
|
|
87
94
|
}
|
|
95
|
+
async smembers(setKey) {
|
|
96
|
+
return Array.from(this.setMap[setKey] ?? []);
|
|
97
|
+
}
|
|
88
98
|
async hset(mapKey, key, value) {
|
|
89
99
|
if (!this.hashStorage[mapKey])
|
|
90
100
|
this.hashStorage[mapKey] = {};
|
|
@@ -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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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
export interface ICache {
|
|
2
2
|
get(dexKey: string, network: number, cacheKey: string): Promise<string | null>;
|
|
3
|
+
ttl(dexKey: string, network: number, cacheKey: string): Promise<number>;
|
|
4
|
+
keys(dexKey: string, network: number, cacheKey: string): Promise<string[]>;
|
|
3
5
|
rawget(key: string): Promise<string | null>;
|
|
4
6
|
rawset(key: string, value: string, ttl: number): Promise<string | null>;
|
|
5
7
|
rawdel(key: string): Promise<void>;
|
|
@@ -13,6 +15,7 @@ export interface ICache {
|
|
|
13
15
|
zrem(key: string, membersKeys: string[]): Promise<number>;
|
|
14
16
|
zscore(setKey: string, key: string): Promise<string | null>;
|
|
15
17
|
sismember(setKey: string, key: string): Promise<boolean>;
|
|
18
|
+
smembers(setKey: string): Promise<string[]>;
|
|
16
19
|
hset(mapKey: string, key: string, value: string): Promise<void>;
|
|
17
20
|
hdel(mapKey: string, keys: string[]): Promise<number>;
|
|
18
21
|
hget(mapKey: string, key: string): Promise<string | null>;
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import NodeCache from 'node-cache';
|
|
2
|
+
import { Network } from '../constants';
|
|
3
|
+
import { IDexHelper } from '../dex-helper';
|
|
4
|
+
import { Logger } from '../types';
|
|
5
|
+
type KeyValuePubSubMsg = {
|
|
6
|
+
expiresAt: number;
|
|
7
|
+
data: Record<string, unknown>;
|
|
8
|
+
};
|
|
9
|
+
type SetPubSubMsg = string[];
|
|
10
|
+
export declare class ExpStringPubSub {
|
|
11
|
+
private dexHelper;
|
|
12
|
+
private dexKey;
|
|
13
|
+
private defaultValue?;
|
|
14
|
+
private defaultTTL?;
|
|
15
|
+
channel: string;
|
|
16
|
+
network: Network;
|
|
17
|
+
localCache: NodeCache;
|
|
18
|
+
logger: Logger;
|
|
19
|
+
constructor(dexHelper: IDexHelper, dexKey: string, channel: string, defaultValue?: any | undefined, defaultTTL?: number | undefined);
|
|
20
|
+
subscribe(): void;
|
|
21
|
+
publish(data: Record<string, unknown>, ttl: number): void;
|
|
22
|
+
handleSubscription(msg: KeyValuePubSubMsg): void;
|
|
23
|
+
getAndCache<T>(key: string): Promise<T | null>;
|
|
24
|
+
}
|
|
25
|
+
export declare class ExpHashPubSub {
|
|
26
|
+
private dexHelper;
|
|
27
|
+
private hashKey;
|
|
28
|
+
private ttl;
|
|
29
|
+
localCache: NodeCache;
|
|
30
|
+
logger: Logger;
|
|
31
|
+
constructor(dexHelper: IDexHelper, hashKey: string, ttl: number);
|
|
32
|
+
subscribe(): void;
|
|
33
|
+
publish(data: Record<string, unknown>): void;
|
|
34
|
+
handleSubscription(msg: KeyValuePubSubMsg): void;
|
|
35
|
+
getAndCache<T>(key: string): Promise<T | null>;
|
|
36
|
+
}
|
|
37
|
+
export declare class NonExpSetPubSub {
|
|
38
|
+
private dexHelper;
|
|
39
|
+
private dexKey;
|
|
40
|
+
channel: string;
|
|
41
|
+
network: Network;
|
|
42
|
+
set: Set<string>;
|
|
43
|
+
logger: Logger;
|
|
44
|
+
constructor(dexHelper: IDexHelper, dexKey: string, channel: string);
|
|
45
|
+
initializeAndSubscribe(initialSet: string[]): Promise<void>;
|
|
46
|
+
subscribe(): void;
|
|
47
|
+
publish(msg: SetPubSubMsg): void;
|
|
48
|
+
handleSubscription(set: SetPubSubMsg): void;
|
|
49
|
+
has(key: string): Promise<boolean>;
|
|
50
|
+
}
|
|
51
|
+
export {};
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.NonExpSetPubSub = exports.ExpHashPubSub = exports.ExpStringPubSub = void 0;
|
|
7
|
+
const node_cache_1 = __importDefault(require("node-cache"));
|
|
8
|
+
const utils_1 = require("../utils");
|
|
9
|
+
class ExpStringPubSub {
|
|
10
|
+
dexHelper;
|
|
11
|
+
dexKey;
|
|
12
|
+
defaultValue;
|
|
13
|
+
defaultTTL;
|
|
14
|
+
channel;
|
|
15
|
+
network;
|
|
16
|
+
localCache = new node_cache_1.default();
|
|
17
|
+
logger;
|
|
18
|
+
constructor(dexHelper, dexKey, channel, defaultValue, defaultTTL) {
|
|
19
|
+
this.dexHelper = dexHelper;
|
|
20
|
+
this.dexKey = dexKey;
|
|
21
|
+
this.defaultValue = defaultValue;
|
|
22
|
+
this.defaultTTL = defaultTTL;
|
|
23
|
+
this.network = this.dexHelper.config.data.network;
|
|
24
|
+
this.channel = `${this.network}_${this.dexKey}_${channel}`;
|
|
25
|
+
this.logger = this.dexHelper.getLogger(`ExpKeyValuePubSub_${this.channel}`);
|
|
26
|
+
}
|
|
27
|
+
subscribe() {
|
|
28
|
+
this.logger.info(`Subscribing to ${this.channel}`);
|
|
29
|
+
this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
|
|
30
|
+
const before = Date.now();
|
|
31
|
+
const decodedMsg = JSON.parse(msg);
|
|
32
|
+
this.handleSubscription(decodedMsg);
|
|
33
|
+
const after = Date.now();
|
|
34
|
+
this.logger.info(`Decoding and handling took: ${after - before}ms`);
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
publish(data, ttl) {
|
|
38
|
+
const expiresAt = Math.round(Date.now() / 1000) + ttl;
|
|
39
|
+
this.logger.info(`Publishing keys: '${Object.keys(data)}', expiresAt: '${expiresAt}'`);
|
|
40
|
+
this.dexHelper.cache.publish(this.channel, JSON.stringify({ expiresAt, data }));
|
|
41
|
+
}
|
|
42
|
+
handleSubscription(msg) {
|
|
43
|
+
const { expiresAt, data } = msg;
|
|
44
|
+
const now = Math.round(Date.now() / 1000);
|
|
45
|
+
// calculating ttl as message might come with the delay
|
|
46
|
+
const ttl = expiresAt - now;
|
|
47
|
+
if (ttl > 0) {
|
|
48
|
+
const keys = Object.keys(data);
|
|
49
|
+
for (const key of keys) {
|
|
50
|
+
this.localCache.set(key, data[key], ttl);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
else {
|
|
54
|
+
this.logger.error('Message has expired', {
|
|
55
|
+
now,
|
|
56
|
+
expiresAt,
|
|
57
|
+
diffInSeconds: now - expiresAt,
|
|
58
|
+
keys: Object.keys(data),
|
|
59
|
+
});
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
async getAndCache(key) {
|
|
63
|
+
const localValue = this.localCache.get(key);
|
|
64
|
+
if (localValue) {
|
|
65
|
+
return localValue;
|
|
66
|
+
}
|
|
67
|
+
const [value, ttl] = await Promise.all([
|
|
68
|
+
this.dexHelper.cache.get(this.dexKey, this.network, key),
|
|
69
|
+
this.dexHelper.cache.ttl(this.dexKey, this.network, key),
|
|
70
|
+
]);
|
|
71
|
+
if (value && ttl > 0) {
|
|
72
|
+
const parsedValue = JSON.parse(value);
|
|
73
|
+
this.localCache.set(key, parsedValue, ttl);
|
|
74
|
+
return parsedValue;
|
|
75
|
+
}
|
|
76
|
+
if (this.defaultValue && this.defaultTTL && this.defaultTTL > 0) {
|
|
77
|
+
this.localCache.set(key, this.defaultValue, this.defaultTTL);
|
|
78
|
+
return this.defaultValue;
|
|
79
|
+
}
|
|
80
|
+
return null;
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
exports.ExpStringPubSub = ExpStringPubSub;
|
|
84
|
+
class ExpHashPubSub {
|
|
85
|
+
dexHelper;
|
|
86
|
+
hashKey;
|
|
87
|
+
ttl;
|
|
88
|
+
localCache = new node_cache_1.default();
|
|
89
|
+
logger;
|
|
90
|
+
constructor(dexHelper, hashKey,
|
|
91
|
+
// in seconds
|
|
92
|
+
ttl) {
|
|
93
|
+
this.dexHelper = dexHelper;
|
|
94
|
+
this.hashKey = hashKey;
|
|
95
|
+
this.ttl = ttl;
|
|
96
|
+
this.hashKey = hashKey;
|
|
97
|
+
this.logger = this.dexHelper.getLogger(`ExpKeyValuePubSub_${this.hashKey}`);
|
|
98
|
+
}
|
|
99
|
+
subscribe() {
|
|
100
|
+
this.logger.info(`Subscribing`);
|
|
101
|
+
this.dexHelper.cache.subscribe(this.hashKey, (_, msg) => {
|
|
102
|
+
const before = Date.now();
|
|
103
|
+
const decodedMsg = utils_1.Utils.Parse(msg);
|
|
104
|
+
this.handleSubscription(decodedMsg);
|
|
105
|
+
const after = Date.now();
|
|
106
|
+
this.logger.info(`Decoding and handling took: ${after - before}ms`);
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
publish(data) {
|
|
110
|
+
if (Object.keys(data).length > 0) {
|
|
111
|
+
const expiresAt = Math.round(Date.now() / 1000) + this.ttl;
|
|
112
|
+
this.logger.info(`Publishing keys: '${Object.keys(data)}', expiresAt: '${expiresAt}'`);
|
|
113
|
+
this.dexHelper.cache.publish(this.hashKey, utils_1.Utils.Serialize({ expiresAt, data }));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
handleSubscription(msg) {
|
|
117
|
+
const { expiresAt, data } = msg;
|
|
118
|
+
this.logger.info(`Received subscription, keys: '${Object.keys(data)}', expiresAt: '${expiresAt}'`);
|
|
119
|
+
const now = Math.round(Date.now() / 1000);
|
|
120
|
+
// calculating ttl as message might come with the delay
|
|
121
|
+
const ttl = expiresAt - now;
|
|
122
|
+
if (ttl > 0) {
|
|
123
|
+
const keys = Object.keys(data);
|
|
124
|
+
for (const key of keys) {
|
|
125
|
+
this.localCache.set(key, data[key], ttl);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
this.logger.error('Message has expired', {
|
|
130
|
+
now,
|
|
131
|
+
expiresAt,
|
|
132
|
+
diffInSeconds: now - expiresAt,
|
|
133
|
+
keys: Object.keys(data),
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
async getAndCache(key) {
|
|
138
|
+
const localValue = this.localCache.get(key);
|
|
139
|
+
if (localValue !== undefined) {
|
|
140
|
+
this.logger.info(`Returning from local cache: '${key}'`);
|
|
141
|
+
return localValue;
|
|
142
|
+
}
|
|
143
|
+
this.logger.info(`Returning from external cache: '${key}'`);
|
|
144
|
+
const value = await this.dexHelper.cache.hget(this.hashKey, key);
|
|
145
|
+
if (value && this.ttl > 0) {
|
|
146
|
+
const parsedValue = utils_1.Utils.Parse(value);
|
|
147
|
+
this.localCache.set(key, parsedValue, this.ttl);
|
|
148
|
+
return parsedValue;
|
|
149
|
+
}
|
|
150
|
+
return null;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
exports.ExpHashPubSub = ExpHashPubSub;
|
|
154
|
+
class NonExpSetPubSub {
|
|
155
|
+
dexHelper;
|
|
156
|
+
dexKey;
|
|
157
|
+
channel;
|
|
158
|
+
network;
|
|
159
|
+
set = new Set();
|
|
160
|
+
logger;
|
|
161
|
+
constructor(dexHelper, dexKey, channel) {
|
|
162
|
+
this.dexHelper = dexHelper;
|
|
163
|
+
this.dexKey = dexKey;
|
|
164
|
+
this.network = this.dexHelper.config.data.network;
|
|
165
|
+
this.channel = `${this.network}_${this.dexKey}_${channel}`;
|
|
166
|
+
this.logger = this.dexHelper.getLogger(`NonExpSetPubSub_${this.channel}`);
|
|
167
|
+
}
|
|
168
|
+
async initializeAndSubscribe(initialSet) {
|
|
169
|
+
this.logger.info(`initializeAndSubscribe with ${initialSet}`);
|
|
170
|
+
for (const member of initialSet) {
|
|
171
|
+
this.set.add(member);
|
|
172
|
+
}
|
|
173
|
+
this.subscribe();
|
|
174
|
+
}
|
|
175
|
+
subscribe() {
|
|
176
|
+
this.logger.info(`Subscribing`);
|
|
177
|
+
this.dexHelper.cache.subscribe(this.channel, (_, msg) => {
|
|
178
|
+
const decodedMsg = JSON.parse(msg);
|
|
179
|
+
this.handleSubscription(decodedMsg);
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
publish(msg) {
|
|
183
|
+
if (msg.length > 0) {
|
|
184
|
+
this.logger.info(`Publishing msg: '${msg}'`);
|
|
185
|
+
this.dexHelper.cache.publish(this.channel, JSON.stringify(msg));
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
handleSubscription(set) {
|
|
189
|
+
this.logger.info(`Received subscription msg: '${set}'`);
|
|
190
|
+
for (const key of set) {
|
|
191
|
+
this.set.add(key);
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
async has(key) {
|
|
195
|
+
return this.set.has(key);
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
exports.NonExpSetPubSub = NonExpSetPubSub;
|
|
199
|
+
//# sourceMappingURL=pub-sub.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pub-sub.js","sourceRoot":"","sources":["../../src/lib/pub-sub.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -381,15 +381,13 @@
|
|
|
381
381
|
},
|
|
382
382
|
{
|
|
383
383
|
"anonymous": false,
|
|
384
|
-
"inputs": [
|
|
385
|
-
],
|
|
384
|
+
"inputs": [],
|
|
386
385
|
"name": "LogPauseSwapAndArbitrage",
|
|
387
386
|
"type": "event"
|
|
388
387
|
},
|
|
389
388
|
{
|
|
390
389
|
"anonymous": false,
|
|
391
|
-
"inputs": [
|
|
392
|
-
],
|
|
390
|
+
"inputs": [],
|
|
393
391
|
"name": "LogUnpauseSwapAndArbitrage",
|
|
394
392
|
"type": "event"
|
|
395
393
|
},
|
package/src/dex/bebop/bebop.ts
CHANGED
|
@@ -875,10 +875,11 @@ export class Bebop extends SimpleExchange implements IDex<BebopData> {
|
|
|
875
875
|
}
|
|
876
876
|
|
|
877
877
|
async getCachedPrices(): Promise<BebopPricingResponse | null> {
|
|
878
|
-
const cachedPrices = await this.dexHelper.cache.
|
|
878
|
+
const cachedPrices = await this.dexHelper.cache.getAndCacheLocally(
|
|
879
879
|
this.dexKey,
|
|
880
880
|
this.network,
|
|
881
881
|
this.pricesCacheKey,
|
|
882
|
+
2,
|
|
882
883
|
);
|
|
883
884
|
|
|
884
885
|
if (cachedPrices) {
|
|
@@ -889,10 +890,11 @@ export class Bebop extends SimpleExchange implements IDex<BebopData> {
|
|
|
889
890
|
}
|
|
890
891
|
|
|
891
892
|
async getCachedTokens(): Promise<TokenDataMap | null> {
|
|
892
|
-
const cachedTokens = await this.dexHelper.cache.
|
|
893
|
+
const cachedTokens = await this.dexHelper.cache.getAndCacheLocally(
|
|
893
894
|
this.dexKey,
|
|
894
895
|
this.network,
|
|
895
896
|
this.tokensAddrCacheKey,
|
|
897
|
+
BEBOP_TOKENS_POLLING_INTERVAL_MS / 1000,
|
|
896
898
|
);
|
|
897
899
|
|
|
898
900
|
if (cachedTokens) {
|
package/src/dex/cables/cables.ts
CHANGED
|
@@ -642,30 +642,36 @@ export class Cables extends SimpleExchange implements IDex<any> {
|
|
|
642
642
|
* CACHED UTILS
|
|
643
643
|
*/
|
|
644
644
|
async getCachedTokens(): Promise<any> {
|
|
645
|
-
const cachedTokens = await this.dexHelper.cache.
|
|
645
|
+
const cachedTokens = await this.dexHelper.cache.getAndCacheLocally(
|
|
646
646
|
this.dexKey,
|
|
647
647
|
this.network,
|
|
648
648
|
this.rateFetcher.tokensCacheKey,
|
|
649
|
+
// as local cache just uses passed ttl (instead of getting actual ttl from cache)
|
|
650
|
+
// pass shorter interval to avoid getting stale data
|
|
651
|
+
// (same logic is used in other places)
|
|
652
|
+
CABLES_API_TOKENS_POLLING_INTERVAL_MS / 1000,
|
|
649
653
|
);
|
|
650
654
|
|
|
651
655
|
return cachedTokens ? JSON.parse(cachedTokens) : {};
|
|
652
656
|
}
|
|
653
657
|
|
|
654
658
|
async getCachedPairs(): Promise<any> {
|
|
655
|
-
const cachedPairs = await this.dexHelper.cache.
|
|
659
|
+
const cachedPairs = await this.dexHelper.cache.getAndCacheLocally(
|
|
656
660
|
this.dexKey,
|
|
657
661
|
this.network,
|
|
658
662
|
this.rateFetcher.pairsCacheKey,
|
|
663
|
+
CABLES_API_PAIRS_POLLING_INTERVAL_MS / 1000,
|
|
659
664
|
);
|
|
660
665
|
|
|
661
666
|
return cachedPairs ? JSON.parse(cachedPairs) : {};
|
|
662
667
|
}
|
|
663
668
|
|
|
664
669
|
async getCachedPrices(): Promise<any> {
|
|
665
|
-
const cachedPrices = await this.dexHelper.cache.
|
|
670
|
+
const cachedPrices = await this.dexHelper.cache.getAndCacheLocally(
|
|
666
671
|
this.dexKey,
|
|
667
672
|
this.network,
|
|
668
673
|
this.rateFetcher.pricesCacheKey,
|
|
674
|
+
CABLES_API_PRICES_POLLING_INTERVAL_MS / 1000,
|
|
669
675
|
);
|
|
670
676
|
|
|
671
677
|
return cachedPrices ? JSON.parse(cachedPrices) : {};
|
|
@@ -215,9 +215,12 @@ export class CurveV1Factory
|
|
|
215
215
|
|
|
216
216
|
this.poolManager = new CurveV1FactoryPoolManager(
|
|
217
217
|
this.dexKey,
|
|
218
|
+
// should be the same as we use for FactoryStateHandler (4th param) and others
|
|
219
|
+
this.cacheStateKey,
|
|
218
220
|
dexHelper.getLogger(`${this.dexKey}-state-manager`),
|
|
219
221
|
dexHelper,
|
|
220
222
|
allPriceHandlers,
|
|
223
|
+
// should be the same as we use for FactoryStateHandler (8th param) and others
|
|
221
224
|
this.config.stateUpdatePeriodMs,
|
|
222
225
|
);
|
|
223
226
|
}
|
|
@@ -707,7 +710,8 @@ export class CurveV1Factory
|
|
|
707
710
|
factoryImplementationFromConfig.name,
|
|
708
711
|
implementationAddress.toLowerCase(),
|
|
709
712
|
poolAddresses[i],
|
|
710
|
-
this.config,
|
|
713
|
+
this.config.stateUpdatePeriodMs,
|
|
714
|
+
this.config.factories,
|
|
711
715
|
factoryAddress,
|
|
712
716
|
poolIdentifier,
|
|
713
717
|
poolConstants,
|
|
@@ -7,6 +7,7 @@ import {
|
|
|
7
7
|
CURVE_API_URL,
|
|
8
8
|
LIQUIDITY_FETCH_TIMEOUT_MS,
|
|
9
9
|
LIQUIDITY_UPDATE_PERIOD_MS,
|
|
10
|
+
MAX_ALLOWED_STATE_DELAY_FACTOR,
|
|
10
11
|
NETWORK_ID_TO_NAME,
|
|
11
12
|
STATE_UPDATE_PERIOD_MS,
|
|
12
13
|
STATE_UPDATE_RETRY_PERIOD_MS,
|
|
@@ -48,7 +49,7 @@ export class CurveV1FactoryPoolManager {
|
|
|
48
49
|
'/factory-stable-ng',
|
|
49
50
|
]);
|
|
50
51
|
|
|
51
|
-
private statePollingManager
|
|
52
|
+
private statePollingManager: StatePollingManager;
|
|
52
53
|
private taskScheduler: TaskScheduler;
|
|
53
54
|
|
|
54
55
|
private liquidityUpdatedAtMs: number = 0;
|
|
@@ -58,12 +59,27 @@ export class CurveV1FactoryPoolManager {
|
|
|
58
59
|
|
|
59
60
|
constructor(
|
|
60
61
|
private name: string,
|
|
62
|
+
cacheStateKey: string,
|
|
61
63
|
private logger: Logger,
|
|
62
64
|
private dexHelper: IDexHelper,
|
|
63
65
|
private allPriceHandlers: Record<string, PriceHandler>,
|
|
64
66
|
stateUpdatePeriodMs: number = STATE_UPDATE_PERIOD_MS,
|
|
65
67
|
stateUpdateRetryPeriodMs: number = STATE_UPDATE_RETRY_PERIOD_MS,
|
|
68
|
+
maxAllowedStateDelayFactor: number = MAX_ALLOWED_STATE_DELAY_FACTOR,
|
|
66
69
|
) {
|
|
70
|
+
this.statePollingManager = new StatePollingManager(
|
|
71
|
+
dexHelper,
|
|
72
|
+
cacheStateKey,
|
|
73
|
+
// lower than on PoolPollingBase.isStateUpToDate to increase chances of getting fresh data if pub-sub is lagging
|
|
74
|
+
Math.round(
|
|
75
|
+
(stateUpdatePeriodMs / 1000) * (maxAllowedStateDelayFactor - 1),
|
|
76
|
+
),
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
if (this.dexHelper.config.isSlave) {
|
|
80
|
+
this.statePollingManager.subscribe();
|
|
81
|
+
}
|
|
82
|
+
|
|
67
83
|
this.taskScheduler = new TaskScheduler(
|
|
68
84
|
this.name,
|
|
69
85
|
this.logger,
|
|
@@ -18,7 +18,6 @@ import {
|
|
|
18
18
|
import { BytesLike } from 'ethers/lib/utils';
|
|
19
19
|
import { Address } from '@paraswap/core';
|
|
20
20
|
import { BigNumber } from 'ethers';
|
|
21
|
-
import { DexConfigMap } from '../../../types';
|
|
22
21
|
|
|
23
22
|
const DEFAULT_2_ZERO_ARRAY = [0n, 0n];
|
|
24
23
|
const DEFAULT_4_ZERO_ARRAY = [0n, 0n, 0n, 0n];
|
|
@@ -40,7 +39,8 @@ export class FactoryStateHandler extends PoolPollingBase {
|
|
|
40
39
|
readonly implementationName: FactoryImplementationNames,
|
|
41
40
|
implementationAddress: Address,
|
|
42
41
|
readonly address: Address,
|
|
43
|
-
readonly
|
|
42
|
+
readonly stateUpdatePeriodMs: number,
|
|
43
|
+
readonly factories: DexParams['factories'],
|
|
44
44
|
readonly factoryAddress: Address,
|
|
45
45
|
readonly poolIdentifier: string,
|
|
46
46
|
readonly poolConstants: PoolConstants,
|
|
@@ -64,7 +64,7 @@ export class FactoryStateHandler extends PoolPollingBase {
|
|
|
64
64
|
cacheStateKey,
|
|
65
65
|
implementationName,
|
|
66
66
|
implementationAddress,
|
|
67
|
-
|
|
67
|
+
stateUpdatePeriodMs,
|
|
68
68
|
poolIdentifier,
|
|
69
69
|
poolConstants,
|
|
70
70
|
poolContextConstants,
|
|
@@ -84,7 +84,7 @@ export class FactoryStateHandler extends PoolPollingBase {
|
|
|
84
84
|
}
|
|
85
85
|
|
|
86
86
|
getStateMultiCalldata(): MultiCallParams<MulticallReturnedTypes>[] {
|
|
87
|
-
const factoryConfig = this.
|
|
87
|
+
const factoryConfig = this.factories?.find(
|
|
88
88
|
({ address }) =>
|
|
89
89
|
address.toLowerCase() === this.factoryAddress.toLowerCase(),
|
|
90
90
|
);
|