only fetch profile details for displayed top token accounts
This commit is contained in:
parent
db5f8e8d16
commit
750984b713
|
@ -44,8 +44,18 @@ const fetchTopTokenAccounts = async (tokenIndex: number) => {
|
||||||
TopDepositorBorrower[],
|
TopDepositorBorrower[],
|
||||||
] = await Promise.all([depositsResponse.json(), borrowsResponse.json()])
|
] = await Promise.all([depositsResponse.json(), borrowsResponse.json()])
|
||||||
|
|
||||||
|
const depositsDataToShow =
|
||||||
|
depositsData && depositsData.length
|
||||||
|
? depositsData.slice(0, 10).filter((d) => d.value >= 1)
|
||||||
|
: []
|
||||||
|
|
||||||
|
const borrowsDataToShow =
|
||||||
|
borrowsData && borrowsData.length
|
||||||
|
? borrowsData.slice(0, 10).filter((d) => d.value <= -1)
|
||||||
|
: []
|
||||||
|
|
||||||
const depositorProfilesResponse = await Promise.all(
|
const depositorProfilesResponse = await Promise.all(
|
||||||
depositsData.map((r: TopDepositorBorrower) =>
|
depositsDataToShow.map((r: TopDepositorBorrower) =>
|
||||||
fetch(
|
fetch(
|
||||||
`${MANGO_DATA_API_URL}/user-data/profile-details?wallet-pk=${r.wallet_pk}`,
|
`${MANGO_DATA_API_URL}/user-data/profile-details?wallet-pk=${r.wallet_pk}`,
|
||||||
),
|
),
|
||||||
|
@ -57,7 +67,7 @@ const fetchTopTokenAccounts = async (tokenIndex: number) => {
|
||||||
)
|
)
|
||||||
|
|
||||||
const borrowerProfilesResponse = await Promise.all(
|
const borrowerProfilesResponse = await Promise.all(
|
||||||
borrowsData.map((r: TopDepositorBorrower) =>
|
borrowsDataToShow.map((r: TopDepositorBorrower) =>
|
||||||
fetch(
|
fetch(
|
||||||
`${MANGO_DATA_API_URL}/user-data/profile-details?wallet-pk=${r.wallet_pk}`,
|
`${MANGO_DATA_API_URL}/user-data/profile-details?wallet-pk=${r.wallet_pk}`,
|
||||||
),
|
),
|
||||||
|
@ -69,14 +79,16 @@ const fetchTopTokenAccounts = async (tokenIndex: number) => {
|
||||||
)
|
)
|
||||||
|
|
||||||
return [
|
return [
|
||||||
depositsData
|
depositsDataToShow.map((data, i) => {
|
||||||
.map((data, i) => ({ ...data, ...depositorProfilesData[i] }))
|
if (depositorProfilesData[i]) {
|
||||||
.slice(0, 10)
|
return { ...data, ...depositorProfilesData[i] }
|
||||||
.filter((d) => d.value > 0),
|
} else return data
|
||||||
borrowsData
|
}),
|
||||||
.map((data, i) => ({ ...data, ...borrowerProfilesData[i] }))
|
borrowsDataToShow.map((data, i) => {
|
||||||
.slice(0, 10)
|
if (borrowerProfilesData[i]) {
|
||||||
.filter((d) => d.value < 0),
|
return { ...data, ...borrowerProfilesData[i] }
|
||||||
|
} else return data
|
||||||
|
}),
|
||||||
]
|
]
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log('Failed to fetch top token accounts', e)
|
console.log('Failed to fetch top token accounts', e)
|
||||||
|
|
Loading…
Reference in New Issue