mars-v2-frontend/src/components/Modal.tsx
Linkie Link b5c097d661
Upgrade next (#100)
* upgrade to next 13

* WIP: adjust to app dir

* add docker + wallet connector

* fix: update the wallet connect component

* tidy: format

* wip: make the wallet balance fetcher work

* fix balance retrieval

* MP-2258: added estimateFee hook (#94)

* Mp 2259 queries to api (#96)

* update next config for build errors

* Convert queries to API + remove config

* tidy: save some bytes by adding constants/env.ts

* tidy: added URL_ prefix to REST, RPC and GQL

---------

Co-authored-by: Linkie Link <linkielink.dev@gmail.com>

* MP-2261: created useBroadcast hook for transactions (#95)

* tidy: remove unneeded wallet images

* Mp 2264 convert store (#97)

* Merge stores into 1

* refactor codebase to use new store

* fiex build and rename whitelisted to marketassets

* tidy: import refactor

* updated account navigation basics

* feat: added loading component and fixed the disconnect button

* fix: format

* update new routing system

* update config and dependencies

* feat: create and delete credit account are restored

* tidy: format

* fix: fixed the deployment

* update route structure (#98)

* fix: creditAccountDeposit works again

* fix: bugfixes

* add apis, remove allowedCoins, get basic borrow tables (#99)

Co-authored-by: bwvdhelm <34470358+bobthebuidlr@users.noreply.github.com>

---------

Co-authored-by: bwvdhelm <34470358+bobthebuidlr@users.noreply.github.com>
2023-02-24 09:47:27 +01:00

44 lines
1.3 KiB
TypeScript

import classNames from 'classnames'
import { ReactNode } from 'react'
import { Close } from 'components/Icons'
import { Card } from 'components/Card'
interface Props {
children?: ReactNode | string
content?: ReactNode | string
className?: string
open: boolean
setOpen?: (open: boolean) => void
}
export const Modal = ({ children, content, className, open, setOpen }: Props) => {
const onClickAway = () => {
if (setOpen) setOpen(false)
}
return open ? (
<div className='fixed top-0 left-0 z-20 h-screen w-screen'>
<div className='relative flex h-full w-full items-center justify-center'>
<Card className={classNames('relative z-40 w-[790px] max-w-full p-0', className)}>
{setOpen && (
<span
className='absolute top-4 right-4 z-50 w-[32px] text-white opacity-60 hover:cursor-pointer hover:opacity-100'
onClick={onClickAway}
role='button'
>
<Close />
</span>
)}
{children ? children : content}
</Card>
<div
className='fixed top-0 left-0 z-30 block h-full w-full bg-black/70 backdrop-blur hover:cursor-pointer'
onClick={onClickAway}
role='button'
/>
</div>
</div>
) : null
}