import { UploadOutlined, UserAddOutlined } from "@ant-design/icons"; import { Divider, Form, Input, Select, Tabs, Upload, Space, Menu, Dropdown, Button, } from "antd"; import React from "react"; import { useTranslation } from "react-i18next"; import EmailDocumentsComponent from "../email-documents/email-documents.component"; import _ from "lodash"; import { connect } from "react-redux"; import { createStructuredSelector } from "reselect"; import { selectBodyshop, selectCurrentUser, } from "../../redux/user/user.selectors"; import { CreateExplorerLinkForJob } from "../../utils/localmedia"; import { selectEmailConfig } from "../../redux/email/email.selectors"; const mapStateToProps = createStructuredSelector({ bodyshop: selectBodyshop, currentUser: selectCurrentUser, emailConfig: selectEmailConfig, }); const mapDispatchToProps = (dispatch) => ({ //setUserLanguage: language => dispatch(setUserLanguage(language)) }); export default connect( mapStateToProps, mapDispatchToProps )(EmailOverlayComponent); export function EmailOverlayComponent({ emailConfig, form, selectedMediaState, bodyshop, currentUser, }) { const { t } = useTranslation(); const handleClick = ({ item, key, keyPath }) => { const email = item.props.value; form.setFieldsValue({ to: _.uniq([ ...form.getFieldValue("to"), ...(typeof email === "string" ? [email] : email), ]), }); }; const menu = (
{bodyshop.employees .filter((e) => e.user_email) .map((e, idx) => ( {`${e.first_name} ${e.last_name}`} ))} {bodyshop.md_to_emails.map((e, idx) => ( {e.label} ))}
); return (
{t("emails.fields.to")} e.preventDefault()} > } name="to" rules={[ { required: true, //message: t("general.validation.required"), }, ]} > {t("emails.labels.preview")} {bodyshop.attach_pdf_to_email && ( {t("emails.labels.pdfcopywillbeattached")} )} {() => { return (
); }} {bodyshop.uselocalmediaserver && emailConfig.jobid && ( )} { if (Array.isArray(e)) { return e; } return e && e.fileList; }} rules={[ ({ getFieldValue }) => ({ validator(rule, value) { const totalSize = value.reduce( (acc, val) => (acc = acc + val.size), 0 ); const limit = 10485760 - new Blob([form.getFieldValue("html")]).size; if (totalSize > limit) { return Promise.reject(t("general.errors.sizelimit")); } return Promise.resolve(); }, }), ]} > <>

Click or drag files to this area to upload.

); }