summaryrefslogtreecommitdiff
path: root/src/components/Modal.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/Modal.tsx')
-rw-r--r--src/components/Modal.tsx56
1 files changed, 0 insertions, 56 deletions
diff --git a/src/components/Modal.tsx b/src/components/Modal.tsx
deleted file mode 100644
index dfb9683..0000000
--- a/src/components/Modal.tsx
+++ /dev/null
@@ -1,56 +0,0 @@
-import cx from 'clsx';
-import * as React from 'react';
-import ReactModalBase, { Props as ReactModalProps } from 'react-modal';
-
-import s0 from './Modal.module.scss';
-
-type Props = ReactModalProps & {
- isOpen: boolean;
- onRequestClose: (...args: any[]) => any;
- children: React.ReactNode;
-};
-
-const ReactModal = ReactModalBase as unknown as React.ComponentType<ReactModalProps>;
-
-function withBaseClass(
- className: ReactModalProps['className'],
- baseClassName: string
-): ReactModalProps['className'] {
- if (!className) {
- return baseClassName;
- }
-
- if (typeof className === 'string') {
- return cx(className, baseClassName);
- }
-
- return {
- ...className,
- base: cx(className.base, baseClassName),
- };
-}
-
-function ModalAPIConfig({
- isOpen,
- onRequestClose,
- className,
- overlayClassName,
- children,
- ...otherProps
-}: Props) {
- const contentCls = withBaseClass(className, s0.content);
- const overlayCls = withBaseClass(overlayClassName, s0.overlay);
- return (
- <ReactModal
- isOpen={isOpen}
- onRequestClose={onRequestClose}
- className={contentCls}
- overlayClassName={overlayCls}
- {...otherProps}
- >
- {children}
- </ReactModal>
- );
-}
-
-export default React.memo(ModalAPIConfig);