@bigbinary/neeto-message-templates-frontend 2.0.13 → 2.0.15
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 -2
- package/dist/.ready +1 -1
- package/dist/ApiTemplates.js +4 -2
- package/dist/ApiTemplates.js.map +1 -1
- package/dist/MessageTemplates.js +46 -8
- package/dist/MessageTemplates.js.map +1 -1
- package/dist/{utils-Cz5W3I3l.js → SaveAsTemplate-B0HZhYfJ.js} +1 -8
- package/dist/SaveAsTemplate-B0HZhYfJ.js.map +1 -0
- package/dist/{utils-DddrNhQe.js → SaveAsTemplate-CueK8whg.js} +2 -8
- package/dist/SaveAsTemplate-CueK8whg.js.map +1 -0
- package/dist/{utils-BGEmI_om.js → SaveAsTemplate-DwPF4y1M.js} +2 -8
- package/dist/SaveAsTemplate-DwPF4y1M.js.map +1 -0
- package/dist/{utils-CLc_-Ysi.js → SaveAsTemplate-GtRE2UkX.js} +1 -8
- package/dist/SaveAsTemplate-GtRE2UkX.js.map +1 -0
- package/dist/SendMessagePane.js +11 -3
- package/dist/SendMessagePane.js.map +1 -1
- package/dist/SendToApiPane.js +7 -3
- package/dist/SendToApiPane.js.map +1 -1
- package/dist/cjs/ApiTemplates.js +4 -2
- package/dist/cjs/ApiTemplates.js.map +1 -1
- package/dist/cjs/MessageTemplates.js +47 -9
- package/dist/cjs/MessageTemplates.js.map +1 -1
- package/dist/cjs/SendMessagePane.js +12 -4
- package/dist/cjs/SendMessagePane.js.map +1 -1
- package/dist/cjs/SendToApiPane.js +8 -4
- package/dist/cjs/SendToApiPane.js.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/v2/ApiTemplates.js +4 -2
- package/dist/cjs/v2/ApiTemplates.js.map +1 -1
- package/dist/cjs/v2/MessageTemplates.js +44 -10
- package/dist/cjs/v2/MessageTemplates.js.map +1 -1
- package/dist/cjs/v2/SendMessagePane.js +12 -4
- package/dist/cjs/v2/SendMessagePane.js.map +1 -1
- package/dist/cjs/v2/SendToApiPane.js +8 -4
- package/dist/cjs/v2/SendToApiPane.js.map +1 -1
- package/dist/cjs/v2/index.js +4 -2
- package/dist/cjs/v2/index.js.map +1 -1
- package/dist/index.js +4 -2
- package/dist/index.js.map +1 -1
- package/dist/utils-B4JstKAU.js +16 -0
- package/dist/utils-B4JstKAU.js.map +1 -0
- package/dist/utils-Bqi4fltZ.js +13 -0
- package/dist/utils-Bqi4fltZ.js.map +1 -0
- package/dist/utils-Cje7oYAU.js +13 -0
- package/dist/utils-Cje7oYAU.js.map +1 -0
- package/dist/utils-DLBeeHEL.js +16 -0
- package/dist/utils-DLBeeHEL.js.map +1 -0
- package/dist/v2/ApiTemplates.js +4 -2
- package/dist/v2/ApiTemplates.js.map +1 -1
- package/dist/v2/MessageTemplates.js +43 -9
- package/dist/v2/MessageTemplates.js.map +1 -1
- package/dist/v2/SendMessagePane.js +11 -3
- package/dist/v2/SendMessagePane.js.map +1 -1
- package/dist/v2/SendToApiPane.js +7 -3
- package/dist/v2/SendToApiPane.js.map +1 -1
- package/dist/v2/index.js +4 -2
- package/dist/v2/index.js.map +1 -1
- package/package.json +7 -7
- package/types.d.ts +9 -1
- package/dist/utils-BGEmI_om.js.map +0 -1
- package/dist/utils-CLc_-Ysi.js.map +0 -1
- package/dist/utils-Cz5W3I3l.js.map +0 -1
- package/dist/utils-DddrNhQe.js.map +0 -1
|
@@ -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 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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"}
|
|
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, getEditorAddons } 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 allowAddingImagesToEmail,\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 editorAddons = getEditorAddons(\n allowAddingImagesToEmail,\n isEmailTemplate\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 addons={editorAddons}\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 allowAddingImagesToEmail = false,\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 allowAddingImagesToEmail,\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","allowAddingImagesToEmail","editorRef","useRef","isEmailTemplate","_ref2","omit","_ref3","_slicedToArray","INITIAL_VALUES","SEND_MESSAGE_FORM_SCHEMA","editorAddons","getEditorAddons","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","addons","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","_ref$allowAddingImage","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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"}
|
|
@@ -13,7 +13,8 @@ var NeetoUIForm = require('@bigbinary/neetoui/formik/Form');
|
|
|
13
13
|
var ramda = require('ramda');
|
|
14
14
|
var reactI18next = require('react-i18next');
|
|
15
15
|
var JsonEditor = require('../JsonEditor-DEKfDX8p.js');
|
|
16
|
-
var
|
|
16
|
+
var SaveAsTemplate = require('../SaveAsTemplate-B0HZhYfJ.js');
|
|
17
|
+
var utils = require('../utils-DLBeeHEL.js');
|
|
17
18
|
var useTemplatesApi = require('../useTemplatesApi-byHuEDTl.js');
|
|
18
19
|
var i18next = require('i18next');
|
|
19
20
|
var yup = require('yup');
|
|
@@ -31,6 +32,7 @@ require('@bigbinary/neeto-molecules/DynamicVariables');
|
|
|
31
32
|
require('@bigbinary/neetoui/Label');
|
|
32
33
|
require('../json_editor-CvRhtSA3.js');
|
|
33
34
|
require('../inject-css-B6qYtOJe.js');
|
|
35
|
+
require('@bigbinary/neeto-editor/constants');
|
|
34
36
|
require('@tanstack/react-query');
|
|
35
37
|
require('axios');
|
|
36
38
|
require('qs');
|
|
@@ -110,11 +112,13 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
110
112
|
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; }
|
|
111
113
|
var SendToApiPane = function SendToApiPane(props) {
|
|
112
114
|
var isOpen = props.isOpen,
|
|
113
|
-
onClose = props.onClose
|
|
115
|
+
onClose = props.onClose,
|
|
116
|
+
_props$paneSize = props.paneSize,
|
|
117
|
+
paneSize = _props$paneSize === void 0 ? "large" : _props$paneSize;
|
|
114
118
|
return /*#__PURE__*/jsxRuntime.jsx(Pane, {
|
|
115
119
|
isOpen: isOpen,
|
|
116
120
|
onClose: onClose,
|
|
117
|
-
size:
|
|
121
|
+
size: paneSize,
|
|
118
122
|
children: function children(paneProps) {
|
|
119
123
|
return /*#__PURE__*/jsxRuntime.jsx(SendToApiForm, _objectSpread({}, _objectSpread(_objectSpread({}, props), {}, {
|
|
120
124
|
paneProps: paneProps
|
|
@@ -229,7 +233,7 @@ var SendToApiForm = function SendToApiForm(_ref) {
|
|
|
229
233
|
helpPopoverProps: bodyHelpPopoverProps,
|
|
230
234
|
initialValue: values.body,
|
|
231
235
|
name: "body"
|
|
232
|
-
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(
|
|
236
|
+
}), canManageTemplates && shouldShowSaveAsTemplate(values) && /*#__PURE__*/jsxRuntime.jsx(SaveAsTemplate.SaveAsTemplate, {})]
|
|
233
237
|
})
|
|
234
238
|
}), /*#__PURE__*/jsxRuntime.jsx(Pane.Footer, {
|
|
235
239
|
children: /*#__PURE__*/jsxRuntime.jsx(ActionBlock, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendToApiPane.js","sources":["../../app/javascript/src/components/Api/SendToApiPane/constants.js","../../app/javascript/src/components/Api/SendToApiPane/utils.js","../../app/javascript/src/components/Api/SendToApiPane/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { isNotPresent } from \"neetocist\";\nimport * as yup from \"yup\";\n\nimport { CUSTOM_HEADERS_INITIAL_VALUE, VALID_URL_REGEX } from \"../constants\";\n\nexport const SEND_TO_API_FORM_INITIAL_VALUES = {\n endpoint: \"\",\n enableCustomHeaders: false,\n customHeaders: [CUSTOM_HEADERS_INITIAL_VALUE],\n body: \"{}\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const SEND_TO_API_FORM_VALIDATION_SCHEMA = yup.object({\n endpoint: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.api.validation.endpointPresence\"))\n .matches(\n VALID_URL_REGEX,\n t(\"neetoMessageTemplate.api.validation.validEndpoint\")\n ),\n body: yup\n .string()\n .trim()\n .required(\n t(\"neetoMessageTemplate.validations.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.body\"),\n })\n )\n .test(\"is-valid-json-and-not-empty\", (value, context) => {\n if (!value) return true;\n\n try {\n const parsedValue = JSON.parse(value);\n\n if (isNotPresent(parsedValue)) {\n return context.createError({\n message: t(\"neetoMessageTemplate.validations.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.body\"),\n }),\n });\n }\n\n return true;\n } catch {\n return context.createError({\n message: t(\"neetoMessageTemplate.api.validation.invalidJsonBody\"),\n });\n }\n }),\n});\n","import { isPresent } from \"neetocist\";\nimport { equals } from \"ramda\";\n\nimport { CUSTOM_HEADERS_INITIAL_VALUE } from \"../constants\";\n\nexport const formatCustomHeaders = customHeaders =>\n isPresent(customHeaders) ? customHeaders : [CUSTOM_HEADERS_INITIAL_VALUE];\n\nexport const areHeadersSame = (\n enableCustomHeaders,\n customHeaders,\n template = {}\n) => {\n const {\n enableCustomHeaders: templateHasCustomHeaders,\n customHeaders: templateHeaders,\n } = template;\n if (!enableCustomHeaders && !templateHasCustomHeaders) return true;\n\n if (enableCustomHeaders !== templateHasCustomHeaders) return false;\n\n return equals(customHeaders, templateHeaders);\n};\n\nexport const isBodyAvailable = body => {\n try {\n const data = JSON.parse(body);\n\n return isPresent(data);\n } catch {\n return false;\n }\n};\n","import { findBy, isPresent, renameKeys } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Select, Spinner, Typography } from \"neetoui\";\nimport { ActionBlock, Input, Form as NeetoUIForm } from \"neetoui/formik\";\nimport { equals, modify } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SAMPLE_URL } from \"components/Api/ApiTemplates/constants\";\nimport {\n API_TEMPLATE_TYPE,\n CUSTOM_HEADERS_INITIAL_VALUE,\n} from \"components/Api/constants\";\nimport {\n buildHelpPopoverProps,\n rejectEmptyKeyValuePairs,\n} from \"components/Api/utils\";\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { areValuesEqual } from \"components/utils\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport {\n SEND_TO_API_FORM_INITIAL_VALUES,\n SEND_TO_API_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { areHeadersSame, formatCustomHeaders, isBodyAvailable } from \"./utils\";\n\nimport CustomHeaders from \"../CustomHeaders\";\nimport JsonEditor from \"../JsonEditor\";\n\nconst SendToApiPane = props => {\n const { isOpen, onClose } = props;\n\n return (\n <Pane {...{ isOpen, onClose }} size=\"large\">\n {paneProps => <SendToApiForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendToApiForm = ({\n ownerId,\n onClose,\n onSubmit,\n isSubmitting,\n templateVariables,\n canManageTemplates = true,\n helpPopoverProps = {},\n paneProps: { setFocusField },\n}) => {\n const { t } = useTranslation();\n\n const { data: { templates = [] } = {}, isLoading: isLoadingTemplates } =\n useFetchTemplates({\n status: \"active\",\n templateType: API_TEMPLATE_TYPE,\n ownerId,\n });\n\n const handleTemplateChange = (setValues, values, option) => {\n if (!option) return;\n\n const template = findBy({ id: option.value }, templates);\n setValues({\n ...values,\n ...modify(\"customHeaders\", formatCustomHeaders, template),\n });\n };\n\n const handleSubmit = formValues => {\n const customHeadersModifiedFormValues = modify(\n \"customHeaders\",\n rejectEmptyKeyValuePairs,\n formValues\n );\n\n onSubmit(customHeadersModifiedFormValues);\n };\n\n const shouldShowSaveAsTemplate = ({\n id,\n endpoint,\n enableCustomHeaders,\n customHeaders = [CUSTOM_HEADERS_INITIAL_VALUE],\n body,\n } = {}) => {\n const template = findBy({ id }, templates);\n const hasContent =\n isPresent(endpoint) ||\n isPresent(rejectEmptyKeyValuePairs(customHeaders)) ||\n isBodyAvailable(body);\n\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.endpoint, endpoint) &&\n areHeadersSame(enableCustomHeaders, customHeaders, template) &&\n equals(template?.body, body)\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n const {\n sendToApi: sendToApiHelpPopoverProps,\n customHeaders: customHeadersHelpPopoverProps,\n body: bodyHelpPopoverProps,\n } = buildHelpPopoverProps(helpPopoverProps);\n\n if (isLoadingTemplates) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.api.sendToApi\")}\n <HelpPopover className=\"ms-2\" {...sendToApiHelpPopoverProps} />\n </Typography>\n </Pane.Header>\n <NeetoUIForm\n formikProps={{\n initialValues: SEND_TO_API_FORM_INITIAL_VALUES,\n validationSchema: SEND_TO_API_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-5 mb-10\">\n {isTemplateSelectionEnabled && (\n <Select\n innerRef={setFocusField}\n isLoading={isLoadingTemplates}\n label={t(\"neetoMessageTemplate.template.title\")}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={template =>\n handleTemplateChange(setValues, values, template)\n }\n />\n )}\n <Input\n required\n label={t(\"neetoMessageTemplate.api.endpoint\")}\n name=\"endpoint\"\n placeholder={SAMPLE_URL}\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n <CustomHeaders\n helpPopoverProps={customHeadersHelpPopoverProps}\n />\n <JsonEditor\n {...{ templateVariables }}\n helpPopoverProps={bodyHelpPopoverProps}\n initialValue={values.body}\n name=\"body\"\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{\n onClick: onClose,\n \"data-testid\": \"api-template-cancel-button\",\n }}\n submitButtonProps={{\n label: t(\"neetoMessageTemplate.template.send\"),\n \"data-testid\": \"api-template-send-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </NeetoUIForm>\n </>\n );\n};\n\nexport default SendToApiPane;\n"],"names":["SEND_TO_API_FORM_INITIAL_VALUES","endpoint","enableCustomHeaders","customHeaders","CUSTOM_HEADERS_INITIAL_VALUE","body","shouldSaveAsTemplate","templateName","SEND_TO_API_FORM_VALIDATION_SCHEMA","yup","object","string","trim","required","t","matches","VALID_URL_REGEX","entity","test","value","context","parsedValue","JSON","parse","isNotPresent","createError","message","_unused","formatCustomHeaders","isPresent","areHeadersSame","template","arguments","length","undefined","templateHasCustomHeaders","templateHeaders","equals","isBodyAvailable","data","SendToApiPane","props","isOpen","onClose","_jsx","Pane","size","children","paneProps","SendToApiForm","_objectSpread","_ref","ownerId","onSubmit","isSubmitting","templateVariables","_ref$canManageTemplat","canManageTemplates","_ref$helpPopoverProps","helpPopoverProps","setFocusField","_useTranslation","useTranslation","_useFetchTemplates","useFetchTemplates","status","templateType","API_TEMPLATE_TYPE","_useFetchTemplates$da","_useFetchTemplates$da2","_useFetchTemplates$da3","templates","isLoadingTemplates","isLoading","handleTemplateChange","setValues","values","option","findBy","id","modify","handleSubmit","formValues","customHeadersModifiedFormValues","rejectEmptyKeyValuePairs","shouldShowSaveAsTemplate","_ref2","_ref2$customHeaders","hasContent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","_buildHelpPopoverProp","buildHelpPopoverProps","sendToApiHelpPopoverProps","sendToApi","customHeadersHelpPopoverProps","bodyHelpPopoverProps","className","Spinner","_jsxs","_Fragment","Header","Typography","style","weight","HelpPopover","NeetoUIForm","formikProps","initialValues","validationSchema","_ref3","Body","Select","innerRef","label","options","renameKeys","name","placeholder","onChange","Input","SAMPLE_URL","ref","CustomHeaders","JsonEditor","initialValue","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SendToApiPane.js","sources":["../../app/javascript/src/components/Api/SendToApiPane/constants.js","../../app/javascript/src/components/Api/SendToApiPane/utils.js","../../app/javascript/src/components/Api/SendToApiPane/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { isNotPresent } from \"neetocist\";\nimport * as yup from \"yup\";\n\nimport { CUSTOM_HEADERS_INITIAL_VALUE, VALID_URL_REGEX } from \"../constants\";\n\nexport const SEND_TO_API_FORM_INITIAL_VALUES = {\n endpoint: \"\",\n enableCustomHeaders: false,\n customHeaders: [CUSTOM_HEADERS_INITIAL_VALUE],\n body: \"{}\",\n shouldSaveAsTemplate: false,\n templateName: \"\",\n};\n\nexport const SEND_TO_API_FORM_VALIDATION_SCHEMA = yup.object({\n endpoint: yup\n .string()\n .trim()\n .required(t(\"neetoMessageTemplate.api.validation.endpointPresence\"))\n .matches(\n VALID_URL_REGEX,\n t(\"neetoMessageTemplate.api.validation.validEndpoint\")\n ),\n body: yup\n .string()\n .trim()\n .required(\n t(\"neetoMessageTemplate.validations.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.body\"),\n })\n )\n .test(\"is-valid-json-and-not-empty\", (value, context) => {\n if (!value) return true;\n\n try {\n const parsedValue = JSON.parse(value);\n\n if (isNotPresent(parsedValue)) {\n return context.createError({\n message: t(\"neetoMessageTemplate.validations.requiredEntity\", {\n entity: t(\"neetoMessageTemplate.template.body\"),\n }),\n });\n }\n\n return true;\n } catch {\n return context.createError({\n message: t(\"neetoMessageTemplate.api.validation.invalidJsonBody\"),\n });\n }\n }),\n});\n","import { isPresent } from \"neetocist\";\nimport { equals } from \"ramda\";\n\nimport { CUSTOM_HEADERS_INITIAL_VALUE } from \"../constants\";\n\nexport const formatCustomHeaders = customHeaders =>\n isPresent(customHeaders) ? customHeaders : [CUSTOM_HEADERS_INITIAL_VALUE];\n\nexport const areHeadersSame = (\n enableCustomHeaders,\n customHeaders,\n template = {}\n) => {\n const {\n enableCustomHeaders: templateHasCustomHeaders,\n customHeaders: templateHeaders,\n } = template;\n if (!enableCustomHeaders && !templateHasCustomHeaders) return true;\n\n if (enableCustomHeaders !== templateHasCustomHeaders) return false;\n\n return equals(customHeaders, templateHeaders);\n};\n\nexport const isBodyAvailable = body => {\n try {\n const data = JSON.parse(body);\n\n return isPresent(data);\n } catch {\n return false;\n }\n};\n","import { findBy, isPresent, renameKeys } from \"neetocist\";\nimport HelpPopover from \"neetomolecules/HelpPopover\";\nimport { Pane, Select, Spinner, Typography } from \"neetoui\";\nimport { ActionBlock, Input, Form as NeetoUIForm } from \"neetoui/formik\";\nimport { equals, modify } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SAMPLE_URL } from \"components/Api/ApiTemplates/constants\";\nimport {\n API_TEMPLATE_TYPE,\n CUSTOM_HEADERS_INITIAL_VALUE,\n} from \"components/Api/constants\";\nimport {\n buildHelpPopoverProps,\n rejectEmptyKeyValuePairs,\n} from \"components/Api/utils\";\nimport SaveAsTemplate from \"components/commons/SaveAsTemplate\";\nimport { areValuesEqual } from \"components/utils\";\nimport { useFetchTemplates } from \"hooks/reactQuery/useTemplatesApi\";\n\nimport {\n SEND_TO_API_FORM_INITIAL_VALUES,\n SEND_TO_API_FORM_VALIDATION_SCHEMA,\n} from \"./constants\";\nimport { areHeadersSame, formatCustomHeaders, isBodyAvailable } from \"./utils\";\n\nimport CustomHeaders from \"../CustomHeaders\";\nimport JsonEditor from \"../JsonEditor\";\n\nconst SendToApiPane = props => {\n const { isOpen, onClose, paneSize = \"large\" } = props;\n\n return (\n <Pane {...{ isOpen, onClose }} size={paneSize}>\n {paneProps => <SendToApiForm {...{ ...props, paneProps }} />}\n </Pane>\n );\n};\n\nconst SendToApiForm = ({\n ownerId,\n onClose,\n onSubmit,\n isSubmitting,\n templateVariables,\n canManageTemplates = true,\n helpPopoverProps = {},\n paneProps: { setFocusField },\n}) => {\n const { t } = useTranslation();\n\n const { data: { templates = [] } = {}, isLoading: isLoadingTemplates } =\n useFetchTemplates({\n status: \"active\",\n templateType: API_TEMPLATE_TYPE,\n ownerId,\n });\n\n const handleTemplateChange = (setValues, values, option) => {\n if (!option) return;\n\n const template = findBy({ id: option.value }, templates);\n setValues({\n ...values,\n ...modify(\"customHeaders\", formatCustomHeaders, template),\n });\n };\n\n const handleSubmit = formValues => {\n const customHeadersModifiedFormValues = modify(\n \"customHeaders\",\n rejectEmptyKeyValuePairs,\n formValues\n );\n\n onSubmit(customHeadersModifiedFormValues);\n };\n\n const shouldShowSaveAsTemplate = ({\n id,\n endpoint,\n enableCustomHeaders,\n customHeaders = [CUSTOM_HEADERS_INITIAL_VALUE],\n body,\n } = {}) => {\n const template = findBy({ id }, templates);\n const hasContent =\n isPresent(endpoint) ||\n isPresent(rejectEmptyKeyValuePairs(customHeaders)) ||\n isBodyAvailable(body);\n\n const isContentDifferentFromTemplate = !(\n areValuesEqual(template?.endpoint, endpoint) &&\n areHeadersSame(enableCustomHeaders, customHeaders, template) &&\n equals(template?.body, body)\n );\n\n return hasContent && isContentDifferentFromTemplate;\n };\n\n const isTemplateSelectionEnabled = isPresent(templates);\n\n const {\n sendToApi: sendToApiHelpPopoverProps,\n customHeaders: customHeadersHelpPopoverProps,\n body: bodyHelpPopoverProps,\n } = buildHelpPopoverProps(helpPopoverProps);\n\n if (isLoadingTemplates) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoMessageTemplate.api.sendToApi\")}\n <HelpPopover className=\"ms-2\" {...sendToApiHelpPopoverProps} />\n </Typography>\n </Pane.Header>\n <NeetoUIForm\n formikProps={{\n initialValues: SEND_TO_API_FORM_INITIAL_VALUES,\n validationSchema: SEND_TO_API_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ values, setValues }) => (\n <>\n <Pane.Body>\n <div className=\"w-full space-y-5 mb-10\">\n {isTemplateSelectionEnabled && (\n <Select\n innerRef={setFocusField}\n isLoading={isLoadingTemplates}\n label={t(\"neetoMessageTemplate.template.title\")}\n options={renameKeys(\n { name: \"label\", id: \"value\" },\n templates\n )}\n placeholder={t(\n \"neetoMessageTemplate.sendMessage.selectTemplate\"\n )}\n onChange={template =>\n handleTemplateChange(setValues, values, template)\n }\n />\n )}\n <Input\n required\n label={t(\"neetoMessageTemplate.api.endpoint\")}\n name=\"endpoint\"\n placeholder={SAMPLE_URL}\n ref={isTemplateSelectionEnabled ? null : setFocusField}\n />\n <CustomHeaders\n helpPopoverProps={customHeadersHelpPopoverProps}\n />\n <JsonEditor\n {...{ templateVariables }}\n helpPopoverProps={bodyHelpPopoverProps}\n initialValue={values.body}\n name=\"body\"\n />\n {canManageTemplates && shouldShowSaveAsTemplate(values) && (\n <SaveAsTemplate />\n )}\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n {...{ isSubmitting }}\n cancelButtonProps={{\n onClick: onClose,\n \"data-testid\": \"api-template-cancel-button\",\n }}\n submitButtonProps={{\n label: t(\"neetoMessageTemplate.template.send\"),\n \"data-testid\": \"api-template-send-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </NeetoUIForm>\n </>\n );\n};\n\nexport default SendToApiPane;\n"],"names":["SEND_TO_API_FORM_INITIAL_VALUES","endpoint","enableCustomHeaders","customHeaders","CUSTOM_HEADERS_INITIAL_VALUE","body","shouldSaveAsTemplate","templateName","SEND_TO_API_FORM_VALIDATION_SCHEMA","yup","object","string","trim","required","t","matches","VALID_URL_REGEX","entity","test","value","context","parsedValue","JSON","parse","isNotPresent","createError","message","_unused","formatCustomHeaders","isPresent","areHeadersSame","template","arguments","length","undefined","templateHasCustomHeaders","templateHeaders","equals","isBodyAvailable","data","SendToApiPane","props","isOpen","onClose","_props$paneSize","paneSize","_jsx","Pane","size","children","paneProps","SendToApiForm","_objectSpread","_ref","ownerId","onSubmit","isSubmitting","templateVariables","_ref$canManageTemplat","canManageTemplates","_ref$helpPopoverProps","helpPopoverProps","setFocusField","_useTranslation","useTranslation","_useFetchTemplates","useFetchTemplates","status","templateType","API_TEMPLATE_TYPE","_useFetchTemplates$da","_useFetchTemplates$da2","_useFetchTemplates$da3","templates","isLoadingTemplates","isLoading","handleTemplateChange","setValues","values","option","findBy","id","modify","handleSubmit","formValues","customHeadersModifiedFormValues","rejectEmptyKeyValuePairs","shouldShowSaveAsTemplate","_ref2","_ref2$customHeaders","hasContent","isContentDifferentFromTemplate","areValuesEqual","isTemplateSelectionEnabled","_buildHelpPopoverProp","buildHelpPopoverProps","sendToApiHelpPopoverProps","sendToApi","customHeadersHelpPopoverProps","bodyHelpPopoverProps","className","Spinner","_jsxs","_Fragment","Header","Typography","style","weight","HelpPopover","NeetoUIForm","formikProps","initialValues","validationSchema","_ref3","Body","Select","innerRef","label","options","renameKeys","name","placeholder","onChange","Input","SAMPLE_URL","ref","CustomHeaders","JsonEditor","initialValue","SaveAsTemplate","Footer","ActionBlock","cancelButtonProps","onClick","submitButtonProps"],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -34,11 +34,13 @@ require('@bigbinary/neeto-editor/FormikEditor');
|
|
|
34
34
|
require('@bigbinary/neetoui/formik/Form');
|
|
35
35
|
require('@bigbinary/neetoui/formik/Input');
|
|
36
36
|
require('@bigbinary/neetoui/formik/ActionBlock');
|
|
37
|
+
require('yup');
|
|
37
38
|
require('@babel/runtime/helpers/objectWithoutProperties');
|
|
38
39
|
require('formik');
|
|
39
40
|
require('@bigbinary/neetoui/formik/Textarea');
|
|
41
|
+
require('../utils-DLBeeHEL.js');
|
|
42
|
+
require('@bigbinary/neeto-editor/constants');
|
|
40
43
|
require('@bigbinary/neeto-molecules/PhoneNumber');
|
|
41
|
-
require('yup');
|
|
42
44
|
require('@babel/runtime/helpers/asyncToGenerator');
|
|
43
45
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
44
46
|
require('@bigbinary/neeto-filters-frontend/utils');
|
|
@@ -48,7 +50,7 @@ require('@bigbinary/neetoui/Table');
|
|
|
48
50
|
require('@bigbinary/neetoui/NoData');
|
|
49
51
|
require('@bigbinary/neetoui/Spinner');
|
|
50
52
|
require('@bigbinary/neetoui/Select');
|
|
51
|
-
require('../
|
|
53
|
+
require('../SaveAsTemplate-B0HZhYfJ.js');
|
|
52
54
|
require('@bigbinary/neetoui/formik/Switch');
|
|
53
55
|
require('@bigbinary/neetoui/Textarea');
|
|
54
56
|
require('@bigbinary/neetoui/formik/Select');
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -234,7 +234,9 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
234
234
|
_ref$templateVariable = _ref.templateVariables,
|
|
235
235
|
templateVariables = _ref$templateVariable === void 0 ? [] : _ref$templateVariable,
|
|
236
236
|
_ref$onMutationSucces = _ref.onMutationSuccess,
|
|
237
|
-
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces
|
|
237
|
+
onMutationSuccess = _ref$onMutationSucces === void 0 ? neetoCist.noop : _ref$onMutationSucces,
|
|
238
|
+
_ref$paneSize = _ref.paneSize,
|
|
239
|
+
paneSize = _ref$paneSize === void 0 ? "large" : _ref$paneSize;
|
|
238
240
|
var _useTranslation = reactI18next.useTranslation(),
|
|
239
241
|
t = _useTranslation.t;
|
|
240
242
|
var _useState = react.useState(constants.DEFAULT_PAGE_PROPERTIES),
|
|
@@ -435,7 +437,7 @@ var ApiTemplates = function ApiTemplates(_ref) {
|
|
|
435
437
|
}), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet, {
|
|
436
438
|
initialFocusRef: setFocusField,
|
|
437
439
|
isOpen: isFormPaneOpen,
|
|
438
|
-
size:
|
|
440
|
+
size: paneSize,
|
|
439
441
|
onClose: handleCloseDeleteAlertAndFormPane,
|
|
440
442
|
children: /*#__PURE__*/jsxRuntime.jsx(Form, {
|
|
441
443
|
bodyHelpPopoverProps: bodyHelpPopoverProps,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ApiTemplates.js","sources":["../../../app/javascript/src/v2/components/Api/ApiTemplates/utils.jsx","../../../app/javascript/src/v2/components/Api/ApiTemplates/Form.jsx","../../../app/javascript/src/v2/components/Api/ApiTemplates/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { truncate } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { assoc, equals, isEmpty, pick } from \"ramda\";\n\nimport {\n CUSTOM_HEADERS_INITIAL_VALUE,\n API_TEMPLATE_TYPE,\n} from \"v2/components/Api/constants\";\nimport { rejectEmptyKeyValuePairs } from \"v2/components/Api/utils\";\n\nimport { API_TEMPLATE_INITIAL_VALUES, TEMPLATE_STATUS } from \"./constants\";\n\nexport const buildApiTemplatePayload = (values, templateId) => ({\n entity: {\n id: templateId,\n endpoint: values.endpoint,\n enableCustomHeaders: values.enableCustomHeaders,\n customHeaders: rejectEmptyKeyValuePairs(values.customHeaders || []),\n body: values.body,\n },\n templateType: API_TEMPLATE_TYPE,\n name: values.name,\n});\n\nexport const buildTableColumnData = ({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n}) => [\n {\n accessorKey: \"name\",\n id: \"name\",\n header: t(\"neetoMessageTemplate.template.name\"),\n size: 200,\n cell: ({ row: { original: apiTemplate } }) => (\n <div className=\"flex min-w-0 items-center justify-between gap-x-3\">\n <div className=\"min-w-0 flex-1\">\n <Button\n className=\"max-w-full text-start [&>span]:block [&>span]:min-w-0 [&>span]:truncate\"\n data-testid=\"api-template-name-link\"\n label={truncate(apiTemplate.name, 100)}\n tooltipProps={{ content: apiTemplate.name }}\n variant=\"link\"\n onClick={() => handleOpenEditPane(apiTemplate)}\n />\n </div>\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": \"api-template-dropdown\",\n }}\n menuItems={[\n {\n key: \"edit\",\n label: t(\"neetoMessageTemplate.template.edit\"),\n \"data-testid\": \"api-template-button-edit-button\",\n onClick: () => handleOpenEditPane(apiTemplate),\n },\n {\n key: \"status\",\n label: equals(apiTemplate.status, TEMPLATE_STATUS.ACTIVE)\n ? t(\"neetoMessageTemplate.template.markAsInactive\")\n : t(\"neetoMessageTemplate.template.markAsActive\"),\n \"data-testid\": \"api-template-button-status-button\",\n onClick: () => handleMarkAsActiveOrInactive(apiTemplate),\n },\n {\n key: \"delete\",\n label: t(\"neetoMessageTemplate.template.delete\"),\n \"data-testid\": \"api-template-button-delete-button\",\n onClick: () => handleOpenDeleteAlert(apiTemplate),\n },\n ]}\n />\n </div>\n ),\n },\n {\n accessorKey: \"status\",\n id: \"status\",\n header: t(\"neetoMessageTemplate.template.active\"),\n cell: ({ getValue }) =>\n getValue() === \"active\"\n ? t(\"neetoMessageTemplate.yes\")\n : t(\"neetoMessageTemplate.no\"),\n size: 180,\n },\n];\n\nexport const buildApiTemplateInitialValues = (\n isEdit,\n apiTemplate,\n initialPayload\n) => {\n if (!isEdit) {\n return assoc(\"body\", initialPayload, API_TEMPLATE_INITIAL_VALUES);\n }\n\n const customHeaders = isEmpty(apiTemplate.customHeaders)\n ? [CUSTOM_HEADERS_INITIAL_VALUE]\n : apiTemplate.customHeaders;\n\n return {\n ...pick([\"name\", \"endpoint\", \"body\", \"enableCustomHeaders\"], apiTemplate),\n customHeaders,\n };\n};\n","import { useMemo } from \"react\";\n\nimport { Sheet } from \"@bigbinary/neeto-atoms\";\nimport {\n ActionBlock,\n Input,\n Form as NeetoUIForm,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useCreateTemplate,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\n\nimport { API_TEMPLATE_FORM_VALIDATION_SCHEMA, SAMPLE_URL } from \"./constants\";\nimport {\n buildApiTemplateInitialValues,\n buildApiTemplatePayload,\n} from \"./utils\";\n\nimport CustomHeaders from \"../CustomHeaders\";\nimport JsonEditor from \"../JsonEditor\";\n\nconst Form = ({\n setFocusField,\n onClose,\n ownerId,\n selectedApiTemplate,\n onMutationSuccess,\n initialPayload,\n templateVariables,\n bodyHelpPopoverProps,\n customHeadersHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const { mutate: createApiTemplate, isPending: isCreating } =\n useCreateTemplate(ownerId);\n\n const { mutate: updateApiTemplate, isPending: isUpdating } =\n useUpdateTemplate(ownerId);\n\n const isEdit = isNotEmpty(selectedApiTemplate);\n\n const handleSubmit = (values, { setSubmitting }) => {\n const payload = buildApiTemplatePayload(values, selectedApiTemplate?.id);\n const options = {\n onSuccess: (...args) => {\n onMutationSuccess(...args);\n onClose();\n },\n onSettled: () => setSubmitting(false),\n };\n\n if (isEdit) {\n updateApiTemplate({ id: selectedApiTemplate.id, payload }, options);\n\n return;\n }\n\n createApiTemplate(payload, options);\n };\n\n const isMutating = isUpdating || isCreating;\n\n const initialValues = useMemo(\n () =>\n buildApiTemplateInitialValues(\n isEdit,\n selectedApiTemplate,\n initialPayload\n ),\n [isEdit, selectedApiTemplate, initialPayload]\n );\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {isEdit\n ? t(\"neetoMessageTemplate.api.editApiTemplate\")\n : t(\"neetoMessageTemplate.api.addApiTemplate\")}\n </Sheet.Title>\n </Sheet.Header>\n <NeetoUIForm\n formProps={{ className: \"flex min-h-0 flex-1 flex-col\" }}\n formikProps={{\n initialValues,\n validationSchema: API_TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"w-full space-y-5 mb-10\">\n <Input\n required\n label={t(\"neetoMessageTemplate.template.name\")}\n name=\"name\"\n ref={setFocusField}\n />\n <Input\n required\n label={t(\"neetoMessageTemplate.api.endpoint\")}\n name=\"endpoint\"\n placeholder={SAMPLE_URL}\n />\n <CustomHeaders helpPopoverProps={customHeadersHelpPopoverProps} />\n <JsonEditor\n {...{ templateVariables }}\n helpPopoverProps={bodyHelpPopoverProps}\n initialValue={initialValues.body}\n name=\"body\"\n />\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isMutating}\n />\n </Sheet.Footer>\n </NeetoUIForm>\n </>\n );\n};\n\nexport default Form;\n","import { useRef, useState } from \"react\";\n\nimport {\n Alert,\n Button,\n DataTable,\n Empty,\n Sheet,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { Webhook } from \"lucide-react\";\nimport { noop, isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters/v2\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { equals, isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\nimport { API_TEMPLATE_TYPE } from \"v2/components/Api/constants\";\nimport { DEFAULT_PAGE_PROPERTIES } from \"v2/components/constants\";\n\nimport { FILTER_COLUMNS, TEMPLATE_STATUS } from \"./constants\";\nimport Form from \"./Form\";\nimport { buildTableColumnData } from \"./utils\";\n\nimport { buildHelpPopoverProps } from \"../utils\";\n\nconst ApiTemplates = ({\n ownerId,\n breadcrumbs = [],\n helpPopoverProps = {},\n initialPayload = {},\n templateVariables = [],\n onMutationSuccess = noop,\n}) => {\n const { t } = useTranslation();\n\n const [pageParams, setPageParams] = useState(DEFAULT_PAGE_PROPERTIES);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [isFormPaneOpen, setIsFormPaneOpen] = useState(false);\n const [selectedApiTemplate, setSelectedApiTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n\n const setFocusField = useRef(null);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [filters, setFilters] = useState(() =>\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n\n const {\n data: { templates, totalCount } = {},\n isLoading,\n isFetching,\n } = useFetchTemplates({\n filters,\n page: pageParams.index,\n pageSize: pageParams.size,\n templateType: API_TEMPLATE_TYPE,\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n });\n\n const title = t(\"neetoMessageTemplate.template.apiTemplates\");\n\n const isFilterApplied = isNotEmpty(filters);\n\n const handleFiltersChange = filters => {\n setFilters(filters);\n setPageParams(DEFAULT_PAGE_PROPERTIES);\n };\n\n const { mutate: deleteTemplate, isPending: isDeleting } =\n useDeleteTemplate(ownerId);\n const { mutate: updateTemplate } = useUpdateTemplate(ownerId);\n\n const handleOpenEditPane = apiTemplate => {\n setSelectedApiTemplate(apiTemplate);\n setIsFormPaneOpen(true);\n };\n\n const handleOpenDeleteAlert = apiTemplate => {\n setSelectedApiTemplate(apiTemplate);\n setIsDeleteAlertOpen(true);\n };\n\n const handleCloseDeleteAlertAndFormPane = () => {\n setIsDeleteAlertOpen(false);\n setIsFormPaneOpen(false);\n setSelectedApiTemplate({});\n };\n\n const handleMarkAsActiveOrInactive = ({ status, id }) => {\n const newStatus = equals(status, TEMPLATE_STATUS.ACTIVE)\n ? TEMPLATE_STATUS.INACTIVE\n : TEMPLATE_STATUS.ACTIVE;\n\n updateTemplate(\n {\n payload: { status: newStatus, templateType: API_TEMPLATE_TYPE },\n id,\n },\n { onSuccess: onMutationSuccess }\n );\n };\n\n const handleDeleteApiTemplate = () =>\n deleteTemplate(selectedApiTemplate.id, {\n onSuccess: (...args) => {\n onMutationSuccess(...args);\n handleCloseDeleteAlertAndFormPane();\n },\n });\n\n const {\n apiTemplates: apiTemplatesHelpPopoverProps,\n customHeaders: customHeadersHelpPopoverProps,\n body: bodyHelpPopoverProps,\n } = buildHelpPopoverProps(helpPopoverProps);\n\n const helpDocUrl = apiTemplatesHelpPopoverProps?.helpLinkProps?.href || \"\";\n\n const noDataProps = {\n ...(!isFilterApplied && {\n primaryButtonProps: {\n label: t(\"neetoMessageTemplate.api.addApiTemplate\"),\n onClick: () => setIsFormPaneOpen(true),\n },\n helpText: (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.linkToHelpArticle\"\n values={{ entity: title }}\n components={{\n Link: <Button href={helpDocUrl} target=\"_blank\" variant=\"link\" />,\n }}\n />\n ),\n }),\n icon: Webhook,\n title: isFilterApplied\n ? t(\"neetoMessageTemplate.template.filtersEmptyState\", { type: title })\n : t(\"neetoMessageTemplate.template.emptyState\", { type: title }),\n };\n\n const shouldShowTemplatesCount =\n !isLoading && (isFilterApplied || totalCount > 0);\n\n return (\n <Container className=\"pb-10\">\n <Header\n {...{ breadcrumbs, title }}\n size=\"small\"\n actionBlock={\n <Button\n data-testid=\"add-api-templates-button\"\n label={t(\"neetoMessageTemplate.api.addApiTemplate\")}\n onClick={() => setIsFormPaneOpen(true)}\n />\n }\n searchProps={\n shouldShowTemplatesCount && {\n placeholder: t(\"neetoMessageTemplate.template.searchApiTemplates\"),\n \"data-testid\": \"api-templates-search-input\",\n }\n }\n titleHelpPopoverProps={\n apiTemplatesHelpPopoverProps && {\n ...apiTemplatesHelpPopoverProps,\n title: apiTemplatesHelpPopoverProps?.title || title,\n }\n }\n />\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n shouldShowTemplatesCount && (\n <Typography variant=\"h6\">\n {t(\"neetoMessageTemplate.template.messageTemplatesWithCount\", {\n type: t(\"messageType.api\"),\n count: totalCount,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n <SubHeader.RightBlock\n dataProps={{ totalCount: isFilterApplied ? null : totalCount }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFiltersPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFiltersPaneOpen}\n onChange={handleFiltersChange}\n />\n {isNotEmpty(templates) ? (\n <DataTable\n {...{ totalCount }}\n currentPage={pageParams.index}\n data={templates}\n enableURLPagination={false}\n loading={isLoading || isFetching}\n pageSize={pageParams.size}\n columns={buildTableColumnData({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n })}\n onPageChange={index =>\n setPageParams({ index, size: pageParams.size })\n }\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty {...noDataProps} />\n </div>\n )}\n <Sheet\n initialFocusRef={setFocusField}\n isOpen={isFormPaneOpen}\n size=\"large\"\n onClose={handleCloseDeleteAlertAndFormPane}\n >\n <Form\n {...{\n bodyHelpPopoverProps,\n customHeadersHelpPopoverProps,\n onMutationSuccess,\n ownerId,\n selectedApiTemplate,\n setFocusField,\n templateVariables,\n }}\n initialPayload={JSON.stringify(initialPayload, null, 2)}\n onClose={handleCloseDeleteAlertAndFormPane}\n />\n </Sheet>\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoMessageTemplate.template.delete\")}\n title={t(\"neetoMessageTemplate.api.deleteApiTemplate\")}\n message={\n <Trans\n i18nKey=\"neetoMessageTemplate.template.templateDeleteConfirmation\"\n values={{ name: selectedApiTemplate.name }}\n />\n }\n onClose={handleCloseDeleteAlertAndFormPane}\n onSubmit={handleDeleteApiTemplate}\n />\n </Container>\n );\n};\n\nexport default ApiTemplates;\n"],"names":["buildApiTemplatePayload","values","templateId","entity","id","endpoint","enableCustomHeaders","customHeaders","rejectEmptyKeyValuePairs","body","templateType","API_TEMPLATE_TYPE","name","buildTableColumnData","_ref","handleMarkAsActiveOrInactive","handleOpenDeleteAlert","handleOpenEditPane","accessorKey","header","t","size","cell","_ref2","apiTemplate","row","original","_jsxs","className","children","_jsx","Button","label","truncate","tooltipProps","content","variant","onClick","MoreDropdown","dropdownButtonProps","menuItems","key","equals","status","TEMPLATE_STATUS","ACTIVE","_ref3","getValue","buildApiTemplateInitialValues","isEdit","initialPayload","assoc","API_TEMPLATE_INITIAL_VALUES","isEmpty","CUSTOM_HEADERS_INITIAL_VALUE","_objectSpread","pick","Form","setFocusField","onClose","ownerId","selectedApiTemplate","onMutationSuccess","templateVariables","bodyHelpPopoverProps","customHeadersHelpPopoverProps","_useTranslation","useTranslation","_useCreateTemplate","useCreateTemplate","createApiTemplate","mutate","isCreating","isPending","_useUpdateTemplate","useUpdateTemplate","updateApiTemplate","isUpdating","isNotEmpty","handleSubmit","setSubmitting","payload","options","onSuccess","apply","arguments","onSettled","isMutating","initialValues","useMemo","_Fragment","Sheet","Header","Title","NeetoUIForm","formProps","formikProps","validationSchema","API_TEMPLATE_FORM_VALIDATION_SCHEMA","onSubmit","Body","Input","required","ref","placeholder","SAMPLE_URL","CustomHeaders","helpPopoverProps","JsonEditor","initialValue","Footer","ActionBlock","cancelButtonProps","isSubmitting","ApiTemplates","_apiTemplatesHelpPopo","_ref$breadcrumbs","breadcrumbs","_ref$helpPopoverProps","_ref$initialPayload","_ref$templateVariable","_ref$onMutationSucces","noop","_useState","useState","DEFAULT_PAGE_PROPERTIES","_useState2","_slicedToArray","pageParams","setPageParams","_useState3","_useState4","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState5","_useState6","isFormPaneOpen","setIsFormPaneOpen","_useState7","_useState8","setSelectedApiTemplate","_useState9","_useState0","isDeleteAlertOpen","setIsDeleteAlertOpen","useRef","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState1","buildFiltersFromURL","concat","_toConsumableArray","FILTER_COLUMNS","_useState10","filters","setFilters","_useFetchTemplates","useFetchTemplates","page","index","pageSize","undefined","_useFetchTemplates$da","data","_useFetchTemplates$da2","templates","totalCount","isLoading","isFetching","title","isFilterApplied","handleFiltersChange","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","updateTemplate","handleCloseDeleteAlertAndFormPane","newStatus","INACTIVE","handleDeleteApiTemplate","_buildHelpPopoverProp","buildHelpPopoverProps","apiTemplatesHelpPopoverProps","apiTemplates","helpDocUrl","helpLinkProps","href","noDataProps","primaryButtonProps","helpText","Trans","i18nKey","components","Link","target","icon","Webhook","type","shouldShowTemplatesCount","Container","actionBlock","searchProps","titleHelpPopoverProps","SubHeader","leftActionBlock","Typography","count","rightActionBlock","RightBlock","dataProps","filterProps","columns","isOpen","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","DataTable","currentPage","enableURLPagination","loading","onPageChange","Empty","initialFocusRef","JSON","stringify","Alert","submitButtonLabel","message"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ApiTemplates.js","sources":["../../../app/javascript/src/v2/components/Api/ApiTemplates/utils.jsx","../../../app/javascript/src/v2/components/Api/ApiTemplates/Form.jsx","../../../app/javascript/src/v2/components/Api/ApiTemplates/index.jsx"],"sourcesContent":["import { Button } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { truncate } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { assoc, equals, isEmpty, pick } from \"ramda\";\n\nimport {\n CUSTOM_HEADERS_INITIAL_VALUE,\n API_TEMPLATE_TYPE,\n} from \"v2/components/Api/constants\";\nimport { rejectEmptyKeyValuePairs } from \"v2/components/Api/utils\";\n\nimport { API_TEMPLATE_INITIAL_VALUES, TEMPLATE_STATUS } from \"./constants\";\n\nexport const buildApiTemplatePayload = (values, templateId) => ({\n entity: {\n id: templateId,\n endpoint: values.endpoint,\n enableCustomHeaders: values.enableCustomHeaders,\n customHeaders: rejectEmptyKeyValuePairs(values.customHeaders || []),\n body: values.body,\n },\n templateType: API_TEMPLATE_TYPE,\n name: values.name,\n});\n\nexport const buildTableColumnData = ({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n}) => [\n {\n accessorKey: \"name\",\n id: \"name\",\n header: t(\"neetoMessageTemplate.template.name\"),\n size: 200,\n cell: ({ row: { original: apiTemplate } }) => (\n <div className=\"flex min-w-0 items-center justify-between gap-x-3\">\n <div className=\"min-w-0 flex-1\">\n <Button\n className=\"max-w-full text-start [&>span]:block [&>span]:min-w-0 [&>span]:truncate\"\n data-testid=\"api-template-name-link\"\n label={truncate(apiTemplate.name, 100)}\n tooltipProps={{ content: apiTemplate.name }}\n variant=\"link\"\n onClick={() => handleOpenEditPane(apiTemplate)}\n />\n </div>\n <MoreDropdown\n dropdownButtonProps={{\n \"data-testid\": \"api-template-dropdown\",\n }}\n menuItems={[\n {\n key: \"edit\",\n label: t(\"neetoMessageTemplate.template.edit\"),\n \"data-testid\": \"api-template-button-edit-button\",\n onClick: () => handleOpenEditPane(apiTemplate),\n },\n {\n key: \"status\",\n label: equals(apiTemplate.status, TEMPLATE_STATUS.ACTIVE)\n ? t(\"neetoMessageTemplate.template.markAsInactive\")\n : t(\"neetoMessageTemplate.template.markAsActive\"),\n \"data-testid\": \"api-template-button-status-button\",\n onClick: () => handleMarkAsActiveOrInactive(apiTemplate),\n },\n {\n key: \"delete\",\n label: t(\"neetoMessageTemplate.template.delete\"),\n \"data-testid\": \"api-template-button-delete-button\",\n onClick: () => handleOpenDeleteAlert(apiTemplate),\n },\n ]}\n />\n </div>\n ),\n },\n {\n accessorKey: \"status\",\n id: \"status\",\n header: t(\"neetoMessageTemplate.template.active\"),\n cell: ({ getValue }) =>\n getValue() === \"active\"\n ? t(\"neetoMessageTemplate.yes\")\n : t(\"neetoMessageTemplate.no\"),\n size: 180,\n },\n];\n\nexport const buildApiTemplateInitialValues = (\n isEdit,\n apiTemplate,\n initialPayload\n) => {\n if (!isEdit) {\n return assoc(\"body\", initialPayload, API_TEMPLATE_INITIAL_VALUES);\n }\n\n const customHeaders = isEmpty(apiTemplate.customHeaders)\n ? [CUSTOM_HEADERS_INITIAL_VALUE]\n : apiTemplate.customHeaders;\n\n return {\n ...pick([\"name\", \"endpoint\", \"body\", \"enableCustomHeaders\"], apiTemplate),\n customHeaders,\n };\n};\n","import { useMemo } from \"react\";\n\nimport { Sheet } from \"@bigbinary/neeto-atoms\";\nimport {\n ActionBlock,\n Input,\n Form as NeetoUIForm,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport { isNotEmpty } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n useCreateTemplate,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\n\nimport { API_TEMPLATE_FORM_VALIDATION_SCHEMA, SAMPLE_URL } from \"./constants\";\nimport {\n buildApiTemplateInitialValues,\n buildApiTemplatePayload,\n} from \"./utils\";\n\nimport CustomHeaders from \"../CustomHeaders\";\nimport JsonEditor from \"../JsonEditor\";\n\nconst Form = ({\n setFocusField,\n onClose,\n ownerId,\n selectedApiTemplate,\n onMutationSuccess,\n initialPayload,\n templateVariables,\n bodyHelpPopoverProps,\n customHeadersHelpPopoverProps,\n}) => {\n const { t } = useTranslation();\n const { mutate: createApiTemplate, isPending: isCreating } =\n useCreateTemplate(ownerId);\n\n const { mutate: updateApiTemplate, isPending: isUpdating } =\n useUpdateTemplate(ownerId);\n\n const isEdit = isNotEmpty(selectedApiTemplate);\n\n const handleSubmit = (values, { setSubmitting }) => {\n const payload = buildApiTemplatePayload(values, selectedApiTemplate?.id);\n const options = {\n onSuccess: (...args) => {\n onMutationSuccess(...args);\n onClose();\n },\n onSettled: () => setSubmitting(false),\n };\n\n if (isEdit) {\n updateApiTemplate({ id: selectedApiTemplate.id, payload }, options);\n\n return;\n }\n\n createApiTemplate(payload, options);\n };\n\n const isMutating = isUpdating || isCreating;\n\n const initialValues = useMemo(\n () =>\n buildApiTemplateInitialValues(\n isEdit,\n selectedApiTemplate,\n initialPayload\n ),\n [isEdit, selectedApiTemplate, initialPayload]\n );\n\n return (\n <>\n <Sheet.Header>\n <Sheet.Title>\n {isEdit\n ? t(\"neetoMessageTemplate.api.editApiTemplate\")\n : t(\"neetoMessageTemplate.api.addApiTemplate\")}\n </Sheet.Title>\n </Sheet.Header>\n <NeetoUIForm\n formProps={{ className: \"flex min-h-0 flex-1 flex-col\" }}\n formikProps={{\n initialValues,\n validationSchema: API_TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Sheet.Body>\n <div className=\"w-full space-y-5 mb-10\">\n <Input\n required\n label={t(\"neetoMessageTemplate.template.name\")}\n name=\"name\"\n ref={setFocusField}\n />\n <Input\n required\n label={t(\"neetoMessageTemplate.api.endpoint\")}\n name=\"endpoint\"\n placeholder={SAMPLE_URL}\n />\n <CustomHeaders helpPopoverProps={customHeadersHelpPopoverProps} />\n <JsonEditor\n {...{ templateVariables }}\n helpPopoverProps={bodyHelpPopoverProps}\n initialValue={initialValues.body}\n name=\"body\"\n />\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isMutating}\n />\n </Sheet.Footer>\n </NeetoUIForm>\n </>\n );\n};\n\nexport default Form;\n","import { useRef, useState } from \"react\";\n\nimport {\n Alert,\n Button,\n DataTable,\n Empty,\n Sheet,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { Webhook } from \"lucide-react\";\nimport { noop, isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/v2/react-utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters/v2\";\nimport Container from \"neetomolecules/v2/Container\";\nimport Header from \"neetomolecules/v2/Header\";\nimport SubHeader from \"neetomolecules/v2/SubHeader\";\nimport { equals, isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\nimport { API_TEMPLATE_TYPE } from \"v2/components/Api/constants\";\nimport { DEFAULT_PAGE_PROPERTIES } from \"v2/components/constants\";\n\nimport { FILTER_COLUMNS, TEMPLATE_STATUS } from \"./constants\";\nimport Form from \"./Form\";\nimport { buildTableColumnData } from \"./utils\";\n\nimport { buildHelpPopoverProps } from \"../utils\";\n\nconst ApiTemplates = ({\n ownerId,\n breadcrumbs = [],\n helpPopoverProps = {},\n initialPayload = {},\n templateVariables = [],\n onMutationSuccess = noop,\n paneSize = \"large\",\n}) => {\n const { t } = useTranslation();\n\n const [pageParams, setPageParams] = useState(DEFAULT_PAGE_PROPERTIES);\n const [isFiltersPaneOpen, setIsFiltersPaneOpen] = useState(false);\n const [isFormPaneOpen, setIsFormPaneOpen] = useState(false);\n const [selectedApiTemplate, setSelectedApiTemplate] = useState({});\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n\n const setFocusField = useRef(null);\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const searchKeywordProps = {\n key: \"search_term\",\n node: \"name\",\n value: searchTerm,\n };\n\n const [filters, setFilters] = useState(() =>\n buildFiltersFromURL([...FILTER_COLUMNS, searchKeywordProps])\n );\n\n const {\n data: { templates, totalCount } = {},\n isLoading,\n isFetching,\n } = useFetchTemplates({\n filters,\n page: pageParams.index,\n pageSize: pageParams.size,\n templateType: API_TEMPLATE_TYPE,\n ownerId: isEmpty(ownerId) ? undefined : ownerId,\n });\n\n const title = t(\"neetoMessageTemplate.template.apiTemplates\");\n\n const isFilterApplied = isNotEmpty(filters);\n\n const handleFiltersChange = filters => {\n setFilters(filters);\n setPageParams(DEFAULT_PAGE_PROPERTIES);\n };\n\n const { mutate: deleteTemplate, isPending: isDeleting } =\n useDeleteTemplate(ownerId);\n const { mutate: updateTemplate } = useUpdateTemplate(ownerId);\n\n const handleOpenEditPane = apiTemplate => {\n setSelectedApiTemplate(apiTemplate);\n setIsFormPaneOpen(true);\n };\n\n const handleOpenDeleteAlert = apiTemplate => {\n setSelectedApiTemplate(apiTemplate);\n setIsDeleteAlertOpen(true);\n };\n\n const handleCloseDeleteAlertAndFormPane = () => {\n setIsDeleteAlertOpen(false);\n setIsFormPaneOpen(false);\n setSelectedApiTemplate({});\n };\n\n const handleMarkAsActiveOrInactive = ({ status, id }) => {\n const newStatus = equals(status, TEMPLATE_STATUS.ACTIVE)\n ? TEMPLATE_STATUS.INACTIVE\n : TEMPLATE_STATUS.ACTIVE;\n\n updateTemplate(\n {\n payload: { status: newStatus, templateType: API_TEMPLATE_TYPE },\n id,\n },\n { onSuccess: onMutationSuccess }\n );\n };\n\n const handleDeleteApiTemplate = () =>\n deleteTemplate(selectedApiTemplate.id, {\n onSuccess: (...args) => {\n onMutationSuccess(...args);\n handleCloseDeleteAlertAndFormPane();\n },\n });\n\n const {\n apiTemplates: apiTemplatesHelpPopoverProps,\n customHeaders: customHeadersHelpPopoverProps,\n body: bodyHelpPopoverProps,\n } = buildHelpPopoverProps(helpPopoverProps);\n\n const helpDocUrl = apiTemplatesHelpPopoverProps?.helpLinkProps?.href || \"\";\n\n const noDataProps = {\n ...(!isFilterApplied && {\n primaryButtonProps: {\n label: t(\"neetoMessageTemplate.api.addApiTemplate\"),\n onClick: () => setIsFormPaneOpen(true),\n },\n helpText: (\n <Trans\n i18nKey=\"neetoMessageTemplate.template.linkToHelpArticle\"\n values={{ entity: title }}\n components={{\n Link: <Button href={helpDocUrl} target=\"_blank\" variant=\"link\" />,\n }}\n />\n ),\n }),\n icon: Webhook,\n title: isFilterApplied\n ? t(\"neetoMessageTemplate.template.filtersEmptyState\", { type: title })\n : t(\"neetoMessageTemplate.template.emptyState\", { type: title }),\n };\n\n const shouldShowTemplatesCount =\n !isLoading && (isFilterApplied || totalCount > 0);\n\n return (\n <Container className=\"pb-10\">\n <Header\n {...{ breadcrumbs, title }}\n size=\"small\"\n actionBlock={\n <Button\n data-testid=\"add-api-templates-button\"\n label={t(\"neetoMessageTemplate.api.addApiTemplate\")}\n onClick={() => setIsFormPaneOpen(true)}\n />\n }\n searchProps={\n shouldShowTemplatesCount && {\n placeholder: t(\"neetoMessageTemplate.template.searchApiTemplates\"),\n \"data-testid\": \"api-templates-search-input\",\n }\n }\n titleHelpPopoverProps={\n apiTemplatesHelpPopoverProps && {\n ...apiTemplatesHelpPopoverProps,\n title: apiTemplatesHelpPopoverProps?.title || title,\n }\n }\n />\n <SubHeader\n className=\"mb-4\"\n leftActionBlock={\n shouldShowTemplatesCount && (\n <Typography variant=\"h6\">\n {t(\"neetoMessageTemplate.template.messageTemplatesWithCount\", {\n type: t(\"messageType.api\"),\n count: totalCount,\n })}\n </Typography>\n )\n }\n rightActionBlock={\n <SubHeader.RightBlock\n dataProps={{ totalCount: isFilterApplied ? null : totalCount }}\n filterProps={{\n columns: FILTER_COLUMNS,\n isOpen: isFiltersPaneOpen,\n keyword: searchKeywordProps,\n setIsOpen: setIsFiltersPaneOpen,\n onChange: handleFiltersChange,\n }}\n />\n }\n />\n <FiltersBar\n columns={FILTER_COLUMNS}\n keyword={searchKeywordProps}\n setIsPaneOpen={setIsFiltersPaneOpen}\n onChange={handleFiltersChange}\n />\n {isNotEmpty(templates) ? (\n <DataTable\n {...{ totalCount }}\n currentPage={pageParams.index}\n data={templates}\n enableURLPagination={false}\n loading={isLoading || isFetching}\n pageSize={pageParams.size}\n columns={buildTableColumnData({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n })}\n onPageChange={index =>\n setPageParams({ index, size: pageParams.size })\n }\n />\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty {...noDataProps} />\n </div>\n )}\n <Sheet\n initialFocusRef={setFocusField}\n isOpen={isFormPaneOpen}\n size={paneSize}\n onClose={handleCloseDeleteAlertAndFormPane}\n >\n <Form\n {...{\n bodyHelpPopoverProps,\n customHeadersHelpPopoverProps,\n onMutationSuccess,\n ownerId,\n selectedApiTemplate,\n setFocusField,\n templateVariables,\n }}\n initialPayload={JSON.stringify(initialPayload, null, 2)}\n onClose={handleCloseDeleteAlertAndFormPane}\n />\n </Sheet>\n <Alert\n isOpen={isDeleteAlertOpen}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoMessageTemplate.template.delete\")}\n title={t(\"neetoMessageTemplate.api.deleteApiTemplate\")}\n message={\n <Trans\n i18nKey=\"neetoMessageTemplate.template.templateDeleteConfirmation\"\n values={{ name: selectedApiTemplate.name }}\n />\n }\n onClose={handleCloseDeleteAlertAndFormPane}\n onSubmit={handleDeleteApiTemplate}\n />\n </Container>\n );\n};\n\nexport default ApiTemplates;\n"],"names":["buildApiTemplatePayload","values","templateId","entity","id","endpoint","enableCustomHeaders","customHeaders","rejectEmptyKeyValuePairs","body","templateType","API_TEMPLATE_TYPE","name","buildTableColumnData","_ref","handleMarkAsActiveOrInactive","handleOpenDeleteAlert","handleOpenEditPane","accessorKey","header","t","size","cell","_ref2","apiTemplate","row","original","_jsxs","className","children","_jsx","Button","label","truncate","tooltipProps","content","variant","onClick","MoreDropdown","dropdownButtonProps","menuItems","key","equals","status","TEMPLATE_STATUS","ACTIVE","_ref3","getValue","buildApiTemplateInitialValues","isEdit","initialPayload","assoc","API_TEMPLATE_INITIAL_VALUES","isEmpty","CUSTOM_HEADERS_INITIAL_VALUE","_objectSpread","pick","Form","setFocusField","onClose","ownerId","selectedApiTemplate","onMutationSuccess","templateVariables","bodyHelpPopoverProps","customHeadersHelpPopoverProps","_useTranslation","useTranslation","_useCreateTemplate","useCreateTemplate","createApiTemplate","mutate","isCreating","isPending","_useUpdateTemplate","useUpdateTemplate","updateApiTemplate","isUpdating","isNotEmpty","handleSubmit","setSubmitting","payload","options","onSuccess","apply","arguments","onSettled","isMutating","initialValues","useMemo","_Fragment","Sheet","Header","Title","NeetoUIForm","formProps","formikProps","validationSchema","API_TEMPLATE_FORM_VALIDATION_SCHEMA","onSubmit","Body","Input","required","ref","placeholder","SAMPLE_URL","CustomHeaders","helpPopoverProps","JsonEditor","initialValue","Footer","ActionBlock","cancelButtonProps","isSubmitting","ApiTemplates","_apiTemplatesHelpPopo","_ref$breadcrumbs","breadcrumbs","_ref$helpPopoverProps","_ref$initialPayload","_ref$templateVariable","_ref$onMutationSucces","noop","_ref$paneSize","paneSize","_useState","useState","DEFAULT_PAGE_PROPERTIES","_useState2","_slicedToArray","pageParams","setPageParams","_useState3","_useState4","isFiltersPaneOpen","setIsFiltersPaneOpen","_useState5","_useState6","isFormPaneOpen","setIsFormPaneOpen","_useState7","_useState8","setSelectedApiTemplate","_useState9","_useState0","isDeleteAlertOpen","setIsDeleteAlertOpen","useRef","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState1","buildFiltersFromURL","concat","_toConsumableArray","FILTER_COLUMNS","_useState10","filters","setFilters","_useFetchTemplates","useFetchTemplates","page","index","pageSize","undefined","_useFetchTemplates$da","data","_useFetchTemplates$da2","templates","totalCount","isLoading","isFetching","title","isFilterApplied","handleFiltersChange","_useDeleteTemplate","useDeleteTemplate","deleteTemplate","isDeleting","updateTemplate","handleCloseDeleteAlertAndFormPane","newStatus","INACTIVE","handleDeleteApiTemplate","_buildHelpPopoverProp","buildHelpPopoverProps","apiTemplatesHelpPopoverProps","apiTemplates","helpDocUrl","helpLinkProps","href","noDataProps","primaryButtonProps","helpText","Trans","i18nKey","components","Link","target","icon","Webhook","type","shouldShowTemplatesCount","Container","actionBlock","searchProps","titleHelpPopoverProps","SubHeader","leftActionBlock","Typography","count","rightActionBlock","RightBlock","dataProps","filterProps","columns","isOpen","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","DataTable","currentPage","enableURLPagination","loading","onPageChange","Empty","initialFocusRef","JSON","stringify","Alert","submitButtonLabel","message"],"mappings":"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"}
|