@bigbinary/neeto-form-frontend 1.2.42 → 1.2.44

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,11 +1,11 @@
1
1
  import * as React$2 from 'react';
2
2
  import React__default, { useState, useRef, useEffect, useContext, useLayoutEffect as useLayoutEffect$1, forwardRef, useImperativeHandle, Fragment, useReducer, useCallback as useCallback$1, useMemo as useMemo$1, createContext, createElement } from 'react';
3
- import { useField, useFormikContext, FieldArray, Form as Form$1, Formik, Field, FastField } from 'formik';
4
- import { noop as noop$4, slugify, filterBy, findBy, removeBy, isPresent as isPresent$1, isNotPresent, isNotEmpty, findById, notEqualsDeep } from '@bigbinary/neeto-cist';
3
+ import { useFormikContext, useField, FieldArray, Form as Form$1, Formik, Field, FastField } from 'formik';
4
+ import { noop as noop$4, slugify, filterBy, findBy, isNotEmpty, truncate, humanize, removeBy, isPresent as isPresent$1, isNotPresent, findById, notEqualsDeep } from '@bigbinary/neeto-cist';
5
5
  import { withEventTargetValue, showThumbsUpToastr, getQueryParams, dateFormat } from '@bigbinary/neeto-commons-frontend/utils';
6
6
  import PageLoader from '@bigbinary/neeto-molecules/PageLoader';
7
7
  import { Tooltip, Dropdown as Dropdown$2, Alert, Typography, Button as Button$1, Label, Checkbox as Checkbox$1, Toastr, MultiEmailInput, DatePicker, Radio as Radio$1, Select, Textarea as Textarea$1, Input as Input$2, Spinner as Spinner$2 } from '@bigbinary/neetoui';
8
- import { assoc, prop, isEmpty, path, values, compose as compose$1, trim, useWith, split, either, isNil, equals, difference, reject, pluck, keys, pick, omit, insert, not, pipe as pipe$1, toLower, map, includes, identity, isNotNil, times, clamp as clamp$2, filter as filter$1 } from 'ramda';
8
+ import { assoc, mergeLeft, prop, isEmpty, path, values, compose as compose$1, trim, useWith, split, either, isNil, equals, difference, reject, pluck, keys, pick, omit, insert, isNotNil, not, pipe as pipe$1, toLower, map, includes, identity, times, clamp as clamp$2, filter as filter$1 } from 'ramda';
9
9
  import { useQuery, useQueryClient, useMutation } from 'react-query';
10
10
  import i18next, { t as t$4 } from 'i18next';
11
11
  import { Input, Email as Email$2, Phone as Phone$2, Globe, Up, Down, MenuHorizontal, Delete, Plus, NeetoInvisible, Checkbox as Checkbox$2, Radio, Dropdown as Dropdown$3, Rating as Rating$4, Smiley, Calendar, Upload, Check, Close, FileGeneric } from '@bigbinary/neeto-icons';
