@bigbinary/neeto-message-templates-frontend 2.0.12 → 2.0.13
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.
- package/README.md +21 -1
- package/dist/.ready +1 -1
- package/dist/SendMessagePane.js +9 -2
- package/dist/SendMessagePane.js.map +1 -1
- package/dist/cjs/SendMessagePane.js +9 -2
- package/dist/cjs/SendMessagePane.js.map +1 -1
- package/dist/cjs/v2/SendMessagePane.js +9 -3
- package/dist/cjs/v2/SendMessagePane.js.map +1 -1
- package/dist/v2/SendMessagePane.js +9 -3
- package/dist/v2/SendMessagePane.js.map +1 -1
- package/package.json +1 -1
- package/types.d.ts +2 -0
package/README.md
CHANGED
|
@@ -190,10 +190,14 @@ to compose and send messages.
|
|
|
190
190
|
- `handleSubmit`: The function within the host app used to send SMS and email.
|
|
191
191
|
- `type`: Represents the type of message, with accepted values of `email`,
|
|
192
192
|
`sms`, or `whatsapp`.
|
|
193
|
+
- `paneSize`: Determines the size of the pane. Defaults to `"large"`. Accepted
|
|
194
|
+
values are `"small"`, `"large"`, or `"extraLarge"`.
|
|
193
195
|
|
|
194
196
|
##### Optional Props
|
|
195
197
|
|
|
196
198
|
- `customFields`: To add custom field component to the pane.
|
|
199
|
+
- `customFieldsBelowBody`: Adds a custom field component to the pane and renders
|
|
200
|
+
it below the body in `EmailAndSms`.
|
|
197
201
|
- `customFieldsInitialValues`: To provide initial values for the custom fields.
|
|
198
202
|
- `customFieldsValidationSchema`: To provide validation schema for the custom
|
|
199
203
|
fields.
|
|
@@ -230,9 +234,20 @@ const App = () => {
|
|
|
230
234
|
</div>
|
|
231
235
|
);
|
|
232
236
|
|
|
237
|
+
const customFieldsBelowBody = () => (
|
|
238
|
+
<div className="space-y-4">
|
|
239
|
+
<Input label="CC" name="cc" placeholder="Enter CC email" />
|
|
240
|
+
<Input label="BCC" name="bcc" placeholder="Enter BCC email" />
|
|
241
|
+
<Input label="Reply To" name="replyTo" placeholder="Enter reply-to email" />
|
|
242
|
+
</div>
|
|
243
|
+
);
|
|
244
|
+
|
|
233
245
|
const customFieldsInitialValues = {
|
|
234
246
|
to: "",
|
|
235
247
|
from: "",
|
|
248
|
+
cc: "",
|
|
249
|
+
bcc: "",
|
|
250
|
+
replyTo: "",
|
|
236
251
|
};
|
|
237
252
|
|
|
238
253
|
const customFieldsSchema = yup.object().shape({
|
|
@@ -242,6 +257,9 @@ const App = () => {
|
|
|
242
257
|
.trim()
|
|
243
258
|
.required("From address is required")
|
|
244
259
|
.email("invalid"),
|
|
260
|
+
cc: yup.string().trim().email("Invalid email"),
|
|
261
|
+
bcc: yup.string().trim().email("Invalid email"),
|
|
262
|
+
replyTo: yup.string().trim().email("Invalid email"),
|
|
245
263
|
});
|
|
246
264
|
|
|
247
265
|
const helpPopoverProps = {
|
|
@@ -277,12 +295,14 @@ const App = () => {
|
|
|
277
295
|
<SendMessagePane
|
|
278
296
|
handleSubmit={handleSubmit}
|
|
279
297
|
isOpen={isPaneOpen}
|
|
298
|
+
paneSize="extraLarge"
|
|
280
299
|
type={type}
|
|
281
300
|
onClose={() => setIsPaneOpen(false)}
|
|
282
301
|
customFields={customFields()}
|
|
302
|
+
customFieldsBelowBody={customFieldsBelowBody()}
|
|
283
303
|
customFieldsInitialValues={customFieldsInitialValues}
|
|
284
304
|
customFieldsValidationSchema={customFieldsSchema}
|
|
285
|
-
helpPopoverProps
|
|
305
|
+
helpPopoverProps={helpPopoverProps}
|
|
286
306
|
/>
|
|
287
307
|
);
|
|
288
308
|
};
|
package/dist/.ready
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Built at 2026-08-
|
|
1
|
+
Built at 2026-08-13T07:24:48.920Z
|
package/dist/SendMessagePane.js
CHANGED
|
@@ -114,6 +114,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
114
114
|
customFields = _ref.customFields,
|
|
115
115
|
customFieldsInitialValues = _ref.customFieldsInitialValues,
|
|
116
116
|
customFieldsValidationSchema = _ref.customFieldsValidationSchema,
|
|
117
|
+
customFieldsBelowBody = _ref.customFieldsBelowBody,
|
|
117
118
|
type = _ref.type,
|
|
118
119
|
handleSubmit = _ref.handleSubmit,
|
|
119
120
|
isSaveAsTemplateEnabled = _ref.isSaveAsTemplateEnabled,
|
|
@@ -196,7 +197,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
196
197
|
ref: editorRef,
|
|
197
198
|
rows: DEFAULT_EDITOR_ROW_COUNT,
|
|
198
199
|
variables: templateVariables
|
|
199
|
-
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsx(SaveAsTemplate, {}), /*#__PURE__*/jsx(Pane.Footer, {
|
|
200
|
+
}), customFieldsBelowBody, canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsx(SaveAsTemplate, {}), /*#__PURE__*/jsx(Pane.Footer, {
|
|
200
201
|
className: "absolute bottom-0 start-0",
|
|
201
202
|
children: /*#__PURE__*/jsx(ActionBlock, {
|
|
202
203
|
cancelButtonProps: {
|
|
@@ -336,10 +337,13 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
336
337
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
337
338
|
var SendMessagePane = function SendMessagePane(props) {
|
|
338
339
|
var isOpen = props.isOpen,
|
|
339
|
-
onClose = props.onClose
|
|
340
|
+
onClose = props.onClose,
|
|
341
|
+
_props$paneSize = props.paneSize,
|
|
342
|
+
paneSize = _props$paneSize === void 0 ? "large" : _props$paneSize;
|
|
340
343
|
return /*#__PURE__*/jsx(Pane, {
|
|
341
344
|
isOpen: isOpen,
|
|
342
345
|
onClose: onClose,
|
|
346
|
+
size: paneSize,
|
|
343
347
|
children: function children(paneProps) {
|
|
344
348
|
return /*#__PURE__*/jsx(SendMessageForm, _objectSpread({}, _objectSpread(_objectSpread({}, props), {}, {
|
|
345
349
|
paneProps: paneProps
|
|
@@ -356,6 +360,8 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
356
360
|
onClose = _ref$onClose === void 0 ? noop : _ref$onClose,
|
|
357
361
|
_ref$customFields = _ref.customFields,
|
|
358
362
|
customFields = _ref$customFields === void 0 ? null : _ref$customFields,
|
|
363
|
+
_ref$customFieldsBelo = _ref.customFieldsBelowBody,
|
|
364
|
+
customFieldsBelowBody = _ref$customFieldsBelo === void 0 ? null : _ref$customFieldsBelo,
|
|
359
365
|
_ref$customFieldsInit = _ref.customFieldsInitialValues,
|
|
360
366
|
customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
|
|
361
367
|
_ref$customFieldsVali = _ref.customFieldsValidationSchema,
|
|
@@ -417,6 +423,7 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
417
423
|
}) : /*#__PURE__*/jsx(EmailAndSms, {
|
|
418
424
|
canManageTemplates: canManageTemplates,
|
|
419
425
|
customFields: customFields,
|
|
426
|
+
customFieldsBelowBody: customFieldsBelowBody,
|
|
420
427
|
customFieldsInitialValues: customFieldsInitialValues,
|
|
421
428
|
customFieldsValidationSchema: customFieldsValidationSchema,
|
|
422
429
|
handleSubmit: handleSubmit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendMessagePane.js","sources":["../app/javascript/src/components/commons/NoDataPage.jsx","../app/javascript/src/components/SendMessagePane/constants.js","../app/javascript/src/components/SendMessagePane/Form/EmailAndSms.jsx","../app/javascript/src/components/SendMessagePane/Form/Whatsapp.jsx","../app/javascript/src/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"large\" style=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Pane, Select } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"components/constants\";\nimport { areValuesEqual } from \"components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n innerRef={setFocusField}\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { Pane, Textarea, Typography } from \"neetoui\";\nimport { Select, Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Select\n required\n defaultValue={initialFormValues.selectedTemplate}\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography style=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { noop } from \"neetocist\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NoDataPage from \"components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose } = props;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n {paneProps => <SendMessageForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n paneProps: { setFocusField },\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </Pane.Body>\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","style","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","_editorRef$current","current","editor","commands","setContent","_Fragment","Select","isClearable","isSearchable","innerRef","labelProps","options","renameKeys","name","placeholder","onChange","Input","email","ref","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Pane","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","customFieldValues","defaultValue","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","paneProps","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","weight","Body","WhatsappForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendMessagePane.js","sources":["../app/javascript/src/components/commons/NoDataPage.jsx","../app/javascript/src/components/SendMessagePane/constants.js","../app/javascript/src/components/SendMessagePane/Form/EmailAndSms.jsx","../app/javascript/src/components/SendMessagePane/Form/Whatsapp.jsx","../app/javascript/src/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"large\" style=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Pane, Select } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"components/constants\";\nimport { areValuesEqual } from \"components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n customFieldsBelowBody,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n innerRef={setFocusField}\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {customFieldsBelowBody}\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { Pane, Textarea, Typography } from \"neetoui\";\nimport { Select, Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Select\n required\n defaultValue={initialFormValues.selectedTemplate}\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography style=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { noop } from \"neetocist\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NoDataPage from \"components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose, paneSize = \"large\" } = props;\n\n return (\n <Pane {...{ isOpen, onClose }} size={paneSize}>\n {paneProps => <SendMessageForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsBelowBody = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n paneProps: { setFocusField },\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsBelowBody,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </Pane.Body>\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","style","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","customFieldsBelowBody","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","_editorRef$current","current","editor","commands","setContent","_Fragment","Select","isClearable","isSearchable","innerRef","labelProps","options","renameKeys","name","placeholder","onChange","Input","email","ref","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Pane","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","customFieldValues","defaultValue","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","_props$paneSize","paneSize","paneProps","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsBelo","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","weight","Body","WhatsappForm"],"mappings":"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"}
|
|
@@ -135,6 +135,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
135
135
|
customFields = _ref.customFields,
|
|
136
136
|
customFieldsInitialValues = _ref.customFieldsInitialValues,
|
|
137
137
|
customFieldsValidationSchema = _ref.customFieldsValidationSchema,
|
|
138
|
+
customFieldsBelowBody = _ref.customFieldsBelowBody,
|
|
138
139
|
type = _ref.type,
|
|
139
140
|
handleSubmit = _ref.handleSubmit,
|
|
140
141
|
isSaveAsTemplateEnabled = _ref.isSaveAsTemplateEnabled,
|
|
@@ -217,7 +218,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
217
218
|
ref: editorRef,
|
|
218
219
|
rows: constants.DEFAULT_EDITOR_ROW_COUNT,
|
|
219
220
|
variables: templateVariables
|
|
220
|
-
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(utils.SaveAsTemplate, {}), /*#__PURE__*/jsxRuntime.jsx(Pane.Footer, {
|
|
221
|
+
}), customFieldsBelowBody, canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(utils.SaveAsTemplate, {}), /*#__PURE__*/jsxRuntime.jsx(Pane.Footer, {
|
|
221
222
|
className: "absolute bottom-0 start-0",
|
|
222
223
|
children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
|
|
223
224
|
cancelButtonProps: {
|
|
@@ -357,10 +358,13 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
357
358
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
358
359
|
var SendMessagePane = function SendMessagePane(props) {
|
|
359
360
|
var isOpen = props.isOpen,
|
|
360
|
-
onClose = props.onClose
|
|
361
|
+
onClose = props.onClose,
|
|
362
|
+
_props$paneSize = props.paneSize,
|
|
363
|
+
paneSize = _props$paneSize === void 0 ? "large" : _props$paneSize;
|
|
361
364
|
return /*#__PURE__*/jsxRuntime.jsx(Pane, {
|
|
362
365
|
isOpen: isOpen,
|
|
363
366
|
onClose: onClose,
|
|
367
|
+
size: paneSize,
|
|
364
368
|
children: function children(paneProps) {
|
|
365
369
|
return /*#__PURE__*/jsxRuntime.jsx(SendMessageForm, _objectSpread({}, _objectSpread(_objectSpread({}, props), {}, {
|
|
366
370
|
paneProps: paneProps
|
|
@@ -377,6 +381,8 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
377
381
|
onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
|
|
378
382
|
_ref$customFields = _ref.customFields,
|
|
379
383
|
customFields = _ref$customFields === void 0 ? null : _ref$customFields,
|
|
384
|
+
_ref$customFieldsBelo = _ref.customFieldsBelowBody,
|
|
385
|
+
customFieldsBelowBody = _ref$customFieldsBelo === void 0 ? null : _ref$customFieldsBelo,
|
|
380
386
|
_ref$customFieldsInit = _ref.customFieldsInitialValues,
|
|
381
387
|
customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
|
|
382
388
|
_ref$customFieldsVali = _ref.customFieldsValidationSchema,
|
|
@@ -438,6 +444,7 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
438
444
|
}) : /*#__PURE__*/jsxRuntime.jsx(EmailAndSms, {
|
|
439
445
|
canManageTemplates: canManageTemplates,
|
|
440
446
|
customFields: customFields,
|
|
447
|
+
customFieldsBelowBody: customFieldsBelowBody,
|
|
441
448
|
customFieldsInitialValues: customFieldsInitialValues,
|
|
442
449
|
customFieldsValidationSchema: customFieldsValidationSchema,
|
|
443
450
|
handleSubmit: handleSubmit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendMessagePane.js","sources":["../../app/javascript/src/components/commons/NoDataPage.jsx","../../app/javascript/src/components/SendMessagePane/constants.js","../../app/javascript/src/components/SendMessagePane/Form/EmailAndSms.jsx","../../app/javascript/src/components/SendMessagePane/Form/Whatsapp.jsx","../../app/javascript/src/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"large\" style=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Pane, Select } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"components/constants\";\nimport { areValuesEqual } from \"components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n innerRef={setFocusField}\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { Pane, Textarea, Typography } from \"neetoui\";\nimport { Select, Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Select\n required\n defaultValue={initialFormValues.selectedTemplate}\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography style=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { noop } from \"neetocist\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NoDataPage from \"components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose } = props;\n\n return (\n <Pane {...{ isOpen, onClose }}>\n {paneProps => <SendMessageForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n paneProps: { setFocusField },\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </Pane.Body>\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","style","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","_editorRef$current","current","editor","commands","setContent","_Fragment","Select","isClearable","isSearchable","innerRef","labelProps","options","renameKeys","name","placeholder","onChange","Input","email","ref","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Pane","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","customFieldValues","defaultValue","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","paneProps","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","weight","Body","WhatsappForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendMessagePane.js","sources":["../../app/javascript/src/components/commons/NoDataPage.jsx","../../app/javascript/src/components/SendMessagePane/constants.js","../../app/javascript/src/components/SendMessagePane/Form/EmailAndSms.jsx","../../app/javascript/src/components/SendMessagePane/Form/Whatsapp.jsx","../../app/javascript/src/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"large\" style=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Pane, Select } from \"neetoui\";\nimport { ActionBlock, Form, Input } from \"neetoui/formik\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"components/constants\";\nimport { areValuesEqual } from \"components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n customFieldsBelowBody,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n innerRef={setFocusField}\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {customFieldsBelowBody}\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { Pane, Textarea, Typography } from \"neetoui\";\nimport { Select, Form, Input, ActionBlock } from \"neetoui/formik\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex w-full flex-col gap-y-4 pb-6\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n const handleTemplateChange = value => {\n if (!value) return;\n\n const template = findBy({ id: value?.value }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Select\n required\n defaultValue={initialFormValues.selectedTemplate}\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n options={renameKeys({ name: \"label\", id: \"value\" }, templates)}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography style=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n <Pane.Footer className=\"absolute bottom-0 start-0\">\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Pane.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { noop } from \"neetocist\";\nimport { Pane, Spinner, Typography } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport NoDataPage from \"components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"components/constants\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose, paneSize = \"large\" } = props;\n\n return (\n <Pane {...{ isOpen, onClose }} size={paneSize}>\n {paneProps => <SendMessageForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsBelowBody = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n paneProps: { setFocusField },\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Typography>\n </Pane.Header>\n <Pane.Body>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsBelowBody,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </Pane.Body>\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","style","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","customFieldsBelowBody","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","_editorRef$current","current","editor","commands","setContent","_Fragment","Select","isClearable","isSearchable","innerRef","labelProps","options","renameKeys","name","placeholder","onChange","Input","email","ref","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Pane","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","customFieldValues","defaultValue","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","_props$paneSize","paneSize","paneProps","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsBelo","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","weight","Body","WhatsappForm"],"mappings":"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"}
|
|
@@ -129,6 +129,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
129
129
|
type = _ref.type,
|
|
130
130
|
handleSubmit = _ref.handleSubmit,
|
|
131
131
|
isSaveAsTemplateEnabled = _ref.isSaveAsTemplateEnabled,
|
|
132
|
+
customFieldsBelowBody = _ref.customFieldsBelowBody,
|
|
132
133
|
_ref$helpPopoverProps = _ref.helpPopoverProps,
|
|
133
134
|
helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps;
|
|
134
135
|
var editorRef = react.useRef(null);
|
|
@@ -211,7 +212,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
211
212
|
ref: editorRef,
|
|
212
213
|
rows: constants.DEFAULT_EDITOR_ROW_COUNT,
|
|
213
214
|
variables: templateVariables
|
|
214
|
-
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(utils.SaveAsTemplate, {})]
|
|
215
|
+
}), customFieldsBelowBody, canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(utils.SaveAsTemplate, {})]
|
|
215
216
|
})
|
|
216
217
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Footer, {
|
|
217
218
|
children: /*#__PURE__*/jsxRuntime.jsx(formik.ActionBlock, {
|
|
@@ -361,13 +362,15 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
361
362
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
362
363
|
var SendMessagePane = function SendMessagePane(props) {
|
|
363
364
|
var isOpen = props.isOpen,
|
|
364
|
-
onClose = props.onClose
|
|
365
|
+
onClose = props.onClose,
|
|
366
|
+
_props$paneSize = props.paneSize,
|
|
367
|
+
paneSize = _props$paneSize === void 0 ? "large" : _props$paneSize;
|
|
365
368
|
var setFocusField = react.useRef(null);
|
|
366
369
|
return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet, {
|
|
367
370
|
isOpen: isOpen,
|
|
368
371
|
onClose: onClose,
|
|
369
372
|
initialFocusRef: setFocusField,
|
|
370
|
-
size:
|
|
373
|
+
size: paneSize,
|
|
371
374
|
children: /*#__PURE__*/jsxRuntime.jsx(SendMessageForm, _objectSpread({}, _objectSpread(_objectSpread({}, props), {}, {
|
|
372
375
|
setFocusField: setFocusField
|
|
373
376
|
})))
|
|
@@ -382,6 +385,8 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
382
385
|
onClose = _ref$onClose === void 0 ? neetoCist.noop : _ref$onClose,
|
|
383
386
|
_ref$customFields = _ref.customFields,
|
|
384
387
|
customFields = _ref$customFields === void 0 ? null : _ref$customFields,
|
|
388
|
+
_ref$customFieldsBelo = _ref.customFieldsBelowBody,
|
|
389
|
+
customFieldsBelowBody = _ref$customFieldsBelo === void 0 ? null : _ref$customFieldsBelo,
|
|
385
390
|
_ref$customFieldsInit = _ref.customFieldsInitialValues,
|
|
386
391
|
customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
|
|
387
392
|
_ref$customFieldsVali = _ref.customFieldsValidationSchema,
|
|
@@ -440,6 +445,7 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
440
445
|
}) : /*#__PURE__*/jsxRuntime.jsx(EmailAndSms, {
|
|
441
446
|
canManageTemplates: canManageTemplates,
|
|
442
447
|
customFields: customFields,
|
|
448
|
+
customFieldsBelowBody: customFieldsBelowBody,
|
|
443
449
|
customFieldsInitialValues: customFieldsInitialValues,
|
|
444
450
|
customFieldsValidationSchema: customFieldsValidationSchema,
|
|
445
451
|
handleSubmit: handleSubmit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendMessagePane.js","sources":["../../../app/javascript/src/v2/components/commons/NoDataPage.jsx","../../../app/javascript/src/v2/components/SendMessagePane/constants.js","../../../app/javascript/src/v2/components/SendMessagePane/Form/EmailAndSms.jsx","../../../app/javascript/src/v2/components/SendMessagePane/Form/Whatsapp.jsx","../../../app/javascript/src/v2/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"lg\" variant=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { Select, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor/v2\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"v2/components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"v2/components/constants\";\nimport { areValuesEqual } from \"v2/components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n ref={setFocusField}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import { Select, Sheet, Textarea, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n // `selectedTemplate` is kept as a `{ label, value }` object in Formik\n // state to preserve the payload shape v1 handed to `handleSubmit`.\n // atoms' Select is value-based, hence the plain (non-Formik) Select\n // driven off `values.selectedTemplate.value`.\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n <Select\n required\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n value={values.selectedTemplate?.value}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography variant=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { useRef } from \"react\";\n\nimport { Sheet, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\nimport NoDataPage from \"v2/components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose } = props;\n const setFocusField = useRef(null);\n\n return (\n <Sheet\n {...{ isOpen, onClose }}\n initialFocusRef={setFocusField}\n size=\"large\"\n >\n <SendMessageForm {...{ ...props, setFocusField }} />\n </Sheet>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n setFocusField,\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Sheet.Title>\n </Sheet.Header>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","variant","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","templateId","_editorRef$current","current","editor","commands","setContent","_Fragment","Sheet","Body","Select","isClearable","isSearchable","labelProps","ref","options","renameKeys","name","placeholder","onChange","Input","email","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","_values$selectedTempl","customFieldValues","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","initialFocusRef","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","Title","WhatsappForm"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA,IAAMA,UAAU,GAAG,SAAbA,UAAUA,CAAAC,IAAA,EAAkC;AAAA,EAAA,IAA5BC,IAAI,GAAAD,IAAA,CAAJC,IAAI;IAAAC,eAAA,GAAAF,IAAA,CAAEG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;AACzC,EAAA,IAAAE,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAQC,KAAK,GAAKC,2BAAiB,CAACP,IAAI,CAAC,CAAjCM,KAAK;AAEb,EAAA,IAAIN,IAAI,KAAKQ,uBAAa,CAACC,QAAQ,EAAE;AACnC,IAAA,oBACEC,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,iEAAiE;MAAAC,QAAA,eAC9EC,eAAA,CAACC,qBAAU,EAAA;AAAAF,QAAAA,QAAA,EAAA,CACRP,CAAC,CAAC,0CAA0C,EAAE;UAC7CL,IAAI,EAAEK,CAAC,CAAC,iDAAiD;SAC1D,CAAC,EAAE,GAAG,EACNH,UAAU,iBACTQ,cAAA,CAACK,kBAAK,EAAA;AACJC,UAAAA,OAAO,EAAC,oDAAoD;AAC5DC,UAAAA,UAAU,EAAE;YACVC,IAAI,eAAER,cAAA,CAACS,iBAAM,EAAA;AAACC,cAAAA,IAAI,EAAElB,UAAW;AAACmB,cAAAA,IAAI,EAAC,IAAI;AAACC,cAAAA,OAAO,EAAC;aAAQ;AAC5D;AAAE,SACH,CACF;OACS;AAAC,KACV,CAAC;AAEV,EAAA;AAEA,EAAA,oBACEZ,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,yDAAyD;IAAAC,QAAA,eACtEF,cAAA,CAACI,qBAAU,EAAA;AAAAF,MAAAA,QAAA,EACRP,CAAC,CAAC,0CAA0C,EAAE;AAC7CL,QAAAA,IAAI,EAAEM;OACP;KACS;AAAC,GACV,CAAC;AAEV,CAAC;;ACpCD,IAAMiB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAC/BA,KAAK,KAAA,IAAA,IAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEC,UAAU,CAAC,0BAA0B,EAAE,EAAE,CAAC,CAACC,IAAI,EAAE;AAAA,CAAA;AAEnD,IAAMC,2BAA2B,GAAG;AACzCC,EAAAA,OAAO,EAAE,EAAE;AACXC,EAAAA,IAAI,EAAE,EAAE;AACRC,EAAAA,oBAAoB,EAAE,KAAK;AAC3BC,EAAAA,YAAY,EAAE;AAChB,CAAC;AAEM,IAAMC,yBAAyB,GAAGC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;AAC1DP,EAAAA,OAAO,EAAEK,cAAG,CACTG,MAAM,EAAE,CACRV,IAAI,EAAE,CACNW,QAAQ,CAAChC,SAAC,CAAC,0DAA0D,CAAC,CAAC;AAC1EwB,EAAAA,IAAI,EAAEI,cAAG,CACNG,MAAM,EAAE,CACRE,IAAI,CACH,MAAM,EACNjC,SAAC,CAAC,uDAAuD,CAAC,EAC1D,UAAAmB,KAAK,EAAA;AAAA,IAAA,OAAI,CAAC,CAACD,mBAAmB,CAACC,KAAK,CAAC;EAAA,CACvC,CAAC,CACAa,QAAQ,CAAChC,SAAC,CAAC,uDAAuD,CAAC,CAAC;EACvE0B,YAAY,EAAEE,cAAG,CAACG,MAAM,EAAE,CAACG,IAAI,CAAC,sBAAsB,EAAE;AACtDC,IAAAA,EAAE,EAAE,IAAI;AACRC,IAAAA,IAAI,EAAER,cAAG,CAACG,MAAM,EAAE,CAACC,QAAQ,CACzBhC,SAAC,CAAC,yDAAyD,EAAE;MAC3DqC,MAAM,EAAErC,SAAC,CAAC,4CAA4C;AACxD,KAAC,CACH;GACD;AACH,CAAC,CAAC;AAEK,IAAMsC,kCAAkC,GAAGV,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EACnEN,IAAI,EAAEI,cAAG,CACNG,MAAM,EAAE,CACRC,QAAQ,CAAChC,SAAC,CAAC,uDAAuD,CAAC,CAAC,CACpEiC,IAAI,CACH,MAAM,EACNjC,SAAC,CAAC,uDAAuD,CAAC,EAC1D,UAAAmB,KAAK,EAAA;AAAA,IAAA,OAAI,CAAC,CAACD,mBAAmB,CAACC,KAAK,CAAC;AAAA,EAAA,CACvC,CAAC;EACHO,YAAY,EAAEE,cAAG,CAACG,MAAM,EAAE,CAACG,IAAI,CAAC,sBAAsB,EAAE;AACtDC,IAAAA,EAAE,EAAE,IAAI;AACRC,IAAAA,IAAI,EAAER,cAAG,CAACG,MAAM,EAAE,CAACC,QAAQ,CACzBhC,SAAC,CAAC,yDAAyD,EAAE;MAC3DqC,MAAM,EAAErC,SAAC,CAAC,4CAA4C;AACxD,KAAC,CACH;GACD;AACH,CAAC,CAAC;AAEK,IAAMuC,wCAAwC,GAAGX,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;EACzEU,gBAAgB,EAAEZ,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAC;IACnCN,IAAI,EAAEI,cAAG,CACNa,KAAK,EAAE,CACPC,EAAE,CACDd,cAAG,CACAG,MAAM,EAAE,CACRC,QAAQ,CACPhC,SAAC,CAAC,2DAA2D,CAC/D,CACJ;GACH;AACH,CAAC,CAAC;;;;AC/CF,IAAM2C,WAAW,GAAG,SAAdA,WAAWA,CAAAjD,IAAA,EAaX;AAAA,EAAA,IAZJkD,kBAAkB,GAAAlD,IAAA,CAAlBkD,kBAAkB;IAClBC,OAAO,GAAAnD,IAAA,CAAPmD,OAAO;IACPC,SAAS,GAAApD,IAAA,CAAToD,SAAS;IACTC,aAAa,GAAArD,IAAA,CAAbqD,aAAa;IACbC,iBAAiB,GAAAtD,IAAA,CAAjBsD,iBAAiB;IACjBC,YAAY,GAAAvD,IAAA,CAAZuD,YAAY;IACZC,yBAAyB,GAAAxD,IAAA,CAAzBwD,yBAAyB;IACzBC,4BAA4B,GAAAzD,IAAA,CAA5ByD,4BAA4B;IAC5BxD,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJyD,YAAY,GAAA1D,IAAA,CAAZ0D,YAAY;IACZC,uBAAuB,GAAA3D,IAAA,CAAvB2D,uBAAuB;IAAAC,qBAAA,GAAA5D,IAAA,CACvB6D,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAErB,EAAA,IAAME,SAAS,GAAGC,YAAM,CAAC,IAAI,CAAC;AAC9B,EAAA,IAAA3D,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAM0D,eAAe,GAAG/D,IAAI,KAAK,OAAO;EACxC,IAAAgE,KAAA,GAAmDD,eAAe,GAC9D,CAACpC,2BAA2B,EAAEK,yBAAyB,CAAC,GACxD,CACEiC,UAAI,CAAC,CAAC,SAAS,CAAC,EAAEtC,2BAA2B,CAAC,EAC9CgB,kCAAkC,CACnC;IAAAuB,KAAA,GAAAC,cAAA,CAAAH,KAAA,EAAA,CAAA,CAAA;AALEI,IAAAA,cAAc,GAAAF,KAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,wBAAwB,GAAAH,KAAA,CAAA,CAAA,CAAA;EAO/C,IAAMI,oBAAoB,GAAGC,cAAQ,CAAC,CACpCH,cAAc,EACdb,yBAAyB,CAC1B,CAAC;AAEF,EAAA,IAAMiB,uBAAuB,GAAGvC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAAsC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAC7CJ,wBAAwB,KAAA,IAAA,IAAxBA,wBAAwB,KAAA,MAAA,GAAA,MAAA,GAAxBA,wBAAwB,CAAEK,MAAM,CAAA,EAChClB,4BAA4B,KAAA,IAAA,IAA5BA,4BAA4B,KAAA,MAAA,GAAA,MAAA,GAA5BA,4BAA4B,CAAEkB,MAAM,CACxC,CAAC;AAEF,EAAA,IAAMC,wBAAwB,GAAG,SAA3BA,wBAAwBA,GAAmC;AAAA,IAAA,IAAAC,KAAA,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAP,EAAE;MAAxBG,EAAE,GAAAJ,KAAA,CAAFI,EAAE;MAAEpD,OAAO,GAAAgD,KAAA,CAAPhD,OAAO;MAAEC,IAAI,GAAA+C,KAAA,CAAJ/C,IAAI;AACnD,IAAA,IAAI,CAAC6B,uBAAuB,EAAE,OAAO,KAAK;IAE1C,IAAMuB,QAAQ,GAAGC,gBAAM,CAAC;AAAEF,MAAAA,EAAE,EAAFA;KAAI,EAAE7B,SAAS,CAAC;IAC1C,IAAMgC,UAAU,GAAGC,mBAAS,CAACxD,OAAO,CAAC,IAAIwD,mBAAS,CAACvD,IAAI,CAAC;IACxD,IAAMwD,8BAA8B,GAAG,EACrCC,oBAAc,CAACL,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAAA,MAAA,GAARA,QAAQ,CAAErD,OAAO,EAAEA,OAAO,CAAC,IAAI,CAAAqD,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAAA,MAAA,GAAA,MAAA,GAARA,QAAQ,CAAEpD,IAAI,MAAKA,IAAI,CACtE;IAED,OAAOsD,UAAU,IAAIE,8BAA8B;EACrD,CAAC;AAED,EAAA,IAAME,0BAA0B,GAAGH,mBAAS,CAACjC,SAAS,CAAC;EAEvD,oBACEzC,cAAA,CAAC8E,WAAI,EAAA;AACHC,IAAAA,SAAS,EAAE;AACTC,MAAAA,UAAU,EAAE,IAAI;AAChB/E,MAAAA,SAAS,EAAE;KACX;AACFgF,IAAAA,WAAW,EAAE;AACXC,MAAAA,aAAa,EAAEtB,oBAAoB;AACnCuB,MAAAA,gBAAgB,EAAErB,uBAAuB;AACzCsB,MAAAA,QAAQ,EAAErC;KACV;AAAA7C,IAAAA,QAAA,EAED,SAAAA,QAAAA,CAAAmF,KAAA,EAA2B;MAAA,IAAAC,qBAAA,EAAAC,qBAAA;AAAA,MAAA,IAAxBC,SAAS,GAAAH,KAAA,CAATG,SAAS;QAAEC,MAAM,GAAAJ,KAAA,CAANI,MAAM;AACnB,MAAA,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,UAAU,EAAI;AAAA,QAAA,IAAAC,kBAAA;QACzC,IAAI,CAACD,UAAU,EAAE;QAEjB,IAAMpB,QAAQ,GAAGC,gBAAM,CAAC;AAAEF,UAAAA,EAAE,EAAEqB;SAAY,EAAElD,SAAS,CAAC;QACtD+C,SAAS,CAAAzB,eAAA,CAAAA,eAAA,KAAM0B,MAAM,CAAA,EAAKlB,QAAQ,CAAE,CAAC;AACrC,QAAA,CAAAqB,kBAAA,GAAAzC,SAAS,CAAC0C,OAAO,MAAA,IAAA,IAAAD,kBAAA,KAAA,MAAA,IAAA,CAAAA,kBAAA,GAAjBA,kBAAA,CAAmBE,MAAM,MAAA,IAAA,IAAAF,kBAAA,KAAA,MAAA,IAAA,CAAAA,kBAAA,GAAzBA,kBAAA,CAA2BG,QAAQ,cAAAH,kBAAA,KAAA,MAAA,IAAnCA,kBAAA,CAAqCI,UAAU,CAACzB,QAAQ,CAACpD,IAAI,CAAC;MAChE,CAAC;MAED,oBACEhB,eAAA,CAAA8F,mBAAA,EAAA;AAAA/F,QAAAA,QAAA,EAAA,cACEF,cAAA,CAACkG,gBAAK,CAACC,IAAI,EAAA;AAAAjG,UAAAA,QAAA,eACTC,eAAA,CAAA,KAAA,EAAA;AAAKF,YAAAA,SAAS,EAAC,mCAAmC;AAAAC,YAAAA,QAAA,EAAA,CAC/C2E,0BAA0B,iBACzB7E,cAAA,CAACoG,iBAAM,EAAA;cACLC,WAAW,EAAA,IAAA;cACXC,YAAY,EAAA,IAAA;AACZ1G,cAAAA,KAAK,EAAED,CAAC,CAAC,qCAAqC,CAAE;AAChD4G,cAAAA,UAAU,EAAErD,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAA,MAAA,IAAA,CAAAoC,qBAAA,GAAhBpC,gBAAgB,CAAG5D,IAAI,CAAC,MAAA,IAAA,IAAAgG,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,qBAAA,CAA0Bf,QAAS;AAC/CiC,cAAAA,GAAG,EAAE9D,aAAc;cACnB+D,OAAO,EAAEC,oBAAU,CACjB;AAAEC,gBAAAA,IAAI,EAAE,OAAO;AAAErC,gBAAAA,EAAE,EAAE;eAAS,EAC9B7B,SACF,CAAE;AACFmE,cAAAA,WAAW,EAAEjH,CAAC,CACZ,iDACF,CAAE;AACFkH,cAAAA,QAAQ,EAAEnB;aACX,CACF,EACA9C,YAAY,EACZS,eAAe,iBACdrD,cAAA,CAAC8G,YAAK,EAAA;cACJnF,QAAQ,EAAA,IAAA;AACR/B,cAAAA,KAAK,EAAED,CAAC,CAAC,uCAAuC,CAAE;AAClD4G,cAAAA,UAAU,EAAErD,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,gBAAAqC,qBAAA,GAAhBrC,gBAAgB,CAAE6D,KAAK,MAAA,IAAA,IAAAxB,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAvBA,qBAAA,CAAyBrE,OAAQ;AAC7CyF,cAAAA,IAAI,EAAC,SAAS;AACdH,cAAAA,GAAG,EAAE3B,0BAA0B,GAAG,IAAI,GAAGnC;AAAc,aACxD,CACF,eACD1C,cAAA,CAACgH,YAAY,EAAA;cACXC,iBAAiB,EAAA,IAAA;cACjBtF,QAAQ,EAAA,IAAA;AACRuF,cAAAA,SAAS,EAAE,EAAErC,0BAA0B,IAAIxB,eAAe,CAAE;AAC5D8D,cAAAA,gBAAgB,EAAC,UAAU;AAC3BC,cAAAA,QAAQ,EAAE/D,eAAe,GAAGgB,SAAS,GAAG,EAAG;AAC3CzE,cAAAA,KAAK,EAAED,CAAC,CAAC,oCAAoC,CAAE;AAC/CgH,cAAAA,IAAI,EAAC,MAAM;AACXH,cAAAA,GAAG,EAAErD,SAAU;AACfkE,cAAAA,IAAI,EAAEC,kCAAyB;AAC/BC,cAAAA,SAAS,EAAE5E;AAAkB,aAC9B,CAAC,EACDJ,kBAAkB,IAAI0B,wBAAwB,CAACwB,MAAM,CAAC,iBACrDzF,cAAA,CAACwH,oBAAc,IAAE,CAClB;WACE;AAAC,SACI,CAAC,eACbxH,cAAA,CAACkG,gBAAK,CAACuB,MAAM,EAAA;UAAAvH,QAAA,eACXF,cAAA,CAAC0H,kBAAW,EAAA;AACVC,YAAAA,iBAAiB,EAAE;AACjB,cAAA,aAAa,EAAE,gCAAgC;AAC/CC,cAAAA,OAAO,EAAEpF;aACT;AACFqF,YAAAA,iBAAiB,EAAE;AACjB,cAAA,aAAa,EAAE,8BAA8B;cAC7CjI,KAAK,EAAED,CAAC,CAAC,oCAAoC;AAC/C;WACD;AAAC,SACU,CAAC;AAAA,OACf,CAAC;AAEP,IAAA;AAAC,GACG,CAAC;AAEX,CAAC;;;;AC5ID,IAAMmI,QAAQ,GAAG,SAAXA,QAAQA,CAAAzI,IAAA,EAOR;AAAA,EAAA,IAAA0I,WAAA,EAAAC,YAAA,EAAAC,YAAA,EAAAC,YAAA;AAAA,EAAA,IANJzF,SAAS,GAAApD,IAAA,CAAToD,SAAS;IACTD,OAAO,GAAAnD,IAAA,CAAPmD,OAAO;IACPO,YAAY,GAAA1D,IAAA,CAAZ0D,YAAY;IACZH,YAAY,GAAAvD,IAAA,CAAZuD,YAAY;IACZC,yBAAyB,GAAAxD,IAAA,CAAzBwD,yBAAyB;IACzBC,4BAA4B,GAAAzD,IAAA,CAA5ByD,4BAA4B;AAE5B,EAAA,IAAArD,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMwI,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAGZ,SAAS,EAAI;IAChD,IAAMa,iBAAiB,GAAG,EAAE;IAE5Bb,SAAS,KAAA,IAAA,IAATA,SAAS,KAAA,MAAA,IAATA,SAAS,CAAEc,OAAO,CAAC,UAAA/E,KAAA,EAAqB;AAAA,MAAA,IAAlBhE,IAAI,GAAAgE,KAAA,CAAJhE,IAAI;QAAEgJ,KAAK,GAAAhF,KAAA,CAALgF,KAAK;AAC/BF,MAAAA,iBAAiB,CAAC9I,IAAI,CAAC,GAAGiJ,KAAK,CAACD,KAAK,CAAC,CAACE,IAAI,CAAC,EAAE,CAAC;AACjD,IAAA,CAAC,CAAC;AAEF,IAAA,OAAOJ,iBAAiB;EAC1B,CAAC;AAED,EAAA,IAAMK,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGlI,UAAU,EAAA;AAAA,IAAA,IAAAmI,SAAA;AAAA,IAAA,OAAA,CAAAA,SAAA,GACnCC,kBAAQ,CAACC,WAAK,CAAC,CAAC,MAAM,EAAErI,UAAU,CAAC,MAAA,IAAA,IAAAmI,SAAA,KAAA,MAAA,GAAA,MAAA,GAAnCA,SAAA,CAAqCG,IAAI,CAAC,IAAI,CAAC;AAAA,EAAA,CAAA;AAEjD,EAAA,IAAMC,iBAAiB,GAAG;AACxBC,IAAAA,gBAAgB,EAAE;AAAEnJ,MAAAA,KAAK,EAAA,CAAAmI,WAAA,GAAEtF,SAAS,CAAC,CAAC,CAAC,MAAA,IAAA,IAAAsF,WAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,WAAA,CAAcpB,IAAI;MAAE7F,KAAK,EAAA,CAAAkH,YAAA,GAAEvF,SAAS,CAAC,CAAC,CAAC,MAAA,IAAA,IAAAuF,YAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAA,CAAc1D;KAAI;AACxE0E,IAAAA,eAAe,EAAEP,kBAAkB,CAAA,CAAAR,YAAA,GAACxF,SAAS,CAAC,CAAC,CAAC,cAAAwF,YAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAA,CAAc1H,UAAU,CAAC;AAC7D4B,IAAAA,gBAAgB,EAAEgG,4BAA4B,CAAA,CAAAD,YAAA,GAACzF,SAAS,CAAC,CAAC,CAAC,MAAA,IAAA,IAAAyF,YAAA,KAAA,MAAA,GAAA,MAAA,GAAZA,YAAA,CAAce,aAAa;GAC3E;EAED,IAAMrF,oBAAoB,GAAGC,cAAQ,CAAC,CACpCiF,iBAAiB,EACjBjG,yBAAyB,CAC1B,CAAC;AAEF,EAAA,IAAMiB,uBAAuB,GAAGvC,cAAG,CAACC,MAAM,EAAE,CAACC,KAAK,CAAAsC,eAAA,CAAAA,eAAA,CAAA,EAAA,EAC7C7B,wCAAwC,KAAA,IAAA,IAAxCA,wCAAwC,KAAA,MAAA,GAAA,MAAA,GAAxCA,wCAAwC,CAAE8B,MAAM,CAAA,EAChDlB,4BAA4B,KAAA,IAAA,IAA5BA,4BAA4B,KAAA,MAAA,GAAA,MAAA,GAA5BA,4BAA4B,CAAEkB,MAAM,CACxC,CAAC;AAEF,EAAA,IAAMkF,gBAAgB,GAAGC,MAAM,CAACC,IAAI,CAACN,iBAAiB,CAAC;EAEvD,oBACE9I,cAAA,CAAC8E,WAAI,EAAA;AACHC,IAAAA,SAAS,EAAE;AACTC,MAAAA,UAAU,EAAE,IAAI;AAChB/E,MAAAA,SAAS,EAAE;KACX;AACFgF,IAAAA,WAAW,EAAE;AACXC,MAAAA,aAAa,EAAEtB,oBAAoB;AACnCuB,MAAAA,gBAAgB,EAAErB,uBAAuB;AACzCsB,MAAAA,QAAQ,EAAErC;KACV;AAAA7C,IAAAA,QAAA,EAED,SAAAA,QAAAA,CAAAsD,KAAA,EAA2B;AAAA,MAAA,IAAA6F,qBAAA;AAAA,MAAA,IAAxB5D,MAAM,GAAAjC,KAAA,CAANiC,MAAM;QAAED,SAAS,GAAAhC,KAAA,CAATgC,SAAS;AACnB;AACA;AACA;AACA;AACA,MAAA,IAAME,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAGC,UAAU,EAAI;QACzC,IAAI,CAACA,UAAU,EAAE;QAEjB,IAAMpB,QAAQ,GAAGC,gBAAM,CAAC;AAAEF,UAAAA,EAAE,EAAEqB;SAAY,EAAElD,SAAS,CAAC;AACtD,QAAA,IAAM6G,iBAAiB,GAAG/F,UAAI,CAAC2F,gBAAgB,EAAEzD,MAAM,CAAC;AACxDD,QAAAA,SAAS,CAAAzB,eAAA,CAAA;AACPgF,UAAAA,gBAAgB,EAAE;YAAEnJ,KAAK,EAAE2E,QAAQ,CAACoC,IAAI;YAAE7F,KAAK,EAAEyD,QAAQ,CAACD;WAAI;AAC9D0E,UAAAA,eAAe,EAAEP,kBAAkB,CAAClE,QAAQ,CAAChE,UAAU,CAAC;AACxD4B,UAAAA,gBAAgB,EAAEgG,4BAA4B,CAC5C5D,QAAQ,CAAC0E,aACX;SAAC,EACEK,iBAAiB,CACrB,CAAC;MACJ,CAAC;MAED,oBACEnJ,eAAA,CAAA8F,mBAAA,EAAA;AAAA/F,QAAAA,QAAA,EAAA,cACEF,cAAA,CAACkG,gBAAK,CAACC,IAAI,EAAA;AAAAjG,UAAAA,QAAA,eACTC,eAAA,CAAA,KAAA,EAAA;AAAKF,YAAAA,SAAS,EAAC,mCAAmC;YAAAC,QAAA,EAAA,cAChDF,cAAA,CAACoG,iBAAM,EAAA;cACLzE,QAAQ,EAAA,IAAA;AACR/B,cAAAA,KAAK,EAAED,CAAC,CAAC,qCAAqC,CAAE;AAChDgH,cAAAA,IAAI,EAAC,kBAAkB;cACvB7F,KAAK,EAAA,CAAAuI,qBAAA,GAAE5D,MAAM,CAACsD,gBAAgB,MAAA,IAAA,IAAAM,qBAAA,KAAA,MAAA,GAAA,MAAA,GAAvBA,qBAAA,CAAyBvI,KAAM;cACtC2F,OAAO,EAAEC,oBAAU,CACjB;AAAEC,gBAAAA,IAAI,EAAE,OAAO;AAAErC,gBAAAA,EAAE,EAAE;eAAS,EAC9B7B,SACF,CAAE;AACFoE,cAAAA,QAAQ,EAAEnB;AAAqB,aAChC,CAAC,EACD9C,YAAY,eACb5C,cAAA,CAACuJ,mBAAQ,EAAA;cACPC,QAAQ,EAAA,IAAA;cACRC,aAAa,EAAA,IAAA;AACb7J,cAAAA,KAAK,EAAED,CAAC,CAAC,uCAAuC,CAAE;cAClDmB,KAAK,EAAE2E,MAAM,CAACuD;aACf,CAAC,EACDU,oBAAU,CAACjE,MAAM,CAACtD,gBAAgB,CAAC,iBAClCnC,cAAA,CAAAiG,mBAAA,EAAA;AAAA/F,cAAAA,QAAA,EACGiJ,MAAM,CAACC,IAAI,CAAC3D,MAAM,CAACtD,gBAAgB,CAAC,CAACwH,GAAG,CAAC,UAAAC,KAAK,EAAA;AAAA,gBAAA,oBAC7CzJ,eAAA,CAAA,KAAA,EAAA;AAAKF,kBAAAA,SAAS,EAAC,uBAAuB;kBAAAC,QAAA,EAAA,cACpCF,cAAA,CAACI,qBAAU,EAAA;AAACQ,oBAAAA,OAAO,EAAC,IAAI;AAAAV,oBAAAA,QAAA,EACrBP,CAAC,CAAC,+CAA+C,EAAE;sBAClDL,IAAI,EAAEuK,oBAAU,CAACD,KAAK;qBACvB;AAAC,mBACQ,CAAC,EACZnE,MAAM,CAACtD,gBAAgB,CAACyH,KAAK,CAAC,CAACD,GAAG,CAAC,UAACG,CAAC,EAAEC,KAAK,EAAA;AAAA,oBAAA,oBAC3C/J,cAAA,CAAA,KAAA,EAAA;sBAAAE,QAAA,eACEF,cAAA,CAAC8G,YAAK,EAAA;wBACJnF,QAAQ,EAAA,IAAA;AAER/B,wBAAAA,KAAK,OAAAoK,MAAA,CAAOD,KAAK,GAAG,CAAC,EAAA,IAAA,CAAK;AAC1BpD,wBAAAA,IAAI,sBAAAqD,MAAA,CAAsBJ,KAAK,EAAA,GAAA,CAAA,CAAAI,MAAA,CAAID,KAAK;AAAG,uBAAA,EAAA,EAAA,CAAAC,MAAA,CAFnCJ,KAAK,OAAAI,MAAA,CAAID,KAAK,CAGvB;qBAAC,EAAA,EAAA,CAAAC,MAAA,CANSJ,KAAK,EAAA,GAAA,CAAA,CAAAI,MAAA,CAAID,KAAK,CAOtB,CAAC;AAAA,kBAAA,CACP,CAAC;AAAA,iBAAA,EAfwCH,KAgBvC,CAAC;cAAA,CACP;AAAC,aACF,CACH;WACE;AAAC,SACI,CAAC,eACb5J,cAAA,CAACkG,gBAAK,CAACuB,MAAM,EAAA;UAAAvH,QAAA,eACXF,cAAA,CAAC0H,kBAAW,EAAA;AACVC,YAAAA,iBAAiB,EAAE;AACjB,cAAA,aAAa,EAAE,gCAAgC;AAC/CC,cAAAA,OAAO,EAAEpF;aACT;AACFqF,YAAAA,iBAAiB,EAAE;AACjB,cAAA,aAAa,EAAE,8BAA8B;cAC7CjI,KAAK,EAAED,CAAC,CAAC,oCAAoC;AAC/C;WACD;AAAC,SACU,CAAC;AAAA,OACf,CAAC;AAEP,IAAA;AAAC,GACG,CAAC;AAEX,CAAC;;;;AC1ID,IAAMsK,eAAe,GAAG,SAAlBA,eAAeA,CAAGC,KAAK,EAAI;AAC/B,EAAA,IAAQC,MAAM,GAAcD,KAAK,CAAzBC,MAAM;IAAE3H,OAAO,GAAK0H,KAAK,CAAjB1H,OAAO;AACvB,EAAA,IAAME,aAAa,GAAGU,YAAM,CAAC,IAAI,CAAC;EAElC,oBACEpD,cAAA,CAACkG,gBAAK,EAAA;AACEiE,IAAAA,MAAM,EAANA,MAAM;AAAE3H,IAAAA,OAAO,EAAPA,OAAO;AACrB4H,IAAAA,eAAe,EAAE1H,aAAc;AAC/B/B,IAAAA,IAAI,EAAC,OAAO;IAAAT,QAAA,eAEZF,cAAA,CAACqK,eAAe,EAAAtG,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAUmG,KAAK,CAAA,EAAA,EAAA,EAAA;AAAExH,MAAAA,aAAa,EAAbA;KAAa,CAAA,CAAK;AAAC,GAC/C,CAAC;AAEZ;AAEA,IAAM2H,eAAe,GAAG,SAAlBA,eAAeA,CAAAhL,IAAA,EAcf;AAAA,EAAA,IAAAiL,SAAA,GAAAjL,IAAA,CAbJC,IAAI;AAAJA,IAAAA,IAAI,GAAAgL,SAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,SAAA;IAAAC,iBAAA,GAAAlL,IAAA,CACT0D,YAAY;AAAZA,IAAAA,YAAY,GAAAwH,iBAAA,KAAA,MAAA,GAAGC,cAAI,GAAAD,iBAAA;IAAAE,YAAA,GAAApL,IAAA,CACnBmD,OAAO;AAAPA,IAAAA,OAAO,GAAAiI,YAAA,KAAA,MAAA,GAAGD,cAAI,GAAAC,YAAA;IAAAC,iBAAA,GAAArL,IAAA,CACduD,YAAY;AAAZA,IAAAA,YAAY,GAAA8H,iBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,iBAAA;IAAAC,qBAAA,GAAAtL,IAAA,CACnBwD,yBAAyB;AAAzBA,IAAAA,yBAAyB,GAAA8H,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAvL,IAAA,CAC9ByD,4BAA4B;AAA5BA,IAAAA,4BAA4B,GAAA8H,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAxL,IAAA,CACjCsD,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAkI,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,YAAA,GAAAzL,IAAA,CACtB0L,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IAAAvL,eAAA,GAAAF,IAAA,CACZG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,eAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,eAAA;IAAAyL,qBAAA,GAAA3L,IAAA,CACf2D,uBAAuB;AAAvBA,IAAAA,uBAAuB,GAAAgI,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IAAAC,qBAAA,GAAA5L,IAAA,CAC9BkD,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAA0I,qBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,qBAAA;IACzBvI,aAAa,GAAArD,IAAA,CAAbqD,aAAa;IACbQ,gBAAgB,GAAA7D,IAAA,CAAhB6D,gBAAgB;AAEhB,EAAA,IAAAzD,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAQmB,KAAK,GAAKjB,2BAAiB,CAACP,IAAI,CAAC,CAAjCwB,KAAK;AACb,EAAA,IAAMoK,kBAAkB,GAAG5L,IAAI,KAAK,UAAU;AAC9C,EAAA,IAAM6L,cAAc,GAAG;AACrBC,IAAAA,MAAM,EAAE,QAAQ;AAChBC,IAAAA,YAAY,EAAEvK,KAAK;AACnBiK,IAAAA,OAAO,EAAPA;GACD;AAED,EAAA,IAAAO,kBAAA,GACEC,iCAAiB,CAACJ,cAAc,CAAC;IAAAK,qBAAA,GAAAF,kBAAA,CAD3BG,IAAI;AAAAC,IAAAA,sBAAA,GAAAF,qBAAA,KAAA,MAAA,GAAuB,EAAE,GAAAA,qBAAA;IAAAG,sBAAA,GAAAD,sBAAA,CAArBjJ,SAAS;AAATA,IAAAA,SAAS,GAAAkJ,sBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,sBAAA;IAASC,SAAS,GAAAN,kBAAA,CAATM,SAAS;AAGhD,EAAA,IAAIA,SAAS,EAAE;AACb,IAAA,oBACE5L,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,gDAAgD;AAAAC,MAAAA,QAAA,eAC7DF,cAAA,CAAC6L,kBAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;AAEA,EAAA,IAAIX,kBAAkB,IAAIY,aAAO,CAACrJ,SAAS,CAAC,EAAE;IAC5C,oBAAOzC,cAAA,CAACZ,UAAU,EAAA;AAAOI,MAAAA,UAAU,EAAVA,UAAU;AAAEF,MAAAA,IAAI,EAAJA;AAAI,KAAK,CAAC;AACjD,EAAA;EAEA,oBACEa,eAAA,CAAA8F,mBAAA,EAAA;AAAA/F,IAAAA,QAAA,EAAA,cACEF,cAAA,CAACkG,gBAAK,CAAC6F,MAAM,EAAA;AAAA7L,MAAAA,QAAA,eACXC,eAAA,CAAC+F,gBAAK,CAAC8F,KAAK,EAAA;QAAA9L,QAAA,EAAA,CACTP,CAAC,CAAC,kCAAkC,CAAC,EAAC,GAAC,EAACG,uBAAa,CAACR,IAAI,CAAC;OACjD;AAAC,KACF,CAAC,EACd4L,kBAAkB,gBACjBlL,cAAA,CAACiM,QAAY,EAAA;AAETrJ,MAAAA,YAAY,EAAZA,YAAY;AACZC,MAAAA,yBAAyB,EAAzBA,yBAAyB;AACzBC,MAAAA,4BAA4B,EAA5BA,4BAA4B;AAC5BC,MAAAA,YAAY,EAAZA,YAAY;AACZP,MAAAA,OAAO,EAAPA,OAAO;AACPC,MAAAA,SAAS,EAATA;AAAS,KAEZ,CAAC,gBAEFzC,cAAA,CAACsC,WAAW,EAAA;AAERC,MAAAA,kBAAkB,EAAlBA,kBAAkB;AAClBK,MAAAA,YAAY,EAAZA,YAAY;AACZC,MAAAA,yBAAyB,EAAzBA,yBAAyB;AACzBC,MAAAA,4BAA4B,EAA5BA,4BAA4B;AAC5BC,MAAAA,YAAY,EAAZA,YAAY;AACZG,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBF,MAAAA,uBAAuB,EAAvBA,uBAAuB;AACvBR,MAAAA,OAAO,EAAPA,OAAO;AACPE,MAAAA,aAAa,EAAbA,aAAa;AACbC,MAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBF,MAAAA,SAAS,EAATA,SAAS;AACTnD,MAAAA,IAAI,EAAJA;AAAI,KAEP,CACF;AAAA,GACD,CAAC;AAEP,CAAC;;;;"}
|
|
1
|
+
{"version":3,"file":"SendMessagePane.js","sources":["../../../app/javascript/src/v2/components/commons/NoDataPage.jsx","../../../app/javascript/src/v2/components/SendMessagePane/constants.js","../../../app/javascript/src/v2/components/SendMessagePane/Form/EmailAndSms.jsx","../../../app/javascript/src/v2/components/SendMessagePane/Form/Whatsapp.jsx","../../../app/javascript/src/v2/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"lg\" variant=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { Select, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor/v2\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"v2/components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"v2/components/constants\";\nimport { areValuesEqual } from \"v2/components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n customFieldsBelowBody,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n ref={setFocusField}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {customFieldsBelowBody}\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import { Select, Sheet, Textarea, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n // `selectedTemplate` is kept as a `{ label, value }` object in Formik\n // state to preserve the payload shape v1 handed to `handleSubmit`.\n // atoms' Select is value-based, hence the plain (non-Formik) Select\n // driven off `values.selectedTemplate.value`.\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n <Select\n required\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n value={values.selectedTemplate?.value}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography variant=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { useRef } from \"react\";\n\nimport { Sheet, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\nimport NoDataPage from \"v2/components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose, paneSize = \"large\" } = props;\n const setFocusField = useRef(null);\n\n return (\n <Sheet\n {...{ isOpen, onClose }}\n initialFocusRef={setFocusField}\n size={paneSize}\n >\n <SendMessageForm {...{ ...props, setFocusField }} />\n </Sheet>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsBelowBody = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n setFocusField,\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Sheet.Title>\n </Sheet.Header>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsBelowBody,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","variant","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","customFieldsBelowBody","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","templateId","_editorRef$current","current","editor","commands","setContent","_Fragment","Sheet","Body","Select","isClearable","isSearchable","labelProps","ref","options","renameKeys","name","placeholder","onChange","Input","email","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","_values$selectedTempl","customFieldValues","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","_props$paneSize","paneSize","initialFocusRef","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsBelo","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","Title","WhatsappForm"],"mappings":"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"}
|
|
@@ -108,6 +108,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
108
108
|
type = _ref.type,
|
|
109
109
|
handleSubmit = _ref.handleSubmit,
|
|
110
110
|
isSaveAsTemplateEnabled = _ref.isSaveAsTemplateEnabled,
|
|
111
|
+
customFieldsBelowBody = _ref.customFieldsBelowBody,
|
|
111
112
|
_ref$helpPopoverProps = _ref.helpPopoverProps,
|
|
112
113
|
helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps;
|
|
113
114
|
var editorRef = useRef(null);
|
|
@@ -190,7 +191,7 @@ var EmailAndSms = function EmailAndSms(_ref) {
|
|
|
190
191
|
ref: editorRef,
|
|
191
192
|
rows: DEFAULT_EDITOR_ROW_COUNT,
|
|
192
193
|
variables: templateVariables
|
|
193
|
-
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsx(SaveAsTemplate, {})]
|
|
194
|
+
}), customFieldsBelowBody, canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsx(SaveAsTemplate, {})]
|
|
194
195
|
})
|
|
195
196
|
}), /*#__PURE__*/jsx(Sheet.Footer, {
|
|
196
197
|
children: /*#__PURE__*/jsx(ActionBlock, {
|
|
@@ -340,13 +341,15 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
340
341
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).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; }
|
|
341
342
|
var SendMessagePane = function SendMessagePane(props) {
|
|
342
343
|
var isOpen = props.isOpen,
|
|
343
|
-
onClose = props.onClose
|
|
344
|
+
onClose = props.onClose,
|
|
345
|
+
_props$paneSize = props.paneSize,
|
|
346
|
+
paneSize = _props$paneSize === void 0 ? "large" : _props$paneSize;
|
|
344
347
|
var setFocusField = useRef(null);
|
|
345
348
|
return /*#__PURE__*/jsx(Sheet, {
|
|
346
349
|
isOpen: isOpen,
|
|
347
350
|
onClose: onClose,
|
|
348
351
|
initialFocusRef: setFocusField,
|
|
349
|
-
size:
|
|
352
|
+
size: paneSize,
|
|
350
353
|
children: /*#__PURE__*/jsx(SendMessageForm, _objectSpread({}, _objectSpread(_objectSpread({}, props), {}, {
|
|
351
354
|
setFocusField: setFocusField
|
|
352
355
|
})))
|
|
@@ -361,6 +364,8 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
361
364
|
onClose = _ref$onClose === void 0 ? noop : _ref$onClose,
|
|
362
365
|
_ref$customFields = _ref.customFields,
|
|
363
366
|
customFields = _ref$customFields === void 0 ? null : _ref$customFields,
|
|
367
|
+
_ref$customFieldsBelo = _ref.customFieldsBelowBody,
|
|
368
|
+
customFieldsBelowBody = _ref$customFieldsBelo === void 0 ? null : _ref$customFieldsBelo,
|
|
364
369
|
_ref$customFieldsInit = _ref.customFieldsInitialValues,
|
|
365
370
|
customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
|
|
366
371
|
_ref$customFieldsVali = _ref.customFieldsValidationSchema,
|
|
@@ -419,6 +424,7 @@ var SendMessageForm = function SendMessageForm(_ref) {
|
|
|
419
424
|
}) : /*#__PURE__*/jsx(EmailAndSms, {
|
|
420
425
|
canManageTemplates: canManageTemplates,
|
|
421
426
|
customFields: customFields,
|
|
427
|
+
customFieldsBelowBody: customFieldsBelowBody,
|
|
422
428
|
customFieldsInitialValues: customFieldsInitialValues,
|
|
423
429
|
customFieldsValidationSchema: customFieldsValidationSchema,
|
|
424
430
|
handleSubmit: handleSubmit,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendMessagePane.js","sources":["../../app/javascript/src/v2/components/commons/NoDataPage.jsx","../../app/javascript/src/v2/components/SendMessagePane/constants.js","../../app/javascript/src/v2/components/SendMessagePane/Form/EmailAndSms.jsx","../../app/javascript/src/v2/components/SendMessagePane/Form/Whatsapp.jsx","../../app/javascript/src/v2/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"lg\" variant=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { Select, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor/v2\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"v2/components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"v2/components/constants\";\nimport { areValuesEqual } from \"v2/components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n ref={setFocusField}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import { Select, Sheet, Textarea, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n // `selectedTemplate` is kept as a `{ label, value }` object in Formik\n // state to preserve the payload shape v1 handed to `handleSubmit`.\n // atoms' Select is value-based, hence the plain (non-Formik) Select\n // driven off `values.selectedTemplate.value`.\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n <Select\n required\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n value={values.selectedTemplate?.value}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography variant=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { useRef } from \"react\";\n\nimport { Sheet, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\nimport NoDataPage from \"v2/components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose } = props;\n const setFocusField = useRef(null);\n\n return (\n <Sheet\n {...{ isOpen, onClose }}\n initialFocusRef={setFocusField}\n size=\"large\"\n >\n <SendMessageForm {...{ ...props, setFocusField }} />\n </Sheet>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n setFocusField,\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Sheet.Title>\n </Sheet.Header>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","variant","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","templateId","_editorRef$current","current","editor","commands","setContent","_Fragment","Sheet","Body","Select","isClearable","isSearchable","labelProps","ref","options","renameKeys","name","placeholder","onChange","Input","email","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","_values$selectedTempl","customFieldValues","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","initialFocusRef","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","Title","WhatsappForm"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendMessagePane.js","sources":["../../app/javascript/src/v2/components/commons/NoDataPage.jsx","../../app/javascript/src/v2/components/SendMessagePane/constants.js","../../app/javascript/src/v2/components/SendMessagePane/Form/EmailAndSms.jsx","../../app/javascript/src/v2/components/SendMessagePane/Form/Whatsapp.jsx","../../app/javascript/src/v2/components/SendMessagePane/index.jsx"],"sourcesContent":["import { Button, Typography } from \"@bigbinary/neeto-atoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nconst NoDataPage = ({ type, helpDocUrl = \"\" }) => {\n const { t } = useTranslation();\n\n const { label } = MESSAGE_TEMPLATES[type];\n\n if (type === MESSAGE_TYPES.whatsapp) {\n return (\n <div className=\"flex h-full w-full items-center justify-center px-6 text-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: t(\"neetoMessageTemplate.template.whatsappTemplates\"),\n })}{\" \"}\n {helpDocUrl && (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.whatsapp.helpDocText\"\n components={{\n Link: <Button href={helpDocUrl} size=\"lg\" variant=\"link\" />,\n }}\n />\n )}\n </Typography>\n </div>\n );\n }\n\n return (\n <div className=\"flex h-full w-full flex-col items-center justify-center\">\n <Typography>\n {t(\"neetoMessageTemplate.template.emptyState\", {\n type: label,\n })}\n </Typography>\n </div>\n );\n};\n\nexport default NoDataPage;\n","import { t } from \"i18next\";\nimport * as yup from \"yup\";\n\nconst formatEditorContent = value =>\n value?.replaceAll(/<\\/?(?!img)\\w*\\b[^>]*>/gi, \"\").trim();\n\nexport const SEND_MESSAGE_INITIAL_VALUES = {\n subject: \"\",\n body: \"\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const EMAIL_MESSAGE_FORM_SCHEMA = yup.object().shape({\n subject: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.template.validation.subjectPresence\")),\n body: yup\n .string()\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n )\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\")),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup.object().shape({\n body: yup\n .string()\n .required(t(\"neetoMessageTemplate.template.validation.bodyPresence\"))\n .test(\n \"body\",\n t(\"neetoMessageTemplate.template.validation.bodyPresence\"),\n value => !!formatEditorContent(value)\n ),\n templateName: yup.string().when(\"shouldSaveAsTemplate\", {\n is: true,\n then: yup.string().required(\n t(\"neetoMessageTemplate.template.validation.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.templateName\"),\n })\n ),\n }),\n});\n\nexport const WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA = yup.object().shape({\n variableContents: yup.object().shape({\n body: yup\n .array()\n .of(\n yup\n .string()\n .required(\n t(\"neetoMessageTemplate.template.validation.variablePresence\")\n )\n ),\n }),\n});\n","import { useRef } from \"react\";\n\nimport { Select, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport { findBy, isPresent, renameKeys } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor/v2\";\nimport { mergeAll, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport SaveAsTemplate from \"v2/components/commons/SaveAsTemplate\";\nimport { DEFAULT_EDITOR_ROW_COUNT } from \"v2/components/constants\";\nimport { areValuesEqual } from \"v2/components/utils\";\n\nimport {\n EMAIL_MESSAGE_FORM_SCHEMA,\n SEND_MESSAGE_INITIAL_VALUES,\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n} from \"../constants\";\n\nconst EmailAndSms = ({\n canManageTemplates,\n onClose,\n templates,\n setFocusField,\n templateVariables,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n type,\n handleSubmit,\n isSaveAsTemplateEnabled,\n customFieldsBelowBody,\n helpPopoverProps = {},\n}) => {\n const editorRef = useRef(null);\n const { t } = useTranslation();\n\n const isEmailTemplate = type === \"email\";\n const [INITIAL_VALUES, SEND_MESSAGE_FORM_SCHEMA] = isEmailTemplate\n ? [SEND_MESSAGE_INITIAL_VALUES, EMAIL_MESSAGE_FORM_SCHEMA]\n : [\n omit([\"subject\"], SEND_MESSAGE_INITIAL_VALUES),\n SMS_MESSAGE_FORM_VALIDATION_SCHEMA,\n ];\n\n const updatedInitialValues = mergeAll([\n INITIAL_VALUES,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...SEND_MESSAGE_FORM_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const shouldShowSaveAsTemplate = ({ id, subject, body } = {}) => {\n if (!isSaveAsTemplateEnabled) return false;\n\n const template = findBy({ id }, templates);\n const hasContent = isPresent(subject) || isPresent(body);\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.subject, subject) && template?.body === body\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ setValues, values }) => {\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n setValues({ ...values, ...template });\n editorRef.current?.editor?.commands?.setContent(template.body);\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n {isTemplateSelectionEnabled && (\n <Select\n isClearable\n isSearchable\n label={t(\"neetoMessageTemplate.template.title\")}\n labelProps={helpPopoverProps?.[type]?.template}\n ref={setFocusField}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={handleTemplateChange}\n />\n )}\n {customFields}\n {isEmailTemplate && (\n <Input\n required\n label={t(\"neetoMessageTemplate.template.subject\")}\n labelProps={helpPopoverProps?.email?.subject}\n name=\"subject\"\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n )}\n <FormikEditor\n hideSlashCommands\n required\n autoFocus={!(isTemplateSelectionEnabled || isEmailTemplate)}\n contentClassName=\"max-h-40\"\n defaults={isEmailTemplate ? undefined : []}\n label={t(\"neetoMessageTemplate.template.body\")}\n name=\"body\"\n ref={editorRef}\n rows={DEFAULT_EDITOR_ROW_COUNT}\n variables={templateVariables}\n />\n {customFieldsBelowBody}\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\nexport default EmailAndSms;\n","import { Select, Sheet, Textarea, Typography } from \"@bigbinary/neeto-atoms\";\nimport { ActionBlock, Form, Input } from \"@bigbinary/neeto-atoms/formik\";\nimport {\n capitalize,\n nullSafe,\n findBy,\n isNotEmpty,\n renameKeys,\n} from \"neetocist\";\nimport { mergeAll, omit, pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA } from \"../constants\";\n\nconst Whatsapp = ({\n templates,\n onClose,\n handleSubmit,\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n}) => {\n const { t } = useTranslation();\n\n const getInitialVariableComponents = variables => {\n const initialComponents = {};\n\n variables?.forEach(({ type, count }) => {\n initialComponents[type] = Array(count).fill(\"\");\n });\n\n return initialComponents;\n };\n\n const getTemplateMessage = components =>\n nullSafe(pluck)(\"text\", components)?.join(\"\\n\");\n\n const initialFormValues = {\n selectedTemplate: { label: templates[0]?.name, value: templates[0]?.id },\n templateMessage: getTemplateMessage(templates[0]?.components),\n variableContents: getInitialVariableComponents(templates[0]?.variableCount),\n };\n\n const updatedInitialValues = mergeAll([\n initialFormValues,\n customFieldsInitialValues,\n ]);\n\n const updatedValidationSchema = yup.object().shape({\n ...WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA?.fields,\n ...customFieldsValidationSchema?.fields,\n });\n\n const initialValueKeys = Object.keys(initialFormValues);\n\n return (\n <Form\n formProps={{\n noValidate: true,\n className: \"flex min-h-0 w-full flex-1 flex-col\",\n }}\n formikProps={{\n initialValues: updatedInitialValues,\n validationSchema: updatedValidationSchema,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => {\n // `selectedTemplate` is kept as a `{ label, value }` object in Formik\n // state to preserve the payload shape v1 handed to `handleSubmit`.\n // atoms' Select is value-based, hence the plain (non-Formik) Select\n // driven off `values.selectedTemplate.value`.\n const handleTemplateChange = templateId => {\n if (!templateId) return;\n\n const template = findBy({ id: templateId }, templates);\n const customFieldValues = omit(initialValueKeys, values);\n setValues({\n selectedTemplate: { label: template.name, value: template.id },\n templateMessage: getTemplateMessage(template.components),\n variableContents: getInitialVariableComponents(\n template.variableCount\n ),\n ...customFieldValues,\n });\n };\n\n return (\n <>\n <Sheet.Body>\n <div className=\"flex w-full flex-col gap-y-4 pb-6\">\n <Select\n required\n label={t(\"neetoMessageTemplate.template.title\")}\n name=\"selectedTemplate\"\n value={values.selectedTemplate?.value}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n onChange={handleTemplateChange}\n />\n {customFields}\n <Textarea\n disabled\n nakedTextarea\n label={t(\"neetoMessageTemplate.template.preview\")}\n value={values.templateMessage}\n />\n {isNotEmpty(values.variableContents) && (\n <>\n {Object.keys(values.variableContents).map(group => (\n <div className=\"flex flex-col gap-y-2\" key={group}>\n <Typography variant=\"h4\">\n {t(\"neetoMessageTemplate.template.resolveVariable\", {\n type: capitalize(group),\n })}\n </Typography>\n {values.variableContents[group].map((_, index) => (\n <div key={`${group}-${index}`}>\n <Input\n required\n key={`${group}-${index}`}\n label={`{{${index + 1}}}`}\n name={`variableContents.${group}.${index}`}\n />\n </div>\n ))}\n </div>\n ))}\n </>\n )}\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{\n \"data-testid\": \"message-template-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"message-template-send-button\",\n label: t(\"neetoMessageTemplate.template.send\"),\n }}\n />\n </Sheet.Footer>\n </>\n );\n }}\n </Form>\n );\n};\n\nexport default Whatsapp;\n","import { useRef } from \"react\";\n\nimport { Sheet, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { noop } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\nimport NoDataPage from \"v2/components/commons/NoDataPage\";\nimport { MESSAGE_TEMPLATES, MESSAGE_TYPES } from \"v2/components/constants\";\n\nimport EmailAndSms from \"./Form/EmailAndSms\";\nimport WhatsappForm from \"./Form/Whatsapp\";\n\nconst SendMessagePane = props => {\n const { isOpen, onClose, paneSize = \"large\" } = props;\n const setFocusField = useRef(null);\n\n return (\n <Sheet\n {...{ isOpen, onClose }}\n initialFocusRef={setFocusField}\n size={paneSize}\n >\n <SendMessageForm {...{ ...props, setFocusField }} />\n </Sheet>\n );\n};\n\nconst SendMessageForm = ({\n type = \"\",\n handleSubmit = noop,\n onClose = noop,\n customFields = null,\n customFieldsBelowBody = null,\n customFieldsInitialValues = {},\n customFieldsValidationSchema = {},\n templateVariables = {},\n ownerId = \"\", // Optional by default. Required in case if the owner of message-templates is not the Organization\n helpDocUrl = \"\",\n isSaveAsTemplateEnabled = true,\n canManageTemplates = true,\n setFocusField,\n helpPopoverProps,\n}) => {\n const { t } = useTranslation();\n\n const { value } = MESSAGE_TEMPLATES[type];\n const isWhatsappTemplate = type === \"whatsapp\";\n const templateParams = {\n status: \"active\",\n templateType: value,\n ownerId,\n };\n\n const { data: { templates = [] } = {}, isLoading } =\n useFetchTemplates(templateParams);\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n if (isWhatsappTemplate && isEmpty(templates)) {\n return <NoDataPage {...{ helpDocUrl, type }} />;\n }\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {t(\"neetoMessageTemplate.common.send\")} {MESSAGE_TYPES[type]}\n </Sheet.Title>\n </Sheet.Header>\n {isWhatsappTemplate ? (\n <WhatsappForm\n {...{\n customFields,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n onClose,\n templates,\n }}\n />\n ) : (\n <EmailAndSms\n {...{\n canManageTemplates,\n customFields,\n customFieldsBelowBody,\n customFieldsInitialValues,\n customFieldsValidationSchema,\n handleSubmit,\n helpPopoverProps,\n isSaveAsTemplateEnabled,\n onClose,\n setFocusField,\n templateVariables,\n templates,\n type,\n }}\n />\n )}\n </>\n );\n};\n\nexport default SendMessagePane;\n"],"names":["NoDataPage","_ref","type","_ref$helpDocUrl","helpDocUrl","_useTranslation","useTranslation","t","label","MESSAGE_TEMPLATES","MESSAGE_TYPES","whatsapp","_jsx","className","children","_jsxs","Typography","Trans","i18nKey","components","Link","Button","href","size","variant","formatEditorContent","value","replaceAll","trim","SEND_MESSAGE_INITIAL_VALUES","subject","body","shouldSaveAsTemplate","templateName","EMAIL_MESSAGE_FORM_SCHEMA","yup","object","shape","string","required","test","when","is","then","entity","SMS_MESSAGE_FORM_VALIDATION_SCHEMA","WHATSAPP_MESSAGE_FORM_VALIDATIONS_SCHEMA","variableContents","array","of","EmailAndSms","canManageTemplates","onClose","templates","setFocusField","templateVariables","customFields","customFieldsInitialValues","customFieldsValidationSchema","handleSubmit","isSaveAsTemplateEnabled","customFieldsBelowBody","_ref$helpPopoverProps","helpPopoverProps","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","updatedInitialValues","mergeAll","updatedValidationSchema","_objectSpread","fields","shouldShowSaveAsTemplate","_ref4","arguments","length","undefined","id","template","findBy","hasContent","isPresent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","Form","formProps","noValidate","formikProps","initialValues","validationSchema","onSubmit","_ref5","_helpPopoverProps$typ","_helpPopoverProps$ema","setValues","values","handleTemplateChange","templateId","_editorRef$current","current","editor","commands","setContent","_Fragment","Sheet","Body","Select","isClearable","isSearchable","labelProps","ref","options","renameKeys","name","placeholder","onChange","Input","email","FormikEditor","hideSlashCommands","autoFocus","contentClassName","defaults","rows","DEFAULT_EDITOR_ROW_COUNT","variables","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps","Whatsapp","_templates$","_templates$2","_templates$3","_templates$4","getInitialVariableComponents","initialComponents","forEach","count","Array","fill","getTemplateMessage","_nullSafe","nullSafe","pluck","join","initialFormValues","selectedTemplate","templateMessage","variableCount","initialValueKeys","Object","keys","_values$selectedTempl","customFieldValues","Textarea","disabled","nakedTextarea","isNotEmpty","map","group","capitalize","_","index","concat","SendMessagePane","props","isOpen","_props$paneSize","paneSize","initialFocusRef","SendMessageForm","_ref$type","_ref$handleSubmit","noop","_ref$onClose","_ref$customFields","_ref$customFieldsBelo","_ref$customFieldsInit","_ref$customFieldsVali","_ref$templateVariable","_ref$ownerId","ownerId","_ref$isSaveAsTemplate","_ref$canManageTemplat","isWhatsappTemplate","templateParams","status","templateType","_useFetchTemplates","useFetchTemplates","_useFetchTemplates$da","data","_useFetchTemplates$da2","_useFetchTemplates$da3","isLoading","Spinner","isEmpty","Header","Title","WhatsappForm"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-message-templates-frontend",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.13",
|
|
4
4
|
"description": "To manage message templates across neeto products.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"homepage": "https://github.com/bigbinary/neeto-message-templates-nano",
|
package/types.d.ts
CHANGED
|
@@ -77,7 +77,9 @@ interface SendMessagePaneProps {
|
|
|
77
77
|
isOpen?: boolean;
|
|
78
78
|
type?: string;
|
|
79
79
|
onClose?: () => void;
|
|
80
|
+
paneSize?: "small" | "large" | "extraLarge";
|
|
80
81
|
customFields?: ReactNode;
|
|
82
|
+
customFieldsBelowBody?: ReactNode;
|
|
81
83
|
customFieldsInitialValues?: { [key: string]: any };
|
|
82
84
|
customFieldsValidationSchema?: { [key: string]: any };
|
|
83
85
|
handleSubmit?: (values: { [key: string]: any }) => void;
|