@bigbinary/neeto-message-templates-frontend 0.3.6 → 0.4.0

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/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import React, { useState, useRef, useEffect } from 'react';
2
- import { isNotEmpty, noop, renameKeys, findBy, capitalize, nullSafe } from '@bigbinary/neeto-cist';
2
+ import { noop, isNotEmpty, renameKeys, findBy, capitalize, nullSafe } from '@bigbinary/neeto-cist';
3
3
  import { buildFiltersFromURL, Bar } from '@bigbinary/neeto-filters-frontend';
4
4
  import Container from '@bigbinary/neeto-molecules/Container';
5
5
  import NeetoHeader from '@bigbinary/neeto-molecules/Header';
@@ -10,7 +10,7 @@ import { t } from 'i18next';
10
10
  import { MenuHorizontal } from '@bigbinary/neeto-icons';
11
11
  import { useTranslation, Trans } from 'react-i18next';
12
12
  import { DEFAULT_PAGE_SIZE, DEFAULT_PAGE_INDEX } from '@bigbinary/neeto-commons-frontend/constants';
13
- import { useMutationWithInvalidation, withImmutableActions } from '@bigbinary/neeto-commons-frontend/react-utils';
13
+ import { useMutationWithInvalidation, withImmutableActions, useQueryParams } from '@bigbinary/neeto-commons-frontend/react-utils';
14
14
  import { useQuery } from 'react-query';
15
15
  import axios from 'axios';
16
16
  import { create } from 'zustand';
@@ -140,6 +140,11 @@ var MESSAGE_TEMPLATES = {
140
140
  editText: t("neetoMessageTemplate.template.editWhatsappTemplate")
141
141
  }
142
142
  };
143
+ var MESSAGE_TYPES = {
144
+ sms: t("messageType.sms"),
145
+ email: t("messageType.email"),
146
+ whatsapp: t("messageType.whatsapp")
147
+ };
143
148
  var DEFAULT_EDITOR_ROW_COUNT = 15;
144
149
 
145
150
  var MESSAGE_TEMPLATE_INITIAL_STATE = {
@@ -303,16 +308,11 @@ var RowActions = function RowActions(_ref) {
303
308
  }, t("neetoMessageTemplate.template.delete"))));
304
309
  };
305
310
 
306
- var renderSearchProps = function renderSearchProps(label, setSearchTerm, searchTerm) {
311
+ var renderSearchProps = function renderSearchProps(label) {
307
312
  return {
308
313
  placeholder: t("neetoMessageTemplate.template.search", {
309
314
  what: label.toLowerCase()
310
- }),
311
- onChange: function onChange(_ref) {
312
- var value = _ref.target.value;
313
- return setSearchTerm(value);
314
- },
315
- value: searchTerm
315
+ })
316
316
  };
317
317
  };
