@bigbinary/neetoui 8.1.1 → 8.1.3

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 (121) hide show
  1. package/dist/ActionDropdown.js +1 -1
  2. package/dist/Alert.js +2 -3
  3. package/dist/Alert.js.map +1 -1
  4. package/dist/Button.js +6 -66
  5. package/dist/Button.js.map +1 -1
  6. package/dist/Checkbox.js +1 -1
  7. package/dist/ColorPicker.js +1 -1
  8. package/dist/DatePicker.js +5 -5
  9. package/dist/Dropdown.js +1 -1
  10. package/dist/{HeaderCellMenu-5ba3873f.js → HeaderCellMenu-df9eb629.js} +1 -1
  11. package/dist/{HeaderCellMenu-5ba3873f.js.map → HeaderCellMenu-df9eb629.js.map} +1 -1
  12. package/dist/Input.js +1 -1
  13. package/dist/Label.js +1 -1
  14. package/dist/Modal.js +2 -3
  15. package/dist/Modal.js.map +1 -1
  16. package/dist/MultiEmailInput.js +1 -1
  17. package/dist/NoData.js +1 -1
  18. package/dist/Pane.js +2 -3
  19. package/dist/Pane.js.map +1 -1
  20. package/dist/Radio.js +1 -1
  21. package/dist/Select.js +0 -1
  22. package/dist/Select.js.map +1 -1
  23. package/dist/Slider.js +1 -1
  24. package/dist/Spinner.js +1 -9
  25. package/dist/Spinner.js.map +1 -1
  26. package/dist/Switch.js +1 -1
  27. package/dist/Table.js +2 -2
  28. package/dist/{Textarea-f6ad0ef9.js → Textarea-b14bae86.js} +1 -1
  29. package/dist/{Textarea-f6ad0ef9.js.map → Textarea-b14bae86.js.map} +1 -1
  30. package/dist/Textarea.js +2 -2
  31. package/dist/TimePicker.js +5 -5
  32. package/dist/TreeSelect.js +1 -1
  33. package/dist/cjs/ActionDropdown.js +1 -1
  34. package/dist/cjs/Alert.js +2 -3
  35. package/dist/cjs/Alert.js.map +1 -1
  36. package/dist/cjs/Button.js +6 -66
  37. package/dist/cjs/Button.js.map +1 -1
  38. package/dist/cjs/Checkbox.js +1 -1
  39. package/dist/cjs/ColorPicker.js +1 -1
  40. package/dist/cjs/DatePicker.js +5 -5
  41. package/dist/cjs/Dropdown.js +1 -1
  42. package/dist/cjs/{HeaderCellMenu-1eb017e2.js → HeaderCellMenu-3aab0902.js} +1 -1
  43. package/dist/cjs/{HeaderCellMenu-1eb017e2.js.map → HeaderCellMenu-3aab0902.js.map} +1 -1
  44. package/dist/cjs/Input.js +1 -1
  45. package/dist/cjs/Label.js +1 -1
  46. package/dist/cjs/Modal.js +2 -3
  47. package/dist/cjs/Modal.js.map +1 -1
  48. package/dist/cjs/MultiEmailInput.js +1 -1
  49. package/dist/cjs/NoData.js +1 -1
  50. package/dist/cjs/Pane.js +2 -3
  51. package/dist/cjs/Pane.js.map +1 -1
  52. package/dist/cjs/Radio.js +1 -1
  53. package/dist/cjs/Select.js +0 -1
  54. package/dist/cjs/Select.js.map +1 -1
  55. package/dist/cjs/Slider.js +1 -1
  56. package/dist/cjs/Spinner.js +1 -9
  57. package/dist/cjs/Spinner.js.map +1 -1
  58. package/dist/cjs/Switch.js +1 -1
  59. package/dist/cjs/Table.js +2 -2
  60. package/dist/cjs/{Textarea-af523fdb.js → Textarea-eaf8b986.js} +1 -1
  61. package/dist/cjs/{Textarea-af523fdb.js.map → Textarea-eaf8b986.js.map} +1 -1
  62. package/dist/cjs/Textarea.js +2 -2
  63. package/dist/cjs/TimePicker.js +5 -5
  64. package/dist/cjs/TreeSelect.js +1 -1
  65. package/dist/cjs/formik/ActionBlock.js +1 -1
  66. package/dist/cjs/formik/BlockNavigation.js +2 -3
  67. package/dist/cjs/formik/BlockNavigation.js.map +1 -1
  68. package/dist/cjs/formik/Button.js +1 -1
  69. package/dist/cjs/formik/Checkbox.js +1 -1
  70. package/dist/cjs/formik/Form.js +56 -48
  71. package/dist/cjs/formik/Form.js.map +1 -1
  72. package/dist/cjs/formik/Input.js +1 -1
  73. package/dist/cjs/formik/MultiEmailInput.js +1 -1
  74. package/dist/cjs/formik/Radio.js +1 -1
  75. package/dist/cjs/formik/Select.js +1 -2
  76. package/dist/cjs/formik/Select.js.map +1 -1
  77. package/dist/cjs/formik/Slider.js +1 -1
  78. package/dist/cjs/formik/Switch.js +1 -1
  79. package/dist/cjs/formik/Textarea.js +2 -2
  80. package/dist/cjs/formik/TreeSelect.js +1 -1
  81. package/dist/cjs/formik/index.js +3 -5
  82. package/dist/cjs/formik/index.js.map +1 -1
  83. package/dist/cjs/{index-34eccc77.js → index-6f49589a.js} +3 -3
  84. package/dist/cjs/{index-34eccc77.js.map → index-6f49589a.js.map} +1 -1
  85. package/dist/cjs/index.css +1 -1
  86. package/dist/cjs/index.js +4 -5
  87. package/dist/cjs/index.js.map +1 -1
  88. package/dist/cjs/{useOverlayManager-91348551.js → useOverlayManager-763ee731.js} +87 -2
  89. package/dist/cjs/useOverlayManager-763ee731.js.map +1 -0
  90. package/dist/formik/ActionBlock.js +1 -1
  91. package/dist/formik/BlockNavigation.js +2 -3
  92. package/dist/formik/BlockNavigation.js.map +1 -1
  93. package/dist/formik/Button.js +1 -1
  94. package/dist/formik/Checkbox.js +1 -1
  95. package/dist/formik/Form.js +54 -47
  96. package/dist/formik/Form.js.map +1 -1
  97. package/dist/formik/Input.js +1 -1
  98. package/dist/formik/MultiEmailInput.js +1 -1
  99. package/dist/formik/Radio.js +1 -1
  100. package/dist/formik/Select.js +1 -2
  101. package/dist/formik/Select.js.map +1 -1
  102. package/dist/formik/Slider.js +1 -1
  103. package/dist/formik/Switch.js +1 -1
  104. package/dist/formik/Textarea.js +2 -2
  105. package/dist/formik/TreeSelect.js +1 -1
  106. package/dist/formik/index.js +3 -5
  107. package/dist/formik/index.js.map +1 -1
  108. package/dist/{index-23406db4.js → index-94a0e8d0.js} +3 -3
  109. package/dist/{index-23406db4.js.map → index-94a0e8d0.js.map} +1 -1
  110. package/dist/index.css +1 -1
  111. package/dist/index.js +4 -5
  112. package/dist/index.js.map +1 -1
  113. package/dist/{useOverlayManager-c4efbaee.js → useOverlayManager-5be3be10.js} +87 -2
  114. package/dist/useOverlayManager-5be3be10.js.map +1 -0
  115. package/package.json +1 -1
  116. package/dist/cjs/index-63580e68.js +0 -92
  117. package/dist/cjs/index-63580e68.js.map +0 -1
  118. package/dist/cjs/useOverlayManager-91348551.js.map +0 -1
  119. package/dist/index-283bc6a6.js +0 -90
  120. package/dist/index-283bc6a6.js.map +0 -1
  121. package/dist/useOverlayManager-c4efbaee.js.map +0 -1
