@clober/v2-sdk 1.0.0-rc.3 → 1.0.0-rc.31
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/dist/cjs/calls/market/limit.js +5 -0
- package/dist/cjs/calls/market/limit.js.map +1 -1
- package/dist/cjs/constants/abis/core/controller-abi.js +24 -1
- package/dist/cjs/constants/abis/core/controller-abi.js.map +1 -1
- package/dist/cjs/constants/chain-configs/addresses.js +21 -3
- package/dist/cjs/constants/chain-configs/addresses.js.map +1 -1
- package/dist/cjs/constants/chain-configs/chain.js +4 -0
- package/dist/cjs/constants/chain-configs/chain.js.map +1 -1
- package/dist/cjs/constants/chain-configs/currency.js +118 -16
- package/dist/cjs/constants/chain-configs/currency.js.map +1 -1
- package/dist/cjs/constants/chain-configs/fee.js +4 -0
- package/dist/cjs/constants/chain-configs/fee.js.map +1 -1
- package/dist/cjs/constants/chain-configs/subgraph.js +2 -1
- package/dist/cjs/constants/chain-configs/subgraph.js.map +1 -1
- package/dist/cjs/constants/networks/test-chain.js +24 -1
- package/dist/cjs/constants/networks/test-chain.js.map +1 -1
- package/dist/cjs/entities/analytics/apis/index.js +80 -16
- package/dist/cjs/entities/analytics/apis/index.js.map +1 -1
- package/dist/cjs/entities/book/apis/index.js +39 -13
- package/dist/cjs/entities/book/apis/index.js.map +1 -1
- package/dist/cjs/entities/currency/apis/total-supply.js +3 -6
- package/dist/cjs/entities/currency/apis/total-supply.js.map +1 -1
- package/dist/cjs/entities/market/apis/snapshot.js +228 -80
- package/dist/cjs/entities/market/apis/snapshot.js.map +1 -1
- package/dist/cjs/entities/market/utils/market-id.js +1 -1
- package/dist/cjs/entities/market/utils/market-id.js.map +1 -1
- package/dist/cjs/entities/pool/apis/snapshot.js +20 -16
- package/dist/cjs/entities/pool/apis/snapshot.js.map +1 -1
- package/dist/cjs/types/index.js.map +1 -1
- package/dist/cjs/utils/bigint.js +4 -1
- package/dist/cjs/utils/bigint.js.map +1 -1
- package/dist/cjs/views/analytics.js +9 -1
- package/dist/cjs/views/analytics.js.map +1 -1
- package/dist/cjs/views/currency.js +5 -1
- package/dist/cjs/views/currency.js.map +1 -1
- package/dist/cjs/views/index.js +4 -1
- package/dist/cjs/views/index.js.map +1 -1
- package/dist/cjs/views/market/chart-log.js +2 -2
- package/dist/cjs/views/market/snapshot.js.map +1 -1
- package/dist/esm/calls/market/limit.js +6 -1
- package/dist/esm/calls/market/limit.js.map +1 -1
- package/dist/esm/constants/abis/core/controller-abi.js +24 -1
- package/dist/esm/constants/abis/core/controller-abi.js.map +1 -1
- package/dist/esm/constants/chain-configs/addresses.js +24 -15
- package/dist/esm/constants/chain-configs/addresses.js.map +1 -1
- package/dist/esm/constants/chain-configs/chain.js +6 -4
- package/dist/esm/constants/chain-configs/chain.js.map +1 -1
- package/dist/esm/constants/chain-configs/currency.js +119 -29
- package/dist/esm/constants/chain-configs/currency.js.map +1 -1
- package/dist/esm/constants/chain-configs/fee.js +4 -2
- package/dist/esm/constants/chain-configs/fee.js.map +1 -1
- package/dist/esm/constants/chain-configs/subgraph.js +2 -3
- package/dist/esm/constants/chain-configs/subgraph.js.map +1 -1
- package/dist/esm/constants/networks/test-chain.js +23 -0
- package/dist/esm/constants/networks/test-chain.js.map +1 -1
- package/dist/esm/entities/analytics/apis/index.js +77 -15
- package/dist/esm/entities/analytics/apis/index.js.map +1 -1
- package/dist/esm/entities/book/apis/index.js +39 -13
- package/dist/esm/entities/book/apis/index.js.map +1 -1
- package/dist/esm/entities/currency/apis/total-supply.js +4 -7
- package/dist/esm/entities/currency/apis/total-supply.js.map +1 -1
- package/dist/esm/entities/market/apis/snapshot.js +230 -81
- package/dist/esm/entities/market/apis/snapshot.js.map +1 -1
- package/dist/esm/entities/market/utils/market-id.js +2 -2
- package/dist/esm/entities/market/utils/market-id.js.map +1 -1
- package/dist/esm/entities/pool/apis/snapshot.js +21 -17
- package/dist/esm/entities/pool/apis/snapshot.js.map +1 -1
- package/dist/esm/types/index.js.map +1 -1
- package/dist/esm/utils/bigint.js +2 -0
- package/dist/esm/utils/bigint.js.map +1 -1
- package/dist/esm/views/analytics.js +7 -1
- package/dist/esm/views/analytics.js.map +1 -1
- package/dist/esm/views/currency.js +4 -1
- package/dist/esm/views/currency.js.map +1 -1
- package/dist/esm/views/index.js +2 -2
- package/dist/esm/views/index.js.map +1 -1
- package/dist/esm/views/market/chart-log.js +2 -2
- package/dist/esm/views/market/snapshot.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/calls/market/limit.d.ts +1 -0
- package/dist/types/calls/market/limit.d.ts.map +1 -1
- package/dist/types/constants/abis/core/controller-abi.d.ts +19 -1
- package/dist/types/constants/abis/core/controller-abi.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/addresses.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/chain.d.ts +2 -0
- package/dist/types/constants/chain-configs/chain.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/currency.d.ts +8 -11
- package/dist/types/constants/chain-configs/currency.d.ts.map +1 -1
- package/dist/types/constants/chain-configs/fee.d.ts.map +1 -1
- package/dist/types/constants/networks/test-chain.d.ts +1 -0
- package/dist/types/constants/networks/test-chain.d.ts.map +1 -1
- package/dist/types/entities/analytics/apis/index.d.ts +3 -1
- package/dist/types/entities/analytics/apis/index.d.ts.map +1 -1
- package/dist/types/entities/analytics/types.d.ts +12 -2
- package/dist/types/entities/analytics/types.d.ts.map +1 -1
- package/dist/types/entities/book/apis/index.d.ts.map +1 -1
- package/dist/types/entities/currency/apis/total-supply.d.ts.map +1 -1
- package/dist/types/entities/market/apis/snapshot.d.ts +1 -1
- package/dist/types/entities/market/apis/snapshot.d.ts.map +1 -1
- package/dist/types/entities/market/types.d.ts +2 -0
- package/dist/types/entities/market/types.d.ts.map +1 -1
- package/dist/types/entities/pool/apis/snapshot.d.ts.map +1 -1
- package/dist/types/entities/pool/types.d.ts +2 -0
- package/dist/types/entities/pool/types.d.ts.map +1 -1
- package/dist/types/types/index.d.ts +1 -0
- package/dist/types/types/index.d.ts.map +1 -1
- package/dist/types/utils/bigint.d.ts +1 -0
- package/dist/types/utils/bigint.d.ts.map +1 -1
- package/dist/types/views/analytics.d.ts +8 -1
- package/dist/types/views/analytics.d.ts.map +1 -1
- package/dist/types/views/currency.d.ts +5 -6
- package/dist/types/views/currency.d.ts.map +1 -1
- package/dist/types/views/index.d.ts +2 -2
- package/dist/types/views/index.d.ts.map +1 -1
- package/dist/types/views/market/snapshot.d.ts +1 -1
- package/dist/types/views/market/snapshot.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/cjs/entities/book/apis/open.js +0 -46
- package/dist/cjs/entities/book/apis/open.js.map +0 -1
- package/dist/esm/entities/book/apis/open.js +0 -42
- package/dist/esm/entities/book/apis/open.js.map +0 -1
- package/dist/types/entities/book/apis/open.d.ts +0 -4
- package/dist/types/entities/book/apis/open.d.ts.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"total-supply.js","sourceRoot":"","sources":["../../../../../src/entities/currency/apis/total-supply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,WAAW,EAAE,cAAc,EAAE,MAAM,MAAM,CAAA;AAEhE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"total-supply.js","sourceRoot":"","sources":["../../../../../src/entities/currency/apis/total-supply.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,118 +1,239 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { getAddress, isAddressEqual } from 'viem';
|
|
2
2
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
3
3
|
import { getQuoteToken } from '../../../views';
|
|
4
4
|
import { fetchTotalSupplyMap } from '../../currency/apis/total-supply';
|
|
5
5
|
import { getDailyStartTimestampInSeconds } from '../../../utils/time';
|
|
6
|
+
import { convertTokenToDecimal } from '../../../utils/bigint';
|
|
6
7
|
export const fetchMarketSnapshot = async (publicClient, chainId, token0, token1, timestampInSeconds) => {
|
|
7
8
|
const dayStartTimestamp = getDailyStartTimestampInSeconds(timestampInSeconds);
|
|
8
|
-
const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshot', 'query getMarkets($date: Int!, $bases: [String!]!, $quotes: [String!]!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date, book_: {base_in: $bases, quote_in: $quotes}} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
|
|
9
|
+
const { data: { books, bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshot', 'query getMarkets($date: Int!, $bases: [String!]!, $quotes: [String!]!) { books: books(where: {base_in: $bases, quote_in: $quotes}) { price inversePrice totalValueLockedUSD lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } } bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date, book_: {base_in: $bases, quote_in: $quotes}} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
|
|
9
10
|
date: dayStartTimestamp,
|
|
10
11
|
bases: [token0, token1].map((address) => address.toLowerCase()),
|
|
11
12
|
quotes: [token0, token1].map((address) => address.toLowerCase()),
|
|
12
13
|
});
|
|
13
14
|
if (bookDayDatas.length >= 3) {
|
|
14
15
|
// TODO: check fee policy if needed
|
|
15
|
-
|
|
16
|
+
console.warn(`[fetchMarketSnapshot] too many bookDayDatas for ${token0}/${token1}`);
|
|
17
|
+
return null;
|
|
16
18
|
}
|
|
17
19
|
const totalSupplyMap = await fetchTotalSupplyMap(publicClient, chainId, [token0, token1].map((address) => getAddress(address)));
|
|
18
|
-
const
|
|
20
|
+
const dailyBidBookData = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
|
|
19
21
|
chainId,
|
|
20
22
|
token0: getAddress(base.id),
|
|
21
23
|
token1: getAddress(quote.id),
|
|
22
24
|
})));
|
|
23
|
-
const
|
|
25
|
+
const dailyAskBookData = bookDayDatas.find(({ book: { quote, base } }) => isAddressEqual(getAddress(base.id), getQuoteToken({
|
|
26
|
+
chainId,
|
|
27
|
+
token0: getAddress(quote.id),
|
|
28
|
+
token1: getAddress(base.id),
|
|
29
|
+
})));
|
|
30
|
+
if (dailyBidBookData && dailyAskBookData) {
|
|
31
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyBidBookData.book.base.id)] ?? 0n), Number(dailyBidBookData.book.base.decimals));
|
|
32
|
+
const isBidNewer = Number(dailyBidBookData.book.lastTakenTimestamp) >=
|
|
33
|
+
Number(dailyAskBookData.book.lastTakenTimestamp);
|
|
34
|
+
return {
|
|
35
|
+
chainId,
|
|
36
|
+
marketId: `${dailyBidBookData.book.base.symbol}/${dailyBidBookData.book.quote.symbol}`,
|
|
37
|
+
base: {
|
|
38
|
+
address: getAddress(dailyBidBookData.book.base.id),
|
|
39
|
+
name: dailyBidBookData.book.base.name,
|
|
40
|
+
symbol: dailyBidBookData.book.base.symbol,
|
|
41
|
+
decimals: Number(dailyBidBookData.book.base.decimals),
|
|
42
|
+
},
|
|
43
|
+
quote: {
|
|
44
|
+
address: getAddress(dailyBidBookData.book.quote.id),
|
|
45
|
+
name: dailyBidBookData.book.quote.name,
|
|
46
|
+
symbol: dailyBidBookData.book.quote.symbol,
|
|
47
|
+
decimals: Number(dailyBidBookData.book.quote.decimals),
|
|
48
|
+
},
|
|
49
|
+
price: isBidNewer
|
|
50
|
+
? Number(dailyBidBookData.book.price)
|
|
51
|
+
: Number(dailyAskBookData.book.inversePrice),
|
|
52
|
+
priceUSD: isBidNewer
|
|
53
|
+
? Number(dailyBidBookData.book.base.priceUSD)
|
|
54
|
+
: Number(dailyAskBookData.book.quote.priceUSD),
|
|
55
|
+
volume24hUSD: Number(dailyBidBookData.volumeUSD) + Number(dailyAskBookData.volumeUSD),
|
|
56
|
+
totalValueLockedUSD: Number(dailyBidBookData.book.totalValueLockedUSD) +
|
|
57
|
+
Number(dailyAskBookData.book.totalValueLockedUSD),
|
|
58
|
+
priceChange24h: isBidNewer && Number(dailyBidBookData.open) > 0
|
|
59
|
+
? Number(dailyBidBookData.close) / Number(dailyBidBookData.open) - 1
|
|
60
|
+
: !isBidNewer && Number(dailyAskBookData.close) > 0
|
|
61
|
+
? Number(dailyAskBookData.open) / Number(dailyAskBookData.close) - 1
|
|
62
|
+
: 0,
|
|
63
|
+
createdAtTimestamp: Math.min(Number(dailyBidBookData.book.createdAtTimestamp), Number(dailyAskBookData.book.createdAtTimestamp)),
|
|
64
|
+
fdv: baseTotalSupply *
|
|
65
|
+
(isBidNewer
|
|
66
|
+
? Number(dailyBidBookData.book.base.priceUSD)
|
|
67
|
+
: Number(dailyAskBookData.book.quote.priceUSD)),
|
|
68
|
+
bidBookUpdatedAt: Number(dailyBidBookData.book.lastTakenTimestamp),
|
|
69
|
+
askBookUpdatedAt: Number(dailyAskBookData.book.lastTakenTimestamp),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
else if (dailyBidBookData) {
|
|
73
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyBidBookData.book.base.id)] ?? 0n), Number(dailyBidBookData.book.base.decimals));
|
|
74
|
+
return {
|
|
75
|
+
chainId,
|
|
76
|
+
marketId: `${dailyBidBookData.book.base.symbol}/${dailyBidBookData.book.quote.symbol}`,
|
|
77
|
+
base: {
|
|
78
|
+
address: getAddress(dailyBidBookData.book.base.id),
|
|
79
|
+
name: dailyBidBookData.book.base.name,
|
|
80
|
+
symbol: dailyBidBookData.book.base.symbol,
|
|
81
|
+
decimals: Number(dailyBidBookData.book.base.decimals),
|
|
82
|
+
},
|
|
83
|
+
quote: {
|
|
84
|
+
address: getAddress(dailyBidBookData.book.quote.id),
|
|
85
|
+
name: dailyBidBookData.book.quote.name,
|
|
86
|
+
symbol: dailyBidBookData.book.quote.symbol,
|
|
87
|
+
decimals: Number(dailyBidBookData.book.quote.decimals),
|
|
88
|
+
},
|
|
89
|
+
price: Number(dailyBidBookData.book.price) || 0,
|
|
90
|
+
priceUSD: Number(dailyBidBookData.book.base.priceUSD) || 0,
|
|
91
|
+
volume24hUSD: Number(dailyBidBookData.volumeUSD) || 0,
|
|
92
|
+
totalValueLockedUSD: Number(dailyBidBookData.book.totalValueLockedUSD) || 0,
|
|
93
|
+
priceChange24h: Number(dailyBidBookData.open) > 0
|
|
94
|
+
? Number(dailyBidBookData.close) / Number(dailyBidBookData.open) - 1
|
|
95
|
+
: 0,
|
|
96
|
+
createdAtTimestamp: Number(dailyBidBookData.book.createdAtTimestamp) || 0,
|
|
97
|
+
fdv: baseTotalSupply * Number(dailyBidBookData.book.base.priceUSD) || 0,
|
|
98
|
+
bidBookUpdatedAt: Number(dailyBidBookData.book.lastTakenTimestamp) || 0,
|
|
99
|
+
askBookUpdatedAt: 0,
|
|
100
|
+
};
|
|
101
|
+
}
|
|
102
|
+
else if (dailyAskBookData) {
|
|
103
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(dailyAskBookData.book.quote.id)] ?? 0n), Number(dailyAskBookData.book.quote.decimals));
|
|
104
|
+
return {
|
|
105
|
+
chainId,
|
|
106
|
+
marketId: `${dailyAskBookData.book.quote.symbol}/${dailyAskBookData.book.base.symbol}`,
|
|
107
|
+
base: {
|
|
108
|
+
address: getAddress(dailyAskBookData.book.quote.id),
|
|
109
|
+
name: dailyAskBookData.book.quote.name,
|
|
110
|
+
symbol: dailyAskBookData.book.quote.symbol,
|
|
111
|
+
decimals: Number(dailyAskBookData.book.quote.decimals),
|
|
112
|
+
},
|
|
113
|
+
quote: {
|
|
114
|
+
address: getAddress(dailyAskBookData.book.base.id),
|
|
115
|
+
name: dailyAskBookData.book.base.name,
|
|
116
|
+
symbol: dailyAskBookData.book.base.symbol,
|
|
117
|
+
decimals: Number(dailyAskBookData.book.base.decimals),
|
|
118
|
+
},
|
|
119
|
+
price: Number(dailyAskBookData.book.inversePrice) || 0,
|
|
120
|
+
priceUSD: Number(dailyAskBookData.book.quote.priceUSD) || 0,
|
|
121
|
+
volume24hUSD: Number(dailyAskBookData.volumeUSD) || 0,
|
|
122
|
+
totalValueLockedUSD: Number(dailyAskBookData.book.totalValueLockedUSD) || 0,
|
|
123
|
+
priceChange24h: Number(dailyAskBookData.close) > 0
|
|
124
|
+
? Number(dailyAskBookData.open) / Number(dailyAskBookData.close) - 1
|
|
125
|
+
: 0,
|
|
126
|
+
createdAtTimestamp: Number(dailyAskBookData.book.createdAtTimestamp) || 0,
|
|
127
|
+
fdv: baseTotalSupply * Number(dailyAskBookData.book.quote.priceUSD) || 0,
|
|
128
|
+
bidBookUpdatedAt: 0,
|
|
129
|
+
askBookUpdatedAt: Number(dailyAskBookData.book.lastTakenTimestamp) || 0,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
if (books.length >= 3) {
|
|
133
|
+
// TODO: check fee policy if needed
|
|
134
|
+
console.warn(`[fetchMarketSnapshot] too many books for ${token0}/${token1}`);
|
|
135
|
+
return null;
|
|
136
|
+
}
|
|
137
|
+
const bidBook = books.find(({ quote, base }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
|
|
138
|
+
chainId,
|
|
139
|
+
token0: getAddress(base.id),
|
|
140
|
+
token1: getAddress(quote.id),
|
|
141
|
+
})));
|
|
142
|
+
const askBook = books.find(({ quote, base }) => isAddressEqual(getAddress(base.id), getQuoteToken({
|
|
24
143
|
chainId,
|
|
25
144
|
token0: getAddress(quote.id),
|
|
26
145
|
token1: getAddress(base.id),
|
|
27
146
|
})));
|
|
28
147
|
if (bidBook && askBook) {
|
|
29
|
-
const baseTotalSupply =
|
|
148
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.base.id)] ?? 0n), Number(bidBook.base.decimals));
|
|
30
149
|
return {
|
|
31
150
|
chainId,
|
|
32
|
-
marketId: `${bidBook.
|
|
151
|
+
marketId: `${bidBook.base.symbol}/${bidBook.quote.symbol}`,
|
|
33
152
|
base: {
|
|
34
|
-
address: getAddress(bidBook.
|
|
35
|
-
name: bidBook.
|
|
36
|
-
symbol: bidBook.
|
|
37
|
-
decimals: Number(bidBook.
|
|
153
|
+
address: getAddress(bidBook.base.id),
|
|
154
|
+
name: bidBook.base.name,
|
|
155
|
+
symbol: bidBook.base.symbol,
|
|
156
|
+
decimals: Number(bidBook.base.decimals),
|
|
38
157
|
},
|
|
39
158
|
quote: {
|
|
40
|
-
address: getAddress(bidBook.
|
|
41
|
-
name: bidBook.
|
|
42
|
-
symbol: bidBook.
|
|
43
|
-
decimals: Number(bidBook.
|
|
159
|
+
address: getAddress(bidBook.quote.id),
|
|
160
|
+
name: bidBook.quote.name,
|
|
161
|
+
symbol: bidBook.quote.symbol,
|
|
162
|
+
decimals: Number(bidBook.quote.decimals),
|
|
44
163
|
},
|
|
45
|
-
price: Number(bidBook.
|
|
46
|
-
priceUSD: Number(bidBook.
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
createdAtTimestamp: Math.min(Number(bidBook.book.createdAtTimestamp), Number(askBook.book.createdAtTimestamp)),
|
|
56
|
-
fdv: baseTotalSupply * Number(bidBook.book.base.priceUSD),
|
|
164
|
+
price: Number(bidBook.price),
|
|
165
|
+
priceUSD: Number(bidBook.base.priceUSD),
|
|
166
|
+
volume24hUSD: 0,
|
|
167
|
+
totalValueLockedUSD: Number(bidBook.totalValueLockedUSD) +
|
|
168
|
+
Number(askBook.totalValueLockedUSD),
|
|
169
|
+
priceChange24h: 0,
|
|
170
|
+
createdAtTimestamp: Math.min(Number(bidBook.lastTakenTimestamp), Number(askBook.lastTakenTimestamp)),
|
|
171
|
+
fdv: baseTotalSupply * Number(bidBook.quote.priceUSD),
|
|
172
|
+
bidBookUpdatedAt: Number(bidBook.lastTakenTimestamp),
|
|
173
|
+
askBookUpdatedAt: Number(askBook.lastTakenTimestamp),
|
|
57
174
|
};
|
|
58
175
|
}
|
|
59
176
|
else if (bidBook) {
|
|
60
|
-
const baseTotalSupply =
|
|
177
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(bidBook.base.id)] ?? 0n), Number(bidBook.base.decimals));
|
|
61
178
|
return {
|
|
62
179
|
chainId,
|
|
63
|
-
marketId: `${bidBook.
|
|
180
|
+
marketId: `${bidBook.base.symbol}/${bidBook.quote.symbol}`,
|
|
64
181
|
base: {
|
|
65
|
-
address: getAddress(bidBook.
|
|
66
|
-
name: bidBook.
|
|
67
|
-
symbol: bidBook.
|
|
68
|
-
decimals: Number(bidBook.
|
|
182
|
+
address: getAddress(bidBook.base.id),
|
|
183
|
+
name: bidBook.base.name,
|
|
184
|
+
symbol: bidBook.base.symbol,
|
|
185
|
+
decimals: Number(bidBook.base.decimals),
|
|
69
186
|
},
|
|
70
187
|
quote: {
|
|
71
|
-
address: getAddress(bidBook.
|
|
72
|
-
name: bidBook.
|
|
73
|
-
symbol: bidBook.
|
|
74
|
-
decimals: Number(bidBook.
|
|
188
|
+
address: getAddress(bidBook.quote.id),
|
|
189
|
+
name: bidBook.quote.name,
|
|
190
|
+
symbol: bidBook.quote.symbol,
|
|
191
|
+
decimals: Number(bidBook.quote.decimals),
|
|
75
192
|
},
|
|
76
|
-
price: Number(bidBook.
|
|
77
|
-
priceUSD: Number(bidBook.
|
|
78
|
-
volume24hUSD:
|
|
79
|
-
totalValueLockedUSD: Number(bidBook.
|
|
80
|
-
priceChange24h:
|
|
81
|
-
createdAtTimestamp: Number(bidBook.
|
|
82
|
-
fdv: baseTotalSupply * Number(bidBook.
|
|
193
|
+
price: Number(bidBook.price),
|
|
194
|
+
priceUSD: Number(bidBook.base.priceUSD),
|
|
195
|
+
volume24hUSD: 0,
|
|
196
|
+
totalValueLockedUSD: Number(bidBook.totalValueLockedUSD),
|
|
197
|
+
priceChange24h: 0,
|
|
198
|
+
createdAtTimestamp: Number(bidBook.lastTakenTimestamp),
|
|
199
|
+
fdv: baseTotalSupply * Number(bidBook.quote.priceUSD),
|
|
200
|
+
bidBookUpdatedAt: Number(bidBook.lastTakenTimestamp),
|
|
201
|
+
askBookUpdatedAt: 0,
|
|
83
202
|
};
|
|
84
203
|
}
|
|
85
204
|
else if (askBook) {
|
|
86
|
-
const baseTotalSupply =
|
|
205
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[getAddress(askBook.quote.id)] ?? 0n), Number(askBook.quote.decimals));
|
|
87
206
|
return {
|
|
88
207
|
chainId,
|
|
89
|
-
marketId: `${askBook.
|
|
208
|
+
marketId: `${askBook.quote.symbol}/${askBook.base.symbol}`,
|
|
90
209
|
base: {
|
|
91
|
-
address: getAddress(askBook.
|
|
92
|
-
name: askBook.
|
|
93
|
-
symbol: askBook.
|
|
94
|
-
decimals: Number(askBook.
|
|
210
|
+
address: getAddress(askBook.quote.id),
|
|
211
|
+
name: askBook.quote.name,
|
|
212
|
+
symbol: askBook.quote.symbol,
|
|
213
|
+
decimals: Number(askBook.quote.decimals),
|
|
95
214
|
},
|
|
96
215
|
quote: {
|
|
97
|
-
address: getAddress(askBook.
|
|
98
|
-
name: askBook.
|
|
99
|
-
symbol: askBook.
|
|
100
|
-
decimals: Number(askBook.
|
|
216
|
+
address: getAddress(askBook.base.id),
|
|
217
|
+
name: askBook.base.name,
|
|
218
|
+
symbol: askBook.base.symbol,
|
|
219
|
+
decimals: Number(askBook.base.decimals),
|
|
101
220
|
},
|
|
102
|
-
price: Number(askBook.
|
|
103
|
-
priceUSD: Number(askBook.
|
|
104
|
-
volume24hUSD:
|
|
105
|
-
totalValueLockedUSD: Number(askBook.
|
|
106
|
-
priceChange24h:
|
|
107
|
-
createdAtTimestamp: Number(askBook.
|
|
108
|
-
fdv: baseTotalSupply * Number(askBook.
|
|
221
|
+
price: Number(askBook.inversePrice),
|
|
222
|
+
priceUSD: Number(askBook.quote.priceUSD),
|
|
223
|
+
volume24hUSD: 0,
|
|
224
|
+
totalValueLockedUSD: Number(askBook.totalValueLockedUSD),
|
|
225
|
+
priceChange24h: 0,
|
|
226
|
+
createdAtTimestamp: Number(askBook.lastTakenTimestamp),
|
|
227
|
+
fdv: baseTotalSupply * Number(askBook.quote.priceUSD),
|
|
228
|
+
bidBookUpdatedAt: 0,
|
|
229
|
+
askBookUpdatedAt: Number(askBook.lastTakenTimestamp),
|
|
109
230
|
};
|
|
110
231
|
}
|
|
111
|
-
|
|
232
|
+
return null;
|
|
112
233
|
};
|
|
113
234
|
export const fetchMarketSnapshots = async (publicClient, chainId, timestampInSeconds) => {
|
|
114
235
|
const dayStartTimestamp = getDailyStartTimestampInSeconds(timestampInSeconds);
|
|
115
|
-
const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshots', 'query getMarkets($date: Int!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
|
|
236
|
+
const { data: { bookDayDatas }, } = await Subgraph.get(chainId, 'getTopMarketSnapshots', 'query getMarkets($date: Int!) { bookDayDatas( first: 200 orderBy: volumeUSD orderDirection: desc where: {date: $date} ) { volumeUSD open close book { id totalValueLockedUSD price inversePrice lastTakenTimestamp base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } createdAtTimestamp } } }', {
|
|
116
237
|
date: dayStartTimestamp,
|
|
117
238
|
});
|
|
118
239
|
const bidBookDayDataList = bookDayDatas.filter(({ book: { quote, base } }) => isAddressEqual(getAddress(quote.id), getQuoteToken({
|
|
@@ -148,28 +269,42 @@ export const fetchMarketSnapshots = async (publicClient, chainId, timestampInSec
|
|
|
148
269
|
symbol: bidBook.book.base.symbol,
|
|
149
270
|
decimals: Number(bidBook.book.base.decimals),
|
|
150
271
|
};
|
|
151
|
-
const
|
|
272
|
+
const askBook = askBookDayDataList.find((askBook) => isAddressEqual(getAddress(askBook.book.quote.id), baseCurrency.address) &&
|
|
152
273
|
isAddressEqual(getAddress(askBook.book.base.id), quoteCurrency.address));
|
|
153
|
-
const baseTotalSupply =
|
|
274
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[baseCurrency.address] ?? 0n), baseCurrency.decimals);
|
|
275
|
+
const isBidNewer = Number(bidBook.book.lastTakenTimestamp) >=
|
|
276
|
+
Number(askBook?.book.lastTakenTimestamp ?? 0);
|
|
154
277
|
return {
|
|
155
278
|
chainId,
|
|
156
279
|
marketId: `${baseCurrency.symbol}/${quoteCurrency.symbol}`,
|
|
157
280
|
base: baseCurrency,
|
|
158
281
|
quote: quoteCurrency,
|
|
159
|
-
price:
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
? Number(
|
|
282
|
+
price: isBidNewer
|
|
283
|
+
? Number(bidBook.book.price)
|
|
284
|
+
: Number(askBook?.book.inversePrice),
|
|
285
|
+
priceUSD: isBidNewer
|
|
286
|
+
? Number(bidBook.book.base.priceUSD)
|
|
287
|
+
: Number(askBook?.book.quote.priceUSD),
|
|
288
|
+
priceChange24h: isBidNewer && Number(bidBook.open) > 0
|
|
289
|
+
? Number(bidBook.close) / Number(bidBook.open) - 1
|
|
290
|
+
: !isBidNewer && askBook && Number(askBook.close) > 0
|
|
291
|
+
? Number(askBook.open) / Number(askBook.close) - 1
|
|
292
|
+
: 0,
|
|
293
|
+
volume24hUSD: askBook
|
|
294
|
+
? Number(askBook.volumeUSD) + Number(bidBook.volumeUSD)
|
|
164
295
|
: Number(bidBook.volumeUSD),
|
|
165
|
-
totalValueLockedUSD:
|
|
166
|
-
? Number(
|
|
296
|
+
totalValueLockedUSD: askBook
|
|
297
|
+
? Number(askBook.book.totalValueLockedUSD) +
|
|
167
298
|
Number(bidBook.book.totalValueLockedUSD)
|
|
168
299
|
: Number(bidBook.book.totalValueLockedUSD),
|
|
169
|
-
createdAtTimestamp:
|
|
170
|
-
? Math.min(Number(bidBook.book.createdAtTimestamp), Number(
|
|
300
|
+
createdAtTimestamp: askBook
|
|
301
|
+
? Math.min(Number(bidBook.book.createdAtTimestamp), Number(askBook.book.createdAtTimestamp))
|
|
171
302
|
: Number(bidBook.book.createdAtTimestamp),
|
|
172
|
-
fdv:
|
|
303
|
+
fdv: isBidNewer
|
|
304
|
+
? baseTotalSupply * Number(bidBook.book.base.priceUSD)
|
|
305
|
+
: baseTotalSupply * Number(askBook?.book.quote.priceUSD),
|
|
306
|
+
bidBookUpdatedAt: Number(bidBook.book.lastTakenTimestamp),
|
|
307
|
+
askBookUpdatedAt: Number(askBook?.book.lastTakenTimestamp ?? 0),
|
|
173
308
|
};
|
|
174
309
|
}),
|
|
175
310
|
...askBookDayDataList.map((askBook) => {
|
|
@@ -187,15 +322,25 @@ export const fetchMarketSnapshots = async (publicClient, chainId, timestampInSec
|
|
|
187
322
|
};
|
|
188
323
|
const bidBook = bidBookDayDataList.find((bidBook) => isAddressEqual(getAddress(bidBook.book.quote.id), quoteCurrency.address) &&
|
|
189
324
|
isAddressEqual(getAddress(bidBook.book.base.id), baseCurrency.address));
|
|
190
|
-
const baseTotalSupply =
|
|
325
|
+
const baseTotalSupply = convertTokenToDecimal(BigInt(totalSupplyMap[baseCurrency.address] ?? 0n), baseCurrency.decimals);
|
|
326
|
+
const isBidNewer = Number(bidBook?.book.lastTakenTimestamp ?? 0) >=
|
|
327
|
+
Number(askBook.book.lastTakenTimestamp);
|
|
191
328
|
return {
|
|
192
329
|
chainId,
|
|
193
330
|
marketId: `${baseCurrency.symbol}/${quoteCurrency.symbol}`,
|
|
194
331
|
base: baseCurrency,
|
|
195
332
|
quote: quoteCurrency,
|
|
196
|
-
price:
|
|
197
|
-
|
|
198
|
-
|
|
333
|
+
price: isBidNewer
|
|
334
|
+
? Number(bidBook?.book.price)
|
|
335
|
+
: Number(askBook.book.inversePrice),
|
|
336
|
+
priceUSD: isBidNewer
|
|
337
|
+
? Number(bidBook?.book.base.priceUSD)
|
|
338
|
+
: Number(askBook.book.quote.priceUSD),
|
|
339
|
+
priceChange24h: isBidNewer && bidBook && Number(bidBook.open) > 0
|
|
340
|
+
? Number(bidBook.close) / Number(bidBook.open) - 1
|
|
341
|
+
: !isBidNewer && Number(askBook.close) > 0
|
|
342
|
+
? Number(askBook.open) / Number(askBook.close) - 1
|
|
343
|
+
: 0,
|
|
199
344
|
volume24hUSD: bidBook
|
|
200
345
|
? Number(askBook.volumeUSD) + Number(bidBook.volumeUSD)
|
|
201
346
|
: Number(askBook.volumeUSD),
|
|
@@ -206,11 +351,15 @@ export const fetchMarketSnapshots = async (publicClient, chainId, timestampInSec
|
|
|
206
351
|
createdAtTimestamp: bidBook
|
|
207
352
|
? Math.min(Number(askBook.book.createdAtTimestamp), Number(bidBook.book.createdAtTimestamp))
|
|
208
353
|
: Number(askBook.book.createdAtTimestamp),
|
|
209
|
-
fdv:
|
|
354
|
+
fdv: isBidNewer
|
|
355
|
+
? baseTotalSupply * Number(bidBook?.book.base.priceUSD)
|
|
356
|
+
: baseTotalSupply * Number(askBook.book.quote.priceUSD),
|
|
357
|
+
bidBookUpdatedAt: Number(bidBook?.book.lastTakenTimestamp ?? 0),
|
|
358
|
+
askBookUpdatedAt: Number(askBook.book.lastTakenTimestamp),
|
|
210
359
|
};
|
|
211
360
|
}),
|
|
212
361
|
]
|
|
213
|
-
.filter(({
|
|
362
|
+
.filter(({ priceUSD }) => priceUSD > 0)
|
|
214
363
|
.filter((market, index, self) => self.findIndex((m) => m.marketId === market.marketId) === index);
|
|
215
364
|
};
|
|
216
365
|
//# sourceMappingURL=snapshot.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/snapshot.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/market/apis/snapshot.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { getAddress, isAddressEqual, zeroAddress } from 'viem';
|
|
2
|
-
import {
|
|
2
|
+
import { STABLE_COINS, REFERENCE_CURRENCY, } from '../../../constants/chain-configs/currency';
|
|
3
3
|
export const getMarketId = (chainId, tokenAddresses) => {
|
|
4
4
|
if (tokenAddresses.length !== 2) {
|
|
5
5
|
throw new Error('Invalid token pair');
|
|
@@ -7,7 +7,7 @@ export const getMarketId = (chainId, tokenAddresses) => {
|
|
|
7
7
|
tokenAddresses = tokenAddresses.map((address) => getAddress(address)).sort();
|
|
8
8
|
// include stable coin
|
|
9
9
|
const stable = tokenAddresses.find((address) => {
|
|
10
|
-
return
|
|
10
|
+
return STABLE_COINS[chainId].map(({ address }) => getAddress(address)).some((addresses) => addresses.includes(address));
|
|
11
11
|
});
|
|
12
12
|
if (stable) {
|
|
13
13
|
const other = tokenAddresses.find((address) => !isAddressEqual(address, stable));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"market-id.js","sourceRoot":"","sources":["../../../../../src/entities/market/utils/market-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAE9D,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"market-id.js","sourceRoot":"","sources":["../../../../../src/entities/market/utils/market-id.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,MAAM,CAAA;AAE9D,OAAO,EACL,YAAY,EACZ,kBAAkB,GACnB,MAAM,2CAA2C,CAAA;AAGlD,MAAM,CAAC,MAAM,WAAW,GAAG,CACzB,OAAkB,EAClB,cAA+B,EAK/B,EAAE;IACF,IAAI,cAAc,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,oBAAoB,CAAC,CAAA;IACvC,CAAC;IACD,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE,CAAA;IAE5E,sBAAsB;IACtB,MAAM,MAAM,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7C,OAAO,YAAY,CAAC,OAAO,CAAE,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAChD,UAAU,CAAC,OAAO,CAAC,CACpB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAA;IACpD,CAAC,CAAC,CAAA;IACF,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,CAAC,CAC7C,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,MAAM,EAAE;YAC9B,iBAAiB,EAAE,MAAM;YACzB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,cAAc;IACd,MAAM,GAAG,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC1C,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CACrC,CAAA;IACD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,CAAC,CAClD,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,GAAG,EAAE;YAC3B,iBAAiB,EAAE,GAAG;YACtB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,eAAe;IACf,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC3C,cAAc,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAC7D,CAAA;IACD,IAAI,IAAI,EAAE,CAAC;QACT,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAC/B,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAC3C,CAAA;QACF,OAAO;YACL,QAAQ,EAAE,GAAG,KAAK,IAAI,IAAI,EAAE;YAC5B,iBAAiB,EAAE,IAAI;YACvB,gBAAgB,EAAE,KAAK;SACxB,CAAA;IACH,CAAC;IAED,MAAM,OAAO,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAA;IACjE,OAAO;QACL,QAAQ,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE;QACvC,iBAAiB,EAAE,OAAO,CAAC,CAAC,CAAE;QAC9B,gBAAgB,EAAE,OAAO,CAAC,CAAC,CAAE;KAC9B,CAAA;AACH,CAAC,CAAA"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { getAddress } from 'viem';
|
|
1
|
+
import { formatUnits, getAddress } from 'viem';
|
|
2
2
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
3
3
|
import { getContractAddresses } from '../../../views';
|
|
4
4
|
export const fetchPoolSnapshotFromSubgraph = async (chainId, poolKey) => {
|
|
5
|
-
const { data: { pool,
|
|
5
|
+
const { data: { pool, poolDayDatas }, } = await Subgraph.get(chainId, 'getPoolSnapshot', 'query getPoolSnapshot($poolKey: ID!) { pool(id: $poolKey) { id tokenA { id name symbol decimals tokenDayData(orderBy: date, orderDirection: asc) { date priceUSD } } tokenB { id name symbol decimals tokenDayData(orderBy: date, orderDirection: asc) { date priceUSD } } initialTotalSupply initialTokenAAmount initialTokenBAmount initialLPPriceUSD createdAtTimestamp createdAtTransaction { id } totalValueLockedUSD totalSupply volumeUSD lpPriceUSD spreadProfitUSD } poolDayDatas( where: {pool: $poolKey, oraclePrice_gt: 0} orderBy: date orderDirection: desc first: 1000 ) { date totalValueLockedUSD totalSupply spreadProfitUSD lpPriceUSD oraclePrice priceA priceB volumeTokenA volumeTokenB volumeUSD } }', {
|
|
6
6
|
poolKey: poolKey.toLowerCase(),
|
|
7
7
|
});
|
|
8
8
|
if (!pool) {
|
|
@@ -33,15 +33,15 @@ export const fetchPoolSnapshotFromSubgraph = async (chainId, poolKey) => {
|
|
|
33
33
|
initialLPInfo: {
|
|
34
34
|
tokenA: {
|
|
35
35
|
currency: currencyA,
|
|
36
|
-
value: pool.initialTokenAAmount,
|
|
36
|
+
value: formatUnits(BigInt(pool.initialTokenAAmount), Number(pool.tokenA.decimals)),
|
|
37
37
|
},
|
|
38
38
|
tokenB: {
|
|
39
39
|
currency: currencyB,
|
|
40
|
-
value: pool.initialTokenBAmount,
|
|
40
|
+
value: formatUnits(BigInt(pool.initialTokenBAmount), Number(pool.tokenB.decimals)),
|
|
41
41
|
},
|
|
42
42
|
lpToken: {
|
|
43
43
|
currency: currencyLp,
|
|
44
|
-
value: pool.initialTotalSupply,
|
|
44
|
+
value: formatUnits(BigInt(pool.initialTotalSupply), 18),
|
|
45
45
|
},
|
|
46
46
|
lpPriceUSD: pool.initialLPPriceUSD,
|
|
47
47
|
timestamp: Number(pool.createdAtTimestamp),
|
|
@@ -50,27 +50,31 @@ export const fetchPoolSnapshotFromSubgraph = async (chainId, poolKey) => {
|
|
|
50
50
|
currencyA,
|
|
51
51
|
currencyB,
|
|
52
52
|
currencyLp,
|
|
53
|
-
volumeUSD24h:
|
|
53
|
+
volumeUSD24h: poolDayDatas.sort((a, b) => b.date - a.date)?.[0]?.volumeUSD ?? '0',
|
|
54
54
|
lpPriceUSD: pool.lpPriceUSD,
|
|
55
55
|
totalTvlUSD: pool.totalValueLockedUSD,
|
|
56
56
|
totalSpreadProfitUSD: pool.spreadProfitUSD,
|
|
57
|
-
performanceHistories:
|
|
58
|
-
timestamp:
|
|
59
|
-
spreadProfitUSD:
|
|
60
|
-
tvlUSD:
|
|
61
|
-
lpPriceUSD:
|
|
62
|
-
oraclePrice:
|
|
63
|
-
priceA:
|
|
64
|
-
|
|
57
|
+
performanceHistories: poolDayDatas.map((poolDayData) => ({
|
|
58
|
+
timestamp: poolDayData.date,
|
|
59
|
+
spreadProfitUSD: poolDayData.spreadProfitUSD,
|
|
60
|
+
tvlUSD: poolDayData.totalValueLockedUSD,
|
|
61
|
+
lpPriceUSD: poolDayData.lpPriceUSD,
|
|
62
|
+
oraclePrice: poolDayData.oraclePrice,
|
|
63
|
+
priceA: poolDayData.priceA,
|
|
64
|
+
priceAUSD: Number(pool.tokenA.tokenDayData.find(({ date }) => date === poolDayData.date)
|
|
65
|
+
?.priceUSD ?? 0),
|
|
66
|
+
priceB: poolDayData.priceB,
|
|
67
|
+
priceBUSD: Number(pool.tokenB.tokenDayData.find(({ date }) => date === poolDayData.date)
|
|
68
|
+
?.priceUSD ?? 0),
|
|
65
69
|
volumeA: {
|
|
66
70
|
currency: currencyA,
|
|
67
|
-
value:
|
|
71
|
+
value: poolDayData.volumeTokenA,
|
|
68
72
|
},
|
|
69
73
|
volumeB: {
|
|
70
74
|
currency: currencyB,
|
|
71
|
-
value:
|
|
75
|
+
value: poolDayData.volumeTokenB,
|
|
72
76
|
},
|
|
73
|
-
volumeUSD:
|
|
77
|
+
volumeUSD: poolDayData.volumeUSD,
|
|
74
78
|
})),
|
|
75
79
|
};
|
|
76
80
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/pool/apis/snapshot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"snapshot.js","sourceRoot":"","sources":["../../../../../src/entities/pool/apis/snapshot.ts"],"names":[],"mappings":"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"}
|