set mango account load to false if no accounts
This commit is contained in:
parent
4146efac94
commit
5dd424c8da
|
@ -15,6 +15,7 @@ import BounceLoader from './shared/BounceLoader'
|
|||
import MangoAccountsList from './MangoAccountsList'
|
||||
import { useWallet } from '@solana/wallet-adapter-react'
|
||||
import CreateAccountModal from './modals/CreateAccountModal'
|
||||
import { LinkButton } from './shared/Button'
|
||||
|
||||
export const IS_ONBOARDED_KEY = 'isOnboarded'
|
||||
|
||||
|
@ -123,15 +124,26 @@ const Layout = ({ children }: { children: ReactNode }) => {
|
|||
{mangoAccount ? (
|
||||
<MangoAccountsList mangoAccount={mangoAccount} />
|
||||
) : !isMobile ? (
|
||||
<span className="flex items-center">
|
||||
🔗<span className="ml-2">{t('connect-helper')}</span>
|
||||
<ArrowRightIcon className="sideways-bounce ml-2 h-5 w-5 text-th-fgd-1" />
|
||||
</span>
|
||||
!connected ? (
|
||||
<span className="flex items-center">
|
||||
🔗<span className="ml-2">{t('connect-helper')}</span>
|
||||
<ArrowRightIcon className="sideways-bounce ml-2 h-5 w-5 text-th-fgd-1" />
|
||||
</span>
|
||||
) : (
|
||||
<div className="flex items-center">
|
||||
🥭
|
||||
<LinkButton
|
||||
onClick={() => setShowFirstAccountModal(true)}
|
||||
>
|
||||
<span className="ml-2">{t('create-account')}</span>
|
||||
</LinkButton>
|
||||
</div>
|
||||
)
|
||||
) : null}
|
||||
</span>
|
||||
</div>
|
||||
<div className="flex items-center space-x-4">
|
||||
{mangoAccount ? (
|
||||
{connected ? (
|
||||
<ConnectedMenu />
|
||||
) : isOnboarded ? (
|
||||
<ConnectWalletButton />
|
||||
|
|
|
@ -23,18 +23,6 @@ const AccountActions = () => {
|
|||
const [showEditAccountModal, setShowEditAccountModal] = useState(false)
|
||||
const [showWithdrawModal, setShowWithdrawModal] = useState(false)
|
||||
|
||||
const handleCloseMangoAccount = async () => {
|
||||
const client = mangoStore.getState().client
|
||||
const mangoAccount = mangoStore.getState().mangoAccount.current
|
||||
const group = mangoStore.getState().group
|
||||
if (!mangoAccount || !group) return
|
||||
try {
|
||||
const tx = await client.closeMangoAccount(group, mangoAccount)
|
||||
} catch (e) {
|
||||
console.error(e)
|
||||
}
|
||||
}
|
||||
|
||||
return (
|
||||
<>
|
||||
<div className="flex space-x-3">
|
||||
|
|
|
@ -4,6 +4,7 @@ import mangoStore from '../../store/state'
|
|||
import { Wallet } from '@project-serum/anchor'
|
||||
|
||||
const WalletListener = () => {
|
||||
const set = mangoStore((s) => s.set)
|
||||
const { wallet, connected, disconnecting } = useWallet()
|
||||
const mangoAccounts = mangoStore((s) => s.mangoAccounts)
|
||||
|
||||
|
@ -18,6 +19,10 @@ const WalletListener = () => {
|
|||
wallet.adapter as unknown as Wallet,
|
||||
mangoAccounts[0].accountNum
|
||||
)
|
||||
} else {
|
||||
set((state) => {
|
||||
state.mangoAccount.loading = false
|
||||
})
|
||||
}
|
||||
actions.fetchProfilePicture(wallet.adapter as unknown as Wallet)
|
||||
actions.fetchWalletTokens(wallet.adapter as unknown as Wallet)
|
||||
|
|
Loading…
Reference in New Issue