@@ -1,20 +1,22 @@
1
1
  'use strict';
2
2
 
3
+ var _extends = require('@babel/runtime/helpers/extends');
3
4
  var React = require('react');
4
5
  var formik = require('formik');
5
- var index = require('../index-63580e68.js');
6
- var _extends = require('@babel/runtime/helpers/extends');
6
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
7
  var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
8
8
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
9
9
  var _regeneratorRuntime = require('@babel/runtime/regenerator');
10
+ var ramda = require('ramda');
10
11
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
11
12
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
12
- var ramda = require('ramda');
13
+ var neetoCist = require('@bigbinary/neeto-cist');
13
14
 
14
15
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
15
16
 
16
- var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
17
  var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
18
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
19
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
18
20
  var _asyncToGenerator__default = /*#__PURE__*/_interopDefaultLegacy(_asyncToGenerator);
19
21
  var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
20
22
  var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime);
@@ -42,10 +44,20 @@ var getErrorFieldName = function getErrorFieldName(formikErrors) {
42
44
  var _transformObjectToDot;
43
45
  return (_transformObjectToDot = transformObjectToDotNotation(formikErrors)) === null || _transformObjectToDot === void 0 ? void 0 : _transformObjectToDot[0];
44
46
  };
45
- var scrollToError = function scrollToError(formRef, errors) {
47
+ var getFieldsWithServerError = function getFieldsWithServerError() {
48
+ var status = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
49
+ return Object.keys(status).filter(function (fieldName) {
50
+ return neetoCist.isPresent(status[fieldName]);
51
+ });
52
+ };
53
+ var scrollToError = function scrollToError(formRef, errors, status) {
46
54
  var fieldErrorName = getErrorFieldName(errors);
47
- if (!fieldErrorName) return;
48
- var errorFormElement = formRef.current.querySelector("[name=\"".concat(fieldErrorName, "\"]"));
55
+ var _getFieldsWithServerE = getFieldsWithServerError(status),
56
+ _getFieldsWithServerE2 = _slicedToArray__default["default"](_getFieldsWithServerE, 1),
57
+ fieldWithServerError = _getFieldsWithServerE2[0];
58
+ if (!fieldErrorName && !fieldWithServerError) return;
59
+ var errorFieldName = fieldErrorName || fieldWithServerError;
60
+ var errorFormElement = formRef.current.querySelector("[name=\"".concat(errorFieldName, "\"]"));
49
61
  errorFormElement === null || errorFormElement === void 0 || errorFormElement.scrollIntoView({
50
62
  behavior: "smooth",
51
63
  block: "center"
@@ -57,15 +69,21 @@ var ScrollToErrorField = function ScrollToErrorField(_ref) {
57
69
  var _useFormikContext = formik.useFormikContext(),
58
70
  submitCount = _useFormikContext.submitCount,
59
71
  isValid = _useFormikContext.isValid,
60
- errors = _useFormikContext.errors;
72
+ errors = _useFormikContext.errors,
73
+ status = _useFormikContext.status;
61
74
  React.useEffect(function () {
62
- if (!formRef.current || isValid) return;
63
- scrollToError(formRef, errors);
75
+ var fieldsWithServerError = getFieldsWithServerError(status);
76
+ if (!formRef.current || isValid && ramda.isEmpty(fieldsWithServerError)) {
77
+ return;
78
+ }
79
+ scrollToError(formRef, errors, status);
64
80
  }, [submitCount]);
65
81
  return null;
66
82
  };
67
83
 
68
84
  var _excluded = ["validateForm", "setErrors", "setTouched", "submitForm"];
85
+ 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; }
86
+ 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__default["default"](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; }
69
87
  var FormWrapper = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
70
88
  var className = _ref.className,
71
89
  formProps = _ref.formProps,
@@ -78,12 +96,13 @@ var FormWrapper = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
78
96
  submitForm = _useFormikContext.submitForm,
79
97
  formikBag = _objectWithoutProperties__default["default"](_useFormikContext, _excluded);
80
98
  var isFormDirty = formikBag.dirty,
81
- isSubmitting = formikBag.isSubmitting;
99
+ isSubmitting = formikBag.isSubmitting,
100
+ status = formikBag.status;
82
101
  var formRefForScrollToErrorField = React.useRef();
83
102
  var formRef = ref || formRefForScrollToErrorField;
84
103
  var handleKeyDown = React.useCallback( /*#__PURE__*/function () {
85
104
  var _ref2 = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(event) {
86
- var isEventFromEditorOrTextarea, errors;
105
+ var isEventFromEditorOrTextarea, errors, fieldStatuses;
87
106
  return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
88
107
  while (1) switch (_context.prev = _context.next) {
89
108
  case 0:
@@ -118,30 +137,31 @@ var FormWrapper = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
118
137
  return validateForm();
119
138
  case 13:
120
139
  errors = _context.sent;
121
- if (Object.keys(errors).length > 0) {
140
+ fieldStatuses = getFieldsWithServerError(status);
141
+ if (Object.keys(errors).length > 0 || Object.keys(fieldStatuses).length > 0) {
122
142
  setErrors(errors);
123
- setTouched(errors);
124
- scrollToErrorField && scrollToError(formRef, errors);
143
+ setTouched(_objectSpread(_objectSpread({}, errors), status));
144
+ scrollToErrorField && scrollToError(formRef, errors, status);
125
145
  } else {
126
146
  submitForm();
127
147
  }
128
- _context.next = 20;
148
+ _context.next = 21;
129
149
  break;
130
- case 17:
131
- _context.prev = 17;
150
+ case 18:
151
+ _context.prev = 18;
132
152
  _context.t0 = _context["catch"](10);
133
153
  // eslint-disable-next-line no-console
134
154
  console.error("An unhandled error was caught from validateForm()", _context.t0);
135
- case 20:
155
+ case 21:
136
156
  case "end":
137
157
  return _context.stop();
138
158
  }
139
- }, _callee, null, [[10, 17]]);
159
+ }, _callee, null, [[10, 18]]);
140
160
  }));