318
318
  var buildTableColumnData = function buildTableColumnData(setManageTemplatePane, ownerId) {
@@ -833,7 +833,7 @@ var TestMessage = function TestMessage(_ref) {
833
833
  className: "neeto-ui-flex neeto-ui-items-center left-0 flex gap-x-2"
834
834
  }, /*#__PURE__*/React.createElement(Input, {
835
835
  name: isEmailTemplate ? "testEmailAddress" : "testPhoneNumber",
836
- placeholder: t(isEmailTemplate ? "template.emailAddress" : "template.phoneNumber"),
836
+ placeholder: t(isEmailTemplate ? "neetoMessageTemplate.template.emailAddress" : "neetoMessageTemplate.template.phoneNumber"),
837
837
  onKeyDown: handleKeyDown,
838
838
  onKeyUp: handleTestValidation
839
839
  }), /*#__PURE__*/React.createElement(Button, {
@@ -1000,32 +1000,30 @@ function _toConsumableArray(arr) {
1000
1000
  }
1001
1001
 
1002
1002
  var useFilters = function useFilters() {
1003
- var _useState = useState(""),
1003
+ var _useState = useState(DEFAULT_PAGE_PROPERTIES),
1004
1004
  _useState2 = _slicedToArray(_useState, 2),
1005
- searchTerm = _useState2[0],
1006
- setSearchTerm = _useState2[1];
1007
- var _useState3 = useState(DEFAULT_PAGE_PROPERTIES),
1008
- _useState4 = _slicedToArray(_useState3, 2),
1009
- pageProperties = _useState4[0],
1010
- setPageProperties = _useState4[1];
1005
+ pageProperties = _useState2[0],
1006
+ setPageProperties = _useState2[1];
1007
+ var _useQueryParams = useQueryParams(),
1008
+ _useQueryParams$searc = _useQueryParams.search_term,
1009
+ searchTerm = _useQueryParams$searc === void 0 ? "" : _useQueryParams$searc;
1011
1010
  var filterColumns = buildTableColumnData().filter(prop("node"));
1012
1011
  var searchKeywordProps = {
1013
- key: "keyword",
1012
+ key: "search_term",
1014
1013
  node: "name",
1015
- value: searchTerm.trim(),
1016
- setValue: setSearchTerm
1014
+ value: searchTerm,
1015
+ setValue: noop
1017
1016
  };
1018
- var _useState5 = useState(function () {
1017
+ var _useState3 = useState(function () {
1019
1018
  return buildFiltersFromURL([].concat(_toConsumableArray(filterColumns), [searchKeywordProps]));
1020
1019
  }),
1021
- _useState6 = _slicedToArray(_useState5, 2),
1022
- filters = _useState6[0],
1023
- setFilters = _useState6[1];
1020
+ _useState4 = _slicedToArray(_useState3, 2),
1021
+ filters = _useState4[0],
1022
+ setFilters = _useState4[1];
1024
1023
  return {
1025
1024
  filterColumns: filterColumns,
1026
1025
  searchKeywordProps: searchKeywordProps,
1027
1026
  searchTerm: searchTerm,
1028
- setSearchTerm: setSearchTerm,
1029
1027
  filters: filters,
1030
1028
  setFilters: setFilters,
1031
1029
  pageProperties: pageProperties,
@@ -1085,7 +1083,8 @@ var List = function List(_ref) {
1085
1083
  label = _ref.label,
1086
1084
  addText = _ref.addText,
1087
1085
  isFilterApplied = _ref.isFilterApplied,
1088
- ownerId = _ref.ownerId;
1086
+ ownerId = _ref.ownerId,
1087
+ type = _ref.type;
1089
1088
  var _useTranslation = useTranslation(),
1090
1089
  t = _useTranslation.t;
1091
1090
  var _useDeleteTemplate = useDeleteTemplate(ownerId),
@@ -1097,6 +1096,9 @@ var List = function List(_ref) {
1097
1096
  isDelete = manageTemplatePane.isDelete;
1098
1097
  var pageIndex = pageProperties.index,
1099
1098
  pageSize = pageProperties.size;
1099
+ var isSms = type === "sms";
1100
+ var typeLabelSingular = isSms ? labelSingular : labelSingular.toLowerCase();
1101
+ var emptyStateLabel = isSms ? label : label.toLowerCase();
1100
1102
  var handleDelete = function handleDelete() {
1101
1103
  deleteTemplate(template.id, {
1102
1104
  onSettled: function onSettled() {
@@ -1134,9 +1136,9 @@ var List = function List(_ref) {
1134
1136
  }
1135
1137
  },
1136
1138
  title: isFilterApplied ? t("neetoMessageTemplate.template.filtersEmptyState", {
1137
- type: label.toLowerCase()
1139
+ type: emptyStateLabel
1138
1140
  }) : t("neetoMessageTemplate.template.emptyState", {
1139
- type: label.toLowerCase()
1141
+ type: emptyStateLabel
1140
1142
  })
1141
1143
  })), /*#__PURE__*/React.createElement(Alert, {
1142
1144
  isOpen: isDelete,
@@ -1148,7 +1150,7 @@ var List = function List(_ref) {
1148
1150
  }
1149
1151
  }),
1150
1152
  title: t("neetoMessageTemplate.template.deleteTemplate", {
1151
- label: labelSingular.toLowerCase()
1153
+ label: typeLabelSingular
1152
1154
  }),
1153
1155
  onClose: function onClose() {
1154
1156
  return setManageTemplatePane(assoc("isDelete", false));
@@ -1186,7 +1188,6 @@ var MessageTemplates = function MessageTemplates(_ref) {
1186
1188
  searchKeywordProps = _useFilters.searchKeywordProps,
1187
1189
  filterColumns = _useFilters.filterColumns,
1188
1190
  searchTerm = _useFilters.searchTerm,
1189
- setSearchTerm = _useFilters.setSearchTerm,
1190
1191
  filters = _useFilters.filters,
1191
1192
  setFilters = _useFilters.setFilters,
1192
1193
  pageProperties = _useFilters.pageProperties,
@@ -1228,7 +1229,7 @@ var MessageTemplates = function MessageTemplates(_ref) {
1228
1229
  onClick: handleActionClick
1229
1230
  }),
1230
1231
  breadcrumbs: breadcrumbs,
1231
- searchProps: renderSearchProps(label, setSearchTerm, searchTerm),
1232
+ searchProps: renderSearchProps(label),
1232
1233
  title: label
1233
1234
  }), /*#__PURE__*/React.createElement(SubHeader, {
1234
1235
  leftActionBlock: /*#__PURE__*/React.createElement(Bar, {
@@ -1257,7 +1258,8 @@ var MessageTemplates = function MessageTemplates(_ref) {
1257
1258
  pageProperties: pageProperties,
1258
1259
  setManageTemplatePane: setManageTemplatePane,
1259
1260
  setPageProperties: setPageProperties,
1260
- templatesData: templatesData
1261
+ templatesData: templatesData,
1262
+ type: type
1261
1263
  }), /*#__PURE__*/React.createElement(AddEdit, {
1262
1264
  addText: addText,
1263
1265
  createUpdateTemplate: createUpdateTemplate,
@@ -1393,7 +1395,7 @@ var Whatsapp = function Whatsapp(_ref) {
1393
1395
  t = _useTranslation.t;
1394
1396
  var getInitialVariableComponents = function getInitialVariableComponents(variables) {
1395
1397
  var initialComponents = {};
1396
- variables.forEach(function (_ref2) {
1398
+ variables === null || variables === void 0 ? void 0 : variables.forEach(function (_ref2) {
1397
1399
  var type = _ref2.type,
1398
1400
  count = _ref2.count;
1399
1401
  initialComponents[type] = Array(count).fill("");
@@ -1401,7 +1403,8 @@ var Whatsapp = function Whatsapp(_ref) {
1401
1403
  return initialComponents;
1402
1404
  };
1403
1405
  var getTemplateMessage = function getTemplateMessage(components) {
1404
- return nullSafe(pluck)("text", components).join("\n");
1406
+ var _nullSafe;
1407
+ return (_nullSafe = nullSafe(pluck)("text", components)) === null || _nullSafe === void 0 ? void 0 : _nullSafe.join("\n");
1405
1408
  };
1406
1409
  if (isEmpty(templates)) {
1407
1410
  return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Typography, null, t("neetoMessageTemplate.template.emptyState", {
@@ -1542,7 +1545,7 @@ var SendMessagePane = function SendMessagePane(_ref) {
1542
1545
  }, /*#__PURE__*/React.createElement(Pane.Header, null, /*#__PURE__*/React.createElement(Typography, {
1543
1546
  style: "h2",
1544
1547
  weight: "semibold"
1545
- }, t("neetoMessageTemplate.common.send"), " ", type)), /*#__PURE__*/React.createElement(Pane.Body, null, isWhatsappTemplate ? /*#__PURE__*/React.createElement(Whatsapp, {
1548
+ }, t("neetoMessageTemplate.common.send"), " ", MESSAGE_TYPES[type])), /*#__PURE__*/React.createElement(Pane.Body, null, isWhatsappTemplate ? /*#__PURE__*/React.createElement(Whatsapp, {
1546
1549
  handleSubmit: handleSubmit,
1547
1550
  onClose: onClose,
1548
1551
  templates: templates