@bigbinary/neeto-message-templates-frontend 0.0.7 → 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;
@@ -5497,8 +5497,8 @@ var useTemplateStore = zustand.create(reactUtils.withImmutableActions(function (
5497
5497
  };
5498
5498
  }));
5499
5499
 
5500
- 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; }
5501
- 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; }
5502
5502
  var RowActions = function RowActions(_ref) {
5503
5503
  var template = _ref.template,
5504
5504
  setManageTemplatePane = _ref.setManageTemplatePane;
@@ -5512,14 +5512,14 @@ var RowActions = function RowActions(_ref) {
5512
5512
  id = template.id;
5513
5513
  var templateType = useTemplateStore(ramda.prop("templateType"));
5514
5514
  var handleEditTemplate = function handleEditTemplate() {
5515
- return setManageTemplatePane(_objectSpread$2(_objectSpread$2({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5515
+ return setManageTemplatePane(_objectSpread$3(_objectSpread$3({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5516
5516
  isOpen: true,
5517
5517
  isEdit: true,
5518
5518
  template: template
5519
5519
  }));
5520
5520
  };
5521
5521
  var handleDeleteTemplate = function handleDeleteTemplate() {
5522
- return setManageTemplatePane(_objectSpread$2(_objectSpread$2({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5522
+ return setManageTemplatePane(_objectSpread$3(_objectSpread$3({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
5523
5523
  isDelete: true,
5524
5524
  template: template
5525
5525
  }));
@@ -6088,8 +6088,8 @@ var TestMessage = function TestMessage(_ref) {
6088
6088
  }));
6089
6089
  };
6090
6090
 
6091
- 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; }
6092
- 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; }
6093
6093
  var Form$1 = function Form(_ref) {
6094
6094
  var onClose = _ref.onClose,
6095
6095
  isEdit = _ref.isEdit,
@@ -6106,7 +6106,7 @@ var Form$1 = function Form(_ref) {
6106
6106
  var templateType = useTemplateStore(ramda.prop("templateType"));
6107
6107
  var isEmailTemplate = ramda.equals(templateType, "email_template");
6108
6108
  var isTestTemplateVisible = ramda.includes(templateType, ["sms_template", "email_template"]) && shouldIncludeTestTemplate;
6109
- 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],
6110
6110
  _ref3 = _slicedToArray(_ref2, 2),
6111
6111
  TEMPLATE_INITIAL_VALUES = _ref3[0],
6112
6112
  TEMPLATE_FORM_SCHEMA = _ref3[1];
@@ -6367,8 +6367,8 @@ var List = function List(_ref) {
6367
6367
  }));
6368
6368
  };
6369
6369
 
6370
- 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; }
6371
- 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; }
6372
6372
  var MessageTemplates = function MessageTemplates(_ref) {
6373
6373
  var _ref$breadcrumbs = _ref.breadcrumbs,
6374
6374
  breadcrumbs = _ref$breadcrumbs === void 0 ? [] : _ref$breadcrumbs,
@@ -6410,7 +6410,7 @@ var MessageTemplates = function MessageTemplates(_ref) {
6410
6410
  editText = _MESSAGE_TEMPLATES$ty.editText;
6411
6411
  var isFilterApplied = pure.isNotEmpty(filters) || pure.isNotEmpty(searchTerm);
6412
6412
  var handleActionClick = function handleActionClick() {
6413
- return setManageTemplatePane(_objectSpread(_objectSpread({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
6413
+ return setManageTemplatePane(_objectSpread$1(_objectSpread$1({}, MESSAGE_TEMPLATE_INITIAL_STATE), {}, {
6414
6414
  isOpen: true
6415
6415
  }));
6416
6416
  };
@@ -6492,12 +6492,17 @@ var SMS_MESSAGE_FORM_VALIDATION_SCHEMA = yup__namespace.object().shape({
6492
6492
  })
6493
6493
  });
6494
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; }
6495
6497
  var Form = function Form(_ref) {
6496
6498
  var isEmailTemplate = _ref.isEmailTemplate,
6497
6499
  onClose = _ref.onClose,
6498
6500
  templates = _ref.templates,
6499
6501
  handleSubmit = _ref.handleSubmit,
6500
- setInitialFocusField = _ref.setInitialFocusField;
6502
+ setInitialFocusField = _ref.setInitialFocusField,
6503
+ customFields = _ref.customFields,
6504
+ customFieldsInitialValues = _ref.customFieldsInitialValues,
6505
+ customFieldsValidationSchema = _ref.customFieldsValidationSchema;
6501
6506
  var editorRef = React.useRef(null);
6502
6507
  var _useTranslation = useTranslation(),
6503
6508
  t = _useTranslation.t;
@@ -6505,26 +6510,31 @@ var Form = function Form(_ref) {
6505
6510
  _ref3 = _slicedToArray(_ref2, 2),
6506
6511
  INITIAL_VALUES = _ref3[0],
6507
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);
6508
6516
  return /*#__PURE__*/React__default["default"].createElement(formik$1.Form, {
6509
6517
  formProps: {
6510
6518
  noValidate: true,
6511
6519
  className: "flex w-full flex-col gap-y-4 pb-6"
6512
6520
  },
6513
6521
  formikProps: {
6514
- initialValues: INITIAL_VALUES,
6515
- validationSchema: SEND_MESSAGE_FORM_SCHEMA,
6522
+ initialValues: updatedInitialValues,
6523
+ validationSchema: updatedValidationSchema,
6516
6524
  onSubmit: handleSubmit
6517
6525
  }
6518
6526
  }, function (_ref4) {
6519
6527
  var dirty = _ref4.dirty,
6520
6528
  isSubmitting = _ref4.isSubmitting,
6521
- setValues = _ref4.setValues;
6522
- var handleTemplateChange = function handleTemplateChange(_ref5) {
6523
- 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);
6524
6534
  var template = pure.findBy({
6525
- id: value
6535
+ id: value === null || value === void 0 ? void 0 : value.value
6526
6536
  }, templates);
6527
- setValues(template);
6537
+ setValues(_objectSpread(_objectSpread({}, template), customFieldValues));
6528
6538
  editorRef.current.editor.commands.setContent(template.body);
6529
6539
  };
6530
6540
  return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(neetoui.Select, {
@@ -6533,16 +6543,16 @@ var Form = function Form(_ref) {
6533
6543
  innerRef: setInitialFocusField,
6534
6544
  label: t("template.title"),
6535
6545
  placeholder: t("sendMessage.selectTemplate"),
6536
- options: templates.map(function (_ref6) {
6537
- var name = _ref6.name,
6538
- id = _ref6.id;
6546
+ options: templates.map(function (_ref5) {
6547
+ var name = _ref5.name,
6548
+ id = _ref5.id;
6539
6549
  return {
6540
6550
  label: name,
6541
6551
  value: id
6542
6552
  };
6543
6553
  }),
6544
6554
  onChange: handleTemplateChange
6545
- }), isEmailTemplate && /*#__PURE__*/React__default["default"].createElement(formik$1.Input, {
6555
+ }), customFields, isEmailTemplate && /*#__PURE__*/React__default["default"].createElement(formik$1.Input, {
6546
6556
  required: true,
6547
6557
  label: t("template.subject"),
6548
6558
  name: "subject"
@@ -6580,7 +6590,13 @@ var SendMessagePane = function SendMessagePane(_ref) {
6580
6590
  _ref$handleSubmit = _ref.handleSubmit,
6581
6591
  handleSubmit = _ref$handleSubmit === void 0 ? pure.noop : _ref$handleSubmit,
6582
6592
  _ref$onClose = _ref.onClose,
6583
- 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;
6584
6600
  var _useTranslation = useTranslation(),
6585
6601
  t = _useTranslation.t;
6586
6602
  var initialFocusField = React.useRef();
@@ -6606,6 +6622,9 @@ var SendMessagePane = function SendMessagePane(_ref) {
6606
6622
  style: "h2",
6607
6623
  weight: "semibold"
6608
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,
6609
6628
  handleSubmit: handleSubmit,
6610
6629
  isEmailTemplate: isEmailTemplate,
6611
6630
  setInitialFocusField: setInitialFocusField,