141
161
  return function (_x) {
142
162
  return _ref2.apply(this, arguments);
143
163
  };
144
- }(), [validateForm, setErrors, setTouched, isFormDirty, isSubmitting, submitForm]);
164
+ }(), [validateForm, setErrors, setTouched, isFormDirty, isSubmitting, submitForm, status]);
145
165
  return /*#__PURE__*/React__default["default"].createElement(formik.Form, _extends__default["default"]({
146
166
  className: className,
147
167
  noValidate: true,
@@ -161,7 +181,21 @@ var Form = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
161
181
  formProps = _ref.formProps,
162
182
  _ref$scrollToErrorFie = _ref.scrollToErrorField,
163
183
  scrollToErrorField = _ref$scrollToErrorFie === void 0 ? false : _ref$scrollToErrorFie;
164
- return /*#__PURE__*/React__default["default"].createElement(formik.Formik, formikProps, function (props) {
184
+ var formikRef = React.useRef();
185
+ var handleSubmit = function handleSubmit(values, actions) {
186
+ var _formikRef$current;
187
+ var fieldsWithServerError = getFieldsWithServerError((_formikRef$current = formikRef.current) === null || _formikRef$current === void 0 ? void 0 : _formikRef$current.status);
188
+ if (fieldsWithServerError.length > 0) {
189
+ actions.setSubmitting(false);
190
+ return;
191
+ }
192
+ formikProps.onSubmit(values, actions);
193
+ };
194
+ return /*#__PURE__*/React__default["default"].createElement(formik.Formik, _extends__default["default"]({
195
+ innerRef: formikRef
196
+ }, formikProps, {
197
+ onSubmit: handleSubmit
198
+ }), function (props) {
165
199
  return /*#__PURE__*/React__default["default"].createElement(FormWrapper, {
166
200
  className: className,
167
201
  formProps: formProps,
@@ -171,32 +205,6 @@ var Form = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
171
205
  });
172
206
  });
173
207
  Form.displayName = "Form";
174
- Form.propTypes = {
175
- /**
176
- * Pass a function to render children or pass the children directly
177
- **/
178
- children: index.propTypes.exports.node,
179
- /**
180
- * Additional classnames to be passed to the form wrapper
181
- **/
182
- className: index.propTypes.exports.string,
183
- /**
184
- * Props to be passed to the Formik component like `initialValues`, `validationSchema`, `onSubmit`
185
- * Refer to the Formik docs for more details
186
- * https://formik.org/docs/api/formik
187
- **/
188
- formikProps: index.propTypes.exports.object,
189
- /**
190
- * Props to be passed to the form element like `className`.
191
- * Refer to the Formik docs for more details
192
- * https://formik.org/docs/api/form
193
- **/
194
- formProps: index.propTypes.exports.object,
195
- /**
196
- * Props to be passed for scrolling to error field on submit button click.
197
- **/
198
- scrollToErrorField: index.propTypes.exports.bool
199
- };
200
208
 
201
209
  module.exports = Form;
202
210
  //# sourceMappingURL=Form.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sources":["../../../src/formik/Form/ScrollToErrorField/utils.js","../../../src/formik/Form/ScrollToErrorField/index.js","../../../src/formik/Form/FormWrapper.jsx","../../../src/formik/Form/index.jsx"],"sourcesContent":["import { is } from \"ramda\";\n\nconst transformObjectToDotNotation = (object, prefix = \"\") => {\n const result = [];\n\n Object.entries(object).forEach(([key, value]) => {\n if (!value) return;\n const nextKey = prefix ? `${prefix}.${key}` : key;\n if (is(Object, value)) {\n result.push(...transformObjectToDotNotation(value, nextKey));\n } else {\n result.push(nextKey);\n }\n });\n\n return result;\n};\n\nconst getErrorFieldName = formikErrors =>\n transformObjectToDotNotation(formikErrors)?.[0];\n\nexport const scrollToError = (formRef, errors) => {\n const fieldErrorName = getErrorFieldName(errors);\n if (!fieldErrorName) return;\n\n const errorFormElement = formRef.current.querySelector(\n `[name=\"${fieldErrorName}\"]`\n );\n\n errorFormElement?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n });\n};\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\n\nimport { scrollToError } from \"./utils\";\n\nconst ScrollToErrorField = ({ formRef }) => {\n const { submitCount, isValid, errors } = useFormikContext();\n\n useEffect(() => {\n if (!formRef.current || isValid) return;\n\n scrollToError(formRef, errors);\n }, [submitCount]);\n\n return null;\n};\n\nexport default ScrollToErrorField;\n","import React, { useCallback, forwardRef, useRef } from \"react\";\n\nimport { Form as FormikForm, useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport ScrollToErrorField from \"./ScrollToErrorField\";\nimport { scrollToError } from \"./ScrollToErrorField/utils\";\n\nconst FormWrapper = forwardRef(\n ({ className, formProps, children, scrollToErrorField }, ref) => {\n const { validateForm, setErrors, setTouched, submitForm, ...formikBag } =\n useFormikContext();\n\n const { dirty: isFormDirty, isSubmitting } = formikBag;\n\n const formRefForScrollToErrorField = useRef();\n\n const formRef = ref || formRefForScrollToErrorField;\n\n const handleKeyDown = useCallback(\n async event => {\n const isEventFromEditorOrTextarea =\n event.target.tagName === \"TEXTAREA\" || event.target.editor;\n\n if (event.key !== \"Enter\") return;\n\n if (isEventFromEditorOrTextarea && !event.metaKey) return;\n\n event.preventDefault();\n\n if (event.shiftKey) return;\n\n if (!isFormDirty || isSubmitting) return;\n\n try {\n const errors = await validateForm();\n\n if (Object.keys(errors).length > 0) {\n setErrors(errors);\n setTouched(errors);\n scrollToErrorField && scrollToError(formRef, errors);\n } else {\n submitForm();\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\n \"An unhandled error was caught from validateForm()\",\n error\n );\n }\n },\n [\n validateForm,\n setErrors,\n setTouched,\n isFormDirty,\n isSubmitting,\n submitForm,\n ]\n );\n\n return (\n <FormikForm\n {...{ className }}\n noValidate\n data-testid=\"neeto-ui-form-wrapper\"\n ref={formRef}\n onKeyDown={handleKeyDown}\n {...formProps}\n >\n {scrollToErrorField && <ScrollToErrorField {...{ formRef }} />}\n {children}\n </FormikForm>\n );\n }\n);\n\nFormWrapper.displayName = \"FormWrapper\";\n\nFormWrapper.propTypes = {\n children: PropTypes.node,\n formProps: PropTypes.object,\n scrollToErrorField: PropTypes.bool,\n};\n\nexport default FormWrapper;\n","import React, { forwardRef } from \"react\";\n\nimport { Formik } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport FormWrapper from \"./FormWrapper\";\n\nconst Form = forwardRef(\n (\n { className, children, formikProps, formProps, scrollToErrorField = false },\n ref\n ) => (\n <Formik {...formikProps}>\n {props => (\n <FormWrapper {...{ className, formProps, ref, scrollToErrorField }}>\n {typeof children === \"function\" ? children(props) : children}\n </FormWrapper>\n )}\n </Formik>\n )\n);\n\nForm.displayName = \"Form\";\n\nForm.propTypes = {\n /**\n * Pass a function to render children or pass the children directly\n **/\n children: PropTypes.node,\n /**\n * Additional classnames to be passed to the form wrapper\n **/\n className: PropTypes.string,\n /**\n * Props to be passed to the Formik component like `initialValues`, `validationSchema`, `onSubmit`\n * Refer to the Formik docs for more details\n * https://formik.org/docs/api/formik\n **/\n formikProps: PropTypes.object,\n /**\n * Props to be passed to the form element like `className`.\n * Refer to the Formik docs for more details\n * https://formik.org/docs/api/form\n **/\n formProps: PropTypes.object,\n /**\n * Props to be passed for scrolling to error field on submit button click.\n **/\n scrollToErrorField: PropTypes.bool,\n};\n\nexport default Form;\n"],"names":["transformObjectToDotNotation","object","prefix","arguments","length","undefined","result","Object","entries","forEach","_ref","_ref2","_slicedToArray","key","value","nextKey","concat","is","push","apply","_toConsumableArray","getErrorFieldName","formikErrors","_transformObjectToDot","scrollToError","formRef","errors","fieldErrorName","errorFormElement","current","querySelector","scrollIntoView","behavior","block","ScrollToErrorField","_useFormikContext","useFormikContext","submitCount","isValid","useEffect","FormWrapper","forwardRef","ref","className","formProps","children","scrollToErrorField","validateForm","setErrors","setTouched","submitForm","formikBag","_objectWithoutProperties","_excluded","isFormDirty","dirty","isSubmitting","formRefForScrollToErrorField","useRef","handleKeyDown","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","event","isEventFromEditorOrTextarea","wrap","_callee$","_context","prev","next","target","tagName","editor","abrupt","metaKey","preventDefault","shiftKey","sent","keys","t0","console","error","stop","_x","React","createElement","FormikForm","_extends","noValidate","onKeyDown","displayName","Form","formikProps","_ref$scrollToErrorFie","Formik","props","propTypes","PropTypes","node","string","bool"],"mappings":"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"}
1
+ {"version":3,"file":"Form.js","sources":["../../../src/formik/Form/ScrollToErrorField/utils.js","../../../src/formik/Form/ScrollToErrorField/index.js","../../../src/formik/Form/FormWrapper.jsx","../../../src/formik/Form/index.jsx"],"sourcesContent":["import { isPresent } from \"neetocist\";\nimport { is } from \"ramda\";\n\nconst transformObjectToDotNotation = (object, prefix = \"\") => {\n const result = [];\n\n Object.entries(object).forEach(([key, value]) => {\n if (!value) return;\n const nextKey = prefix ? `${prefix}.${key}` : key;\n if (is(Object, value)) {\n result.push(...transformObjectToDotNotation(value, nextKey));\n } else {\n result.push(nextKey);\n }\n });\n\n return result;\n};\n\nconst getErrorFieldName = formikErrors =>\n transformObjectToDotNotation(formikErrors)?.[0];\n\nexport const getFieldsWithServerError = (status = {}) =>\n Object.keys(status).filter(fieldName => isPresent(status[fieldName]));\n\nexport const scrollToError = (formRef, errors, status) => {\n const fieldErrorName = getErrorFieldName(errors);\n const [fieldWithServerError] = getFieldsWithServerError(status);\n\n if (!fieldErrorName && !fieldWithServerError) return;\n\n const errorFieldName = fieldErrorName || fieldWithServerError;\n const errorFormElement = formRef.current.querySelector(\n `[name=\"${errorFieldName}\"]`\n );\n\n errorFormElement?.scrollIntoView({\n behavior: \"smooth\",\n block: \"center\",\n });\n};\n","import { useEffect } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { isEmpty } from \"ramda\";\n\nimport { getFieldsWithServerError, scrollToError } from \"./utils\";\n\nconst ScrollToErrorField = ({ formRef }) => {\n const { submitCount, isValid, errors, status } = useFormikContext();\n\n useEffect(() => {\n const fieldsWithServerError = getFieldsWithServerError(status);\n if (!formRef.current || (isValid && isEmpty(fieldsWithServerError))) {\n return;\n }\n\n scrollToError(formRef, errors, status);\n }, [submitCount]);\n\n return null;\n};\n\nexport default ScrollToErrorField;\n","import React, { useCallback, forwardRef, useRef } from \"react\";\n\nimport { Form as FormikForm, useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport ScrollToErrorField from \"./ScrollToErrorField\";\nimport {\n getFieldsWithServerError,\n scrollToError,\n} from \"./ScrollToErrorField/utils\";\n\nconst FormWrapper = forwardRef(\n ({ className, formProps, children, scrollToErrorField }, ref) => {\n const { validateForm, setErrors, setTouched, submitForm, ...formikBag } =\n useFormikContext();\n\n const { dirty: isFormDirty, isSubmitting, status } = formikBag;\n\n const formRefForScrollToErrorField = useRef();\n\n const formRef = ref || formRefForScrollToErrorField;\n\n const handleKeyDown = useCallback(\n async event => {\n const isEventFromEditorOrTextarea =\n event.target.tagName === \"TEXTAREA\" || event.target.editor;\n\n if (event.key !== \"Enter\") return;\n\n if (isEventFromEditorOrTextarea && !event.metaKey) return;\n\n event.preventDefault();\n\n if (event.shiftKey) return;\n\n if (!isFormDirty || isSubmitting) return;\n\n try {\n const errors = await validateForm();\n const fieldStatuses = getFieldsWithServerError(status);\n\n if (\n Object.keys(errors).length > 0 ||\n Object.keys(fieldStatuses).length > 0\n ) {\n setErrors(errors);\n setTouched({ ...errors, ...status });\n scrollToErrorField && scrollToError(formRef, errors, status);\n } else {\n submitForm();\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error(\n \"An unhandled error was caught from validateForm()\",\n error\n );\n }\n },\n [\n validateForm,\n setErrors,\n setTouched,\n isFormDirty,\n isSubmitting,\n submitForm,\n status,\n ]\n );\n\n return (\n <FormikForm\n {...{ className }}\n noValidate\n data-testid=\"neeto-ui-form-wrapper\"\n ref={formRef}\n onKeyDown={handleKeyDown}\n {...formProps}\n >\n {scrollToErrorField && <ScrollToErrorField {...{ formRef }} />}\n {children}\n </FormikForm>\n );\n }\n);\n\nFormWrapper.displayName = \"FormWrapper\";\n\nFormWrapper.propTypes = {\n children: PropTypes.node,\n formProps: PropTypes.object,\n scrollToErrorField: PropTypes.bool,\n};\n\nexport default FormWrapper;\n","import React, { forwardRef, useRef } from \"react\";\n\nimport { Formik } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport FormWrapper from \"./FormWrapper\";\nimport { getFieldsWithServerError } from \"./ScrollToErrorField/utils\";\n\nconst Form = forwardRef(\n (\n { className, children, formikProps, formProps, scrollToErrorField = false },\n ref\n ) => {\n const formikRef = useRef();\n\n const handleSubmit = (values, actions) => {\n const fieldsWithServerError = getFieldsWithServerError(\n formikRef.current?.status\n );\n\n if (fieldsWithServerError.length > 0) {\n actions.setSubmitting(false);\n\n return;\n }\n\n formikProps.onSubmit(values, actions);\n };\n\n return (\n <Formik innerRef={formikRef} {...formikProps} onSubmit={handleSubmit}>\n {props => (\n <FormWrapper {...{ className, formProps, ref, scrollToErrorField }}>\n {typeof children === \"function\" ? children(props) : children}\n </FormWrapper>\n )}\n </Formik>\n );\n }\n);\n\nForm.displayName = \"Form\";\n\nForm.propTypes = {\n /**\n * Pass a function to render children or pass the children directly\n **/\n children: PropTypes.node,\n /**\n * Additional classnames to be passed to the form wrapper\n **/\n className: PropTypes.string,\n /**\n * Props to be passed to the Formik component like `initialValues`, `validationSchema`, `onSubmit`\n * Refer to the Formik docs for more details\n * https://formik.org/docs/api/formik\n **/\n formikProps: PropTypes.object,\n /**\n * Props to be passed to the form element like `className`.\n * Refer to the Formik docs for more details\n * https://formik.org/docs/api/form\n **/\n formProps: PropTypes.object,\n /**\n * Props to be passed for scrolling to error field on submit button click.\n **/\n scrollToErrorField: PropTypes.bool,\n};\n\nexport default Form;\n"],"names":["transformObjectToDotNotation","object","prefix","arguments","length","undefined","result","Object","entries","forEach","_ref","_ref2","_slicedToArray","key","value","nextKey","concat","is","push","apply","_toConsumableArray","getErrorFieldName","formikErrors","_transformObjectToDot","getFieldsWithServerError","status","keys","filter","fieldName","isPresent","scrollToError","formRef","errors","fieldErrorName","_getFieldsWithServerE","_getFieldsWithServerE2","fieldWithServerError","errorFieldName","errorFormElement","current","querySelector","scrollIntoView","behavior","block","ScrollToErrorField","_useFormikContext","useFormikContext","submitCount","isValid","useEffect","fieldsWithServerError","isEmpty","FormWrapper","forwardRef","ref","className","formProps","children","scrollToErrorField","validateForm","setErrors","setTouched","submitForm","formikBag","_objectWithoutProperties","_excluded","isFormDirty","dirty","isSubmitting","formRefForScrollToErrorField","useRef","handleKeyDown","useCallback","_asyncToGenerator","_regeneratorRuntime","mark","_callee","event","isEventFromEditorOrTextarea","fieldStatuses","wrap","_callee$","_context","prev","next","target","tagName","editor","abrupt","metaKey","preventDefault","shiftKey","sent","_objectSpread","t0","console","error","stop","_x","React","createElement","FormikForm","_extends","noValidate","onKeyDown","displayName","Form","formikProps","_ref$scrollToErrorFie","formikRef","handleSubmit","values","actions","_formikRef$current","setSubmitting","onSubmit","Formik","innerRef","props"],"mappings":"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"}
@@ -27,7 +27,7 @@ require('../en-c1fe180c.js');
27
27
  require('../Label.js');
28
28
  require('@bigbinary/neeto-icons');
29
29
  require('../Button.js');
30
- require('framer-motion');
30
+ require('../Spinner.js');
31
31
  require('../Tooltip.js');
32
32
  require('@tippyjs/react');
33
33
  require('tippy.js');
@@ -46,7 +46,7 @@ require('../Tag.js');
46
46
  require('../Label.js');
47
47
  require('../Button.js');
48
48
  require('react-router-dom');
49
- require('framer-motion');
49
+ require('../Spinner.js');
50
50
  require('../Tooltip.js');
51
51
  require('@tippyjs/react');
52
52
  require('tippy.js');
@@ -13,7 +13,7 @@ require('../Label.js');
13
13
  require('@bigbinary/neeto-icons');
14
14
  require('../Button.js');
15
15
  require('react-router-dom');
16
- require('framer-motion');
16
+ require('../Spinner.js');
17
17
  require('../Tooltip.js');
18
18
  require('@tippyjs/react');
19
19
  require('tippy.js');
@@ -47,13 +47,12 @@ require('qs');
47
47
  require('../en-c1fe180c.js');
48
48
  require('../Label.js');
49
49
  require('../Button.js');
50
- require('framer-motion');
50
+ require('../Spinner.js');
51
51
  require('../Tooltip.js');
52
52
  require('@tippyjs/react');
53
53
  require('tippy.js');
54
54
  require('../Popover.js');
55
55
  require('../Typography.js');
56
- require('../Spinner.js');
57
56
 
58
57
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
59
58
 
@@ -1 +1 @@
1
- {"version":3,"file":"Select.js","sources":["../../../src/formik/Select.jsx"],"sourcesContent":["import React, { forwardRef, useRef, startTransition } from \"react\";\n\nimport { getIn, useFormikContext, useField } from \"formik\";\nimport PropTypes from \"prop-types\";\nimport { prop, either, isNil, isEmpty, dissoc } from \"ramda\";\n\nimport Select from \"components/Select\";\n\nconst SelectField = forwardRef((props, ref) => {\n const {\n name = \"\",\n options = [],\n getOptionValue = null,\n isMulti = false,\n ...otherProps\n } = props;\n const [field, meta, { setValue, setTouched }] = useField(name);\n const { status = {}, setStatus } = useFormikContext();\n const fieldStatus = getIn(status, name);\n\n const isMenuOpen = useRef(otherProps.defaultMenuIsOpen);\n\n const getRealOptionValue = option => {\n if (typeof getOptionValue !== \"function\") {\n return option.value;\n }\n\n return getOptionValue(option);\n };\n\n const buildValueObj = (value, options) => {\n if (typeof value === \"object\") return value;\n\n return options.filter(option => getRealOptionValue(option) === value)[0];\n };\n\n return (\n <Select\n {...{ options }}\n error={meta.touched ? meta.error || fieldStatus : \"\"}\n getOptionValue={getOptionValue || prop(\"value\")}\n innerRef={ref}\n isMulti={!!isMulti}\n name={field.name}\n value={\n either(isNil, isEmpty)(field.value)\n ? null\n : buildValueObj(field.value, options)\n }\n onBlur={() =>\n startTransition(() => {\n setTouched(true);\n })\n }\n onChange={value => {\n setStatus(dissoc(name, status));\n setValue(value);\n }}\n {...otherProps}\n onKeyDown={event => {\n if (event.key === \"Enter\" && isMenuOpen.current) {\n event.stopPropagation();\n }\n otherProps.onKeyDown?.(event);\n }}\n onMenuClose={() => {\n isMenuOpen.current = false;\n otherProps.onMenuClose?.();\n }}\n onMenuOpen={() => {\n isMenuOpen.current = true;\n otherProps.onMenuOpen?.();\n }}\n />\n );\n});\n\nSelectField.displayName = \"SelectField\";\n\nSelectField.propTypes = {\n /**\n * The name of the select input.\n */\n name: PropTypes.string,\n /**\n * To provide the options to be displayed in the select component.\n */\n options: PropTypes.array,\n /**\n * To provide the function to get the value of the option.\n */\n getOptionValue: PropTypes.string,\n /**\n * To specify whether multiple options can be selected.\n */\n isMulti: PropTypes.bool,\n};\n\nexport default SelectField;\n"],"names":["SelectField","forwardRef","props","ref","_props$name","name","_props$options","options","_props$getOptionValue","getOptionValue","_props$isMulti","isMulti","otherProps","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","_useFormikContext","useFormikContext","_useFormikContext$sta","status","setStatus","fieldStatus","getIn","isMenuOpen","useRef","defaultMenuIsOpen","getRealOptionValue","option","value","buildValueObj","_typeof","filter","React","createElement","Select","_extends","error","touched","prop","innerRef","either","isNil","isEmpty","onBlur","startTransition","onChange","dissoc","onKeyDown","event","_otherProps$onKeyDown","key","current","stopPropagation","call","onMenuClose","_otherProps$onMenuClo","onMenuOpen","_otherProps$onMenuOpe","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Select.js","sources":["../../../src/formik/Select.jsx"],"sourcesContent":["import React, { forwardRef, useRef, startTransition } from \"react\";\n\nimport { getIn, useFormikContext, useField } from \"formik\";\nimport PropTypes from \"prop-types\";\nimport { prop, either, isNil, isEmpty, dissoc } from \"ramda\";\n\nimport Select from \"components/Select\";\n\nconst SelectField = forwardRef((props, ref) => {\n const {\n name = \"\",\n options = [],\n getOptionValue = null,\n isMulti = false,\n ...otherProps\n } = props;\n const [field, meta, { setValue, setTouched }] = useField(name);\n const { status = {}, setStatus } = useFormikContext();\n const fieldStatus = getIn(status, name);\n\n const isMenuOpen = useRef(otherProps.defaultMenuIsOpen);\n\n const getRealOptionValue = option => {\n if (typeof getOptionValue !== \"function\") {\n return option.value;\n }\n\n return getOptionValue(option);\n };\n\n const buildValueObj = (value, options) => {\n if (typeof value === \"object\") return value;\n\n return options.filter(option => getRealOptionValue(option) === value)[0];\n };\n\n return (\n <Select\n {...{ options }}\n error={meta.touched ? meta.error || fieldStatus : \"\"}\n getOptionValue={getOptionValue || prop(\"value\")}\n innerRef={ref}\n isMulti={!!isMulti}\n name={field.name}\n value={\n either(isNil, isEmpty)(field.value)\n ? null\n : buildValueObj(field.value, options)\n }\n onBlur={() =>\n startTransition(() => {\n setTouched(true);\n })\n }\n onChange={value => {\n setStatus(dissoc(name, status));\n setValue(value);\n }}\n {...otherProps}\n onKeyDown={event => {\n if (event.key === \"Enter\" && isMenuOpen.current) {\n event.stopPropagation();\n }\n otherProps.onKeyDown?.(event);\n }}\n onMenuClose={() => {\n isMenuOpen.current = false;\n otherProps.onMenuClose?.();\n }}\n onMenuOpen={() => {\n isMenuOpen.current = true;\n otherProps.onMenuOpen?.();\n }}\n />\n );\n});\n\nSelectField.displayName = \"SelectField\";\n\nSelectField.propTypes = {\n /**\n * The name of the select input.\n */\n name: PropTypes.string,\n /**\n * To provide the options to be displayed in the select component.\n */\n options: PropTypes.array,\n /**\n * To provide the function to get the value of the option.\n */\n getOptionValue: PropTypes.string,\n /**\n * To specify whether multiple options can be selected.\n */\n isMulti: PropTypes.bool,\n};\n\nexport default SelectField;\n"],"names":["SelectField","forwardRef","props","ref","_props$name","name","_props$options","options","_props$getOptionValue","getOptionValue","_props$isMulti","isMulti","otherProps","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","meta","_useField2$","setValue","setTouched","_useFormikContext","useFormikContext","_useFormikContext$sta","status","setStatus","fieldStatus","getIn","isMenuOpen","useRef","defaultMenuIsOpen","getRealOptionValue","option","value","buildValueObj","_typeof","filter","React","createElement","Select","_extends","error","touched","prop","innerRef","either","isNil","isEmpty","onBlur","startTransition","onChange","dissoc","onKeyDown","event","_otherProps$onKeyDown","key","current","stopPropagation","call","onMenuClose","_otherProps$onMenuClo","onMenuOpen","_otherProps$onMenuOpe","displayName"],"mappings":"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"}
@@ -24,7 +24,7 @@ require('classnames');
24
24
  require('@bigbinary/neeto-icons');
25
25
  require('../Button.js');
26
26
  require('react-router-dom');
27
- require('framer-motion');
27
+ require('../Spinner.js');
28
28
  require('../Tooltip.js');
29
29
  require('@tippyjs/react');
30
30
  require('tippy.js');
@@ -27,7 +27,7 @@ require('qs');
27
27
  require('../en-c1fe180c.js');
28
28
  require('../Label.js');
29
29
  require('../Button.js');
30
- require('framer-motion');
30
+ require('../Spinner.js');
31
31
  require('../Tooltip.js');
32
32
  require('@tippyjs/react');
33
33
  require('tippy.js');
@@ -6,7 +6,7 @@ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProp
6
6
  var React = require('react');
7
7
  var formik = require('formik');
8
8
  var ramda = require('ramda');
9
- var Textarea = require('../Textarea-af523fdb.js');
9
+ var Textarea = require('../Textarea-eaf8b986.js');
10
10
  require('@babel/runtime/helpers/slicedToArray');
11
11
  require('classnames');
12
12
  require('../useId-4e3deb5c.js');
@@ -27,7 +27,7 @@ require('../en-c1fe180c.js');
27
27
  require('../Label.js');
28
28
  require('@bigbinary/neeto-icons');
29
29
  require('../Button.js');
30
- require('framer-motion');
30
+ require('../Spinner.js');
31
31
  require('../Tooltip.js');
32
32
  require('@tippyjs/react');
33
33
  require('tippy.js');
@@ -35,7 +35,7 @@ require('antd/locale/pt_PT');
35
35
  require('../Label.js');
36
36
  require('../Button.js');
37
37
  require('react-router-dom');
38
- require('framer-motion');
38
+ require('../Spinner.js');
39
39
  require('../Tooltip.js');
40
40
  require('@tippyjs/react');
41
41
  require('tippy.js');
@@ -24,7 +24,7 @@ require('../Button.js');
24
24
  require('@babel/runtime/helpers/defineProperty');
25
25
  require('@babel/runtime/helpers/objectWithoutProperties');
26
26
  require('react-router-dom');
27
- require('framer-motion');
27
+ require('../Spinner.js');
28
28
  require('../Tooltip.js');
29
29
  require('@babel/runtime/helpers/slicedToArray');
30
30
  require('@tippyjs/react');
@@ -44,11 +44,10 @@ require('../en-c1fe180c.js');
44
44
  require('../Alert.js');
45
45
  require('../Modal.js');
46
46
  require('@bigbinary/neeto-icons');
47
- require('../useOverlayManager-91348551.js');
47
+ require('../useOverlayManager-763ee731.js');
48
48
  require('@babel/runtime/helpers/esm/extends');
49
49
  require('@babel/runtime/helpers/esm/objectWithoutPropertiesLoose');
50
50
  require('@babel/runtime/helpers/esm/inheritsLoose');
51
- require('../index-63580e68.js');
52
51
  require('react-dom');
53
52
  require('@babel/runtime/helpers/esm/assertThisInitialized');
54
53
  require('@bigbinary/neeto-hotkeys');
@@ -84,7 +83,6 @@ require('@babel/runtime/helpers/toArray');
84
83
  require('../Tag.js');
85
84
  require('../Radio.js');
86
85
  require('../Select.js');
87
- require('../Spinner.js');
88
86
  require('../Slider.js');
89
87
  require('antd/lib/config-provider');
90
88
  require('antd/lib/slider');
@@ -97,7 +95,7 @@ require('antd/locale/nl_NL');
97
95
  require('antd/locale/pl_PL');
98
96
  require('antd/locale/pt_PT');
99
97
  require('../Switch.js');
100
- require('../Textarea-af523fdb.js');
98
+ require('../Textarea-eaf8b986.js');
101
99
  require('../TreeSelect.js');
102
100
  require('antd/lib/tree-select');
103
101
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -35,7 +35,7 @@ var useId = require('./useId-4e3deb5c.js');
35
35
  require('@bigbinary/neeto-hotkeys');
36
36
  require('./overlayManager.js');
37
37
  require('qs');
38
- var Textarea = require('./Textarea-af523fdb.js');
38
+ var Textarea = require('./Textarea-eaf8b986.js');
39
39
  require('@babel/runtime/helpers/toConsumableArray');
40
40
  require('./Pane.js');
41
41
  require('./Popover.js');
@@ -68,7 +68,7 @@ require('./Switch.js');
68
68
  require('./Tab.js');
69
69
  require('antd/lib/table');
70
70
  require('react-drag-listview');
71
- require('./HeaderCellMenu-1eb017e2.js');
71
+ require('./HeaderCellMenu-3aab0902.js');
72
72
  require('react-resizable');
73
73
  var Tag = require('./Tag.js');
74
74
  var constants = require('./constants.js');
@@ -522,4 +522,4 @@ TimePicker.displayName = "TimePicker";
522
522
 
523
523
  exports.DatePicker = DatePicker;
524
524
  exports.TimePicker = TimePicker;
525
- //# sourceMappingURL=index-34eccc77.js.map
525
+ //# sourceMappingURL=index-6f49589a.js.map