@bigbinary/neetoui 8.3.29 → 8.3.31

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 (305) hide show
  1. package/dist/Accordion.js +94 -76
  2. package/dist/Accordion.js.map +1 -1
  3. package/dist/ActionDropdown.js +29 -32
  4. package/dist/ActionDropdown.js.map +1 -1
  5. package/dist/Alert.js +44 -38
  6. package/dist/Alert.js.map +1 -1
  7. package/dist/Avatar.js +28 -22
  8. package/dist/Avatar.js.map +1 -1
  9. package/dist/Button.js +45 -43
  10. package/dist/Button.js.map +1 -1
  11. package/dist/Callout.js +12 -7
  12. package/dist/Callout.js.map +1 -1
  13. package/dist/Checkbox.js +35 -28
  14. package/dist/Checkbox.js.map +1 -1
  15. package/dist/ColorPicker.js +134 -117
  16. package/dist/ColorPicker.js.map +1 -1
  17. package/dist/DatePicker.js +25 -9
  18. package/dist/DatePicker.js.map +1 -1
  19. package/dist/Dropdown.js +75 -83
  20. package/dist/Dropdown.js.map +1 -1
  21. package/dist/Input.js +82 -70
  22. package/dist/Input.js.map +1 -1
  23. package/dist/Kbd.js +13 -7
  24. package/dist/Kbd.js.map +1 -1
  25. package/dist/Label.js +59 -40
  26. package/dist/Label.js.map +1 -1
  27. package/dist/Modal.js +76 -65
  28. package/dist/Modal.js.map +1 -1
  29. package/dist/MultiEmailInput.js +118 -99
  30. package/dist/MultiEmailInput.js.map +1 -1
  31. package/dist/NoData.js +55 -39
  32. package/dist/NoData.js.map +1 -1
  33. package/dist/Pagination.js +64 -52
  34. package/dist/Pagination.js.map +1 -1
  35. package/dist/Pane.js +66 -56
  36. package/dist/Pane.js.map +1 -1
  37. package/dist/Popover.js +10 -7
  38. package/dist/Popover.js.map +1 -1
  39. package/dist/ProgressBar.js +20 -17
  40. package/dist/ProgressBar.js.map +1 -1
  41. package/dist/Radio.js +50 -40
  42. package/dist/Radio.js.map +1 -1
  43. package/dist/Select.js +111 -90
  44. package/dist/Select.js.map +1 -1
  45. package/dist/Sidebar.js +265 -216
  46. package/dist/Sidebar.js.map +1 -1
  47. package/dist/Slider.js +45 -38
  48. package/dist/Slider.js.map +1 -1
  49. package/dist/Spinner.js +3 -2
  50. package/dist/Spinner.js.map +1 -1
  51. package/dist/Stepper.js +33 -26
  52. package/dist/Stepper.js.map +1 -1
  53. package/dist/Switch.js +56 -46
  54. package/dist/Switch.js.map +1 -1
  55. package/dist/Tab.js +17 -11
  56. package/dist/Tab.js.map +1 -1
  57. package/dist/Table.js +221 -182
  58. package/dist/Table.js.map +1 -1
  59. package/dist/Tag.js +31 -24
  60. package/dist/Tag.js.map +1 -1
  61. package/dist/{Textarea-DlEGZFfG.js → Textarea-D1gsiIxm.js} +66 -56
  62. package/dist/{Textarea-DlEGZFfG.js.map → Textarea-D1gsiIxm.js.map} +1 -1
  63. package/dist/Textarea.js +4 -4
  64. package/dist/TimePicker.js +25 -9
  65. package/dist/TimePicker.js.map +1 -1
  66. package/dist/Toastr.js +46 -37
  67. package/dist/Toastr.js.map +1 -1
  68. package/dist/Tooltip.js +10 -6
  69. package/dist/Tooltip.js.map +1 -1
  70. package/dist/TranslationProvider.js +6 -4
  71. package/dist/TranslationProvider.js.map +1 -1
  72. package/dist/Tree.js +17 -15
  73. package/dist/Tree.js.map +1 -1
  74. package/dist/TreeSelect.js +65 -58
  75. package/dist/TreeSelect.js.map +1 -1
  76. package/dist/Typography.js +7 -3
  77. package/dist/Typography.js.map +1 -1
  78. package/dist/cjs/Accordion.js +94 -76
  79. package/dist/cjs/Accordion.js.map +1 -1
  80. package/dist/cjs/ActionDropdown.js +29 -32
  81. package/dist/cjs/ActionDropdown.js.map +1 -1
  82. package/dist/cjs/Alert.js +43 -37
  83. package/dist/cjs/Alert.js.map +1 -1
  84. package/dist/cjs/Avatar.js +27 -21
  85. package/dist/cjs/Avatar.js.map +1 -1
  86. package/dist/cjs/Button.js +45 -43
  87. package/dist/cjs/Button.js.map +1 -1
  88. package/dist/cjs/Callout.js +11 -6
  89. package/dist/cjs/Callout.js.map +1 -1
  90. package/dist/cjs/Checkbox.js +34 -27
  91. package/dist/cjs/Checkbox.js.map +1 -1
  92. package/dist/cjs/ColorPicker.js +132 -115
  93. package/dist/cjs/ColorPicker.js.map +1 -1
  94. package/dist/cjs/DatePicker.js +25 -9
  95. package/dist/cjs/DatePicker.js.map +1 -1
  96. package/dist/cjs/Dropdown.js +74 -82
  97. package/dist/cjs/Dropdown.js.map +1 -1
  98. package/dist/cjs/Input.js +81 -69
  99. package/dist/cjs/Input.js.map +1 -1
  100. package/dist/cjs/Kbd.js +13 -7
  101. package/dist/cjs/Kbd.js.map +1 -1
  102. package/dist/cjs/Label.js +59 -40
  103. package/dist/cjs/Label.js.map +1 -1
  104. package/dist/cjs/Modal.js +76 -65
  105. package/dist/cjs/Modal.js.map +1 -1
  106. package/dist/cjs/MultiEmailInput.js +117 -98
  107. package/dist/cjs/MultiEmailInput.js.map +1 -1
  108. package/dist/cjs/NoData.js +55 -39
  109. package/dist/cjs/NoData.js.map +1 -1
  110. package/dist/cjs/Pagination.js +63 -51
  111. package/dist/cjs/Pagination.js.map +1 -1
  112. package/dist/cjs/Pane.js +65 -55
  113. package/dist/cjs/Pane.js.map +1 -1
  114. package/dist/cjs/Popover.js +10 -7
  115. package/dist/cjs/Popover.js.map +1 -1
  116. package/dist/cjs/ProgressBar.js +20 -17
  117. package/dist/cjs/ProgressBar.js.map +1 -1
  118. package/dist/cjs/Radio.js +49 -39
  119. package/dist/cjs/Radio.js.map +1 -1
  120. package/dist/cjs/Select.js +110 -89
  121. package/dist/cjs/Select.js.map +1 -1
  122. package/dist/cjs/Sidebar.js +268 -219
  123. package/dist/cjs/Sidebar.js.map +1 -1
  124. package/dist/cjs/Slider.js +45 -38
  125. package/dist/cjs/Slider.js.map +1 -1
  126. package/dist/cjs/Spinner.js +3 -2
  127. package/dist/cjs/Spinner.js.map +1 -1
  128. package/dist/cjs/Stepper.js +33 -26
  129. package/dist/cjs/Stepper.js.map +1 -1
  130. package/dist/cjs/Switch.js +55 -45
  131. package/dist/cjs/Switch.js.map +1 -1
  132. package/dist/cjs/Tab.js +17 -11
  133. package/dist/cjs/Tab.js.map +1 -1
  134. package/dist/cjs/Table.js +224 -185
  135. package/dist/cjs/Table.js.map +1 -1
  136. package/dist/cjs/Tag.js +30 -23
  137. package/dist/cjs/Tag.js.map +1 -1
  138. package/dist/cjs/{Textarea-CiUKmQHr.js → Textarea-BzBZbgdT.js} +65 -55
  139. package/dist/cjs/{Textarea-CiUKmQHr.js.map → Textarea-BzBZbgdT.js.map} +1 -1
  140. package/dist/cjs/Textarea.js +4 -4
  141. package/dist/cjs/TimePicker.js +25 -9
  142. package/dist/cjs/TimePicker.js.map +1 -1
  143. package/dist/cjs/Toastr.js +45 -36
  144. package/dist/cjs/Toastr.js.map +1 -1
  145. package/dist/cjs/Tooltip.js +10 -6
  146. package/dist/cjs/Tooltip.js.map +1 -1
  147. package/dist/cjs/TranslationProvider.js +5 -3
  148. package/dist/cjs/TranslationProvider.js.map +1 -1
  149. package/dist/cjs/Tree.js +17 -15
  150. package/dist/cjs/Tree.js.map +1 -1
  151. package/dist/cjs/TreeSelect.js +66 -59
  152. package/dist/cjs/TreeSelect.js.map +1 -1
  153. package/dist/cjs/Typography.js +7 -3
  154. package/dist/cjs/Typography.js.map +1 -1
  155. package/dist/cjs/constants.js.map +1 -1
  156. package/dist/cjs/formik/ActionBlock.js +16 -9
  157. package/dist/cjs/formik/ActionBlock.js.map +1 -1
  158. package/dist/cjs/formik/BlockNavigation.js +40 -30
  159. package/dist/cjs/formik/BlockNavigation.js.map +1 -1
  160. package/dist/cjs/formik/Button.js +5 -3
  161. package/dist/cjs/formik/Button.js.map +1 -1
  162. package/dist/cjs/formik/Checkbox.js +29 -28
  163. package/dist/cjs/formik/Checkbox.js.map +1 -1
  164. package/dist/cjs/formik/Form.js +53 -47
  165. package/dist/cjs/formik/Form.js.map +1 -1
  166. package/dist/cjs/formik/Input.js +27 -26
  167. package/dist/cjs/formik/Input.js.map +1 -1
  168. package/dist/cjs/formik/MultiEmailInput.js +10 -6
  169. package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
  170. package/dist/cjs/formik/Radio.js +7 -7
  171. package/dist/cjs/formik/Radio.js.map +1 -1
  172. package/dist/cjs/formik/Select.js +15 -10
  173. package/dist/cjs/formik/Select.js.map +1 -1
  174. package/dist/cjs/formik/Slider.js +7 -7
  175. package/dist/cjs/formik/Slider.js.map +1 -1
  176. package/dist/cjs/formik/Switch.js +31 -28
  177. package/dist/cjs/formik/Switch.js.map +1 -1
  178. package/dist/cjs/formik/Textarea.js +28 -27
  179. package/dist/cjs/formik/Textarea.js.map +1 -1
  180. package/dist/cjs/formik/TreeSelect.js +8 -5
  181. package/dist/cjs/formik/TreeSelect.js.map +1 -1
  182. package/dist/cjs/formik/index.js +11 -7
  183. package/dist/cjs/formik/index.js.map +1 -1
  184. package/dist/cjs/{index-BQsO_CAs.js → index-Dv40T5Ly.js} +195 -169
  185. package/dist/cjs/{index-BQsO_CAs.js.map → index-Dv40T5Ly.js.map} +1 -1
  186. package/dist/cjs/{index--BeRLo6L.js → index-h3QcOeWw.js} +12 -14
  187. package/dist/cjs/{index--BeRLo6L.js.map → index-h3QcOeWw.js.map} +1 -1
  188. package/dist/cjs/index.css +1 -2
  189. package/dist/cjs/index.js +26 -10
  190. package/dist/cjs/index.js.map +1 -1
  191. package/dist/cjs/layouts.js +8 -3
  192. package/dist/cjs/layouts.js.map +1 -1
  193. package/dist/cjs/overlayManager.js +1 -2
  194. package/dist/cjs/overlayManager.js.map +1 -1
  195. package/dist/cjs/{react-select-creatable.esm-Bdv9YAMt.js → react-select-creatable.esm-lcdODVBz.js} +449 -243
  196. package/dist/cjs/react-select-creatable.esm-lcdODVBz.js.map +1 -0
  197. package/dist/cjs/useId-DXHUzdxd.js.map +1 -1
  198. package/dist/cjs/{useOverlayManager-CxBh9gVG.js → useOverlayManager-Bj58uLfc.js} +14 -9
  199. package/dist/cjs/{useOverlayManager-CxBh9gVG.js.map → useOverlayManager-Bj58uLfc.js.map} +1 -1
  200. package/dist/cjs/useQueryParams-BrrbBvY_.js +18 -0
  201. package/dist/cjs/{useQueryParams-l5fJJYCR.js.map → useQueryParams-BrrbBvY_.js.map} +1 -1
  202. package/dist/cjs/useRecentlyUsedColors-BcOkiB-v.js +1239 -0
  203. package/dist/cjs/useRecentlyUsedColors-BcOkiB-v.js.map +1 -0
  204. package/dist/cjs/useRestoreScrollPosition-DP8SUs19.js +236 -0
  205. package/dist/cjs/useRestoreScrollPosition-DP8SUs19.js.map +1 -0
  206. package/dist/constants.js.map +1 -1
  207. package/dist/formik/ActionBlock.js +16 -9
  208. package/dist/formik/ActionBlock.js.map +1 -1
  209. package/dist/formik/BlockNavigation.js +41 -31
  210. package/dist/formik/BlockNavigation.js.map +1 -1
  211. package/dist/formik/Button.js +6 -4
  212. package/dist/formik/Button.js.map +1 -1
  213. package/dist/formik/Checkbox.js +30 -29
  214. package/dist/formik/Checkbox.js.map +1 -1
  215. package/dist/formik/Form.js +54 -48
  216. package/dist/formik/Form.js.map +1 -1
  217. package/dist/formik/Input.js +28 -27
  218. package/dist/formik/Input.js.map +1 -1
  219. package/dist/formik/MultiEmailInput.js +11 -7
  220. package/dist/formik/MultiEmailInput.js.map +1 -1
  221. package/dist/formik/Radio.js +7 -7
  222. package/dist/formik/Radio.js.map +1 -1
  223. package/dist/formik/Select.js +17 -12
  224. package/dist/formik/Select.js.map +1 -1
  225. package/dist/formik/Slider.js +8 -8
  226. package/dist/formik/Slider.js.map +1 -1
  227. package/dist/formik/Switch.js +31 -28
  228. package/dist/formik/Switch.js.map +1 -1
  229. package/dist/formik/Textarea.js +29 -28
  230. package/dist/formik/Textarea.js.map +1 -1
  231. package/dist/formik/TreeSelect.js +9 -6
  232. package/dist/formik/TreeSelect.js.map +1 -1
  233. package/dist/formik/index.js +11 -7
  234. package/dist/formik/index.js.map +1 -1
  235. package/dist/{index-Dxaw6gl9.js → index-D6vmwyYl.js} +14 -16
  236. package/dist/index-D6vmwyYl.js.map +1 -0
  237. package/dist/{index-C4Jg7ZKa.js → index-D6yXgUQN.js} +196 -170
  238. package/dist/{index-C4Jg7ZKa.js.map → index-D6yXgUQN.js.map} +1 -1
  239. package/dist/index.css +1 -2
  240. package/dist/index.js +26 -10
  241. package/dist/index.js.map +1 -1
  242. package/dist/layouts.js +8 -3
  243. package/dist/layouts.js.map +1 -1
  244. package/dist/overlayManager.js +1 -2
  245. package/dist/overlayManager.js.map +1 -1
  246. package/dist/{react-select-creatable.esm-Dx_vEnyD.js → react-select-creatable.esm-opiJTCqo.js} +450 -244
  247. package/dist/react-select-creatable.esm-opiJTCqo.js.map +1 -0
  248. package/dist/useId-Jj9hXm-g.js.map +1 -1
  249. package/dist/{useOverlayManager-AZIGhUYS.js → useOverlayManager-BzuBvhPZ.js} +14 -9
  250. package/dist/{useOverlayManager-AZIGhUYS.js.map → useOverlayManager-BzuBvhPZ.js.map} +1 -1
  251. package/dist/useQueryParams-BKsf4FPY.js +16 -0
  252. package/dist/{useQueryParams-b60CHFUx.js.map → useQueryParams-BKsf4FPY.js.map} +1 -1
  253. package/dist/useRecentlyUsedColors-CtvdF-KQ.js +1236 -0
  254. package/dist/useRecentlyUsedColors-CtvdF-KQ.js.map +1 -0
  255. package/dist/useRestoreScrollPosition-BVX-mT5c.js +225 -0
  256. package/dist/useRestoreScrollPosition-BVX-mT5c.js.map +1 -0
  257. package/package.json +42 -48
  258. package/dist/cjs/react-select-creatable.esm-Bdv9YAMt.js.map +0 -1
  259. package/dist/cjs/useQueryParams-l5fJJYCR.js +0 -18
  260. package/dist/cjs/useRecentlyUsedColors-3cKx-eDH.js +0 -1270
  261. package/dist/cjs/useRecentlyUsedColors-3cKx-eDH.js.map +0 -1
  262. package/dist/cjs/useRestoreScrollPosition-PsoENtiB.js +0 -218
  263. package/dist/cjs/useRestoreScrollPosition-PsoENtiB.js.map +0 -1
  264. package/dist/index-Dxaw6gl9.js.map +0 -1
  265. package/dist/react-select-creatable.esm-Dx_vEnyD.js.map +0 -1
  266. package/dist/useQueryParams-b60CHFUx.js +0 -16
  267. package/dist/useRecentlyUsedColors-CqUfqfck.js +0 -1267
  268. package/dist/useRecentlyUsedColors-CqUfqfck.js.map +0 -1
  269. package/dist/useRestoreScrollPosition-C1NSANQW.js +0 -207
  270. package/dist/useRestoreScrollPosition-C1NSANQW.js.map +0 -1
  271. package/src/translations/ar.json +0 -41
  272. package/src/translations/bg.json +0 -41
  273. package/src/translations/ca.json +0 -41
  274. package/src/translations/cs.json +0 -41
  275. package/src/translations/da.json +0 -41
  276. package/src/translations/de.json +0 -41
  277. package/src/translations/en.json +0 -41
  278. package/src/translations/es-MX.json +0 -41
  279. package/src/translations/es.json +0 -41
  280. package/src/translations/et.json +0 -41
  281. package/src/translations/fi.json +0 -41
  282. package/src/translations/fil.json +0 -41
  283. package/src/translations/fr.json +0 -41
  284. package/src/translations/hi.json +0 -41
  285. package/src/translations/hr.json +0 -41
  286. package/src/translations/id.json +0 -41
  287. package/src/translations/index.js +0 -18
  288. package/src/translations/it.json +0 -41
  289. package/src/translations/ja.json +0 -41
  290. package/src/translations/ko.json +0 -41
  291. package/src/translations/nl.json +0 -41
  292. package/src/translations/pl.json +0 -41
  293. package/src/translations/pt-BR.json +0 -41
  294. package/src/translations/pt.json +0 -41
  295. package/src/translations/ro.json +0 -41
  296. package/src/translations/ru.json +0 -41
  297. package/src/translations/sk.json +0 -41
  298. package/src/translations/sl.json +0 -41
  299. package/src/translations/sv.json +0 -41
  300. package/src/translations/th.json +0 -41
  301. package/src/translations/tr.json +0 -41
  302. package/src/translations/uk.json +0 -41
  303. package/src/translations/vi.json +0 -41
  304. package/src/translations/zh-CN.json +0 -41
  305. package/src/translations/zh-TW.json +0 -41
