add a spinner when switching mango accounts

This commit is contained in:
tjs 2023-01-02 16:04:58 -05:00
parent 1ff61d3318
commit 1ac090c8e8
2 changed files with 8 additions and 4 deletions

View File

@ -47,6 +47,7 @@ const MangoAccountsListModal = ({
const [, setLastAccountViewed] = useLocalStorageStringState(LAST_ACCOUNT_KEY)
const router = useRouter()
const { asPath } = useRouter()
const [submitting, setSubmitting] = useState('')
const handleSelectMangoAccount = async (acc: MangoAccount) => {
const set = mangoStore.getState().set
@ -56,6 +57,7 @@ const MangoAccountsListModal = ({
s.activityFeed.feed = []
s.activityFeed.loading = true
})
setSubmitting(acc.publicKey.toString())
try {
const reloadedMangoAccount = await retryFn(() => acc.reload(client))
actions.fetchOpenOrders(reloadedMangoAccount)
@ -73,6 +75,7 @@ const MangoAccountsListModal = ({
})
} finally {
onClose()
setSubmitting('')
}
}
@ -113,8 +116,10 @@ const MangoAccountsListModal = ({
>
<div className="flex w-full items-center justify-between">
<div className="flex items-center space-x-2.5">
{acc.publicKey.toString() ===
mangoAccount?.publicKey.toString() ? (
{submitting === acc.publicKey.toString() ? (
<Loading className="h-4 w-4" />
) : acc.publicKey.toString() ===
mangoAccount?.publicKey.toString() ? (
<div className="flex h-5 w-5 items-center justify-center rounded-full bg-th-success">
<CheckIcon className="h-4 w-4 text-th-bkg-1" />
</div>

View File

@ -214,7 +214,7 @@ const SwapReviewRouteInfo = ({
const connection = mangoStore.getState().connection
if (!mangoAccount || !group || !inputBank || !outputBank) return
setSubmitting(true)
const [ixs, alts] = await fetchJupiterTransaction(
connection,
selectedRoute,
@ -225,7 +225,6 @@ const SwapReviewRouteInfo = ({
)
try {
setSubmitting(true)
const tx = await client.marginTrade({
group,
mangoAccount,