From 135b6b24ad9dfc8711f14f548daba1f62d9a6315 Mon Sep 17 00:00:00 2001 From: waynebruce0x Date: Tue, 5 Mar 2024 16:58:28 +0000 Subject: [PATCH] morreeeee --- dexs/3xcalibur/index.ts | 1 + dexs/ascent/index.ts | 1 + dexs/auragi/index.ts | 1 + dexs/balancer/index.ts | 8 ++++---- dexs/carthage/index.ts | 1 + dexs/cherryswap/index.ts | 1 + dexs/clipper/index.ts | 1 + dexs/crescent-swap/index.ts | 1 + dexs/cryptoswap/index.ts | 1 + dexs/elektrik/index.ts | 1 + dexs/fairyswap/index.ts | 1 + dexs/ferro/index.ts | 1 + dexs/forge/index.ts | 1 + dexs/hadouken-amm/index.ts | 1 + dexs/holdr/index.ts | 1 + dexs/integral/index.ts | 1 + dexs/katana/index.ts | 1 + dexs/klex-finance/index.ts | 1 + dexs/knightswap-finance/index.ts | 1 + dexs/koyo/index.ts | 1 + dexs/kyberswap/index.ts | 10 +++++----- dexs/mimo/index.ts | 1 + dexs/mobius-money/index.ts | 1 + dexs/mooniswap/index.ts | 1 + dexs/okcswap/index.ts | 1 + dexs/pegasys-v3/index.ts | 1 + dexs/radioshack/index.ts | 1 + dexs/reax-one-dex/index.ts | 1 + dexs/saddle-finance/index.ts | 1 + dexs/sobal/index.ts | 1 + dexs/soulswap/index.ts | 1 + dexs/spiritswap/index.ts | 1 + dexs/spookyswap/index.ts | 1 + dexs/sushiswap/classic.ts | 5 +++-- dexs/swaap/index.ts | 1 + dexs/templedao-trade/index.ts | 1 + dexs/traderjoe/index.ts | 1 + dexs/velodrome/index.ts | 9 +++++---- dexs/verse/index.ts | 1 + dexs/viperswap/index.ts | 1 + dexs/voltswap/index.ts | 1 + dexs/wardenswap/index.ts | 1 + dexs/wavelength-dao/index.ts | 1 + dexs/whaleswap/index.ts | 1 + dexs/wojak-finance/index.ts | 1 + dexs/woofi/index.ts | 1 + dexs/yieldfields/index.ts | 1 + dexs/zyberswap/index.ts | 1 + helpers/getUniSubgraphVolume.ts | 28 +++++++++++++++------------- options/lyra/index.ts | 1 + 50 files changed, 77 insertions(+), 28 deletions(-) diff --git a/dexs/3xcalibur/index.ts b/dexs/3xcalibur/index.ts index 279b09af12..df7b06c750 100644 --- a/dexs/3xcalibur/index.ts +++ b/dexs/3xcalibur/index.ts @@ -20,6 +20,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.ARBITRUM]: { fetch: graphs(CHAIN.ARBITRUM), diff --git a/dexs/ascent/index.ts b/dexs/ascent/index.ts index a4cee08c5e..7eef0dc886 100644 --- a/dexs/ascent/index.ts +++ b/dexs/ascent/index.ts @@ -41,6 +41,7 @@ const graphsV3 = getChainVolume({ const adapter: BreakdownAdapter = { + version: 2, breakdown: { v2: { [CHAIN.EON]: { diff --git a/dexs/auragi/index.ts b/dexs/auragi/index.ts index 97164ab902..26ee709ebc 100644 --- a/dexs/auragi/index.ts +++ b/dexs/auragi/index.ts @@ -20,6 +20,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.ARBITRUM]: { fetch: graphs(CHAIN.ARBITRUM), diff --git a/dexs/balancer/index.ts b/dexs/balancer/index.ts index bda454de3e..422002420a 100644 --- a/dexs/balancer/index.ts +++ b/dexs/balancer/index.ts @@ -1,6 +1,6 @@ import { Chain } from "@defillama/sdk/build/general"; import request, { gql } from "graphql-request"; -import { BaseAdapter, BreakdownAdapter, ChainEndpoints, FetchResultVolume } from "../../adapters/types"; +import { BaseAdapter, BreakdownAdapter, ChainEndpoints, FetchResultV2, FetchResultVolume, FetchV2 } from "../../adapters/types"; import { CHAIN } from "../../helpers/chains"; import customBackfill from "../../helpers/customBackfill"; import { getStartTimestamp } from "../../helpers/getStartTimestamp"; @@ -37,8 +37,8 @@ interface IPoolSnapshot { const v2Graphs = (chain: Chain) => { - return async (timestamp: number): Promise => { - const startTimestamp = getTimestampAtStartOfDayUTC(timestamp) + return async ({ endTimestamp }): Promise => { + const startTimestamp = getTimestampAtStartOfDayUTC(endTimestamp) const fromTimestamp = startTimestamp - 60 * 60 * 24 const toTimestamp = startTimestamp const graphQuery = gql @@ -62,7 +62,6 @@ const v2Graphs = (chain: Chain) => { return { dailyVolume: `${dailyVolume}`, - timestamp, }; }; }; @@ -76,6 +75,7 @@ const v1graphs = getChainVolume({ }); const adapter: BreakdownAdapter = { + version: 2, breakdown: { v1: { [CHAIN.ETHEREUM]: { diff --git a/dexs/carthage/index.ts b/dexs/carthage/index.ts index 576b76ad83..4d5de83f59 100644 --- a/dexs/carthage/index.ts +++ b/dexs/carthage/index.ts @@ -33,6 +33,7 @@ const v3Graphs = getChainVolume({ }); const adapter: BreakdownAdapter = { + version: 2, breakdown: { v3: { [CANDLE]: { diff --git a/dexs/cherryswap/index.ts b/dexs/cherryswap/index.ts index 1908294c87..eea87da652 100644 --- a/dexs/cherryswap/index.ts +++ b/dexs/cherryswap/index.ts @@ -56,6 +56,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.OKEXCHAIN]: { fetch: graphs(CHAIN.OKEXCHAIN), diff --git a/dexs/clipper/index.ts b/dexs/clipper/index.ts index 546b4d3ec6..cf50cae129 100644 --- a/dexs/clipper/index.ts +++ b/dexs/clipper/index.ts @@ -26,6 +26,7 @@ const graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/crescent-swap/index.ts b/dexs/crescent-swap/index.ts index 5bc0e73a8f..200a407275 100644 --- a/dexs/crescent-swap/index.ts +++ b/dexs/crescent-swap/index.ts @@ -19,6 +19,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.ARBITRUM]: { fetch: graphs(CHAIN.ARBITRUM), diff --git a/dexs/cryptoswap/index.ts b/dexs/cryptoswap/index.ts index 41009b24f3..de8f4963ee 100644 --- a/dexs/cryptoswap/index.ts +++ b/dexs/cryptoswap/index.ts @@ -27,6 +27,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.BSC]: { fetch: graphs(CHAIN.BSC), diff --git a/dexs/elektrik/index.ts b/dexs/elektrik/index.ts index 799229d408..b7f0e0f974 100644 --- a/dexs/elektrik/index.ts +++ b/dexs/elektrik/index.ts @@ -19,6 +19,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.LIGHTLINK_PHOENIX]: { fetch: graphs(CHAIN.LIGHTLINK_PHOENIX), diff --git a/dexs/fairyswap/index.ts b/dexs/fairyswap/index.ts index 7a95960946..22c14d3349 100644 --- a/dexs/fairyswap/index.ts +++ b/dexs/fairyswap/index.ts @@ -56,6 +56,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.FINDORA]: { fetch: graphs(CHAIN.FINDORA), diff --git a/dexs/ferro/index.ts b/dexs/ferro/index.ts index 672344e266..9a8925d1d0 100644 --- a/dexs/ferro/index.ts +++ b/dexs/ferro/index.ts @@ -21,6 +21,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.CRONOS]: { fetch: graphs(CHAIN.CRONOS), diff --git a/dexs/forge/index.ts b/dexs/forge/index.ts index 27aab5e22c..a41be4dc7b 100644 --- a/dexs/forge/index.ts +++ b/dexs/forge/index.ts @@ -22,6 +22,7 @@ const v1Graph = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.EVMOS]: { fetch: v1Graph(CHAIN.EVMOS), diff --git a/dexs/hadouken-amm/index.ts b/dexs/hadouken-amm/index.ts index 8a3282276f..1656f2ee32 100644 --- a/dexs/hadouken-amm/index.ts +++ b/dexs/hadouken-amm/index.ts @@ -24,6 +24,7 @@ const v1graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.GODWOKEN_V1]: { fetch: v1graphs(CHAIN.GODWOKEN_V1 as Chain), diff --git a/dexs/holdr/index.ts b/dexs/holdr/index.ts index 135ea7495a..87f32a937a 100644 --- a/dexs/holdr/index.ts +++ b/dexs/holdr/index.ts @@ -23,6 +23,7 @@ const v1graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.AURORA]: { fetch: v1graphs(CHAIN.AURORA as Chain), diff --git a/dexs/integral/index.ts b/dexs/integral/index.ts index a1269a2663..4f3d734774 100644 --- a/dexs/integral/index.ts +++ b/dexs/integral/index.ts @@ -32,6 +32,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: chains.reduce((acc, chain) => { return { ...acc, diff --git a/dexs/katana/index.ts b/dexs/katana/index.ts index 932313b640..86d1260100 100644 --- a/dexs/katana/index.ts +++ b/dexs/katana/index.ts @@ -64,6 +64,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [RONIN]: { fetch: graphs(RONIN), diff --git a/dexs/klex-finance/index.ts b/dexs/klex-finance/index.ts index f33904fc51..c95bff5e4a 100644 --- a/dexs/klex-finance/index.ts +++ b/dexs/klex-finance/index.ts @@ -25,6 +25,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/knightswap-finance/index.ts b/dexs/knightswap-finance/index.ts index 1473ad90b7..97fa01d267 100644 --- a/dexs/knightswap-finance/index.ts +++ b/dexs/knightswap-finance/index.ts @@ -23,6 +23,7 @@ const v2Graph = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.BSC]: { fetch: v2Graph(CHAIN.BSC), diff --git a/dexs/koyo/index.ts b/dexs/koyo/index.ts index ff4812bb77..fa6b8d074a 100644 --- a/dexs/koyo/index.ts +++ b/dexs/koyo/index.ts @@ -18,6 +18,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.BOBA]: { fetch: graphs(CHAIN.BOBA), diff --git a/dexs/kyberswap/index.ts b/dexs/kyberswap/index.ts index 1de592c7ee..2de8e244d3 100644 --- a/dexs/kyberswap/index.ts +++ b/dexs/kyberswap/index.ts @@ -1,6 +1,6 @@ import ADDRESSES from '../../helpers/coreAssets.json' import request from "graphql-request"; -import { BaseAdapter, BreakdownAdapter, FetchResultVolume } from "../../adapters/types"; +import { BaseAdapter, BreakdownAdapter, FetchOptions, FetchResultVolume } from "../../adapters/types"; import { CHAIN } from "../../helpers/chains"; import { getStartTimestamp } from "../../helpers/getStartTimestamp"; import { @@ -210,15 +210,14 @@ const customeElasicVolumeFunctions: {[s: Chain]: any} = { function buildFromEndpoints(endpoints: typeof classicEndpoints, graphs: typeof classicGraphs, volumeField:string, dailyDataField:string, isElastic: boolean){ return Object.keys(endpoints).reduce((acc, chain) => { acc[chain] = { - fetch: async (timestamp: number) => { - const a = (customeElasicVolumeFunctions[chain] !== undefined) && isElastic ? await customeElasicVolumeFunctions[chain](timestamp) : (await graphs(chain as any)(timestamp, {})) - const elasticV2 = (kyberswapElasticV2.adapter[chain as Chain]?.fetch != undefined && isElastic) ? (await kyberswapElasticV2.adapter[chain as Chain]?.fetch(timestamp, {})) : {} as FetchResultVolume; + fetch: async (options: FetchOptions) => { + const a = (customeElasicVolumeFunctions[chain] !== undefined) && isElastic ? await customeElasicVolumeFunctions[chain](options.endTimestamp) : (await graphs(chain as any)(options)) + const elasticV2 = (kyberswapElasticV2.adapter[chain as Chain]?.fetch != undefined && isElastic) ? (await kyberswapElasticV2.adapter[chain as Chain]?.fetch(options as any, {}, options)) : {} as FetchResultVolume; const dailyVolume = Number(a.dailyVolume) + Number(elasticV2?.dailyVolume || 0) const totalVolume = Number(a.totalVolume) + Number(elasticV2?.totalVolume || 0) return { dailyVolume: `${dailyVolume}`, totalVolume: chain === CHAIN.ARBITRUM ? undefined : `${totalVolume}`, - timestamp }; }, start: getStartTimestamp({ @@ -233,6 +232,7 @@ function buildFromEndpoints(endpoints: typeof classicEndpoints, graphs: typeof c } const adapter: BreakdownAdapter = { + version: 2, breakdown: { classic: buildFromEndpoints(classicEndpoints, classicGraphs, DEFAULT_DAILY_VOLUME_FIELD, "dmmDayDatas", false), elastic: buildFromEndpoints(elasticEndpoints, elasticGraphs, "volumeUSD", "kyberSwapDayDatas", true) diff --git a/dexs/mimo/index.ts b/dexs/mimo/index.ts index b0a49e34b1..7e92afd004 100644 --- a/dexs/mimo/index.ts +++ b/dexs/mimo/index.ts @@ -24,6 +24,7 @@ const graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/mobius-money/index.ts b/dexs/mobius-money/index.ts index 62716277cb..b82ecc5107 100644 --- a/dexs/mobius-money/index.ts +++ b/dexs/mobius-money/index.ts @@ -22,6 +22,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.CELO]: { fetch: graphs(CHAIN.CELO), diff --git a/dexs/mooniswap/index.ts b/dexs/mooniswap/index.ts index 9eda0ad558..a4cfaf84a9 100644 --- a/dexs/mooniswap/index.ts +++ b/dexs/mooniswap/index.ts @@ -25,6 +25,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [ETHEREUM]: { fetch: graphs(ETHEREUM), diff --git a/dexs/okcswap/index.ts b/dexs/okcswap/index.ts index a3c6e271b3..000558e8a0 100644 --- a/dexs/okcswap/index.ts +++ b/dexs/okcswap/index.ts @@ -55,6 +55,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.OKEXCHAIN]: { fetch: graphs(CHAIN.OKEXCHAIN), diff --git a/dexs/pegasys-v3/index.ts b/dexs/pegasys-v3/index.ts index c8b7257fa5..34927e4626 100644 --- a/dexs/pegasys-v3/index.ts +++ b/dexs/pegasys-v3/index.ts @@ -19,6 +19,7 @@ const graphs = getChainVolume({ }); // rollux const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.ROLLUX]: { fetch: graphs(CHAIN.ROLLUX), diff --git a/dexs/radioshack/index.ts b/dexs/radioshack/index.ts index 6122343855..9b7ef01513 100644 --- a/dexs/radioshack/index.ts +++ b/dexs/radioshack/index.ts @@ -24,6 +24,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.POLYGON]: { fetch: graphs(CHAIN.POLYGON), diff --git a/dexs/reax-one-dex/index.ts b/dexs/reax-one-dex/index.ts index 392352c72c..167d73dca9 100644 --- a/dexs/reax-one-dex/index.ts +++ b/dexs/reax-one-dex/index.ts @@ -24,6 +24,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/saddle-finance/index.ts b/dexs/saddle-finance/index.ts index d952a8cc8b..70634220cd 100644 --- a/dexs/saddle-finance/index.ts +++ b/dexs/saddle-finance/index.ts @@ -22,6 +22,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.ARBITRUM]: { fetch: graphs(CHAIN.ARBITRUM), diff --git a/dexs/sobal/index.ts b/dexs/sobal/index.ts index 94deb2599f..b34281f9e5 100644 --- a/dexs/sobal/index.ts +++ b/dexs/sobal/index.ts @@ -23,6 +23,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.NEON]: { fetch: graphs(CHAIN.NEON), diff --git a/dexs/soulswap/index.ts b/dexs/soulswap/index.ts index fe4a658be1..19838476a9 100644 --- a/dexs/soulswap/index.ts +++ b/dexs/soulswap/index.ts @@ -45,6 +45,7 @@ const volume = Object.keys(endpoints).reduce( ); const adapter: SimpleAdapter = { + version: 2, adapter: volume, }; diff --git a/dexs/spiritswap/index.ts b/dexs/spiritswap/index.ts index deacfecce3..572b1f7248 100644 --- a/dexs/spiritswap/index.ts +++ b/dexs/spiritswap/index.ts @@ -25,6 +25,7 @@ const graphs = getChainVolumeWithGasToken({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { fantom: { fetch: graphs("fantom"), diff --git a/dexs/spookyswap/index.ts b/dexs/spookyswap/index.ts index 0635d1441d..0f9dde0882 100644 --- a/dexs/spookyswap/index.ts +++ b/dexs/spookyswap/index.ts @@ -32,6 +32,7 @@ const graphsV3 = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [FANTOM]: { fetch: graphs(FANTOM), diff --git a/dexs/sushiswap/classic.ts b/dexs/sushiswap/classic.ts index daebdfb3f7..d21e9ace31 100644 --- a/dexs/sushiswap/classic.ts +++ b/dexs/sushiswap/classic.ts @@ -7,6 +7,7 @@ import { getGraphDimensions } from "../../helpers/getUniSubgraph"; import { getChainVolumeWithGasToken, } from "../../helpers/getUniSubgraphVolume"; +import { FetchOptions } from "../../adapters/types"; const blacklistTokens = { [CHAIN.ARBITRUM]: [ @@ -150,8 +151,8 @@ const fantomGraphs = getChainVolumeWithGasToken({ priceToken: "coingecko:fantom" } as any); classic[CHAIN.FANTOM] = { - fetch: async (timestamp: number) => { - const values = await fantomGraphs(CHAIN.FANTOM)(timestamp, {}); + fetch: async (options: FetchOptions) => { + const values = await fantomGraphs(CHAIN.FANTOM)(options); const vol = Number(values.dailyVolume) return { ...values, diff --git a/dexs/swaap/index.ts b/dexs/swaap/index.ts index 226e586837..5b238513a1 100644 --- a/dexs/swaap/index.ts +++ b/dexs/swaap/index.ts @@ -143,6 +143,7 @@ const v1graphs = getChainVolume({ }); const adapter: BreakdownAdapter = { + version: 2, breakdown: { v1: { [CHAIN.POLYGON]: { diff --git a/dexs/templedao-trade/index.ts b/dexs/templedao-trade/index.ts index a09339c6c0..ba0d01019a 100644 --- a/dexs/templedao-trade/index.ts +++ b/dexs/templedao-trade/index.ts @@ -22,6 +22,7 @@ const graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/traderjoe/index.ts b/dexs/traderjoe/index.ts index 376566db99..0c1c879b25 100644 --- a/dexs/traderjoe/index.ts +++ b/dexs/traderjoe/index.ts @@ -68,6 +68,7 @@ const graphsV2 = getChainVolume({ }); const adapter: BreakdownAdapter = { + version: 2, breakdown: { v1: { [CHAIN.AVAX]: { diff --git a/dexs/velodrome/index.ts b/dexs/velodrome/index.ts index 79619e8d73..233394147a 100644 --- a/dexs/velodrome/index.ts +++ b/dexs/velodrome/index.ts @@ -1,4 +1,4 @@ -import { SimpleAdapter } from "../../adapters/types"; +import { FetchOptions, SimpleAdapter } from "../../adapters/types"; import { DEFAULT_DAILY_VOLUME_FIELD, DEFAULT_TOTAL_VOLUME_FIELD, getChainVolume } from "../../helpers/getUniSubgraphVolume"; import { CHAIN } from "../../helpers/chains"; import { Chain } from "@defillama/sdk/build/general"; @@ -19,18 +19,19 @@ const graphs = getChainVolume({ }, }); + const fetch = (chain: Chain) => { - return async (timestamp: number) => { - const [v1] = await Promise.all([graphs(chain)(timestamp, {})]) + return async (options: FetchOptions) => { + const [v1] = await Promise.all([graphs(chain)(options)]) const dailyVolume = Number(v1.dailyVolume); return { dailyVolume: `${dailyVolume}`, - timestamp } } } const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.OPTIMISM]: { fetch: fetch(CHAIN.OPTIMISM), diff --git a/dexs/verse/index.ts b/dexs/verse/index.ts index b293ad6bf0..eaa5dc7887 100644 --- a/dexs/verse/index.ts +++ b/dexs/verse/index.ts @@ -31,6 +31,7 @@ const volumeAdapter: BaseAdapter = { } const adapter: SimpleAdapter = { + version: 2, adapter: volumeAdapter, } diff --git a/dexs/viperswap/index.ts b/dexs/viperswap/index.ts index 3196836015..08d2467051 100644 --- a/dexs/viperswap/index.ts +++ b/dexs/viperswap/index.ts @@ -56,6 +56,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [DISABLED_ADAPTER_KEY]: disabledAdapter, [CHAIN.HARMONY]: { diff --git a/dexs/voltswap/index.ts b/dexs/voltswap/index.ts index 6fbb381413..4ea7d9699c 100644 --- a/dexs/voltswap/index.ts +++ b/dexs/voltswap/index.ts @@ -26,6 +26,7 @@ const graphs = getChainVolume({ }); const adapter: BreakdownAdapter = { + version: 2, breakdown: { v1: { [DISABLED_ADAPTER_KEY]: disabledAdapter, diff --git a/dexs/wardenswap/index.ts b/dexs/wardenswap/index.ts index e547013e41..4dd2cc7a67 100644 --- a/dexs/wardenswap/index.ts +++ b/dexs/wardenswap/index.ts @@ -30,6 +30,7 @@ const graphs = getChainVolume({ const adapter: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain: any) => { return { ...acc, diff --git a/dexs/wavelength-dao/index.ts b/dexs/wavelength-dao/index.ts index 48c426ec91..9aab70f54c 100644 --- a/dexs/wavelength-dao/index.ts +++ b/dexs/wavelength-dao/index.ts @@ -49,6 +49,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [CHAIN.VELAS]: { fetch: graphs(CHAIN.VELAS), diff --git a/dexs/whaleswap/index.ts b/dexs/whaleswap/index.ts index a087b00bf4..7598c16549 100644 --- a/dexs/whaleswap/index.ts +++ b/dexs/whaleswap/index.ts @@ -30,6 +30,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [BSC]: { fetch: graphs(BSC), diff --git a/dexs/wojak-finance/index.ts b/dexs/wojak-finance/index.ts index b556b6a315..8d017cbc7f 100644 --- a/dexs/wojak-finance/index.ts +++ b/dexs/wojak-finance/index.ts @@ -61,6 +61,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [DISABLED_ADAPTER_KEY]: disabledAdapter, [CHAIN.DOGECHAIN]: { diff --git a/dexs/woofi/index.ts b/dexs/woofi/index.ts index ed2071f30a..f6b3429281 100644 --- a/dexs/woofi/index.ts +++ b/dexs/woofi/index.ts @@ -78,6 +78,7 @@ const volume = Object.keys(endpoints).reduce( ); const adapter: SimpleAdapter = { + version: 2, adapter: volume, }; export default adapter; diff --git a/dexs/yieldfields/index.ts b/dexs/yieldfields/index.ts index 6337a35770..e82c815f8d 100644 --- a/dexs/yieldfields/index.ts +++ b/dexs/yieldfields/index.ts @@ -29,6 +29,7 @@ const graphs = getChainVolume({ }); const adapter: SimpleAdapter = { + version: 2, adapter: { [BSC]: { fetch: graphs(BSC), diff --git a/dexs/zyberswap/index.ts b/dexs/zyberswap/index.ts index ad4aa2b261..c5297cec94 100644 --- a/dexs/zyberswap/index.ts +++ b/dexs/zyberswap/index.ts @@ -54,6 +54,7 @@ const graphsStable = getChainVolume({ const adapter: BreakdownAdapter = { + version: 2, breakdown: { v2: { [CHAIN.ARBITRUM]: { diff --git a/helpers/getUniSubgraphVolume.ts b/helpers/getUniSubgraphVolume.ts index 7991c680fe..2761ffcc52 100644 --- a/helpers/getUniSubgraphVolume.ts +++ b/helpers/getUniSubgraphVolume.ts @@ -1,7 +1,7 @@ import { Chain } from "@defillama/sdk/build/general"; import { request, gql } from "graphql-request"; import { getBlock } from "./getBlock"; -import { BaseAdapter, ChainBlocks } from "../adapters/types"; +import { BaseAdapter, ChainBlocks, FetchOptions } from "../adapters/types"; import { SimpleAdapter } from "../adapters/types"; import { DEFAULT_DATE_FIELD, getStartTimestamp } from "./getStartTimestamp"; import { Balances } from "@defillama/sdk"; @@ -50,7 +50,7 @@ interface IGetChainVolumeParams { hasTotalVolume?: boolean getCustomBlock?: (timestamp: number) => Promise } - +// HERE function getChainVolume({ graphUrls, totalVolume = { @@ -93,12 +93,13 @@ function getChainVolume({ const graphQueryDailyVolume = gql`${hasDailyVolume ? `query get_daily_volume($id: Int) { ${dailyVolumeQuery} }` : ""}`; return (chain: Chain) => { - return async (timestamp: number, chainBlocks: ChainBlocks) => { - const block = - (getCustomBlock ? - await getCustomBlock(timestamp).catch(e => console.log(e.message)) : - await getBlock(timestamp, chain, chainBlocks).catch(e => console.log(e.message))) ?? undefined; - const id = getUniswapDateId(new Date(timestamp * 1000)); + return async (options: FetchOptions) => { + const { endTimestamp, getEndBlock } = options; + const customBlockFunc = getCustomBlock ? getCustomBlock : getEndBlock; + const block = (await customBlockFunc(endTimestamp).catch((e: any) => + console.log(wrapGraphError(e).message), + )) ?? undefined; + const id = getUniswapDateId(new Date(endTimestamp * 1000)); const graphResTotal = hasTotalVolume ? await request(graphUrls[chain], graphQueryTotalVolume, { block }).catch(e => { try { return JSON.parse(e.response.error).data @@ -115,7 +116,7 @@ function getChainVolume({ }) : undefined; let dailyVolumeValue = graphResDaily ? graphResDaily[dailyVolume.factory]?.[dailyVolume.field] : undefined if (hasDailyVolume && !dailyVolumeValue) { - graphResDaily = await request(graphUrls[chain], alternativeDaily(getUniqStartOfTodayTimestamp(new Date(timestamp * 1000)))).catch(e => { + graphResDaily = await request(graphUrls[chain], alternativeDaily(getUniqStartOfTodayTimestamp(new Date(endTimestamp * 1000)))).catch(e => { try { return JSON.parse(e.response.error).data } catch (error) { @@ -127,7 +128,7 @@ function getChainVolume({ } return { - timestamp, + timestamp: endTimestamp, block, totalVolume: graphResTotal ? graphResTotal[totalVolume.factory]?.reduce((total: number, factory: any) => total + Number(factory[totalVolume.field]), 0) : undefined, dailyVolume: dailyVolumeValue, @@ -155,14 +156,15 @@ function getChainVolumeWithGasToken({ }: IGetChainVolumeParams & {priceToken:string}) { const basic = getChainVolume({graphUrls, totalVolume, dailyVolume, customDailyVolume, hasDailyVolume, hasTotalVolume, getCustomBlock}) return (chain: Chain) => { - return async (timestamp: number, chainBlocks: ChainBlocks) => { + return async (options: FetchOptions) => { const { block, totalVolume, dailyVolume, - } = await basic(chain)(timestamp, chainBlocks); + } = await basic(chain)(options); - const balances = new Balances({ chain, timestamp}) + const timestamp = options.endTimestamp + const balances = new Balances({ chain, timestamp }) balances.add(priceToken, Number(dailyVolume).toFixed(0), { skipChain: true }) return { diff --git a/options/lyra/index.ts b/options/lyra/index.ts index 26e5224d05..ade2020a01 100644 --- a/options/lyra/index.ts +++ b/options/lyra/index.ts @@ -14,6 +14,7 @@ const subgraph = getChainVolume({ }); const adapters: SimpleAdapter = { + version: 2, adapter: Object.keys(endpoints).reduce((acc, chain) => { return { ...acc,