package/dist/cjs/Modal.js CHANGED
@@ -1,16 +1,16 @@
1
1
  'use strict';
2
2
 
3
- var _extends = require('@babel/runtime/helpers/extends');
4
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
5
4
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
6
5
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
7
6
  var React = require('react');
8
7
  var classnames = require('classnames');
9
- var neetoIcons = require('@bigbinary/neeto-icons');
10
- var useOverlayManager = require('./useOverlayManager-CxBh9gVG.js');
8
+ var Close = require('@bigbinary/neeto-icons/Close');
9
+ var useOverlayManager = require('./useOverlayManager-Bj58uLfc.js');
11
10
  var Button = require('./Button.js');
12
11
  require('react-router-dom');
13
12
  require('qs');
13
+ var jsxRuntime = require('react/jsx-runtime');
14
14
  var Typography = require('./Typography.js');
15
15
  require('@babel/runtime/helpers/esm/extends');
16
16
  require('@babel/runtime/helpers/esm/objectWithoutPropertiesLoose');
@@ -21,7 +21,7 @@ require('@bigbinary/neeto-hotkeys');
21
21
  require('./overlayManager.js');
22
22
  require('@babel/runtime/helpers/classCallCheck');
23
23
  require('@babel/runtime/helpers/createClass');
24
- require('./index--BeRLo6L.js');
24
+ require('./index-h3QcOeWw.js');
25
25
  require('@bigbinary/neeto-cist');
