import TabButtons from '@components/shared/TabButtons' import mangoStore, { TokenStatsItem } from '@store/mangoStore' import useMangoGroup from 'hooks/useMangoGroup' import { useTranslation } from 'next-i18next' import dynamic from 'next/dynamic' import { useEffect, useMemo, useState } from 'react' const DetailedAreaChart = dynamic( () => import('@components/shared/DetailedAreaChart'), { ssr: false } ) const ChartTabs = ({ token }: { token: string }) => { const { t } = useTranslation('token') const [activeDepositsTab, setActiveDepositsTab] = useState('token:deposits') const [activeBorrowsTab, setActiveBorrowsTab] = useState('token:borrows') const tokenStats = mangoStore((s) => s.tokenStats.data) const initialStatsLoad = mangoStore((s) => s.tokenStats.initialLoad) const loadingTokenStats = mangoStore((s) => s.tokenStats.loading) const actions = mangoStore((s) => s.actions) const { group } = useMangoGroup() useEffect(() => { if (group && !initialStatsLoad) { actions.fetchTokenStats() } }, [group]) const statsHistory = useMemo(() => { if (!tokenStats?.length) return [] return tokenStats.reduce((a: TokenStatsItem[], c: TokenStatsItem) => { if (c.symbol === token) { const copy = { ...c } copy.deposit_apr = copy.deposit_apr * 100 copy.borrow_apr = copy.borrow_apr * 100 a.push(copy) } return a.sort( (a, b) => new Date(a.date_hour).getTime() - new Date(b.date_hour).getTime() ) }, []) }, [tokenStats]) return (