From f1e26f58a4e89c142a69e84dc8bf97d634ccb6dd Mon Sep 17 00:00:00 2001 From: Patrick Fic Date: Thu, 14 Jan 2021 10:14:36 -0800 Subject: [PATCH] Added email template tester IO-595. --- .../email-overlay/email-overlay.component.jsx | 10 ++- .../email-test/email-test-component.jsx | 72 +++++++++++++++++++ .../pages/manage/manage.page.component.jsx | 10 ++- 3 files changed, 89 insertions(+), 3 deletions(-) create mode 100644 client/src/components/email-test/email-test-component.jsx diff --git a/client/src/components/email-overlay/email-overlay.component.jsx b/client/src/components/email-overlay/email-overlay.component.jsx index 593f93ca1..608d21d00 100644 --- a/client/src/components/email-overlay/email-overlay.component.jsx +++ b/client/src/components/email-overlay/email-overlay.component.jsx @@ -20,15 +20,17 @@ export default function EmailOverlayComponent({ name="to" mode="tags" value={messageOptions.to} - style={{ width: "100%" }} + //style={{ width: "100%" }} onChange={handleToChange} tokenSeparators={[",", ";"]} /> CC: - Subject: +
+ DEVELOPER NOTE: Any edits made in the editor below will not be sent or + saved due to css inlining issues. +
({ + setEmailOptions: (e) => dispatch(setEmailOptions(e)), +}); + +export function EmailTestComponent({ currentUser, setEmailOptions }) { + const [form] = Form.useForm(); + const { t } = useTranslation(); + + const handleFinish = (values) => { + console.log("values", values); + setEmailOptions({ + messageOptions: { + to: currentUser.email || null, + }, + template: { + name: values.key, + variables: { + id: values.id, + }, + }, + }); + }; + + return ( +
+
+ + + + + + +
+ +
+ ); +} +export default connect(mapStateToProps, mapDispatchToProps)(EmailTestComponent); diff --git a/client/src/pages/manage/manage.page.component.jsx b/client/src/pages/manage/manage.page.component.jsx index 18ca730a1..5f1dec5a1 100644 --- a/client/src/pages/manage/manage.page.component.jsx +++ b/client/src/pages/manage/manage.page.component.jsx @@ -6,7 +6,6 @@ import { useTranslation } from "react-i18next"; import { connect } from "react-redux"; import { Route, Switch } from "react-router-dom"; import { createStructuredSelector } from "reselect"; -import client from "../../utils/GraphQLClient"; import BreadCrumbs from "../../components/breadcrumbs/breadcrumbs.component"; import ChatAffixContainer from "../../components/chat-affix/chat-affix.container"; import ConflictComponent from "../../components/conflict/conflict.component"; @@ -21,6 +20,7 @@ import PrintCenterModalContainer from "../../components/print-center-modal/print import TestComponent from "../../components/_test/test.component"; import { QUERY_STRIPE_ID } from "../../graphql/bodyshop.queries"; import { selectInstanceConflict } from "../../redux/user/user.selectors"; +import client from "../../utils/GraphQLClient"; import "./manage.page.styles.scss"; const ManageRootPage = lazy(() => @@ -132,6 +132,9 @@ const Help = lazy(() => import("../help/help.page")); const PartsQueue = lazy(() => import("../parts-queue/parts-queue.page.container") ); +const EmailTest = lazy(() => + import("../../components/email-test/email-test-component") +); const { Content, Header } = Layout; @@ -362,6 +365,11 @@ export function Manage({ match, conflict }) { component={TimeTicketsAll} /> + )}