26
26
  require('./en-K2ZIAV2F.js');
27
27
  require('@babel/runtime/helpers/toConsumableArray');
@@ -39,20 +39,22 @@ var Body = function Body(_ref) {
39
39
  var children = _ref.children,
40
40
  className = _ref.className,
41
41
  dataCy = _ref.dataCy;
42
- return /*#__PURE__*/React.createElement("div", {
42
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
43
43
  className: classnames("neeto-ui-modal__body", className),
44
- "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-body"
45
- }, children);
44
+ "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-body",
45
+ children: children
46
+ });
46
47
  };
47
48
 
48
49
  var Footer = function Footer(_ref) {
49
50
  var children = _ref.children,
50
51
  className = _ref.className,
51
52
  dataCy = _ref.dataCy;
52
- return /*#__PURE__*/React.createElement("div", {
53
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
53
54
  className: classnames("neeto-ui-modal__footer", className),
54
- "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-footer"
55
- }, children);
55
+ "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-footer",
56
+ children: children
57
+ });
56
58
  };
57
59
 
58
60
  var Header = function Header(_ref) {
@@ -61,16 +63,19 @@ var Header = function Header(_ref) {
61
63
  children = _ref.children,
62
64
  className = _ref.className,
63
65
  dataCy = _ref.dataCy;
64
- return /*#__PURE__*/React.createElement("div", {
66
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
65
67
  className: classnames("neeto-ui-modal__header", className),
66
- "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-header"
67
- }, children, description && /*#__PURE__*/React.createElement("div", {
68
- className: "neeto-ui-modal__header-desc",
69
- "data-cy": "modal-header-desc"
70
- }, /*#__PURE__*/React.createElement(Typography, {
71
- lineHeight: "normal",
72
- style: "body2"
73
- }, description)));
68
+ "data-cy": dataCy !== null && dataCy !== void 0 ? dataCy : "modal-header",
69
+ children: [children, description && /*#__PURE__*/jsxRuntime.jsx("div", {
70
+ className: "neeto-ui-modal__header-desc",
71
+ "data-cy": "modal-header-desc",
72
+ children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
73
+ lineHeight: "normal",
74
+ style: "body2",
75
+ children: description
76
+ })
77
+ })]
78
+ });
74
79
  };
