@bigbinary/neeto-message-templates-frontend 2.0.12 → 2.0.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +36 -3
  2. package/dist/.ready +1 -1
  3. package/dist/ApiTemplates.js +4 -2
  4. package/dist/ApiTemplates.js.map +1 -1
  5. package/dist/MessageTemplates.js +35 -8
  6. package/dist/MessageTemplates.js.map +1 -1
  7. package/dist/SendMessagePane.js +9 -2
  8. package/dist/SendMessagePane.js.map +1 -1
  9. package/dist/SendToApiPane.js +4 -2
  10. package/dist/SendToApiPane.js.map +1 -1
  11. package/dist/cjs/ApiTemplates.js +4 -2
  12. package/dist/cjs/ApiTemplates.js.map +1 -1
  13. package/dist/cjs/MessageTemplates.js +34 -7
  14. package/dist/cjs/MessageTemplates.js.map +1 -1
  15. package/dist/cjs/SendMessagePane.js +9 -2
  16. package/dist/cjs/SendMessagePane.js.map +1 -1
  17. package/dist/cjs/SendToApiPane.js +4 -2
  18. package/dist/cjs/SendToApiPane.js.map +1 -1
  19. package/dist/cjs/index.js +1 -1
  20. package/dist/cjs/v2/ApiTemplates.js +4 -2
  21. package/dist/cjs/v2/ApiTemplates.js.map +1 -1
  22. package/dist/cjs/v2/MessageTemplates.js +31 -7
  23. package/dist/cjs/v2/MessageTemplates.js.map +1 -1
  24. package/dist/cjs/v2/SendMessagePane.js +9 -3
  25. package/dist/cjs/v2/SendMessagePane.js.map +1 -1
  26. package/dist/cjs/v2/SendToApiPane.js +4 -2
  27. package/dist/cjs/v2/SendToApiPane.js.map +1 -1
  28. package/dist/cjs/v2/index.js +1 -1
  29. package/dist/index.js +1 -1
  30. package/dist/v2/ApiTemplates.js +4 -2
  31. package/dist/v2/ApiTemplates.js.map +1 -1
  32. package/dist/v2/MessageTemplates.js +32 -8
  33. package/dist/v2/MessageTemplates.js.map +1 -1
  34. package/dist/v2/SendMessagePane.js +9 -3
  35. package/dist/v2/SendMessagePane.js.map +1 -1
  36. package/dist/v2/SendToApiPane.js +4 -2
  37. package/dist/v2/SendToApiPane.js.map +1 -1
  38. package/dist/v2/index.js +1 -1
  39. package/package.json +3 -3
  40. package/types.d.ts +8 -0
package/README.md CHANGED
@@ -116,8 +116,15 @@ along with filtering and search capabilities.
116
116
  button should be enabled or not.
117
117
  - `manageTemplatesPaneCustomFields`: To add custom components to the manage
118
118
  templates pane.
119
+ - `customFieldsBelowBody`: Adds a custom field component to the manage templates
120
+ pane and renders it below the body.
121
+ - `customFieldsInitialValues`: To provide initial values for the custom fields.
122
+ - `customFieldsValidationSchema`: To provide validation schema for the custom
123
+ fields.
119
124
  - `onMutationSuccess`: The callback function which is triggered on the success
120
125
  of mutation functions(create, update & delete).
126
+ - `paneSize`: Determines the size of the pane. Defaults to `"large"`. Accepted
127
+ values are `"small"`, `"large"`, or `"extraLarge"`.
121
128
  - `helpPopoverProps`: To add help popover for the component. Refer
122
129
  [HelpPopover component doc](https://neeto-molecules.neeto.com/?path=/docs/helppopover--docs).
123
130
  NOTE: `href` from `helpLinkProps` will be used for displaying the help doc
@@ -150,6 +157,9 @@ const App = () => {
150
157
  label: "Name",
151
158
  },
152
159
  ];
160
+ const customFieldsBelowBody = () => (
161
+ <Typography>This will render below body</Typography>
162
+ );
153
163
 
