tjQ|ya;+B`S>&kRz;~N($5rt^_A~@E>+f2o^OT6+D(htVhG&N
z3f(NIZ6I=Z1{)Lw!YT>IqI=DN-&w{byTr$Ur21v@Wln*X-#BZhyGJ`Y8ZV#({Ae0f
zob{nyeS=-j*AoX>0>RWyxWf8&(w{bb;?JMyeYyzig&hoVw403D`b9HXTVYKE59$#5}QgQhuSwMYx^nu7qHOw#L
z1?CU>6n#1~q*ZvJq!xHZMF69RetK<^q`9ub^s(s59Q26-$NAZtBLc?7`2(8tqqs)?
z22A>=$l{&vqiR+q>2RmczCfnarxl%j=Bk=vf3o$q6rz7@s|)hxFjY%(DD(lk^`$;8
zymPk;W!r0a)%oRY!u%#>I$D?J9$Id@5ISO7BIw3ILB{+o!JDPvY-MTV-VgqR%O2~!
z8oQr>rgvtmSsVygk<&27vF{C9t{_teg5=Mi_a9sIu?PHh`^5mAUC&akdycn;O
zd3?gaBy|a82pKz*=)MF>PDfta9Z!MrzoDFnnYf-xXWZYLuEhJYjSbi_zd_M30|XH0
z*<9l8i$2tlkZl)|UF6RU71lm!{C1$y93C_C)WTJOY1n_r43nro=(Y}Ll~%d)*dxb4
zXe$g%#?xx*yUzYRgz?h-4O0v`5$HatL2r!>^4e4lz~X#zhCf#*;KESR)-ds^%Z6#d
zmgwRB!^GK1LCYw>a)8~MoWGJq**EIr0(2k8_DfVL0TA0IF(G-u+N21vPQL9I=d%)fYa0*p;T^ihdSeU1Psqx+zy+dE(
zhw2uU#G?1D<2%m02~FVGSU`da@mn>k)3cXbH!>-dJc}gg^5vG6$y1rSyzSQtSF0ht
zU%YuYhktsCck&?!1Nsz{w4`%RMQ@6+8y;qH#tpGoLfUe-zA2-*T0#R<5gaQbN-{;K
z`{#DTsYJ}I*OD6!`yt`@jD%ye2i%GxUY+F{)?Cj|+?YkaT6Oz*vt5Bc@I0u!f6moL
zZ618by&YgR3%{$8!cah?K_6HSI+r1f-(c4W6TD8C>x%M>_@k~8pKvo!5E*b+m5`F&
z0PkLY?p@1oG#qPSE8=7$&%j-*rRO#$;>MN==ld$HUi!@QX>*d;Wt!;1FUrCbCL)VP
zMkcorW>$^z2?9hi3kf0jWmR(&fA+ylZ0rniT5r}CJfjO=*ijrsyViVA{5TNn@$3#=
zzPqo+C~VwpN$6>gUTS(Oe5f?xY#EkubRk_bww*H3yh*O4)BG$oy#GTB%?I%S#--lHt>;ud^4JnC&KjpX08I-5PvraFVyRKwX8N!R8uW#*%uk(5WACMAkR~XbtykC~D
zRIC+W^;*`2uL90Nb$vM+xxC-EjXRSW!j3x(-ZK4i|FN-LGPYBa4%lEFY1M@b8}fvl
zmn%az#fAZX&sX}$piGhp8il83admi!Ec;XVL3Ebx-DU3b_cL+~Nuk-%7hX#~R;lQe`MN;EZ~1vG_9#
zA|*8{IU!z1F{s^+;fRV8l|z!zrG8(MwrsO<^2|=PZhDK1aerSU6MGof&hU%`I>pOt
zmvxXZy^a`v^lb(3+kMLVM0h)|jNOXBW*D2uJ&lMf9aXAo74G?ReK(V=IO4dyJ#
z&(mE&;O+OVDju_pIKFM{4cf~4B2s+Ru2JK|ew@^<5<7*@F>C-NVG5A7Jf44Yy{pDq+Qj6K+v2J8+
z#kfuMN_l*IeBiI3!8(s*?9GZq9c*F=0k~z)pBBkg6$R*?z)iM@~T~Jx7Dpb
z=1DT!GYM&Wx~`X6ZSee5gwRqz1a%I^L=V@vP5d#b
zSb_EZ9c5?W&G+TY1X-QKAEi2AlQ*lIalWVP0Zg{e{^7Do&uYYnv_zG5X9C~lxy(AG
z);{O|^V`W}zcc-ZQvbBxH`>z5(hQGA-!3YDYPNUMs!dniuA>btke4)d0knC737wrX
ztsX1ALnr*{u1(LnEx&&bnm-(oDVHbwY1y~h!#vuoXd_QcbkL4ND?mc5KBGyb@nt90
z%szkiV^Ql((56+Dsx-I4NWHR{9CccmVy$lKN4y1zUF_B|@pP95!Bf1?qu3Uq>^o7v
z>9-|~EeFzMe^Wm`hwdLd@xtxI;wZ>sRwexSLg60I)l&dzQQHz;){=XFzi@GtTV?P?
z&-$C_wN*FFfm++(mwhn}j4y&`WTuaM9TI#&IQ$;2F(gY3H28KYc>%K=@h58uGll@*y9
z4L+mN`vz=Htpj$h`wlDUVVU8HQPt-W@SBPJdT9;1%G
znRA-PCZ6N?%jcgzR@2b%=W}w2nzc^>eBMEBkIW9JXv-if`qc&iI=a#ZPs~5>9R+Ll
zzUhOBZ#z!&x{9=VPDg!JsQEJliDmjz&p4B3TG}^^NYDvQ*q^t*brF(wxVDO-pDW!1WYfd?$d*h#?=$`EI?j;l^ykS@$B081
za1N*(lrWM+dO$xs&aDEHgY-ON>E#w8~+lSIU0S#`^>-r`!e`Qm
zgf@Xkmmy|@TV&wegz9MAe+Tjw6aEP;e0^%`Be_B9*8+EQnn8wdGXFRb)TPxplm3m7Y=f+SiARy5@+aurVzBWF;=j6_pZrkM4
z=MtEZ_I3^F)rseC`Enxnu^1OqQ#ESPu$vW`7a=%HpVCr^5^*dxeg?*0XbhLmkiG?{
z`*4-(B@JlgHik|}FL-u^Exy88X39VUJ{{&;79*tQl9^qq`4
z{5&DUZPu*j;&1CU22gHGh(6ZCmI{@9UXbghNj}Ub?FB6JE6T1tSBVO713rv8h4Co(
z70;^6K9&gb*c#`g(kmuMS@C6Kg@9-2lQz-Uei31|7z5*L&D+uqYmB^(w8Ntz@uq@~
z?|c{Zu9khopPcXbtVdz7UP{u{Li)Wlff{4@9JN~}gI@H_Ml03XA5qK0YqDLmu7@+3
z2cKp)R(ZiBV7o2nYyxJ>`OK+gQ!hxpXZc`B8GX6;DSmhsQ@>rmqSw> {
- console.log("[RSW] onServiceWorkerUpdate", registration);
+ console.log("onServiceWorkerUpdate", registration);
const key = `open${Date.now()}`;
const btn = (
@@ -37,6 +37,5 @@ const onServiceWorkerUpdate = (registration) => {
// if (process.env.NODE_ENV === "production") {
// console.log("SWR Registering SW...");
-console.log("Registering Service Worker...");
serviceWorker.register({ onUpdate: onServiceWorkerUpdate });
// }
diff --git a/client/src/components/job-checklist/components/job-checklist-template-list/job-checklist-template-list.component.jsx b/client/src/components/job-checklist/components/job-checklist-template-list/job-checklist-template-list.component.jsx
index 28ecc01bb..382a2781d 100644
--- a/client/src/components/job-checklist/components/job-checklist-template-list/job-checklist-template-list.component.jsx
+++ b/client/src/components/job-checklist/components/job-checklist-template-list/job-checklist-template-list.component.jsx
@@ -1,23 +1,12 @@
import { Button } from "antd";
import React from "react";
import { useTranslation } from "react-i18next";
-import { connect } from "react-redux";
import { useParams } from "react-router-dom";
-import { createStructuredSelector } from "reselect";
import { logImEXEvent } from "../../../../firebase/firebase.utils";
-import { selectBodyshop } from "../../../../redux/user/user.selectors";
import { GenerateDocument } from "../../../../utils/RenderTemplate";
import JobIntakeTemplateItem from "../job-checklist-template-item/job-checklist-template-item.component";
-const mapStateToProps = createStructuredSelector({
- //currentUser: selectCurrentUser
- bodyshop: selectBodyshop,
-});
-const mapDispatchToProps = (dispatch) => ({
- //setUserLanguage: language => dispatch(setUserLanguage(language))
-});
-
-export function JobIntakeTemplateList({ bodyshop, templates }) {
+export default function JobIntakeTemplateList({ templates }) {
const { jobId } = useParams();
const { t } = useTranslation();
const renderTemplate = async (templateKey) => {
@@ -55,7 +44,3 @@ export function JobIntakeTemplateList({ bodyshop, templates }) {
);
}
-export default connect(
- mapStateToProps,
- mapDispatchToProps
-)(JobIntakeTemplateList);
diff --git a/client/src/components/jobs-detail-header-actions/jobs-detail-header-actions.csi.component.jsx b/client/src/components/jobs-detail-header-actions/jobs-detail-header-actions.csi.component.jsx
index 82cbc4a49..103948668 100644
--- a/client/src/components/jobs-detail-header-actions/jobs-detail-header-actions.csi.component.jsx
+++ b/client/src/components/jobs-detail-header-actions/jobs-detail-header-actions.csi.component.jsx
@@ -89,7 +89,7 @@ export function JobsDetailHeaderCsi({
replyTo: bodyshop.email,
},
template: {
- name: TemplateList().csi_invitation.key,
+ name: TemplateList("job").csi_invitation.key,
variables: {
id: result.data.insert_csi.returning[0].id,
},
diff --git a/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx b/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx
index ca238bff1..8d10749bc 100644
--- a/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx
+++ b/client/src/components/parts-order-list-table/parts-order-list-table.component.jsx
@@ -129,8 +129,8 @@ export function PartsOrderListTableComponent({
GenerateDocument(
{
name: record.isReturn
- ? TemplateList().parts_return_confirmation.key
- : TemplateList().parts_order_confirmation.key,
+ ? TemplateList("partsorder").parts_return_confirmation.key
+ : TemplateList("partsorder").parts_order_confirmation.key,
variables: { id: record.id },
},
{},
@@ -143,8 +143,8 @@ export function PartsOrderListTableComponent({
GenerateDocument(
{
name: record.isReturn
- ? TemplateList().parts_return_confirmation.key
- : TemplateList().parts_order_confirmation.key,
+ ? TemplateList("partsorder").parts_return_confirmation.key
+ : TemplateList("partsorder").parts_order_confirmation.key,
variables: { id: record.id },
},
{},
diff --git a/client/src/components/parts-order-modal/parts-order-modal.container.jsx b/client/src/components/parts-order-modal/parts-order-modal.container.jsx
index 513c7ca91..2729a89a2 100644
--- a/client/src/components/parts-order-modal/parts-order-modal.container.jsx
+++ b/client/src/components/parts-order-modal/parts-order-modal.container.jsx
@@ -12,12 +12,12 @@ import { QUERY_ALL_VENDORS_FOR_ORDER } from "../../graphql/vendors.queries";
import { setEmailOptions } from "../../redux/email/email.actions";
import {
setModalContext,
- toggleModalVisible
+ toggleModalVisible,
} from "../../redux/modals/modals.actions";
import { selectPartsOrder } from "../../redux/modals/modals.selectors";
import {
selectBodyshop,
- selectCurrentUser
+ selectCurrentUser,
} from "../../redux/user/user.selectors";
import { GenerateDocument } from "../../utils/RenderTemplate";
import { TemplateList } from "../../utils/TemplateConstants";
@@ -159,8 +159,8 @@ export function PartsOrderModalContainer({
GenerateDocument(
{
name: isReturn
- ? TemplateList().parts_return_confirmation.key
- : TemplateList().parts_order_confirmation.key,
+ ? TemplateList("partsorder").parts_return_confirmation.key
+ : TemplateList("partsorder").parts_order_confirmation.key,
variables: {
id: insertResult.data.insert_parts_orders.returning[0].id,
},
@@ -168,8 +168,8 @@ export function PartsOrderModalContainer({
{
to: matchingVendor ? [matchingVendor.email] : null,
replyTo: bodyshop.email,
- subject: TemplateList("job", bodyshop.shopname)
- .parts_order_confirmation.subject,
+ subject: TemplateList("partsorder", {}).parts_order_confirmation
+ .subject,
},
"e"
);
@@ -177,8 +177,8 @@ export function PartsOrderModalContainer({
GenerateDocument(
{
name: isReturn
- ? TemplateList().parts_return_confirmation.key
- : TemplateList().parts_order_confirmation.key,
+ ? TemplateList("partsorder").parts_return_confirmation.key
+ : TemplateList("partsorder").parts_order_confirmation.key,
variables: {
id: insertResult.data.insert_parts_orders.returning[0].id,
},
diff --git a/client/src/components/payment-modal/payment-modal.container.jsx b/client/src/components/payment-modal/payment-modal.container.jsx
index a480b4415..b73310c4b 100644
--- a/client/src/components/payment-modal/payment-modal.container.jsx
+++ b/client/src/components/payment-modal/payment-modal.container.jsx
@@ -121,7 +121,7 @@ function BillEnterModalContainer({
GenerateDocument(
{
- name: TemplateList().payment_receipt.key,
+ name: TemplateList("payment").payment_receipt.key,
variables: {
id: newPayment.data.insert_payments.returning[0].id,
},
diff --git a/client/src/components/print-center-jobs/print-center-jobs.component.jsx b/client/src/components/print-center-jobs/print-center-jobs.component.jsx
index 7fe518540..5b4d7ecc3 100644
--- a/client/src/components/print-center-jobs/print-center-jobs.component.jsx
+++ b/client/src/components/print-center-jobs/print-center-jobs.component.jsx
@@ -1,40 +1,28 @@
-import { Collapse, Row, Col } from "antd";
+import { Col, Collapse, Row } from "antd";
import React from "react";
+import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
-import { setEmailOptions } from "../../redux/email/email.actions";
-import { toggleModalVisible } from "../../redux/modals/modals.actions";
import { selectPrintCenter } from "../../redux/modals/modals.selectors";
-import {
- selectBodyshop,
- selectCurrentUser,
-} from "../../redux/user/user.selectors";
+import { TemplateList } from "../../utils/TemplateConstants";
import PrintCenterItem from "../print-center-item/print-center-item.component";
import PrintCenterSpeedPrint from "../print-center-speed-print/print-center-speed-print.component";
-import { TemplateList } from "../../utils/TemplateConstants";
-import { useTranslation } from "react-i18next";
const mapStateToProps = createStructuredSelector({
- currentUser: selectCurrentUser,
- bodyshop: selectBodyshop,
printCenterModal: selectPrintCenter,
});
-const mapDispatchToProps = (dispatch) => ({
- setEmailOptions: (e) => dispatch(setEmailOptions(e)),
- toggleModalVisible: () => dispatch(toggleModalVisible("printCenter")),
-});
+const mapDispatchToProps = (dispatch) => ({});
const colSpan = { md: { span: 24 }, lg: { span: 12 } };
-export function PrintCenterJobsComponent({ bodyshop, printCenterModal }) {
+export function PrintCenterJobsComponent({ printCenterModal }) {
const { t } = useTranslation();
const { id: jobId } = printCenterModal.context;
- const tempList = TemplateList();
+ const tempList = TemplateList("job", {});
const JobsReportsList = Object.keys(tempList).map((key) => {
return tempList[key];
});
- console.log("PrintCenterJobsComponent -> JobsReportsList", JobsReportsList);
return (
@@ -45,17 +33,15 @@ export function PrintCenterJobsComponent({ bodyshop, printCenterModal }) {
-
- {JobsReportsList.filter((t) => t.drivingId === "job").map(
- (item) => (
-
- )
- )}
+
+ {JobsReportsList.map((item) => (
+
+ ))}
diff --git a/client/src/components/print-center-modal/print-center-modal.container.jsx b/client/src/components/print-center-modal/print-center-modal.container.jsx
index 0d53b1e65..b812e62ef 100644
--- a/client/src/components/print-center-modal/print-center-modal.container.jsx
+++ b/client/src/components/print-center-modal/print-center-modal.container.jsx
@@ -3,47 +3,37 @@ import React from "react";
import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { createStructuredSelector } from "reselect";
-import { setEmailOptions } from "../../redux/email/email.actions";
import { toggleModalVisible } from "../../redux/modals/modals.actions";
import { selectPrintCenter } from "../../redux/modals/modals.selectors";
-import {
- selectBodyshop,
- selectCurrentUser,
-} from "../../redux/user/user.selectors";
import PrintCenterModalComponent from "./print-center-modal.component";
import "./print-center-modal.styles.scss";
const mapStateToProps = createStructuredSelector({
- currentUser: selectCurrentUser,
- bodyshop: selectBodyshop,
printCenterModal: selectPrintCenter,
});
const mapDispatchToProps = (dispatch) => ({
- setEmailOptions: (e) => dispatch(setEmailOptions(e)),
toggleModalVisible: () => dispatch(toggleModalVisible("printCenter")),
});
export function PrintCenterModalContainer({
printCenterModal,
toggleModalVisible,
- currentUser,
- bodyshop,
- setEmailOptions,
}) {
const { t } = useTranslation();
const { visible, context } = printCenterModal;
- const { type, id } = context;
+ const { type } = context;
// const { refetch } = actions;
return (
toggleModalVisible()}
- width='90%'
- title={` ${t("printcenter.labels.title")} ${type} - ${id}`}
- destroyOnClose>
+ width="90%"
+ title={` ${t("printcenter.labels.title")} - ${type}`}
+ destroyOnClose
+ >
);
diff --git a/client/src/components/print-center-speed-print/print-center-speed-print.component.jsx b/client/src/components/print-center-speed-print/print-center-speed-print.component.jsx
index 7319e4f3e..ac12718f0 100644
--- a/client/src/components/print-center-speed-print/print-center-speed-print.component.jsx
+++ b/client/src/components/print-center-speed-print/print-center-speed-print.component.jsx
@@ -66,14 +66,18 @@ export function PrintCenterSpeedPrint({ bodyshop, jobId }) {
);
}
-const renderTemplateList = (templates) => (
-
- {templates.map((template, idx) => {
- if (idx === templates.length - 1) return TemplateList()[template].title;
- return `${TemplateList()[template].title}, `;
- })}
-
-);
+const renderTemplateList = (templates) => {
+ const TemplateListGenerated = TemplateList();
+ return (
+
+ {templates.map((template, idx) => {
+ if (idx === templates.length - 1)
+ return TemplateListGenerated[template].title;
+ return `${TemplateListGenerated[template].title}, `;
+ })}
+
+ );
+};
export default connect(
mapStateToProps,
diff --git a/client/src/components/schedule-job-modal/schedule-job-modal.container.jsx b/client/src/components/schedule-job-modal/schedule-job-modal.container.jsx
index 97fca225d..ff051e291 100644
--- a/client/src/components/schedule-job-modal/schedule-job-modal.container.jsx
+++ b/client/src/components/schedule-job-modal/schedule-job-modal.container.jsx
@@ -139,10 +139,10 @@ export function ScheduleJobModalContainer({
messageOptions: {
to: [values.email],
replyTo: bodyshop.email,
- subject: TemplateList().appointment_confirmation.subject,
+ subject: TemplateList("appointment").appointment_confirmation.subject,
},
template: {
- name: TemplateList().appointment_confirmation.key,
+ name: TemplateList("appointment").appointment_confirmation.key,
variables: {
id: appt.data.insert_appointments.returning[0].id,
},
diff --git a/client/src/components/shop-info/shop-info.intake.component.jsx b/client/src/components/shop-info/shop-info.intake.component.jsx
index d53907020..ef38f181c 100644
--- a/client/src/components/shop-info/shop-info.intake.component.jsx
+++ b/client/src/components/shop-info/shop-info.intake.component.jsx
@@ -16,6 +16,7 @@ const SelectorDiv = styled.div`
export default function ShopInfoIntakeChecklistComponent({ form }) {
const { t } = useTranslation();
+ const TemplateListGenerated = TemplateList();
return (
@@ -128,12 +129,12 @@ export default function ShopInfoIntakeChecklistComponent({ form }) {
]}
>
@@ -250,12 +251,12 @@ export default function ShopInfoIntakeChecklistComponent({ form }) {
]}
>
diff --git a/client/src/components/shop-info/shop-info.speedprint.component.jsx b/client/src/components/shop-info/shop-info.speedprint.component.jsx
index df3bf9201..c754f3abe 100644
--- a/client/src/components/shop-info/shop-info.speedprint.component.jsx
+++ b/client/src/components/shop-info/shop-info.speedprint.component.jsx
@@ -4,10 +4,12 @@ import React from "react";
import { useTranslation } from "react-i18next";
import { TemplateList } from "../../utils/TemplateConstants";
import FormListMoveArrows from "../form-list-move-arrows/form-list-move-arrows.component";
+import LayoutFormRow from "../layout-form-row/layout-form-row.component";
export default function ShopInfoSpeedPrint({ bodyshop, form }) {
const { t } = useTranslation();
-
+ const TemplateListGenerated = TemplateList();
+ console.log("TemplateListGenerated", TemplateListGenerated);
return (
@@ -16,7 +18,7 @@ export default function ShopInfoSpeedPrint({ bodyshop, form }) {
{fields.map((field, index) => (
-
+
@@ -81,7 +83,7 @@ export default function ShopInfoSpeedPrint({ bodyshop, form }) {
index={index}
total={fields.length}
/>
-
+
))}
diff --git a/client/src/components/shop-template-add/shop-template-add.component.jsx b/client/src/components/shop-template-add/shop-template-add.component.jsx
index 47a071652..619e70f4e 100644
--- a/client/src/components/shop-template-add/shop-template-add.component.jsx
+++ b/client/src/components/shop-template-add/shop-template-add.component.jsx
@@ -7,14 +7,14 @@ import { useTranslation } from "react-i18next";
import { connect } from "react-redux";
import { useHistory, useLocation } from "react-router-dom";
import { createStructuredSelector } from "reselect";
+import { logImEXEvent } from "../../firebase/firebase.utils";
import {
INSERT_TEMPLATE,
QUERY_TEMPLATES_BY_NAME_FOR_DUPE,
} from "../../graphql/templates.queries";
import { selectBodyshop } from "../../redux/user/user.selectors";
-import { TemplateList } from "../../utils/TemplateConstants";
-import { logImEXEvent } from "../../firebase/firebase.utils";
import client from "../../utils/GraphQLClient";
+import { TemplateList } from "../../utils/TemplateConstants";
const mapStateToProps = createStructuredSelector({
//currentUser: selectCurrentUser
@@ -67,12 +67,12 @@ export function ShopTemplateAddComponent({
history.push({ search: queryString.stringify(search) });
if (!!refetch) refetch();
};
-
+ const TemplateListGenerated = TemplateList();
const menu = (