75
80
 
76
81
  var MemoizedChildren = /*#__PURE__*/React.memo(function (_ref) {
@@ -83,6 +88,8 @@ var MemoizedChildren = /*#__PURE__*/React.memo(function (_ref) {
83
88
  MemoizedChildren.displayName = "MemoizedChildren";
84
89
 
85
90
  var _excluded = ["size", "isOpen", "onClose", "children", "finalFocusRef", "initialFocusRef", "className", "closeOnEsc", "closeButton", "backdropClassName", "blockScrollOnMount", "closeOnOutsideClick", "forceRender"];
91
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
92
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
86
93
  var SIZES = {
87
94
  small: "small",
88
95
  medium: "medium",
@@ -136,52 +143,56 @@ var Modal = function Modal(_ref) {
136
143
  handleOverlayClose = _useOverlay.handleOverlayClose,
137
144
  setFocusField = _useOverlay.setFocusField;
138
145
  var isFullScreenModal = size === SIZES.fullScreen;
139
- return /*#__PURE__*/React.createElement(useOverlayManager.Portal, {
140
- rootId: "neeto-ui-portal"
141
- }, /*#__PURE__*/React.createElement(useOverlayManager.CSSTransition, {
142
- unmountOnExit: true,
143
- appear: isOpen,
144
- classNames: "neeto-ui-modal",
145
- "in": isOpen,
146
- timeout: 300,
147
- onEntered: function onEntered() {
148
- return setHasTransitionCompleted(true);
149
- },
150
- onExited: function onExited() {
151
- return setHasTransitionCompleted(false);
152
- }
153
- }, /*#__PURE__*/React.createElement(useOverlayManager.Backdrop, {
154
- "data-testid": "backdrop",
155
- key: "modal-backdrop",
156
- ref: backdropRef,
157
- className: classnames("neeto-ui-modal__backdrop", {
158
- "neeto-ui-modal__backdrop--fullscreen": isFullScreenModal
159
- }, backdropClassName)
160
- }, /*#__PURE__*/React.createElement("div", _extends({
161
- "aria-modal": true,
162
- key: "modal-wrapper",
163
- ref: modalWrapper,
164
- role: "dialog",
165
- className: classnames("neeto-ui-modal__wrapper", _defineProperty({
166
- "neeto-ui-modal__wrapper--small": size === SIZES.small,
167
- "neeto-ui-modal__wrapper--medium": size === SIZES.medium,
168
- "neeto-ui-modal__wrapper--large": size === SIZES.large,
169
- "neeto-ui-modal__wrapper--fullscreen": isFullScreenModal
170
- }, className, className))
171
- }, otherProps), closeButton && /*#__PURE__*/React.createElement(Button, {
172
- "aria-label": "Close",
173
- className: "neeto-ui-modal__close",
174
- "data-cy": "modal-close-button",
175
- "data-testid": "close-button",
176
- icon: neetoIcons.Close,
177
- size: isFullScreenModal ? "large" : "small",
178
- style: isFullScreenModal ? "secondary" : "text",
179
- onClick: handleOverlayClose
180
- }), /*#__PURE__*/React.createElement(MemoizedChildren, {
181
- shouldUpdate: isOpen || forceRender
182
- }, typeof children === "function" ? children({
183
- setFocusField: setFocusField
184
- }) : children)))));
146
+ return /*#__PURE__*/jsxRuntime.jsx(useOverlayManager.Portal, {
147
+ rootId: "neeto-ui-portal",
148
+ children: /*#__PURE__*/jsxRuntime.jsx(useOverlayManager.CSSTransition, {
149
+ unmountOnExit: true,
150
+ appear: isOpen,
151
+ classNames: "neeto-ui-modal",
152
+ "in": isOpen,
153
+ timeout: 300,
154
+ onEntered: function onEntered() {
155
+ return setHasTransitionCompleted(true);
156
+ },
157
+ onExited: function onExited() {
158
+ return setHasTransitionCompleted(false);
159
+ },
160
+ children: /*#__PURE__*/jsxRuntime.jsx(useOverlayManager.Backdrop, {
161
+ "data-testid": "backdrop",
162
+ ref: backdropRef,
163
+ className: classnames("neeto-ui-modal__backdrop", {
164
+ "neeto-ui-modal__backdrop--fullscreen": isFullScreenModal
165
+ }, backdropClassName),
166
+ children: /*#__PURE__*/jsxRuntime.jsxs("div", _objectSpread(_objectSpread({
167
+ "aria-modal": true,
168
+ ref: modalWrapper,
169
+ role: "dialog",
170
+ className: classnames("neeto-ui-modal__wrapper", _defineProperty({
171
+ "neeto-ui-modal__wrapper--small": size === SIZES.small,
172
+ "neeto-ui-modal__wrapper--medium": size === SIZES.medium,
173
+ "neeto-ui-modal__wrapper--large": size === SIZES.large,
174
+ "neeto-ui-modal__wrapper--fullscreen": isFullScreenModal
175
+ }, className, className))
176
+ }, otherProps), {}, {
177
+ children: [closeButton && /*#__PURE__*/jsxRuntime.jsx(Button, {
178
+ "aria-label": "Close",
179
+ className: "neeto-ui-modal__close",
180
+ "data-cy": "modal-close-button",
181
+ "data-testid": "close-button",
182
+ icon: Close,
183
+ size: isFullScreenModal ? "large" : "small",
184
+ style: isFullScreenModal ? "secondary" : "text",
185
+ onClick: handleOverlayClose
186
+ }), /*#__PURE__*/jsxRuntime.jsx(MemoizedChildren, {
187
+ shouldUpdate: isOpen || forceRender,
188
+ children: typeof children === "function" ? children({
189
+ setFocusField: setFocusField
190
+ }) : children
191
+ })]
192
+ }), "modal-wrapper")
193
+ }, "modal-backdrop")
194
+ })
195
+ });
185
196
  };
186
197
  Modal.Header = Header;
187
198
  Modal.Body = Body;
@@ -1 +1 @@
1
- {"version":3,"file":"Modal.js","sources":["../../src/components/Modal/Body.jsx","../../src/components/Modal/Footer.jsx","../../src/components/Modal/Header.jsx","../../src/components/Modal/MemoizedChildren.js","../../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-cy={dataCy ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-cy={dataCy ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-cy={dataCy ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div className=\"neeto-ui-modal__header-desc\" data-cy=\"modal-header-desc\">\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React from \"react\";\n\nconst MemoizedChildren = React.memo(\n ({ children }) => children,\n (_, { shouldUpdate }) => !shouldUpdate\n);\n\nMemoizedChildren.displayName = \"MemoizedChildren\";\n\nexport default MemoizedChildren;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport MemoizedChildren from \"./MemoizedChildren\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n forceRender = false,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n data-testid=\"backdrop\"\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-cy=\"modal-close-button\"\n data-testid=\"close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n <MemoizedChildren shouldUpdate={isOpen || forceRender}>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </MemoizedChildren>\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n /**\n * The modal children will be force re-rendered if the boolean is set to `true`. Ideally the modal won't update\n * if the `isOpen` is `false`. You can use this prop to override that nature.\n */\n forceRender: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataCy","React","createElement","classnames","Footer","Header","_ref$description","description","Typography","lineHeight","style","MemoizedChildren","memo","_","_ref2","shouldUpdate","displayName","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$forceRender","forceRender","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","key","ref","_extends","role","_defineProperty","Button","icon","Close","onClick"],"mappings":"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"}
1
+ {"version":3,"file":"Modal.js","sources":["../../src/components/Modal/Body.jsx","../../src/components/Modal/Footer.jsx","../../src/components/Modal/Header.jsx","../../src/components/Modal/MemoizedChildren.js","../../src/components/Modal/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Body = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__body\", className)}\n data-cy={dataCy ?? \"modal-body\"}\n >\n {children}\n </div>\n);\n\nBody.propTypes = {\n /**\n * To specify className to be applied to the Modal Body.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Body.\n */\n children: PropTypes.node,\n};\n\nexport default Body;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst Footer = ({ children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__footer\", className)}\n data-cy={dataCy ?? \"modal-footer\"}\n >\n {children}\n </div>\n);\n\nFooter.propTypes = {\n /**\n * To specify className to be applied to the Modal Footer.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Footer.\n */\n children: PropTypes.node,\n};\n\nexport default Footer;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Typography from \"../Typography\";\n\nconst Header = ({ description = \"\", children, className, dataCy }) => (\n <div\n className={classnames(\"neeto-ui-modal__header\", className)}\n data-cy={dataCy ?? \"modal-header\"}\n >\n {children}\n {description && (\n <div className=\"neeto-ui-modal__header-desc\" data-cy=\"modal-header-desc\">\n <Typography lineHeight=\"normal\" style=\"body2\">\n {description}\n </Typography>\n </div>\n )}\n </div>\n);\n\nHeader.propTypes = {\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the short description of the Modal.\n */\n description: PropTypes.string,\n /**\n * To specify className to be applied to the Modal Header container.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Modal Header.\n */\n children: PropTypes.node,\n};\n\nexport default Header;\n","import React from \"react\";\n\nconst MemoizedChildren = React.memo(\n ({ children }) => children,\n (_, { shouldUpdate }) => !shouldUpdate\n);\n\nMemoizedChildren.displayName = \"MemoizedChildren\";\n\nexport default MemoizedChildren;\n","import React, { useRef, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Close } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { CSSTransition } from \"react-transition-group\";\n\nimport Backdrop from \"atoms/Backdrop\";\nimport Portal from \"atoms/Portal\";\nimport Button from \"components/Button\";\nimport { useOverlayManager, useOverlay } from \"hooks\";\n\nimport Body from \"./Body\";\nimport Footer from \"./Footer\";\nimport Header from \"./Header\";\nimport MemoizedChildren from \"./MemoizedChildren\";\n\nconst SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n fullScreen: \"fullScreen\",\n};\n\nconst Modal = ({\n size = SIZES.medium,\n isOpen = false,\n onClose = () => {},\n children,\n finalFocusRef,\n initialFocusRef,\n className = \"\",\n closeOnEsc = true,\n closeButton = true,\n backdropClassName = \"\",\n blockScrollOnMount = true,\n closeOnOutsideClick = true,\n forceRender = false,\n ...otherProps\n}) => {\n const [hasTransitionCompleted, setHasTransitionCompleted] = useState(false);\n\n const modalWrapper = useRef(null);\n const backdropRef = useRef(null);\n\n useOverlayManager(modalWrapper, isOpen);\n\n const { handleOverlayClose, setFocusField } = useOverlay({\n isOpen,\n initialFocusRef,\n finalFocusRef,\n overlayWrapper: modalWrapper,\n onClose,\n backdropRef,\n closeOnOutsideClick,\n closeOnEsc,\n blockScrollOnMount,\n hasTransitionCompleted,\n });\n\n const isFullScreenModal = size === SIZES.fullScreen;\n\n return (\n <Portal rootId=\"neeto-ui-portal\">\n <CSSTransition\n unmountOnExit\n appear={isOpen}\n classNames=\"neeto-ui-modal\"\n in={isOpen}\n timeout={300}\n onEntered={() => setHasTransitionCompleted(true)}\n onExited={() => setHasTransitionCompleted(false)}\n >\n <Backdrop\n data-testid=\"backdrop\"\n key=\"modal-backdrop\"\n ref={backdropRef}\n className={classnames(\n \"neeto-ui-modal__backdrop\",\n {\n \"neeto-ui-modal__backdrop--fullscreen\": isFullScreenModal,\n },\n backdropClassName\n )}\n >\n <div\n aria-modal\n key=\"modal-wrapper\"\n ref={modalWrapper}\n role=\"dialog\"\n className={classnames(\"neeto-ui-modal__wrapper\", {\n \"neeto-ui-modal__wrapper--small\": size === SIZES.small,\n \"neeto-ui-modal__wrapper--medium\": size === SIZES.medium,\n \"neeto-ui-modal__wrapper--large\": size === SIZES.large,\n \"neeto-ui-modal__wrapper--fullscreen\": isFullScreenModal,\n [className]: className,\n })}\n {...otherProps}\n >\n {closeButton && (\n <Button\n aria-label=\"Close\"\n className=\"neeto-ui-modal__close\"\n data-cy=\"modal-close-button\"\n data-testid=\"close-button\"\n icon={Close}\n size={isFullScreenModal ? \"large\" : \"small\"}\n style={isFullScreenModal ? \"secondary\" : \"text\"}\n onClick={handleOverlayClose}\n />\n )}\n <MemoizedChildren shouldUpdate={isOpen || forceRender}>\n {typeof children === \"function\"\n ? children({ setFocusField })\n : children}\n </MemoizedChildren>\n </div>\n </Backdrop>\n </CSSTransition>\n </Portal>\n );\n};\n\nModal.propTypes = {\n /**\n * To specify the size of the Modal.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify whether the Modal is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the callback which will be invoked when the Modal is closed.\n */\n onClose: PropTypes.func,\n /**\n * To specify the content to be rendered inside the Modal component.\n */\n children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),\n /**\n * To provide external classNames to the Modal.\n */\n className: PropTypes.string,\n /**\n * To close the Modal on pressing the Esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the close button of the Modal should be displayed or not.\n */\n closeButton: PropTypes.bool,\n /**\n * To add custom classes to backdrop component.\n */\n backdropClassName: PropTypes.string,\n /**\n * To close on clicking outside the Modal content.\n */\n closeOnOutsideClick: PropTypes.bool,\n /*\n * To specify the ref of the element which will receive focus when the Modal is closed.\n * If not specified, the focus will be set to the element which was focused when the Modal was opened.\n * If the Modal was opened by clicking on a button, then the focus will be set to the button.\n * */\n finalFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify the ref of the element which will receive focus when the Modal is opened.\n * If not specified, the focus will be set to the first focusable element inside the Modal.\n * */\n initialFocusRef: PropTypes.object,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-success mb-2\">\n * New\n * </div>\n * To specify whether the scroll should be blocked when the Modal is opened.\n * */\n blockScrollOnMount: PropTypes.bool,\n /**\n * The modal children will be force re-rendered if the boolean is set to `true`. Ideally the modal won't update\n * if the `isOpen` is `false`. You can use this prop to override that nature.\n */\n forceRender: PropTypes.bool,\n};\n\nModal.Header = Header;\nModal.Body = Body;\nModal.Footer = Footer;\n\nexport default Modal;\n"],"names":["Body","_ref","children","className","dataCy","_jsx","classnames","Footer","Header","_ref$description","description","_jsxs","Typography","lineHeight","style","MemoizedChildren","React","memo","_","_ref2","shouldUpdate","displayName","SIZES","small","medium","large","fullScreen","Modal","_ref$size","size","_ref$isOpen","isOpen","_ref$onClose","onClose","finalFocusRef","initialFocusRef","_ref$className","_ref$closeOnEsc","closeOnEsc","_ref$closeButton","closeButton","_ref$backdropClassNam","backdropClassName","_ref$blockScrollOnMou","blockScrollOnMount","_ref$closeOnOutsideCl","closeOnOutsideClick","_ref$forceRender","forceRender","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","_slicedToArray","hasTransitionCompleted","setHasTransitionCompleted","modalWrapper","useRef","backdropRef","useOverlayManager","_useOverlay","useOverlay","overlayWrapper","handleOverlayClose","setFocusField","isFullScreenModal","Portal","rootId","CSSTransition","unmountOnExit","appear","classNames","timeout","onEntered","onExited","Backdrop","ref","_objectSpread","role","_defineProperty","Button","icon","Close","onClick"],"mappings":"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"}
@@ -1,18 +1,18 @@
1
1
  'use strict';
2
2
 
3
3
  var _defineProperty = require('@babel/runtime/helpers/defineProperty');
4
- var _extends = require('@babel/runtime/helpers/extends');
5
4
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
6
5
  var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
7
6
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
8
7
  var React = require('react');
9
8
  var classnames = require('classnames');
10
9
  var ramda = require('ramda');
11
- var reactSelectCreatable_esm = require('./react-select-creatable.esm-Bdv9YAMt.js');
12
- var index = require('./index--BeRLo6L.js');
10
+ var reactSelectCreatable_esm = require('./react-select-creatable.esm-lcdODVBz.js');
11
+ var index = require('./index-h3QcOeWw.js');
13
12
  var _toArray = require('@babel/runtime/helpers/toArray');
14
- var neetoIcons = require('@bigbinary/neeto-icons');
13
+ var Close = require('@bigbinary/neeto-icons/Close');
15
14
  var Tag = require('./Tag.js');
15
+ var jsxRuntime = require('react/jsx-runtime');
16
16
  var neetoCist = require('@bigbinary/neeto-cist');
17
17
  var Label = require('./Label.js');
18
18
  require('@babel/runtime/helpers/esm/extends');
@@ -22,6 +22,7 @@ require('@babel/runtime/helpers/esm/createClass');
22
22
  require('@babel/runtime/helpers/esm/inherits');
23
23
  require('@babel/runtime/helpers/esm/createSuper');
24
24
  require('@babel/runtime/helpers/esm/toConsumableArray');
25
+ require('@babel/runtime/helpers/extends');
25
26
  require('@babel/runtime/helpers/esm/taggedTemplateLiteral');
26
27
  require('@babel/runtime/helpers/esm/objectWithoutProperties');
27
28
  require('@babel/runtime/helpers/esm/slicedToArray');
@@ -42,6 +43,7 @@ require('dayjs/plugin/localeData');
42
43
  require('dayjs/plugin/utc');
43
44
  require('dayjs/plugin/weekday');
44
45
  require('dayjs/plugin/weekOfYear');
46
+ require('@bigbinary/neeto-icons/Help');
45
47
  require('./Button.js');
46
48
  require('react-router-dom');
47
49
  require('./Spinner.js');
@@ -53,8 +55,8 @@ require('./Typography.js');
53
55
 
54
56
  var _excluded$2 = ["children"],
55
57
  _excluded2 = ["children"];
56
- function ownKeys$2(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; }
57
- function _objectSpread$2(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$2(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$2(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
58
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
59
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
58
60
  var STYLES = {
59
61
  border: {
60
62
  "default": "1px solid rgb(var(--neeto-ui-gray-400))",
@@ -90,25 +92,31 @@ var CustomControl = function CustomControl(_ref) {
90
92
  if (isFocused && !isItemDeleted || isItemAdded) scrollToBottom();
91
93
  prevValue.current = value;
92
94
  }, [isFocused, value]);
93
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.Control, _extends({}, props, {
95
+ return /*#__PURE__*/jsxRuntime.jsxs(reactSelectCreatable_esm.components.Control, _objectSpread$2(_objectSpread$2({}, props), {}, {
94
96
  innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, {
95
97
  ref: controlRef
96
- })
97
- }), prefix && /*#__PURE__*/React.createElement("div", {
98
- className: "neeto-ui-email-input__prefix"
99
- }, prefix), children);
98
+ }),
99
+ children: [prefix && /*#__PURE__*/jsxRuntime.jsx("div", {
100
+ className: "neeto-ui-email-input__prefix",
101
+ children: prefix
102
+ }), children]
103
+ }));
100
104
  };
101
105
  var CustomDropdownIndicator = function CustomDropdownIndicator(props) {
102
106
  var suffix = props.selectProps.suffix;
103
- return suffix ? /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.DropdownIndicator, props, /*#__PURE__*/React.createElement("div", {
104
- className: "neeto-ui-email-input__suffix"
105
- }, suffix)) : null;
107
+ return suffix ? /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.components.DropdownIndicator, _objectSpread$2(_objectSpread$2({}, props), {}, {
108
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
109
+ className: "neeto-ui-email-input__suffix",
110
+ children: suffix
111
+ })
112
+ })) : null;
106
113
  };
