23 lines
437 B
TypeScript
23 lines
437 B
TypeScript
import {useEffect } from "react"
|
|
|
|
type ModalProps = {
|
|
isOpen: boolean
|
|
onClose: () => void
|
|
children: React.ReactNode
|
|
}
|
|
|
|
export function Modal({ isOpen, onClose, children }: ModalProps) {
|
|
|
|
|
|
|
|
if (!isOpen) return null
|
|
|
|
return (
|
|
<div className="modal" onClick={onClose}>
|
|
<div className="modalContent" onClick={(e) => e.stopPropagation()}>
|
|
{children}
|
|
</div>
|
|
</div>
|
|
)
|
|
}
|