@bigbinary/neeto-message-templates-frontend 0.0.6 → 0.0.8

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 CHANGED
@@ -121,9 +121,17 @@ const App = () => {
121
121
 
122
122
  * `type`: Type can be `email`, `sms` or `whatsapp`.
123
123
 
124
+ - `customFields`: (optional) To add custom field component to the pane.
125
+
126
+ - `customFieldsInitialValues`: (optional) To provide initial values for the
127
+ custom fields.
128
+
129
+ - `customFieldsValidationSchema`: (optional) To provide validation schema for
130
+ the custom fields.
131
+
124
132
  ### Usage
125
133
 
126
- ```javascript
134
+ ```js
127
135
  import React, { useState } from "react";
128
136
 
129
137
  import { SendMessagePane } from "@bigbinary/neeto-message-templates-frontend";
@@ -135,12 +143,36 @@ const App = () => {
135
143
  //api call
136
144
  };
137
145
 
146
+ const customFields = () => (
147
+ <div className="space-y-4">
148
+ <Input required label="To" name="to" />
149
+ <Input required label="From" name="from" />
150
+ </div>
151
+ );
152
+
153
+ const customFieldsInitialValues = {
154
+ to: "",
155
+ from: "",
156
+ };
157
+
158
+ const customFieldsSchema = yup.object().shape({
159
+ to: yup.string().trim().required("To address is required").email("invalid"),
160
+ from: yup
161
+ .string()
162
+ .trim()
163
+ .required("From address is required")
164
+ .email("invalid"),
165
+ });
166
+
138
167
  return (
139
168
  <SendMessagePane
140
169
  handleSubmit={handleSubmit}
141
170
  isOpen={isPaneOpen}
142
171
  type={type}
143
172
  onClose={() => setIsPaneOpen(false)}
173
+ customFields={customFields()}
174
+ customFieldsInitialValues={customFieldsInitialValues}
175
+ customFieldsValidationSchema={customFieldsSchema}
144
176
  />
145
177
  );
146
178
  };
@@ -194,3 +226,6 @@ password `welcome`.
194
226
  ### Additional Instructions
195
227
 
196
228
  - Run `yarn build` to bundle the app.
229
+
230
+ - Note: Run the following command before running rails test
231
+ `RAILS_ENV=test rails db:migrate`
package/dist/index.cjs.js CHANGED
@@ -1788,8 +1788,8 @@ function _toArray(arr) {
1788
1788
  return _arrayWithHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableRest();
1789
1789
  }
1790
1790
 
