import React, { useState, useEffect } from 'react'
import styled from 'styled-components'
import { useDispatch } from 'react-redux'
import { fetchReferralInfoAsync } from 'state/actions'
import { useAccount } from 'state/userInfo/hooks'
import { formatDivNumber } from 'utils/formatBalance'
import { useTranslation } from 'contexts/Localization'
import useToast from 'hooks/useToast'
import { Button, useModal, Text } from '@pancakeswap/uikit'
import {
useReferralNormalConfigInfo,
useReferralCommanderConfigInfo,
useReferralRewardInfo,
} from 'state/referral/hooks'
import FlexCom from './FlexCom'
import BuyNftModal from './BuyNftModal'
import HeaderMain from './HeaderMain'
import { useWithdraw } from '../hooks'
const ButtonDiv = styled(Button)`
width: 100%;
margin: 20px auto 0px auto;
border-radius: 50px;
font-size: 16px;
border: 1px solid #dcdcdc;
color: #dcdcdc;
`
const ButtonGet = styled(Button)`
width: 100%;
font-size: 16px;
margin: 20px auto 0px auto;
border-radius: 50px;
border: 1px solid #1fc7d4;
color: #1fc7d4;
`
const UpBtn = styled(Button)`
width: 100%;
margin: 20px auto 0px auto;
border-radius: 50px;
font-size: 16px;
color: #fff;
background: linear-gradient(180deg, #7be0fc 0%, #ac7bf1 100%);
border: none;
`
const FooterBtn = styled.div`
width: 100%;
box-sizing: border-box;
padding-bottom: 20px;
`
const MainDiv = styled.div`
padding: 0 50px;
`
const FooterDiv = styled.div`
margin: 0 auto 30px auto;
`
const TextDiv = styled(Text)`
margin-top: 10px;
font-size: 14px;
color: #999999;
`
const ConnectedCom: React.FC = () => {
const dispatch = useDispatch()
const account = useAccount()
const { t } = useTranslation()
const [onBuyModal] = useModal()
const [gain, getGain] = useState(true)
const referralNormalConfigInfo = useReferralNormalConfigInfo()
const referralRewardInfo = useReferralRewardInfo()
const [loading, setLoading] = useState(false)
const withdraw = useWithdraw()
const { toastSuccess } = useToast()
const handleWithdraw = async () => {
setLoading(true)
try {
dispatch(fetchReferralInfoAsync(account))
await withdraw()
setLoading(false)
toastSuccess(t('Successfully claimed!'))
getGain(false)
} catch (error) {
setLoading(false)
}
}
return (
<>
>
{referralNormalConfigInfo?.receiveLimit <=
referralRewardInfo?.inviteReward - referralRewardInfo?.inviteRewardReceive && gain ? (
{t('Claim now')}
) : (
{t('No income is received temporarily')}
)}
{t('Upgrade commander')}
{t('footer %number% text', { number: `${referralNormalConfigInfo?.dividendFirst || 0}%` })}
{/* {t('each time')}
{t('last bid')}
{t('commission fee')} */}
)
}
export default ConnectedCom