|
|
|
@ -5,6 +5,7 @@ import Modal from '@dckj/react-better-modal';
|
|
|
|
|
import { Avatar as Avatar1 } from 'react-chat-elements';
|
|
|
|
|
import { ReplyIcon, ShareForwardIcon } from '@/components/Icons';
|
|
|
|
|
import { isEmpty, olog, stringToColour } from '@/utils/commons';
|
|
|
|
|
import EmailEditorPopup from '../Input/EmailEditorPopup';
|
|
|
|
|
|
|
|
|
|
const TagColorStyle = (tag) => {
|
|
|
|
|
const color = stringToColour(tag);
|
|
|
|
@ -14,11 +15,23 @@ const EmailDetail = ({ open, setOpen, emailDetail, ...props }) => {
|
|
|
|
|
let { emailOrigin } = emailDetail;
|
|
|
|
|
emailOrigin = emailOrigin || {};
|
|
|
|
|
// const [open, setOpen] = useState(false);
|
|
|
|
|
const [initialPosition, setInitialPosition] = useState({});
|
|
|
|
|
const [initialSize, setInitialSize] = useState({});
|
|
|
|
|
const [initialMailTo, setInitialMailTo] = useState({});
|
|
|
|
|
function onHandleMove(e) {
|
|
|
|
|
console.log(e, '--->>> onHandleMove');
|
|
|
|
|
// console.log(e, '--->>> onHandleMove');
|
|
|
|
|
const { top, left, width, height } = e;
|
|
|
|
|
setInitialPosition({ top, left });
|
|
|
|
|
console.log('top, left, width, height', '--->>> onHandleMove');
|
|
|
|
|
console.log(top, left, width, height, '--->>> onHandleMove');
|
|
|
|
|
}
|
|
|
|
|
function onHandleResize(e) {
|
|
|
|
|
console.log(e, '--->>> onHandleResize');
|
|
|
|
|
// console.log(e, '--->>> onHandleResize');
|
|
|
|
|
const { top, left, width, height } = e;
|
|
|
|
|
setInitialPosition({ top, left });
|
|
|
|
|
setInitialSize({ width, height });
|
|
|
|
|
console.log('top, left, width, height', '--->>> onHandleResize');
|
|
|
|
|
console.log(top, left, width, height, '--->>> onHandleResize');
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function onHandleOk() {
|
|
|
|
@ -32,6 +45,21 @@ const EmailDetail = ({ open, setOpen, emailDetail, ...props }) => {
|
|
|
|
|
function onStageChange({ state }) {
|
|
|
|
|
console.log(state);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
const [action, setAction] = useState('');
|
|
|
|
|
|
|
|
|
|
const [openEmailEditor, setOpenEmailEditor] = useState(false);
|
|
|
|
|
const [fromEmail, setFromEmail] = useState('');
|
|
|
|
|
const [ReferEmailMsg, setReferEmailMsg] = useState('');
|
|
|
|
|
const onOpenEditor = (emailOrigin, action) => {
|
|
|
|
|
const { replyToEmail: email_addr, content } = emailOrigin;
|
|
|
|
|
setOpenEmailEditor(true);
|
|
|
|
|
setFromEmail(email_addr);
|
|
|
|
|
setReferEmailMsg(emailOrigin);
|
|
|
|
|
setAction(action);
|
|
|
|
|
setOpen(false);
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
return (
|
|
|
|
|
<>
|
|
|
|
|
<Modal
|
|
|
|
@ -52,6 +80,10 @@ const EmailDetail = ({ open, setOpen, emailDetail, ...props }) => {
|
|
|
|
|
initialHeight={600}
|
|
|
|
|
initialTop={74}
|
|
|
|
|
initialLeft={window.innerWidth - 700}
|
|
|
|
|
// left={initialPosition.left}
|
|
|
|
|
// top={initialPosition.top}
|
|
|
|
|
// width={initialSize.width}
|
|
|
|
|
// height={initialSize.height}
|
|
|
|
|
// title={`${reference ? '回复: ' : '写邮件: '} ${fromEmail || ''}`}
|
|
|
|
|
title={emailOrigin.subject}
|
|
|
|
|
minimizeButton={<></>}
|
|
|
|
@ -80,10 +112,10 @@ const EmailDetail = ({ open, setOpen, emailDetail, ...props }) => {
|
|
|
|
|
</div>
|
|
|
|
|
<div className='flex flex-col justify-start gap-1 items-end'>
|
|
|
|
|
<div className='flex items-center '>
|
|
|
|
|
<Button size='small' type='text' icon={<ReplyIcon className='text-indigo-500' />}>
|
|
|
|
|
<Button onClick={() => onOpenEditor(emailOrigin, 'reply')} size='small' type='text' icon={<ReplyIcon className='text-indigo-500' />}>
|
|
|
|
|
回复
|
|
|
|
|
</Button>
|
|
|
|
|
<Button size='small' type='text' icon={<ShareForwardIcon className='text-primary' />}>
|
|
|
|
|
<Button onClick={() => onOpenEditor(emailOrigin, 'forward')} size='small' type='text' icon={<ShareForwardIcon className='text-primary' />}>
|
|
|
|
|
转发
|
|
|
|
|
</Button>
|
|
|
|
|
</div>
|
|
|
|
@ -119,6 +151,7 @@ const EmailDetail = ({ open, setOpen, emailDetail, ...props }) => {
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</Modal>
|
|
|
|
|
<EmailEditorPopup open={openEmailEditor} setOpen={setOpenEmailEditor} fromEmail={fromEmail} quote={ReferEmailMsg} initial={{...initialPosition, ...initialSize}} action={action} key={`email-editor-inner-${action}-popup_${ReferEmailMsg.id}`}/>
|
|
|
|
|
</>
|
|
|
|
|
);
|
|
|
|
|
};
|