154
164
  const manageTemplatesPaneCustomFields = () => (
155
165
  <Callout icon={Warning} style="warning">
@@ -166,6 +176,7 @@ const App = () => {
166
176
  isTestMessageLoading={isTestMessageLoading}
167
177
  templateVariables={TEMPLATE_VARIABLES}
168
178
  type={type}
179
+ customFieldsBelowBody={customFieldsBelowBody()}
169
180
  isTestingTemplateDisabled={isTestingTemplateDisabled}
170
181
  manageTemplatesPaneCustomFields={manageTemplatesPaneCustomFields()}
171
182
  onMutationSuccess={() =>
@@ -190,10 +201,14 @@ to compose and send messages.
190
201
  - `handleSubmit`: The function within the host app used to send SMS and email.
191
202
  - `type`: Represents the type of message, with accepted values of `email`,
192
203
  `sms`, or `whatsapp`.
204
+ - `paneSize`: Determines the size of the pane. Defaults to `"large"`. Accepted
205
+ values are `"small"`, `"large"`, or `"extraLarge"`.
193
206
 
194
207
  ##### Optional Props
195
208
 
196
209
  - `customFields`: To add custom field component to the pane.
210
+ - `customFieldsBelowBody`: Adds a custom field component to the pane and renders
211
+ it below the body in `EmailAndSms`.
197
212
  - `customFieldsInitialValues`: To provide initial values for the custom fields.
198
213
  - `customFieldsValidationSchema`: To provide validation schema for the custom
199
214
  fields.
@@ -230,9 +245,20 @@ const App = () => {
230
245
  </div>
231
246
  );
232
247
 
248
+ const customFieldsBelowBody = () => (
249
+ <div className="space-y-4">
250
+ <Input label="CC" name="cc" placeholder="Enter CC email" />
251
+ <Input label="BCC" name="bcc" placeholder="Enter BCC email" />
252
+ <Input label="Reply To" name="replyTo" placeholder="Enter reply-to email" />
253
+ </div>
254
+ );
255
+
233
256
  const customFieldsInitialValues = {
234
257
  to: "",
235
258
  from: "",
259
+ cc: "",
260
+ bcc: "",
261
+ replyTo: "",
236
262
  };
237
263
 
238
264
  const customFieldsSchema = yup.object().shape({
@@ -242,6 +268,9 @@ const App = () => {
242
268
  .trim()
243
269
  .required("From address is required")
244
270
  .email("invalid"),
271
+ cc: yup.string().trim().email("Invalid email"),
272
+ bcc: yup.string().trim().email("Invalid email"),
273
+ replyTo: yup.string().trim().email("Invalid email"),
245
274
  });
246
275
 
247
276
  const helpPopoverProps = {
@@ -277,12 +306,14 @@ const App = () => {
277
306
  <SendMessagePane
278
307
  handleSubmit={handleSubmit}
279
308
  isOpen={isPaneOpen}
309
+ paneSize="extraLarge"
280
310
  type={type}
281
311
  onClose={() => setIsPaneOpen(false)}
282
312
  customFields={customFields()}
313
+ customFieldsBelowBody={customFieldsBelowBody()}
283
314
  customFieldsInitialValues={customFieldsInitialValues}
284
315
  customFieldsValidationSchema={customFieldsSchema}
285
- helpPopoverProps
316
+ helpPopoverProps={helpPopoverProps}
286
317
  />
287
318
  );
288
319
  };
@@ -306,8 +337,9 @@ filtering and search capabilities.
306
337
  of mutation functions(create, update & delete).
307
338
  - `initialPayload`: To specify the initial value of the body as an object.
308
339
  - `templateVariables`: To add dynamic variables to body field.
340
+ - `paneSize`: Determines the size of the pane. Defaults to `"large"`. Accepted
341
+ values are `"small"`, `"large"`, or `"extraLarge"`.
309
342
  - `helpPopoverProps` - To add help popovers to various sections.
310
-
311
343
  - **Header**: Define popover props under `apiTemplates`. NOTE: `href` from
312
344
  `helpLinkProps` will be used for displaying the help doc link in `NoData`
313
345
  component. Header title will be used as the help popover title if no title
@@ -380,8 +412,9 @@ it if needed and send the data to the specified HTTP(S) endpoint.
380
412
  - `canManageTemplates` - When this is set to false, `save as template` option
381
413
  won't be displayed to users.
382
414
  - `templateVariables`: To add dynamic variables to body field.
415
+ - `paneSize`: Determines the size of the pane. Defaults to `"large"`. Accepted
416
+ values are `"small"`, `"large"`, or `"extraLarge"`.
383
417
  - `helpPopoverProps` - To add help popovers to various sections in the pane.
384
-
385
418
  - **Pane title**: Define popover props under `sendToApi`.
386
419
  - **Custom headers**: Define popover props under `customHeaders`.
387
420
  - **Body**: Define popover props under `body`.
package/dist/.ready CHANGED
@@ -1 +1 @@
1
- Built at 2026-08-11T08:37:53.619Z
1
+ Built at 2026-08-18T14:08:25.881Z
@@ -237,7 +237,9 @@ var ApiTemplates = function ApiTemplates(_ref) {
237
237
  _ref$templateVariable = _ref.templateVariables,
238
238
  templateVariables = _ref$templateVariable === void 0 ? [] : _ref$templateVariable,
239
239
  _ref$onMutationSucces = _ref.onMutationSuccess,
240
- onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces;
240
+ onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces,
241
+ _ref$paneSize = _ref.paneSize,
242
+ paneSize = _ref$paneSize === void 0 ? "large" : _ref$paneSize;
241
243
  var _useTranslation = useTranslation(),
242
244
  t = _useTranslation.t;
243
245
  var _useState = useState(DEFAULT_PAGE_PROPERTIES),
@@ -437,7 +439,7 @@ var ApiTemplates = function ApiTemplates(_ref) {
437
439
  children: /*#__PURE__*/jsx(NoData, _objectSpread({}, noDataProps))
438
440
  }), /*#__PURE__*/jsx(Pane, {
439
441
  isOpen: isFormPaneOpen,
440
- size: "large",
442
+ size: paneSize,
441
443
  onClose: handleCloseDeleteAlertAndFormPane,
442
444
  children: function children(_ref3) {
443
445
  var setFocusField = _ref3.setFocusField;
@@ -1 +1 @@
1
- {"version":3,"file":"ApiTemplates.js","sources":["../app/javascript/src/components/Api/ApiTemplates/utils.jsx","../app/javascript/src/components/Api/ApiTemplates/Form.jsx","../app/javascript/src/components/Api/ApiTemplates/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { truncate } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Button } from \"neetoui\";\nimport { assoc, equals, isEmpty, pick } from \"ramda\";\n\nimport {\n CUSTOM_HEADERS_INITIAL_VALUE,\n API_TEMPLATE_TYPE,\n} from \"components/Api/constants\";\nimport { rejectEmptyKeyValuePairs } from \"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 dataIndex: \"name\",\n key: \"name\",\n title: t(\"neetoMessageTemplate.template.name\"),\n width: 200,\n render: (name, apiTemplate) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-testid=\"api-template-name-link\"\n label={truncate(name, 100)}\n style=\"link\"\n onClick={() => handleOpenEditPane(apiTemplate)}\n />\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\", appendTo: () => document.body }}\n dropdownButtonProps={{\n \"data-testid\": \"api-template-dropdown\",\n className: \"me-1 my-1\",\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 dataIndex: \"status\",\n key: \"status\",\n title: t(\"neetoMessageTemplate.template.active\"),\n render: status =>\n status === \"active\"\n ? t(\"neetoMessageTemplate.yes\")\n : t(\"neetoMessageTemplate.no\"),\n width: 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 { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Input, Form as NeetoUIForm } from \"neetoui/formik\";\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 <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoMessageTemplate.api.editApiTemplate\")\n : t(\"neetoMessageTemplate.api.addApiTemplate\")}\n </Typography>\n </Pane.Header>\n <NeetoUIForm\n formikProps={{\n initialValues,\n validationSchema: API_TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.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 </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isMutating}\n />\n </Pane.Footer>\n </NeetoUIForm>\n </>\n );\n};\n\nexport default Form;\n","import { useState } from \"react\";\n\nimport { noop, isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Button, NoData, Pane, Table, Typography } from \"neetoui\";\nimport { equals, isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { API_TEMPLATE_TYPE } from \"components/Api/constants\";\nimport { DEFAULT_PAGE_PROPERTIES } from \"components/constants\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\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 { 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} style=\"link\" target=\"_blank\" />,\n }}\n />\n ),\n }),\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>\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 component=\"h4\">\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 <TableWrapper hasPagination={totalCount > pageParams.size}>\n <Table\n {...{ totalCount }}\n fixedHeight\n currentPageNumber={pageParams.index}\n defaultPageSize={pageParams.size}\n handlePageChange={(index, size) => setPageParams({ index, size })}\n loading={isLoading || isFetching}\n rowData={templates}\n columnData={buildTableColumnData({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n })}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData {...noDataProps} />\n </div>\n )}\n <Pane\n isOpen={isFormPaneOpen}\n size=\"large\"\n onClose={handleCloseDeleteAlertAndFormPane}\n >\n {({ setFocusField }) => (\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 )}\n </Pane>\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","dataIndex","key","title","t","width","render","apiTemplate","_jsxs","className","children","_jsx","Button","label","truncate","style","onClick","MoreDropdown","dropdownProps","strategy","appendTo","document","dropdownButtonProps","menuItems","equals","status","TEMPLATE_STATUS","ACTIVE","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","_ref2","setSubmitting","payload","options","onSuccess","apply","arguments","onSettled","isMutating","initialValues","useMemo","_Fragment","Pane","Header","Typography","weight","NeetoUIForm","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","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState1","buildFiltersFromURL","concat","_toConsumableArray","FILTER_COLUMNS","_useState10","filters","setFilters","_useFetchTemplates","useFetchTemplates","page","index","pageSize","size","undefined","_useFetchTemplates$da","data","_useFetchTemplates$da2","templates","totalCount","isLoading","isFetching","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","type","shouldShowTemplatesCount","Container","actionBlock","searchProps","titleHelpPopoverProps","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","dataProps","filterProps","columns","isOpen","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","TableWrapper","hasPagination","Table","fixedHeight","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","columnData","NoData","_ref3","JSON","stringify","Alert","submitButtonLabel","message"],"mappings":"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"}
1
+ {"version":3,"file":"ApiTemplates.js","sources":["../app/javascript/src/components/Api/ApiTemplates/utils.jsx","../app/javascript/src/components/Api/ApiTemplates/Form.jsx","../app/javascript/src/components/Api/ApiTemplates/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { truncate } from \"neetocist\";\nimport MoreDropdown from \"neetomolecules/MoreDropdown\";\nimport { Button } from \"neetoui\";\nimport { assoc, equals, isEmpty, pick } from \"ramda\";\n\nimport {\n CUSTOM_HEADERS_INITIAL_VALUE,\n API_TEMPLATE_TYPE,\n} from \"components/Api/constants\";\nimport { rejectEmptyKeyValuePairs } from \"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 dataIndex: \"name\",\n key: \"name\",\n title: t(\"neetoMessageTemplate.template.name\"),\n width: 200,\n render: (name, apiTemplate) => (\n <div className=\"flex items-center justify-between gap-x-3\">\n <Button\n data-testid=\"api-template-name-link\"\n label={truncate(name, 100)}\n style=\"link\"\n onClick={() => handleOpenEditPane(apiTemplate)}\n />\n <MoreDropdown\n dropdownProps={{ strategy: \"fixed\", appendTo: () => document.body }}\n dropdownButtonProps={{\n \"data-testid\": \"api-template-dropdown\",\n className: \"me-1 my-1\",\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 dataIndex: \"status\",\n key: \"status\",\n title: t(\"neetoMessageTemplate.template.active\"),\n render: status =>\n status === \"active\"\n ? t(\"neetoMessageTemplate.yes\")\n : t(\"neetoMessageTemplate.no\"),\n width: 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 { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography } from \"neetoui\";\nimport { ActionBlock, Input, Form as NeetoUIForm } from \"neetoui/formik\";\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 <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {isEdit\n ? t(\"neetoMessageTemplate.api.editApiTemplate\")\n : t(\"neetoMessageTemplate.api.addApiTemplate\")}\n </Typography>\n </Pane.Header>\n <NeetoUIForm\n formikProps={{\n initialValues,\n validationSchema: API_TEMPLATE_FORM_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n <Pane.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 </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n cancelButtonProps={{ onClick: onClose }}\n isSubmitting={isMutating}\n />\n </Pane.Footer>\n </NeetoUIForm>\n </>\n );\n};\n\nexport default Form;\n","import { useState } from \"react\";\n\nimport { noop, isNotEmpty } from \"neetocist\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { Bar as FiltersBar, buildFiltersFromURL } from \"neetofilters\";\nimport Container from \"neetomolecules/Container\";\nimport Header from \"neetomolecules/Header\";\nimport SubHeader from \"neetomolecules/SubHeader\";\nimport TableWrapper from \"neetomolecules/TableWrapper\";\nimport { Alert, Button, NoData, Pane, Table, Typography } from \"neetoui\";\nimport { equals, isEmpty } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { API_TEMPLATE_TYPE } from \"components/Api/constants\";\nimport { DEFAULT_PAGE_PROPERTIES } from \"components/constants\";\nimport {\n useDeleteTemplate,\n useFetchTemplates,\n useUpdateTemplate,\n} from \"hooks/reactQuery/useTemplatesApi\";\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 { 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} style=\"link\" target=\"_blank\" />,\n }}\n />\n ),\n }),\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>\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 component=\"h4\">\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 <TableWrapper hasPagination={totalCount > pageParams.size}>\n <Table\n {...{ totalCount }}\n fixedHeight\n currentPageNumber={pageParams.index}\n defaultPageSize={pageParams.size}\n handlePageChange={(index, size) => setPageParams({ index, size })}\n loading={isLoading || isFetching}\n rowData={templates}\n columnData={buildTableColumnData({\n handleMarkAsActiveOrInactive,\n handleOpenDeleteAlert,\n handleOpenEditPane,\n })}\n />\n </TableWrapper>\n ) : (\n <div className=\"flex h-full w-full items-center justify-center\">\n <NoData {...noDataProps} />\n </div>\n )}\n <Pane\n isOpen={isFormPaneOpen}\n size={paneSize}\n onClose={handleCloseDeleteAlertAndFormPane}\n >\n {({ setFocusField }) => (\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 )}\n </Pane>\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","dataIndex","key","title","t","width","render","apiTemplate","_jsxs","className","children","_jsx","Button","label","truncate","style","onClick","MoreDropdown","dropdownProps","strategy","appendTo","document","dropdownButtonProps","menuItems","equals","status","TEMPLATE_STATUS","ACTIVE","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","_ref2","setSubmitting","payload","options","onSuccess","apply","arguments","onSettled","isMutating","initialValues","useMemo","_Fragment","Pane","Header","Typography","weight","NeetoUIForm","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","_useQueryParams","useQueryParams","_useQueryParams$searc","searchTerm","searchKeywordProps","node","value","_useState1","buildFiltersFromURL","concat","_toConsumableArray","FILTER_COLUMNS","_useState10","filters","setFilters","_useFetchTemplates","useFetchTemplates","page","index","pageSize","size","undefined","_useFetchTemplates$da","data","_useFetchTemplates$da2","templates","totalCount","isLoading","isFetching","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","type","shouldShowTemplatesCount","Container","actionBlock","searchProps","titleHelpPopoverProps","SubHeader","leftActionBlock","component","count","rightActionBlock","RightBlock","dataProps","filterProps","columns","isOpen","keyword","setIsOpen","onChange","FiltersBar","setIsPaneOpen","TableWrapper","hasPagination","Table","fixedHeight","currentPageNumber","defaultPageSize","handlePageChange","loading","rowData","columnData","NoData","_ref3","JSON","stringify","Alert","submitButtonLabel","message"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAcO,IAAMA,uBAAuB,GAAG,SAA1BA,uBAAuBA,CAAIC,MAAM,EAAEC,UAAU,EAAA;EAAA,OAAM;AAC9DC,IAAAA,MAAM,EAAE;AACNC,MAAAA,EAAE,EAAEF,UAAU;MACdG,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;MACzBC,mBAAmB,EAAEL,MAAM,CAACK,mBAAmB;MAC/CC,aAAa,EAAEC,wBAAwB,CAACP,MAAM,CAACM,aAAa,IAAI,EAAE,CAAC;MACnEE,IAAI,EAAER,MAAM,CAACQ;KACd;AACDC,IAAAA,YAAY,EAAEC,iBAAiB;IAC/BC,IAAI,EAAEX,MAAM,CAACW;GACd;AAAA,CAAC;AAEK,IAAMC,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAC/BC,4BAA4B,GAAAD,IAAA,CAA5BC,4BAA4B;IAC5BC,qBAAqB,GAAAF,IAAA,CAArBE,qBAAqB;IACrBC,kBAAkB,GAAAH,IAAA,CAAlBG,kBAAkB;AAAA,EAAA,OACd,CACJ;AACEC,IAAAA,SAAS,EAAE,MAAM;AACjBC,IAAAA,GAAG,EAAE,MAAM;AACXC,IAAAA,KAAK,EAAEC,CAAC,CAAC,oCAAoC,CAAC;AAC9CC,IAAAA,KAAK,EAAE,GAAG;AACVC,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAGX,IAAI,EAAEY,WAAW,EAAA;AAAA,MAAA,oBACxBC,IAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,2CAA2C;QAAAC,QAAA,EAAA,cACxDC,GAAA,CAACC,MAAM,EAAA;AACL,UAAA,aAAA,EAAY,wBAAwB;AACpCC,UAAAA,KAAK,EAAEC,QAAQ,CAACnB,IAAI,EAAE,GAAG,CAAE;AAC3BoB,UAAAA,KAAK,EAAC,MAAM;UACZC,OAAO,EAAE,SAATA,OAAOA,GAAA;YAAA,OAAQhB,kBAAkB,CAACO,WAAW,CAAC;AAAA,UAAA;AAAC,SAChD,CAAC,eACFI,GAAA,CAACM,YAAY,EAAA;AACXC,UAAAA,aAAa,EAAE;AAAEC,YAAAA,QAAQ,EAAE,OAAO;YAAEC,QAAQ,EAAE,SAAVA,QAAQA,GAAA;cAAA,OAAQC,QAAQ,CAAC7B,IAAI;AAAA,YAAA;WAAG;AACpE8B,UAAAA,mBAAmB,EAAE;AACnB,YAAA,aAAa,EAAE,uBAAuB;AACtCb,YAAAA,SAAS,EAAE;WACX;AACFc,UAAAA,SAAS,EAAE,CACT;AACErB,YAAAA,GAAG,EAAE,MAAM;AACXW,YAAAA,KAAK,EAAET,CAAC,CAAC,oCAAoC,CAAC;AAC9C,YAAA,aAAa,EAAE,iCAAiC;YAChDY,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQhB,kBAAkB,CAACO,WAAW,CAAC;AAAA,YAAA;AAChD,WAAC,EACD;AACEL,YAAAA,GAAG,EAAE,QAAQ;YACbW,KAAK,EAAEW,MAAM,CAACjB,WAAW,CAACkB,MAAM,EAAEC,eAAe,CAACC,MAAM,CAAC,GACrDvB,CAAC,CAAC,8CAA8C,CAAC,GACjDA,CAAC,CAAC,4CAA4C,CAAC;AACnD,YAAA,aAAa,EAAE,mCAAmC;YAClDY,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQlB,4BAA4B,CAACS,WAAW,CAAC;AAAA,YAAA;AAC1D,WAAC,EACD;AACEL,YAAAA,GAAG,EAAE,QAAQ;AACbW,YAAAA,KAAK,EAAET,CAAC,CAAC,sCAAsC,CAAC;AAChD,YAAA,aAAa,EAAE,mCAAmC;YAClDY,OAAO,EAAE,SAATA,OAAOA,GAAA;cAAA,OAAQjB,qBAAqB,CAACQ,WAAW,CAAC;AAAA,YAAA;WAClD;AACD,SACH,CAAC;AAAA,OACC,CAAC;AAAA,IAAA;AAEV,GAAC,EACD;AACEN,IAAAA,SAAS,EAAE,QAAQ;AACnBC,IAAAA,GAAG,EAAE,QAAQ;AACbC,IAAAA,KAAK,EAAEC,CAAC,CAAC,sCAAsC,CAAC;AAChDE,IAAAA,MAAM,EAAE,SAARA,MAAMA,CAAEmB,MAAM,EAAA;AAAA,MAAA,OACZA,MAAM,KAAK,QAAQ,GACfrB,CAAC,CAAC,0BAA0B,CAAC,GAC7BA,CAAC,CAAC,yBAAyB,CAAC;AAAA,IAAA,CAAA;AAClCC,IAAAA,KAAK,EAAE;AACT,GAAC,CACF;AAAA,CAAA;AAEM,IAAMuB,6BAA6B,GAAG,SAAhCA,6BAA6BA,CACxCC,MAAM,EACNtB,WAAW,EACXuB,cAAc,EACX;EACH,IAAI,CAACD,MAAM,EAAE;AACX,IAAA,OAAOE,KAAK,CAAC,MAAM,EAAED,cAAc,EAAEE,2BAA2B,CAAC;AACnE,EAAA;AAEA,EAAA,IAAM1C,aAAa,GAAG2C,OAAO,CAAC1B,WAAW,CAACjB,aAAa,CAAC,GACpD,CAAC4C,4BAA4B,CAAC,GAC9B3B,WAAW,CAACjB,aAAa;AAE7B,EAAA,OAAA6C,eAAA,CAAAA,eAAA,CAAA,EAAA,EACKC,IAAI,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,qBAAqB,CAAC,EAAE7B,WAAW,CAAC,CAAA,EAAA,EAAA,EAAA;AACzEjB,IAAAA,aAAa,EAAbA;AAAa,GAAA,CAAA;AAEjB,CAAC;;ACpFD,IAAM+C,IAAI,GAAG,SAAPA,IAAIA,CAAAxC,IAAA,EAUJ;AAAA,EAAA,IATJyC,aAAa,GAAAzC,IAAA,CAAbyC,aAAa;IACbC,OAAO,GAAA1C,IAAA,CAAP0C,OAAO;IACPC,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IACPC,mBAAmB,GAAA5C,IAAA,CAAnB4C,mBAAmB;IACnBC,iBAAiB,GAAA7C,IAAA,CAAjB6C,iBAAiB;IACjBZ,cAAc,GAAAjC,IAAA,CAAdiC,cAAc;IACda,iBAAiB,GAAA9C,IAAA,CAAjB8C,iBAAiB;IACjBC,oBAAoB,GAAA/C,IAAA,CAApB+C,oBAAoB;IACpBC,6BAA6B,GAAAhD,IAAA,CAA7BgD,6BAA6B;AAE7B,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtB3C,CAAC,GAAA0C,eAAA,CAAD1C,CAAC;AACT,EAAA,IAAA4C,kBAAA,GACEC,iBAAiB,CAACT,OAAO,CAAC;IADZU,iBAAiB,GAAAF,kBAAA,CAAzBG,MAAM;IAAgCC,UAAU,GAAAJ,kBAAA,CAArBK,SAAS;AAG5C,EAAA,IAAAC,kBAAA,GACEC,iBAAiB,CAACf,OAAO,CAAC;IADZgB,iBAAiB,GAAAF,kBAAA,CAAzBH,MAAM;IAAgCM,UAAU,GAAAH,kBAAA,CAArBD,SAAS;AAG5C,EAAA,IAAMxB,MAAM,GAAG6B,UAAU,CAACjB,mBAAmB,CAAC;EAE9C,IAAMkB,YAAY,GAAG,SAAfA,YAAYA,CAAI3E,MAAM,EAAA4E,KAAA,EAAwB;AAAA,IAAA,IAApBC,aAAa,GAAAD,KAAA,CAAbC,aAAa;AAC3C,IAAA,IAAMC,OAAO,GAAG/E,uBAAuB,CAACC,MAAM,EAAEyD,mBAAmB,KAAA,IAAA,IAAnBA,mBAAmB,KAAA,MAAA,GAAA,MAAA,GAAnBA,mBAAmB,CAAEtD,EAAE,CAAC;AACxE,IAAA,IAAM4E,OAAO,GAAG;AACdC,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAe;AACtBtB,QAAAA,iBAAiB,CAAAuB,KAAA,CAAA,MAAA,EAAAC,SAAQ,CAAC;AAC1B3B,QAAAA,OAAO,EAAE;MACX,CAAC;MACD4B,SAAS,EAAE,SAAXA,SAASA,GAAA;QAAA,OAAQN,aAAa,CAAC,KAAK,CAAC;AAAA,MAAA;KACtC;AAED,IAAA,IAAIhC,MAAM,EAAE;AACV2B,MAAAA,iBAAiB,CAAC;QAAErE,EAAE,EAAEsD,mBAAmB,CAACtD,EAAE;AAAE2E,QAAAA,OAAO,EAAPA;OAAS,EAAEC,OAAO,CAAC;AAEnE,MAAA;AACF,IAAA;AAEAb,IAAAA,iBAAiB,CAACY,OAAO,EAAEC,OAAO,CAAC;EACrC,CAAC;AAED,EAAA,IAAMK,UAAU,GAAGX,UAAU,IAAIL,UAAU;EAE3C,IAAMiB,aAAa,GAAGC,OAAO,CAC3B,YAAA;AAAA,IAAA,OACE1C,6BAA6B,CAC3BC,MAAM,EACNY,mBAAmB,EACnBX,cACF,CAAC;AAAA,EAAA,CAAA,EACH,CAACD,MAAM,EAAEY,mBAAmB,EAAEX,cAAc,CAC9C,CAAC;EAED,oBACEtB,IAAA,CAAA+D,QAAA,EAAA;AAAA7D,IAAAA,QAAA,EAAA,cACEC,GAAA,CAAC6D,IAAI,CAACC,MAAM,EAAA;MAAA/D,QAAA,eACVC,GAAA,CAAC+D,UAAU,EAAA;AAAC3D,QAAAA,KAAK,EAAC,IAAI;AAAC4D,QAAAA,MAAM,EAAC,UAAU;QAAAjE,QAAA,EACrCmB,MAAM,GACHzB,CAAC,CAAC,0CAA0C,CAAC,GAC7CA,CAAC,CAAC,yCAAyC;OACrC;AAAC,KACF,CAAC,eACdI,IAAA,CAACoE,WAAW,EAAA;AACVC,MAAAA,WAAW,EAAE;AACXR,QAAAA,aAAa,EAAbA,aAAa;AACbS,QAAAA,gBAAgB,EAAEC,mCAAmC;AACrDC,QAAAA,QAAQ,EAAErB;OACV;AAAAjD,MAAAA,QAAA,EAAA,cAEFC,GAAA,CAAC6D,IAAI,CAACS,IAAI,EAAA;AAAAvE,QAAAA,QAAA,eACRF,IAAA,CAAA,KAAA,EAAA;AAAKC,UAAAA,SAAS,EAAC,wBAAwB;UAAAC,QAAA,EAAA,cACrCC,GAAA,CAACuE,KAAK,EAAA;YACJC,QAAQ,EAAA,IAAA;AACRtE,YAAAA,KAAK,EAAET,CAAC,CAAC,oCAAoC,CAAE;AAC/CT,YAAAA,IAAI,EAAC,MAAM;AACXyF,YAAAA,GAAG,EAAE9C;AAAc,WACpB,CAAC,eACF3B,GAAA,CAACuE,KAAK,EAAA;YACJC,QAAQ,EAAA,IAAA;AACRtE,YAAAA,KAAK,EAAET,CAAC,CAAC,mCAAmC,CAAE;AAC9CT,YAAAA,IAAI,EAAC,UAAU;AACf0F,YAAAA,WAAW,EAAEC;AAAW,WACzB,CAAC,eACF3E,GAAA,CAAC4E,aAAa,EAAA;AAACC,YAAAA,gBAAgB,EAAE3C;AAA8B,WAAE,CAAC,eAClElC,GAAA,CAAC8E,UAAU,EAAA;AACH9C,YAAAA,iBAAiB,EAAjBA,iBAAiB;AACvB6C,YAAAA,gBAAgB,EAAE5C,oBAAqB;YACvC8C,YAAY,EAAErB,aAAa,CAAC7E,IAAK;AACjCG,YAAAA,IAAI,EAAC;AAAM,WACZ,CAAC;SACC;AAAC,OACG,CAAC,eACZgB,GAAA,CAAC6D,IAAI,CAACmB,MAAM,EAAA;QAAAjF,QAAA,eACVC,GAAA,CAACiF,WAAW,EAAA;AACVC,UAAAA,iBAAiB,EAAE;AAAE7E,YAAAA,OAAO,EAAEuB;WAAU;AACxCuD,UAAAA,YAAY,EAAE1B;SACf;AAAC,OACS,CAAC;AAAA,KACH,CAAC;AAAA,GACd,CAAC;AAEP,CAAC;;;;AC7FD,IAAM2B,YAAY,GAAG,SAAfA,YAAYA,CAAAlG,IAAA,EAQZ;AAAA,EAAA,IAAAmG,qBAAA;AAAA,EAAA,IAPJxD,OAAO,GAAA3C,IAAA,CAAP2C,OAAO;IAAAyD,gBAAA,GAAApG,IAAA,CACPqG,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAE,qBAAA,GAAAtG,IAAA,CAChB2F,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAW,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,mBAAA,GAAAvG,IAAA,CACrBiC,cAAc;AAAdA,IAAAA,cAAc,GAAAsE,mBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,mBAAA;IAAAC,qBAAA,GAAAxG,IAAA,CACnB8C,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA0D,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,qBAAA,GAAAzG,IAAA,CACtB6C,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAA4D,qBAAA,KAAA,MAAA,GAAGC,IAAI,GAAAD,qBAAA;IAAAE,aAAA,GAAA3G,IAAA,CACxB4G,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,MAAA,GAAG,OAAO,GAAAA,aAAA;AAElB,EAAA,IAAA1D,eAAA,GAAcC,cAAc,EAAE;IAAtB3C,CAAC,GAAA0C,eAAA,CAAD1C,CAAC;AAET,EAAA,IAAAsG,SAAA,GAAoCC,QAAQ,CAACC,uBAAuB,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAA9DK,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,aAAa,GAAAH,UAAA,CAAA,CAAA,CAAA;AAChC,EAAA,IAAAI,UAAA,GAAkDN,QAAQ,CAAC,KAAK,CAAC;IAAAO,UAAA,GAAAJ,cAAA,CAAAG,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAG,UAAA,GAA4CV,QAAQ,CAAC,KAAK,CAAC;IAAAW,UAAA,GAAAR,cAAA,CAAAO,UAAA,EAAA,CAAA,CAAA;AAApDE,IAAAA,cAAc,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,UAAA,CAAA,CAAA,CAAA;AACxC,EAAA,IAAAG,UAAA,GAAsDd,QAAQ,CAAC,EAAE,CAAC;IAAAe,UAAA,GAAAZ,cAAA,CAAAW,UAAA,EAAA,CAAA,CAAA;AAA3DhF,IAAAA,mBAAmB,GAAAiF,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,sBAAsB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAE,UAAA,GAAkDjB,QAAQ,CAAC,KAAK,CAAC;IAAAkB,UAAA,GAAAf,cAAA,CAAAc,UAAA,EAAA,CAAA,CAAA;AAA1DE,IAAAA,iBAAiB,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAE9C,EAAA,IAAAG,eAAA,GAA4BC,cAAc,EAAE;IAAAC,qBAAA,GAAAF,eAAA,CAApCG,UAAU;AAAVA,IAAAA,UAAU,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;AAEvB,EAAA,IAAME,kBAAkB,GAAG;AACzBlI,IAAAA,GAAG,EAAE,aAAa;AAClBmI,IAAAA,IAAI,EAAE,MAAM;AACZC,IAAAA,KAAK,EAAEH;GACR;EAED,IAAAI,UAAA,GAA8B5B,QAAQ,CAAC,YAAA;MAAA,OACrC6B,mBAAmB,CAAA,EAAA,CAAAC,MAAA,CAAAC,kBAAA,CAAKC,cAAc,CAAA,EAAA,CAAEP,kBAAkB,CAAA,CAAC,CAAC;AAAA,IAAA,CAC9D,CAAC;IAAAQ,WAAA,GAAA9B,cAAA,CAAAyB,UAAA,EAAA,CAAA,CAAA;AAFMM,IAAAA,OAAO,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,UAAU,GAAAF,WAAA,CAAA,CAAA,CAAA;EAI1B,IAAAG,kBAAA,GAIIC,iBAAiB,CAAC;AACpBH,MAAAA,OAAO,EAAPA,OAAO;MACPI,IAAI,EAAElC,UAAU,CAACmC,KAAK;MACtBC,QAAQ,EAAEpC,UAAU,CAACqC,IAAI;AACzB3J,MAAAA,YAAY,EAAEC,iBAAiB;AAC/B8C,MAAAA,OAAO,EAAEP,OAAO,CAACO,OAAO,CAAC,GAAG6G,SAAS,GAAG7G;AAC1C,KAAC,CAAC;IAAA8G,qBAAA,GAAAP,kBAAA,CATAQ,IAAI;AAAAC,IAAAA,sBAAA,GAAAF,qBAAA,KAAA,MAAA,GAA8B,EAAE,GAAAA,qBAAA;IAA5BG,SAAS,GAAAD,sBAAA,CAATC,SAAS;IAAEC,UAAU,GAAAF,sBAAA,CAAVE,UAAU;IAC7BC,SAAS,GAAAZ,kBAAA,CAATY,SAAS;IACTC,UAAU,GAAAb,kBAAA,CAAVa,UAAU;AASZ,EAAA,IAAMzJ,KAAK,GAAGC,CAAC,CAAC,4CAA4C,CAAC;AAE7D,EAAA,IAAMyJ,eAAe,GAAGnG,UAAU,CAACmF,OAAO,CAAC;AAE3C,EAAA,IAAMiB,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAGjB,OAAO,EAAI;IACrCC,UAAU,CAACD,OAAO,CAAC;IACnB7B,aAAa,CAACJ,uBAAuB,CAAC;EACxC,CAAC;AAED,EAAA,IAAAmD,kBAAA,GACEC,iBAAiB,CAACxH,OAAO,CAAC;IADZyH,cAAc,GAAAF,kBAAA,CAAtB5G,MAAM;IAA6B+G,UAAU,GAAAH,kBAAA,CAArB1G,SAAS;AAEzC,EAAA,IAAAC,kBAAA,GAAmCC,iBAAiB,CAACf,OAAO,CAAC;IAA7C2H,cAAc,GAAA7G,kBAAA,CAAtBH,MAAM;AAEd,EAAA,IAAMnD,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAGO,WAAW,EAAI;IACxCoH,sBAAsB,CAACpH,WAAW,CAAC;IACnCiH,iBAAiB,CAAC,IAAI,CAAC;EACzB,CAAC;AAED,EAAA,IAAMzH,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGQ,WAAW,EAAI;IAC3CoH,sBAAsB,CAACpH,WAAW,CAAC;IACnCwH,oBAAoB,CAAC,IAAI,CAAC;EAC5B,CAAC;AAED,EAAA,IAAMqC,iCAAiC,GAAG,SAApCA,iCAAiCA,GAAS;IAC9CrC,oBAAoB,CAAC,KAAK,CAAC;IAC3BP,iBAAiB,CAAC,KAAK,CAAC;IACxBG,sBAAsB,CAAC,EAAE,CAAC;EAC5B,CAAC;AAED,EAAA,IAAM7H,4BAA4B,GAAG,SAA/BA,4BAA4BA,CAAA8D,KAAA,EAAuB;AAAA,IAAA,IAAjBnC,MAAM,GAAAmC,KAAA,CAANnC,MAAM;MAAEtC,EAAE,GAAAyE,KAAA,CAAFzE,EAAE;AAChD,IAAA,IAAMkL,SAAS,GAAG7I,MAAM,CAACC,MAAM,EAAEC,eAAe,CAACC,MAAM,CAAC,GACpDD,eAAe,CAAC4I,QAAQ,GACxB5I,eAAe,CAACC,MAAM;AAE1BwI,IAAAA,cAAc,CACZ;AACErG,MAAAA,OAAO,EAAE;AAAErC,QAAAA,MAAM,EAAE4I,SAAS;AAAE5K,QAAAA,YAAY,EAAEC;OAAmB;AAC/DP,MAAAA,EAAE,EAAFA;AACF,KAAC,EACD;AAAE6E,MAAAA,SAAS,EAAEtB;AAAkB,KACjC,CAAC;EACH,CAAC;AAED,EAAA,IAAM6H,uBAAuB,GAAG,SAA1BA,uBAAuBA,GAAA;AAAA,IAAA,OAC3BN,cAAc,CAACxH,mBAAmB,CAACtD,EAAE,EAAE;AACrC6E,MAAAA,SAAS,EAAE,SAAXA,SAASA,GAAe;AACtBtB,QAAAA,iBAAiB,CAAAuB,KAAA,CAAA,MAAA,EAAAC,SAAQ,CAAC;AAC1BkG,QAAAA,iCAAiC,EAAE;AACrC,MAAA;AACF,KAAC,CAAC;AAAA,EAAA,CAAA;AAEJ,EAAA,IAAAI,qBAAA,GAIIC,qBAAqB,CAACjF,gBAAgB,CAAC;IAH3BkF,4BAA4B,GAAAF,qBAAA,CAA1CG,YAAY;IACG9H,6BAA6B,GAAA2H,qBAAA,CAA5ClL,aAAa;IACPsD,oBAAoB,GAAA4H,qBAAA,CAA1BhL,IAAI;AAGN,EAAA,IAAMoL,UAAU,GAAG,CAAAF,4BAA4B,KAAA,IAAA,IAA5BA,4BAA4B,gBAAA1E,qBAAA,GAA5B0E,4BAA4B,CAAEG,aAAa,cAAA7E,qBAAA,KAAA,MAAA,GAAA,MAAA,GAA3CA,qBAAA,CAA6C8E,IAAI,KAAI,EAAE;EAE1E,IAAMC,WAAW,GAAA5I,aAAA,CAAAA,aAAA,CAAA,EAAA,EACX,CAAC0H,eAAe,IAAI;AACtBmB,IAAAA,kBAAkB,EAAE;AAClBnK,MAAAA,KAAK,EAAET,CAAC,CAAC,yCAAyC,CAAC;MACnDY,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQwG,iBAAiB,CAAC,IAAI,CAAC;AAAA,MAAA;KACvC;IACDyD,QAAQ,eACNtK,GAAA,CAACuK,KAAK,EAAA;AACJC,MAAAA,OAAO,EAAC,iDAAiD;AACzDnM,MAAAA,MAAM,EAAE;AAAEE,QAAAA,MAAM,EAAEiB;OAAQ;AAC1BiL,MAAAA,UAAU,EAAE;QACVC,IAAI,eAAE1K,GAAA,CAACC,MAAM,EAAA;AAACkK,UAAAA,IAAI,EAAEF,UAAW;AAAC7J,UAAAA,KAAK,EAAC,MAAM;AAACuK,UAAAA,MAAM,EAAC;SAAU;AAChE;KACD;GAEJ,CAAA,EAAA,EAAA,EAAA;AACDnL,IAAAA,KAAK,EAAE0J,eAAe,GAClBzJ,CAAC,CAAC,iDAAiD,EAAE;AAAEmL,MAAAA,IAAI,EAAEpL;AAAM,KAAC,CAAC,GACrEC,CAAC,CAAC,0CAA0C,EAAE;AAAEmL,MAAAA,IAAI,EAAEpL;KAAO;GAAC,CACnE;EAED,IAAMqL,wBAAwB,GAC5B,CAAC7B,SAAS,KAAKE,eAAe,IAAIH,UAAU,GAAG,CAAC,CAAC;EAEnD,oBACElJ,IAAA,CAACiL,SAAS,EAAA;IAAA/K,QAAA,EAAA,cACRC,GAAA,CAAC8D,WAAM,EAAA;AACCyB,MAAAA,WAAW,EAAXA,WAAW;AAAE/F,MAAAA,KAAK,EAALA,KAAK;AACxBiJ,MAAAA,IAAI,EAAC,OAAO;MACZsC,WAAW,eACT/K,GAAA,CAACC,MAAM,EAAA;AACL,QAAA,aAAA,EAAY,0BAA0B;AACtCC,QAAAA,KAAK,EAAET,CAAC,CAAC,yCAAyC,CAAE;QACpDY,OAAO,EAAE,SAATA,OAAOA,GAAA;UAAA,OAAQwG,iBAAiB,CAAC,IAAI,CAAC;AAAA,QAAA;AAAC,OACxC,CACF;MACDmE,WAAW,EACTH,wBAAwB,IAAI;AAC1BnG,QAAAA,WAAW,EAAEjF,CAAC,CAAC,kDAAkD,CAAC;AAClE,QAAA,aAAa,EAAE;OAElB;AACDwL,MAAAA,qBAAqB,EACnBlB,4BAA4B,IAAAvI,aAAA,CAAAA,aAAA,KACvBuI,4BAA4B,CAAA,EAAA,EAAA,EAAA;QAC/BvK,KAAK,EAAE,CAAAuK,4BAA4B,KAAA,IAAA,IAA5BA,4BAA4B,KAAA,MAAA,GAAA,MAAA,GAA5BA,4BAA4B,CAAEvK,KAAK,KAAIA;AAAK,OAAA;AAEtD,KACF,CAAC,eACFQ,GAAA,CAACkL,SAAS,EAAA;AACRpL,MAAAA,SAAS,EAAC,MAAM;AAChBqL,MAAAA,eAAe,EACbN,wBAAwB,iBACtB7K,GAAA,CAAC+D,UAAU,EAAA;AAACqH,QAAAA,SAAS,EAAC,IAAI;AAAArL,QAAAA,QAAA,EACvBN,CAAC,CAAC,yDAAyD,EAAE;AAC5DmL,UAAAA,IAAI,EAAEnL,CAAC,CAAC,iBAAiB,CAAC;AAC1B4L,UAAAA,KAAK,EAAEtC;SACR;AAAC,OACQ,CAEf;AACDuC,MAAAA,gBAAgB,eACdtL,GAAA,CAACkL,SAAS,CAACK,UAAU,EAAA;AACnBC,QAAAA,SAAS,EAAE;AAAEzC,UAAAA,UAAU,EAAEG,eAAe,GAAG,IAAI,GAAGH;SAAa;AAC/D0C,QAAAA,WAAW,EAAE;AACXC,UAAAA,OAAO,EAAE1D,cAAc;AACvB2D,UAAAA,MAAM,EAAEnF,iBAAiB;AACzBoF,UAAAA,OAAO,EAAEnE,kBAAkB;AAC3BoE,UAAAA,SAAS,EAAEpF,oBAAoB;AAC/BqF,UAAAA,QAAQ,EAAE3C;AACZ;OACD;AACF,KACF,CAAC,eACFnJ,GAAA,CAAC+L,UAAU,EAAA;AACTL,MAAAA,OAAO,EAAE1D,cAAe;AACxB4D,MAAAA,OAAO,EAAEnE,kBAAmB;AAC5BuE,MAAAA,aAAa,EAAEvF,oBAAqB;AACpCqF,MAAAA,QAAQ,EAAE3C;KACX,CAAC,EACDpG,UAAU,CAAC+F,SAAS,CAAC,gBACpB9I,GAAA,CAACiM,YAAY,EAAA;AAACC,MAAAA,aAAa,EAAEnD,UAAU,GAAG3C,UAAU,CAACqC,IAAK;MAAA1I,QAAA,eACxDC,GAAA,CAACmM,KAAK,EAAA;AACEpD,QAAAA,UAAU,EAAVA,UAAU;QAChBqD,WAAW,EAAA,IAAA;QACXC,iBAAiB,EAAEjG,UAAU,CAACmC,KAAM;QACpC+D,eAAe,EAAElG,UAAU,CAACqC,IAAK;AACjC8D,QAAAA,gBAAgB,EAAE,SAAlBA,gBAAgBA,CAAGhE,KAAK,EAAEE,IAAI,EAAA;AAAA,UAAA,OAAKpC,aAAa,CAAC;AAAEkC,YAAAA,KAAK,EAALA,KAAK;AAAEE,YAAAA,IAAI,EAAJA;AAAK,WAAC,CAAC;QAAA,CAAC;QAClE+D,OAAO,EAAExD,SAAS,IAAIC,UAAW;AACjCwD,QAAAA,OAAO,EAAE3D,SAAU;QACnB4D,UAAU,EAAEzN,oBAAoB,CAAC;AAC/BE,UAAAA,4BAA4B,EAA5BA,4BAA4B;AAC5BC,UAAAA,qBAAqB,EAArBA,qBAAqB;AACrBC,UAAAA,kBAAkB,EAAlBA;SACD;OACF;KACW,CAAC,gBAEfW,GAAA,CAAA,KAAA,EAAA;AAAKF,MAAAA,SAAS,EAAC,gDAAgD;MAAAC,QAAA,eAC7DC,GAAA,CAAC2M,MAAM,EAAAnL,aAAA,CAAA,EAAA,EAAK4I,WAAW,CAAG;AAAC,KACxB,CACN,eACDpK,GAAA,CAAC6D,IAAI,EAAA;AACH8H,MAAAA,MAAM,EAAE/E,cAAe;AACvB6B,MAAAA,IAAI,EAAE3C,QAAS;AACflE,MAAAA,OAAO,EAAE6H,iCAAkC;MAAA1J,QAAA,EAE1C,SAAAA,QAAAA,CAAA6M,KAAA,EAAA;AAAA,QAAA,IAAGjL,aAAa,GAAAiL,KAAA,CAAbjL,aAAa;QAAA,oBACf3B,GAAA,CAAC0B,IAAI,EAAA;AAEDO,UAAAA,oBAAoB,EAApBA,oBAAoB;AACpBC,UAAAA,6BAA6B,EAA7BA,6BAA6B;AAC7BH,UAAAA,iBAAiB,EAAjBA,iBAAiB;AACjBF,UAAAA,OAAO,EAAPA,OAAO;AACPC,UAAAA,mBAAmB,EAAnBA,mBAAmB;AACnBH,UAAAA,aAAa,EAAbA,aAAa;AACbK,UAAAA,iBAAiB,EAAjBA,iBAAiB;UAEnBb,cAAc,EAAE0L,IAAI,CAACC,SAAS,CAAC3L,cAAc,EAAE,IAAI,EAAE,CAAC,CAAE;AACxDS,UAAAA,OAAO,EAAE6H;AAAkC,SAC5C,CAAC;AAAA,MAAA;AACH,KACG,CAAC,eACPzJ,GAAA,CAAC+M,KAAK,EAAA;AACJpB,MAAAA,MAAM,EAAExE,iBAAkB;AAC1BhC,MAAAA,YAAY,EAAEoE,UAAW;AACzByD,MAAAA,iBAAiB,EAAEvN,CAAC,CAAC,sCAAsC,CAAE;AAC7DD,MAAAA,KAAK,EAAEC,CAAC,CAAC,4CAA4C,CAAE;MACvDwN,OAAO,eACLjN,GAAA,CAACuK,KAAK,EAAA;AACJC,QAAAA,OAAO,EAAC,0DAA0D;AAClEnM,QAAAA,MAAM,EAAE;UAAEW,IAAI,EAAE8C,mBAAmB,CAAC9C;AAAK;AAAE,OAC5C,CACF;AACD4C,MAAAA,OAAO,EAAE6H,iCAAkC;AAC3CpF,MAAAA,QAAQ,EAAEuF;AAAwB,KACnC,CAAC;AAAA,GACO,CAAC;AAEhB;;;;"}
@@ -8,7 +8,7 @@ import NeetoHeader from '@bigbinary/neeto-molecules/Header';
8
8
  import SubHeader from '@bigbinary/neeto-molecules/SubHeader';
9
9
  import Button from '@bigbinary/neetoui/Button';
10
10
  import Typography from '@bigbinary/neetoui/Typography';
11
- import { equals, prop, includes, pick, omit, mergeLeft, isEmpty, assoc } from 'ramda';
11
+ import { equals, prop, includes, pick, mergeAll, omit, mergeLeft, isEmpty, assoc } from 'ramda';
12
12
  import { useTranslation, Trans } from 'react-i18next';
13
13
  import { b as DEFAULT_EDITOR_ROW_COUNT, D as DEFAULT_PAGE_PROPERTIES, M as MESSAGE_TEMPLATES, a as MESSAGE_TYPES } from './constants-B2GWdy9V.js';
14
14
  import { t } from 'i18next';
@@ -21,11 +21,11 @@ import FormikEditor from '@bigbinary/neeto-editor/FormikEditor';
21
21
  import NeetoUIForm from '@bigbinary/neetoui/formik/Form';
22
22
  import Input from '@bigbinary/neetoui/formik/Input';
23
23
  import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
24
+ import * as yup from 'yup';
24
25
  import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
25
26
  import { useFormikContext } from 'formik';
26
27
  import Textarea from '@bigbinary/neetoui/formik/Textarea';
27
28
  import { isPhoneNumberValid } from '@bigbinary/neeto-molecules/PhoneNumber';
28
- import * as yup from 'yup';
29
29
  import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator';
30
30
  import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
31
31
  import { useQueryParams } from '@bigbinary/neeto-commons-frontend/react-utils';
@@ -366,7 +366,12 @@ var Form = function Form(_ref) {
366
366
  templateVariables = _ref.templateVariables,
367
367
  isTestingTemplateDisabled = _ref.isTestingTemplateDisabled,
368
368
  customFields = _ref.customFields,
369
- onMutationSuccess = _ref.onMutationSuccess;
369
+ onMutationSuccess = _ref.onMutationSuccess,
370
+ customFieldsBelowBody = _ref.customFieldsBelowBody,
371
+ _ref$customFieldsInit = _ref.customFieldsInitialValues,
372
+ customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
373
+ _ref$customFieldsVali = _ref.customFieldsValidationSchema,
374
+ customFieldsValidationSchema = _ref$customFieldsVali === void 0 ? {} : _ref$customFieldsVali;
370
375
  var _useTranslation = useTranslation(),
371
376
  t = _useTranslation.t;
372
377
  var editorRef = useRef(null);
@@ -377,6 +382,8 @@ var Form = function Form(_ref) {
377
382
  _ref3 = _slicedToArray(_ref2, 2),
378
383
  TEMPLATE_INITIAL_VALUES = _ref3[0],
379
384
  TEMPLATE_FORM_SCHEMA = _ref3[1];
385
+ var updatedInitialValues = mergeAll([TEMPLATE_INITIAL_VALUES, customFieldsInitialValues]);
386
+ var updatedValidationSchema = yup.object().shape(_objectSpread$2(_objectSpread$2({}, TEMPLATE_FORM_SCHEMA === null || TEMPLATE_FORM_SCHEMA === void 0 ? void 0 : TEMPLATE_FORM_SCHEMA.fields), customFieldsValidationSchema === null || customFieldsValidationSchema === void 0 ? void 0 : customFieldsValidationSchema.fields));
380
387
  var handleSubmit = function handleSubmit(values) {
381
388
  var filteredValues = isEmailTemplate ? omit(["name", "testEmailAddress"], values) : omit(["name", "testPhoneNumber"], values);
382
389
  var payload = {
@@ -404,8 +411,8 @@ var Form = function Form(_ref) {
404
411
  className: "flex w-full flex-col gap-y-4 pb-6"
405
412
  },
406
413
  formikProps: {
407
- initialValues: TEMPLATE_INITIAL_VALUES,
408
- validationSchema: TEMPLATE_FORM_SCHEMA,
414
+ initialValues: updatedInitialValues,
415
+ validationSchema: updatedValidationSchema,
409
416
  validateOnBlur: true,
410
417
  validateOnChange: true,
411
418
  onSubmit: handleSubmit
@@ -429,7 +436,7 @@ var Form = function Form(_ref) {
429
436
  ref: editorRef,
430
437
  rows: DEFAULT_EDITOR_ROW_COUNT,
431
438
  variables: templateVariables
432
- }), isTestTemplateVisible && /*#__PURE__*/jsx(TestMessage, {
439
+ }), customFieldsBelowBody, isTestTemplateVisible && /*#__PURE__*/jsx(TestMessage, {
433
440
  customFields: customFields,
434
441
  handleSubmitTestTemplate: handleSubmitTestTemplate,
435
442
  isEmailTemplate: isEmailTemplate,
@@ -462,7 +469,11 @@ var AddEdit = function AddEdit(_ref) {
462
469
  templateVariables = _ref.templateVariables,
463
470
  isTestingTemplateDisabled = _ref.isTestingTemplateDisabled,
464
471
  customFields = _ref.customFields,
465
- onMutationSuccess = _ref.onMutationSuccess;
472
+ customFieldsBelowBody = _ref.customFieldsBelowBody,
473
+ customFieldsInitialValues = _ref.customFieldsInitialValues,
474
+ customFieldsValidationSchema = _ref.customFieldsValidationSchema,
475
+ onMutationSuccess = _ref.onMutationSuccess,
476
+ paneSize = _ref.paneSize;
466
477
  var initialFocusField = useRef();
467
478
  var setInitialFocusField = function setInitialFocusField(fieldRef) {
468
479
  return initialFocusField.current = fieldRef;
@@ -475,6 +486,7 @@ var AddEdit = function AddEdit(_ref) {
475
486
  isOpen: isOpen,
476
487
  onClose: onClose,
477
488
  initialFocusRef: initialFocusField,
489
+ size: paneSize,
478
490
  children: [/*#__PURE__*/jsx(Pane.Header, {
479
491
  children: /*#__PURE__*/jsx(Typography, {
480
492
  style: "h2",
@@ -485,6 +497,9 @@ var AddEdit = function AddEdit(_ref) {
485
497
  children: /*#__PURE__*/jsx(Form, {
486
498
  createUpdateTemplate: createUpdateTemplate,
487
499
  customFields: customFields,
500
+ customFieldsBelowBody: customFieldsBelowBody,
501
+ customFieldsInitialValues: customFieldsInitialValues,
502
+ customFieldsValidationSchema: customFieldsValidationSchema,
488
503
  handleSubmitTestTemplate: handleSubmitTestTemplate,
489
504
  isEdit: isEdit,
490
505
  isTestMessageLoading: isTestMessageLoading,
@@ -703,10 +718,18 @@ var MessageTemplates = function MessageTemplates(_ref) {
703
718
  isTestingTemplateDisabled = _ref$isTestingTemplat === void 0 ? false : _ref$isTestingTemplat,
704
719
  _ref$manageTemplatesP = _ref.manageTemplatesPaneCustomFields,
705
720
  manageTemplatesPaneCustomFields = _ref$manageTemplatesP === void 0 ? null : _ref$manageTemplatesP,
721
+ _ref$customFieldsBelo = _ref.customFieldsBelowBody,
722
+ customFieldsBelowBody = _ref$customFieldsBelo === void 0 ? null : _ref$customFieldsBelo,
723
+ _ref$customFieldsInit = _ref.customFieldsInitialValues,
724
+ customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
725
+ _ref$customFieldsVali = _ref.customFieldsValidationSchema,
726
+ customFieldsValidationSchema = _ref$customFieldsVali === void 0 ? {} : _ref$customFieldsVali,
706
727
  _ref$onMutationSucces = _ref.onMutationSuccess,
707
728
  onMutationSuccess = _ref$onMutationSucces === void 0 ? noop : _ref$onMutationSucces,
708
729
  _ref$helpPopoverProps = _ref.helpPopoverProps,
709
- helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps;
730
+ helpPopoverProps = _ref$helpPopoverProps === void 0 ? {} : _ref$helpPopoverProps,
731
+ _ref$paneSize = _ref.paneSize,
732
+ paneSize = _ref$paneSize === void 0 ? "large" : _ref$paneSize;
710
733
  var _useState = useState(MESSAGE_TEMPLATE_INITIAL_STATE),
711
734
  _useState2 = _slicedToArray(_useState, 2),
712
735
  manageTemplatePane = _useState2[0],
@@ -817,12 +840,16 @@ var MessageTemplates = function MessageTemplates(_ref) {
817
840
  }), /*#__PURE__*/jsx(AddEdit, {
818
841
  addText: addText,
819
842
  createUpdateTemplate: createUpdateTemplate,
843
+ customFieldsBelowBody: customFieldsBelowBody,
844
+ customFieldsInitialValues: customFieldsInitialValues,
845
+ customFieldsValidationSchema: customFieldsValidationSchema,
820
846
  editText: editText,
821
847
  handleSubmitTestTemplate: handleSubmitTestTemplate,
822
848
  isTestMessageLoading: isTestMessageLoading,
823
849
  isTestingTemplateDisabled: isTestingTemplateDisabled,
824
850
  manageTemplatePane: manageTemplatePane,
825
851
  onMutationSuccess: onMutationSuccess,
852
+ paneSize: paneSize,
826
853
  shouldIncludeTestTemplate: shouldIncludeTestTemplate,
827
854
  templateVariables: templateVariables,
828
855
  customFields: manageTemplatesPaneCustomFields,