@bigbinary/neetoui 6.7.5 → 6.8.0

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 (293) hide show
  1. package/dist/Accordion.js +5 -6
  2. package/dist/Accordion.js.map +1 -1
  3. package/dist/ActionDropdown.js +16 -11
  4. package/dist/ActionDropdown.js.map +1 -1
  5. package/dist/Alert.js +23 -13
  6. package/dist/Alert.js.map +1 -1
  7. package/dist/Avatar.js +6 -6
  8. package/dist/Button.js +7 -8
  9. package/dist/Button.js.map +1 -1
  10. package/dist/Callout.js +4 -5
  11. package/dist/Callout.js.map +1 -1
  12. package/dist/Checkbox.js +18 -13
  13. package/dist/Checkbox.js.map +1 -1
  14. package/dist/ColorPicker.js +20 -14
  15. package/dist/ColorPicker.js.map +1 -1
  16. package/dist/DatePicker.js +17 -12
  17. package/dist/DatePicker.js.map +1 -1
  18. package/dist/DateTimePicker.js +23 -17
  19. package/dist/DateTimePicker.js.map +1 -1
  20. package/dist/Dropdown.js +18 -13
  21. package/dist/Dropdown.js.map +1 -1
  22. package/dist/Input.js +17 -12
  23. package/dist/Input.js.map +1 -1
  24. package/dist/Kbd.js +6 -6
  25. package/dist/Label.js +7 -8
  26. package/dist/Label.js.map +1 -1
  27. package/dist/Modal.js +23 -13
  28. package/dist/Modal.js.map +1 -1
  29. package/dist/MultiEmailInput.js +36 -16
  30. package/dist/MultiEmailInput.js.map +1 -1
  31. package/dist/NoData.js +7 -8
  32. package/dist/NoData.js.map +1 -1
  33. package/dist/Pagination.js +15 -10
  34. package/dist/Pagination.js.map +1 -1
  35. package/dist/Pane.js +23 -13
  36. package/dist/Pane.js.map +1 -1
  37. package/dist/Popover.js +7 -8
  38. package/dist/Popover.js.map +1 -1
  39. package/dist/ProgressBar.js +1 -1
  40. package/dist/Radio.js +18 -13
  41. package/dist/Radio.js.map +1 -1
  42. package/dist/Select.js +38 -14
  43. package/dist/Select.js.map +1 -1
  44. package/dist/Sidebar.js +16 -11
  45. package/dist/Sidebar.js.map +1 -1
  46. package/dist/Slider.js +18 -13
  47. package/dist/Slider.js.map +1 -1
  48. package/dist/Spinner.js +1 -1
  49. package/dist/Stepper.js +1 -1
  50. package/dist/Switch.js +18 -13
  51. package/dist/Switch.js.map +1 -1
  52. package/dist/Tab.js +4 -5
  53. package/dist/Tab.js.map +1 -1
  54. package/dist/Table.js +19 -14
  55. package/dist/Table.js.map +1 -1
  56. package/dist/Tag.js +3 -3
  57. package/dist/Textarea.js +18 -13
  58. package/dist/Textarea.js.map +1 -1
  59. package/dist/TimePicker.js +18 -13
  60. package/dist/TimePicker.js.map +1 -1
  61. package/dist/TimePickerInput.js +254 -21
  62. package/dist/TimePickerInput.js.map +1 -1
  63. package/dist/Toastr.js +15 -126
  64. package/dist/Toastr.js.map +1 -1
  65. package/dist/Tooltip.js +73 -7
  66. package/dist/Tooltip.js.map +1 -1
  67. package/dist/Tree.js +13 -8
  68. package/dist/Tree.js.map +1 -1
  69. package/dist/TreeSelect.js +16 -11
  70. package/dist/TreeSelect.js.map +1 -1
  71. package/dist/Typography.js +4 -5
  72. package/dist/Typography.js.map +1 -1
  73. package/dist/cjs/Accordion.js +25 -21
  74. package/dist/cjs/Accordion.js.map +1 -1
  75. package/dist/cjs/ActionDropdown.js +24 -16
  76. package/dist/cjs/ActionDropdown.js.map +1 -1
  77. package/dist/cjs/Alert.js +25 -14
  78. package/dist/cjs/Alert.js.map +1 -1
  79. package/dist/cjs/Avatar.js +17 -13
  80. package/dist/cjs/Avatar.js.map +1 -1
  81. package/dist/cjs/Button.js +17 -14
  82. package/dist/cjs/Button.js.map +1 -1
  83. package/dist/cjs/Callout.js +11 -8
  84. package/dist/cjs/Callout.js.map +1 -1
  85. package/dist/cjs/Checkbox.js +28 -20
  86. package/dist/cjs/Checkbox.js.map +1 -1
  87. package/dist/cjs/ColorPicker.js +33 -22
  88. package/dist/cjs/ColorPicker.js.map +1 -1
  89. package/dist/cjs/DatePicker.js +31 -21
  90. package/dist/cjs/DatePicker.js.map +1 -1
  91. package/dist/cjs/DateTimePicker.js +41 -29
  92. package/dist/cjs/DateTimePicker.js.map +1 -1
  93. package/dist/cjs/Dropdown.js +50 -39
  94. package/dist/cjs/Dropdown.js.map +1 -1
  95. package/dist/cjs/Input.js +35 -25
  96. package/dist/cjs/Input.js.map +1 -1
  97. package/dist/cjs/Kbd.js +13 -10
  98. package/dist/cjs/Kbd.js.map +1 -1
  99. package/dist/cjs/Label.js +20 -17
  100. package/dist/cjs/Label.js.map +1 -1
  101. package/dist/cjs/Modal.js +36 -21
  102. package/dist/cjs/Modal.js.map +1 -1
  103. package/dist/cjs/MultiEmailInput.js +66 -39
  104. package/dist/cjs/MultiEmailInput.js.map +1 -1
  105. package/dist/cjs/NoData.js +15 -13
  106. package/dist/cjs/NoData.js.map +1 -1
  107. package/dist/cjs/Pagination.js +24 -17
  108. package/dist/cjs/Pagination.js.map +1 -1
  109. package/dist/cjs/Pane.js +36 -21
  110. package/dist/cjs/Pane.js.map +1 -1
  111. package/dist/cjs/Popover.js +14 -12
  112. package/dist/cjs/Popover.js.map +1 -1
  113. package/dist/cjs/ProgressBar.js +3 -2
  114. package/dist/cjs/ProgressBar.js.map +1 -1
  115. package/dist/cjs/Radio.js +35 -25
  116. package/dist/cjs/Radio.js.map +1 -1
  117. package/dist/cjs/Select.js +87 -54
  118. package/dist/cjs/Select.js.map +1 -1
  119. package/dist/cjs/Sidebar.js +38 -28
  120. package/dist/cjs/Sidebar.js.map +1 -1
  121. package/dist/cjs/Slider.js +25 -17
  122. package/dist/cjs/Slider.js.map +1 -1
  123. package/dist/cjs/Spinner.js +3 -2
  124. package/dist/cjs/Spinner.js.map +1 -1
  125. package/dist/cjs/Stepper.js +7 -6
  126. package/dist/cjs/Stepper.js.map +1 -1
  127. package/dist/cjs/Switch.js +31 -23
  128. package/dist/cjs/Switch.js.map +1 -1
  129. package/dist/cjs/Tab.js +15 -12
  130. package/dist/cjs/Tab.js.map +1 -1
  131. package/dist/cjs/Table.js +55 -44
  132. package/dist/cjs/Table.js.map +1 -1
  133. package/dist/cjs/Tag.js +10 -7
  134. package/dist/cjs/Tag.js.map +1 -1
  135. package/dist/cjs/Textarea.js +34 -24
  136. package/dist/cjs/Textarea.js.map +1 -1
  137. package/dist/cjs/TimePicker.js +27 -18
  138. package/dist/cjs/TimePicker.js.map +1 -1
  139. package/dist/cjs/TimePickerInput.js +264 -22
  140. package/dist/cjs/TimePickerInput.js.map +1 -1
  141. package/dist/cjs/Toastr.js +32 -155
  142. package/dist/cjs/Toastr.js.map +1 -1
  143. package/dist/cjs/Tooltip.js +78 -8
  144. package/dist/cjs/Tooltip.js.map +1 -1
  145. package/dist/cjs/Tree.js +20 -12
  146. package/dist/cjs/Tree.js.map +1 -1
  147. package/dist/cjs/TreeSelect.js +25 -16
  148. package/dist/cjs/TreeSelect.js.map +1 -1
  149. package/dist/cjs/Typography.js +11 -8
  150. package/dist/cjs/Typography.js.map +1 -1
  151. package/dist/cjs/formik/ActionBlock.js +12 -11
  152. package/dist/cjs/formik/ActionBlock.js.map +1 -1
  153. package/dist/cjs/formik/BlockNavigation.js +29 -16
  154. package/dist/cjs/formik/BlockNavigation.js.map +1 -1
  155. package/dist/cjs/formik/Button.js +11 -10
  156. package/dist/cjs/formik/Button.js.map +1 -1
  157. package/dist/cjs/formik/Checkbox.js +24 -16
  158. package/dist/cjs/formik/Checkbox.js.map +1 -1
  159. package/dist/cjs/formik/Form.js +24 -17
  160. package/dist/cjs/formik/Form.js.map +1 -1
  161. package/dist/cjs/formik/Input.js +23 -15
  162. package/dist/cjs/formik/Input.js.map +1 -1
  163. package/dist/cjs/formik/MultiEmailInput.js +42 -15
  164. package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
  165. package/dist/cjs/formik/Radio.js +26 -17
  166. package/dist/cjs/formik/Radio.js.map +1 -1
  167. package/dist/cjs/formik/Select.js +44 -16
  168. package/dist/cjs/formik/Select.js.map +1 -1
  169. package/dist/cjs/formik/Slider.js +26 -17
  170. package/dist/cjs/formik/Slider.js.map +1 -1
  171. package/dist/cjs/formik/Switch.js +24 -16
  172. package/dist/cjs/formik/Switch.js.map +1 -1
  173. package/dist/cjs/formik/Textarea.js +24 -16
  174. package/dist/cjs/formik/Textarea.js.map +1 -1
  175. package/dist/cjs/formik/TreeSelect.js +22 -14
  176. package/dist/cjs/formik/TreeSelect.js.map +1 -1
  177. package/dist/cjs/formik/index.js +44 -16
  178. package/dist/cjs/formik/index.js.map +1 -1
  179. package/dist/cjs/index-f2e36d91.js +167 -0
  180. package/dist/cjs/index-f2e36d91.js.map +1 -0
  181. package/dist/cjs/index.js +49 -20
  182. package/dist/cjs/index.js.map +1 -1
  183. package/dist/cjs/layouts.js +16 -11
  184. package/dist/cjs/layouts.js.map +1 -1
  185. package/dist/cjs/managers.js +2 -2
  186. package/dist/cjs/overlayManager.js +9 -4
  187. package/dist/cjs/overlayManager.js.map +1 -1
  188. package/dist/cjs/{react-select-creatable.esm-b39742a3.js → react-select-creatable.esm-23eddf9f.js} +130 -367
  189. package/dist/cjs/react-select-creatable.esm-23eddf9f.js.map +1 -0
  190. package/dist/cjs/{useOverlayManager-359ed795.js → useOverlayManager-1de0435e.js} +37 -75
  191. package/dist/cjs/useOverlayManager-1de0435e.js.map +1 -0
  192. package/dist/cjs/{useQueryParams-14f054b3.js → useQueryParams-a8ee2f76.js} +9 -5
  193. package/dist/cjs/useQueryParams-a8ee2f76.js.map +1 -0
  194. package/dist/formik/ActionBlock.js +7 -8
  195. package/dist/formik/ActionBlock.js.map +1 -1
  196. package/dist/formik/BlockNavigation.js +23 -13
  197. package/dist/formik/BlockNavigation.js.map +1 -1
  198. package/dist/formik/Button.js +7 -8
  199. package/dist/formik/Button.js.map +1 -1
  200. package/dist/formik/Checkbox.js +18 -13
  201. package/dist/formik/Checkbox.js.map +1 -1
  202. package/dist/formik/Form.js +8 -7
  203. package/dist/formik/Form.js.map +1 -1
  204. package/dist/formik/Input.js +17 -12
  205. package/dist/formik/Input.js.map +1 -1
  206. package/dist/formik/MultiEmailInput.js +36 -12
  207. package/dist/formik/MultiEmailInput.js.map +1 -1
  208. package/dist/formik/Radio.js +18 -13
  209. package/dist/formik/Radio.js.map +1 -1
  210. package/dist/formik/Select.js +36 -12
  211. package/dist/formik/Select.js.map +1 -1
  212. package/dist/formik/Slider.js +18 -13
  213. package/dist/formik/Slider.js.map +1 -1
  214. package/dist/formik/Switch.js +18 -13
  215. package/dist/formik/Switch.js.map +1 -1
  216. package/dist/formik/Textarea.js +18 -13
  217. package/dist/formik/Textarea.js.map +1 -1
  218. package/dist/formik/TreeSelect.js +16 -11
  219. package/dist/formik/TreeSelect.js.map +1 -1
  220. package/dist/formik/index.js +44 -16
  221. package/dist/formik/index.js.map +1 -1
  222. package/dist/index-9d5142b4.js +145 -0
  223. package/dist/index-9d5142b4.js.map +1 -0
  224. package/dist/index.js +47 -18
  225. package/dist/index.js.map +1 -1
  226. package/dist/layouts.js +16 -11
  227. package/dist/layouts.js.map +1 -1
  228. package/dist/managers.js +2 -2
  229. package/dist/overlayManager.js +2 -2
  230. package/dist/{react-select-creatable.esm-93affeca.js → react-select-creatable.esm-ad71b0c0.js} +43 -289
  231. package/dist/react-select-creatable.esm-ad71b0c0.js.map +1 -0
  232. package/dist/{useOverlayManager-95a474d5.js → useOverlayManager-9d385819.js} +9 -54
  233. package/dist/useOverlayManager-9d385819.js.map +1 -0
  234. package/dist/{useQueryParams-4e7ddcf8.js → useQueryParams-dcb34865.js} +4 -4
  235. package/dist/{useQueryParams-4e7ddcf8.js.map → useQueryParams-dcb34865.js.map} +1 -1
  236. package/package.json +13 -6
  237. package/dist/cjs/createClass-80e17c6a.js +0 -31
  238. package/dist/cjs/createClass-80e17c6a.js.map +0 -1
  239. package/dist/cjs/defineProperty-ee86604b.js +0 -21
  240. package/dist/cjs/defineProperty-ee86604b.js.map +0 -1
  241. package/dist/cjs/extends-1b35a664.js +0 -19
  242. package/dist/cjs/extends-1b35a664.js.map +0 -1
  243. package/dist/cjs/index-302c3d37.js +0 -58
  244. package/dist/cjs/index-302c3d37.js.map +0 -1
  245. package/dist/cjs/index-5d74cfeb.js +0 -375
  246. package/dist/cjs/index-5d74cfeb.js.map +0 -1
  247. package/dist/cjs/index-6e09c7bc.js +0 -2211
  248. package/dist/cjs/index-6e09c7bc.js.map +0 -1
  249. package/dist/cjs/index-773961dd.js +0 -453
  250. package/dist/cjs/index-773961dd.js.map +0 -1
  251. package/dist/cjs/index-a8cc581e.js +0 -2383
  252. package/dist/cjs/index-a8cc581e.js.map +0 -1
  253. package/dist/cjs/index-dd592d31.js +0 -262
  254. package/dist/cjs/index-dd592d31.js.map +0 -1
  255. package/dist/cjs/objectWithoutProperties-2fed2d7d.js +0 -33
  256. package/dist/cjs/objectWithoutProperties-2fed2d7d.js.map +0 -1
  257. package/dist/cjs/react-select-creatable.esm-b39742a3.js.map +0 -1
  258. package/dist/cjs/slicedToArray-732a2048.js +0 -63
  259. package/dist/cjs/slicedToArray-732a2048.js.map +0 -1
  260. package/dist/cjs/toConsumableArray-418424fc.js +0 -23
  261. package/dist/cjs/toConsumableArray-418424fc.js.map +0 -1
  262. package/dist/cjs/toPropertyKey-bfa2e465.js +0 -31
  263. package/dist/cjs/toPropertyKey-bfa2e465.js.map +0 -1
  264. package/dist/cjs/useOverlayManager-359ed795.js.map +0 -1
  265. package/dist/cjs/useQueryParams-14f054b3.js.map +0 -1
  266. package/dist/createClass-601a36b2.js +0 -28
  267. package/dist/createClass-601a36b2.js.map +0 -1
  268. package/dist/defineProperty-e5245270.js +0 -19
  269. package/dist/defineProperty-e5245270.js.map +0 -1
  270. package/dist/extends-093996c9.js +0 -17
  271. package/dist/extends-093996c9.js.map +0 -1
  272. package/dist/index-25fb0168.js +0 -253
  273. package/dist/index-25fb0168.js.map +0 -1
  274. package/dist/index-34956d66.js +0 -372
  275. package/dist/index-34956d66.js.map +0 -1
  276. package/dist/index-3659771d.js +0 -56
  277. package/dist/index-3659771d.js.map +0 -1
  278. package/dist/index-7fae3611.js +0 -2381
  279. package/dist/index-7fae3611.js.map +0 -1
  280. package/dist/index-c442518b.js +0 -445
  281. package/dist/index-c442518b.js.map +0 -1
  282. package/dist/index-c8d9113c.js +0 -2193
  283. package/dist/index-c8d9113c.js.map +0 -1
  284. package/dist/objectWithoutProperties-a0edb288.js +0 -31
  285. package/dist/objectWithoutProperties-a0edb288.js.map +0 -1
  286. package/dist/react-select-creatable.esm-93affeca.js.map +0 -1
  287. package/dist/slicedToArray-45fa766e.js +0 -57
  288. package/dist/slicedToArray-45fa766e.js.map +0 -1
  289. package/dist/toConsumableArray-1186e144.js +0 -20
  290. package/dist/toConsumableArray-1186e144.js.map +0 -1
  291. package/dist/toPropertyKey-bdc24cb9.js +0 -28
  292. package/dist/toPropertyKey-bdc24cb9.js.map +0 -1
  293. package/dist/useOverlayManager-95a474d5.js.map +0 -1
