show trigger orders table when on trigger order tab

This commit is contained in:
saml33 2023-09-29 11:44:41 +10:00
parent 2de1946cd4
commit 8829719e67
1 changed files with 18 additions and 10 deletions

View File

@ -1,4 +1,4 @@
import { useMemo, useState } from 'react' import { useEffect, useMemo, useState } from 'react'
import TabButtons from '@components/shared/TabButtons' import TabButtons from '@components/shared/TabButtons'
import SwapTradeBalances from '../shared/BalancesTable' import SwapTradeBalances from '../shared/BalancesTable'
import SwapHistoryTable from './SwapHistoryTable' import SwapHistoryTable from './SwapHistoryTable'
@ -6,27 +6,35 @@ import useMangoAccount from 'hooks/useMangoAccount'
import ManualRefresh from '@components/shared/ManualRefresh' import ManualRefresh from '@components/shared/ManualRefresh'
import { useViewport } from 'hooks/useViewport' import { useViewport } from 'hooks/useViewport'
import SwapTriggerOrders from './SwapTriggerOrders' import SwapTriggerOrders from './SwapTriggerOrders'
import { useIsWhiteListed } from 'hooks/useIsWhiteListed' import mangoStore from '@store/mangoStore'
const SwapInfoTabs = () => { const SwapInfoTabs = () => {
const [selectedTab, setSelectedTab] = useState('balances') const [selectedTab, setSelectedTab] = useState('balances')
const { mangoAccount } = useMangoAccount() const { mangoAccount } = useMangoAccount()
const { isMobile, isTablet } = useViewport() const { isMobile, isTablet } = useViewport()
const { data: isWhiteListed } = useIsWhiteListed() const { swapOrTrigger } = mangoStore((s) => s.swap)
const tabsWithCount: [string, number][] = useMemo(() => { const tabsWithCount: [string, number][] = useMemo(() => {
const tabs: [string, number][] = [ const tabs: [string, number][] = [
['balances', 0], ['balances', 0],
['swap:swap-history', 0], ['swap:swap-history', 0],
] ]
if (isWhiteListed) { const stopOrdersCount =
const stopOrdersCount = mangoAccount?.tokenConditionalSwaps.filter((tcs) => tcs.hasData)
mangoAccount?.tokenConditionalSwaps.filter((tcs) => tcs.hasData) ?.length || 0
?.length || 0 tabs.splice(1, 0, ['trade:trigger-orders', stopOrdersCount])
tabs.splice(1, 0, ['trade:trigger-orders', stopOrdersCount])
}
return tabs return tabs
}, [isWhiteListed, mangoAccount]) }, [mangoAccount])
useEffect(() => {
if (swapOrTrigger !== 'swap') {
setSelectedTab('trade:trigger-orders')
} else {
if (selectedTab !== 'balances') {
setSelectedTab('balances')
}
}
}, [swapOrTrigger])
return ( return (
<div className="hide-scroll h-full overflow-y-scroll"> <div className="hide-scroll h-full overflow-y-scroll">