@bigbinary/neeto-email-notifications-frontend 2.2.13 → 2.2.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,17 @@
1
+ {
2
+ "neetoEmailNotifications": {
3
+ "welcomeScreen": "Willkommen bei neeto wheel nano",
4
+ "errors": {
5
+ "invalidEmailAddress": "Bitte geben Sie eine gültige E-Mail-Adresse ein",
6
+ "sendFromRequired": "'Send von'-E-Mail-Adresse ist erforderlich",
7
+ "sendToRequired": "'Send an'-E-Mail-Adresse ist erforderlich",
8
+ "subjectRequired": "Betreff ist erforderlich",
9
+ "messageRequired": "Nachricht ist erforderlich"
10
+ },
11
+ "emailNotification": {
12
+ "title": "E-Mail-Benachrichtigung",
13
+ "subTitle": "Senden Sie eine E-Mail-Benachrichtigung, wenn ein neues Ereignis auftritt"
14
+ },
15
+ "preview": "Vorschau"
16
+ }
17
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "neetoEmailNotifications": {
3
+ "welcomeScreen": "Bienvenido a neeto wheel nano",
4
+ "errors": {
5
+ "invalidEmailAddress": "Por favor, introduce una dirección de correo electrónico válida",
6
+ "sendFromRequired": "Se requiere una dirección de correo electrónico 'De'",
7
+ "sendToRequired": "Se requiere una dirección de correo electrónico 'Para'",
8
+ "subjectRequired": "Se requiere el asunto",
9
+ "messageRequired": "Se requiere un mensaje"
10
+ },
11
+ "emailNotification": {
12
+ "title": "Notificación por correo electrónico",
13
+ "subTitle": "Envía una notificación por correo electrónico cuando ocurra un nuevo evento"
14
+ },
15
+ "preview": "Vista previa"
16
+ }
17
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "neetoEmailNotifications": {
3
+ "welcomeScreen": "Bienvenue sur neeto wheel nano",
4
+ "errors": {
5
+ "invalidEmailAddress": "Veuillez entrer une adresse e-mail valide",
6
+ "sendFromRequired": "L'adresse e-mail 'Send from' est requise",
7
+ "sendToRequired": "L'adresse e-mail 'Send to' est requise",
8
+ "subjectRequired": "Le sujet est requis",
9
+ "messageRequired": "Le message est requis"
10
+ },
11
+ "emailNotification": {
12
+ "title": "Notification par e-mail",
13
+ "subTitle": "Envoyer une notification par e-mail lorsqu'un nouvel événement se produit"
14
+ },
15
+ "preview": "Aperçu"
16
+ }
17
+ }
@@ -1,16 +1,9 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import classNames from 'classnames';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
3
  import { isNotEmpty, isNotPresent, noop } from '@bigbinary/neeto-cist';
4
- import Breadcrumbs from '@bigbinary/neeto-molecules/Breadcrumbs';
5
- import { EmailFormProvider, EmailForm, EmailPreview } from '@bigbinary/neeto-molecules/EmailForm';
6
- import HelpPopover from '@bigbinary/neeto-molecules/HelpPopover';
7
- import MobilePreviewHeader from '@bigbinary/neeto-molecules/MobilePreviewHeader';
4
+ import EmailFormComponent from '@bigbinary/neeto-molecules/EmailForm';
8
5
  import Spinner from '@bigbinary/neetoui/Spinner';
9
- import Tooltip from '@bigbinary/neetoui/Tooltip';
10
- import Typography from '@bigbinary/neetoui/Typography';
11
- import BlockNavigation from '@bigbinary/neetoui/formik/BlockNavigation';
12
- import Switch from '@bigbinary/neetoui/formik/Switch';
13
- import { prop, mergeLeft, isEmpty, mergeDeepLeft, pluck } from 'ramda';
6
+ import { prop, isEmpty, mergeLeft, mergeDeepLeft } from 'ramda';
14
7
  import { useTranslation } from 'react-i18next';
15
8
  import { useQuery } from '@tanstack/react-query';
16
9
  import { DEFAULT_STALE_TIME } from '@bigbinary/neeto-commons-frontend/constants';
@@ -18,8 +11,7 @@ import { useMutationWithInvalidation } from '@bigbinary/neeto-commons-frontend/r
18
11
  import axios from 'axios';
19
12
  import * as yup from 'yup';
20
13
  import { string } from 'yup';
21
- import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
22
- import { jsx, jsxs } from 'react/jsx-runtime';
14
+ import { jsx } from 'react/jsx-runtime';
23
15
 
24
16
  var EMAIL_NOTIFICATIONS_URL = "neeto_email_notifications/email_notification";
25
17
 
@@ -66,7 +58,7 @@ var FORM_VALIDATION_SCHEMA = {
66
58
  isEnabled: yup["boolean"]()
67
59
  };
68
60
 
69
- var _excluded = ["notifyEmails", "notifyCcEmails", "notifyBccEmails", "replyToId", "customFields"],
61
+ var _excluded$1 = ["notifyEmails", "notifyCcEmails", "notifyBccEmails", "replyToId", "customFields"],
70
62
  _excluded2 = ["id", "isEnabled", "sendTo", "sendToCc", "sendToBcc", "showCopyEmails", "replyTo", "message", "subject", "sendFrom", "disabledByUser", "sendToId"];
71
63
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
72
64
  function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -94,7 +86,7 @@ var parseEmailNotificationData = function parseEmailNotificationData(data, sendT
94
86
  notifyBccEmails = data.notifyBccEmails,
95
87
  replyToId = data.replyToId,
96
88
  customFields = data.customFields,
97
- rest = _objectWithoutProperties(data, _excluded);
89
+ rest = _objectWithoutProperties(data, _excluded$1);
98
90
  var parsed = _objectSpread$1(_objectSpread$1({}, customFields), rest);
99
91
  parsed.sendTo = notifyEmails ? createEmailOptions(notifyEmails) : [];
100
92
  parsed.sendToCc = notifyCcEmails ? createEmailOptions(notifyCcEmails) : [];
@@ -153,6 +145,7 @@ var renderText = function renderText(text, fallbackTranslation) {
153
145
  return isEmpty(text) ? fallbackTranslation : text;
154
146
  };
155
147
 
148
+ var _excluded = ["validationSchema", "showReplyToField", "showSendToAsRadio", "showCcField", "showBccField"];
156
149
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
157
150
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
158
151
  var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
@@ -179,7 +172,7 @@ var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
179
172
  blockNavigation = _ref$blockNavigation === void 0 ? false : _ref$blockNavigation,
180
173
  _ref$breadcrumbs = _ref.breadcrumbs,
181
174
  breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
182
- _children = _ref.children,
175
+ children = _ref.children,
183
176
  _ref$helpPopoverProps = _ref.helpPopoverProps,
184
177
  helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps;
185
178
  var _useTranslation = useTranslation(),
@@ -199,106 +192,58 @@ var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
199
192
  onSuccess: onSuccess
200
193
  });
