/* eslint-disable jsx-a11y/anchor-is-valid */
import {
Backdrop,
Card,
CircularProgress,
Highlight,
Notification,
Title,
Tutorial,
} from 'components/common'
import { AssetTable, Portfolio, useBorrowColumns, useDepositColumns } from 'components/redbank'
import { RED_BANK_TUTORIAL_KEY } from 'constants/appConstants'
import {
balanceSum,
ltvWeightedDepositValue,
maintainanceMarginWeightedDepositValue,
} from 'libs/assetInfo'
import { useEffect, useMemo } from 'react'
import { Trans, useTranslation } from 'react-i18next'
import useStore from 'store'
import { NotificationType, State } from 'types/enums'
import { DocURL } from 'types/enums/docURL'
import styles from './Redbank.module.scss'
const RedBank = () => {
// ------------------
// EXTERNAL HOOKS
// ------------------
const { t } = useTranslation()
const redBankAssets = useStore((s) => s.redBankAssets)
const redBankState = useStore((s) => s.redBankState)
const setRedBankState = useStore((s) => s.setRedBankState)
const defaultDepositColumns = useDepositColumns()
const defaultBorrowColumns = useBorrowColumns()
// ------------------
// STORE STATE
// ------------------
const marketInfo = useStore((s) => s.marketInfo)
const showTutorial = useStore((s) => s.showRedBankTutorial)
const tutorialStep = useStore((s) => s.tutorialSteps['redbank'])
const userBalancesState = useStore((s) => s.userBalancesState)
const userCollateral = useStore((s) => s.userCollateral)
const maxBorrowLimit = useMemo(() => {
if (!userCollateral || !redBankAssets) return 0
return ltvWeightedDepositValue(
redBankAssets,
marketInfo,
userCollateral,
'depositBalanceBaseCurrency',
)
}, [redBankAssets, marketInfo, userCollateral])
const liquidationThreshold = useMemo(() => {
if (!userCollateral) return 0
return maintainanceMarginWeightedDepositValue(
redBankAssets,
marketInfo,
userCollateral,
'depositBalanceBaseCurrency',
)
}, [redBankAssets, marketInfo, userCollateral])
const maxLtvExceeded = (