@@ -564,8 +564,8 @@ var neetoFormApi = {
564
564
 
565
565
  var _excluded$c = ["formId", "preview", "language"],
566
566
  _excluded3$1 = ["formId", "submissionId"];
567
- function ownKeys$h(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
568
- function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
567
+ function ownKeys$i(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
568
+ function _objectSpread$h(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$i(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$i(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
569
569
  var useForm = function useForm(_ref) {
570
570
  var formId = _ref.formId,
571
571
  _ref$preview = _ref.preview,
@@ -575,14 +575,14 @@ var useForm = function useForm(_ref) {
575
575
  options = _objectWithoutProperties$1(_ref, _excluded$c);
576
576
  return useQuery([QUERY_KEYS.QUESTIONS, preview ? "preview/".concat(formId) : formId, language], function () {
577
577
  return neetoFormApi.getPublicQuestions(formId, language);
578
- }, _objectSpread$g({
578
+ }, _objectSpread$h({
579
579
  keepPreviousData: true
580
580
  }, options));
581
581
  };
582
582
  var useCreateForm = function useCreateForm(options) {
583
583
  var language = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "en";
584
584
  var queryClient = useQueryClient();
585
- return useMutation(neetoFormApi.createForm, _objectSpread$g(_objectSpread$g({}, options), {}, {
585
+ return useMutation(neetoFormApi.createForm, _objectSpread$h(_objectSpread$h({}, options), {}, {
586
586
  onSuccess: function onSuccess(form) {
587
587
  var _options$onSuccess;
588
588
  queryClient.setQueryData(QUERY_KEYS.QUESTIONS, function (forms) {
@@ -602,23 +602,17 @@ var useUpdateForm = function useUpdateForm(options) {
602
602
  var id = _ref2.id,
603
603
  values = _ref2.values;
604
604
  return neetoFormApi.updateForm(id, values);
605
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
605
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
606
606
  onSuccess: function onSuccess(data, _ref3) {
607
607
  var id = _ref3.id;
608
- queryClient.setQueryData([QUERY_KEYS.QUESTIONS, id, language], function (form) {
609
- return _objectSpread$g(_objectSpread$g({}, form), {}, {
610
- title: data.title
611
- });
612
- });
613
- queryClient.setQueryData([QUERY_KEYS.QUESTIONS, "preview/".concat(id), language], function (form) {
614
- return _objectSpread$g(_objectSpread$g({}, form), {}, {
615
- title: data.title,
616
- questions: data.questions
617
- });
618
- });
608
+ queryClient.setQueryData([QUERY_KEYS.QUESTIONS, id, language], assoc("title", data.title));
609
+ queryClient.setQueryData([QUERY_KEYS.QUESTIONS, "preview/".concat(id), language], mergeLeft({
610
+ questions: data.questions,
611
+ title: data.title
612
+ }));
619
613
  queryClient.invalidateQueries([QUERY_KEYS.FORMS]);
620
- queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, id, language]);
621
- queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, "preview/".concat(id), language]);
614
+ queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, id]);
615
+ queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, "preview/".concat(id)]);
622
616
  options.onSuccess && options.onSuccess(data);
623
617
  }
624
618
  }));
@@ -629,13 +623,15 @@ var useUpdateQuestions = function useUpdateQuestions(options, language) {
629
623
  var id = _ref4.id,
630
624
  values = _ref4.values;
631
625
  return neetoFormApi.updateQuestions(id, values);
632
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
626
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
633
627
  onSuccess: function onSuccess() {
634
628
  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
635
629
  args[_key] = arguments[_key];
636
630
  }
637
631
  var data = args[0],
638
632
  id = args[1].id;
633
+ queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, id]);
634
+ queryClient.invalidateQueries([QUERY_KEYS.QUESTIONS, "preview/".concat(id)]);
639
635
  queryClient.setQueryData([QUERY_KEYS.QUESTIONS, id, language], assoc("questions", data.questions));
640
636
  queryClient.setQueryData([QUERY_KEYS.QUESTIONS, "preview/".concat(id), language], assoc("questions", data.questions));
641
637
  options.onSuccess && options.onSuccess.apply(options, args);
@@ -643,7 +639,7 @@ var useUpdateQuestions = function useUpdateQuestions(options, language) {
643
639
  }));
644
640
  };
645
641
  var useForms = function useForms(options) {
646
- return useQuery([QUERY_KEYS.FORMS], neetoFormApi.getForms, _objectSpread$g({
642
+ return useQuery([QUERY_KEYS.FORMS], neetoFormApi.getForms, _objectSpread$h({
647
643
  keepPreviousData: true
648
644
  }, options));
649
645
  };
@@ -651,7 +647,7 @@ var useDeleteForm = function useDeleteForm(options) {
651
647
  return useMutationWithInvalidation(function (_ref5) {
652
648
  var id = _ref5.id;
653
649
  return neetoFormApi.destroyForm(id);
654
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
650
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
655
651
  keysToInvalidate: function keysToInvalidate(_, _ref6) {
656
652
  var id = _ref6.id;
657
653
  return [QUERY_KEYS.FORMS, [QUERY_KEYS.QUESTIONS, id], [QUERY_KEYS.QUESTIONS, "preview/".concat(id)]];
@@ -667,7 +663,7 @@ var useSubmission = function useSubmission(_ref8) {
667
663
  options = _objectWithoutProperties$1(_ref8, _excluded3$1);
668
664
  return useQuery([QUERY_KEYS.SUBMISSION, formId, submissionId], function () {
669
665
  return neetoFormApi.getPublicSubmission(formId, submissionId);
670
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
666
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
671
667
  keepPreviousData: true
672
668
  }));
673
669
  };
@@ -677,7 +673,7 @@ var useCreateSubmission = function useCreateSubmission(options) {
677
673
  var formId = _ref9.formId,
678
674
  values = _ref9.values;
679
675
  return neetoFormApi.submitPublicForm(formId, values);
680
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
676
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
681
677
  onSuccess: function onSuccess() {
682
678
  var _data$submission, _data$submission2;
683
679
  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
@@ -698,7 +694,7 @@ var useUpdateSubmission = function useUpdateSubmission(options) {
698
694
  var formId = _ref10.formId,
699
695
  values = _ref10.values;
700
696
  return neetoFormApi.updatePublicSubmission(formId, values);
701
- }, _objectSpread$g(_objectSpread$g({}, options), {}, {
697
+ }, _objectSpread$h(_objectSpread$h({}, options), {}, {
702
698
  onSuccess: function onSuccess() {
703
699
  var _data$submission3;
704
700
  for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
@@ -714,102 +710,12 @@ var useUpdateSubmission = function useUpdateSubmission(options) {
714
710
  }));
715
711
  };
716
712
 
717
- ({
718
- questions: [{
719
- id: "bb101126-4183-4ddf-adff-7563a2be0b19",
720
- kind: "paragraph",
721
- displayOrder: 1,
722
- displayKind: "Description Field",
723
- label: t$4("neetoForm.common.fillTheFormToChat"),
724
- placeholder: "",
725
- isRequired: false,
726
- options: [],
727
- nodeId: "bb101126-4183-4ddf-adff-7563a2be0b19"
728
- }, {
729
- id: "a8e0178e-44df-465e-8acb-ef5d1c08d541",
730
- kind: "email",
731
- displayOrder: 2,
732
- displayKind: "Email Input Field",
733
- label: t$4("neetoForm.common.email"),
734
- placeholder: "",
735
- isRequired: true,
736
- options: [],
737
- nodeId: "a8e0178e-44df-465e-8acb-ef5d1c08d541"
738
- }, {
739
- id: "a7d3e47d-f7a2-4bf9-aaea-d301ad62d8f6",
740
- label: t$4("neetoForm.common.selectOne"),
741
- isRequired: false,
742
- options: [{
743
- label: "ABC",
744
- id: "ABC"
745
- }, {
746
- label: "EFG",
747
- id: "EFG"
748
- }, {
749
- label: "QWE",
750
- id: "QWE"
751
- }],
752
- kind: "checkbox",
753
- nodeId: "f32ad8aa-039a-4b70-b3af-b97ed6fc67a6"
754
- }, {
755
- id: "a7d3e47d-f7a2-4bf9-aaea-d301ad62wew",
756
- label: t$4("neetoForm.common.rate"),
757
- isRequired: true,
758
- highestRatingLabel: "",
759
- averageRatingLabel: "",
760
- lowestRatingLabel: "",
761
- kind: "rating",
762
- nodeId: "236a8cb3-b86d-4c30-9c18-f0d69788f6bc"
763
- }, {
764
- id: "a7d3e47d-f7a2-4bf9-aaea-d301ad62d8as",
765
- label: t$4("neetoForm.common.phone"),
766
- kind: "phone",
767
- nodeId: "5dd3be53-ec99-48e2-bf21-298b6108cb00"
768
- }, {
769
- id: "a7d3e47d-f7a2-4bf9-aaea-d301ad62d8f32",
770
- label: t$4("neetoForm.common.select"),
771
- isRequired: false,
772
- options: [{
773
- label: "A",
774
- id: "A"
775
- }, {
776
- label: "B",
777
- id: "B"
778
- }, {
779
- label: "C",
780
- id: "C"
781
- }],
782
- kind: "dropdown",
783
- nodeId: "e65f27ea-a9b9-45b1-a8de-efb27a5b3e72"
784
- }, {
785
- id: "a7d3e47d-f7a2-4bf9-aaea-d301ad62d8f8",
786
- label: "Nice",
787
- kind: "paragraph",
788
- nodeId: "15507c92-4bb5-4428-bc2b-0a7b078a144a"
789
- }, {
790
- id: "a7d3e47d-f7a2-4bf9-aaea-d301addw2d8f9",
791
- label: t$4("neetoForm.common.singleChoice"),
792
- isRequired: false,
793
- options: [{
794
- label: "A",
795
- id: "A"
796
- }, {
797
- label: "B",
798
- id: "B"
799
- }, {
800
- label: "C",
801
- id: "C"
802
- }],
803
- kind: "radio",
804
- nodeId: "37683bae-da1b-4890-ade9-0664006dc57d"
805
- }]
806
- });
807
- var QUESTIONS_WITHOUT_FIELD_CODE = ["paragraph", "termsandcondition", "condition", "file_upload"];
808
- var RESERVED_FIELD_CODES = ["month", "date", "time"];
809
713
  var DEFAULT_AVAILABLE_LANGUAGES = [{
810
714
  code: "en",
811
715
  name: "English"
812
716
  }];
717
+ var QUESTIONS_WITHOUT_FIELD_CODE = ["paragraph", "termsandcondition", "condition", "file_upload"];
718
+ var RESERVED_FIELD_CODES = ["month", "date", "time"];
813
719
 
814
720
  function _arrayWithHoles$3(arr) {
815
721
  if (Array.isArray(arr)) return arr;
@@ -892,7 +798,7 @@ function _defineProperty$5(obj, key, value) {
892
798
  return obj;
893
799
  }
894
800
 
895
- function ownKeys$g(e, r) {
801
+ function ownKeys$h(e, r) {
896
802
  var t = Object.keys(e);
897
803
  if (Object.getOwnPropertySymbols) {
898
804
  var o = Object.getOwnPropertySymbols(e);
@@ -905,9 +811,9 @@ function ownKeys$g(e, r) {
905
811
  function _objectSpread2(e) {
906
812
  for (var r = 1; r < arguments.length; r++) {
907
813
  var t = null != arguments[r] ? arguments[r] : {};
908
- r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) {
814
+ r % 2 ? ownKeys$h(Object(t), !0).forEach(function (r) {
909
815
  _defineProperty$5(e, r, t[r]);
910
- }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) {
816
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$h(Object(t)).forEach(function (r) {
911
817
  Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));
912
818
  });
913
819
  }
@@ -9778,8 +9684,8 @@ const ConnectedDroppable = connect(makeMapStateToProps, mapDispatchToProps, (sta
9778
9684
  })(Droppable$1);
9779
9685
  var ConnectedDroppable$1 = ConnectedDroppable;
9780
9686
 
9781
- function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9782
- function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9687
+ function ownKeys$g(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
9688
+ function _objectSpread$g(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$g(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$g(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
9783
9689
  var defaultConfig = {
9784
9690
  strict: true,
9785
9691
  matchKey: "value"
@@ -9787,7 +9693,7 @@ var defaultConfig = {
9787
9693
  var findOptionByValue = function findOptionByValue(value) {
9788
9694
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
9789
9695
  var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
9790
- var configObject = _objectSpread$f(_objectSpread$f({}, defaultConfig), config);
9696
+ var configObject = _objectSpread$g(_objectSpread$g({}, defaultConfig), config);
9791
9697
  var matchKey = configObject.matchKey,
9792
9698
  strict = configObject.strict;
9793
9699
  return options.find(function (option) {
@@ -9801,7 +9707,7 @@ var filterOptionsByValues = function filterOptionsByValues() {
9801
9707
  var values = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
9802
9708
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
9803
9709
  var config = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
9804
- var configObject = _objectSpread$f(_objectSpread$f({}, defaultConfig), config);
9710
+ var configObject = _objectSpread$g(_objectSpread$g({}, defaultConfig), config);
9805
9711
  var matchKey = configObject.matchKey,
9806
9712
  strict = configObject.strict;
9807
9713
  return options.filter(function (option) {
@@ -9819,7 +9725,7 @@ var destroyFromList = function destroyFromList(items, index) {
9819
9725
  var nextItems = _toConsumableArray$1(items);
9820
9726
  nextItems.splice(index, 1);
9821
9727
  if (itemToRemove.id) {
9822
- nextItems.push(_objectSpread$f(_objectSpread$f({}, itemToRemove), {}, {
9728
+ nextItems.push(_objectSpread$g(_objectSpread$g({}, itemToRemove), {}, {
9823
9729
  _destroy: true
9824
9730
  }));
9825
9731
  }
@@ -9867,8 +9773,7 @@ var useBuildFormState = function useBuildFormState() {
9867
9773
  };
9868
9774
 
9869
9775
  var ChangeLanguageDropdown = function ChangeLanguageDropdown(_ref) {
9870
- var dirty = _ref.dirty,
9871
- initialLanguage = _ref.initialLanguage,
9776
+ var initialLanguage = _ref.initialLanguage,
9872
9777
  languages = _ref.languages,
9873
9778
  onChange = _ref.onChange;
9874
9779
  var _useState = useState(false),
@@ -9881,6 +9786,8 @@ var ChangeLanguageDropdown = function ChangeLanguageDropdown(_ref) {
9881
9786
  setSelectedLanguage = _useState4[1];
9882
9787
  var _useTranslation = useTranslation(),
9883
9788
  t = _useTranslation.t;
9789
+ var _useFormikContext = useFormikContext(),
9790
+ dirty = _useFormikContext.dirty;
9884
9791
  var languageChangeHandler = function languageChangeHandler(code) {
9885
9792
  if (!dirty) {
9886
9793
  onChange(code);
@@ -9925,7 +9832,6 @@ var Overview = function Overview(_ref) {
9925
9832
  description = _ref.description,
9926
9833
  availableLanguages = _ref.availableLanguages,
9927
9834
  selectedLanguage = _ref.selectedLanguage,
9928
- dirty = _ref.dirty,
9929
9835
  onLanguageChange = _ref.onLanguageChange;
9930
9836
  return /*#__PURE__*/React__default.createElement("div", {
9931
9837
  className: "mb-4 flex-shrink-0"
@@ -9937,7 +9843,6 @@ var Overview = function Overview(_ref) {
9937
9843
  style: "h4",
9938
9844
  weight: "semibold"
9939
9845
  }, title), availableLanguages.length > 1 && /*#__PURE__*/React__default.createElement(ChangeLanguageDropdown, {
9940
- dirty: dirty,
9941
9846
  initialLanguage: selectedLanguage,
9942
9847
  languages: availableLanguages,
9943
9848
  onChange: onLanguageChange
@@ -11043,19 +10948,21 @@ var Terms$1 = function Terms(_ref) {
11043
10948
  value = _useField2[0].value,
11044
10949
  error = _useField2[1].error,
11045
10950
  setValue = _useField2[2].setValue;
10951
+ useEffect(function () {
10952
+ var _editorRef$current$ed;
10953
+ (_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(value);
10954
+ }, [value]);
11046
10955
  return /*#__PURE__*/React__default.createElement("div", {
11047
10956
  className: "w-full cursor-auto"
11048
10957
  }, /*#__PURE__*/React__default.createElement(Editor$1, {
11049
- disabled: isLabelDisabled,
11050
10958
  error: error,
10959
+ disabled: isLabelDisabled,
11051
10960
  id: "editor",
11052
10961
  initialValue: value,
11053
10962
  key: "".concat(name, ".label"),
11054
10963
  name: "".concat(name, ".label"),
11055
10964
  ref: editorRef,
11056
- onChange: function onChange(text) {
11057
- setValue(text);
11058
- }
10965
+ onChange: setValue
11059
10966
  }));
11060
10967
  };
11061
10968
 
@@ -11104,6 +11011,10 @@ var Editor = function Editor(_ref) {
11104
11011
  touched = _useField2$.touched,
11105
11012
  error = _useField2$.error,
11106
11013
  setTouched = _useField2[2].setTouched;
11014
+ useEffect(function () {
11015
+ var _editorRef$current$ed;
11016
+ (_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(value);
11017
+ }, [value]);
11107
11018
  return /*#__PURE__*/React__default.createElement("div", {
11108
11019
  className: "w-full cursor-auto"
11109
11020
  }, /*#__PURE__*/React__default.createElement(Editor$1, {
@@ -11118,11 +11029,11 @@ var Editor = function Editor(_ref) {
11118
11029
  name: fieldName,
11119
11030
  ref: editorRef,
11120
11031
  onBlur: function onBlur() {
11121
- setTouched(true);
11032
+ return setTouched(true);
11122
11033
  },
11123
11034
  onChange: function onChange(text) {
11124
- var _editorRef$current$ed;
11125
- setFieldValue((_editorRef$current$ed = editorRef.current.editor) === null || _editorRef$current$ed === void 0 || (_editorRef$current$ed = _editorRef$current$ed.contentComponent) === null || _editorRef$current$ed === void 0 || (_editorRef$current$ed = _editorRef$current$ed.props) === null || _editorRef$current$ed === void 0 ? void 0 : _editorRef$current$ed.name, text);
11035
+ var _editorRef$current$ed2;
11036
+ setFieldValue((_editorRef$current$ed2 = editorRef.current.editor) === null || _editorRef$current$ed2 === void 0 || (_editorRef$current$ed2 = _editorRef$current$ed2.contentComponent) === null || _editorRef$current$ed2 === void 0 || (_editorRef$current$ed2 = _editorRef$current$ed2.props) === null || _editorRef$current$ed2 === void 0 ? void 0 : _editorRef$current$ed2.name, text);
11126
11037
  }
11127
11038
  }));
11128
11039
  };
@@ -11353,6 +11264,8 @@ var INDEPENDENT_LABELS_MAP = {
11353
11264
  };
11354
11265
  var PADDED_FIELDS = ["paragraph", "termsandcondition"];
11355
11266
 
11267
+ function ownKeys$f(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11268
+ function _objectSpread$f(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$f(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$f(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11356
11269
  var FormField = function FormField(props) {
11357
11270
  var _INDEPENDENT_LABELS_M;
11358
11271
  var item = props.item,
@@ -11381,21 +11294,21 @@ var FormField = function FormField(props) {
11381
11294
  isSingular = _getActiveKindDetails.isSingular;
11382
11295
  return /*#__PURE__*/React__default.createElement(Accordion, {
11383
11296
  disabledAddButtonTooltipProps: disabledAddButtonTooltipProps,
11384
- icon: FieldIcon,
11385
11297
  isDeletable: isDeletable,
11386
11298
  isExpanded: isExpanded,
11387
11299
  kindUniqueOn: kindUniqueOn,
11388
- label: (_INDEPENDENT_LABELS_M = INDEPENDENT_LABELS_MAP[kind]) !== null && _INDEPENDENT_LABELS_M !== void 0 ? _INDEPENDENT_LABELS_M : label,
11389
- padded: !PADDED_FIELDS.includes(kind),
11390
11300
  questionKinds: questionKinds,
11391
11301
  showAddQuestionDivider: showAddQuestionDivider,
11302
+ icon: FieldIcon,
11303
+ label: (_INDEPENDENT_LABELS_M = INDEPENDENT_LABELS_MAP[kind]) !== null && _INDEPENDENT_LABELS_M !== void 0 ? _INDEPENDENT_LABELS_M : label,
11304
+ padded: !PADDED_FIELDS.includes(kind),
11392
11305
  onAdd: onAddNew,
11393
11306
  onDelete: onRemove,
11394
11307
  onDuplicate: !isSingular && onDuplicate,
11395
11308
  onToggle: function onToggle() {
11396
11309
  return onChangeExpanded(!isExpanded);
11397
11310
  }
11398
- }, /*#__PURE__*/React__default.createElement(FieldComponent, _extends$8({
11311
+ }, /*#__PURE__*/React__default.createElement(FieldComponent, _objectSpread$f({
11399
11312
  isRequired: isRequired
11400
11313
  }, props)));
11401
11314
  };
@@ -11617,12 +11530,6 @@ var getAvailableQuestionKinds = function getAvailableQuestionKinds(_ref5) {
11617
11530
  });
11618
11531
  }, allQuestionKinds);
11619
11532
  };
11620
- var sliceLabel = function sliceLabel(label) {
11621
- if (label && label.length > 23) {
11622
- return "".concat(label.slice(0, 20), "...");
11623
- }
11624
- return label;
11625
- };
11626
11533
 
11627
11534
  var _path$2, _path2, _path3, _path4, _path5, _path6, _path7;
11628
11535
  function _extends$2() { _extends$2 = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$2.apply(this, arguments); }
@@ -11705,7 +11612,6 @@ var _excluded$6 = ["questionKinds", "showAddQuestionDivider", "onValueChange", "
11705
11612
  function ownKeys$d(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
11706
11613
  function _objectSpread$d(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$d(Object(t), !0).forEach(function (r) { _defineProperty$6(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$d(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
11707
11614
  var Form = function Form(_ref) {
11708
- var _INDEPENDENT_LABELS_M, _questions$deleteQues, _questions$deleteQues2;
11709
11615
  var questionKinds = _ref.questionKinds,
11710
11616
  showAddQuestionDivider = _ref.showAddQuestionDivider,
11711
11617
  onValueChange = _ref.onValueChange,
@@ -11817,14 +11723,23 @@ var Form = function Form(_ref) {
11817
11723
  resetForm();
11818
11724
  onLanguageChange(code);
11819
11725
  };
11726
+ var deleteAlertMessageLabel = function deleteAlertMessageLabel() {
11727
+ var questionKind = questions[deleteQuestionIndex].kind;
11728
+ var independentLabel = INDEPENDENT_LABELS_MAP[questionKind];
11729
+ if (isNotNil(independentLabel)) return independentLabel;
11730
+ var questionLabel = questions[deleteQuestionIndex].label;
11731
+ if (isNotEmpty(questionLabel)) return truncate(questionLabel, 40);
11732
+ return humanize(questionKind);
11733
+ };
11820
11734
  return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Alert, {
11821
11735
  isOpen: deleteQuestionIndex !== null,
11822
11736
  submitButtonLabel: t("neetoForm.common.delete"),
11823
11737
  title: t("neetoForm.questions.deleteAlert.title"),
11824
- message: /*#__PURE__*/React__default.createElement(Trans, {
11738
+ message: deleteQuestionIndex && /*#__PURE__*/React__default.createElement(Trans, {
11825
11739
  i18nKey: "neetoForm.questions.deleteAlert.message",
11826
11740
  values: {
11827
- label: (_INDEPENDENT_LABELS_M = INDEPENDENT_LABELS_MAP[(_questions$deleteQues = questions[deleteQuestionIndex]) === null || _questions$deleteQues === void 0 ? void 0 : _questions$deleteQues.kind]) !== null && _INDEPENDENT_LABELS_M !== void 0 ? _INDEPENDENT_LABELS_M : sliceLabel((_questions$deleteQues2 = questions[deleteQuestionIndex]) === null || _questions$deleteQues2 === void 0 ? void 0 : _questions$deleteQues2.label)
11741
+ count: availableLanguages.length,
11742
+ label: deleteAlertMessageLabel()
11828
11743
  }
11829
11744
  }),
11830
11745
  onClose: function onClose() {
@@ -11843,7 +11758,6 @@ var Form = function Form(_ref) {
11843
11758
  noValidate: true
11844
11759
  }), formTitle && /*#__PURE__*/React__default.createElement(Overview, {
11845
11760
  availableLanguages: availableLanguages,
11846
- dirty: dirty,
11847
11761
  selectedLanguage: selectedLanguage,
11848
11762
  description: formDescription,
11849
11763
  title: formTitle,
@@ -11937,29 +11851,34 @@ var getActiveQuestionKindDetails = function getActiveQuestionKindDetails(_ref) {
11937
11851
  };
11938
11852
 
11939
11853
  /* eslint-disable @bigbinary/neeto/file-name-and-export-name-standards */
11940
- var requiredLabel = function requiredLabel() {
11941
- var errorMessage = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : i18next.t("neetoForm.common.fieldReq", {
11942
- field: i18next.t("neetoForm.questions.common.questionFields.field.label")
11943
- });
11944
- return string().required(errorMessage);
11854
+ var requiredLabelValidation = function requiredLabelValidation(schema, field) {
11855
+ return schema.required(i18next.t("neetoForm.common.fieldReq", {
11856
+ field: field
11857
+ }));
11945
11858
  };
11946
11859
  var formValidationSchema = object().shape({
11947
11860
  questions: array().of(object().shape({
11948
- label: requiredLabel().when("kind", {
11949
- is: "paragraph",
11950
- then: requiredLabel(i18next.t("neetoForm.common.paragraphCantBeEmpty"))
11861
+ label: string().when("_destroy", {
11862
+ is: true,
11863
+ otherwise: function otherwise(schema) {
11864
+ return schema.when("kind", {
11865
+ is: "paragraph",
11866
+ then: function then(schema) {
11867
+ return schema.required(i18next.t("neetoForm.common.paragraphCantBeEmpty"));
11868
+ },
11869
+ otherwise: function otherwise(schema) {
11870
+ return requiredLabelValidation(schema, i18next.t("neetoForm.questions.common.questionFields.field.label"));
11871
+ }
11872
+ });
11873
+ }
11951
11874
  }),
11952
11875
  kind: string().required(),
11953
11876
  fieldCode: string().trim().notOneOf(RESERVED_FIELD_CODES, i18next.t("neetoForm.error.invalidFieldCode")).when("kind", function (kind, schema) {
11954
- return QUESTIONS_WITHOUT_FIELD_CODE.includes(kind) ? schema.notRequired() : schema.required(i18next.t("neetoForm.common.fieldReq", {
11955
- field: i18next.t("neetoForm.questions.common.questionFields.field.fieldCode")
11956
- }));
11877
+ return QUESTIONS_WITHOUT_FIELD_CODE.includes(kind) ? schema.notRequired() : requiredLabelValidation(schema, i18next.t("neetoForm.questions.common.questionFields.field.fieldCode"));
11957
11878
  }),
11958
11879
  optionsAttributes: array().when("kind", function (kind, schema) {
11959
11880
  return ["radio", "checkbox", "dropdown"].includes(kind) ? schema.of(object().shape({
11960
- label: requiredLabel(i18next.t("neetoForm.common.fieldReq", {
11961
- field: i18next.t("neetoForm.questions.common.questionFields.field.option")
11962
- }))
11881
+ label: requiredLabelValidation(string(), i18next.t("neetoForm.questions.common.questionFields.field.option"))
11963
11882
  })) : schema.notRequired();
11964
11883
  }),
11965
11884
  highestRatingLabel: string().nullable(),
@@ -12048,23 +11967,22 @@ var BuildForm = function BuildForm(_ref) {
12048
11967
  } : _useForm$data,
12049
11968
  questions = _useForm$data2.questions,
12050
11969
  isQuestionsLoading = _useForm$data2.isQuestionsLoading,
12051
- isLoading = _useForm.isLoading;
11970
+ isLoading = _useForm.isLoading,
11971
+ refetch = _useForm.refetch;
12052
11972
  if (isLoading || showLoader && isQuestionsLoading) {
12053
11973
  return /*#__PURE__*/React__default.createElement("div", {
12054
11974
  className: "flex h-full w-full items-center justify-center py-6"
12055
11975
  }, /*#__PURE__*/React__default.createElement(PageLoader, null));
12056
11976
  }
12057
- var handleSubmit = function handleSubmit(payload, _ref2) {
12058
- var resetForm = _ref2.resetForm;
11977
+ var handleSubmit = function handleSubmit(payload) {
12059
11978
  updateQuestions({
12060
11979
  id: id,
12061
11980
  values: _objectSpread$c({
12062
- neetoFormQuestion: _objectSpread$c(_objectSpread$c({}, payload), {}, {
12063
- language: selectedLanguage
12064
- })
11981
+ language: selectedLanguage,
11982
+ neetoFormQuestion: payload
12065
11983
  }, buildRequestArgs)
12066
11984
  }, {
12067
- onSuccess: resetForm
11985
+ onSuccess: refetch
12068
11986
  });
12069
11987
  };
12070
11988
  var onValueChange = function onValueChange(questions) {
@@ -12077,8 +11995,8 @@ var BuildForm = function BuildForm(_ref) {
12077
11995
  var isDeletable = isQuestionDeletable !== null && isQuestionDeletable !== void 0 ? isQuestionDeletable : function (question) {
12078
11996
  return !nonRemovableFields.includes(question.kind);
12079
11997
  };
12080
- var isRequiredField = isFieldRequired !== null && isFieldRequired !== void 0 ? isFieldRequired : function (_ref3) {
12081
- var kind = _ref3.kind;
11998
+ var isRequiredField = isFieldRequired !== null && isFieldRequired !== void 0 ? isFieldRequired : function (_ref2) {
11999
+ var kind = _ref2.kind;
12082
12000
  return requiredFields.includes(kind);
12083
12001
  };
12084
12002
  var isDisabledFieldLabel = isFieldLabelDisabled !== null && isFieldLabelDisabled !== void 0 ? isFieldLabelDisabled : function () {
@@ -12096,9 +12014,9 @@ var BuildForm = function BuildForm(_ref) {
12096
12014
  },
12097
12015
  validationSchema: formValidationSchema,
12098
12016
  onSubmit: handleSubmit
12099
- }, function (_ref4) {
12100
- var errors = _ref4.errors,
12101
- setFieldError = _ref4.setFieldError;
12017
+ }, function (_ref3) {
12018
+ var errors = _ref3.errors,
12019
+ setFieldError = _ref3.setFieldError;
12102
12020
  return /*#__PURE__*/React__default.createElement(Form, _extends$8({}, _objectSpread$c(_objectSpread$c({}, formDomProps), {}, {
12103
12021
  availableLanguages: availableLanguages,
12104
12022
  cancelButtonProps: cancelButtonProps,
@@ -27030,7 +26948,7 @@ var ExternalForm = function ExternalForm(_ref) {
27030
26948
  _ref$enablePreFilling = _ref.enablePreFilling,
27031
26949
  enablePreFilling = _ref$enablePreFilling === void 0 ? false : _ref$enablePreFilling,
27032
26950
  _ref$language = _ref.language,
27033
- language = _ref$language === void 0 ? "en" : _ref$language;
26951
+ language = _ref$language === void 0 ? i18next.resolvedLanguage : _ref$language;
27034
26952
  var _useState = useState(false),
27035
26953
  _useState2 = _slicedToArray$3(_useState, 2),
27036
26954
  isSubmitted = _useState2[0],