1791
- function ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1792
- function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1791
+ function ownKeys$6$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1792
+ function _objectSpread$6$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$6$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$6$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1793
1793
  var consoleLogger = {
1794
1794
  type: 'logger',
1795
1795
  log: function log(args) {
@@ -1867,7 +1867,7 @@ var Logger = function () {
1867
1867
  }, {
1868
1868
  key: "create",
1869
1869
  value: function create(moduleName) {
1870
- return new Logger(this.logger, _objectSpread$6(_objectSpread$6({}, {
1870
+ return new Logger(this.logger, _objectSpread$6$1(_objectSpread$6$1({}, {
1871
1871
  prefix: "".concat(this.prefix, ":").concat(moduleName, ":")
1872
1872
  }), this.options));
1873
1873
  }
@@ -4731,9 +4731,9 @@ function cape(m) {
4731
4731
  return unes[m];
4732
4732
  }
4733
4733
 
4734
- function ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4734
+ function ownKeys$6(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4735
4735
 
4736
- function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4736
+ function _objectSpread$6(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$6(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$6(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4737
4737
  var defaultOptions = {
4738
4738
  bindI18n: 'languageChanged',
4739
4739
  bindI18nStore: '',
@@ -4747,7 +4747,7 @@ var i18nInstance;
4747
4747
  var I18nContext = React__default["default"].createContext();
4748
4748
  function setDefaults() {
4749
4749
  var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
4750
- defaultOptions = _objectSpread$5(_objectSpread$5({}, defaultOptions), options);
4750
+ defaultOptions = _objectSpread$6(_objectSpread$6({}, defaultOptions), options);
4751
4751
  }
4752
4752
  function getDefaults() {
4753
4753
  return defaultOptions;
@@ -4874,9 +4874,9 @@ function hasLoadedNamespace(ns, i18n) {
4874
4874
  var _excluded = ["format"],
4875
4875
  _excluded2 = ["children", "count", "parent", "i18nKey", "context", "tOptions", "values", "defaults", "components", "ns", "i18n", "t", "shouldUnescape"];
4876
4876
 
4877
- function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4877
+ function ownKeys$5(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
4878
4878
 
4879
- function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4879
+ function _objectSpread$5(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$5(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$5(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
4880
4880
 
4881
4881
  function hasChildren(node, checkLength) {
4882
4882
  if (!node) return false;
@@ -4902,7 +4902,7 @@ function getAsArray(data) {
4902
4902
  }
4903
4903
 
4904
4904
  function mergeProps(source, target) {
4905
- var newTarget = _objectSpread$4({}, target);
4905
+ var newTarget = _objectSpread$5({}, target);
4906
4906
 
4907
4907
  newTarget.props = Object.assign(source.props, target.props);
4908
4908
  return newTarget;
@@ -4972,7 +4972,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
4972
4972
  getData(children);
4973
4973
  var ast = c.parse("<0>".concat(targetString, "</0>"));
4974
4974
 
4975
- var opts = _objectSpread$4(_objectSpread$4({}, data), combinedTOpts);
4975
+ var opts = _objectSpread$5(_objectSpread$5({}, data), combinedTOpts);
4976
4976
 
4977
4977
  function renderInner(child, node, rootReactNode) {
4978
4978
  var childs = getChildren(child);
@@ -4982,7 +4982,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
4982
4982
 
4983
4983
  function pushTranslatedJSX(child, inner, mem, i, isVoid) {
4984
4984
  if (child.dummy) child.children = inner;
4985
- mem.push(React__default["default"].cloneElement(child, _objectSpread$4(_objectSpread$4({}, child.props), {}, {
4985
+ mem.push(React__default["default"].cloneElement(child, _objectSpread$5(_objectSpread$5({}, child.props), {}, {
4986
4986
  key: i
4987
4987
  }), isVoid ? undefined : inner));
4988
4988
  }
@@ -5014,7 +5014,7 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
5014
5014
  } else if (isEmptyTransWithHTML) {
5015
5015
  var _inner = mapAST(reactNodes, node.children, rootReactNode);
5016
5016
 
5017
- mem.push(React__default["default"].cloneElement(child, _objectSpread$4(_objectSpread$4({}, child.props), {}, {
5017
+ mem.push(React__default["default"].cloneElement(child, _objectSpread$5(_objectSpread$5({}, child.props), {}, {
5018
5018
  key: i
5019
5019
  }), _inner));
5020
5020
  } else if (Number.isNaN(parseFloat(node.name))) {
@@ -5045,11 +5045,11 @@ function renderNodes(children, targetString, i18n, i18nOptions, combinedTOpts, s
5045
5045
  var content = node.children[0] ? translationContent : null;
5046
5046
  if (content) mem.push(content);
5047
5047
  } else if (node.children.length === 1 && translationContent) {
5048
- mem.push(React__default["default"].cloneElement(child, _objectSpread$4(_objectSpread$4({}, child.props), {}, {
5048
+ mem.push(React__default["default"].cloneElement(child, _objectSpread$5(_objectSpread$5({}, child.props), {}, {
5049
5049
  key: i
5050
5050
  }), translationContent));
5051
5051
  } else {
5052
- mem.push(React__default["default"].cloneElement(child, _objectSpread$4(_objectSpread$4({}, child.props), {}, {
5052
+ mem.push(React__default["default"].cloneElement(child, _objectSpread$5(_objectSpread$5({}, child.props), {}, {
5053
5053
  key: i
5054
5054
  })));
5055
5055
  }
@@ -5112,7 +5112,7 @@ function Trans(_ref) {
5112
5112
 
5113
5113
  if (context) tOptions.context = context;
5114
5114
 
5115
- var reactI18nextOptions = _objectSpread$4(_objectSpread$4({}, getDefaults()), i18n.options && i18n.options.react);
5115
+ var reactI18nextOptions = _objectSpread$5(_objectSpread$5({}, getDefaults()), i18n.options && i18n.options.react);
5116
5116
 
5117
5117
  var namespaces = ns || t.ns || defaultNSFromContext || i18n.options && i18n.options.defaultNS;
5118
5118
  namespaces = typeof namespaces === 'string' ? [namespaces] : namespaces || ['translation'];
@@ -5120,13 +5120,13 @@ function Trans(_ref) {
5120
5120
  var hashTransKey = reactI18nextOptions.hashTransKey;
5121
5121
  var key = i18nKey || (hashTransKey ? hashTransKey(defaultValue) : defaultValue);
5122
5122
  var interpolationOverride = values ? tOptions.interpolation : {
5123
- interpolation: _objectSpread$4(_objectSpread$4({}, tOptions.interpolation), {}, {
5123
+ interpolation: _objectSpread$5(_objectSpread$5({}, tOptions.interpolation), {}, {
5124
5124
  prefix: '#$?',
5125
5125
  suffix: '?$#'
5126
5126
  })
5127
5127
  };
5128
5128
 
5129
- var combinedTOpts = _objectSpread$4(_objectSpread$4(_objectSpread$4(_objectSpread$4({}, tOptions), {}, {
5129
+ var combinedTOpts = _objectSpread$5(_objectSpread$5(_objectSpread$5(_objectSpread$5({}, tOptions), {}, {
5130
5130
  count: count
5131
5131
  }, values), interpolationOverride), {}, {
5132
5132
  defaultValue: defaultValue,
@@ -5171,9 +5171,9 @@ function _slicedToArray(arr, i) {
5171
5171
  return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
5172
5172
  }
5173
5173
 
5174
- function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
5174
+ function ownKeys$4(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
5175
5175
 
5176
- function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$3(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
5176
+ function _objectSpread$4(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys$4(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys$4(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
5177
5177
  function useTranslation(ns) {
5178
5178
  var props = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
5179
5179
  var i18nFromProps = props.i18n;
@@ -5201,7 +5201,7 @@ function useTranslation(ns) {
5201
5201
 
5202
5202
  if (i18n.options.react && i18n.options.react.wait !== undefined) warnOnce('It seems you are still using the old wait option, you may migrate to the new useSuspense behaviour.');
5203
5203
 
5204
- var i18nOptions = _objectSpread$3(_objectSpread$3(_objectSpread$3({}, getDefaults()), i18n.options.react), props);
5204
+ var i18nOptions = _objectSpread$4(_objectSpread$4(_objectSpread$4({}, getDefaults()), i18n.options.react), props);
5205
5205
 
5206
5206
  var useSuspense = i18nOptions.useSuspense,
5207
5207
  keyPrefix = i18nOptions.keyPrefix;
@@ -5274,6 +5274,9 @@ var template = {
5274
5274
  addEmailTemplate: "Add new email template",
5275
5275
  addSmsTemplate: "Add new sms template",
5276
5276
  addWhatsappTemplate: "Add new whatsapp template",
5277
+ editEmailTemplate: "Edit email template",
5278
+ editSmsTemplate: "Edit sms template",
5279
+ editWhatsappTemplate: "Edit whatsapp template",
5277
5280
  search: "Search {{what}}",
5278
5281
  markAsActive: "Mark as active",
5279
5282
  markAsInactive: "Mark as inactive",
@@ -5314,9 +5317,13 @@ var sendMessage = {
5314
5317
  sms: "Send sms",
5315
5318
  selectTemplate: "Select a template"
5316
5319
  };
5320
+ var common = {
5321
+ send: "Send"
5322
+ };
5317
5323
  var en = {
5318
5324
  template: template,
5319
- sendMessage: sendMessage
5325
+ sendMessage: sendMessage,
5326
+ common: common
5320
5327
  };
5321
5328
 
5322
5329
  instance.use(Browser).use(initReactI18next).init({
@@ -5374,20 +5381,23 @@ var MESSAGE_TEMPLATES = {
5374
5381
  email: {
5375
5382
  label: t$1("template.emailTemplates"),
5376
5383
  value: "email_template",
5377
- addButtonText: t$1("template.addEmailTemplate"),
5378
- labelSingular: t$1("template.emailTemplate")
5384
+ addText: t$1("template.addEmailTemplate"),
5385
+ labelSingular: t$1("template.emailTemplate"),
5386
+ editText: t$1("template.editEmailTemplate")
5379
5387
  },
5380
5388
  sms: {
5381
5389
  label: t$1("template.smsTemplates"),
5382
5390
  value: "sms_template",
5383
- addButtonText: t$1("template.addSmsTemplate"),
5384
- labelSingular: t$1("template.smsTemplate")
5391
+ addText: t$1("template.addSmsTemplate"),
5392
+ labelSingular: t$1("template.smsTemplate"),
5393
+ editText: t$1("template.editSmsTemplate")
5385
5394
  },
5386
5395
  whatsapp: {
5387
5396
  label: t$1("template.whatsappTemplates"),
5388
5397
  value: "whatsapp_template",
5389
- addButtonText: t$1("template.addWhatsappTemplate"),
5390
- labelSingular: t$1("template.whatsappTemplate")
5398
+ addText: t$1("template.addWhatsappTemplate"),
5399
+ labelSingular: t$1("template.whatsappTemplate"),
5400
+ editText: t$1("template.editWhatsappTemplate")
5391
5401
  }
5392
5402
  };
5393
5403
  var DEFAULT_EDITOR_ROW_COUNT = 15;
@@ -5487,8 +5497,8 @@ var useTemplateStore = zustand.create(reactUtils.withImmutableActions(function (
5487
5497
  };
5488
5498
  }));
5489
5499
 
5490
- function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5491
- function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5500
+ function ownKeys$3(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
5501
+ function _objectSpread$3(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$3(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$3(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
5492
5502
  var RowActions = function RowActions(_ref) {
5493
5503
  var template = _ref.template,
5494
5504
  setManageTemplatePane = _ref.setManageTemplatePane;
@@ -5502,14 +5512,14 @@ var RowActions = function RowActions(_ref) {
5502
5512
  id = template.id;
5503
5513
  var templateType = useTemplateStore(ramda.prop("templateType"));
5504
5514
  var handleEditTemplate = function handleEditTemplate() {
5505
- return setManageTemplatePane(_objectSpread$2(_objectSpread$2({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5515
+ return setManageTemplatePane(_objectSpread$3(_objectSpread$3({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5506
5516
  isOpen: true,
5507
5517
  isEdit: true,
5508
5518
  template: template
5509
5519
  }));
5510
5520
  };
5511
5521
  var handleDeleteTemplate = function handleDeleteTemplate() {
5512
- return setManageTemplatePane(_objectSpread$2(_objectSpread$2({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5522
+ return setManageTemplatePane(_objectSpread$3(_objectSpread$3({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5513
5523
  isDelete: true,
5514
5524
  template: template
5515
5525
  }));
@@ -6078,8 +6088,8 @@ var TestMessage = function TestMessage(_ref) {
6078
6088
  }));
6079
6089
  };
6080
6090
 
6081
- function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6082
- function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6091
+ function ownKeys$2(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6092
+ function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6083
6093
  var Form$1 = function Form(_ref) {
6084
6094
  var onClose = _ref.onClose,
6085
6095
  isEdit = _ref.isEdit,
@@ -6096,7 +6106,7 @@ var Form$1 = function Form(_ref) {
6096
6106
  var templateType = useTemplateStore(ramda.prop("templateType"));
6097
6107
  var isEmailTemplate = ramda.equals(templateType, "email_template");
6098
6108
  var isTestTemplateVisible = ramda.includes(templateType, ["sms_template", "email_template"]) && shouldIncludeTestTemplate;
6099
- var _ref2 = isEmailTemplate ? [_objectSpread$1(_objectSpread$1({}, EMAIL_TEMPLATE_INITIAL_VALUES), ramda.pick(["name", "body", "subject", "active"], template)), EMAIL_TEMPLATE_FORM_SCHEMA] : [_objectSpread$1(_objectSpread$1({}, SMS_TEMPLATE_INITIAL_VALUES), ramda.pick(["name", "body", "active"], template)), SMS_TEMPLATE_FORM_VALIDATION_SCHEMA],
6109
+ var _ref2 = isEmailTemplate ? [_objectSpread$2(_objectSpread$2({}, EMAIL_TEMPLATE_INITIAL_VALUES), ramda.pick(["name", "body", "subject", "active"], template)), EMAIL_TEMPLATE_FORM_SCHEMA] : [_objectSpread$2(_objectSpread$2({}, SMS_TEMPLATE_INITIAL_VALUES), ramda.pick(["name", "body", "active"], template)), SMS_TEMPLATE_FORM_VALIDATION_SCHEMA],
6100
6110
  _ref3 = _slicedToArray(_ref2, 2),
6101
6111
  TEMPLATE_INITIAL_VALUES = _ref3[0],
6102
6112
  TEMPLATE_FORM_SCHEMA = _ref3[1];
@@ -6174,12 +6184,13 @@ var Form$1 = function Form(_ref) {
6174
6184
 
6175
6185
  var AddEdit = function AddEdit(_ref) {
6176
6186
  var onClose = _ref.onClose,
6177
- label = _ref.label,
6178
6187
  createUpdateTemplate = _ref.createUpdateTemplate,
6179
6188
  manageTemplatePane = _ref.manageTemplatePane,
6180
6189
  isTestMessageLoading = _ref.isTestMessageLoading,
6181
6190
  handleSubmitTestTemplate = _ref.handleSubmitTestTemplate,
6182
- shouldIncludeTestTemplate = _ref.shouldIncludeTestTemplate;
6191
+ shouldIncludeTestTemplate = _ref.shouldIncludeTestTemplate,
6192
+ addText = _ref.addText,
6193
+ editText = _ref.editText;
6183
6194
  var initialFocusField = React.useRef();
6184
6195
  var setInitialFocusField = function setInitialFocusField(fieldRef) {
6185
6196
  return initialFocusField.current = fieldRef;
@@ -6187,6 +6198,7 @@ var AddEdit = function AddEdit(_ref) {
6187
6198
  var isOpen = manageTemplatePane.isOpen,
6188
6199
  isEdit = manageTemplatePane.isEdit,
6189
6200
  template = manageTemplatePane.template;
6201
+ var label = isEdit ? editText : addText;
6190
6202
  return /*#__PURE__*/React__default["default"].createElement(neetoui.Pane, {
6191
6203
  initialFocusRef: initialFocusField,
6192
6204
  isOpen: isOpen,
@@ -6282,7 +6294,7 @@ var List = function List(_ref) {
6282
6294
  setPageProperties = _ref.setPageProperties,
6283
6295
  pageProperties = _ref.pageProperties,
6284
6296
  label = _ref.label,
6285
- addButtonText = _ref.addButtonText,
6297
+ addText = _ref.addText,
6286
6298
  isFilterApplied = _ref.isFilterApplied;
6287
6299
  var _useTranslation = useTranslation(),
6288
6300
  t = _useTranslation.t;
@@ -6326,7 +6338,7 @@ var List = function List(_ref) {
6326
6338
  className: "flex h-full w-full items-center justify-center"
6327
6339
  }, /*#__PURE__*/React__default["default"].createElement(neetoui.NoData, {
6328
6340
  primaryButtonProps: {
6329
- label: addButtonText,
6341
+ label: addText,
6330
6342
  onClick: function onClick() {
6331
6343
  return setManageTemplatePane(ramda.assoc("isOpen", true));
6332
6344
  }
@@ -6355,8 +6367,8 @@ var List = function List(_ref) {
6355
6367
  }));
6356
6368
  };
6357
6369
 
6358
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6359
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6370
+ function ownKeys$1(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6371
+ function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6360
6372
  var MessageTemplates = function MessageTemplates(_ref) {
6361
6373
  var _ref$breadcrumbs = _ref.breadcrumbs,
6362
6374
  breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
@@ -6393,11 +6405,12 @@ var MessageTemplates = function MessageTemplates(_ref) {
6393
6405
  var _MESSAGE_TEMPLATES$ty = MESSAGE_TEMPLATES[type],
6394
6406
  label = _MESSAGE_TEMPLATES$ty.label,
6395
6407
  value = _MESSAGE_TEMPLATES$ty.value,
6396
- addButtonText = _MESSAGE_TEMPLATES$ty.addButtonText,
6397
- labelSingular = _MESSAGE_TEMPLATES$ty.labelSingular;
6408
+ addText = _MESSAGE_TEMPLATES$ty.addText,
6409
+ labelSingular = _MESSAGE_TEMPLATES$ty.labelSingular,
6410
+ editText = _MESSAGE_TEMPLATES$ty.editText;
6398
6411
  var isFilterApplied = pure.isNotEmpty(filters) || pure.isNotEmpty(searchTerm);
6399
6412
  var handleActionClick = function handleActionClick() {
6400
- return setManageTemplatePane(_objectSpread(_objectSpread({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
6413
+ return setManageTemplatePane(_objectSpread$1(_objectSpread$1({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
6401
6414
  isOpen: true
6402
6415
  }));
6403
6416
  };
@@ -6411,13 +6424,13 @@ var MessageTemplates = function MessageTemplates(_ref) {
6411
6424
  });
6412
6425
  }, [value]);
6413
6426
  return /*#__PURE__*/React__default["default"].createElement(Container__default["default"], null, /*#__PURE__*/React__default["default"].createElement(NeetoHeader__default["default"], {
6414
- breadcrumbs: breadcrumbs,
6415
- searchProps: renderSearchProps(label, setSearchTerm, searchTerm),
6416
- title: label,
6417
6427
  actionBlock: /*#__PURE__*/React__default["default"].createElement(neetoui.Button, {
6418
- label: addButtonText,
6428
+ label: addText,
6419
6429
  onClick: handleActionClick
6420
- })
6430
+ }),
6431
+ breadcrumbs: breadcrumbs,
6432
+ searchProps: renderSearchProps(label, setSearchTerm, searchTerm),
6433
+ title: label
6421
6434
  }), /*#__PURE__*/React__default["default"].createElement(SubHeader__default["default"], {
6422
6435
  leftActionBlock: /*#__PURE__*/React__default["default"].createElement(neetoFiltersFrontend.Bar, {
6423
6436
  columns: filterColumns,
@@ -6435,7 +6448,7 @@ var MessageTemplates = function MessageTemplates(_ref) {
6435
6448
  }
6436
6449
  })
6437
6450
  }), /*#__PURE__*/React__default["default"].createElement(List, {
6438
- addButtonText: addButtonText,
6451
+ addText: addText,
6439
6452
  isFilterApplied: isFilterApplied,
6440
6453
  isLoading: isLoading,
6441
6454
  label: label,
@@ -6446,10 +6459,11 @@ var MessageTemplates = function MessageTemplates(_ref) {
6446
6459
  setPageProperties: setPageProperties,
6447
6460
  templatesData: templatesData
6448
6461
  }), /*#__PURE__*/React__default["default"].createElement(AddEdit, {
6462
+ addText: addText,
6449
6463
  createUpdateTemplate: createUpdateTemplate,
6464
+ editText: editText,
6450
6465
  handleSubmitTestTemplate: handleSubmitTestTemplate,
6451
6466
  isTestMessageLoading: isTestMessageLoading,
6452
- label: addButtonText,
6453
6467
  manageTemplatePane: manageTemplatePane,
6454
6468
  shouldIncludeTestTemplate: shouldIncludeTestTemplate,
6455
6469
  onClose: function onClose() {
@@ -6478,12 +6492,17 @@ var SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup__namespace.object().shape({
6478
6492
  })
6479
6493
  });
6480
6494
 
6495
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
6496
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
6481
6497
  var Form = function Form(_ref) {
6482
6498
  var isEmailTemplate = _ref.isEmailTemplate,
6483
6499
  onClose = _ref.onClose,
6484
6500
  templates = _ref.templates,
6485
6501
  handleSubmit = _ref.handleSubmit,
6486
- setInitialFocusField = _ref.setInitialFocusField;
6502
+ setInitialFocusField = _ref.setInitialFocusField,
6503
+ customFields = _ref.customFields,
6504
+ customFieldsInitialValues = _ref.customFieldsInitialValues,
6505
+ customFieldsValidationSchema = _ref.customFieldsValidationSchema;
6487
6506
  var editorRef = React.useRef(null);
6488
6507
  var _useTranslation = useTranslation(),
6489
6508
  t = _useTranslation.t;
@@ -6491,26 +6510,31 @@ var Form = function Form(_ref) {
6491
6510
  _ref3 = _slicedToArray(_ref2, 2),
6492
6511
  INITIAL_VALUES = _ref3[0],
6493
6512
  SEND_MESSAGE_FORM_SCHEMA = _ref3[1];
6513
+ var updatedInitialValues = ramda.mergeAll([INITIAL_VALUES, customFieldsInitialValues]);
6514
+ var updatedValidationSchema = yup__namespace.object().shape(_objectSpread(_objectSpread({}, SEND_MESSAGE_FORM_SCHEMA === null || SEND_MESSAGE_FORM_SCHEMA === void 0 ? void 0 : SEND_MESSAGE_FORM_SCHEMA.fields), customFieldsValidationSchema === null || customFieldsValidationSchema === void 0 ? void 0 : customFieldsValidationSchema.fields));
6515
+ var initialValueKeys = Object.keys(INITIAL_VALUES);
6494
6516
  return /*#__PURE__*/React__default["default"].createElement(formik$1.Form, {
6495
6517
  formProps: {
6496
6518
  noValidate: true,
6497
6519
  className: "flex w-full flex-col gap-y-4 pb-6"
6498
6520
  },
6499
6521
  formikProps: {
6500
- initialValues: INITIAL_VALUES,
6501
- validationSchema: SEND_MESSAGE_FORM_SCHEMA,
6522
+ initialValues: updatedInitialValues,
6523
+ validationSchema: updatedValidationSchema,
6502
6524
  onSubmit: handleSubmit
6503
6525
  }
6504
6526
  }, function (_ref4) {
6505
6527
  var dirty = _ref4.dirty,
6506
6528
  isSubmitting = _ref4.isSubmitting,
6507
- setValues = _ref4.setValues;
6508
- var handleTemplateChange = function handleTemplateChange(_ref5) {
6509
- var value = _ref5.value;
6529
+ setValues = _ref4.setValues,
6530
+ values = _ref4.values;
6531
+ var handleTemplateChange = function handleTemplateChange(value) {
6532
+ if (!value) return;
6533
+ var customFieldValues = ramda.omit(initialValueKeys, values);
6510
6534
  var template = pure.findBy({
6511
- id: value
6535
+ id: value === null || value === void 0 ? void 0 : value.value
6512
6536
  }, templates);
6513
- setValues(template);
6537
+ setValues(_objectSpread(_objectSpread({}, template), customFieldValues));
6514
6538
  editorRef.current.editor.commands.setContent(template.body);
6515
6539
  };
6516
6540
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Select, {
@@ -6519,16 +6543,16 @@ var Form = function Form(_ref) {
6519
6543
  innerRef: setInitialFocusField,
6520
6544
  label: t("template.title"),
6521
6545
  placeholder: t("sendMessage.selectTemplate"),
6522
- options: templates.map(function (_ref6) {
6523
- var name = _ref6.name,
6524
- id = _ref6.id;
6546
+ options: templates.map(function (_ref5) {
6547
+ var name = _ref5.name,
6548
+ id = _ref5.id;
6525
6549
  return {
6526
6550
  label: name,
6527
6551
  value: id
6528
6552
  };
6529
6553
  }),
6530
6554
  onChange: handleTemplateChange
6531
- }), isEmailTemplate && /*#__PURE__*/React__default["default"].createElement(formik$1.Input, {
6555
+ }), customFields, isEmailTemplate && /*#__PURE__*/React__default["default"].createElement(formik$1.Input, {
6532
6556
  required: true,
6533
6557
  label: t("template.subject"),
6534
6558
  name: "subject"
@@ -6566,14 +6590,20 @@ var SendMessagePane = function SendMessagePane(_ref) {
6566
6590
  _ref$handleSubmit = _ref.handleSubmit,
6567
6591
  handleSubmit = _ref$handleSubmit === void 0 ? pure.noop : _ref$handleSubmit,
6568
6592
  _ref$onClose = _ref.onClose,
6569
- onClose = _ref$onClose === void 0 ? pure.noop : _ref$onClose;
6593
+ onClose = _ref$onClose === void 0 ? pure.noop : _ref$onClose,
6594
+ _ref$customFields = _ref.customFields,
6595
+ customFields = _ref$customFields === void 0 ? null : _ref$customFields,
6596
+ _ref$customFieldsInit = _ref.customFieldsInitialValues,
6597
+ customFieldsInitialValues = _ref$customFieldsInit === void 0 ? {} : _ref$customFieldsInit,
6598
+ _ref$customFieldsVali = _ref.customFieldsValidationSchema,
6599
+ customFieldsValidationSchema = _ref$customFieldsVali === void 0 ? {} : _ref$customFieldsVali;
6600
+ var _useTranslation = useTranslation(),
6601
+ t = _useTranslation.t;
6570
6602
  var initialFocusField = React.useRef();
6571
6603
  var setInitialFocusField = function setInitialFocusField(fieldRef) {
6572
6604
  return initialFocusField.current = fieldRef;
6573
6605
  };
6574
- var _MESSAGE_TEMPLATES$ty = MESSAGE_TEMPLATES[type],
6575
- label = _MESSAGE_TEMPLATES$ty.label,
6576
- value = _MESSAGE_TEMPLATES$ty.value;
6606
+ var value = MESSAGE_TEMPLATES[type].value;
6577
6607
  var templateParams = {
6578
6608
  status: "active",
6579
6609
  templateType: value
@@ -6591,7 +6621,10 @@ var SendMessagePane = function SendMessagePane(_ref) {
6591
6621
  }, /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Header, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
6592
6622
  style: "h2",
6593
6623
  weight: "semibold"
6594
- }, label)), /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Body, null, /*#__PURE__*/React__default["default"].createElement(Form, {
6624
+ }, t("common.send"), " ", type)), /*#__PURE__*/React__default["default"].createElement(neetoui.Pane.Body, null, /*#__PURE__*/React__default["default"].createElement(Form, {
6625
+ customFields: customFields,
6626
+ customFieldsInitialValues: customFieldsInitialValues,
6627
+ customFieldsValidationSchema: customFieldsValidationSchema,
6595
6628
  handleSubmit: handleSubmit,
6596
6629
  isEmailTemplate: isEmailTemplate,
6597
6630
  setInitialFocusField: setInitialFocusField,