@bigbinary/neeto-form-frontend 4.4.6 → 4.4.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.
Files changed (54) hide show
  1. package/README.md +4 -1
  2. package/app/javascript/src/translations/en.json +10 -1
  3. package/dist/BuildForm.js +51 -9
  4. package/dist/BuildForm.js.map +1 -1
  5. package/dist/ExternalForm.js +19 -11
  6. package/dist/ExternalForm.js.map +1 -1
  7. package/dist/Submission.js +1 -1
  8. package/dist/UrlBuilder.js +12 -4
  9. package/dist/UrlBuilder.js.map +1 -1
  10. package/dist/{buildForm-D-epUrZG.js → buildForm-CrOWLvLE.js} +2 -2
  11. package/dist/{buildForm-D-epUrZG.js.map → buildForm-CrOWLvLE.js.map} +1 -1
  12. package/dist/{buildForm-CgofRtEN.js → buildForm-DfMpfuSp.js} +2 -2
  13. package/dist/{buildForm-CgofRtEN.js.map → buildForm-DfMpfuSp.js.map} +1 -1
  14. package/dist/cjs/BuildForm.js +51 -9
  15. package/dist/cjs/BuildForm.js.map +1 -1
  16. package/dist/cjs/ExternalForm.js +19 -11
  17. package/dist/cjs/ExternalForm.js.map +1 -1
  18. package/dist/cjs/Submission.js +1 -1
  19. package/dist/cjs/UrlBuilder.js +12 -4
  20. package/dist/cjs/UrlBuilder.js.map +1 -1
  21. package/dist/cjs/hooks.js +4 -4
  22. package/dist/cjs/index.js +8 -7
  23. package/dist/cjs/index.js.map +1 -1
  24. package/dist/{constants-BNfHPNOx.js → constants-Cj0XxE8a.js} +2 -1
  25. package/dist/constants-Cj0XxE8a.js.map +1 -0
  26. package/dist/{constants-CfUZ9B6N.js → constants-D5JlvWws.js} +2 -1
  27. package/dist/constants-D5JlvWws.js.map +1 -0
  28. package/dist/hooks.js +4 -4
  29. package/dist/{index-0m1EzLFY.js → index-Beo6ztaM.js} +2 -2
  30. package/dist/{index-0m1EzLFY.js.map → index-Beo6ztaM.js.map} +1 -1
  31. package/dist/{index-y4GiXx7o.js → index-DhtQJpD_.js} +2 -2
  32. package/dist/{index-y4GiXx7o.js.map → index-DhtQJpD_.js.map} +1 -1
  33. package/dist/index.js +8 -7
  34. package/dist/index.js.map +1 -1
  35. package/dist/{useFormSubmission-DyS5Dm1q.js → useFormSubmission-D3O7sDHp.js} +2 -2
  36. package/dist/{useFormSubmission-DyS5Dm1q.js.map → useFormSubmission-D3O7sDHp.js.map} +1 -1
  37. package/dist/{useFormSubmission-Cx63P761.js → useFormSubmission-PLRMfzJ3.js} +2 -2
  38. package/dist/{useFormSubmission-Cx63P761.js.map → useFormSubmission-PLRMfzJ3.js.map} +1 -1
  39. package/dist/{utils-C9nDMm4c.js → utils-CI844li1.js} +112 -46
  40. package/dist/utils-CI844li1.js.map +1 -0
  41. package/dist/{utils-DEBFghm4.js → utils-baAzU7l8.js} +112 -46
  42. package/dist/utils-baAzU7l8.js.map +1 -0
  43. package/dist/{yup-Dx1WK2_p.js → yup-CSYHMEsr.js} +26 -7
  44. package/dist/yup-CSYHMEsr.js.map +1 -0
  45. package/dist/{yup-CMEoabdy.js → yup-DMlViLLB.js} +27 -6
  46. package/dist/yup-DMlViLLB.js.map +1 -0
  47. package/package.json +5 -5
  48. package/types.d.ts +1 -0
  49. package/dist/constants-BNfHPNOx.js.map +0 -1
  50. package/dist/constants-CfUZ9B6N.js.map +0 -1
  51. package/dist/utils-C9nDMm4c.js.map +0 -1
  52. package/dist/utils-DEBFghm4.js.map +0 -1
  53. package/dist/yup-CMEoabdy.js.map +0 -1
  54. package/dist/yup-Dx1WK2_p.js.map +0 -1
@@ -5,14 +5,14 @@ var classnames = require('classnames');
5
5
  var neetoCist = require('@bigbinary/neeto-cist');
