Co-authored-by: Hongtao Lye <codert.sn@gmail.com> Co-authored-by: liuyi <forehalo@gmail.com> Co-authored-by: LongYinan <lynweklm@gmail.com> Co-authored-by: X1a0t <405028157@qq.com> Co-authored-by: JimmFly <yangjinfei001@gmail.com> Co-authored-by: Peng Xiao <pengxiao@outlook.com> Co-authored-by: xiaodong zuo <53252747+zuoxiaodong0815@users.noreply.github.com> Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com> Co-authored-by: Qi <474021214@qq.com> Co-authored-by: danielchim <kahungchim@gmail.com>
44 lines
1.0 KiB
TypeScript
44 lines
1.0 KiB
TypeScript
import { Modal, ModalCloseButton, ModalWrapper } from '@affine/component';
|
|
import type { FC, PropsWithChildren } from 'react';
|
|
import { useCallback } from 'react';
|
|
|
|
export type AuthModalProps = {
|
|
open: boolean;
|
|
setOpen: (value: boolean) => void;
|
|
};
|
|
|
|
export const AuthModal: FC<PropsWithChildren<AuthModalProps>> = ({
|
|
children,
|
|
open,
|
|
setOpen,
|
|
}) => {
|
|
const handleClose = useCallback(() => {
|
|
setOpen(false);
|
|
}, [setOpen]);
|
|
|
|
return (
|
|
<Modal
|
|
open={open}
|
|
onClose={handleClose}
|
|
wrapperPosition={['center', 'center']}
|
|
data-testid="auth-modal"
|
|
>
|
|
<ModalWrapper
|
|
width={1080}
|
|
height={760}
|
|
style={{
|
|
height: '468px',
|
|
width: '400px',
|
|
overflow: 'hidden',
|
|
backgroundColor: 'var(--affine-white)',
|
|
boxShadow: 'var(--affine-popover-shadow)',
|
|
padding: '44px 40px 0',
|
|
}}
|
|
>
|
|
<ModalCloseButton top={20} right={20} onClick={handleClose} />
|
|
{children}
|
|
</ModalWrapper>
|
|
</Modal>
|
|
);
|
|
};
|