Skip to content

Commit b9300ab

Browse files
authored
Merge pull request #161 from curvefi/fix/mobile-view-supply-button
fix: lend mobile view buttons
2 parents 3d9c2ad + 625f8fe commit b9300ab

File tree

3 files changed

+24
-25
lines changed

3 files changed

+24
-25
lines changed

apps/lend/src/components/PageMarketList/components/TableRowViewContentTable/TableRowMobile.tsx

+5-5
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ const TableRowMobile = ({
118118
<MobileLabelWrapper flexAlignItems="center" grid gridTemplateColumns={userHaveLoan ? '20px 1fr' : '1fr'}>
119119
{userHaveLoan && <CellInPool {...cellProps} isInMarket />}
120120
<MobileLabelContent>
121-
<Box flex gridGap={3}>
121+
<Box flex gridGap={3} onClick={(evt) => handleCellClick()}>
122122
<Box>
123123
<TextCaption isBold isCaps>
124124
Collateral
@@ -139,10 +139,10 @@ const TableRowMobile = ({
139139
</MobileLabelWrapper>
140140

141141
<MobileTableContentWrapper className={isHideDetail ? '' : 'show'}>
142-
<MobileTableContent onClick={(evt) => handleCellClick(evt.target)}>
142+
<MobileTableContent>
143143
{!isHideDetail && (
144144
<>
145-
<DetailsContent>
145+
<DetailsContent onClick={(evt) => handleCellClick(evt.target)}>
146146
{content[isBorrow ? 'borrow' : 'supply'].map((details, idx) => {
147147
const detailsKey = `details-${idx}`
148148
const show = details.some(({ show }) => _showContent(show))
@@ -194,11 +194,11 @@ const TableRowMobile = ({
194194
</DetailsContent>
195195
<MobileTableActions>
196196
{isBorrow ? (
197-
<Button variant="filled" onClick={(evt) => handleCellClick(evt.target)}>
197+
<Button variant="filled" onClick={(evt) => handleCellClick()}>
198198
{loanExists ? t`Manage Loan` : t`Get Loan`}
199199
</Button>
200200
) : (
201-
<Button variant="filled" onClick={(evt) => handleCellClick(evt.target)}>
201+
<Button variant="filled" onClick={(evt) => handleCellClick()}>
202202
{t`Supply ${borrowed_token?.symbol ?? ''}`}
203203
</Button>
204204
)}

apps/lend/src/components/PageMarketList/components/TableRowViewContentTable/index.tsx

+18-19
Original file line numberDiff line numberDiff line change
@@ -98,25 +98,24 @@ const TableRowViewContentTable = ({
9898
const userActiveKey = helpers.getUserActiveKey(api, owmDataCachedOrApi)
9999
const loanExists = loansExistsMapper[userActiveKey]?.loanExists
100100

101-
const handleCellClick = (target: EventTarget) => {
102-
const { nodeName } = target as HTMLElement
103-
if (nodeName !== 'BUTTON') {
104-
// update view
105-
if (filterTypeKey === 'borrow') {
106-
setMarketsStateByKey('marketDetailsView', loanExists ? 'user' : 'market')
107-
} else if (filterTypeKey === 'supply') {
108-
const { gauge = '0', vaultShares = '0' } = marketsBalancesMapper[userActiveKey] ?? {}
109-
const haveSupply = +gauge + +vaultShares > 0
110-
setMarketsStateByKey('marketDetailsView', haveSupply ? 'user' : 'market')
111-
}
112-
113-
if (filterTypeKey === 'supply') {
114-
navigate(getVaultPathname(params, owmId, 'deposit'))
115-
} else if (loanExists) {
116-
navigate(getLoanManagePathname(params, owmId, 'loan'))
117-
} else {
118-
navigate(getLoanCreatePathname(params, owmId, 'create'))
119-
}
101+
const handleCellClick = (target?: EventTarget) => {
102+
if (target && (target as HTMLElement).nodeName === 'BUTTON') return
103+
104+
// update view
105+
if (filterTypeKey === 'borrow') {
106+
setMarketsStateByKey('marketDetailsView', loanExists ? 'user' : 'market')
107+
} else if (filterTypeKey === 'supply') {
108+
const { gauge = '0', vaultShares = '0' } = marketsBalancesMapper[userActiveKey] ?? {}
109+
const haveSupply = +gauge + +vaultShares > 0
110+
setMarketsStateByKey('marketDetailsView', haveSupply ? 'user' : 'market')
111+
}
112+
113+
if (filterTypeKey === 'supply') {
114+
navigate(getVaultPathname(params, owmId, 'deposit'))
115+
} else if (loanExists) {
116+
navigate(getLoanManagePathname(params, owmId, 'loan'))
117+
} else {
118+
navigate(getLoanCreatePathname(params, owmId, 'create'))
120119
}
121120
}
122121

apps/lend/src/components/PageMarketList/types.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -101,7 +101,7 @@ export type TableRowProps = Pick<PageMarketList, 'rChainId' | 'api' | 'searchPar
101101
showBorrowSignerCell: boolean
102102
showSupplySignerCell: boolean
103103
userActiveKey: string
104-
handleCellClick(evt: EventTarget): void
104+
handleCellClick(target?: EventTarget): void // only pass evt.target if there is a child button node
105105
}
106106

107107
export type TableCellProps = {

0 commit comments

Comments
 (0)