6
6
  var Spinner = require('@bigbinary/neetoui/Spinner');
7
7
  var ramda = require('ramda');
8
- var constants = require('../constants-CfUZ9B6N.js');
9
- var yup = require('../yup-CMEoabdy.js');
8
+ var constants = require('../constants-D5JlvWws.js');
9
+ var yup = require('../yup-DMlViLLB.js');
10
10
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
11
11
  var React = require('react');
12
12
  var dnd = require('@hello-pangea/dnd');
13
13
  var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
14
14
  var utils = require('@bigbinary/neeto-commons-frontend/utils');
15
- var buildForm = require('../buildForm-CgofRtEN.js');
15
+ var buildForm = require('../buildForm-DfMpfuSp.js');
16
16
  var shallow = require('zustand/shallow');
17
17
  var Alert = require('@bigbinary/neetoui/Alert');
18
18
  var reactI18next = require('react-i18next');
@@ -23,7 +23,7 @@ var MoreDropdown = require('@bigbinary/neeto-molecules/MoreDropdown');
23
23
  var Dropdown = require('@bigbinary/neetoui/Dropdown');
24
24
  var Tooltip = require('@bigbinary/neetoui/Tooltip');
25
25
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
26
- var index = require('../index-0m1EzLFY.js');
26
+ var index = require('../index-Beo6ztaM.js');
27
27
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
28
28
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
29
29
  var i18next = require('i18next');
@@ -178,6 +178,33 @@ var DeleteSmsReminderModal = function DeleteSmsReminderModal(_ref) {
178
178
  });
179
179
  };
180
180
 
181
+ var DeleteSpotModal = function DeleteSpotModal(_ref) {
182
+ var isOpen = _ref.isOpen,
183
+ onClose = _ref.onClose,
184
+ _ref$hostSpecificData = _ref.hostSpecificData,
185
+ hostSpecificData = _ref$hostSpecificData === void 0 ? {} : _ref$hostSpecificData;
186
+ var title = ramda.path(["spot", "deleteModal", "title"], hostSpecificData);
187
+ var description = ramda.path(["spot", "deleteModal", "description"], hostSpecificData);
188
+ return /*#__PURE__*/jsxRuntime.jsxs(Modal, {
189
+ isOpen: isOpen,
190
+ onClose: onClose,
191
+ children: [/*#__PURE__*/jsxRuntime.jsx(Modal.Header, {
192
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
193
+ "data-testid": "delete-spot-modal-header",
194
+ style: "h2",
195
+ weight: "medium",
196
+ children: title
197
+ })
198
+ }), /*#__PURE__*/jsxRuntime.jsx(Modal.Body, {
199
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
200
+ "data-testid": "delete-spot-modal-description",
201
+ style: "body2",
202
+ children: description
203
+ })
204
+ })]
205
+ });
206
+ };
207
+
181
208
  var ChangeLanguageDropdown = function ChangeLanguageDropdown(_ref) {
182
209
  var _findBy;
183
210
  var availableLanguages = _ref.availableLanguages;
@@ -437,6 +464,9 @@ var getUniqueNumbersFromExistingFieldCodes = function getUniqueNumbersFromExisti
437
464
  });
438
465
  };