201
194
  };
202
- var handleSwitchChange = function handleSwitchChange(_ref2) {
203
- var _event$target, _event$target2;
204
- var event = _ref2.event,
205
- values = _ref2.values,
206
- setFieldValue = _ref2.setFieldValue;
207
- if ((event === null || event === void 0 || (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.checked) === true) {
208
- setFieldValue("isEnabled", true);
209
- } else if ((event === null || event === void 0 || (_event$target2 = event.target) === null || _event$target2 === void 0 ? void 0 : _event$target2.checked) === false) {
210
- if ((values === null || values === void 0 ? void 0 : values.isEnabled) === true) setFieldValue("disabledByUser", true);
211
- setFieldValue("isEnabled", false);
212
- }
213
- };
214
195
  if (isLoading || isNotPresent(data)) {
215
196
  return /*#__PURE__*/jsx("div", {
216
197
  className: "flex h-full w-full items-center justify-center",
217
198
  children: /*#__PURE__*/jsx(Spinner, {})
218
199
  });
219
200
  }
201
+ var formattedTitle = renderText(title, t("neetoEmailNotifications.emailNotification.title"));
202
+ var formattedSubTitle = renderText(subTitle, t("neetoEmailNotifications.emailNotification.subTitle"));
203
+ var customValidationSchema = emailFormikProps.validationSchema,
204
+ _emailFormikProps$sho = emailFormikProps.showReplyToField,
205
+ showReplyToField = _emailFormikProps$sho === void 0 ? false : _emailFormikProps$sho,
206
+ _emailFormikProps$sho2 = emailFormikProps.showSendToAsRadio,
207
+ showSendToAsRadio = _emailFormikProps$sho2 === void 0 ? false : _emailFormikProps$sho2,
208
+ _emailFormikProps$sho3 = emailFormikProps.showCcField,
209
+ showCcField = _emailFormikProps$sho3 === void 0 ? false : _emailFormikProps$sho3,
210
+ _emailFormikProps$sho4 = emailFormikProps.showBccField,
211
+ showBccField = _emailFormikProps$sho4 === void 0 ? false : _emailFormikProps$sho4,
212
+ pureFormikProps = _objectWithoutProperties(emailFormikProps, _excluded);
220
213
  return /*#__PURE__*/jsx("div", {
221
214
  className: "min-w-0 flex-grow overflow-y-auto",
222
- children: /*#__PURE__*/jsx(EmailFormProvider, _objectSpread(_objectSpread({
215
+ children: /*#__PURE__*/jsx(EmailFormComponent, {
216
+ blockNavigation: blockNavigation,
217
+ emailPreviewProps: emailPreviewProps,
218
+ showBccField: showBccField,
219
+ showCcField: showCcField,
220
+ showReplyToField: showReplyToField,
221
+ showSendToAsRadio: showSendToAsRadio,
222
+ tooltipProps: tooltipProps,
223
223
  showSendToField: true,
224
- formikProps: {
224
+ emailFormProps: _objectSpread({
225
+ showSendToField: true
226
+ }, emailFormProps),
227
+ isLoading: isSubmitting,
228
+ validationSchema: customValidationSchema || FORM_VALIDATION_SCHEMA,
229
+ formikProps: _objectSpread({
225
230
  validateOnBlur: true,
226
231
  validateOnChange: true
232
+ }, pureFormikProps),
233
+ headerProps: {
234
+ title: formattedTitle,
235
+ titleHelpPopoverProps: helpPopoverProps,
236
+ breadcrumbs: breadcrumbs
227
237
  },
228
- validationSchema: FORM_VALIDATION_SCHEMA,
229
238
  initialValues: parseEmailNotificationData(data, (emailFormProps === null || emailFormProps === void 0 || (_emailFormProps$sendT = emailFormProps.sendToFieldProps) === null || _emailFormProps$sendT === void 0 ? void 0 : _emailFormProps$sendT.options) || (emailFormProps === null || emailFormProps === void 0 ? void 0 : emailFormProps.sendToOptions)),
230
- onSubmit: handleSubmit
231
- }, emailFormikProps), {}, {
232
- children: function children(_ref3) {
233
- var values = _ref3.values,
234
- setFieldValue = _ref3.setFieldValue;
235
- return /*#__PURE__*/jsxs("div", {
236
- className: "nf-email-notification-wrapper flex h-full flex-grow flex-col lg:flex-row",
237
- children: [/*#__PURE__*/jsxs("div", {
238
- className: "flex w-full flex-col px-5 md:px-10 lg:h-full lg:w-1/2 lg:overflow-y-auto",
239
- children: [isNotEmpty(breadcrumbs) && /*#__PURE__*/jsx(Breadcrumbs, {
240
- breadcrumbs: breadcrumbs,
241
- className: "mb-6 pt-10"
242
- }), blockNavigation && /*#__PURE__*/jsx(BlockNavigation, {}), /*#__PURE__*/jsx("div", {
243
- className: "flex items-center justify-between gap-6",
244
- children: /*#__PURE__*/jsxs("div", {
245
- className: "space-y-0.5",
246
- children: [/*#__PURE__*/jsx(Tooltip, _objectSpread(_objectSpread({
247
- disabled: !disabled,
248
- position: "top"
249
- }, tooltipProps), {}, {
250
- children: /*#__PURE__*/jsxs("div", {
251
- className: "flex items-center gap-2",
252
- children: [/*#__PURE__*/jsx(Switch, {
253
- disabled: disabled,
254
- "data-cy": "receive-email-notification-switch",
255
- name: "isEnabled",
256
- onChange: function onChange(event) {
257
- return handleSwitchChange({
258
- event: event,
259
- setFieldValue: setFieldValue,
260
- values: values
261
- });
262
- }
263
- }), /*#__PURE__*/jsx(Typography, {
264
- component: "span",
265
- "data-cy": "receive-email-notification-label",
266
- lineHeight: "normal",
267
- style: "h3",
268
- weight: "semibold",
269
- children: renderText(title, t("neetoEmailNotifications.emailNotification.title"))
270
- }), /*#__PURE__*/jsx(HelpPopover, _objectSpread({}, helpPopoverProps))]
271
- })
272
- })), /*#__PURE__*/jsx(Typography, {
273
- lineHeight: "normal",
274
- style: "body2",
275
- children: renderText(subTitle, t("neetoEmailNotifications.emailNotification.subTitle"))
276
- })]
277
- })
278
- }), values.isEnabled && _children, /*#__PURE__*/jsx(EmailForm, _objectSpread({
279
- showSendToField: true,
280
- className: classNames({
281
- "pt-3 ": values.isEnabled
282
- }),
283
- isLoading: isSubmitting,
284
- showFields: values.isEnabled
285
- }, emailFormProps))]
286
- }), /*#__PURE__*/jsx(MobilePreviewHeader, {
287
- className: "lg:hidden"
288
- }), values.isEnabled && /*#__PURE__*/jsx("div", {
289
- className: "neeto-ui-bg-gray-100 w-full px-5 py-10 lg:w-1/2 lg:overflow-y-auto lg:px-10",
290
- children: /*#__PURE__*/jsx(EmailPreview, _objectSpread(_objectSpread({
291
- body: values.message,
292
- from: values.sendFrom,
293
- subject: values.subject,
294
- to: pluck("value", values.sendTo)
295
- }, emailPreviewProps), {}, {
296
- className: "neeto-ui-theme--light"
297
- }))
298
- })]
299
- });
300
- }
301
- }))
239
+ switchProps: {
240
+ label: formattedSubTitle,
241
+ disabled: disabled,
242
+ "data-cy": "receive-email-notification-switch"
243
+ },
244
+ onSubmit: handleSubmit,
245
+ children: children
246
+ })
302
247
  });
303
248
  };
304
249
 
@@ -1 +1 @@
1
- {"version":3,"file":"NeetoEmailNotificationForm.js","sources":["../app/javascript/src/constants/index.js","../app/javascript/src/apis/email_notifications.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/emailNotificationApi.js","../app/javascript/src/components/EmailNotificationForm/constants.js","../app/javascript/src/components/EmailNotificationForm/utils.js","../app/javascript/src/components/EmailNotificationForm/index.jsx"],"sourcesContent":["export const EMAIL_NOTIFICATIONS_URL =\n \"neeto_email_notifications/email_notification\";\n","import axios from \"axios\";\n\nimport { EMAIL_NOTIFICATIONS_URL } from \"src/constants\";\n\nconst fetch = params => axios.get(EMAIL_NOTIFICATIONS_URL, { params });\n\nconst update = payload => axios.put(EMAIL_NOTIFICATIONS_URL, payload);\n\nconst emailNotificationsApi = { fetch, update };\n\nexport default emailNotificationsApi;\n","export const QUERY_KEYS = {\n NEETO_EMAIL_NOTIFICATIONS: \"neeto-email-notifications\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport emailNotificationsApi from \"src/apis/email_notifications\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useFetchEmailNotifications = params =>\n useQuery({\n queryKey: [\n QUERY_KEYS.NEETO_EMAIL_NOTIFICATIONS,\n params[\"notificationHolderId\"],\n params[\"customFields\"],\n ],\n queryFn: () => emailNotificationsApi.fetch(params),\n staleTime: DEFAULT_STALE_TIME,\n select: prop(\"emailNotification\"),\n enabled: isNotEmpty(params),\n });\n\nexport const useUpdateEmailNotification = () =>\n useMutationWithInvalidation(params => emailNotificationsApi.update(params), {\n keysToInvalidate: [\n (_, { notificationHolderId }) => [\n QUERY_KEYS.NEETO_EMAIL_NOTIFICATIONS,\n notificationHolderId,\n ],\n ],\n });\n","import * as yup from \"yup\";\n\nexport const FORM_VALIDATION_SCHEMA = { isEnabled: yup.boolean() };\n","import { isNotEmpty } from \"neetocist\";\nimport { isEmpty, mergeLeft, prop } from \"ramda\";\nimport { string } from \"yup\";\n\nconst isValidEmail = email => string().email().isValidSync(email);\n\nconst createEmailOptions = (emails = []) =>\n emails.map(email => ({\n label: email,\n value: email,\n valid: isValidEmail(email),\n }));\n\nexport const parseEmailsOptions = (emailOptions = []) =>\n emailOptions.map(prop(\"label\"));\n\nexport const parseEmailNotificationData = (data, sendToOptions) => {\n const {\n notifyEmails,\n notifyCcEmails,\n notifyBccEmails,\n replyToId,\n customFields,\n ...rest\n } = data;\n\n const parsed = { ...customFields, ...rest };\n parsed.sendTo = notifyEmails ? createEmailOptions(notifyEmails) : [];\n parsed.sendToCc = notifyCcEmails ? createEmailOptions(notifyCcEmails) : [];\n parsed.sendToBcc = notifyCcEmails ? createEmailOptions(notifyBccEmails) : [];\n parsed.replyTo = replyToId || customFields[\"replyTo\"];\n parsed.sendToId = customFields[\"sendToId\"] || sendToOptions?.[0]?.value || \"\";\n parsed.showCopyEmails = !!(notifyCcEmails?.length || notifyBccEmails?.length);\n\n return parsed;\n};\n\nexport const packEmailPayload = (values, isReplyToDropdownField) => {\n const {\n // eslint-disable-next-line no-unused-vars\n id: _,\n isEnabled,\n sendTo,\n sendToCc,\n sendToBcc,\n showCopyEmails,\n replyTo,\n message,\n subject,\n sendFrom,\n disabledByUser,\n sendToId,\n ...rest\n } = values;\n let payload = { isEnabled };\n\n if (isEnabled) {\n payload = { ...payload };\n payload.notifyEmails = parseEmailsOptions(sendTo);\n payload.notifyBccEmails = showCopyEmails\n ? parseEmailsOptions(sendToBcc)\n : [];\n\n payload.notifyCcEmails = showCopyEmails ? parseEmailsOptions(sendToCc) : [];\n if (isReplyToDropdownField) {\n payload.replyToId = replyTo;\n } else {\n rest.replyTo = replyTo;\n }\n payload.message = message;\n payload.subject = subject;\n payload.customFields = { ...rest, disabledByUser: false };\n\n if (isNotEmpty(sendToId)) {\n payload.customFields = mergeLeft(payload.customFields, { sendToId });\n }\n payload.sendFrom = sendFrom;\n } else {\n payload.customFields = { disabledByUser };\n }\n\n return payload;\n};\n\nexport const renderText = (text, fallbackTranslation) =>\n isEmpty(text) ? fallbackTranslation : text;\n","import classNames from \"classnames\";\nimport { isNotPresent, noop, isNotEmpty } from \"neetocist\";\nimport Breadcrumbs from \"neetomolecules/Breadcrumbs\";\nimport {\n EmailFormProvider,\n EmailForm,\n EmailPreview,\n} from \"neetomolecules/EmailForm\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport MobilePreviewHeader from \"neetomolecules/MobilePreviewHeader\";\nimport { Spinner, Tooltip, Typography } from \"neetoui\";\nimport { BlockNavigation, Switch } from \"neetoui/formik\";\nimport { mergeDeepLeft, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchEmailNotifications,\n useUpdateEmailNotification,\n} from \"src/hooks/reactQuery/emailNotificationApi\";\n\nimport { FORM_VALIDATION_SCHEMA } from \"./constants\";\nimport {\n packEmailPayload,\n parseEmailNotificationData,\n renderText,\n} from \"./utils\";\n\nconst NeetoEmailNotificationForm = ({\n emailNotificationParams = {},\n emailPreviewProps = {},\n emailFormProps = {},\n emailFormikProps = {},\n title = \"\",\n subTitle = \"\",\n disabled = false,\n tooltipProps = {},\n onSuccess = noop,\n blockNavigation = false,\n breadcrumbs = [],\n children,\n helpPopoverProps = {},\n}) => {\n const { t } = useTranslation();\n\n const { data = {}, isLoading } = useFetchEmailNotifications(\n emailNotificationParams\n );\n\n const { mutate: updateEmailNotification, isPending: isSubmitting } =\n useUpdateEmailNotification();\n\n const handleSubmit = values => {\n const isReplyToDropdownField =\n emailFormProps?.replyToFieldProps?.options !== undefined;\n\n const body = mergeDeepLeft(\n packEmailPayload(values, isReplyToDropdownField),\n emailNotificationParams\n );\n updateEmailNotification(body, { onSuccess });\n };\n\n const handleSwitchChange = ({ event, values, setFieldValue }) => {\n if (event?.target?.checked === true) {\n setFieldValue(\"isEnabled\", true);\n } else if (event?.target?.checked === false) {\n if (values?.isEnabled === true) setFieldValue(\"disabledByUser\", true);\n setFieldValue(\"isEnabled\", false);\n }\n };\n\n if (isLoading || isNotPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"min-w-0 flex-grow overflow-y-auto\">\n <EmailFormProvider\n showSendToField\n formikProps={{ validateOnBlur: true, validateOnChange: true }}\n validationSchema={FORM_VALIDATION_SCHEMA}\n initialValues={parseEmailNotificationData(\n data,\n emailFormProps?.sendToFieldProps?.options ||\n emailFormProps?.sendToOptions\n )}\n onSubmit={handleSubmit}\n {...emailFormikProps}\n >\n {({ values, setFieldValue }) => (\n <div className=\"nf-email-notification-wrapper flex h-full flex-grow flex-col lg:flex-row\">\n <div className=\"flex w-full flex-col px-5 md:px-10 lg:h-full lg:w-1/2 lg:overflow-y-auto\">\n {isNotEmpty(breadcrumbs) && (\n <Breadcrumbs {...{ breadcrumbs }} className=\"mb-6 pt-10\" />\n )}\n {blockNavigation && <BlockNavigation />}\n <div className=\"flex items-center justify-between gap-6\">\n <div className=\"space-y-0.5\">\n <Tooltip\n disabled={!disabled}\n position=\"top\"\n {...tooltipProps}\n >\n <div className=\"flex items-center gap-2\">\n <Switch\n {...{ disabled }}\n data-cy=\"receive-email-notification-switch\"\n name=\"isEnabled\"\n onChange={event =>\n handleSwitchChange({ event, setFieldValue, values })\n }\n />\n <Typography\n component=\"span\"\n data-cy=\"receive-email-notification-label\"\n lineHeight=\"normal\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {renderText(\n title,\n t(\"neetoEmailNotifications.emailNotification.title\")\n )}\n </Typography>\n <HelpPopover {...helpPopoverProps} />\n </div>\n </Tooltip>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {renderText(\n subTitle,\n t(\"neetoEmailNotifications.emailNotification.subTitle\")\n )}\n </Typography>\n </div>\n </div>\n {values.isEnabled && children}\n <EmailForm\n showSendToField\n className={classNames({ \"pt-3 \": values.isEnabled })}\n isLoading={isSubmitting}\n showFields={values.isEnabled}\n {...emailFormProps}\n />\n </div>\n <MobilePreviewHeader className=\"lg:hidden\" />\n {values.isEnabled && (\n <div className=\"neeto-ui-bg-gray-100 w-full px-5 py-10 lg:w-1/2 lg:overflow-y-auto lg:px-10\">\n <EmailPreview\n body={values.message}\n from={values.sendFrom}\n subject={values.subject}\n to={pluck(\"value\", values.sendTo)}\n {...emailPreviewProps}\n className=\"neeto-ui-theme--light\"\n />\n </div>\n )}\n </div>\n )}\n </EmailFormProvider>\n </div>\n );\n};\nexport default NeetoEmailNotificationForm;\n"],"names":["EMAIL_NOTIFICATIONS_URL","fetch","params","axios","get","update","payload","put","emailNotificationsApi","QUERY_KEYS","NEETO_EMAIL_NOTIFICATIONS","useFetchEmailNotifications","useQuery","queryKey","queryFn","staleTime","DEFAULT_STALE_TIME","select","prop","enabled","isNotEmpty","useUpdateEmailNotification","useMutationWithInvalidation","keysToInvalidate","_","_ref","notificationHolderId","FORM_VALIDATION_SCHEMA","isEnabled","yup","isValidEmail","email","string","isValidSync","createEmailOptions","emails","arguments","length","undefined","map","label","value","valid","parseEmailsOptions","emailOptions","parseEmailNotificationData","data","sendToOptions","_sendToOptions$","notifyEmails","notifyCcEmails","notifyBccEmails","replyToId","customFields","rest","_objectWithoutProperties","_excluded","parsed","_objectSpread","sendTo","sendToCc","sendToBcc","replyTo","sendToId","showCopyEmails","packEmailPayload","values","isReplyToDropdownField","id","message","subject","sendFrom","disabledByUser","_excluded2","mergeLeft","renderText","text","fallbackTranslation","isEmpty","NeetoEmailNotificationForm","_emailFormProps$sendT","_ref$emailNotificatio","emailNotificationParams","_ref$emailPreviewProp","emailPreviewProps","_ref$emailFormProps","emailFormProps","_ref$emailFormikProps","emailFormikProps","_ref$title","title","_ref$subTitle","subTitle","_ref$disabled","disabled","_ref$tooltipProps","tooltipProps","_ref$onSuccess","onSuccess","noop","_ref$blockNavigation","blockNavigation","_ref$breadcrumbs","breadcrumbs","children","_ref$helpPopoverProps","helpPopoverProps","_useTranslation","useTranslation","t","_useFetchEmailNotific","_useFetchEmailNotific2","isLoading","_useUpdateEmailNotifi","updateEmailNotification","mutate","isSubmitting","isPending","handleSubmit","_emailFormProps$reply","replyToFieldProps","options","body","mergeDeepLeft","handleSwitchChange","_ref2","_event$target","_event$target2","event","setFieldValue","target","checked","isNotPresent","_jsx","className","Spinner","EmailFormProvider","showSendToField","formikProps","validateOnBlur","validateOnChange","validationSchema","initialValues","sendToFieldProps","onSubmit","_ref3","_jsxs","Breadcrumbs","BlockNavigation","Tooltip","position","Switch","name","onChange","Typography","component","lineHeight","style","weight","HelpPopover","EmailForm","classNames","showFields","MobilePreviewHeader","EmailPreview","from","to","pluck"],"mappings":"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"}
1
+ {"version":3,"file":"NeetoEmailNotificationForm.js","sources":["../app/javascript/src/constants/index.js","../app/javascript/src/apis/email_notifications.js","../app/javascript/src/constants/query.js","../app/javascript/src/hooks/reactQuery/emailNotificationApi.js","../app/javascript/src/components/EmailNotificationForm/constants.js","../app/javascript/src/components/EmailNotificationForm/utils.js","../app/javascript/src/components/EmailNotificationForm/index.jsx"],"sourcesContent":["export const EMAIL_NOTIFICATIONS_URL =\n \"neeto_email_notifications/email_notification\";\n","import axios from \"axios\";\n\nimport { EMAIL_NOTIFICATIONS_URL } from \"src/constants\";\n\nconst fetch = params => axios.get(EMAIL_NOTIFICATIONS_URL, { params });\n\nconst update = payload => axios.put(EMAIL_NOTIFICATIONS_URL, payload);\n\nconst emailNotificationsApi = { fetch, update };\n\nexport default emailNotificationsApi;\n","export const QUERY_KEYS = {\n NEETO_EMAIL_NOTIFICATIONS: \"neeto-email-notifications\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { isNotEmpty } from \"neetocist\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\nimport { prop } from \"ramda\";\n\nimport emailNotificationsApi from \"src/apis/email_notifications\";\nimport { QUERY_KEYS } from \"src/constants/query\";\n\nexport const useFetchEmailNotifications = params =>\n useQuery({\n queryKey: [\n QUERY_KEYS.NEETO_EMAIL_NOTIFICATIONS,\n params[\"notificationHolderId\"],\n params[\"customFields\"],\n ],\n queryFn: () => emailNotificationsApi.fetch(params),\n staleTime: DEFAULT_STALE_TIME,\n select: prop(\"emailNotification\"),\n enabled: isNotEmpty(params),\n });\n\nexport const useUpdateEmailNotification = () =>\n useMutationWithInvalidation(params => emailNotificationsApi.update(params), {\n keysToInvalidate: [\n (_, { notificationHolderId }) => [\n QUERY_KEYS.NEETO_EMAIL_NOTIFICATIONS,\n notificationHolderId,\n ],\n ],\n });\n","import * as yup from \"yup\";\n\nexport const FORM_VALIDATION_SCHEMA = { isEnabled: yup.boolean() };\n","import { isNotEmpty } from \"neetocist\";\nimport { isEmpty, mergeLeft, prop } from \"ramda\";\nimport { string } from \"yup\";\n\nconst isValidEmail = email => string().email().isValidSync(email);\n\nconst createEmailOptions = (emails = []) =>\n emails.map(email => ({\n label: email,\n value: email,\n valid: isValidEmail(email),\n }));\n\nexport const parseEmailsOptions = (emailOptions = []) =>\n emailOptions.map(prop(\"label\"));\n\nexport const parseEmailNotificationData = (data, sendToOptions) => {\n const {\n notifyEmails,\n notifyCcEmails,\n notifyBccEmails,\n replyToId,\n customFields,\n ...rest\n } = data;\n\n const parsed = { ...customFields, ...rest };\n parsed.sendTo = notifyEmails ? createEmailOptions(notifyEmails) : [];\n parsed.sendToCc = notifyCcEmails ? createEmailOptions(notifyCcEmails) : [];\n parsed.sendToBcc = notifyCcEmails ? createEmailOptions(notifyBccEmails) : [];\n parsed.replyTo = replyToId || customFields[\"replyTo\"];\n parsed.sendToId = customFields[\"sendToId\"] || sendToOptions?.[0]?.value || \"\";\n parsed.showCopyEmails = !!(notifyCcEmails?.length || notifyBccEmails?.length);\n\n return parsed;\n};\n\nexport const packEmailPayload = (values, isReplyToDropdownField) => {\n const {\n // eslint-disable-next-line no-unused-vars\n id: _,\n isEnabled,\n sendTo,\n sendToCc,\n sendToBcc,\n showCopyEmails,\n replyTo,\n message,\n subject,\n sendFrom,\n disabledByUser,\n sendToId,\n ...rest\n } = values;\n let payload = { isEnabled };\n\n if (isEnabled) {\n payload = { ...payload };\n payload.notifyEmails = parseEmailsOptions(sendTo);\n payload.notifyBccEmails = showCopyEmails\n ? parseEmailsOptions(sendToBcc)\n : [];\n\n payload.notifyCcEmails = showCopyEmails ? parseEmailsOptions(sendToCc) : [];\n if (isReplyToDropdownField) {\n payload.replyToId = replyTo;\n } else {\n rest.replyTo = replyTo;\n }\n payload.message = message;\n payload.subject = subject;\n payload.customFields = { ...rest, disabledByUser: false };\n\n if (isNotEmpty(sendToId)) {\n payload.customFields = mergeLeft(payload.customFields, { sendToId });\n }\n payload.sendFrom = sendFrom;\n } else {\n payload.customFields = { disabledByUser };\n }\n\n return payload;\n};\n\nexport const renderText = (text, fallbackTranslation) =>\n isEmpty(text) ? fallbackTranslation : text;\n","import { isNotPresent, noop } from \"neetocist\";\nimport EmailFormComponent from \"neetomolecules/EmailForm\";\nimport { Spinner } from \"neetoui\";\nimport { mergeDeepLeft } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useFetchEmailNotifications,\n useUpdateEmailNotification,\n} from \"src/hooks/reactQuery/emailNotificationApi\";\n\nimport { FORM_VALIDATION_SCHEMA } from \"./constants\";\nimport {\n packEmailPayload,\n parseEmailNotificationData,\n renderText,\n} from \"./utils\";\n\nconst NeetoEmailNotificationForm = ({\n emailNotificationParams = {},\n emailPreviewProps = {},\n emailFormProps = {},\n emailFormikProps = {},\n title = \"\",\n subTitle = \"\",\n disabled = false,\n tooltipProps = {},\n onSuccess = noop,\n blockNavigation = false,\n breadcrumbs = [],\n children,\n helpPopoverProps = {},\n}) => {\n const { t } = useTranslation();\n\n const { data = {}, isLoading } = useFetchEmailNotifications(\n emailNotificationParams\n );\n\n const { mutate: updateEmailNotification, isPending: isSubmitting } =\n useUpdateEmailNotification();\n\n const handleSubmit = values => {\n const isReplyToDropdownField =\n emailFormProps?.replyToFieldProps?.options !== undefined;\n\n const body = mergeDeepLeft(\n packEmailPayload(values, isReplyToDropdownField),\n emailNotificationParams\n );\n updateEmailNotification(body, { onSuccess });\n };\n\n if (isLoading || isNotPresent(data)) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n const formattedTitle = renderText(\n title,\n t(\"neetoEmailNotifications.emailNotification.title\")\n );\n\n const formattedSubTitle = renderText(\n subTitle,\n t(\"neetoEmailNotifications.emailNotification.subTitle\")\n );\n\n const {\n validationSchema: customValidationSchema,\n showReplyToField = false,\n showSendToAsRadio = false,\n showCcField = false,\n showBccField = false,\n ...pureFormikProps\n } = emailFormikProps;\n\n return (\n <div className=\"min-w-0 flex-grow overflow-y-auto\">\n <EmailFormComponent\n {...{\n blockNavigation,\n emailPreviewProps,\n showBccField,\n showCcField,\n showReplyToField,\n showSendToAsRadio,\n tooltipProps,\n }}\n showSendToField\n emailFormProps={{ showSendToField: true, ...emailFormProps }}\n isLoading={isSubmitting}\n validationSchema={customValidationSchema || FORM_VALIDATION_SCHEMA}\n formikProps={{\n validateOnBlur: true,\n validateOnChange: true,\n ...pureFormikProps,\n }}\n headerProps={{\n title: formattedTitle,\n titleHelpPopoverProps: helpPopoverProps,\n breadcrumbs,\n }}\n initialValues={parseEmailNotificationData(\n data,\n emailFormProps?.sendToFieldProps?.options ||\n emailFormProps?.sendToOptions\n )}\n switchProps={{\n label: formattedSubTitle,\n disabled,\n \"data-cy\": \"receive-email-notification-switch\",\n }}\n onSubmit={handleSubmit}\n >\n {children}\n </EmailFormComponent>\n </div>\n );\n};\n\nexport default NeetoEmailNotificationForm;\n"],"names":["EMAIL_NOTIFICATIONS_URL","fetch","params","axios","get","update","payload","put","emailNotificationsApi","QUERY_KEYS","NEETO_EMAIL_NOTIFICATIONS","useFetchEmailNotifications","useQuery","queryKey","queryFn","staleTime","DEFAULT_STALE_TIME","select","prop","enabled","isNotEmpty","useUpdateEmailNotification","useMutationWithInvalidation","keysToInvalidate","_","_ref","notificationHolderId","FORM_VALIDATION_SCHEMA","isEnabled","yup","isValidEmail","email","string","isValidSync","createEmailOptions","emails","arguments","length","undefined","map","label","value","valid","parseEmailsOptions","emailOptions","parseEmailNotificationData","data","sendToOptions","_sendToOptions$","notifyEmails","notifyCcEmails","notifyBccEmails","replyToId","customFields","rest","_objectWithoutProperties","_excluded","parsed","_objectSpread","sendTo","sendToCc","sendToBcc","replyTo","sendToId","showCopyEmails","packEmailPayload","values","isReplyToDropdownField","id","message","subject","sendFrom","disabledByUser","_excluded2","mergeLeft","renderText","text","fallbackTranslation","isEmpty","NeetoEmailNotificationForm","_emailFormProps$sendT","_ref$emailNotificatio","emailNotificationParams","_ref$emailPreviewProp","emailPreviewProps","_ref$emailFormProps","emailFormProps","_ref$emailFormikProps","emailFormikProps","_ref$title","title","_ref$subTitle","subTitle","_ref$disabled","disabled","_ref$tooltipProps","tooltipProps","_ref$onSuccess","onSuccess","noop","_ref$blockNavigation","blockNavigation","_ref$breadcrumbs","breadcrumbs","children","_ref$helpPopoverProps","helpPopoverProps","_useTranslation","useTranslation","t","_useFetchEmailNotific","_useFetchEmailNotific2","isLoading","_useUpdateEmailNotifi","updateEmailNotification","mutate","isSubmitting","isPending","handleSubmit","_emailFormProps$reply","replyToFieldProps","options","body","mergeDeepLeft","isNotPresent","_jsx","className","Spinner","formattedTitle","formattedSubTitle","customValidationSchema","validationSchema","_emailFormikProps$sho","showReplyToField","_emailFormikProps$sho2","showSendToAsRadio","_emailFormikProps$sho3","showCcField","_emailFormikProps$sho4","showBccField","pureFormikProps","EmailFormComponent","showSendToField","formikProps","validateOnBlur","validateOnChange","headerProps","titleHelpPopoverProps","initialValues","sendToFieldProps","switchProps","onSubmit"],"mappings":"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"}
@@ -1,17 +1,10 @@
1
1
  'use strict';
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- var classNames = require('classnames');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
5
  var neetoCist = require('@bigbinary/neeto-cist');
6
- var Breadcrumbs = require('@bigbinary/neeto-molecules/Breadcrumbs');
7
- var EmailForm = require('@bigbinary/neeto-molecules/EmailForm');
8
- var HelpPopover = require('@bigbinary/neeto-molecules/HelpPopover');
9
- var MobilePreviewHeader = require('@bigbinary/neeto-molecules/MobilePreviewHeader');
6
+ var EmailFormComponent = require('@bigbinary/neeto-molecules/EmailForm');
10
7
  var Spinner = require('@bigbinary/neetoui/Spinner');
11
- var Tooltip = require('@bigbinary/neetoui/Tooltip');
12
- var Typography = require('@bigbinary/neetoui/Typography');
13
- var BlockNavigation = require('@bigbinary/neetoui/formik/BlockNavigation');
14
- var Switch = require('@bigbinary/neetoui/formik/Switch');
15
8
  var ramda = require('ramda');
16
9
  var reactI18next = require('react-i18next');
17
10
  var reactQuery = require('@tanstack/react-query');
@@ -19,7 +12,6 @@ var constants = require('@bigbinary/neeto-commons-frontend/constants');
19
12
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
20
13
  var axios = require('axios');
21
14
  var yup = require('yup');
22
- var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
23
15
  var jsxRuntime = require('react/jsx-runtime');
24
16
 
25
17
  function _interopNamespaceDefault(e) {
@@ -86,7 +78,7 @@ var FORM_VALIDATION_SCHEMA = {
86
78
  isEnabled: yup__namespace["boolean"]()
87
79
  };
88
80
 
89
- var _excluded = ["notifyEmails", "notifyCcEmails", "notifyBccEmails", "replyToId", "customFields"],
81
+ var _excluded$1 = ["notifyEmails", "notifyCcEmails", "notifyBccEmails", "replyToId", "customFields"],
90
82
  _excluded2 = ["id", "isEnabled", "sendTo", "sendToCc", "sendToBcc", "showCopyEmails", "replyTo", "message", "subject", "sendFrom", "disabledByUser", "sendToId"];
91
83
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
92
84
  function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -114,7 +106,7 @@ var parseEmailNotificationData = function parseEmailNotificationData(data, sendT
114
106
  notifyBccEmails = data.notifyBccEmails,
115
107
  replyToId = data.replyToId,
116
108
  customFields = data.customFields,
117
- rest = _objectWithoutProperties(data, _excluded);
109
+ rest = _objectWithoutProperties(data, _excluded$1);
118
110
  var parsed = _objectSpread$1(_objectSpread$1({}, customFields), rest);
119
111
  parsed.sendTo = notifyEmails ? createEmailOptions(notifyEmails) : [];
120
112
  parsed.sendToCc = notifyCcEmails ? createEmailOptions(notifyCcEmails) : [];
@@ -173,6 +165,7 @@ var renderText = function renderText(text, fallbackTranslation) {
173
165
  return ramda.isEmpty(text) ? fallbackTranslation : text;
174
166
  };
175
167
 
168
+ var _excluded = ["validationSchema", "showReplyToField", "showSendToAsRadio", "showCcField", "showBccField"];
176
169
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
177
170
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
178
171
  var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
@@ -199,7 +192,7 @@ var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
199
192
  blockNavigation = _ref$blockNavigation === void 0 ? false : _ref$blockNavigation,
200
193
  _ref$breadcrumbs = _ref.breadcrumbs,
201
194
  breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
202
- _children = _ref.children,
195
+ children = _ref.children,
203
196
  _ref$helpPopoverProps = _ref.helpPopoverProps,
204
197
  helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps;
205
198
  var _useTranslation = reactI18next.useTranslation(),
@@ -219,106 +212,58 @@ var NeetoEmailNotificationForm = function NeetoEmailNotificationForm(_ref) {
219
212
  onSuccess: onSuccess
220
213
  });
221
214
  };
222
- var handleSwitchChange = function handleSwitchChange(_ref2) {
223
- var _event$target, _event$target2;
224
- var event = _ref2.event,
225
- values = _ref2.values,
226
- setFieldValue = _ref2.setFieldValue;
227
- if ((event === null || event === void 0 || (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.checked) === true) {
228
- setFieldValue("isEnabled", true);
229
- } else if ((event === null || event === void 0 || (_event$target2 = event.target) === null || _event$target2 === void 0 ? void 0 : _event$target2.checked) === false) {
230
- if ((values === null || values === void 0 ? void 0 : values.isEnabled) === true) setFieldValue("disabledByUser", true);
231
- setFieldValue("isEnabled", false);
232
- }
233
- };
234
215
  if (isLoading || neetoCist.isNotPresent(data)) {
235
216
  return /*#__PURE__*/jsxRuntime.jsx("div", {
236
217
  className: "flex h-full w-full items-center justify-center",
237
218
  children: /*#__PURE__*/jsxRuntime.jsx(Spinner, {})
238
219
  });
239
220
  }
221
+ var formattedTitle = renderText(title, t("neetoEmailNotifications.emailNotification.title"));
222
+ var formattedSubTitle = renderText(subTitle, t("neetoEmailNotifications.emailNotification.subTitle"));
223
+ var customValidationSchema = emailFormikProps.validationSchema,
224
+ _emailFormikProps$sho = emailFormikProps.showReplyToField,
225
+ showReplyToField = _emailFormikProps$sho === void 0 ? false : _emailFormikProps$sho,
226
+ _emailFormikProps$sho2 = emailFormikProps.showSendToAsRadio,
227
+ showSendToAsRadio = _emailFormikProps$sho2 === void 0 ? false : _emailFormikProps$sho2,
228
+ _emailFormikProps$sho3 = emailFormikProps.showCcField,
229
+ showCcField = _emailFormikProps$sho3 === void 0 ? false : _emailFormikProps$sho3,
230
+ _emailFormikProps$sho4 = emailFormikProps.showBccField,
231
+ showBccField = _emailFormikProps$sho4 === void 0 ? false : _emailFormikProps$sho4,
232
+ pureFormikProps = _objectWithoutProperties(emailFormikProps, _excluded);
240
233
  return /*#__PURE__*/jsxRuntime.jsx("div", {
241
234
  className: "min-w-0 flex-grow overflow-y-auto",
242
- children: /*#__PURE__*/jsxRuntime.jsx(EmailForm.EmailFormProvider, _objectSpread(_objectSpread({
235
+ children: /*#__PURE__*/jsxRuntime.jsx(EmailFormComponent, {
236
+ blockNavigation: blockNavigation,
237
+ emailPreviewProps: emailPreviewProps,
238
+ showBccField: showBccField,
239
+ showCcField: showCcField,
240
+ showReplyToField: showReplyToField,
241
+ showSendToAsRadio: showSendToAsRadio,
242
+ tooltipProps: tooltipProps,
243
243
  showSendToField: true,
244
- formikProps: {
244
+ emailFormProps: _objectSpread({
245
+ showSendToField: true
246
+ }, emailFormProps),
247
+ isLoading: isSubmitting,
248
+ validationSchema: customValidationSchema || FORM_VALIDATION_SCHEMA,
249
+ formikProps: _objectSpread({
245
250
  validateOnBlur: true,
246
251
  validateOnChange: true
252
+ }, pureFormikProps),
253
+ headerProps: {
254
+ title: formattedTitle,
255
+ titleHelpPopoverProps: helpPopoverProps,
256
+ breadcrumbs: breadcrumbs
247
257
  },
248
- validationSchema: FORM_VALIDATION_SCHEMA,
249
258
  initialValues: parseEmailNotificationData(data, (emailFormProps === null || emailFormProps === void 0 || (_emailFormProps$sendT = emailFormProps.sendToFieldProps) === null || _emailFormProps$sendT === void 0 ? void 0 : _emailFormProps$sendT.options) || (emailFormProps === null || emailFormProps === void 0 ? void 0 : emailFormProps.sendToOptions)),
250
- onSubmit: handleSubmit
251
- }, emailFormikProps), {}, {
252
- children: function children(_ref3) {
253
- var values = _ref3.values,
254
- setFieldValue = _ref3.setFieldValue;
255
- return /*#__PURE__*/jsxRuntime.jsxs("div", {
256
- className: "nf-email-notification-wrapper flex h-full flex-grow flex-col lg:flex-row",
257
- children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
258
- className: "flex w-full flex-col px-5 md:px-10 lg:h-full lg:w-1/2 lg:overflow-y-auto",
259
- children: [neetoCist.isNotEmpty(breadcrumbs) && /*#__PURE__*/jsxRuntime.jsx(Breadcrumbs, {
260
- breadcrumbs: breadcrumbs,
261
- className: "mb-6 pt-10"
262
- }), blockNavigation && /*#__PURE__*/jsxRuntime.jsx(BlockNavigation, {}), /*#__PURE__*/jsxRuntime.jsx("div", {
263
- className: "flex items-center justify-between gap-6",
264
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
265
- className: "space-y-0.5",
266
- children: [/*#__PURE__*/jsxRuntime.jsx(Tooltip, _objectSpread(_objectSpread({
267
- disabled: !disabled,
268
- position: "top"
269
- }, tooltipProps), {}, {
270
- children: /*#__PURE__*/jsxRuntime.jsxs("div", {
271
- className: "flex items-center gap-2",
272
- children: [/*#__PURE__*/jsxRuntime.jsx(Switch, {
273
- disabled: disabled,
274
- "data-cy": "receive-email-notification-switch",
275
- name: "isEnabled",
276
- onChange: function onChange(event) {
277
- return handleSwitchChange({
278
- event: event,
279
- setFieldValue: setFieldValue,
280
- values: values
281
- });
282
- }
283
- }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
284
- component: "span",
285
- "data-cy": "receive-email-notification-label",
286
- lineHeight: "normal",
287
- style: "h3",
288
- weight: "semibold",
289
- children: renderText(title, t("neetoEmailNotifications.emailNotification.title"))
290
- }), /*#__PURE__*/jsxRuntime.jsx(HelpPopover, _objectSpread({}, helpPopoverProps))]
291
- })
292
- })), /*#__PURE__*/jsxRuntime.jsx(Typography, {
293
- lineHeight: "normal",
294
- style: "body2",
295
- children: renderText(subTitle, t("neetoEmailNotifications.emailNotification.subTitle"))
296
- })]
297
- })
298
- }), values.isEnabled && _children, /*#__PURE__*/jsxRuntime.jsx(EmailForm.EmailForm, _objectSpread({
299
- showSendToField: true,
300
- className: classNames({
301
- "pt-3 ": values.isEnabled
302
- }),
303
- isLoading: isSubmitting,
304
- showFields: values.isEnabled
305
- }, emailFormProps))]
306
- }), /*#__PURE__*/jsxRuntime.jsx(MobilePreviewHeader, {
307
- className: "lg:hidden"
308
- }), values.isEnabled && /*#__PURE__*/jsxRuntime.jsx("div", {
309
- className: "neeto-ui-bg-gray-100 w-full px-5 py-10 lg:w-1/2 lg:overflow-y-auto lg:px-10",
310
- children: /*#__PURE__*/jsxRuntime.jsx(EmailForm.EmailPreview, _objectSpread(_objectSpread({
311
- body: values.message,
312
- from: values.sendFrom,
313
- subject: values.subject,
314
- to: ramda.pluck("value", values.sendTo)
315
- }, emailPreviewProps), {}, {
316
- className: "neeto-ui-theme--light"
317
- }))
318
- })]
319
- });
320
- }
321
- }))
259
+ switchProps: {
260
+ label: formattedSubTitle,
261
+ disabled: disabled,
262
+ "data-cy": "receive-email-notification-switch"
263
+ },
264
+ onSubmit: handleSubmit,
265
+ children: children
266
+ })
322
267
  });
323
268
  };
324
269