import React, { useRef } from "react"; import { useOverlay, usePreventScroll, useModal, OverlayContainer, } from "@react-aria/overlays"; import { useDialog } from "@react-aria/dialog"; import { FocusScope } from "@react-aria/focus"; import { useButton } from "@react-aria/button"; import { ReactComponent as CloseIcon } from "./icons/Close.svg"; import styles from "./Modal.module.css"; import classNames from "classnames"; export function Modal(props) { const { title, children } = props; const modalRef = useRef(); const { overlayProps, underlayProps } = useOverlay(props, modalRef); usePreventScroll(); const { modalProps } = useModal(); const { dialogProps, titleProps } = useDialog(props, modalRef); const closeButtonRef = useRef(); const { buttonProps: closeButtonProps } = useButton({ onPress: () => props.onClose(), }); return (

{title}

{children}
); } export function ModalContent({ children, className, ...rest }) { return (
{children}
); }