439
466
  var generateFieldCodePrefix = function generateFieldCodePrefix(label, kind) {
467
+ if (kind === constants.QUESTION_TYPES.SPOT) {
468
+ return yup.SPOT_QUESTION_FIELD_CODE;
469
+ }
440
470
  var prefix;
441
471
  if (index.isNameQuestion(kind) || yup.NON_BASIC_LATIN_CHARACTERS_REGEX.test(label) || ramda.isEmpty(label)) {
442
472
  prefix = kind;
@@ -1054,7 +1084,7 @@ var Form$1 = function Form(_ref) {
1054
1084
  var canRestrictResponseVisibilityToHost = restrictResponseVisibilityToHost && !ramda.includes(kind, yup.NON_HIDEABLE_FIELDS);
1055
1085
  var canMarkResponsesAsReadOnly = markResponsesAsReadOnly && !ramda.includes(kind, yup.NON_READ_ONLY_FIELDS);
1056
1086
  var isBasicSettingsVisible = !isRequired && (!isImmutable || shouldShowHideSwitch);
1057
- var isSettingsBlockVisible = isBasicSettingsVisible || canMarkResponsesAsReadOnly;
1087
+ var isSettingsBlockVisible = kind !== constants.QUESTION_TYPES.SPOT && (isBasicSettingsVisible || canMarkResponsesAsReadOnly);
1058
1088
  var handleKindChange = function handleKindChange(option) {
1059
1089
  var data = buildQuestionData(option);
1060
1090
  updateFormState(data);
@@ -1120,7 +1150,7 @@ var Form$1 = function Form(_ref) {
1120
1150
  dataTestid: "settings-card",
1121
1151
  title: t("neetoForm.common.settings"),
1122
1152
  children: [isBasicSettingsVisible && /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
1123
- children: [!isImmutable && kind !== constants.QUESTION_TYPES.ADDRESS && /*#__PURE__*/jsxRuntime.jsx(RequiredSwitch, {}), shouldShowHideSwitch && /*#__PURE__*/jsxRuntime.jsx(Switch, {
1153
+ children: [!isImmutable && kind !== constants.QUESTION_TYPES.ADDRESS && kind !== constants.QUESTION_TYPES.SPOT && /*#__PURE__*/jsxRuntime.jsx(RequiredSwitch, {}), shouldShowHideSwitch && /*#__PURE__*/jsxRuntime.jsx(Switch, {
1124
1154
  label: t("neetoForm.common.hideQuestion"),
1125
1155
  name: "isHidden",
1126
1156
  labelProps: hideSwitchLabelProps(hideQuestionHelpDocUrl)
@@ -2744,8 +2774,12 @@ var Form = function Form(_ref) {
2744
2774
  setIsDeleteSmsReminderModalOpen = _useState8[1];
2745
2775
  var _useState9 = React.useState(false),
2746
2776
  _useState10 = _slicedToArray(_useState9, 2),
2747
- isManageQuestionPaneOpen = _useState10[0],
2748
- setIsManageQuestionPaneOpen = _useState10[1];
2777
+ isDeleteSpotModalOpen = _useState10[0],
2778
+ setIsDeleteSpotModalOpen = _useState10[1];
2779
+ var _useState11 = React.useState(false),
2780
+ _useState12 = _slicedToArray(_useState11, 2),
2781
+ isManageQuestionPaneOpen = _useState12[0],
2782
+ setIsManageQuestionPaneOpen = _useState12[1];
2749
2783
  var setFormData = buildForm.useBuildFormStore(ramda.prop("setFormData"));
2750
2784
  var _useCreateQuestion = constants.useCreateQuestion(formId, selectedLanguage, {
2751
2785
  onSuccess: function onSuccess() {
@@ -2836,6 +2870,8 @@ var Form = function Form(_ref) {
2836
2870
  var handleDelete = function handleDelete(question) {
2837
2871
  if (question.kind === constants.QUESTION_TYPES.SMS_REMINDER) {
2838
2872
  setIsDeleteSmsReminderModalOpen(true);
2873
+ } else if (question.kind === constants.QUESTION_TYPES.SPOT) {
2874
+ setIsDeleteSpotModalOpen(true);
2839
2875
  } else {
2840
2876
  setIsDeleteAlertOpen(true);
2841
2877
  }
@@ -2843,7 +2879,7 @@ var Form = function Form(_ref) {
2843
2879
  reactUtils.useOnClickOutside(containerRef, function () {
2844
2880
  return handleSelect({});
2845
2881
  }, {
2846
- enabled: !(isDeleteAlertOpen || isManageQuestionPaneOpen)
2882
+ enabled: !(isDeleteAlertOpen || isManageQuestionPaneOpen || isDeleteSmsReminderModalOpen || isDeleteSpotModalOpen)
2847
2883
  });
2848
2884
  React.useEffect(function () {
2849
2885
  onValueChange === null || onValueChange === void 0 || onValueChange(questions);
@@ -2868,6 +2904,12 @@ var Form = function Form(_ref) {
2868
2904
  onClose: function onClose() {
2869
2905
  return setIsDeleteSmsReminderModalOpen(false);
2870
2906
  }
2907
+ }), /*#__PURE__*/jsxRuntime.jsx(DeleteSpotModal, {
2908
+ hostSpecificData: hostSpecificData,
2909
+ isOpen: isDeleteSpotModalOpen,
2910
+ onClose: function onClose() {
2911
+ return setIsDeleteSpotModalOpen(false);
2912
+ }
2871
2913
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
2872
2914
  className: "neeto-form-nano-form-wrapper flex h-full flex-col",
2873
2915
  children: [formTitle && /*#__PURE__*/jsxRuntime.jsx(Overview, {