@paraswap/dex-lib 2.16.0 → 2.16.1-generate-state-latest.0
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/build/composed-event-subscriber.d.ts +2 -2
- package/build/composed-event-subscriber.js +9 -4
- package/build/composed-event-subscriber.js.map +1 -1
- package/build/dex/aave-v1/aave-v1.d.ts +1 -1
- package/build/dex/aave-v1/aave-v1.js +1 -1
- package/build/dex/aave-v1/aave-v1.js.map +1 -1
- package/build/dex/aave-v2/aave-v2.d.ts +1 -1
- package/build/dex/aave-v2/aave-v2.js +1 -1
- package/build/dex/aave-v2/aave-v2.js.map +1 -1
- package/build/dex/aave-v3/aave-v3.d.ts +1 -1
- package/build/dex/aave-v3/aave-v3.js +1 -1
- package/build/dex/aave-v3/aave-v3.js.map +1 -1
- package/build/dex/aave-v3/tokens/arbitrum.json +50 -0
- package/build/dex/aave-v3/tokens/avalanche.json +74 -0
- package/build/dex/aave-v3/tokens/fantom.json +62 -0
- package/build/dex/aave-v3/tokens/optimism.json +50 -0
- package/build/dex/aave-v3/tokens/polygon.json +116 -0
- package/build/dex/aave-v3/utils.d.ts +1 -1
- package/build/dex/aave-v3/utils.js.map +1 -1
- package/build/dex/balancer-v1/balancer-v1-pool.d.ts +2 -2
- package/build/dex/balancer-v1/balancer-v1-pool.js +5 -1
- package/build/dex/balancer-v1/balancer-v1-pool.js.map +1 -1
- package/build/dex/balancer-v1/balancer-v1.d.ts +1 -1
- package/build/dex/balancer-v1/balancer-v1.js +7 -4
- package/build/dex/balancer-v1/balancer-v1.js.map +1 -1
- package/build/dex/balancer-v1/utils.d.ts +3 -1
- package/build/dex/balancer-v1/utils.js +18 -5
- package/build/dex/balancer-v1/utils.js.map +1 -1
- package/build/dex/balancer-v2/balancer-v2.d.ts +10 -5
- package/build/dex/balancer-v2/balancer-v2.js +15 -10
- package/build/dex/balancer-v2/balancer-v2.js.map +1 -1
- package/build/dex/camelot/camelot.d.ts +2 -2
- package/build/dex/camelot/camelot.js +15 -6
- package/build/dex/camelot/camelot.js.map +1 -1
- package/build/dex/curve-v1/curve-v1.d.ts +1 -1
- package/build/dex/curve-v1/curve-v1.js +5 -8
- package/build/dex/curve-v1/curve-v1.js.map +1 -1
- package/build/dex/curve-v1/pools/curve-metapool.d.ts +2 -2
- package/build/dex/curve-v1/pools/curve-metapool.js +12 -4
- package/build/dex/curve-v1/pools/curve-metapool.js.map +1 -1
- package/build/dex/curve-v1/pools/curve-pool.d.ts +3 -3
- package/build/dex/curve-v1/pools/curve-pool.js +13 -4
- package/build/dex/curve-v1/pools/curve-pool.js.map +1 -1
- package/build/dex/curve-v1/pools/getstate-multicall.d.ts +6 -1
- package/build/dex/curve-v1/pools/getstate-multicall.js +32 -25
- package/build/dex/curve-v1/pools/getstate-multicall.js.map +1 -1
- package/build/dex/curve-v1-factory/curve-v1-factory.d.ts +3 -3
- package/build/dex/curve-v1-factory/curve-v1-factory.js +4 -4
- 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 +1 -1
- package/build/dex/curve-v1-factory/curve-v1-pool-manager.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.d.ts +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.d.ts +1 -1
- 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 +4 -4
- package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js +5 -15
- package/build/dex/curve-v1-factory/state-polling-pools/polling-manager.js.map +1 -1
- package/build/dex/curve-v1-factory/state-polling-pools/pool-polling-base.d.ts +1 -1
- package/build/dex/curve-v1-factory/types.d.ts +1 -1
- package/build/dex/generic-rfq/generic-rfq.d.ts +1 -1
- package/build/dex/generic-rfq/generic-rfq.js +1 -1
- package/build/dex/generic-rfq/generic-rfq.js.map +1 -1
- package/build/dex/generic-rfq/utils.js +1 -1
- package/build/dex/generic-rfq/utils.js.map +1 -1
- package/build/dex/gmx/gmx.d.ts +1 -1
- package/build/dex/gmx/gmx.js +1 -1
- package/build/dex/gmx/gmx.js.map +1 -1
- package/build/dex/gmx/pool.js +5 -4
- package/build/dex/gmx/pool.js.map +1 -1
- package/build/dex/idex.d.ts +1 -1
- package/build/dex/jarvis-v6/jarvis-v6-events.d.ts +4 -3
- package/build/dex/jarvis-v6/jarvis-v6-events.js +8 -4
- package/build/dex/jarvis-v6/jarvis-v6-events.js.map +1 -1
- package/build/dex/jarvis-v6/jarvis-v6.d.ts +1 -1
- package/build/dex/jarvis-v6/jarvis-v6.js +12 -8
- package/build/dex/jarvis-v6/jarvis-v6.js.map +1 -1
- package/build/dex/jarvis-v6/utils.d.ts +2 -1
- package/build/dex/jarvis-v6/utils.js +15 -6
- package/build/dex/jarvis-v6/utils.js.map +1 -1
- package/build/dex/kyberdmm/kyberdmm.js +4 -1
- package/build/dex/kyberdmm/kyberdmm.js.map +1 -1
- package/build/dex/kyberdmm/pool.d.ts +2 -2
- package/build/dex/kyberdmm/pool.js +21 -20
- package/build/dex/kyberdmm/pool.js.map +1 -1
- package/build/dex/maker-psm/maker-psm.d.ts +3 -3
- package/build/dex/maker-psm/maker-psm.js +35 -27
- package/build/dex/maker-psm/maker-psm.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1-pool.d.ts +3 -5
- package/build/dex/maverick-v1/maverick-v1-pool.js +27 -38
- package/build/dex/maverick-v1/maverick-v1-pool.js.map +1 -1
- package/build/dex/maverick-v1/maverick-v1.d.ts +2 -2
- package/build/dex/maverick-v1/maverick-v1.js +8 -8
- package/build/dex/maverick-v1/maverick-v1.js.map +1 -1
- package/build/dex/nerve/nerve-pool.d.ts +2 -2
- package/build/dex/nerve/nerve-pool.js +28 -25
- package/build/dex/nerve/nerve-pool.js.map +1 -1
- package/build/dex/nerve/nerve.d.ts +2 -2
- package/build/dex/nerve/nerve.js +5 -5
- package/build/dex/nerve/nerve.js.map +1 -1
- package/build/dex/platypus/platypus.d.ts +3 -3
- package/build/dex/platypus/platypus.js +6 -5
- package/build/dex/platypus/platypus.js.map +1 -1
- package/build/dex/swaap-v1/config.d.ts +1 -1
- package/build/dex/swaap-v1/config.js +2 -2
- package/build/dex/swaap-v1/swaap-v1-pool.d.ts +3 -3
- package/build/dex/swaap-v1/swaap-v1-pool.js +15 -9
- package/build/dex/swaap-v1/swaap-v1-pool.js.map +1 -1
- package/build/dex/swaap-v1/swaap-v1.d.ts +2 -2
- package/build/dex/swaap-v1/swaap-v1.js +11 -8
- package/build/dex/swaap-v1/swaap-v1.js.map +1 -1
- package/build/dex/synthetix/synthetix-state.js +1 -1
- package/build/dex/synthetix/synthetix-state.js.map +1 -1
- package/build/dex/synthetix/synthetix.d.ts +1 -1
- package/build/dex/synthetix/synthetix.js +5 -4
- package/build/dex/synthetix/synthetix.js.map +1 -1
- package/build/dex/test-dex/config.d.ts +4 -0
- package/build/dex/test-dex/config.js +15 -0
- package/build/dex/test-dex/config.js.map +1 -0
- package/build/dex/test-dex/test-dex-pool.d.ts +39 -0
- package/build/dex/test-dex/test-dex-pool.js +63 -0
- package/build/dex/test-dex/test-dex-pool.js.map +1 -0
- package/build/dex/test-dex/test-dex.d.ts +37 -0
- package/build/dex/test-dex/test-dex.js +126 -0
- package/build/dex/test-dex/test-dex.js.map +1 -0
- package/build/dex/test-dex/types.d.ts +6 -0
- package/build/dex/test-dex/types.js +3 -0
- package/build/dex/test-dex/types.js.map +1 -0
- package/build/dex/uniswap-v2/uniswap-v2.d.ts +2 -2
- package/build/dex/uniswap-v2/uniswap-v2.js +15 -10
- package/build/dex/uniswap-v2/uniswap-v2.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3-pool.d.ts +3 -3
- package/build/dex/uniswap-v3/uniswap-v3-pool.js +33 -27
- package/build/dex/uniswap-v3/uniswap-v3-pool.js.map +1 -1
- package/build/dex/uniswap-v3/uniswap-v3.d.ts +2 -2
- package/build/dex/uniswap-v3/uniswap-v3.js +4 -3
- package/build/dex/uniswap-v3/uniswap-v3.js.map +1 -1
- package/build/dex/woo-fi-v2/woo-fi-math.d.ts +16 -0
- package/build/dex/woo-fi-v2/woo-fi-math.js +137 -0
- package/build/dex/woo-fi-v2/woo-fi-math.js.map +1 -0
- package/build/dex/woo-fi-v2/woo-fi-v2.d.ts +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2.js +1 -1
- package/build/dex/woo-fi-v2/woo-fi-v2.js.map +1 -1
- package/build/implementations/local-paraswap-sdk.js +1 -2
- package/build/implementations/local-paraswap-sdk.js.map +1 -1
- package/build/lib/generics-events-subscribers/erc20-event-subscriber.d.ts +2 -2
- package/build/lib/generics-events-subscribers/erc20-event-subscriber.js +17 -12
- package/build/lib/generics-events-subscribers/erc20-event-subscriber.js.map +1 -1
- package/build/lib/multi-wrapper.d.ts +5 -1
- package/build/lib/multi-wrapper.js +21 -2
- package/build/lib/multi-wrapper.js.map +1 -1
- package/build/lib/tokens/balancer-fetcher.d.ts +5 -1
- package/build/lib/tokens/balancer-fetcher.js +7 -9
- package/build/lib/tokens/balancer-fetcher.js.map +1 -1
- package/build/pricing-helper.d.ts +1 -1
- package/build/pricing-helper.js +1 -1
- package/build/pricing-helper.js.map +1 -1
- package/build/stateful-event-subscriber.d.ts +7 -3
- package/build/stateful-event-subscriber.js +25 -22
- package/build/stateful-event-subscriber.js.map +1 -1
- package/build/utils.d.ts +2 -2
- package/build/utils.js +1 -1
- package/build/utils.js.map +1 -1
- package/dex-template/__DexName__.ts.template +3 -1
- package/package.json +1 -1
- package/src/composed-event-subscriber.ts +24 -13
- package/src/dex/aave-v1/aave-v1.ts +1 -1
- package/src/dex/aave-v2/aave-v2.ts +1 -1
- package/src/dex/aave-v3/aave-v3.ts +3 -1
- package/src/dex/aave-v3/utils.ts +3 -3
- package/src/dex/balancer-v1/balancer-v1-pool.ts +18 -9
- package/src/dex/balancer-v1/balancer-v1.ts +13 -8
- package/src/dex/balancer-v1/utils.ts +36 -7
- package/src/dex/balancer-v2/balancer-v2.ts +42 -25
- package/src/dex/camelot/camelot.ts +29 -10
- package/src/dex/curve-v1/curve-v1.ts +11 -11
- package/src/dex/curve-v1/pools/curve-metapool.ts +23 -7
- package/src/dex/curve-v1/pools/curve-pool.ts +29 -8
- package/src/dex/curve-v1/pools/getstate-multicall.ts +83 -56
- package/src/dex/curve-v1-factory/curve-v1-factory.ts +4 -4
- package/src/dex/curve-v1-factory/curve-v1-pool-manager.ts +1 -1
- package/src/dex/curve-v1-factory/state-polling-pools/custom-pool-polling.ts +1 -1
- package/src/dex/curve-v1-factory/state-polling-pools/factory-pool-polling.ts +1 -1
- package/src/dex/curve-v1-factory/state-polling-pools/polling-manager.ts +5 -16
- package/src/dex/curve-v1-factory/state-polling-pools/pool-polling-base.ts +1 -1
- package/src/dex/curve-v1-factory/types.ts +1 -1
- package/src/dex/generic-rfq/generic-rfq.ts +3 -1
- package/src/dex/generic-rfq/utils.ts +1 -1
- package/src/dex/gmx/gmx.ts +1 -1
- package/src/dex/gmx/pool.ts +9 -4
- package/src/dex/idex.ts +1 -1
- package/src/dex/jarvis-v6/jarvis-v6-events.ts +17 -6
- package/src/dex/jarvis-v6/jarvis-v6.ts +17 -15
- package/src/dex/jarvis-v6/utils.ts +21 -9
- package/src/dex/kyberdmm/kyberdmm.ts +4 -1
- package/src/dex/kyberdmm/pool.ts +32 -24
- package/src/dex/maker-psm/maker-psm.ts +69 -47
- package/src/dex/maverick-v1/maverick-v1-pool.ts +50 -38
- package/src/dex/maverick-v1/maverick-v1.ts +12 -8
- package/src/dex/nerve/nerve-pool.ts +42 -30
- package/src/dex/nerve/nerve.ts +9 -5
- package/src/dex/platypus/platypus.ts +11 -7
- package/src/dex/swaap-v1/config.ts +1 -1
- package/src/dex/swaap-v1/swaap-v1-pool.ts +23 -14
- package/src/dex/swaap-v1/swaap-v1.ts +21 -14
- package/src/dex/synthetix/synthetix-state.ts +3 -3
- package/src/dex/synthetix/synthetix.ts +5 -4
- package/src/dex/uniswap-v2/uniswap-v2.ts +27 -13
- package/src/dex/uniswap-v3/uniswap-v3-pool.ts +43 -39
- package/src/dex/uniswap-v3/uniswap-v3.ts +5 -4
- package/src/dex/woo-fi-v2/woo-fi-v2.ts +3 -1
- package/src/implementations/local-paraswap-sdk.ts +1 -2
- package/src/lib/generics-events-subscribers/erc20-event-subscriber.ts +29 -18
- package/src/lib/multi-wrapper.ts +41 -2
- package/src/lib/tokens/balancer-fetcher.ts +23 -19
- package/src/pricing-helper.ts +5 -2
- package/src/stateful-event-subscriber.ts +35 -28
- package/src/utils.ts +3 -4
- package/tests/utils.test.ts +44 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthetix-state.js","sourceRoot":"","sources":["../../../src/dex/synthetix/synthetix-state.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"synthetix-state.js","sourceRoot":"","sources":["../../../src/dex/synthetix/synthetix-state.ts"],"names":[],"mappings":"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"}
|
|
@@ -28,7 +28,7 @@ export declare class Synthetix extends SimpleExchange implements IDex<SynthetixD
|
|
|
28
28
|
get multiWrapper(): import("../../lib/multi-wrapper").MultiWrapper;
|
|
29
29
|
private normalizeConfig;
|
|
30
30
|
get onchainConfigValues(): import("./types").OnchainConfigValues;
|
|
31
|
-
initializePricing(blockNumber
|
|
31
|
+
initializePricing(blockNumber?: number | 'latest'): Promise<void>;
|
|
32
32
|
getAdapters(side: SwapSide): {
|
|
33
33
|
name: string;
|
|
34
34
|
index: number;
|
|
@@ -72,15 +72,16 @@ class Synthetix extends simple_exchange_1.SimpleExchange {
|
|
|
72
72
|
get onchainConfigValues() {
|
|
73
73
|
return this.synthetixState.onchainConfigValues;
|
|
74
74
|
}
|
|
75
|
-
async initializePricing(blockNumber) {
|
|
75
|
+
async initializePricing(blockNumber = 'latest') {
|
|
76
|
+
const _blockNumber = blockNumber === 'latest' ? undefined : blockNumber;
|
|
76
77
|
if (this.synthetixState.onchainConfigValuesWithUndefined === undefined) {
|
|
77
|
-
await this.synthetixState.updateOnchainConfigValues(
|
|
78
|
+
await this.synthetixState.updateOnchainConfigValues(_blockNumber);
|
|
78
79
|
}
|
|
79
80
|
if (!this.statePollingTimer) {
|
|
80
|
-
await this.synthetixState.updateOnchainState();
|
|
81
|
+
await this.synthetixState.updateOnchainState(_blockNumber);
|
|
81
82
|
this.statePollingTimer = setInterval(async () => {
|
|
82
83
|
try {
|
|
83
|
-
await this.synthetixState.updateOnchainState();
|
|
84
|
+
await this.synthetixState.updateOnchainState(_blockNumber);
|
|
84
85
|
this.logger.info(`${this.dexKey}: onchain state was updated for network=${this.network}`);
|
|
85
86
|
}
|
|
86
87
|
catch (e) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"synthetix.js","sourceRoot":"","sources":["../../../src/dex/synthetix/synthetix.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAYA,+CAAoD;AACpD,2EAA6D;AAC7D,uCAA4E;AAI5E,wDAAoD;AACpD,qCAAqD;AACrD,4CAA+C;AAC/C,2CAIqB;AACrB,mEAA+D;AAC/D,uDAAmD;AACnD,iEAAiE;AACjE,0DAA0D;AAC1D,gHAAkF;AAElF,MAAa,SAAU,SAAQ,gCAAc;IAiB3C,YACW,OAAgB,EACzB,MAAc,EACL,SAAqB,EACpB,WAAW,iBAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,EACnC,SAAS,wBAAe,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC;QAElD,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;QANhB,YAAO,GAAP,OAAO,CAAS;QAEhB,cAAS,GAAT,SAAS,CAAY;QACpB,aAAQ,GAAR,QAAQ,CAA0B;QACnC,WAAM,GAAN,MAAM,CAAmC;QArB3C,iCAA4B,GAAG,KAAK,CAAC;QACrC,mBAAc,GAAG,IAAI,CAAC;QACtB,6BAAwB,GAAG,KAAK,CAAC;QAsBxC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAC1C,IAAI,CAAC,aAAa,GAAG,IAAI,eAAS,CAAC,oCAAoB,CAAC,CAAC;QACzD,IAAI,CAAC,cAAc,GAAG,IAAI,gCAAc,CACtC,IAAI,CAAC,MAAM,EACX,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,MAAM,CACZ,CAAC;IACJ,CAAC;IAED,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;IACrC,CAAC;IAEO,eAAe,CAAC,MAAiB;QACvC,OAAO;YACL,wBAAwB,EAAE,MAAM,CAAC,wBAAwB,CAAC,WAAW,EAAE;YACvE,eAAe,EAAE,MAAM,CAAC,eAAe,CAAC,WAAW,EAAE;YACrD,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;gBAC5B,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gBACpC,OAAO,CAAC,CAAC;YACX,CAAC,CAAC;YACF,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE;YAC7C,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,WAAW,EAAE;SAChD,CAAC;IACJ,CAAC;IAED,IAAI,mBAAmB;QACrB,OAAO,IAAI,CAAC,cAAc,CAAC,mBAAmB,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,
|
|
1
|
+
{"version":3,"file":"synthetix.js","sourceRoot":"","sources":["../../../src/dex/synthetix/synthetix.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Adapters = exports.TestDexConfig = void 0;
|
|
4
|
+
const constants_1 = require("../../constants");
|
|
5
|
+
exports.TestDexConfig = {
|
|
6
|
+
TestDex: {
|
|
7
|
+
// TODO: complete me!
|
|
8
|
+
},
|
|
9
|
+
};
|
|
10
|
+
exports.Adapters = {
|
|
11
|
+
// TODO: add adapters for each chain
|
|
12
|
+
// This is an example to copy
|
|
13
|
+
[constants_1.Network.MAINNET]: { [constants_1.SwapSide.SELL]: [{ name: '', index: 0 }] },
|
|
14
|
+
};
|
|
15
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/dex/test-dex/config.ts"],"names":[],"mappings":";;;AAEA,+CAAoD;AAEvC,QAAA,aAAa,GAA4B;IACpD,OAAO,EAAE;IACP,qBAAqB;KACtB;CACF,CAAC;AAEW,QAAA,QAAQ,GAAoC;IACvD,oCAAoC;IACpC,6BAA6B;IAC7B,CAAC,mBAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,oBAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE;CACjE,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Interface } from '@ethersproject/abi';
|
|
2
|
+
import { DeepReadonly } from 'ts-essentials';
|
|
3
|
+
import { Log, Logger } from '../../types';
|
|
4
|
+
import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
|
|
5
|
+
import { IDexHelper } from '../../dex-helper/idex-helper';
|
|
6
|
+
import { PoolState } from './types';
|
|
7
|
+
export declare class TestDexEventPool extends StatefulEventSubscriber<PoolState> {
|
|
8
|
+
protected parentName: string;
|
|
9
|
+
protected network: number;
|
|
10
|
+
protected dexHelper: IDexHelper;
|
|
11
|
+
protected testDexIface: Interface;
|
|
12
|
+
handlers: {
|
|
13
|
+
[event: string]: (event: any, state: DeepReadonly<PoolState>, log: Readonly<Log>) => DeepReadonly<PoolState> | null;
|
|
14
|
+
};
|
|
15
|
+
logDecoder: (log: Log) => any;
|
|
16
|
+
addressesSubscribed: string[];
|
|
17
|
+
constructor(parentName: string, network: number, dexHelper: IDexHelper, logger: Logger, testDexIface?: Interface);
|
|
18
|
+
/**
|
|
19
|
+
* The function is called every time any of the subscribed
|
|
20
|
+
* addresses release log. The function accepts the current
|
|
21
|
+
* state, updates the state according to the log, and returns
|
|
22
|
+
* the updated state.
|
|
23
|
+
* @param state - Current state of event subscriber
|
|
24
|
+
* @param log - Log released by one of the subscribed addresses
|
|
25
|
+
* @returns Updates state of the event subscriber after the log
|
|
26
|
+
*/
|
|
27
|
+
protected processLog(state: DeepReadonly<PoolState>, log: Readonly<Log>): DeepReadonly<PoolState> | null;
|
|
28
|
+
/**
|
|
29
|
+
* The function generates state using on-chain calls. This
|
|
30
|
+
* function is called to regenerate state if the event based
|
|
31
|
+
* system fails to fetch events and the local state is no
|
|
32
|
+
* more correct.
|
|
33
|
+
* @param blockNumber - Blocknumber for which the state should
|
|
34
|
+
* should be generated
|
|
35
|
+
* @returns state of the event subscriber at blocknumber
|
|
36
|
+
*/
|
|
37
|
+
generateState(blockNumber: number): Promise<DeepReadonly<PoolState>>;
|
|
38
|
+
handleMyEvent(event: any, state: DeepReadonly<PoolState>, log: Readonly<Log>): DeepReadonly<PoolState> | null;
|
|
39
|
+
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.TestDexEventPool = void 0;
|
|
4
|
+
const abi_1 = require("@ethersproject/abi");
|
|
5
|
+
const utils_1 = require("../../utils");
|
|
6
|
+
const stateful_event_subscriber_1 = require("../../stateful-event-subscriber");
|
|
7
|
+
class TestDexEventPool extends stateful_event_subscriber_1.StatefulEventSubscriber {
|
|
8
|
+
constructor(parentName, network, dexHelper, logger, testDexIface = new abi_1.Interface('' /* TODO: Import and put here TestDex ABI */)) {
|
|
9
|
+
super(parentName, logger);
|
|
10
|
+
this.parentName = parentName;
|
|
11
|
+
this.network = network;
|
|
12
|
+
this.dexHelper = dexHelper;
|
|
13
|
+
this.testDexIface = testDexIface;
|
|
14
|
+
this.handlers = {};
|
|
15
|
+
// TODO: make logDecoder decode logs that
|
|
16
|
+
this.logDecoder = (log) => this.testDexIface.parseLog(log);
|
|
17
|
+
this.addressesSubscribed = [
|
|
18
|
+
/* subscribed addresses */
|
|
19
|
+
];
|
|
20
|
+
// Add handlers
|
|
21
|
+
this.handlers['myEvent'] = this.handleMyEvent.bind(this);
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* The function is called every time any of the subscribed
|
|
25
|
+
* addresses release log. The function accepts the current
|
|
26
|
+
* state, updates the state according to the log, and returns
|
|
27
|
+
* the updated state.
|
|
28
|
+
* @param state - Current state of event subscriber
|
|
29
|
+
* @param log - Log released by one of the subscribed addresses
|
|
30
|
+
* @returns Updates state of the event subscriber after the log
|
|
31
|
+
*/
|
|
32
|
+
processLog(state, log) {
|
|
33
|
+
try {
|
|
34
|
+
const event = this.logDecoder(log);
|
|
35
|
+
if (event.name in this.handlers) {
|
|
36
|
+
return this.handlers[event.name](event, state, log);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
catch (e) {
|
|
40
|
+
(0, utils_1.catchParseLogError)(e, this.logger);
|
|
41
|
+
}
|
|
42
|
+
return null;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* The function generates state using on-chain calls. This
|
|
46
|
+
* function is called to regenerate state if the event based
|
|
47
|
+
* system fails to fetch events and the local state is no
|
|
48
|
+
* more correct.
|
|
49
|
+
* @param blockNumber - Blocknumber for which the state should
|
|
50
|
+
* should be generated
|
|
51
|
+
* @returns state of the event subscriber at blocknumber
|
|
52
|
+
*/
|
|
53
|
+
async generateState(blockNumber) {
|
|
54
|
+
// TODO: complete me!
|
|
55
|
+
return {};
|
|
56
|
+
}
|
|
57
|
+
// Its just a dummy example
|
|
58
|
+
handleMyEvent(event, state, log) {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
exports.TestDexEventPool = TestDexEventPool;
|
|
63
|
+
//# sourceMappingURL=test-dex-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-dex-pool.js","sourceRoot":"","sources":["../../../src/dex/test-dex/test-dex-pool.ts"],"names":[],"mappings":";;;AAAA,4CAA+C;AAG/C,uCAAiD;AACjD,+EAA0E;AAI1E,MAAa,gBAAiB,SAAQ,mDAAkC;IAWtE,YACY,UAAkB,EAClB,OAAe,EACf,SAAqB,EAC/B,MAAc,EACJ,eAAe,IAAI,eAAS,CACpC,EAAE,CAAC,2CAA2C,CAC/C;QAED,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;QARhB,eAAU,GAAV,UAAU,CAAQ;QAClB,YAAO,GAAP,OAAO,CAAQ;QACf,cAAS,GAAT,SAAS,CAAY;QAErB,iBAAY,GAAZ,YAAY,CAErB;QAjBH,aAAQ,GAIJ,EAAE,CAAC;QAiBL,yCAAyC;QACzC,IAAI,CAAC,UAAU,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAChE,IAAI,CAAC,mBAAmB,GAAG;QACzB,0BAA0B;SAC3B,CAAC;QAEF,eAAe;QACf,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC3D,CAAC;IAED;;;;;;;;OAQG;IACO,UAAU,CAClB,KAA8B,EAC9B,GAAkB;QAElB,IAAI;YACF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACnC,IAAI,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE;gBAC/B,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aACrD;SACF;QAAC,OAAO,CAAC,EAAE;YACV,IAAA,0BAAkB,EAAC,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;SACpC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACH,KAAK,CAAC,aAAa,CAAC,WAAmB;QACrC,qBAAqB;QACrB,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,2BAA2B;IAC3B,aAAa,CACX,KAAU,EACV,KAA8B,EAC9B,GAAkB;QAElB,OAAO,IAAI,CAAC;IACd,CAAC;CACF;AA/ED,4CA+EC"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { AsyncOrSync } from 'ts-essentials';
|
|
2
|
+
import { Token, Address, ExchangePrices, PoolPrices, AdapterExchangeParam, SimpleExchangeParam, PoolLiquidity, Logger } from '../../types';
|
|
3
|
+
import { SwapSide, Network } from '../../constants';
|
|
4
|
+
import { IDex } from '../../dex/idex';
|
|
5
|
+
import { IDexHelper } from '../../dex-helper/idex-helper';
|
|
6
|
+
import { TestDexData } from './types';
|
|
7
|
+
import { SimpleExchange } from '../simple-exchange';
|
|
8
|
+
import { TestDexEventPool } from './test-dex-pool';
|
|
9
|
+
export declare class TestDex extends SimpleExchange implements IDex<TestDexData> {
|
|
10
|
+
readonly network: Network;
|
|
11
|
+
readonly dexKey: string;
|
|
12
|
+
readonly dexHelper: IDexHelper;
|
|
13
|
+
protected adapters: import("../../types").AdapterMappings;
|
|
14
|
+
protected eventPools: TestDexEventPool;
|
|
15
|
+
readonly hasConstantPriceLargeAmounts = false;
|
|
16
|
+
readonly needWrapNative = true;
|
|
17
|
+
readonly isFeeOnTransferSupported = false;
|
|
18
|
+
static dexKeysWithNetwork: {
|
|
19
|
+
key: string;
|
|
20
|
+
networks: Network[];
|
|
21
|
+
}[];
|
|
22
|
+
logger: Logger;
|
|
23
|
+
constructor(network: Network, dexKey: string, dexHelper: IDexHelper, adapters?: import("../../types").AdapterMappings);
|
|
24
|
+
initializePricing(blockNumber: number): Promise<void>;
|
|
25
|
+
getAdapters(side: SwapSide): {
|
|
26
|
+
name: string;
|
|
27
|
+
index: number;
|
|
28
|
+
}[] | null;
|
|
29
|
+
getPoolIdentifiers(srcToken: Token, destToken: Token, side: SwapSide, blockNumber: number): Promise<string[]>;
|
|
30
|
+
getPricesVolume(srcToken: Token, destToken: Token, amounts: bigint[], side: SwapSide, blockNumber: number, limitPools?: string[]): Promise<null | ExchangePrices<TestDexData>>;
|
|
31
|
+
getCalldataGasCost(poolPrices: PoolPrices<TestDexData>): number | number[];
|
|
32
|
+
getAdapterParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: TestDexData, side: SwapSide): AdapterExchangeParam;
|
|
33
|
+
getSimpleParam(srcToken: string, destToken: string, srcAmount: string, destAmount: string, data: TestDexData, side: SwapSide): Promise<SimpleExchangeParam>;
|
|
34
|
+
updatePoolState(): Promise<void>;
|
|
35
|
+
getTopPoolsForToken(tokenAddress: Address, limit: number): Promise<PoolLiquidity[]>;
|
|
36
|
+
releaseResources(): AsyncOrSync<void>;
|
|
37
|
+
}
|
|
@@ -0,0 +1,126 @@
|
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.TestDex = void 0;
|
|
27
|
+
const CALLDATA_GAS_COST = __importStar(require("../../calldata-gas-cost"));
|
|
28
|
+
const utils_1 = require("../../utils");
|
|
29
|
+
const simple_exchange_1 = require("../simple-exchange");
|
|
30
|
+
const config_1 = require("./config");
|
|
31
|
+
const test_dex_pool_1 = require("./test-dex-pool");
|
|
32
|
+
class TestDex extends simple_exchange_1.SimpleExchange {
|
|
33
|
+
constructor(network, dexKey, dexHelper, adapters = config_1.Adapters[network] || {}) {
|
|
34
|
+
super(dexHelper, dexKey);
|
|
35
|
+
this.network = network;
|
|
36
|
+
this.dexKey = dexKey;
|
|
37
|
+
this.dexHelper = dexHelper;
|
|
38
|
+
this.adapters = adapters;
|
|
39
|
+
this.hasConstantPriceLargeAmounts = false;
|
|
40
|
+
// TODO: set true here if protocols works only with wrapped asset
|
|
41
|
+
this.needWrapNative = true;
|
|
42
|
+
this.isFeeOnTransferSupported = false;
|
|
43
|
+
this.logger = dexHelper.getLogger(dexKey);
|
|
44
|
+
this.eventPools = new test_dex_pool_1.TestDexEventPool(dexKey, network, dexHelper, this.logger);
|
|
45
|
+
}
|
|
46
|
+
// Initialize pricing is called once in the start of
|
|
47
|
+
// pricing service. It is intended to setup the integration
|
|
48
|
+
// for pricing requests. It is optional for a DEX to
|
|
49
|
+
// implement this function
|
|
50
|
+
async initializePricing(blockNumber) {
|
|
51
|
+
// TODO: complete me!
|
|
52
|
+
}
|
|
53
|
+
// Returns the list of contract adapters (name and index)
|
|
54
|
+
// for a buy/sell. Return null if there are no adapters.
|
|
55
|
+
getAdapters(side) {
|
|
56
|
+
return this.adapters[side] ? this.adapters[side] : null;
|
|
57
|
+
}
|
|
58
|
+
// Returns list of pool identifiers that can be used
|
|
59
|
+
// for a given swap. poolIdentifiers must be unique
|
|
60
|
+
// across DEXes. It is recommended to use
|
|
61
|
+
// ${dexKey}_${poolAddress} as a poolIdentifier
|
|
62
|
+
async getPoolIdentifiers(srcToken, destToken, side, blockNumber) {
|
|
63
|
+
// TODO: complete me!
|
|
64
|
+
return [];
|
|
65
|
+
}
|
|
66
|
+
// Returns pool prices for amounts.
|
|
67
|
+
// If limitPools is defined only pools in limitPools
|
|
68
|
+
// should be used. If limitPools is undefined then
|
|
69
|
+
// any pools can be used.
|
|
70
|
+
async getPricesVolume(srcToken, destToken, amounts, side, blockNumber, limitPools) {
|
|
71
|
+
// TODO: complete me!
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
// Returns estimated gas cost of calldata for this DEX in multiSwap
|
|
75
|
+
getCalldataGasCost(poolPrices) {
|
|
76
|
+
// TODO: update if there is any payload in getAdapterParam
|
|
77
|
+
return CALLDATA_GAS_COST.DEX_NO_PAYLOAD;
|
|
78
|
+
}
|
|
79
|
+
// Encode params required by the exchange adapter
|
|
80
|
+
// Used for multiSwap, buy & megaSwap
|
|
81
|
+
// Hint: abiCoder.encodeParameter() could be useful
|
|
82
|
+
getAdapterParam(srcToken, destToken, srcAmount, destAmount, data, side) {
|
|
83
|
+
// TODO: complete me!
|
|
84
|
+
const { exchange } = data;
|
|
85
|
+
// Encode here the payload for adapter
|
|
86
|
+
const payload = '';
|
|
87
|
+
return {
|
|
88
|
+
targetExchange: exchange,
|
|
89
|
+
payload,
|
|
90
|
+
networkFee: '0',
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
// Encode call data used by simpleSwap like routers
|
|
94
|
+
// Used for simpleSwap & simpleBuy
|
|
95
|
+
// Hint: this.buildSimpleParamWithoutWETHConversion
|
|
96
|
+
// could be useful
|
|
97
|
+
async getSimpleParam(srcToken, destToken, srcAmount, destAmount, data, side) {
|
|
98
|
+
// TODO: complete me!
|
|
99
|
+
const { exchange } = data;
|
|
100
|
+
// Encode here the transaction arguments
|
|
101
|
+
const swapData = '';
|
|
102
|
+
return this.buildSimpleParamWithoutWETHConversion(srcToken, srcAmount, destToken, destAmount, swapData, exchange);
|
|
103
|
+
}
|
|
104
|
+
// This is called once before getTopPoolsForToken is
|
|
105
|
+
// called for multiple tokens. This can be helpful to
|
|
106
|
+
// update common state required for calculating
|
|
107
|
+
// getTopPoolsForToken. It is optional for a DEX
|
|
108
|
+
// to implement this
|
|
109
|
+
async updatePoolState() {
|
|
110
|
+
// TODO: complete me!
|
|
111
|
+
}
|
|
112
|
+
// Returns list of top pools based on liquidity. Max
|
|
113
|
+
// limit number pools should be returned.
|
|
114
|
+
async getTopPoolsForToken(tokenAddress, limit) {
|
|
115
|
+
//TODO: complete me!
|
|
116
|
+
return [];
|
|
117
|
+
}
|
|
118
|
+
// This is optional function in case if your implementation has acquired any resources
|
|
119
|
+
// you need to release for graceful shutdown. For example, it may be any interval timer
|
|
120
|
+
releaseResources() {
|
|
121
|
+
// TODO: complete me!
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
exports.TestDex = TestDex;
|
|
125
|
+
TestDex.dexKeysWithNetwork = (0, utils_1.getDexKeysWithNetwork)(config_1.TestDexConfig);
|
|
126
|
+
//# sourceMappingURL=test-dex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"test-dex.js","sourceRoot":"","sources":["../../../src/dex/test-dex/test-dex.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/dex/test-dex/types.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Interface } from '@ethersproject/abi';
|
|
2
2
|
import { AsyncOrSync, DeepReadonly } from 'ts-essentials';
|
|
3
|
-
import { StatefulEventSubscriber } from '../../stateful-event-subscriber';
|
|
3
|
+
import { StateWithBlock, StatefulEventSubscriber } from '../../stateful-event-subscriber';
|
|
4
4
|
import { AdapterExchangeParam, Address, ExchangePrices, PoolPrices, Log, Logger, PoolLiquidity, SimpleExchangeParam, Token, TxInfo, TransferFeeParams } from '../../types';
|
|
5
5
|
import { UniswapData, UniswapParam, UniswapV2Data, UniswapV2Functions, UniswapV2PoolOrderedParams } from './types';
|
|
6
6
|
import { IDex } from '../idex';
|
|
@@ -38,7 +38,7 @@ export declare class UniswapV2EventPool extends StatefulEventSubscriber<UniswapV
|
|
|
38
38
|
callData: string;
|
|
39
39
|
} | undefined, feesMultiCallDecoder?: ((values: any[]) => number) | undefined, iface?: Interface);
|
|
40
40
|
protected processLog(state: DeepReadonly<UniswapV2PoolState>, log: Readonly<Log>): AsyncOrSync<DeepReadonly<UniswapV2PoolState> | null>;
|
|
41
|
-
generateState(blockNumber?: number | 'latest'): Promise<
|
|
41
|
+
generateState(blockNumber?: number | 'latest'): Promise<StateWithBlock<UniswapV2PoolState>>;
|
|
42
42
|
}
|
|
43
43
|
export declare class UniswapV2 extends SimpleExchange implements IDex<UniswapV2Data, UniswapParam> {
|
|
44
44
|
protected network: Network;
|
|
@@ -106,16 +106,18 @@ class UniswapV2EventPool extends stateful_event_subscriber_1.StatefulEventSubscr
|
|
|
106
106
|
if (this.dynamicFees) {
|
|
107
107
|
calldata.push(this.feesMultiCallEntry);
|
|
108
108
|
}
|
|
109
|
-
const
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
const decodedData = coder.decode(['uint112', 'uint112', 'uint32'], data.returnData[0]);
|
|
109
|
+
const results = await (0, utils_1.blockAndTryAggregate)(true, this.dexHelper.multiContract, calldata, blockNumber);
|
|
110
|
+
const data = results.results;
|
|
111
|
+
const decodedData = coder.decode(['uint112', 'uint112', 'uint32'], data[0].returnData);
|
|
113
112
|
return {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
: this.
|
|
113
|
+
blockNumber: results.blockNumber,
|
|
114
|
+
state: {
|
|
115
|
+
reserves0: decodedData[0].toString(),
|
|
116
|
+
reserves1: decodedData[1].toString(),
|
|
117
|
+
feeCode: this.dynamicFees
|
|
118
|
+
? this.feesMultiCallDecoder(data[1].returnData)
|
|
119
|
+
: this.feeCode,
|
|
120
|
+
},
|
|
119
121
|
};
|
|
120
122
|
}
|
|
121
123
|
}
|
|
@@ -172,7 +174,10 @@ class UniswapV2 extends simple_exchange_1.SimpleExchange {
|
|
|
172
174
|
pair.pool = new UniswapV2EventPool(this.dexKey, this.dexHelper, pair.exchange, pair.token0, pair.token1, feeCode, this.logger, this.isDynamicFees, callEntry, callDecoder, this.decoderIface);
|
|
173
175
|
pair.pool.addressesSubscribed.push(pair.exchange);
|
|
174
176
|
await pair.pool.initialize(blockNumber, {
|
|
175
|
-
|
|
177
|
+
stateWithBn: {
|
|
178
|
+
blockNumber: blockNumber,
|
|
179
|
+
state: { reserves0, reserves1, feeCode },
|
|
180
|
+
},
|
|
176
181
|
});
|
|
177
182
|
}
|
|
178
183
|
async getBuyPrice(priceParams, destAmount) {
|