@@ -1,25 +1,26 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('../extends-1b35a664.js');
3
+ var _extends = require('@babel/runtime/helpers/extends');
4
4
  var React = require('react');
5
- var index = require('../index-302c3d37.js');
5
+ var classnames = require('classnames');
6
6
  var formik = require('formik');
7
7
  var Button = require('../Button.js');
8
8
  var formik_Button = require('./Button.js');
9
- require('../defineProperty-ee86604b.js');
10
- require('../toPropertyKey-bfa2e465.js');
11
- require('../objectWithoutProperties-2fed2d7d.js');
9
+ require('@babel/runtime/helpers/defineProperty');
10
+ require('@babel/runtime/helpers/objectWithoutProperties');
12
11
  require('react-router-dom');
13
12
  require('../motion-a1906aff.js');
14
- require('../index-773961dd.js');
15
- require('../slicedToArray-732a2048.js');
13
+ require('../Tooltip.js');
14
+ require('@babel/runtime/helpers/slicedToArray');
15
+ require('@tippyjs/react');
16
16
  require('tippy.js');
17
- require('react-dom');
18
17
  require('ramda');
19
18
 
20
19
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
21
20
 
21
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
22
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
23
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
23
24
 
24
25
  var POSITIONS = {
25
26
  left: "left",
@@ -38,7 +39,7 @@ var ActionBlock = function ActionBlock(_ref) {
38
39
  dirty = _useFormikContext.dirty;
39
40
  var isSubmitting = isFormSubmitting !== null && isFormSubmitting !== void 0 ? isFormSubmitting : isFormikSubmitting;
40
41
  var isButtonPositionRight = position === POSITIONS.right;
41
- var cancelButton = /*#__PURE__*/React__default["default"].createElement(Button, _extends._extends({
42
+ var cancelButton = /*#__PURE__*/React__default["default"].createElement(Button, _extends__default["default"]({
42
43
  "data-cy": "cancel-button",
43
44
  "data-test-id": "cancel-button",
44
45
  disabled: isSubmitting,
@@ -49,7 +50,7 @@ var ActionBlock = function ActionBlock(_ref) {
49
50
  return e.preventDefault();
50
51
  }
51
52
  }, cancelButtonProps));
52
- var submitButton = /*#__PURE__*/React__default["default"].createElement(formik_Button, _extends._extends({
53
+ var submitButton = /*#__PURE__*/React__default["default"].createElement(formik_Button, _extends__default["default"]({
53
54
  "data-cy": "save-changes-button",
54
55
  "data-test-id": "save-changes-button",
55
56
  disabled: isSubmitting || !dirty,
@@ -59,7 +60,7 @@ var ActionBlock = function ActionBlock(_ref) {
59
60
  type: "submit"
60
61
  }, submitButtonProps));
61
62
  return /*#__PURE__*/React__default["default"].createElement("div", {
62
- className: index.classnames(["neeto-ui-action-block__wrapper", {
63
+ className: classnames__default["default"](["neeto-ui-action-block__wrapper", {
63
64
  "justify-end": isButtonPositionRight
64
65
  }, className])
65
66
  }, isButtonPositionRight ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, cancelButton, submitButton) : /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, submitButton, cancelButton));
@@ -1 +1 @@
1
- {"version":3,"file":"ActionBlock.js","sources":["../../../src/formik/ActionBlock.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport Button from \"components/Button\";\n\nimport SubmitButton from \"./Button\";\n\nconst POSITIONS = { left: \"left\", right: \"right\" };\n\nconst ActionBlock = ({\n className,\n submitButtonProps,\n cancelButtonProps,\n isSubmitting: isFormSubmitting,\n position = POSITIONS.left,\n}) => {\n const {\n handleReset,\n isSubmitting: isFormikSubmitting,\n dirty,\n } = useFormikContext();\n\n const isSubmitting = isFormSubmitting ?? isFormikSubmitting;\n const isButtonPositionRight = position === POSITIONS.right;\n\n const cancelButton = (\n <Button\n data-cy=\"cancel-button\"\n data-test-id=\"cancel-button\"\n disabled={isSubmitting}\n label=\"Cancel\"\n style=\"text\"\n onClick={handleReset}\n onMouseDown={e => e.preventDefault()}\n {...cancelButtonProps}\n />\n );\n\n const submitButton = (\n <SubmitButton\n data-cy=\"save-changes-button\"\n data-test-id=\"save-changes-button\"\n disabled={isSubmitting || !dirty}\n label=\"Save changes\"\n loading={isSubmitting}\n style=\"primary\"\n type=\"submit\"\n {...submitButtonProps}\n />\n );\n\n return (\n <div\n className={classnames([\n \"neeto-ui-action-block__wrapper\",\n { \"justify-end\": isButtonPositionRight },\n className,\n ])}\n >\n {isButtonPositionRight ? (\n <>\n {cancelButton}\n {submitButton}\n </>\n ) : (\n <>\n {submitButton}\n {cancelButton}\n </>\n )}\n </div>\n );\n};\n\nActionBlock.propTypes = {\n /**\n * To specify additional classnames for action block.\n */\n className: PropTypes.string,\n /**\n * To provide props for submit button.\n */\n submitButtonProps: PropTypes.object,\n /**\n * To provide props for cancel button.\n */\n cancelButtonProps: PropTypes.object,\n /**\n * Optional prop to specify the state of form submission, typically used to provide React Query mutation loading state. If not provided, Formik's `isSubmitting` prop is used.\n */\n isSubmitting: PropTypes.bool,\n /**\n * Determines the alignment of buttons in ActionBlock components. Set to `right` when using ActionBlock to right-align both buttons. Defaults to `left`, left-aligning both buttons.\n */\n position: PropTypes.oneOf(Object.values(POSITIONS)),\n};\n\nexport default ActionBlock;\n"],"names":["POSITIONS","left","right","ActionBlock","_ref","className","submitButtonProps","cancelButtonProps","isFormSubmitting","isSubmitting","_ref$position","position","_useFormikContext","useFormikContext","handleReset","isFormikSubmitting","dirty","isButtonPositionRight","cancelButton","React","createElement","Button","_extends","disabled","label","style","onClick","onMouseDown","e","preventDefault","submitButton","SubmitButton","loading","type","classnames","Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CAAA;AAElD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAMX;AAAA,EAAA,IALJC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,iBAAiB,GAAAF,IAAA,CAAjBE,iBAAiB;IACjBC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACHC,gBAAgB,GAAAJ,IAAA,CAA9BK,YAAY;IAAAC,aAAA,GAAAN,IAAA,CACZO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,KAAA,CAAA,GAAGV,SAAS,CAACC,IAAI,GAAAS,aAAA,CAAA;EAEzB,IAAAE,iBAAA,GAIIC,uBAAgB,EAAE;IAHpBC,WAAW,GAAAF,iBAAA,CAAXE,WAAW;IACGC,kBAAkB,GAAAH,iBAAA,CAAhCH,YAAY;IACZO,KAAK,GAAAJ,iBAAA,CAALI,KAAK,CAAA;EAGP,IAAMP,YAAY,GAAGD,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAhBA,KAAAA,CAAAA,GAAAA,gBAAgB,GAAIO,kBAAkB,CAAA;AAC3D,EAAA,IAAME,qBAAqB,GAAGN,QAAQ,KAAKX,SAAS,CAACE,KAAK,CAAA;EAE1D,IAAMgB,YAAY,gBAChBC,yBAAA,CAAAC,aAAA,CAACC,MAAM,EAAAC,iBAAA,CAAA;AACL,IAAA,SAAA,EAAQ,eAAe;AACvB,IAAA,cAAA,EAAa,eAAe;AAC5BC,IAAAA,QAAQ,EAAEd,YAAa;AACvBe,IAAAA,KAAK,EAAC,QAAQ;AACdC,IAAAA,KAAK,EAAC,MAAM;AACZC,IAAAA,OAAO,EAAEZ,WAAY;IACrBa,WAAW,EAAE,SAAAA,WAAAA,CAAAC,CAAC,EAAA;MAAA,OAAIA,CAAC,CAACC,cAAc,EAAE,CAAA;AAAA,KAAA;AAAC,GAAA,EACjCtB,iBAAiB,CAExB,CAAA,CAAA;EAED,IAAMuB,YAAY,gBAChBX,yBAAA,CAAAC,aAAA,CAACW,aAAY,EAAAT,iBAAA,CAAA;AACX,IAAA,SAAA,EAAQ,qBAAqB;AAC7B,IAAA,cAAA,EAAa,qBAAqB;AAClCC,IAAAA,QAAQ,EAAEd,YAAY,IAAI,CAACO,KAAM;AACjCQ,IAAAA,KAAK,EAAC,cAAc;AACpBQ,IAAAA,OAAO,EAAEvB,YAAa;AACtBgB,IAAAA,KAAK,EAAC,SAAS;AACfQ,IAAAA,IAAI,EAAC,QAAA;AAAQ,GAAA,EACT3B,iBAAiB,CAExB,CAAA,CAAA;EAED,oBACEa,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEf,IAAAA,SAAS,EAAE6B,gBAAU,CAAC,CACpB,gCAAgC,EAChC;AAAE,MAAA,aAAa,EAAEjB,qBAAAA;KAAuB,EACxCZ,SAAS,CACV,CAAA;GAEAY,EAAAA,qBAAqB,gBACpBE,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAgB,QAAA,EACGjB,IAAAA,EAAAA,YAAY,EACZY,YAAY,CACZ,gBAEHX,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAgB,QAAA,EAAA,IAAA,EACGL,YAAY,EACZZ,YAAY,CAEhB,CACG,CAAA;AAEV;;;;"}
1
+ {"version":3,"file":"ActionBlock.js","sources":["../../../src/formik/ActionBlock.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport Button from \"components/Button\";\n\nimport SubmitButton from \"./Button\";\n\nconst POSITIONS = { left: \"left\", right: \"right\" };\n\nconst ActionBlock = ({\n className,\n submitButtonProps,\n cancelButtonProps,\n isSubmitting: isFormSubmitting,\n position = POSITIONS.left,\n}) => {\n const {\n handleReset,\n isSubmitting: isFormikSubmitting,\n dirty,\n } = useFormikContext();\n\n const isSubmitting = isFormSubmitting ?? isFormikSubmitting;\n const isButtonPositionRight = position === POSITIONS.right;\n\n const cancelButton = (\n <Button\n data-cy=\"cancel-button\"\n data-test-id=\"cancel-button\"\n disabled={isSubmitting}\n label=\"Cancel\"\n style=\"text\"\n onClick={handleReset}\n onMouseDown={e => e.preventDefault()}\n {...cancelButtonProps}\n />\n );\n\n const submitButton = (\n <SubmitButton\n data-cy=\"save-changes-button\"\n data-test-id=\"save-changes-button\"\n disabled={isSubmitting || !dirty}\n label=\"Save changes\"\n loading={isSubmitting}\n style=\"primary\"\n type=\"submit\"\n {...submitButtonProps}\n />\n );\n\n return (\n <div\n className={classnames([\n \"neeto-ui-action-block__wrapper\",\n { \"justify-end\": isButtonPositionRight },\n className,\n ])}\n >\n {isButtonPositionRight ? (\n <>\n {cancelButton}\n {submitButton}\n </>\n ) : (\n <>\n {submitButton}\n {cancelButton}\n </>\n )}\n </div>\n );\n};\n\nActionBlock.propTypes = {\n /**\n * To specify additional classnames for action block.\n */\n className: PropTypes.string,\n /**\n * To provide props for submit button.\n */\n submitButtonProps: PropTypes.object,\n /**\n * To provide props for cancel button.\n */\n cancelButtonProps: PropTypes.object,\n /**\n * Optional prop to specify the state of form submission, typically used to provide React Query mutation loading state. If not provided, Formik's `isSubmitting` prop is used.\n */\n isSubmitting: PropTypes.bool,\n /**\n * Determines the alignment of buttons in ActionBlock components. Set to `right` when using ActionBlock to right-align both buttons. Defaults to `left`, left-aligning both buttons.\n */\n position: PropTypes.oneOf(Object.values(POSITIONS)),\n};\n\nexport default ActionBlock;\n"],"names":["POSITIONS","left","right","ActionBlock","_ref","className","submitButtonProps","cancelButtonProps","isFormSubmitting","isSubmitting","_ref$position","position","_useFormikContext","useFormikContext","handleReset","isFormikSubmitting","dirty","isButtonPositionRight","cancelButton","React","createElement","Button","_extends","disabled","label","style","onClick","onMouseDown","e","preventDefault","submitButton","SubmitButton","loading","type","classnames","Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAUA,IAAMA,SAAS,GAAG;AAAEC,EAAAA,IAAI,EAAE,MAAM;AAAEC,EAAAA,KAAK,EAAE,OAAA;AAAQ,CAAC,CAAA;AAElD,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAAC,IAAA,EAMX;AAAA,EAAA,IALJC,SAAS,GAAAD,IAAA,CAATC,SAAS;IACTC,iBAAiB,GAAAF,IAAA,CAAjBE,iBAAiB;IACjBC,iBAAiB,GAAAH,IAAA,CAAjBG,iBAAiB;IACHC,gBAAgB,GAAAJ,IAAA,CAA9BK,YAAY;IAAAC,aAAA,GAAAN,IAAA,CACZO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAA,KAAA,CAAA,GAAGV,SAAS,CAACC,IAAI,GAAAS,aAAA,CAAA;EAEzB,IAAAE,iBAAA,GAIIC,uBAAgB,EAAE;IAHpBC,WAAW,GAAAF,iBAAA,CAAXE,WAAW;IACGC,kBAAkB,GAAAH,iBAAA,CAAhCH,YAAY;IACZO,KAAK,GAAAJ,iBAAA,CAALI,KAAK,CAAA;EAGP,IAAMP,YAAY,GAAGD,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,KAAhBA,KAAAA,CAAAA,GAAAA,gBAAgB,GAAIO,kBAAkB,CAAA;AAC3D,EAAA,IAAME,qBAAqB,GAAGN,QAAQ,KAAKX,SAAS,CAACE,KAAK,CAAA;EAE1D,IAAMgB,YAAY,gBAChBC,yBAAA,CAAAC,aAAA,CAACC,MAAM,EAAAC,4BAAA,CAAA;AACL,IAAA,SAAA,EAAQ,eAAe;AACvB,IAAA,cAAA,EAAa,eAAe;AAC5BC,IAAAA,QAAQ,EAAEd,YAAa;AACvBe,IAAAA,KAAK,EAAC,QAAQ;AACdC,IAAAA,KAAK,EAAC,MAAM;AACZC,IAAAA,OAAO,EAAEZ,WAAY;IACrBa,WAAW,EAAE,SAAAA,WAAAA,CAAAC,CAAC,EAAA;MAAA,OAAIA,CAAC,CAACC,cAAc,EAAE,CAAA;AAAA,KAAA;AAAC,GAAA,EACjCtB,iBAAiB,CAExB,CAAA,CAAA;EAED,IAAMuB,YAAY,gBAChBX,yBAAA,CAAAC,aAAA,CAACW,aAAY,EAAAT,4BAAA,CAAA;AACX,IAAA,SAAA,EAAQ,qBAAqB;AAC7B,IAAA,cAAA,EAAa,qBAAqB;AAClCC,IAAAA,QAAQ,EAAEd,YAAY,IAAI,CAACO,KAAM;AACjCQ,IAAAA,KAAK,EAAC,cAAc;AACpBQ,IAAAA,OAAO,EAAEvB,YAAa;AACtBgB,IAAAA,KAAK,EAAC,SAAS;AACfQ,IAAAA,IAAI,EAAC,QAAA;AAAQ,GAAA,EACT3B,iBAAiB,CAExB,CAAA,CAAA;EAED,oBACEa,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEf,IAAAA,SAAS,EAAE6B,8BAAU,CAAC,CACpB,gCAAgC,EAChC;AAAE,MAAA,aAAa,EAAEjB,qBAAAA;KAAuB,EACxCZ,SAAS,CACV,CAAA;GAEAY,EAAAA,qBAAqB,gBACpBE,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAgB,QAAA,EACGjB,IAAAA,EAAAA,YAAY,EACZY,YAAY,CACZ,gBAEHX,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAgB,QAAA,EAAA,IAAA,EACGL,YAAY,EACZZ,YAAY,CAEhB,CACG,CAAA;AAEV;;;;"}
@@ -1,42 +1,55 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('../extends-1b35a664.js');
4
- var objectWithoutProperties = require('../objectWithoutProperties-2fed2d7d.js');
3
+ var _extends = require('@babel/runtime/helpers/extends');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
5
  var React = require('react');
6
6
  var formik = require('formik');
7
7
  var Alert = require('../Alert.js');
8
- var slicedToArray = require('../slicedToArray-732a2048.js');
8
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
9
9
  var reactRouterDom = require('react-router-dom');
10
- require('../index-a8cc581e.js');
10
+ require('@bigbinary/neeto-hotkeys');
11
11
  require('../overlayManager.js');
12
- require('../index-6e09c7bc.js');
12
+ require('../index-f2e36d91.js');
13
+ require('@babel/runtime/helpers/defineProperty');
14
+ require('qs');
13
15
  require('../Button.js');
14
- require('../defineProperty-ee86604b.js');
15
- require('../toPropertyKey-bfa2e465.js');
16
- require('../index-302c3d37.js');
16
+ require('classnames');
17
17
  require('../motion-a1906aff.js');
18
- require('../index-773961dd.js');
18
+ require('../Tooltip.js');
19
+ require('@tippyjs/react');
19
20
  require('tippy.js');
20
- require('react-dom');
21
21
  require('../Modal.js');
22
22
  require('@bigbinary/neeto-icons');
23
- require('../useOverlayManager-359ed795.js');
23
+ require('../useOverlayManager-1de0435e.js');
24
+ require('@babel/runtime/helpers/esm/extends');
25
+ require('@babel/runtime/helpers/esm/objectWithoutPropertiesLoose');
26
+ require('@babel/runtime/helpers/esm/inheritsLoose');
24
27
  require('../index-63580e68.js');
28
+ require('react-dom');
29
+ require('@babel/runtime/helpers/esm/assertThisInitialized');
25
30
  require('ramda');
26
31
  require('../Typography.js');
27
- require('../createClass-80e17c6a.js');
32
+ require('@babel/runtime/helpers/classCallCheck');
33
+ require('@babel/runtime/helpers/createClass');
34
+ require('dayjs');
35
+ require('dayjs/plugin/localeData');
36
+ require('dayjs/plugin/utc');
37
+ require('dayjs/plugin/weekday');
38
+ require('dayjs/plugin/weekOfYear');
28
39
  require('@bigbinary/neeto-cist');
29
- require('util');
30
40
 
31
41
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
32
42
 
43
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
44
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
33
45
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
46
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
34
47
 
35
48
  var useNavPrompt = function useNavPrompt(_ref) {
36
49
  var _ref$shouldBlock = _ref.shouldBlock,
37
50
  shouldBlock = _ref$shouldBlock === void 0 ? true : _ref$shouldBlock;
38
51
  var _useState = React.useState(false),
39
- _useState2 = slicedToArray._slicedToArray(_useState, 2),
52
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
40
53
  isBlocked = _useState2[0],
41
54
  setIsBlocked = _useState2[1];
42
55
  var history = reactRouterDom.useHistory();
@@ -100,7 +113,7 @@ var _excluded = ["isDirty"];
100
113
  var BlockNavigation = function BlockNavigation(_ref) {
101
114
  var _ref$isDirty = _ref.isDirty,
102
115
  isDirty = _ref$isDirty === void 0 ? false : _ref$isDirty,
103
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
116
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
104
117
  var formikContext = formik.useFormikContext();
105
118
  var shouldBlock = isDirty || Boolean(formikContext) && Boolean(formikContext.dirty);
106
119
  var _useNavPrompt = useNavPrompt({
@@ -113,7 +126,7 @@ var BlockNavigation = function BlockNavigation(_ref) {
113
126
  if (formikContext) formikContext.resetForm();
114
127
  continueNavigation();
115
128
  };
116
- return /*#__PURE__*/React__default["default"].createElement(Alert, _extends._extends({
129
+ return /*#__PURE__*/React__default["default"].createElement(Alert, _extends__default["default"]({
117
130
  isOpen: isBlocked,
118
131
  message: "All of your unsaved changes will be lost. This can't be undone.",
119
132
  submitButtonLabel: "Discard changes",
@@ -1 +1 @@
1
- {"version":3,"file":"BlockNavigation.js","sources":["../../../src/hooks/useNavPrompt.js","../../../src/formik/BlockNavigation.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { useHistory } from \"react-router-dom\";\n\nconst useNavPrompt = ({ shouldBlock = true }) => {\n const [isBlocked, setIsBlocked] = useState(false);\n\n const history = useHistory();\n const unblockRef = useRef();\n const navRef = useRef();\n\n const continueNavigation = () => {\n if (isBlocked && unblockRef.current) {\n unblockRef.current?.();\n setIsBlocked(false);\n if (navRef.current) {\n const { action, transition } = navRef.current;\n handleNavigation(action, transition);\n }\n }\n };\n\n const hidePrompt = () => setIsBlocked(false);\n\n const handleNavigation = (action, transition) => {\n switch (action) {\n case \"PUSH\":\n history.push(transition);\n break;\n case \"REPLACE\":\n history.replace(transition);\n break;\n case \"POP\":\n history.goBack();\n break;\n }\n };\n\n useEffect(() => {\n if (shouldBlock) {\n unblockRef.current = history.block((transition, action) => {\n setIsBlocked(true);\n navRef.current = { transition, action };\n\n return false;\n });\n\n return () => {\n if (unblockRef.current) {\n unblockRef.current();\n }\n };\n }\n\n return undefined;\n }, [shouldBlock]);\n\n return { isBlocked, continueNavigation, hidePrompt };\n};\n\nexport default useNavPrompt;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport Alert from \"components/Alert\";\nimport { useNavPrompt } from \"hooks\";\n\nconst BlockNavigation = ({ isDirty = false, ...otherProps }) => {\n const formikContext = useFormikContext();\n const shouldBlock =\n isDirty || (Boolean(formikContext) && Boolean(formikContext.dirty));\n\n const { isBlocked, continueNavigation, hidePrompt } = useNavPrompt({\n shouldBlock,\n });\n\n const continueAction = () => {\n if (formikContext) formikContext.resetForm();\n continueNavigation();\n };\n\n return (\n <Alert\n isOpen={isBlocked}\n message=\"All of your unsaved changes will be lost. This can't be undone.\"\n submitButtonLabel=\"Discard changes\"\n title=\"You have unsaved changes\"\n onClose={hidePrompt}\n onSubmit={continueAction}\n {...otherProps}\n />\n );\n};\n\nBlockNavigation.propTypes = {\n isDirty: PropTypes.bool,\n message: PropTypes.string,\n title: PropTypes.string,\n submitButtonLabel: PropTypes.string,\n};\n\nexport default BlockNavigation;\n"],"names":["useNavPrompt","_ref","_ref$shouldBlock","shouldBlock","_useState","useState","_useState2","_slicedToArray","isBlocked","setIsBlocked","history","useHistory","unblockRef","useRef","navRef","continueNavigation","current","_unblockRef$current","call","_navRef$current","action","transition","handleNavigation","hidePrompt","push","replace","goBack","useEffect","block","undefined","BlockNavigation","_ref$isDirty","isDirty","otherProps","_objectWithoutProperties","_excluded","formikContext","useFormikContext","Boolean","dirty","_useNavPrompt","continueAction","resetForm","React","createElement","Alert","_extends","isOpen","message","submitButtonLabel","title","onClose","onSubmit"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,IAAMA,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAA+B;AAAA,EAAA,IAAAC,gBAAA,GAAAD,IAAA,CAAzBE,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,gBAAA,CAAA;AACxC,EAAA,IAAAE,SAAA,GAAkCC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,4BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1CI,IAAAA,SAAS,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,YAAY,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;EAE9B,IAAMI,OAAO,GAAGC,yBAAU,EAAE,CAAA;EAC5B,IAAMC,UAAU,GAAGC,YAAM,EAAE,CAAA;EAC3B,IAAMC,MAAM,GAAGD,YAAM,EAAE,CAAA;AAEvB,EAAA,IAAME,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAS;AAC/B,IAAA,IAAIP,SAAS,IAAII,UAAU,CAACI,OAAO,EAAE;AAAA,MAAA,IAAAC,mBAAA,CAAA;AACnC,MAAA,CAAAA,mBAAA,GAAAL,UAAU,CAACI,OAAO,MAAA,IAAA,IAAAC,mBAAA,KAAA,KAAA,CAAA,IAAlBA,mBAAA,CAAAC,IAAA,CAAAN,UAAU,CAAY,CAAA;MACtBH,YAAY,CAAC,KAAK,CAAC,CAAA;MACnB,IAAIK,MAAM,CAACE,OAAO,EAAE;AAClB,QAAA,IAAAG,eAAA,GAA+BL,MAAM,CAACE,OAAO;UAArCI,MAAM,GAAAD,eAAA,CAANC,MAAM;UAAEC,UAAU,GAAAF,eAAA,CAAVE,UAAU,CAAA;AAC1BC,QAAAA,gBAAgB,CAACF,MAAM,EAAEC,UAAU,CAAC,CAAA;AACtC,OAAA;AACF,KAAA;GACD,CAAA;AAED,EAAA,IAAME,UAAU,GAAG,SAAbA,UAAUA,GAAA;IAAA,OAASd,YAAY,CAAC,KAAK,CAAC,CAAA;AAAA,GAAA,CAAA;EAE5C,IAAMa,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIF,MAAM,EAAEC,UAAU,EAAK;AAC/C,IAAA,QAAQD,MAAM;AACZ,MAAA,KAAK,MAAM;AACTV,QAAAA,OAAO,CAACc,IAAI,CAACH,UAAU,CAAC,CAAA;AACxB,QAAA,MAAA;AACF,MAAA,KAAK,SAAS;AACZX,QAAAA,OAAO,CAACe,OAAO,CAACJ,UAAU,CAAC,CAAA;AAC3B,QAAA,MAAA;AACF,MAAA,KAAK,KAAK;QACRX,OAAO,CAACgB,MAAM,EAAE,CAAA;AAChB,QAAA,MAAA;AAAM,KAAA;GAEX,CAAA;AAEDC,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAIxB,WAAW,EAAE;MACfS,UAAU,CAACI,OAAO,GAAGN,OAAO,CAACkB,KAAK,CAAC,UAACP,UAAU,EAAED,MAAM,EAAK;QACzDX,YAAY,CAAC,IAAI,CAAC,CAAA;QAClBK,MAAM,CAACE,OAAO,GAAG;AAAEK,UAAAA,UAAU,EAAVA,UAAU;AAAED,UAAAA,MAAM,EAANA,MAAAA;SAAQ,CAAA;AAEvC,QAAA,OAAO,KAAK,CAAA;AACd,OAAC,CAAC,CAAA;AAEF,MAAA,OAAO,YAAM;QACX,IAAIR,UAAU,CAACI,OAAO,EAAE;UACtBJ,UAAU,CAACI,OAAO,EAAE,CAAA;AACtB,SAAA;OACD,CAAA;AACH,KAAA;AAEA,IAAA,OAAOa,SAAS,CAAA;AAClB,GAAC,EAAE,CAAC1B,WAAW,CAAC,CAAC,CAAA;EAEjB,OAAO;AAAEK,IAAAA,SAAS,EAATA,SAAS;AAAEO,IAAAA,kBAAkB,EAAlBA,kBAAkB;AAAEQ,IAAAA,UAAU,EAAVA,UAAAA;GAAY,CAAA;AACtD,CAAC;;;AClDD,IAAMO,eAAe,GAAG,SAAlBA,eAAeA,CAAA7B,IAAA,EAA2C;AAAA,EAAA,IAAA8B,YAAA,GAAA9B,IAAA,CAArC+B,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,YAAA;AAAKE,IAAAA,UAAU,GAAAC,gDAAA,CAAAjC,IAAA,EAAAkC,SAAA,CAAA,CAAA;EACvD,IAAMC,aAAa,GAAGC,uBAAgB,EAAE,CAAA;AACxC,EAAA,IAAMlC,WAAW,GACf6B,OAAO,IAAKM,OAAO,CAACF,aAAa,CAAC,IAAIE,OAAO,CAACF,aAAa,CAACG,KAAK,CAAE,CAAA;EAErE,IAAAC,aAAA,GAAsDxC,YAAY,CAAC;AACjEG,MAAAA,WAAW,EAAXA,WAAAA;AACF,KAAC,CAAC;IAFMK,SAAS,GAAAgC,aAAA,CAAThC,SAAS;IAAEO,kBAAkB,GAAAyB,aAAA,CAAlBzB,kBAAkB;IAAEQ,UAAU,GAAAiB,aAAA,CAAVjB,UAAU,CAAA;AAIjD,EAAA,IAAMkB,cAAc,GAAG,SAAjBA,cAAcA,GAAS;AAC3B,IAAA,IAAIL,aAAa,EAAEA,aAAa,CAACM,SAAS,EAAE,CAAA;AAC5C3B,IAAAA,kBAAkB,EAAE,CAAA;GACrB,CAAA;AAED,EAAA,oBACE4B,yBAAA,CAAAC,aAAA,CAACC,KAAK,EAAAC,iBAAA,CAAA;AACJC,IAAAA,MAAM,EAAEvC,SAAU;AAClBwC,IAAAA,OAAO,EAAC,iEAAiE;AACzEC,IAAAA,iBAAiB,EAAC,iBAAiB;AACnCC,IAAAA,KAAK,EAAC,0BAA0B;AAChCC,IAAAA,OAAO,EAAE5B,UAAW;AACpB6B,IAAAA,QAAQ,EAAEX,cAAAA;AAAe,GAAA,EACrBR,UAAU,CACd,CAAA,CAAA;AAEN;;;;"}
1
+ {"version":3,"file":"BlockNavigation.js","sources":["../../../src/hooks/useNavPrompt.js","../../../src/formik/BlockNavigation.jsx"],"sourcesContent":["import { useEffect, useRef, useState } from \"react\";\n\nimport { useHistory } from \"react-router-dom\";\n\nconst useNavPrompt = ({ shouldBlock = true }) => {\n const [isBlocked, setIsBlocked] = useState(false);\n\n const history = useHistory();\n const unblockRef = useRef();\n const navRef = useRef();\n\n const continueNavigation = () => {\n if (isBlocked && unblockRef.current) {\n unblockRef.current?.();\n setIsBlocked(false);\n if (navRef.current) {\n const { action, transition } = navRef.current;\n handleNavigation(action, transition);\n }\n }\n };\n\n const hidePrompt = () => setIsBlocked(false);\n\n const handleNavigation = (action, transition) => {\n switch (action) {\n case \"PUSH\":\n history.push(transition);\n break;\n case \"REPLACE\":\n history.replace(transition);\n break;\n case \"POP\":\n history.goBack();\n break;\n }\n };\n\n useEffect(() => {\n if (shouldBlock) {\n unblockRef.current = history.block((transition, action) => {\n setIsBlocked(true);\n navRef.current = { transition, action };\n\n return false;\n });\n\n return () => {\n if (unblockRef.current) {\n unblockRef.current();\n }\n };\n }\n\n return undefined;\n }, [shouldBlock]);\n\n return { isBlocked, continueNavigation, hidePrompt };\n};\n\nexport default useNavPrompt;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport Alert from \"components/Alert\";\nimport { useNavPrompt } from \"hooks\";\n\nconst BlockNavigation = ({ isDirty = false, ...otherProps }) => {\n const formikContext = useFormikContext();\n const shouldBlock =\n isDirty || (Boolean(formikContext) && Boolean(formikContext.dirty));\n\n const { isBlocked, continueNavigation, hidePrompt } = useNavPrompt({\n shouldBlock,\n });\n\n const continueAction = () => {\n if (formikContext) formikContext.resetForm();\n continueNavigation();\n };\n\n return (\n <Alert\n isOpen={isBlocked}\n message=\"All of your unsaved changes will be lost. This can't be undone.\"\n submitButtonLabel=\"Discard changes\"\n title=\"You have unsaved changes\"\n onClose={hidePrompt}\n onSubmit={continueAction}\n {...otherProps}\n />\n );\n};\n\nBlockNavigation.propTypes = {\n isDirty: PropTypes.bool,\n message: PropTypes.string,\n title: PropTypes.string,\n submitButtonLabel: PropTypes.string,\n};\n\nexport default BlockNavigation;\n"],"names":["useNavPrompt","_ref","_ref$shouldBlock","shouldBlock","_useState","useState","_useState2","_slicedToArray","isBlocked","setIsBlocked","history","useHistory","unblockRef","useRef","navRef","continueNavigation","current","_unblockRef$current","call","_navRef$current","action","transition","handleNavigation","hidePrompt","push","replace","goBack","useEffect","block","undefined","BlockNavigation","_ref$isDirty","isDirty","otherProps","_objectWithoutProperties","_excluded","formikContext","useFormikContext","Boolean","dirty","_useNavPrompt","continueAction","resetForm","React","createElement","Alert","_extends","isOpen","message","submitButtonLabel","title","onClose","onSubmit"],"mappings":"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"}
@@ -1,29 +1,30 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('../extends-1b35a664.js');
4
- var objectWithoutProperties = require('../objectWithoutProperties-2fed2d7d.js');
3
+ var _extends = require('@babel/runtime/helpers/extends');
4
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
5
5
  var React = require('react');
6
6
  var formik = require('formik');
7
7
  var ramda = require('ramda');
8
8
  var Button = require('../Button.js');
9
- require('../defineProperty-ee86604b.js');
10
- require('../toPropertyKey-bfa2e465.js');
11
- require('../index-302c3d37.js');
9
+ require('@babel/runtime/helpers/defineProperty');
10
+ require('classnames');
12
11
  require('react-router-dom');
13
12
  require('../motion-a1906aff.js');
14
- require('../index-773961dd.js');
15
- require('../slicedToArray-732a2048.js');
13
+ require('../Tooltip.js');
14
+ require('@babel/runtime/helpers/slicedToArray');
15
+ require('@tippyjs/react');
16
16
  require('tippy.js');
17
- require('react-dom');
18
17
 
19
18
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
19
 
20
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
21
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
21
22
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
23
 
23
24
  var _excluded = ["disabled"];
24
25
  var FormikButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
25
26
  var disabled = _ref.disabled,
26
- otherProps = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
27
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded);
27
28
  var _useFormikContext = formik.useFormikContext(),
28
29
  handleSubmit = _useFormikContext.handleSubmit,
29
30
  isSubmitting = _useFormikContext.isSubmitting,
@@ -31,7 +32,7 @@ var FormikButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
31
32
  initialValues = _useFormikContext.initialValues,
32
33
  isValid = _useFormikContext.isValid;
33
34
  var isDisabled = disabled !== null && disabled !== void 0 ? disabled : isSubmitting || ramda.equals(values, initialValues);
34
- return /*#__PURE__*/React__default["default"].createElement(Button, _extends._extends({
35
+ return /*#__PURE__*/React__default["default"].createElement(Button, _extends__default["default"]({
35
36
  ref: ref,
36
37
  disabled: isDisabled,
37
38
  loading: isSubmitting && isValid,
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sources":["../../../src/formik/Button.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { equals } from \"ramda\";\n\nimport Button from \"components/Button\";\n\nconst FormikButton = forwardRef(({ disabled, ...otherProps }, ref) => {\n const { handleSubmit, isSubmitting, values, initialValues, isValid } =\n useFormikContext();\n\n const isDisabled =\n disabled ?? (isSubmitting || equals(values, initialValues));\n\n return (\n <Button\n {...{ ref }}\n disabled={isDisabled}\n loading={isSubmitting && isValid}\n onClick={handleSubmit}\n {...otherProps}\n />\n );\n});\n\nFormikButton.displayName = \"FormikButton\";\n\nexport default FormikButton;\n"],"names":["FormikButton","forwardRef","_ref","ref","disabled","otherProps","_objectWithoutProperties","_excluded","_useFormikContext","useFormikContext","handleSubmit","isSubmitting","values","initialValues","isValid","isDisabled","equals","React","createElement","Button","_extends","loading","onClick","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAOMA,IAAAA,YAAY,gBAAGC,gBAAU,CAAC,UAAAC,IAAA,EAA8BC,GAAG,EAAK;AAAA,EAAA,IAAnCC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;AAAKC,IAAAA,UAAU,GAAAC,gDAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;EACxD,IAAAC,iBAAA,GACEC,uBAAgB,EAAE;IADZC,YAAY,GAAAF,iBAAA,CAAZE,YAAY;IAAEC,YAAY,GAAAH,iBAAA,CAAZG,YAAY;IAAEC,MAAM,GAAAJ,iBAAA,CAANI,MAAM;IAAEC,aAAa,GAAAL,iBAAA,CAAbK,aAAa;IAAEC,OAAO,GAAAN,iBAAA,CAAPM,OAAO,CAAA;AAGlE,EAAA,IAAMC,UAAU,GACdX,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,QAAQ,GAAKO,YAAY,IAAIK,YAAM,CAACJ,MAAM,EAAEC,aAAa,CAAE,CAAA;AAE7D,EAAA,oBACEI,yBAAA,CAAAC,aAAA,CAACC,MAAM,EAAAC,iBAAA,CAAA;AACCjB,IAAAA,GAAG,EAAHA,GAAG;AACTC,IAAAA,QAAQ,EAAEW,UAAW;IACrBM,OAAO,EAAEV,YAAY,IAAIG,OAAQ;AACjCQ,IAAAA,OAAO,EAAEZ,YAAAA;AAAa,GAAA,EAClBL,UAAU,CACd,CAAA,CAAA;AAEN,CAAC,EAAC;AAEFL,YAAY,CAACuB,WAAW,GAAG,cAAc;;;;"}
1
+ {"version":3,"file":"Button.js","sources":["../../../src/formik/Button.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { equals } from \"ramda\";\n\nimport Button from \"components/Button\";\n\nconst FormikButton = forwardRef(({ disabled, ...otherProps }, ref) => {\n const { handleSubmit, isSubmitting, values, initialValues, isValid } =\n useFormikContext();\n\n const isDisabled =\n disabled ?? (isSubmitting || equals(values, initialValues));\n\n return (\n <Button\n {...{ ref }}\n disabled={isDisabled}\n loading={isSubmitting && isValid}\n onClick={handleSubmit}\n {...otherProps}\n />\n );\n});\n\nFormikButton.displayName = \"FormikButton\";\n\nexport default FormikButton;\n"],"names":["FormikButton","forwardRef","_ref","ref","disabled","otherProps","_objectWithoutProperties","_excluded","_useFormikContext","useFormikContext","handleSubmit","isSubmitting","values","initialValues","isValid","isDisabled","equals","React","createElement","Button","_extends","loading","onClick","displayName"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAOMA,IAAAA,YAAY,gBAAGC,gBAAU,CAAC,UAAAC,IAAA,EAA8BC,GAAG,EAAK;AAAA,EAAA,IAAnCC,QAAQ,GAAAF,IAAA,CAARE,QAAQ;AAAKC,IAAAA,UAAU,GAAAC,4CAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;EACxD,IAAAC,iBAAA,GACEC,uBAAgB,EAAE;IADZC,YAAY,GAAAF,iBAAA,CAAZE,YAAY;IAAEC,YAAY,GAAAH,iBAAA,CAAZG,YAAY;IAAEC,MAAM,GAAAJ,iBAAA,CAANI,MAAM;IAAEC,aAAa,GAAAL,iBAAA,CAAbK,aAAa;IAAEC,OAAO,GAAAN,iBAAA,CAAPM,OAAO,CAAA;AAGlE,EAAA,IAAMC,UAAU,GACdX,QAAQ,KAAA,IAAA,IAARA,QAAQ,KAARA,KAAAA,CAAAA,GAAAA,QAAQ,GAAKO,YAAY,IAAIK,YAAM,CAACJ,MAAM,EAAEC,aAAa,CAAE,CAAA;AAE7D,EAAA,oBACEI,yBAAA,CAAAC,aAAA,CAACC,MAAM,EAAAC,4BAAA,CAAA;AACCjB,IAAAA,GAAG,EAAHA,GAAG;AACTC,IAAAA,QAAQ,EAAEW,UAAW;IACrBM,OAAO,EAAEV,YAAY,IAAIG,OAAQ;AACjCQ,IAAAA,OAAO,EAAEZ,YAAAA;AAAa,GAAA,EAClBL,UAAU,CACd,CAAA,CAAA;AAEN,CAAC,EAAC;AAEFL,YAAY,CAACuB,WAAW,GAAG,cAAc;;;;"}
@@ -1,50 +1,58 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('../extends-1b35a664.js');
4
- var defineProperty = require('../defineProperty-ee86604b.js');
5
- var objectWithoutProperties = require('../objectWithoutProperties-2fed2d7d.js');
3
+ var _extends = require('@babel/runtime/helpers/extends');
4
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
6
6
  var React = require('react');
7
7
  var formik = require('formik');
8
8
  var index = require('../index-63580e68.js');
9
9
  var Checkbox$1 = require('../Checkbox.js');
10
- require('../toPropertyKey-bfa2e465.js');
11
- require('../index-302c3d37.js');
10
+ require('classnames');
12
11
  require('../useId-4e3deb5c.js');
12
+ require('@babel/runtime/helpers/slicedToArray');
13
13
  require('react-router-dom');
14
- require('../index-a8cc581e.js');
15
- require('ramda');
14
+ require('@bigbinary/neeto-hotkeys');
16
15
  require('../overlayManager.js');
17
- require('../createClass-80e17c6a.js');
18
- require('../index-6e09c7bc.js');
19
- require('../slicedToArray-732a2048.js');
16
+ require('@babel/runtime/helpers/classCallCheck');
17
+ require('@babel/runtime/helpers/createClass');
18
+ require('../index-f2e36d91.js');
19
+ require('dayjs');
20
+ require('dayjs/plugin/localeData');
21
+ require('dayjs/plugin/utc');
22
+ require('dayjs/plugin/weekday');
23
+ require('dayjs/plugin/weekOfYear');
20
24
  require('@bigbinary/neeto-cist');
21
- require('util');
25
+ require('qs');
26
+ require('ramda');
22
27
  require('../Label.js');
23
28
  require('@bigbinary/neeto-icons');
24
29
  require('../Button.js');
25
30
  require('../motion-a1906aff.js');
26
- require('../index-773961dd.js');
31
+ require('../Tooltip.js');
32
+ require('@tippyjs/react');
27
33
  require('tippy.js');
28
- require('react-dom');
29
34
  require('../Popover.js');
30
35
  require('../Typography.js');
31
36
 
32
37
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
33
38
 
39
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
40
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
41
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
34
42
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
35
43
 
36
44
  var _excluded = ["name"];
37
45
  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; }
38
- 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._defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
46
+ 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; }
39
47
  var Checkbox = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
40
48
  var name = _ref.name,
41
- rest = objectWithoutProperties._objectWithoutProperties(_ref, _excluded);
49
+ rest = _objectWithoutProperties__default["default"](_ref, _excluded);
42
50
  return /*#__PURE__*/React__default["default"].createElement(formik.Field, {
43
51
  name: name
44
52
  }, function (_ref2) {
45
53
  var field = _ref2.field,
46
54
  meta = _ref2.meta;
47
- return /*#__PURE__*/React__default["default"].createElement(Checkbox$1, _extends._extends({
55
+ return /*#__PURE__*/React__default["default"].createElement(Checkbox$1, _extends__default["default"]({
48
56
  checked: field.value
49
57
  }, _objectSpread(_objectSpread({}, field), {}, {
50
58
  ref: ref
@@ -1 +1 @@
1
- {"version":3,"file":"Checkbox.js","sources":["../../../src/formik/Checkbox.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { Field } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport CheckboxField from \"components/Checkbox\";\n\nconst Checkbox = forwardRef(({ name, ...rest }, ref) => (\n <Field {...{ name }}>\n {({ field, meta }) => (\n <CheckboxField\n checked={field.value}\n {...{ ...field, ref }}\n error={meta.touched ? meta.error : \"\"}\n {...rest}\n />\n )}\n </Field>\n));\n\nCheckbox.displayName = \"Checkbox\";\n\nCheckbox.propTypes = {\n /**\n * The name of the Checkbox.\n */\n name: PropTypes.string,\n};\n\nexport default Checkbox;\n"],"names":["Checkbox","forwardRef","_ref","ref","name","rest","_objectWithoutProperties","_excluded","React","createElement","Field","_ref2","field","meta","CheckboxField","_extends","checked","value","_objectSpread","error","touched","displayName","propTypes","PropTypes","string"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,QAAQ,gBAAGC,gBAAU,CAAC,UAAAC,IAAA,EAAoBC,GAAG,EAAA;AAAA,EAAA,IAApBC,IAAI,GAAAF,IAAA,CAAJE,IAAI;AAAKC,IAAAA,IAAI,GAAAC,gDAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;AAAA,EAAA,oBAC1CC,yBAAA,CAAAC,aAAA,CAACC,YAAK,EAAA;AAAON,IAAAA,IAAI,EAAJA,IAAAA;AAAI,GAAA,EACd,UAAAO,KAAA,EAAA;AAAA,IAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,IAAI,GAAAF,KAAA,CAAJE,IAAI,CAAA;AAAA,IAAA,oBACbL,yBAAA,CAAAC,aAAA,CAACK,UAAa,EAAAC,iBAAA,CAAA;MACZC,OAAO,EAAEJ,KAAK,CAACK,KAAAA;AAAM,KAAA,EAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACZN,KAAK,CAAA,EAAA,EAAA,EAAA;AAAET,MAAAA,GAAG,EAAHA,GAAAA;AAAG,KAAA,CAAA,EAAA;MACnBgB,KAAK,EAAEN,IAAI,CAACO,OAAO,GAAGP,IAAI,CAACM,KAAK,GAAG,EAAA;AAAG,KAAA,EAClCd,IAAI,CACR,CAAA,CAAA;AAAA,GACH,CACK,CAAA;AAAA,CACT,EAAC;AAEFL,QAAQ,CAACqB,WAAW,GAAG,UAAU,CAAA;AAEjCrB,QAAQ,CAACsB,SAAS,GAAG;AACnB;AACF;AACA;EACElB,IAAI,EAAEmB,uBAAS,CAACC,MAAAA;AAClB,CAAC;;;;"}
1
+ {"version":3,"file":"Checkbox.js","sources":["../../../src/formik/Checkbox.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport { Field } from \"formik\";\nimport PropTypes from \"prop-types\";\n\nimport CheckboxField from \"components/Checkbox\";\n\nconst Checkbox = forwardRef(({ name, ...rest }, ref) => (\n <Field {...{ name }}>\n {({ field, meta }) => (\n <CheckboxField\n checked={field.value}\n {...{ ...field, ref }}\n error={meta.touched ? meta.error : \"\"}\n {...rest}\n />\n )}\n </Field>\n));\n\nCheckbox.displayName = \"Checkbox\";\n\nCheckbox.propTypes = {\n /**\n * The name of the Checkbox.\n */\n name: PropTypes.string,\n};\n\nexport default Checkbox;\n"],"names":["Checkbox","forwardRef","_ref","ref","name","rest","_objectWithoutProperties","_excluded","React","createElement","Field","_ref2","field","meta","CheckboxField","_extends","checked","value","_objectSpread","error","touched","displayName","propTypes","PropTypes","string"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,QAAQ,gBAAGC,gBAAU,CAAC,UAAAC,IAAA,EAAoBC,GAAG,EAAA;AAAA,EAAA,IAApBC,IAAI,GAAAF,IAAA,CAAJE,IAAI;AAAKC,IAAAA,IAAI,GAAAC,4CAAA,CAAAJ,IAAA,EAAAK,SAAA,CAAA,CAAA;AAAA,EAAA,oBAC1CC,yBAAA,CAAAC,aAAA,CAACC,YAAK,EAAA;AAAON,IAAAA,IAAI,EAAJA,IAAAA;AAAI,GAAA,EACd,UAAAO,KAAA,EAAA;AAAA,IAAA,IAAGC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,IAAI,GAAAF,KAAA,CAAJE,IAAI,CAAA;AAAA,IAAA,oBACbL,yBAAA,CAAAC,aAAA,CAACK,UAAa,EAAAC,4BAAA,CAAA;MACZC,OAAO,EAAEJ,KAAK,CAACK,KAAAA;AAAM,KAAA,EAAAC,aAAA,CAAAA,aAAA,CAAA,EAAA,EACZN,KAAK,CAAA,EAAA,EAAA,EAAA;AAAET,MAAAA,GAAG,EAAHA,GAAAA;AAAG,KAAA,CAAA,EAAA;MACnBgB,KAAK,EAAEN,IAAI,CAACO,OAAO,GAAGP,IAAI,CAACM,KAAK,GAAG,EAAA;AAAG,KAAA,EAClCd,IAAI,CACR,CAAA,CAAA;AAAA,GACH,CACK,CAAA;AAAA,CACT,EAAC;AAEFL,QAAQ,CAACqB,WAAW,GAAG,UAAU,CAAA;AAEjCrB,QAAQ,CAACsB,SAAS,GAAG;AACnB;AACF;AACA;EACElB,IAAI,EAAEmB,uBAAS,CAACC,MAAAA;AAClB,CAAC;;;;"}
@@ -2,29 +2,36 @@
2
2
 
3
3
  var React = require('react');
4
4
  var formik = require('formik');
5
- var index$1 = require('../index-63580e68.js');
6
- var _extends = require('../extends-1b35a664.js');
7
- var index = require('../index-5d74cfeb.js');
8
- var objectWithoutProperties = require('../objectWithoutProperties-2fed2d7d.js');
9
- var toConsumableArray = require('../toConsumableArray-418424fc.js');
10
- var slicedToArray = require('../slicedToArray-732a2048.js');
5
+ var index = require('../index-63580e68.js');
6
+ var _extends = require('@babel/runtime/helpers/extends');
7
+ var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
8
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
9
+ var _regeneratorRuntime = require('@babel/runtime/regenerator');
10
+ var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
11
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
11
12
  var ramda = require('ramda');
12
13
 
13
14
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
14
15
 
15
16
  var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
17
+ var _extends__default = /*#__PURE__*/_interopDefaultLegacy(_extends);
18
+ var _asyncToGenerator__default = /*#__PURE__*/_interopDefaultLegacy(_asyncToGenerator);
19
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefaultLegacy(_objectWithoutProperties);
20
+ var _regeneratorRuntime__default = /*#__PURE__*/_interopDefaultLegacy(_regeneratorRuntime);
21
+ var _toConsumableArray__default = /*#__PURE__*/_interopDefaultLegacy(_toConsumableArray);
22
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
16
23
 
17
24
  var transformObjectToDotNotation = function transformObjectToDotNotation(object) {
18
25
  var prefix = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
19
26
  var result = [];
20
27
  Object.entries(object).forEach(function (_ref) {
21
- var _ref2 = slicedToArray._slicedToArray(_ref, 2),
28
+ var _ref2 = _slicedToArray__default["default"](_ref, 2),
22
29
  key = _ref2[0],
23
30
  value = _ref2[1];
24
31
  if (!value) return;
25
32
  var nextKey = prefix ? "".concat(prefix, ".").concat(key) : key;
26
33
  if (ramda.is(Object, value)) {
27
- result.push.apply(result, toConsumableArray._toConsumableArray(transformObjectToDotNotation(value, nextKey)));
34
+ result.push.apply(result, _toConsumableArray__default["default"](transformObjectToDotNotation(value, nextKey)));
28
35
  } else {
29
36
  result.push(nextKey);
30
37
  }
@@ -69,15 +76,15 @@ var FormWrapper = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
69
76
  setErrors = _useFormikContext.setErrors,
70
77
  setTouched = _useFormikContext.setTouched,
71
78
  submitForm = _useFormikContext.submitForm,
72
- formikBag = objectWithoutProperties._objectWithoutProperties(_useFormikContext, _excluded);
79
+ formikBag = _objectWithoutProperties__default["default"](_useFormikContext, _excluded);
73
80
  var isFormDirty = formikBag.dirty,
74
81
  isSubmitting = formikBag.isSubmitting;
75
82
  var formRefForScrollToErrorField = React.useRef();
76
83
  var formRef = ref || formRefForScrollToErrorField;
77
84
  var handleKeyDown = React.useCallback( /*#__PURE__*/function () {
78
- var _ref2 = index._asyncToGenerator( /*#__PURE__*/index.regenerator.mark(function _callee(event) {
85
+ var _ref2 = _asyncToGenerator__default["default"]( /*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(event) {
79
86
  var isEventFromEditorOrTextarea, errors;
80
- return index.regenerator.wrap(function _callee$(_context) {
87
+ return _regeneratorRuntime__default["default"].wrap(function _callee$(_context) {
81
88
  while (1) switch (_context.prev = _context.next) {
82
89
  case 0:
83
90
  isEventFromEditorOrTextarea = event.target.tagName === "TEXTAREA" || event.target.editor;
@@ -135,7 +142,7 @@ var FormWrapper = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
135
142
  return _ref2.apply(this, arguments);
136
143
  };
137
144
  }(), [validateForm, setErrors, setTouched, isFormDirty, isSubmitting, submitForm]);
138
- return /*#__PURE__*/React__default["default"].createElement(formik.Form, _extends._extends({
145
+ return /*#__PURE__*/React__default["default"].createElement(formik.Form, _extends__default["default"]({
139
146
  className: className,
140
147
  noValidate: true,
141
148
  "data-testid": "neeto-ui-form-wrapper",
@@ -168,27 +175,27 @@ Form.propTypes = {
168
175
  /**
169
176
  * Pass a function to render children or pass the children directly
170
177
  **/
171
- children: index$1.propTypes.exports.node,
178
+ children: index.propTypes.exports.node,
172
179
  /**
173
180
  * Additional classnames to be passed to the form wrapper
174
181
  **/
175
- className: index$1.propTypes.exports.string,
182
+ className: index.propTypes.exports.string,
176
183
  /**
177
184
  * Props to be passed to the Formik component like `initialValues`, `validationSchema`, `onSubmit`
178
185
  * Refer to the Formik docs for more details
179
186
  * https://formik.org/docs/api/formik
180
187
  **/
181
- formikProps: index$1.propTypes.exports.object,
188
+ formikProps: index.propTypes.exports.object,
182
189
  /**
183
190
  * Props to be passed to the form element like `className`.
184
191
  * Refer to the Formik docs for more details
185
192
  * https://formik.org/docs/api/form
186
193
  **/
187
- formProps: index$1.propTypes.exports.object,
194
+ formProps: index.propTypes.exports.object,
188
195
  /**
189
196
  * Props to be passed for scrolling to error field on submit button click.
190
197
  **/
191
- scrollToErrorField: index$1.propTypes.exports.bool
198
+ scrollToErrorField: index.propTypes.exports.bool
192
199
  };
193
200
 
194
201
  module.exports = Form;
@@ -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 { 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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"}