@bigbinary/neeto-form-frontend 1.2.50 → 1.2.51

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.cjs.js CHANGED
@@ -11027,20 +11027,38 @@ var StarRating$3 = function StarRating(_ref) {
11027
11027
  }));
11028
11028
  };
11029
11029
 
11030
- var useUpdateEditorContent = function useUpdateEditorContent(editorRef, fieldName) {
11030
+ var useUpdateEditorContent = function useUpdateEditorContent(editorRef, fieldName, value) {
11031
+ var initialStateRef = React$2.useRef({
11032
+ language: "",
11033
+ value: null
11034
+ });
11031
11035
  var _useBuildFormState = useBuildFormState(),
11032
11036
  formId = _useBuildFormState.formId,
11033
11037
  language = _useBuildFormState.selectedLanguage;
11038
+ var setEditorContent = function setEditorContent(content) {
11039
+ var _editorRef$current$ed;
11040
+ return (_editorRef$current$ed = editorRef.current.editor) === null || _editorRef$current$ed === void 0 || (_editorRef$current$ed = _editorRef$current$ed.commands) === null || _editorRef$current$ed === void 0 ? void 0 : _editorRef$current$ed.setContent(content);
11041
+ };
11042
+ React$2.useEffect(function () {
11043
+ if (initialStateRef.current["language"] !== language) {
11044
+ initialStateRef.current["language"] = language;
11045
+ initialStateRef.current["value"] = null;
11046
+ return;
11047
+ }
11048
+ if (initialStateRef.current["value"] === null && value !== null) {
11049
+ setEditorContent(value);
11050
+ initialStateRef.current["value"] = value;
11051
+ }
11052
+ }, [language, value]);
11034
11053
  useFetchQuestions({
11035
11054
  formId: formId,
11036
11055
  language: language,
11037
11056
  onSuccess: function onSuccess(data) {
11038
- var _editorRef$current$ed;
11039
11057
  var pathArray = fieldName.split(".").map(function (part) {
11040
11058
  var parsedPart = parseInt(part);
11041
11059
  return isNaN(parsedPart) ? part : parsedPart;
11042
11060
  });
11043
- (_editorRef$current$ed = editorRef.current.editor) === null || _editorRef$current$ed === void 0 || (_editorRef$current$ed = _editorRef$current$ed.commands) === null || _editorRef$current$ed === void 0 || _editorRef$current$ed.setContent(ramda.path(pathArray, data));
11061
+ setEditorContent(ramda.path(pathArray, data));
11044
11062
  }
11045
11063
  });
11046
11064
  };
@@ -11052,7 +11070,6 @@ var Terms$1 = function Terms(_ref) {
11052
11070
  editor: {}
11053
11071
  });
11054
11072
  var fieldName = "".concat(name, ".label");
11055
- useUpdateEditorContent(editorRef, fieldName);
11056
11073
  var _useField = formik.useField({
11057
11074
  name: fieldName,
11058
11075
  validate: validateEditorContent(editorRef)
@@ -11061,6 +11078,7 @@ var Terms$1 = function Terms(_ref) {
11061
11078
  value = _useField2[0].value,
11062
11079
  error = _useField2[1].error,
11063
11080
  setValue = _useField2[2].setValue;
11081
+ useUpdateEditorContent(editorRef, fieldName, value);
11064
11082
  return /*#__PURE__*/React__default["default"].createElement("div", {
11065
11083
  className: "w-full cursor-auto"
11066
11084
  }, /*#__PURE__*/React__default["default"].createElement(neetoEditor.Editor, {
@@ -11099,7 +11117,6 @@ var Editor = function Editor(_ref) {
11099
11117
  editor: {}
11100
11118
  });
11101
11119
  var fieldName = "".concat(name, ".label");
11102
- useUpdateEditorContent(editorRef, fieldName);
11103
11120
  var _useField = formik.useField({
11104
11121
  name: fieldName,
11105
11122
  validate: validateEditorContent(editorRef)
@@ -11112,6 +11129,7 @@ var Editor = function Editor(_ref) {
11112
11129
  _useField2$2 = _useField2[2],
11113
11130
  setTouched = _useField2$2.setTouched,
11114
11131
  setValue = _useField2$2.setValue;
11132
+ useUpdateEditorContent(editorRef, fieldName, value);
11115
11133
  return /*#__PURE__*/React__default["default"].createElement("div", {
11116
11134
  className: "w-full cursor-auto"
11117
11135
  }, /*#__PURE__*/React__default["default"].createElement(neetoEditor.Editor, {
@@ -26703,24 +26721,24 @@ var RichTextEditor = function RichTextEditor(_ref) {
26703
26721
  nodeId = question.nodeId;
26704
26722
  var label = fieldWithFallback(question, "label");
26705
26723
  var debouncedPlaceholder = reactUtils.useDebounce(fieldWithFallback(question, "placeholder"), 300);
26724
+ var propsToCompare = preview ? ["debouncedPlaceholder", "error"] : ["debouncedPlaceholder"];
26706
26725
  return /*#__PURE__*/React__default["default"].createElement("div", {
26707
26726
  className: "neeto-form-engine-input__wrapper"
26708
26727
  }, /*#__PURE__*/React__default["default"].createElement("div", {
26709
26728
  className: "neeto-form-engine-input__label-wrapper"
26710
26729
  }, label && /*#__PURE__*/React__default["default"].createElement("label", {
26711
26730
  className: "neeto-form-engine-label"
26712
- }, getLabel(label, isRequired))), /*#__PURE__*/React__default["default"].createElement(formik.FastField, _extends$8({
26731
+ }, getLabel(label, isRequired))), /*#__PURE__*/React__default["default"].createElement(formik.FastField, {
26713
26732
  debouncedPlaceholder: debouncedPlaceholder,
26714
26733
  error: errors[name],
26715
26734
  name: name || nodeId,
26735
+ shouldUpdate: isPropsUnequal(propsToCompare),
26716
26736
  validate: validateFieldValue({
26717
26737
  kind: kind,
26718
26738
  label: label,
26719
26739
  isRequired: isRequired
26720
26740
  })
26721
- }, preview && {
26722
- shouldUpdate: isPropsUnequal(["debouncedPlaceholder", "error"])
26723
- }), function (_ref2) {
26741
+ }, function (_ref2) {
26724
26742
  var field = _ref2.field,
26725
26743
  form = _ref2.form,
26726
26744
  meta = _ref2.meta;