match leaderboard data with account performance

This commit is contained in:
saml33 2022-05-17 09:58:26 +10:00
parent 02199e0854
commit 8c68e11772
2 changed files with 17 additions and 6 deletions

View File

@ -12,7 +12,7 @@ import { connectionSelector } from '../stores/selectors'
const utc = require('dayjs/plugin/utc')
dayjs.extend(utc)
const LeaderboardTable = ({ range = '30' }) => {
const LeaderboardTable = ({ range = '29' }) => {
const { t } = useTranslation('common')
const [pnlLeaderboardData, setPnlLeaderboardData] = useState<any[]>([])
const [perpPnlLeaderboardData, setPerpPnlLeaderboardData] = useState<any[]>(
@ -26,8 +26,12 @@ const LeaderboardTable = ({ range = '30' }) => {
setLoading(true)
const response = await fetch(
`https://mango-transaction-log.herokuapp.com/v3/stats/pnl-leaderboard?start-date=${dayjs()
.utc()
.hour(0)
.minute(0)
.subtract(parseInt(range), 'day')
.format('YYYY-MM-DD')}`
.add(1, 'hour')
.format('YYYY-MM-DDThh:00:00')}`
)
const parsedResponse = await response.json()
const leaderboardData = [] as any[]
@ -49,8 +53,11 @@ const LeaderboardTable = ({ range = '30' }) => {
setLoading(true)
const response = await fetch(
`https://mango-transaction-log.herokuapp.com/v3/stats/perp-pnl-leaderboard?start-date=${dayjs()
.hour(0)
.minute(0)
.utc()
.subtract(parseInt(range), 'day')
.format('YYYY-MM-DD')}`
.format('YYYY-MM-DDThh:00:00')}`
)
const parsedResponse = await response.json()
setPerpPnlLeaderboardData(parsedResponse)
@ -330,7 +337,11 @@ const LeaderboardTypeButton = ({
<div>
<div className="font-bold sm:text-base">{t(label)}</div>
<span className="text-th-fgd-4">
{range === '9999' ? 'All-time' : `${range}-day`}
{range === '9999'
? 'All-time'
: range === '29'
? '30-day'
: `${range}-day`}
</span>
</div>
</button>

View File

@ -17,14 +17,14 @@ export async function getStaticProps({ locale }) {
const leaderboardRangePresets = [
{ label: '7d', value: '7' },
{ label: '30d', value: '30' },
{ label: '30d', value: '29' },
{ label: 'All', value: '9999' },
]
const leaderboardRangePresetLabels = leaderboardRangePresets.map((x) => x.label)
const leaderboardRangePresetValues = leaderboardRangePresets.map((x) => x.value)
export default function Leaderboard() {
const [leaderboardRange, setLeaderboardRange] = useState('30')
const [leaderboardRange, setLeaderboardRange] = useState('29')
const { t } = useTranslation('common')
return (