107
114
  var MultiValueRemove = function MultiValueRemove(props) {
108
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.MultiValueRemove, _extends({}, props, {
109
- innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "".concat(index.hyphenize(props.data.label), "-remove-icon")))
110
- }), /*#__PURE__*/React.createElement(neetoIcons.Close, {
111
- size: 16
115
+ return /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.components.MultiValueRemove, _objectSpread$2(_objectSpread$2({}, props), {}, {
116
+ innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "".concat(index.hyphenize(props.data.label), "-remove-icon"))),
117
+ children: /*#__PURE__*/jsxRuntime.jsx(Close, {
118
+ size: 16
119
+ })
112
120
  }));
113
121
  };
114
122
  var CustomValueContainer = function CustomValueContainer(_ref2) {
@@ -124,23 +132,25 @@ var CustomValueContainer = function CustomValueContainer(_ref2) {
124
132
  firstChild = _children[0],
125
133
  rest = _children.slice(1);
126
134
  var shouldCollapse = !isAlwaysExpanded && !isFocused && value.length > visibleEmailsCount;
127
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.ValueContainer, _extends({}, props, {
128
- innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "multi-email-input-container"))
129
- }), shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild, shouldCollapse && /*#__PURE__*/React.createElement(Tag, {
130
- label: "".concat(value.length - visibleEmailsCount, " more"),
131
- style: "secondary"
132
- }), rest);
135
+ return /*#__PURE__*/jsxRuntime.jsxs(reactSelectCreatable_esm.components.ValueContainer, _objectSpread$2(_objectSpread$2({}, props), {}, {
136
+ innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "multi-email-input-container")),
137
+ children: [shouldCollapse ? firstChild.slice(0, visibleEmailsCount) : firstChild, shouldCollapse && /*#__PURE__*/jsxRuntime.jsx(Tag, {
138
+ label: "".concat(value.length - visibleEmailsCount, " more"),
139
+ style: "secondary"
140
+ }), rest]
141
+ }));
133
142
  };
134
143
  var CustomClearIndicator = function CustomClearIndicator(props) {
135
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.ClearIndicator, _extends({}, props, {
136
- innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "clear-all-button"))
137
- }), /*#__PURE__*/React.createElement(neetoIcons.Close, {
138
- className: "cursor-pointer",
139
- size: 16
144
+ return /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.components.ClearIndicator, _objectSpread$2(_objectSpread$2({}, props), {}, {
145
+ innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "clear-all-button")),
146
+ children: /*#__PURE__*/jsxRuntime.jsx(Close, {
147
+ className: "cursor-pointer",
148
+ size: 16
149
+ })
140
150
  }));
141
151
  };
142
152
  var SelectContainer = function SelectContainer(props) {
143
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.SelectContainer, _extends({}, props, {
153
+ return /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.components.SelectContainer, _objectSpread$2(_objectSpread$2({}, props), {}, {
144
154
  innerProps: _objectSpread$2(_objectSpread$2({}, props.innerProps), {}, _defineProperty({}, "data-cy", "multi-email-select-container"))
145
155
  }));
146
156
  };
@@ -149,12 +159,12 @@ var Input = function Input(props) {
149
159
  var handleEmailChange = props.selectProps.handleEmailChange;
150
160
  var text = event.clipboardData.getData("Text");
151
161
  if (!EMAIL_REGEX.test(text)) return;
152
- event === null || event === void 0 || event.preventDefault();
162
+ event === null || event === void 0 ? void 0 : event.preventDefault();
153
163
  setTimeout(function () {
154
164
  return handleEmailChange(text);
155
165
  });
156
166
  };
157
- return /*#__PURE__*/React.createElement(reactSelectCreatable_esm.components.Input, _extends({}, props, {
167
+ return /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.components.Input, _objectSpread$2(_objectSpread$2({}, props), {}, {
158
168
  "data-cy": "email-select-input-field",
159
169
  onPaste: handlePaste
160
170
  }));
@@ -183,8 +193,8 @@ var CUSTOM_COMPONENTS = {
183
193
  };
184
194
 
185
195
  var _excluded$1 = ["label", "value"];
186
- function ownKeys$1(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; }
187
- function _objectSpread$1(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys$1(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys$1(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
196
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
197
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
188
198
  var getEmailsMap = function getEmailsMap() {
189
199
  var inputEmails = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
190
200
  var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
@@ -253,8 +263,8 @@ var renderDuplicateEmailsWarningMessage = function renderDuplicateEmailsWarningM
253
263
  };
254
264
 
255
265
  var _excluded = ["label", "placeholder", "helpText", "value", "onChange", "error", "onBlur", "filterInvalidEmails", "counter", "disabled", "maxHeight", "required", "labelProps", "visibleEmailsCount", "isCreateable", "isAlwaysExpanded"];
256
- 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; }
257
- 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(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; }
266
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
267
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
258
268
  var MultiEmailInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
259
269
  var _ref$label = _ref.label,
260
270
  label = _ref$label === void 0 ? "Email(s)" : _ref$label,
@@ -353,7 +363,7 @@ var MultiEmailInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
353
363
  duplicates = _pruneDuplicates2.duplicates;
354
364
  onChange(uniqueEmails);
355
365
  setDuplicateEmails(duplicates);
356
- otherProps === null || otherProps === void 0 || (_otherProps$onCreateO = otherProps.onCreateOption) === null || _otherProps$onCreateO === void 0 || _otherProps$onCreateO.call(otherProps, input);
366
+ otherProps === null || otherProps === void 0 ? void 0 : (_otherProps$onCreateO = otherProps.onCreateOption) === null || _otherProps$onCreateO === void 0 ? void 0 : _otherProps$onCreateO.call(otherProps, input);
357
367
  };
358
368
  var handleBlur = function handleBlur(event) {
359
369
  inputValue ? handleEmailChange(inputValue) : onBlur(event);
@@ -377,68 +387,77 @@ var MultiEmailInput = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
377
387
  };
378
388
  }
379
389
  var isFilterEmailsLinkVisible = !!filterInvalidEmails && value.length > getValidEmailsCount(value);
380
- return /*#__PURE__*/React.createElement("div", {
390
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
381
391
  className: "neeto-ui-input__wrapper neeto-ui-email-input__wrapper",
382
- "data-cy": "email-input-wrapper"
383
- }, /*#__PURE__*/React.createElement("div", {
384
- className: "neeto-ui-email-input__label-wrapper"
385
- }, label && /*#__PURE__*/React.createElement(Label, _extends({
386
- required: required,
387
- className: "neeto-ui-email-input__label",
388
- "data-cy": "".concat(index.hyphenize(label), "-input-label")
389
- }, labelProps), label), isCounterVisible && /*#__PURE__*/React.createElement("p", {
390
- className: "neeto-ui-email-input__counter",
391
- "data-cy": "".concat(index.hyphenize(label), "-email-counter")
392
- }, getValidEmailsCount(value), " ", counter.label ? counter.label : renderDefaultText(getValidEmailsCount(value)))), /*#__PURE__*/React.createElement(reactSelectCreatable_esm.CreatableSelect, _extends({
393
- isMulti: true,
394
- required: true,
395
- classNamePrefix: "neeto-ui-react-select",
396
- components: CUSTOM_COMPONENTS,
397
- isDisabled: disabled,
398
- menuIsOpen: isMenuOpen,
399
- className: classnames("neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select", {
400
- "neeto-ui-react-select__container--error": !!error
401
- }),
402
- styles: _objectSpread(_objectSpread({}, CUSTOM_STYLES), {}, {
403
- control: ramda.mergeLeft({
404
- maxHeight: "".concat(maxHeight, "px"),
405
- overflowY: "auto"
406
- })
407
- }),
408
- onBlur: handleBlur,
409
- onFocus: function onFocus() {
410
- return setIsFocused(true);
411
- },
412
- onKeyDown: handleKeyDown,
413
- onInputChange: function onInputChange(inputValue) {
414
- setIsMenuOpen(Boolean(inputValue));
415
- setInputValue(inputValue);
416
- }
417
- }, _objectSpread(_objectSpread(_objectSpread({
418
- handleEmailChange: handleEmailChange,
419
- inputValue: inputValue,
420
- isAlwaysExpanded: isAlwaysExpanded,
421
- isFocused: isFocused,
422
- onChange: onChange,
423
- placeholder: placeholder,
424
- ref: ref,
425
- value: value,
426
- visibleEmailsCount: visibleEmailsCount
427
- }, !isOptionsPresent && {
428
- menuIsOpen: false
429
- }), otherProps), overrideProps))), !!error && /*#__PURE__*/React.createElement("p", {
430
- className: "neeto-ui-input__error",
431
- "data-cy": "".concat(index.hyphenize(label), "-input-error")
432
- }, error, isFilterEmailsLinkVisible && /*#__PURE__*/React.createElement("span", {
433
- className: "neeto-ui-font-semibold cursor-pointer",
434
- onClick: handleFilterEmails
435
- }, "\xA0", filterInvalidEmails.label ? filterInvalidEmails.label : "Click here to remove invalid emails.")), !!helpText && /*#__PURE__*/React.createElement("p", {
436
- className: "neeto-ui-input__help-text",
437
- "data-cy": "".concat(index.hyphenize(label), "-input-help")
438
- }, helpText), !!duplicateEmails.length && /*#__PURE__*/React.createElement("p", {
439
- className: "neeto-ui-input__error",
440
- "data-cy": "".concat(index.hyphenize(label), "-duplicate-emails-warning")
441
- }, renderDuplicateEmailsWarningMessage(duplicateEmails)));
392
+ "data-cy": "email-input-wrapper",
393
+ children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
394
+ className: "neeto-ui-email-input__label-wrapper",
395
+ children: [label && /*#__PURE__*/jsxRuntime.jsx(Label, _objectSpread(_objectSpread({
396
+ required: required,
397
+ className: "neeto-ui-email-input__label",
398
+ "data-cy": "".concat(index.hyphenize(label), "-input-label")
399
+ }, labelProps), {}, {
400
+ children: label
401
+ })), isCounterVisible && /*#__PURE__*/jsxRuntime.jsxs("p", {
402
+ className: "neeto-ui-email-input__counter",
403
+ "data-cy": "".concat(index.hyphenize(label), "-email-counter"),
404
+ children: [getValidEmailsCount(value), " ", counter.label ? counter.label : renderDefaultText(getValidEmailsCount(value))]
405
+ })]
406
+ }), /*#__PURE__*/jsxRuntime.jsx(reactSelectCreatable_esm.CreatableSelect, _objectSpread({
407
+ isMulti: true,
408
+ required: true,
409
+ classNamePrefix: "neeto-ui-react-select",
410
+ components: CUSTOM_COMPONENTS,
411
+ isDisabled: disabled,
412
+ menuIsOpen: isMenuOpen,
413
+ className: classnames("neeto-ui-react-select__container neeto-ui-react-select__container--medium neeto-ui-email-input__select", {
414
+ "neeto-ui-react-select__container--error": !!error
415
+ }),
416
+ styles: _objectSpread(_objectSpread({}, CUSTOM_STYLES), {}, {
417
+ control: ramda.mergeLeft({
418
+ maxHeight: "".concat(maxHeight, "px"),
419
+ overflowY: "auto"
420
+ })
421
+ }),
422
+ onBlur: handleBlur,
423
+ onFocus: function onFocus() {
424
+ return setIsFocused(true);
425
+ },
426
+ onKeyDown: handleKeyDown,
427
+ onInputChange: function onInputChange(inputValue) {
428
+ setIsMenuOpen(Boolean(inputValue));
429
+ setInputValue(inputValue);
430
+ }
431
+ }, _objectSpread(_objectSpread(_objectSpread({
432
+ handleEmailChange: handleEmailChange,
433
+ inputValue: inputValue,
434
+ isAlwaysExpanded: isAlwaysExpanded,
435
+ isFocused: isFocused,
436
+ onChange: onChange,
437
+ placeholder: placeholder,
438
+ ref: ref,
439
+ value: value,
440
+ visibleEmailsCount: visibleEmailsCount
441
+ }, !isOptionsPresent && {
442
+ menuIsOpen: false
443
+ }), otherProps), overrideProps))), !!error && /*#__PURE__*/jsxRuntime.jsxs("p", {
444
+ className: "neeto-ui-input__error",
445
+ "data-cy": "".concat(index.hyphenize(label), "-input-error"),
446
+ children: [error, isFilterEmailsLinkVisible && /*#__PURE__*/jsxRuntime.jsxs("span", {
447
+ className: "neeto-ui-font-semibold cursor-pointer",
448
+ onClick: handleFilterEmails,
449
+ children: ["\xA0", filterInvalidEmails.label ? filterInvalidEmails.label : "Click here to remove invalid emails."]
450
+ })]
451
+ }), !!helpText && /*#__PURE__*/jsxRuntime.jsx("p", {
452
+ className: "neeto-ui-input__help-text",
453
+ "data-cy": "".concat(index.hyphenize(label), "-input-help"),
454
+ children: helpText
455
+ }), !!duplicateEmails.length && /*#__PURE__*/jsxRuntime.jsx("p", {
456
+ className: "neeto-ui-input__error",
457
+ "data-cy": "".concat(index.hyphenize(label), "-duplicate-emails-warning"),
458
+ children: renderDuplicateEmailsWarningMessage(duplicateEmails)
459
+ })]
460
+ });
442
461
  });
443
462
  MultiEmailInput.displayName = "MultiEmailInput";
444
463