Commit 4a8c621f authored by Greg Bugyis's avatar Greg Bugyis Committed by GitHub

feat: add maxHeight to CurrencySearchModal (#4557)

* Add maxHeight to CurrencySearchModal (search only)

* Combine min and maxHeight into single modalHeight value

* Use clearer variable name to distinguish window height value
Co-authored-by: default avatargbugyis <greg@bugyis.com>
parent 477af8af
...@@ -8,6 +8,7 @@ import { WrappedTokenInfo } from 'state/lists/wrappedTokenInfo' ...@@ -8,6 +8,7 @@ import { WrappedTokenInfo } from 'state/lists/wrappedTokenInfo'
import { useUserAddedTokens } from 'state/user/hooks' import { useUserAddedTokens } from 'state/user/hooks'
import useLast from '../../hooks/useLast' import useLast from '../../hooks/useLast'
import { useWindowSize } from '../../hooks/useWindowSize'
import Modal from '../Modal' import Modal from '../Modal'
import { CurrencySearch } from './CurrencySearch' import { CurrencySearch } from './CurrencySearch'
import { ImportList } from './ImportList' import { ImportList } from './ImportList'
...@@ -97,11 +98,16 @@ export default memo(function CurrencySearchModal({ ...@@ -97,11 +98,16 @@ export default memo(function CurrencySearchModal({
[setModalView, prevView] [setModalView, prevView]
) )
const { height: windowHeight } = useWindowSize()
// change min height if not searching // change min height if not searching
let minHeight: number | undefined = 80 let modalHeight: number | undefined = 80
let content = null let content = null
switch (modalView) { switch (modalView) {
case CurrencyModalView.search: case CurrencyModalView.search:
if (windowHeight) {
// Converts pixel units to vh for Modal component
modalHeight = Math.min(Math.round((680 / windowHeight) * 100), 80)
}
content = ( content = (
<CurrencySearch <CurrencySearch
isOpen={isOpen} isOpen={isOpen}
...@@ -119,7 +125,7 @@ export default memo(function CurrencySearchModal({ ...@@ -119,7 +125,7 @@ export default memo(function CurrencySearchModal({
) )
break break
case CurrencyModalView.tokenSafety: case CurrencyModalView.tokenSafety:
minHeight = undefined modalHeight = undefined
if (tokenSafetyFlag === TokenSafetyVariant.Enabled && warningToken) { if (tokenSafetyFlag === TokenSafetyVariant.Enabled && warningToken) {
content = ( content = (
<TokenSafety <TokenSafety
...@@ -133,7 +139,7 @@ export default memo(function CurrencySearchModal({ ...@@ -133,7 +139,7 @@ export default memo(function CurrencySearchModal({
break break
case CurrencyModalView.importToken: case CurrencyModalView.importToken:
if (importToken) { if (importToken) {
minHeight = undefined modalHeight = undefined
if (tokenSafetyFlag === TokenSafetyVariant.Enabled) { if (tokenSafetyFlag === TokenSafetyVariant.Enabled) {
showTokenSafetySpeedbump(importToken) showTokenSafetySpeedbump(importToken)
} }
...@@ -149,7 +155,7 @@ export default memo(function CurrencySearchModal({ ...@@ -149,7 +155,7 @@ export default memo(function CurrencySearchModal({
} }
break break
case CurrencyModalView.importList: case CurrencyModalView.importList:
minHeight = 40 modalHeight = 40
if (importList && listURL) { if (importList && listURL) {
content = <ImportList list={importList} listURL={listURL} onDismiss={onDismiss} setModalView={setModalView} /> content = <ImportList list={importList} listURL={listURL} onDismiss={onDismiss} setModalView={setModalView} />
} }
...@@ -167,7 +173,7 @@ export default memo(function CurrencySearchModal({ ...@@ -167,7 +173,7 @@ export default memo(function CurrencySearchModal({
break break
} }
return ( return (
<Modal isOpen={isOpen} onDismiss={onDismiss} maxHeight={80} minHeight={minHeight}> <Modal isOpen={isOpen} onDismiss={onDismiss} maxHeight={modalHeight} minHeight={modalHeight}>
{content} {content}
</Modal> </Modal>
) )
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment