@bigbinary/neetoui 8.3.76 → 8.3.77

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 (147) hide show
  1. package/README.md +0 -1
  2. package/dist/Alert.js +1 -1
  3. package/dist/DatePicker.js +2 -2
  4. package/dist/Modal.js +1 -1
  5. package/dist/MultiEmailInput.js +1 -1
  6. package/dist/NoData.js +1 -1
  7. package/dist/Pane.js +1 -1
  8. package/dist/{Portal-BaWO-CyE.js → Portal-qx5uRFGk.js} +2 -2
  9. package/dist/{Portal-BaWO-CyE.js.map → Portal-qx5uRFGk.js.map} +1 -1
  10. package/dist/Select.js +1 -1
  11. package/dist/Slider.js +1 -1
  12. package/dist/Table.js +2 -2
  13. package/dist/TimePicker.js +2 -2
  14. package/dist/cjs/Accordion.js +24 -15
  15. package/dist/cjs/Accordion.js.map +1 -1
  16. package/dist/cjs/ActionDropdown.js +12 -6
  17. package/dist/cjs/ActionDropdown.js.map +1 -1
  18. package/dist/cjs/Alert.js +11 -6
  19. package/dist/cjs/Alert.js.map +1 -1
  20. package/dist/cjs/Avatar.js +17 -9
  21. package/dist/cjs/Avatar.js.map +1 -1
  22. package/dist/cjs/Button.js +15 -8
  23. package/dist/cjs/Button.js.map +1 -1
  24. package/dist/cjs/Callout.js +9 -3
  25. package/dist/cjs/Callout.js.map +1 -1
  26. package/dist/cjs/Checkbox.js +12 -6
  27. package/dist/cjs/Checkbox.js.map +1 -1
  28. package/dist/cjs/ColorPicker.js +29 -18
  29. package/dist/cjs/ColorPicker.js.map +1 -1
  30. package/dist/cjs/DatePicker.js +8 -8
  31. package/dist/cjs/Dropdown.js +34 -25
  32. package/dist/cjs/Dropdown.js.map +1 -1
  33. package/dist/cjs/Input.js +18 -11
  34. package/dist/cjs/Input.js.map +1 -1
  35. package/dist/cjs/Kbd.js +11 -5
  36. package/dist/cjs/Kbd.js.map +1 -1
  37. package/dist/cjs/Label.js +19 -12
  38. package/dist/cjs/Label.js.map +1 -1
  39. package/dist/cjs/Modal.js +23 -14
  40. package/dist/cjs/Modal.js.map +1 -1
  41. package/dist/cjs/MultiEmailInput.js +36 -26
  42. package/dist/cjs/MultiEmailInput.js.map +1 -1
  43. package/dist/cjs/NoData.js +11 -5
  44. package/dist/cjs/NoData.js.map +1 -1
  45. package/dist/cjs/Pagination.js +19 -12
  46. package/dist/cjs/Pagination.js.map +1 -1
  47. package/dist/cjs/Pane.js +22 -14
  48. package/dist/cjs/Pane.js.map +1 -1
  49. package/dist/cjs/Popover.js +12 -6
  50. package/dist/cjs/Popover.js.map +1 -1
  51. package/dist/cjs/{Portal-D3CvlJ0g.js → Portal-nCvANFeL.js} +30 -19
  52. package/dist/cjs/{Portal-D3CvlJ0g.js.map → Portal-nCvANFeL.js.map} +1 -1
  53. package/dist/cjs/ProgressBar.js +7 -3
  54. package/dist/cjs/ProgressBar.js.map +1 -1
  55. package/dist/cjs/Radio.js +18 -11
  56. package/dist/cjs/Radio.js.map +1 -1
  57. package/dist/cjs/Select.js +44 -31
  58. package/dist/cjs/Select.js.map +1 -1
  59. package/dist/cjs/Sidebar.js +34 -21
  60. package/dist/cjs/Sidebar.js.map +1 -1
  61. package/dist/cjs/Slider.js +14 -7
  62. package/dist/cjs/Slider.js.map +1 -1
  63. package/dist/cjs/Spinner.js +5 -1
  64. package/dist/cjs/Spinner.js.map +1 -1
  65. package/dist/cjs/Stepper.js +5 -1
  66. package/dist/cjs/Stepper.js.map +1 -1
  67. package/dist/cjs/Switch.js +18 -10
  68. package/dist/cjs/Switch.js.map +1 -1
  69. package/dist/cjs/Tab.js +14 -7
  70. package/dist/cjs/Tab.js.map +1 -1
  71. package/dist/cjs/Table.js +89 -71
  72. package/dist/cjs/Table.js.map +1 -1
  73. package/dist/cjs/Tag.js +12 -5
  74. package/dist/cjs/Tag.js.map +1 -1
  75. package/dist/cjs/{Textarea-BOi6PJBI.js → Textarea-DxdJutA8.js} +17 -9
  76. package/dist/cjs/{Textarea-BOi6PJBI.js.map → Textarea-DxdJutA8.js.map} +1 -1
  77. package/dist/cjs/Textarea.js +4 -4
  78. package/dist/cjs/TimePicker.js +8 -8
  79. package/dist/cjs/Toastr.js +29 -17
  80. package/dist/cjs/Toastr.js.map +1 -1
  81. package/dist/cjs/Tooltip.js +15 -7
  82. package/dist/cjs/Tooltip.js.map +1 -1
  83. package/dist/cjs/TranslationProvider.js +6 -2
  84. package/dist/cjs/TranslationProvider.js.map +1 -1
  85. package/dist/cjs/Tree.js +19 -9
  86. package/dist/cjs/Tree.js.map +1 -1
  87. package/dist/cjs/TreeSelect.js +20 -11
  88. package/dist/cjs/TreeSelect.js.map +1 -1
  89. package/dist/cjs/Typography.js +11 -4
  90. package/dist/cjs/Typography.js.map +1 -1
  91. package/dist/cjs/constants.js +17 -7
  92. package/dist/cjs/constants.js.map +1 -1
  93. package/dist/cjs/formik/ActionBlock.js +10 -5
  94. package/dist/cjs/formik/ActionBlock.js.map +1 -1
  95. package/dist/cjs/formik/BlockNavigation.js +13 -7
  96. package/dist/cjs/formik/BlockNavigation.js.map +1 -1
  97. package/dist/cjs/formik/Button.js +9 -4
  98. package/dist/cjs/formik/Button.js.map +1 -1
  99. package/dist/cjs/formik/Checkbox.js +10 -5
  100. package/dist/cjs/formik/Checkbox.js.map +1 -1
  101. package/dist/cjs/formik/Form.js +17 -8
  102. package/dist/cjs/formik/Form.js.map +1 -1
  103. package/dist/cjs/formik/Input.js +10 -5
  104. package/dist/cjs/formik/Input.js.map +1 -1
  105. package/dist/cjs/formik/MultiEmailInput.js +13 -7
  106. package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
  107. package/dist/cjs/formik/Radio.js +12 -6
  108. package/dist/cjs/formik/Radio.js.map +1 -1
  109. package/dist/cjs/formik/Select.js +15 -8
  110. package/dist/cjs/formik/Select.js.map +1 -1
  111. package/dist/cjs/formik/Slider.js +12 -6
  112. package/dist/cjs/formik/Slider.js.map +1 -1
  113. package/dist/cjs/formik/Switch.js +10 -5
  114. package/dist/cjs/formik/Switch.js.map +1 -1
  115. package/dist/cjs/formik/Textarea.js +11 -6
  116. package/dist/cjs/formik/Textarea.js.map +1 -1
  117. package/dist/cjs/formik/TreeSelect.js +12 -6
  118. package/dist/cjs/formik/TreeSelect.js.map +1 -1
  119. package/dist/cjs/formik/index.js +6 -6
  120. package/dist/cjs/{index-DPPfjE9r.js → index-BIFpyYcO.js} +69 -45
  121. package/dist/cjs/{index-DPPfjE9r.js.map → index-BIFpyYcO.js.map} +1 -1
  122. package/dist/cjs/{index-D0rucYPS.js → index-BgzkP01c.js} +32 -19
  123. package/dist/cjs/index-BgzkP01c.js.map +1 -0
  124. package/dist/cjs/{index-DApAqkOe.js → index-CNZKW5X0.js} +13 -6
  125. package/dist/cjs/{index-DApAqkOe.js.map → index-CNZKW5X0.js.map} +1 -1
  126. package/dist/cjs/index.js +9 -9
  127. package/dist/cjs/layouts.js +3 -3
  128. package/dist/cjs/overlayManager.js +7 -2
  129. package/dist/cjs/overlayManager.js.map +1 -1
  130. package/dist/cjs/{react-select-creatable.esm-lcdODVBz.js → react-select-creatable.esm-CYabSQvs.js} +109 -94
  131. package/dist/cjs/{react-select-creatable.esm-lcdODVBz.js.map → react-select-creatable.esm-CYabSQvs.js.map} +1 -1
  132. package/dist/cjs/{usePrefersReducedMotion-DIgi-Aj7.js → usePrefersReducedMotion-D2Ck84HM.js} +6 -2
  133. package/dist/cjs/{usePrefersReducedMotion-DIgi-Aj7.js.map → usePrefersReducedMotion-D2Ck84HM.js.map} +1 -1
  134. package/dist/cjs/{useQueryParams-BrrbBvY_.js → useQueryParams-BT5EJ1-8.js} +6 -2
  135. package/dist/cjs/{useQueryParams-BrrbBvY_.js.map → useQueryParams-BT5EJ1-8.js.map} +1 -1
  136. package/dist/cjs/{useRecentlyUsedColors-Bo6lorBa.js → useRecentlyUsedColors-P_o42kpC.js} +2 -2
  137. package/dist/cjs/{useRecentlyUsedColors-Bo6lorBa.js.map → useRecentlyUsedColors-P_o42kpC.js.map} +1 -1
  138. package/dist/formik/BlockNavigation.js +1 -1
  139. package/dist/formik/MultiEmailInput.js +1 -1
  140. package/dist/formik/Select.js +2 -2
  141. package/dist/formik/index.js +2 -2
  142. package/dist/index.js +2 -2
  143. package/dist/{react-select-creatable.esm-opiJTCqo.js → react-select-creatable.esm-C-18UhvM.js} +2 -2
  144. package/dist/{react-select-creatable.esm-opiJTCqo.js.map → react-select-creatable.esm-C-18UhvM.js.map} +1 -1
  145. package/dist/src/translations/hu.json +8 -8
  146. package/package.json +1 -1
  147. package/dist/cjs/index-D0rucYPS.js.map +0 -1
@@ -13,7 +13,7 @@ var useId = require('./useId-DXHUzdxd.js');
13
13
  var reactRouterDom = require('react-router-dom');
14
14
  require('@bigbinary/neeto-hotkeys');
15
15
  require('./overlayManager.js');
16
- var index = require('./index-DApAqkOe.js');
16
+ var index = require('./index-CNZKW5X0.js');
17
17
  require('qs');
18
18
  var jsxRuntime = require('react/jsx-runtime');
19
19
  var neetoCist = require('@bigbinary/neeto-cist');
@@ -22,7 +22,7 @@ require('./Spinner.js');
22
22
  require('tippy.js');
23
23
  require('@babel/runtime/helpers/classCallCheck');
24
24
  require('@babel/runtime/helpers/createClass');
25
- require('./index-D0rucYPS.js');
25
+ require('./index-BgzkP01c.js');
26
26
  require('@babel/runtime/helpers/toConsumableArray');
27
27
  require('dayjs');
28
28
  require('dayjs/plugin/localeData');
@@ -30,11 +30,20 @@ require('dayjs/plugin/utc');
30
30
  require('dayjs/plugin/weekday');
31
31
  require('dayjs/plugin/weekOfYear');
32
32
  require('i18next');
33
- require('./usePrefersReducedMotion-DIgi-Aj7.js');
33
+ require('./usePrefersReducedMotion-D2Ck84HM.js');
34
34
  require('./en-B1i-pQJm.js');
35
35
 
36
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
37
+
38
+ var _defineProperty__default = /*#__PURE__*/_interopDefault(_defineProperty);
39
+ var _slicedToArray__default = /*#__PURE__*/_interopDefault(_slicedToArray);
40
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefault(_objectWithoutProperties);
41
+ var Tippy__default = /*#__PURE__*/_interopDefault(Tippy);
42
+ var classnames__default = /*#__PURE__*/_interopDefault(classnames);
43
+ var Down__default = /*#__PURE__*/_interopDefault(Down);
44
+
36
45
  function ownKeys$4(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; }
37
- function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
46
+ function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
38
47
  var Divider = function Divider(props) {
39
48
  return /*#__PURE__*/jsxRuntime.jsx("li", _objectSpread$4({
40
49
  "aria-orientation": "horizontal",
@@ -45,12 +54,12 @@ var Divider = function Divider(props) {
45
54
 
46
55
  var _excluded$3 = ["children", "className"];
47
56
  function ownKeys$3(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; }
48
- function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
57
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
49
58
  var itemClassName = "neeto-ui-dropdown__popup-menu-item-btn";
50
59
  var Menu = function Menu(_ref) {
51
60
  var children = _ref.children,
52
61
  className = _ref.className,
53
- otherProps = _objectWithoutProperties(_ref, _excluded$3);
62
+ otherProps = _objectWithoutProperties__default.default(_ref, _excluded$3);
54
63
  var activeIndexRef = React.useRef(-1);
55
64
  var menuRef = React.useRef(null);
56
65
  var onKeyDown = function onKeyDown(event) {
@@ -86,7 +95,7 @@ var Menu = function Menu(_ref) {
86
95
  }, [menuRef]);
87
96
  return /*#__PURE__*/jsxRuntime.jsx("ul", _objectSpread$3(_objectSpread$3({
88
97
  onKeyDown: onKeyDown,
89
- className: classnames("neeto-ui-dropdown__popup-menu", className),
98
+ className: classnames__default.default("neeto-ui-dropdown__popup-menu", className),
90
99
  ref: menuRef,
91
100
  tabIndex: 0
92
101
  }, otherProps), {}, {
@@ -96,15 +105,15 @@ var Menu = function Menu(_ref) {
96
105
 
97
106
  var _excluded$2 = ["children", "className", "tooltipProps"];
98
107
  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; }
99
- 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; }
108
+ 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__default.default(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; }
100
109
  var MenuItem = function MenuItem(_ref) {
101
110
  var children = _ref.children,
102
111
  className = _ref.className,
103
112
  tooltipProps = _ref.tooltipProps,
104
- otherProps = _objectWithoutProperties(_ref, _excluded$2);
113
+ otherProps = _objectWithoutProperties__default.default(_ref, _excluded$2);
105
114
  var renderMenuItem = function renderMenuItem() {
106
115
  return /*#__PURE__*/jsxRuntime.jsx("li", _objectSpread$2(_objectSpread$2({
107
- className: classnames("neeto-ui-dropdown__popup-menu-item", className),
116
+ className: classnames__default.default("neeto-ui-dropdown__popup-menu-item", className),
108
117
  role: "menuitem"
109
118
  }, otherProps), {}, {
110
119
  children: children
@@ -120,7 +129,7 @@ var MenuItem = function MenuItem(_ref) {
120
129
 
121
130
  var _excluded$1 = ["children", "className", "isActive", "isDisabled", "style", "prefix", "suffix", "type", "to", "href", "tooltipProps"];
122
131
  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; }
123
- 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; }
132
+ 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__default.default(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; }
124
133
  var ITEM_BTN_STYLES = {
125
134
  "default": "default",
126
135
  danger: "danger"
@@ -143,7 +152,7 @@ var MenuItemButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
143
152
  _ref$href = _ref.href,
144
153
  href = _ref$href === void 0 ? "" : _ref$href,
145
154
  tooltipProps = _ref.tooltipProps,
146
- otherProps = _objectWithoutProperties(_ref, _excluded$1);
155
+ otherProps = _objectWithoutProperties__default.default(_ref, _excluded$1);
147
156
  var Parent, elementSpecificProps;
148
157
  if (to) {
149
158
  Parent = reactRouterDom.Link;
@@ -165,7 +174,7 @@ var MenuItemButton = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
165
174
  tooltipProps: tooltipProps,
166
175
  children: /*#__PURE__*/jsxRuntime.jsxs(Parent, _objectSpread$1(_objectSpread$1({
167
176
  disabled: isDisabled,
168
- className: classnames("neeto-ui-dropdown__popup-menu-item-btn", className, {
177
+ className: classnames__default.default("neeto-ui-dropdown__popup-menu-item-btn", className, {
169
178
  "neeto-ui-dropdown__popup-menu-item-btn--active": isActive,
170
179
  "neeto-ui-dropdown__popup-menu-item-btn--disabled": isDisabled,
171
180
  "neeto-ui-dropdown__popup-menu-item-btn--style-danger": style === ITEM_BTN_STYLES.danger
@@ -199,7 +208,7 @@ var _excluded = ["style", "size"],
199
208
  _excluded2 = ["icon", "label", "isOpen", "onClose", "dropdownProps", "position", "placement", "children", "className", "buttonStyle", "buttonSize", "buttonProps", "customTarget", "disabled", "closeOnEsc", "closeOnSelect", "closeOnOutsideClick", "dropdownModifiers", "trigger", "strategy", "onClick"],
200
209
  _excluded3 = ["classNames", "className"];
201
210
  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; }
202
- 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; }
211
+ 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__default.default(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; }
203
212
  var BTN_STYLES = {
204
213
  primary: "primary"};
205
214
  var BTN_SIZES = {
@@ -257,7 +266,7 @@ var Dropdown = function Dropdown(_ref2) {
257
266
  _ref2$buttonProps2 = _ref2$buttonProps === void 0 ? {} : _ref2$buttonProps,
258
267
  style = _ref2$buttonProps2.style,
259
268
  size = _ref2$buttonProps2.size,
260
- buttonProps = _objectWithoutProperties(_ref2$buttonProps2, _excluded),
269
+ buttonProps = _objectWithoutProperties__default.default(_ref2$buttonProps2, _excluded),
261
270
  customTarget = _ref2.customTarget,
262
271
  _ref2$disabled = _ref2.disabled,
263
272
  disabled = _ref2$disabled === void 0 ? false : _ref2$disabled,
@@ -274,17 +283,17 @@ var Dropdown = function Dropdown(_ref2) {
274
283
  _ref2$strategy = _ref2.strategy,
275
284
  strategy = _ref2$strategy === void 0 ? STRATEGY.absolute : _ref2$strategy,
276
285
  onClick = _ref2.onClick,
277
- otherProps = _objectWithoutProperties(_ref2, _excluded2);
286
+ otherProps = _objectWithoutProperties__default.default(_ref2, _excluded2);
278
287
  var _useState = React.useState(null),
279
- _useState2 = _slicedToArray(_useState, 2),
288
+ _useState2 = _slicedToArray__default.default(_useState, 2),
280
289
  instance = _useState2[0],
281
290
  setInstance = _useState2[1];
282
291
  var _useState3 = React.useState(false),
283
- _useState4 = _slicedToArray(_useState3, 2),
292
+ _useState4 = _slicedToArray__default.default(_useState3, 2),
284
293
  mounted = _useState4[0],
285
294
  setMounted = _useState4[1];
286
295
  var _useState5 = React.useState(false),
287
- _useState6 = _slicedToArray(_useState5, 2),
296
+ _useState6 = _slicedToArray__default.default(_useState5, 2),
288
297
  isExpanded = _useState6[0],
289
298
  setIsExpanded = _useState6[1];
290
299
  var menuId = useId.useId();
@@ -298,11 +307,11 @@ var Dropdown = function Dropdown(_ref2) {
298
307
  };
299
308
  var dropdownClassnames = dropdownProps.classNames,
300
309
  dropdownClassName = dropdownProps.className,
301
- otherDropdownProps = _objectWithoutProperties(dropdownProps, _excluded3);
310
+ otherDropdownProps = _objectWithoutProperties__default.default(dropdownProps, _excluded3);
302
311
  var close = function close() {
303
312
  return instance.hide();
304
313
  };
305
- return /*#__PURE__*/jsxRuntime.jsx(Tippy, _objectSpread(_objectSpread({
314
+ return /*#__PURE__*/jsxRuntime.jsx(Tippy__default.default, _objectSpread(_objectSpread({
306
315
  interactive: true,
307
316
  animation: false,
308
317
  aria: {
@@ -325,12 +334,12 @@ var Dropdown = function Dropdown(_ref2) {
325
334
  },
326
335
  theme: "light",
327
336
  trigger: isControlled ? undefined : TRIGGERS[trigger],
328
- className: classnames("neeto-ui-dropdown", _defineProperty({}, className, className)),
337
+ className: classnames__default.default("neeto-ui-dropdown", _defineProperty__default.default({}, className, className)),
329
338
  content: mounted ? /*#__PURE__*/jsxRuntime.jsx("div", _objectSpread(_objectSpread({
330
339
  "data-testid": "".concat(index.hyphenize(label), "-dropdown-container"),
331
340
  id: menuId,
332
341
  role: "menu",
333
- className: classnames("neeto-ui-dropdown__popup", _defineProperty(_defineProperty({}, dropdownClassName, dropdownClassName), dropdownClassnames, dropdownClassnames)),
342
+ className: classnames__default.default("neeto-ui-dropdown__popup", _defineProperty__default.default(_defineProperty__default.default({}, dropdownClassName, dropdownClassName), dropdownClassnames, dropdownClassnames)),
334
343
  onClick: closeOnSelect ? close : index.noop
335
344
  }, otherDropdownProps), {}, {
336
345
  children: children
@@ -355,7 +364,7 @@ var Dropdown = function Dropdown(_ref2) {
355
364
  }, otherProps), controlledProps)), {}, {
356
365
  children: customTarget ? /*#__PURE__*/jsxRuntime.jsx("span", {
357
366
  onClick: onClick,
358
- className: classnames({
367
+ className: classnames__default.default({
359
368
  "neeto-ui-cursor-not-allowed": disabled
360
369
  }),
361
370
  children: typeof customTarget === "function" ? customTarget() : customTarget
@@ -367,7 +376,7 @@ var Dropdown = function Dropdown(_ref2) {
367
376
  "aria-haspopup": "true",
368
377
  "data-testid": "".concat(index.hyphenize(label), "-dropdown-icon"),
369
378
  disabled: disabled || (buttonProps === null || buttonProps === void 0 ? void 0 : buttonProps.disabled),
370
- icon: icon || Down,
379
+ icon: icon || Down__default.default,
371
380
  iconPosition: "right",
372
381
  size: size !== null && size !== void 0 ? size : buttonSize,
373
382
  style: style !== null && style !== void 0 ? style : buttonStyle
@@ -1 +1 @@
1
- {"version":3,"file":"Dropdown.js","sources":["../../src/components/Dropdown/Divider.jsx","../../src/components/Dropdown/Menu.jsx","../../src/components/Dropdown/MenuItem/MenuItem.jsx","../../src/components/Dropdown/MenuItem/MenuItemButton.jsx","../../src/components/Dropdown/MenuItem/index.js","../../src/components/Dropdown/utils.js","../../src/components/Dropdown/index.jsx"],"sourcesContent":["import React from \"react\";\n\nconst Divider = props => (\n <li\n aria-orientation=\"horizontal\"\n className=\"neeto-ui-dropdown__popup-divider\"\n role=\"separator\"\n {...props}\n />\n);\n\nexport default Divider;\n","import React, { useEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst itemClassName = \"neeto-ui-dropdown__popup-menu-item-btn\";\n\nconst Menu = ({ children, className, ...otherProps }) => {\n const activeIndexRef = useRef(-1);\n const menuRef = useRef(null);\n\n const onKeyDown = event => {\n const menu = menuRef.current;\n const key = event.key?.toLowerCase();\n let activeIndex = activeIndexRef.current;\n let eventHandled = false;\n\n const items = menu.getElementsByClassName(itemClassName);\n const itemsCount = items.length;\n if (itemsCount === 0) return;\n\n if (key === \"arrowdown\") {\n activeIndex = activeIndex >= itemsCount - 1 ? 0 : activeIndex + 1;\n items[activeIndex].focus();\n eventHandled = true;\n } else if (key === \"arrowup\") {\n activeIndex = activeIndex <= 0 ? itemsCount - 1 : activeIndex - 1;\n items[activeIndex].focus();\n eventHandled = true;\n } else if (key === \"enter\" && activeIndex >= 0) {\n items[activeIndex]?.click();\n eventHandled = true;\n }\n\n if (!eventHandled) return;\n activeIndexRef.current = activeIndex;\n event.preventDefault();\n event.stopPropagation();\n };\n\n useEffect(() => {\n const menu = menuRef.current;\n if (menu) menu.focus();\n }, [menuRef]);\n\n return (\n <ul\n {...{ onKeyDown }}\n className={classnames(\"neeto-ui-dropdown__popup-menu\", className)}\n ref={menuRef}\n tabIndex={0}\n {...otherProps}\n >\n {children}\n </ul>\n );\n};\n\nMenu.propTypes = {\n /**\n * To specify className to be applied to the Menu.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Menu.\n */\n children: PropTypes.node,\n};\n\nexport default Menu;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Tooltip from \"components/Tooltip\";\n\nconst MenuItem = ({ children, className, tooltipProps, ...otherProps }) => {\n const renderMenuItem = () => (\n <li\n className={classnames(\"neeto-ui-dropdown__popup-menu-item\", className)}\n role=\"menuitem\"\n {...otherProps}\n >\n {children}\n </li>\n );\n\n if (isPresent(tooltipProps)) {\n return <Tooltip {...tooltipProps}>{renderMenuItem()}</Tooltip>;\n }\n\n return renderMenuItem();\n};\n\nMenuItem.propTypes = {\n /**\n * To specify className to be applied to the MenuItem.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the MenuItem.\n */\n children: PropTypes.node,\n /**\n * To specify the active state of the MenuItem.\n */\n isActive: PropTypes.bool,\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default MenuItem;\n","import React, { forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst ITEM_BTN_STYLES = { default: \"default\", danger: \"danger\" };\n\nconst BUTTON_TYPES = { button: \"button\", reset: \"reset\", submit: \"submit\" };\n\nconst MenuItemButton = forwardRef(\n (\n {\n children,\n className,\n isActive,\n isDisabled,\n style = ITEM_BTN_STYLES.default,\n prefix,\n suffix,\n type = BUTTON_TYPES.button,\n to = \"\",\n href = \"\",\n tooltipProps,\n ...otherProps\n },\n ref\n ) => {\n let Parent, elementSpecificProps;\n if (to) {\n Parent = Link;\n elementSpecificProps = { to };\n } else if (href) {\n Parent = \"a\";\n elementSpecificProps = { href };\n } else {\n Parent = \"button\";\n elementSpecificProps = { type };\n }\n\n return (\n <MenuItem {...{ tooltipProps }}>\n <Parent\n disabled={isDisabled}\n className={classnames(\n \"neeto-ui-dropdown__popup-menu-item-btn\",\n className,\n {\n \"neeto-ui-dropdown__popup-menu-item-btn--active\": isActive,\n \"neeto-ui-dropdown__popup-menu-item-btn--disabled\": isDisabled,\n \"neeto-ui-dropdown__popup-menu-item-btn--style-danger\":\n style === ITEM_BTN_STYLES.danger,\n }\n )}\n {...{ ref, ...otherProps, ...elementSpecificProps }}\n >\n {prefix && (\n <div className=\"neeto-ui-dropdown__popup-menu-item-btn__prefix\">\n {prefix}\n </div>\n )}\n {children}\n {suffix && (\n <div className=\"neeto-ui-dropdown__popup-menu-item-btn__suffix\">\n {suffix}\n </div>\n )}\n </Parent>\n </MenuItem>\n );\n }\n);\n\nMenuItemButton.displayName = \"MenuItemButton\";\n\nMenuItemButton.propTypes = {\n /**\n * To specify className to be applied to the MenuItem.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the MenuItem.\n */\n children: PropTypes.node,\n /**\n * To specify the active state of the MenuItem.\n */\n isActive: PropTypes.bool,\n /**\n * To specify whether the MenuItem is disabled.\n */\n isDisabled: PropTypes.bool,\n /**\n * To specify an internal route to which the button points to.\n */\n to: PropTypes.string,\n /**\n * To specify an external link to which the button points to.\n */\n href: PropTypes.string,\n /**\n * To specify the content to be added at the end of the input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the type of button.\n */\n type: PropTypes.oneOf(Object.values(BUTTON_TYPES)),\n /**\n * To specify the style of button.\n */\n style: PropTypes.oneOf(Object.values(ITEM_BTN_STYLES)),\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default MenuItemButton;\n","import MenuItem from \"./MenuItem\";\nimport MenuItemButton from \"./MenuItemButton\";\n\nMenuItem.Button = MenuItemButton;\n\nexport default MenuItem;\n","import { getContentDir } from \"utils\";\n\nexport const getDropdownPlacement = placement => {\n if (typeof placement !== \"string\") return placement;\n\n if (getContentDir() !== \"rtl\") return placement;\n\n if (placement.endsWith(\"-start\")) return placement.replace(/-start$/, \"-end\");\n\n if (placement.endsWith(\"-end\")) return placement.replace(/-end$/, \"-start\");\n\n return placement;\n};\n","import React, { useState } from \"react\";\n\nimport Tippy from \"@tippyjs/react\";\nimport classnames from \"classnames\";\nimport { Down } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { isNil } from \"ramda\";\n\nimport Button from \"components/Button\";\nimport { useId } from \"hooks\";\nimport { hyphenize, noop } from \"utils\";\n\nimport Divider from \"./Divider\";\nimport Menu from \"./Menu\";\nimport MenuItem from \"./MenuItem\";\nimport { getDropdownPlacement } from \"./utils\";\n\nconst BTN_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n tertiary: \"tertiary\",\n danger: \"danger\",\n danger_text: \"danger-text\",\n text: \"text\",\n link: \"link\",\n};\n\nconst BTN_SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n};\n\nconst STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nconst PLACEMENT = {\n auto: \"auto\",\n autoStart: \"auto-start\",\n autoEnd: \"auto-end\",\n top: \"top\",\n topStart: \"top-start\",\n topEnd: \"top-end\",\n bottom: \"bottom\",\n bottomStart: \"bottom-start\",\n bottomEnd: \"bottom-end\",\n right: \"right\",\n rightStart: \"right-start\",\n rightEnd: \"right-end\",\n left: \"left\",\n leftStart: \"left-start\",\n leftEnd: \"left-end\",\n};\n\nconst TRIGGERS = {\n click: \"click\",\n hover: \"mouseenter focus\",\n all: \"mouseenter focus click\",\n manual: \"manual\",\n};\n\nconst hideOnEsc = {\n name: \"hideOnEsc\",\n defaultValue: true,\n fn({ hide, props: { hideOnEsc } }) {\n function onKeyDown(event) {\n if (event.key?.toLowerCase() === \"escape\" && hideOnEsc) hide();\n }\n\n return {\n onShow() {\n document.addEventListener(\"keydown\", onKeyDown);\n },\n onHide() {\n document.removeEventListener(\"keydown\", onKeyDown);\n },\n };\n },\n};\n\nconst plugins = [hideOnEsc];\n\nconst Dropdown = ({\n icon,\n label,\n isOpen,\n onClose = noop,\n dropdownProps = {},\n position = PLACEMENT.bottomEnd,\n placement = position,\n children,\n className,\n buttonStyle = BTN_STYLES.primary,\n buttonSize = BTN_SIZES.medium,\n buttonProps: { style, size, ...buttonProps } = {},\n customTarget,\n disabled = false,\n closeOnEsc = true,\n closeOnSelect = true,\n closeOnOutsideClick = true,\n dropdownModifiers = [],\n trigger = TRIGGERS.click,\n strategy = STRATEGY.absolute,\n onClick,\n ...otherProps\n}) => {\n const [instance, setInstance] = useState(null);\n const [mounted, setMounted] = useState(false);\n const [isExpanded, setIsExpanded] = useState(false);\n const menuId = useId();\n\n const isControlled = !isNil(isOpen);\n\n const controlledProps = isControlled\n ? { visible: isOpen }\n : { onClickOutside: () => closeOnOutsideClick };\n\n const {\n classNames: dropdownClassnames,\n className: dropdownClassName,\n ...otherDropdownProps\n } = dropdownProps;\n\n const close = () => instance.hide();\n\n return (\n <Tippy\n interactive\n animation={false}\n aria={{ content: null, expanded: false }}\n arrow={false}\n duration={0}\n // hideOnClick determines whether the dropdown should be hidden when the user clicks outside of the dropdown.\n // https://atomiks.github.io/tippyjs/v6/all-props/#hideonclick\n hideOnClick={isControlled ? undefined : closeOnOutsideClick || \"toggle\"}\n hideOnEsc={closeOnEsc}\n maxWidth=\"none\"\n offset={0}\n placement={getDropdownPlacement(placement)}\n popperOptions={{ strategy, modifiers: dropdownModifiers }}\n theme=\"light\"\n trigger={isControlled ? undefined : TRIGGERS[trigger]}\n className={classnames(\"neeto-ui-dropdown\", {\n [className]: className,\n })}\n content={\n mounted ? (\n <div\n data-testid={`${hyphenize(label)}-dropdown-container`}\n id={menuId}\n role=\"menu\"\n className={classnames(\"neeto-ui-dropdown__popup\", {\n [dropdownClassName]: dropdownClassName,\n [dropdownClassnames]: dropdownClassnames,\n })}\n onClick={closeOnSelect ? close : noop}\n {...otherDropdownProps}\n >\n {children}\n </div>\n ) : null\n }\n onCreate={instance => instance && setInstance(instance)}\n onMount={() => setMounted(true)}\n onShow={() => setIsExpanded(true)}\n onHidden={() => {\n onClose();\n setMounted(false);\n setIsExpanded(false);\n }}\n {...{ disabled, plugins, ...otherProps, ...controlledProps }}\n >\n {customTarget ? (\n <span\n {...{ onClick }}\n className={classnames({ \"neeto-ui-cursor-not-allowed\": disabled })}\n >\n {typeof customTarget === \"function\" ? customTarget() : customTarget}\n </span>\n ) : (\n <Button\n {...{ label, onClick }}\n aria-controls={menuId}\n aria-expanded={isControlled ? isOpen : isExpanded}\n aria-haspopup=\"true\"\n data-testid={`${hyphenize(label)}-dropdown-icon`}\n disabled={disabled || buttonProps?.disabled}\n icon={icon || Down}\n iconPosition=\"right\"\n size={size ?? buttonSize}\n style={style ?? buttonStyle}\n {...buttonProps}\n />\n )}\n </Tippy>\n );\n};\n\nDropdown.Menu = Menu;\nDropdown.MenuItem = MenuItem;\nDropdown.Divider = Divider;\n\nDropdown.propTypes = {\n /**\n * To specify the icon to be rendered in the Dropdown target.\n */\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * To specify the label for Dropdown target button.\n */\n label: PropTypes.string,\n /**\n * To specify whether the Dropdown is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the action to be triggered on closing the Dropdown.\n */\n onClose: PropTypes.func,\n /**\n * To specify the triggering action for Dropdown.\n */\n trigger: PropTypes.oneOf(Object.keys(TRIGGERS)),\n /**\n * To specify the positioning strategy to use. By default, it is absolute, which in the simplest cases does not require repositioning of the Dropdown.\n *\n * If your reference element is in a fixed container, use the fixed strategy\n */\n strategy: PropTypes.oneOf(Object.values(STRATEGY)),\n /**\n * To specify the classes to be passed to the Dropdown menu.\n */\n dropdownProps: PropTypes.object,\n /**\n * To specify the position of the Dropdown menu.\n */\n position: PropTypes.oneOf(Object.values(PLACEMENT)),\n /**\n * To specify the content to be rendered inside the Dropdown.\n */\n children: PropTypes.node,\n /**\n * To provide external classnames to Dropdown target wrapper.\n */\n className: PropTypes.string,\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 size of the button to be rendered as the Dropdown target.\n */\n buttonSize: PropTypes.oneOf(Object.values(BTN_SIZES)),\n /**\n * To specify the style of the button to be rendered as the Dropdown target.\n */\n buttonStyle: PropTypes.oneOf(Object.values(BTN_STYLES)),\n /**\n * To specify the props to be passed to the Dropdown target button.\n */\n buttonProps: PropTypes.object,\n /**\n * To provide a custom target to be rendered instead of the default button target.\n */\n customTarget: PropTypes.node,\n /**\n * To specify whether the Dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on pressing esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on selecting an option.\n */\n closeOnSelect: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on clicking outside the Dropdown content. (will not have any effect if the component is controlled.)\n */\n closeOnOutsideClick: PropTypes.bool,\n /**\n * To provide custom modifiers to Dropdown component.\n */\n dropdownModifiers: PropTypes.array,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-danger mb-2\">\n * Removed\n * </div>\n * _Use `dropdownProps` props instead._\n *\n */\n ulProps: PropTypes.object,\n /**\n * To specify the action that should be triggered when clicking outside of the controlled dropdown component.\n */\n onClickOutside: PropTypes.func,\n};\n\nexport default Dropdown;\n"],"names":["Divider","props","_jsx","_objectSpread","className","role","itemClassName","Menu","_ref","children","otherProps","_objectWithoutProperties","_excluded","activeIndexRef","useRef","menuRef","onKeyDown","event","_event$key","menu","current","key","toLowerCase","activeIndex","eventHandled","items","getElementsByClassName","itemsCount","length","focus","_items$activeIndex","click","preventDefault","stopPropagation","useEffect","classnames","ref","tabIndex","MenuItem","tooltipProps","renderMenuItem","isPresent","Tooltip","ITEM_BTN_STYLES","danger","BUTTON_TYPES","button","MenuItemButton","forwardRef","isActive","isDisabled","_ref$style","style","prefix","suffix","_ref$type","type","_ref$to","to","_ref$href","href","Parent","elementSpecificProps","Link","_jsxs","disabled","displayName","Button","getDropdownPlacement","placement","getContentDir","endsWith","replace","BTN_STYLES","primary","BTN_SIZES","small","medium","STRATEGY","absolute","PLACEMENT","auto","bottomEnd","TRIGGERS","hover","all","manual","hideOnEsc","name","defaultValue","fn","hide","onShow","document","addEventListener","onHide","removeEventListener","plugins","Dropdown","_ref2","icon","label","isOpen","_ref2$onClose","onClose","noop","_ref2$dropdownProps","dropdownProps","_ref2$position","position","_ref2$placement","_ref2$buttonStyle","buttonStyle","_ref2$buttonSize","buttonSize","_ref2$buttonProps","buttonProps","_ref2$buttonProps2","size","customTarget","_ref2$disabled","_ref2$closeOnEsc","closeOnEsc","_ref2$closeOnSelect","closeOnSelect","_ref2$closeOnOutsideC","closeOnOutsideClick","_ref2$dropdownModifie","dropdownModifiers","_ref2$trigger","trigger","_ref2$strategy","strategy","onClick","_excluded2","_useState","useState","_useState2","_slicedToArray","instance","setInstance","_useState3","_useState4","mounted","setMounted","_useState5","_useState6","isExpanded","setIsExpanded","menuId","useId","isControlled","isNil","controlledProps","visible","onClickOutside","dropdownClassnames","classNames","dropdownClassName","otherDropdownProps","_excluded3","close","Tippy","interactive","animation","aria","content","expanded","arrow","duration","hideOnClick","undefined","maxWidth","offset","popperOptions","modifiers","theme","_defineProperty","concat","hyphenize","id","onCreate","onMount","onHidden","Down","iconPosition"],"mappings":"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"}
1
+ {"version":3,"file":"Dropdown.js","sources":["../../src/components/Dropdown/Divider.jsx","../../src/components/Dropdown/Menu.jsx","../../src/components/Dropdown/MenuItem/MenuItem.jsx","../../src/components/Dropdown/MenuItem/MenuItemButton.jsx","../../src/components/Dropdown/MenuItem/index.js","../../src/components/Dropdown/utils.js","../../src/components/Dropdown/index.jsx"],"sourcesContent":["import React from \"react\";\n\nconst Divider = props => (\n <li\n aria-orientation=\"horizontal\"\n className=\"neeto-ui-dropdown__popup-divider\"\n role=\"separator\"\n {...props}\n />\n);\n\nexport default Divider;\n","import React, { useEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nconst itemClassName = \"neeto-ui-dropdown__popup-menu-item-btn\";\n\nconst Menu = ({ children, className, ...otherProps }) => {\n const activeIndexRef = useRef(-1);\n const menuRef = useRef(null);\n\n const onKeyDown = event => {\n const menu = menuRef.current;\n const key = event.key?.toLowerCase();\n let activeIndex = activeIndexRef.current;\n let eventHandled = false;\n\n const items = menu.getElementsByClassName(itemClassName);\n const itemsCount = items.length;\n if (itemsCount === 0) return;\n\n if (key === \"arrowdown\") {\n activeIndex = activeIndex >= itemsCount - 1 ? 0 : activeIndex + 1;\n items[activeIndex].focus();\n eventHandled = true;\n } else if (key === \"arrowup\") {\n activeIndex = activeIndex <= 0 ? itemsCount - 1 : activeIndex - 1;\n items[activeIndex].focus();\n eventHandled = true;\n } else if (key === \"enter\" && activeIndex >= 0) {\n items[activeIndex]?.click();\n eventHandled = true;\n }\n\n if (!eventHandled) return;\n activeIndexRef.current = activeIndex;\n event.preventDefault();\n event.stopPropagation();\n };\n\n useEffect(() => {\n const menu = menuRef.current;\n if (menu) menu.focus();\n }, [menuRef]);\n\n return (\n <ul\n {...{ onKeyDown }}\n className={classnames(\"neeto-ui-dropdown__popup-menu\", className)}\n ref={menuRef}\n tabIndex={0}\n {...otherProps}\n >\n {children}\n </ul>\n );\n};\n\nMenu.propTypes = {\n /**\n * To specify className to be applied to the Menu.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the Menu.\n */\n children: PropTypes.node,\n};\n\nexport default Menu;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\n\nimport Tooltip from \"components/Tooltip\";\n\nconst MenuItem = ({ children, className, tooltipProps, ...otherProps }) => {\n const renderMenuItem = () => (\n <li\n className={classnames(\"neeto-ui-dropdown__popup-menu-item\", className)}\n role=\"menuitem\"\n {...otherProps}\n >\n {children}\n </li>\n );\n\n if (isPresent(tooltipProps)) {\n return <Tooltip {...tooltipProps}>{renderMenuItem()}</Tooltip>;\n }\n\n return renderMenuItem();\n};\n\nMenuItem.propTypes = {\n /**\n * To specify className to be applied to the MenuItem.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the MenuItem.\n */\n children: PropTypes.node,\n /**\n * To specify the active state of the MenuItem.\n */\n isActive: PropTypes.bool,\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default MenuItem;\n","import React, { forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\nimport { Link } from \"react-router-dom\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst ITEM_BTN_STYLES = { default: \"default\", danger: \"danger\" };\n\nconst BUTTON_TYPES = { button: \"button\", reset: \"reset\", submit: \"submit\" };\n\nconst MenuItemButton = forwardRef(\n (\n {\n children,\n className,\n isActive,\n isDisabled,\n style = ITEM_BTN_STYLES.default,\n prefix,\n suffix,\n type = BUTTON_TYPES.button,\n to = \"\",\n href = \"\",\n tooltipProps,\n ...otherProps\n },\n ref\n ) => {\n let Parent, elementSpecificProps;\n if (to) {\n Parent = Link;\n elementSpecificProps = { to };\n } else if (href) {\n Parent = \"a\";\n elementSpecificProps = { href };\n } else {\n Parent = \"button\";\n elementSpecificProps = { type };\n }\n\n return (\n <MenuItem {...{ tooltipProps }}>\n <Parent\n disabled={isDisabled}\n className={classnames(\n \"neeto-ui-dropdown__popup-menu-item-btn\",\n className,\n {\n \"neeto-ui-dropdown__popup-menu-item-btn--active\": isActive,\n \"neeto-ui-dropdown__popup-menu-item-btn--disabled\": isDisabled,\n \"neeto-ui-dropdown__popup-menu-item-btn--style-danger\":\n style === ITEM_BTN_STYLES.danger,\n }\n )}\n {...{ ref, ...otherProps, ...elementSpecificProps }}\n >\n {prefix && (\n <div className=\"neeto-ui-dropdown__popup-menu-item-btn__prefix\">\n {prefix}\n </div>\n )}\n {children}\n {suffix && (\n <div className=\"neeto-ui-dropdown__popup-menu-item-btn__suffix\">\n {suffix}\n </div>\n )}\n </Parent>\n </MenuItem>\n );\n }\n);\n\nMenuItemButton.displayName = \"MenuItemButton\";\n\nMenuItemButton.propTypes = {\n /**\n * To specify className to be applied to the MenuItem.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered inside the MenuItem.\n */\n children: PropTypes.node,\n /**\n * To specify the active state of the MenuItem.\n */\n isActive: PropTypes.bool,\n /**\n * To specify whether the MenuItem is disabled.\n */\n isDisabled: PropTypes.bool,\n /**\n * To specify an internal route to which the button points to.\n */\n to: PropTypes.string,\n /**\n * To specify an external link to which the button points to.\n */\n href: PropTypes.string,\n /**\n * To specify the content to be added at the end of the input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify the type of button.\n */\n type: PropTypes.oneOf(Object.values(BUTTON_TYPES)),\n /**\n * To specify the style of button.\n */\n style: PropTypes.oneOf(Object.values(ITEM_BTN_STYLES)),\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default MenuItemButton;\n","import MenuItem from \"./MenuItem\";\nimport MenuItemButton from \"./MenuItemButton\";\n\nMenuItem.Button = MenuItemButton;\n\nexport default MenuItem;\n","import { getContentDir } from \"utils\";\n\nexport const getDropdownPlacement = placement => {\n if (typeof placement !== \"string\") return placement;\n\n if (getContentDir() !== \"rtl\") return placement;\n\n if (placement.endsWith(\"-start\")) return placement.replace(/-start$/, \"-end\");\n\n if (placement.endsWith(\"-end\")) return placement.replace(/-end$/, \"-start\");\n\n return placement;\n};\n","import React, { useState } from \"react\";\n\nimport Tippy from \"@tippyjs/react\";\nimport classnames from \"classnames\";\nimport { Down } from \"neetoicons\";\nimport PropTypes from \"prop-types\";\nimport { isNil } from \"ramda\";\n\nimport Button from \"components/Button\";\nimport { useId } from \"hooks\";\nimport { hyphenize, noop } from \"utils\";\n\nimport Divider from \"./Divider\";\nimport Menu from \"./Menu\";\nimport MenuItem from \"./MenuItem\";\nimport { getDropdownPlacement } from \"./utils\";\n\nconst BTN_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n tertiary: \"tertiary\",\n danger: \"danger\",\n danger_text: \"danger-text\",\n text: \"text\",\n link: \"link\",\n};\n\nconst BTN_SIZES = {\n small: \"small\",\n medium: \"medium\",\n large: \"large\",\n};\n\nconst STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nconst PLACEMENT = {\n auto: \"auto\",\n autoStart: \"auto-start\",\n autoEnd: \"auto-end\",\n top: \"top\",\n topStart: \"top-start\",\n topEnd: \"top-end\",\n bottom: \"bottom\",\n bottomStart: \"bottom-start\",\n bottomEnd: \"bottom-end\",\n right: \"right\",\n rightStart: \"right-start\",\n rightEnd: \"right-end\",\n left: \"left\",\n leftStart: \"left-start\",\n leftEnd: \"left-end\",\n};\n\nconst TRIGGERS = {\n click: \"click\",\n hover: \"mouseenter focus\",\n all: \"mouseenter focus click\",\n manual: \"manual\",\n};\n\nconst hideOnEsc = {\n name: \"hideOnEsc\",\n defaultValue: true,\n fn({ hide, props: { hideOnEsc } }) {\n function onKeyDown(event) {\n if (event.key?.toLowerCase() === \"escape\" && hideOnEsc) hide();\n }\n\n return {\n onShow() {\n document.addEventListener(\"keydown\", onKeyDown);\n },\n onHide() {\n document.removeEventListener(\"keydown\", onKeyDown);\n },\n };\n },\n};\n\nconst plugins = [hideOnEsc];\n\nconst Dropdown = ({\n icon,\n label,\n isOpen,\n onClose = noop,\n dropdownProps = {},\n position = PLACEMENT.bottomEnd,\n placement = position,\n children,\n className,\n buttonStyle = BTN_STYLES.primary,\n buttonSize = BTN_SIZES.medium,\n buttonProps: { style, size, ...buttonProps } = {},\n customTarget,\n disabled = false,\n closeOnEsc = true,\n closeOnSelect = true,\n closeOnOutsideClick = true,\n dropdownModifiers = [],\n trigger = TRIGGERS.click,\n strategy = STRATEGY.absolute,\n onClick,\n ...otherProps\n}) => {\n const [instance, setInstance] = useState(null);\n const [mounted, setMounted] = useState(false);\n const [isExpanded, setIsExpanded] = useState(false);\n const menuId = useId();\n\n const isControlled = !isNil(isOpen);\n\n const controlledProps = isControlled\n ? { visible: isOpen }\n : { onClickOutside: () => closeOnOutsideClick };\n\n const {\n classNames: dropdownClassnames,\n className: dropdownClassName,\n ...otherDropdownProps\n } = dropdownProps;\n\n const close = () => instance.hide();\n\n return (\n <Tippy\n interactive\n animation={false}\n aria={{ content: null, expanded: false }}\n arrow={false}\n duration={0}\n // hideOnClick determines whether the dropdown should be hidden when the user clicks outside of the dropdown.\n // https://atomiks.github.io/tippyjs/v6/all-props/#hideonclick\n hideOnClick={isControlled ? undefined : closeOnOutsideClick || \"toggle\"}\n hideOnEsc={closeOnEsc}\n maxWidth=\"none\"\n offset={0}\n placement={getDropdownPlacement(placement)}\n popperOptions={{ strategy, modifiers: dropdownModifiers }}\n theme=\"light\"\n trigger={isControlled ? undefined : TRIGGERS[trigger]}\n className={classnames(\"neeto-ui-dropdown\", {\n [className]: className,\n })}\n content={\n mounted ? (\n <div\n data-testid={`${hyphenize(label)}-dropdown-container`}\n id={menuId}\n role=\"menu\"\n className={classnames(\"neeto-ui-dropdown__popup\", {\n [dropdownClassName]: dropdownClassName,\n [dropdownClassnames]: dropdownClassnames,\n })}\n onClick={closeOnSelect ? close : noop}\n {...otherDropdownProps}\n >\n {children}\n </div>\n ) : null\n }\n onCreate={instance => instance && setInstance(instance)}\n onMount={() => setMounted(true)}\n onShow={() => setIsExpanded(true)}\n onHidden={() => {\n onClose();\n setMounted(false);\n setIsExpanded(false);\n }}\n {...{ disabled, plugins, ...otherProps, ...controlledProps }}\n >\n {customTarget ? (\n <span\n {...{ onClick }}\n className={classnames({ \"neeto-ui-cursor-not-allowed\": disabled })}\n >\n {typeof customTarget === \"function\" ? customTarget() : customTarget}\n </span>\n ) : (\n <Button\n {...{ label, onClick }}\n aria-controls={menuId}\n aria-expanded={isControlled ? isOpen : isExpanded}\n aria-haspopup=\"true\"\n data-testid={`${hyphenize(label)}-dropdown-icon`}\n disabled={disabled || buttonProps?.disabled}\n icon={icon || Down}\n iconPosition=\"right\"\n size={size ?? buttonSize}\n style={style ?? buttonStyle}\n {...buttonProps}\n />\n )}\n </Tippy>\n );\n};\n\nDropdown.Menu = Menu;\nDropdown.MenuItem = MenuItem;\nDropdown.Divider = Divider;\n\nDropdown.propTypes = {\n /**\n * To specify the icon to be rendered in the Dropdown target.\n */\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * To specify the label for Dropdown target button.\n */\n label: PropTypes.string,\n /**\n * To specify whether the Dropdown is open or not.\n */\n isOpen: PropTypes.bool,\n /**\n * To specify the action to be triggered on closing the Dropdown.\n */\n onClose: PropTypes.func,\n /**\n * To specify the triggering action for Dropdown.\n */\n trigger: PropTypes.oneOf(Object.keys(TRIGGERS)),\n /**\n * To specify the positioning strategy to use. By default, it is absolute, which in the simplest cases does not require repositioning of the Dropdown.\n *\n * If your reference element is in a fixed container, use the fixed strategy\n */\n strategy: PropTypes.oneOf(Object.values(STRATEGY)),\n /**\n * To specify the classes to be passed to the Dropdown menu.\n */\n dropdownProps: PropTypes.object,\n /**\n * To specify the position of the Dropdown menu.\n */\n position: PropTypes.oneOf(Object.values(PLACEMENT)),\n /**\n * To specify the content to be rendered inside the Dropdown.\n */\n children: PropTypes.node,\n /**\n * To provide external classnames to Dropdown target wrapper.\n */\n className: PropTypes.string,\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 size of the button to be rendered as the Dropdown target.\n */\n buttonSize: PropTypes.oneOf(Object.values(BTN_SIZES)),\n /**\n * To specify the style of the button to be rendered as the Dropdown target.\n */\n buttonStyle: PropTypes.oneOf(Object.values(BTN_STYLES)),\n /**\n * To specify the props to be passed to the Dropdown target button.\n */\n buttonProps: PropTypes.object,\n /**\n * To provide a custom target to be rendered instead of the default button target.\n */\n customTarget: PropTypes.node,\n /**\n * To specify whether the Dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on pressing esc key.\n */\n closeOnEsc: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on selecting an option.\n */\n closeOnSelect: PropTypes.bool,\n /**\n * To specify whether the Dropdown should close on clicking outside the Dropdown content. (will not have any effect if the component is controlled.)\n */\n closeOnOutsideClick: PropTypes.bool,\n /**\n * To provide custom modifiers to Dropdown component.\n */\n dropdownModifiers: PropTypes.array,\n /**\n * <div class=\"neeto-ui-tag neeto-ui-tag--size-small neeto-ui-tag--style-outline neeto-ui-tag--style-danger mb-2\">\n * Removed\n * </div>\n * _Use `dropdownProps` props instead._\n *\n */\n ulProps: PropTypes.object,\n /**\n * To specify the action that should be triggered when clicking outside of the controlled dropdown component.\n */\n onClickOutside: PropTypes.func,\n};\n\nexport default Dropdown;\n"],"names":["Divider","props","_jsx","_objectSpread","className","role","itemClassName","Menu","_ref","children","otherProps","_objectWithoutProperties","_excluded","activeIndexRef","useRef","menuRef","onKeyDown","event","_event$key","menu","current","key","toLowerCase","activeIndex","eventHandled","items","getElementsByClassName","itemsCount","length","focus","_items$activeIndex","click","preventDefault","stopPropagation","useEffect","classnames","ref","tabIndex","MenuItem","tooltipProps","renderMenuItem","isPresent","Tooltip","ITEM_BTN_STYLES","danger","BUTTON_TYPES","button","MenuItemButton","forwardRef","isActive","isDisabled","_ref$style","style","prefix","suffix","_ref$type","type","_ref$to","to","_ref$href","href","Parent","elementSpecificProps","Link","_jsxs","disabled","displayName","Button","getDropdownPlacement","placement","getContentDir","endsWith","replace","BTN_STYLES","primary","BTN_SIZES","small","medium","STRATEGY","absolute","PLACEMENT","auto","bottomEnd","TRIGGERS","hover","all","manual","hideOnEsc","name","defaultValue","fn","hide","onShow","document","addEventListener","onHide","removeEventListener","plugins","Dropdown","_ref2","icon","label","isOpen","_ref2$onClose","onClose","noop","_ref2$dropdownProps","dropdownProps","_ref2$position","position","_ref2$placement","_ref2$buttonStyle","buttonStyle","_ref2$buttonSize","buttonSize","_ref2$buttonProps","buttonProps","_ref2$buttonProps2","size","customTarget","_ref2$disabled","_ref2$closeOnEsc","closeOnEsc","_ref2$closeOnSelect","closeOnSelect","_ref2$closeOnOutsideC","closeOnOutsideClick","_ref2$dropdownModifie","dropdownModifiers","_ref2$trigger","trigger","_ref2$strategy","strategy","onClick","_excluded2","_useState","useState","_useState2","_slicedToArray","instance","setInstance","_useState3","_useState4","mounted","setMounted","_useState5","_useState6","isExpanded","setIsExpanded","menuId","useId","isControlled","isNil","controlledProps","visible","onClickOutside","dropdownClassnames","classNames","dropdownClassName","otherDropdownProps","_excluded3","close","Tippy","interactive","animation","aria","content","expanded","arrow","duration","hideOnClick","undefined","maxWidth","offset","popperOptions","modifiers","theme","_defineProperty","concat","hyphenize","id","onCreate","onMount","onHidden","Down","iconPosition"],"mappings":"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"}
package/dist/cjs/Input.js CHANGED
@@ -10,7 +10,7 @@ var useId = require('./useId-DXHUzdxd.js');
10
10
  require('react-router-dom');
11
11
  require('@bigbinary/neeto-hotkeys');
12
12
  require('./overlayManager.js');
13
- var index = require('./index-DApAqkOe.js');
13
+ var index = require('./index-CNZKW5X0.js');
14
14
  require('qs');
15
15
  var Label = require('./Label.js');
16
16
  var jsxRuntime = require('react/jsx-runtime');
@@ -18,7 +18,7 @@ require('@babel/runtime/helpers/classCallCheck');
18
18
  require('@babel/runtime/helpers/createClass');
19
19
  require('@bigbinary/neeto-cist');
20
20
  require('./en-B1i-pQJm.js');
21
- require('./index-D0rucYPS.js');
21
+ require('./index-BgzkP01c.js');
22
22
  require('@babel/runtime/helpers/toConsumableArray');
23
23
  require('dayjs');
24
24
  require('dayjs/plugin/localeData');
@@ -32,10 +32,17 @@ require('./Spinner.js');
32
32
  require('./Tooltip.js');
33
33
  require('@tippyjs/react');
34
34
  require('tippy.js');
35
- require('./usePrefersReducedMotion-DIgi-Aj7.js');
35
+ require('./usePrefersReducedMotion-D2Ck84HM.js');
36
36
  require('./Popover.js');
37
37
  require('./Typography.js');
38
38
 
39
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
40
+
41
+ var _defineProperty__default = /*#__PURE__*/_interopDefault(_defineProperty);
42
+ var _slicedToArray__default = /*#__PURE__*/_interopDefault(_slicedToArray);
43
+ var _objectWithoutProperties__default = /*#__PURE__*/_interopDefault(_objectWithoutProperties);
44
+ var classnames__default = /*#__PURE__*/_interopDefault(classnames);
45
+
39
46
  var toFixed = function toFixed(numStr, precision) {
40
47
  var num = Number(numStr);
41
48
  if (Number.isNaN(num)) return numStr;
@@ -59,7 +66,7 @@ var enforceDecimalPrecision = function enforceDecimalPrecision(value, precision)
59
66
  if (regex.test(valueStr)) return value;
60
67
  var parts = valueStr.split(".");
61
68
  if (parts.length === 1) return parts[0];
62
- var _parts = _slicedToArray(parts, 2),
69
+ var _parts = _slicedToArray__default.default(parts, 2),
63
70
  integerPart = _parts[0],
64
71
  decimalPart = _parts[1];
65
72
  return "".concat(integerPart, ".").concat(decimalPart.substring(0, precision));
@@ -89,7 +96,7 @@ var preserveCursor = function preserveCursor(e, updateValueFn) {
89
96
 
90
97
  var _excluded = ["size", "type", "label", "dataTestid", "error", "suffix", "prefix", "disabled", "helpText", "className", "nakedInput", "contentSize", "required", "maxLength", "unlimitedChars", "labelProps", "rejectCharsRegex", "onBlur", "disableTrimOnBlur", "precision"];
91
98
  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; }
99
+ 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__default.default(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; }
93
100
  var SIZES = {
94
101
  medium: "medium"};
95
102
  var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
@@ -130,9 +137,9 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
130
137
  disableTrimOnBlur = _ref$disableTrimOnBlu === void 0 ? false : _ref$disableTrimOnBlu,
131
138
  _ref$precision = _ref.precision,
132
139
  precision = _ref$precision === void 0 ? -1 : _ref$precision,
133
- otherProps = _objectWithoutProperties(_ref, _excluded);
140
+ otherProps = _objectWithoutProperties__default.default(_ref, _excluded);
134
141
  var _useState = React.useState(otherProps.value),
135
- _useState2 = _slicedToArray(_useState, 2),
142
+ _useState2 = _slicedToArray__default.default(_useState, 2),
136
143
  valueInternal = _useState2[0],
137
144
  setValueInternal = _useState2[1];
138
145
  var id = useId.useId(otherProps.id);
@@ -187,7 +194,7 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
187
194
  };
188
195
  var dataTestIdLabel = typeof label === "string" ? index.hyphenize(label) : index.hyphenize(dataTestid);
189
196
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
190
- className: classnames(["neeto-ui-input__wrapper", className]),
197
+ className: classnames__default.default(["neeto-ui-input__wrapper", className]),
191
198
  "data-testid": "nui-input-wrapper",
192
199
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
193
200
  className: "neeto-ui-input__label-wrapper",
@@ -198,14 +205,14 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
198
205
  }, labelProps), {}, {
199
206
  children: label
200
207
  })), isCharacterLimitVisible && /*#__PURE__*/jsxRuntime.jsxs("p", {
201
- className: classnames("neeto-ui-input__max-length", {
208
+ className: classnames__default.default("neeto-ui-input__max-length", {
202
209
  "neeto-ui-input__max-length--error": maxLengthError
203
210
  }),
204
211
  children: [valueLength, "/", maxLength]
205
212
  })]
206
213
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
207
214
  "data-testid": "".concat(dataTestIdLabel, "-input"),
208
- className: classnames("neeto-ui-input", {
215
+ className: classnames__default.default("neeto-ui-input", {
209
216
  "neeto-ui-input--naked": !!nakedInput,
210
217
  "neeto-ui-input--error": !!error,
211
218
  "neeto-ui-input--disabled": !!disabled,
@@ -220,7 +227,7 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
220
227
  "aria-invalid": !!error,
221
228
  "data-testid": "".concat(dataTestIdLabel, "-input-field"),
222
229
  size: contentSize,
223
- "aria-describedby": classnames(_defineProperty(_defineProperty({}, errorId, !!error), helpTextId, helpText))
230
+ "aria-describedby": classnames__default.default(_defineProperty__default.default(_defineProperty__default.default({}, errorId, !!error), helpTextId, helpText))
224
231
  }, _objectSpread(_objectSpread(_objectSpread({
225
232
  disabled: disabled,
226
233
  id: id,
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sources":["../../src/components/Input/utils.js","../../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n\nexport const preserveCursor = (e, updateValueFn) => {\n const input = e.target;\n const prevCursor = input.selectionStart;\n const prevValue = input.value;\n\n updateValueFn();\n\n const lengthDiff = input.value.length - prevValue.length;\n const newCursor = Math.max(0, prevCursor + lengthDiff);\n\n requestAnimationFrame(() => {\n if (document.activeElement !== input) return;\n\n if (input.type === \"number\") return;\n\n input.setSelectionRange(newCursor, newCursor);\n });\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { mergeDeepLeft } from \"ramda\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n preserveCursor,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n dataTestid = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n precision = -1,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value =\n formatWithPrecision(otherProps.value, precision) ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleChange = e => {\n if (type === \"file\") {\n onChange(e);\n\n return;\n }\n\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n if (formattedValue !== e.target.value) {\n preserveCursor(e, () =>\n mergeDeepLeft({ target: { value: formattedValue } }, e)\n );\n } else {\n onChange(e);\n }\n };\n\n const handleOnBlur = e => {\n if (type === \"file\") {\n onBlur?.(e);\n\n return;\n }\n\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataTestIdLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataTestid);\n\n return (\n <div\n className={classnames([\"neeto-ui-input__wrapper\", className])}\n data-testid=\"nui-input-wrapper\"\n >\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-testid={`${dataTestIdLabel}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n data-testid={`${dataTestIdLabel}-input`}\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-testid={`${dataTestIdLabel}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n onWheel={handleOnWheel}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-testid={`${dataTestIdLabel}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-testid={`${dataTestIdLabel}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","preserveCursor","e","updateValueFn","input","target","prevCursor","selectionStart","prevValue","lengthDiff","newCursor","Math","max","requestAnimationFrame","document","activeElement","type","setSelectionRange","SIZES","small","medium","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","_ref$label","label","_ref$dataTestid","dataTestid","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","_otherProps$onChange","call","isMaxLengthPresent","handleChange","formattedValue","mergeDeepLeft","handleOnBlur","trimmedValue","handleOnWheel","blur","dataTestIdLabel","hyphenize","_jsxs","classnames","children","_jsx","Label","_objectSpread","htmlFor","_defineProperty","onWheel","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sources":["../../src/components/Input/utils.js","../../src/components/Input/index.jsx"],"sourcesContent":["import { replace } from \"ramda\";\n\nconst toFixed = (numStr, precision) => {\n const num = Number(numStr);\n if (Number.isNaN(num)) return numStr;\n\n return num.toFixed(precision);\n};\n\nconst isValidNumberString = numStr => {\n if (typeof numStr !== \"string\") return false;\n\n return !Number.isNaN(Number(numStr.trim()));\n};\n\nexport const formatWithPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const str = value.toString();\n\n if (isValidNumberString(str)) return toFixed(str, precision);\n\n return str;\n};\n\nexport const enforceDecimalPrecision = (value, precision) => {\n if (precision < 0 || !value) return value;\n\n const valueStr = value.toString();\n\n if (precision === 0) return valueStr.split(\".\")[0];\n\n const regex = new RegExp(`^\\\\d*\\\\.?\\\\d{0,${precision}}$`);\n if (regex.test(valueStr)) return value;\n\n const parts = valueStr.split(\".\");\n if (parts.length === 1) return parts[0];\n\n const [integerPart, decimalPart] = parts;\n\n return `${integerPart}.${decimalPart.substring(0, precision)}`;\n};\n\nexport const formatWithRejectCharsRegex = (value, rejectCharsRegex) => {\n if (!rejectCharsRegex) return value;\n\n const globalRegex = new RegExp(rejectCharsRegex, \"g\");\n\n return replace(globalRegex, \"\", value);\n};\n\nexport const getTrimmedValue = (value, disableTrimOnBlur) => {\n if (disableTrimOnBlur || typeof value !== \"string\") return value;\n\n return value.trim();\n};\n\nexport const preserveCursor = (e, updateValueFn) => {\n const input = e.target;\n const prevCursor = input.selectionStart;\n const prevValue = input.value;\n\n updateValueFn();\n\n const lengthDiff = input.value.length - prevValue.length;\n const newCursor = Math.max(0, prevCursor + lengthDiff);\n\n requestAnimationFrame(() => {\n if (document.activeElement !== input) return;\n\n if (input.type === \"number\") return;\n\n input.setSelectionRange(newCursor, newCursor);\n });\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { mergeDeepLeft } from \"ramda\";\nimport PropTypes from \"prop-types\";\n\nimport { useId } from \"hooks\";\nimport { hyphenize } from \"utils\";\n\nimport {\n enforceDecimalPrecision,\n formatWithPrecision,\n formatWithRejectCharsRegex,\n getTrimmedValue,\n preserveCursor,\n} from \"./utils\";\n\nimport Label from \"../Label\";\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst Input = forwardRef(\n (\n {\n size = SIZES.medium,\n type = \"text\",\n label = \"\",\n dataTestid = \"\",\n error = \"\",\n suffix = null,\n prefix = null,\n disabled = false,\n helpText = \"\",\n className = \"\",\n nakedInput = false,\n contentSize = null,\n required = false,\n maxLength,\n unlimitedChars = false,\n labelProps,\n rejectCharsRegex,\n onBlur,\n disableTrimOnBlur = false,\n precision = -1,\n ...otherProps\n },\n ref\n ) => {\n const [valueInternal, setValueInternal] = useState(otherProps.value);\n const id = useId(otherProps.id);\n\n const errorId = `error_${id}`;\n const helpTextId = `helpText_${id}`;\n\n const value =\n formatWithPrecision(otherProps.value, precision) ?? valueInternal ?? \"\";\n\n const valueLength = value?.toString().length || 0;\n const isCharacterLimitVisible = valueLength >= maxLength * 0.85;\n const maxLengthError = unlimitedChars && valueLength > maxLength;\n\n const onChange = e => {\n if (!otherProps.onChange || !otherProps.value) {\n setValueInternal(e.target.value);\n }\n otherProps.onChange?.(e);\n };\n\n const isMaxLengthPresent = !!maxLength || maxLength === 0;\n\n const handleChange = e => {\n if (type === \"file\") {\n onChange(e);\n\n return;\n }\n\n let formattedValue = formatWithRejectCharsRegex(\n e.target.value,\n rejectCharsRegex\n );\n\n formattedValue = enforceDecimalPrecision(formattedValue, precision);\n\n if (formattedValue !== e.target.value) {\n preserveCursor(e, () =>\n mergeDeepLeft({ target: { value: formattedValue } }, e)\n );\n } else {\n onChange(e);\n }\n };\n\n const handleOnBlur = e => {\n if (type === \"file\") {\n onBlur?.(e);\n\n return;\n }\n\n const trimmedValue = getTrimmedValue(value, disableTrimOnBlur);\n const formattedValue = formatWithPrecision(trimmedValue, precision);\n\n if (formattedValue !== value) {\n e.target.value = formattedValue;\n handleChange(e);\n }\n\n onBlur?.(e);\n };\n\n const handleOnWheel = e => {\n if (type === \"number\") e.target.blur();\n };\n\n const dataTestIdLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataTestid);\n\n return (\n <div\n className={classnames([\"neeto-ui-input__wrapper\", className])}\n data-testid=\"nui-input-wrapper\"\n >\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-testid={`${dataTestIdLabel}-input-label`}\n htmlFor={id}\n {...labelProps}\n >\n {label}\n </Label>\n )}\n {isCharacterLimitVisible && (\n <p\n className={classnames(\"neeto-ui-input__max-length\", {\n \"neeto-ui-input__max-length--error\": maxLengthError,\n })}\n >\n {valueLength}/{maxLength}\n </p>\n )}\n </div>\n <div\n data-testid={`${dataTestIdLabel}-input`}\n className={classnames(\"neeto-ui-input\", {\n \"neeto-ui-input--naked\": !!nakedInput,\n \"neeto-ui-input--error\": !!error,\n \"neeto-ui-input--disabled\": !!disabled,\n \"neeto-ui-input--small\": size === \"small\",\n \"neeto-ui-input--medium\": size === \"medium\",\n \"neeto-ui-input--large\": size === \"large\",\n })}\n >\n {prefix && <div className=\"neeto-ui-input__prefix\">{prefix}</div>}\n <input\n aria-invalid={!!error}\n data-testid={`${dataTestIdLabel}-input-field`}\n size={contentSize}\n aria-describedby={classnames({\n [errorId]: !!error,\n [helpTextId]: helpText,\n })}\n {...{\n disabled,\n id,\n ref,\n required,\n type,\n ...(isMaxLengthPresent && !unlimitedChars && { maxLength }),\n ...otherProps,\n value,\n }}\n onBlur={handleOnBlur}\n onChange={handleChange}\n onWheel={handleOnWheel}\n />\n {suffix && <div className=\"neeto-ui-input__suffix\">{suffix}</div>}\n </div>\n {!!error && (\n <p\n className=\"neeto-ui-input__error\"\n data-testid={`${dataTestIdLabel}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-testid={`${dataTestIdLabel}-input-help`}\n id={helpTextId}\n >\n {helpText}\n </p>\n )}\n </div>\n );\n }\n);\n\nInput.displayName = \"Input\";\n\nInput.propTypes = {\n /**\n * To specify a unique ID to the Input component.\n */\n id: PropTypes.string,\n /**\n * To specify the size of Input.\n */\n size: PropTypes.oneOf(Object.values(SIZES)),\n /**\n * To specify the type of Input field.\n */\n type: PropTypes.string,\n /**\n * To specify how many decimal places to show in the input.\n *\n * For example, if precision is 2:\n * 10 will be shown as \"10.00\"\n * 10.1 will be shown as \"10.10\"\n * 9.758 will be rounded and shown as \"9.76\"\n */\n precision: PropTypes.number,\n /**\n * To specify the label props to be passed to the Label component.\n */\n labelProps: PropTypes.object,\n /**\n * To specify a maximum character limit to the Input. Charater limit is visible only if the Input value is greater than or equal to 85% of the maximum character limit.\n */\n maxLength: PropTypes.number,\n /**\n * To be used along with maxLength prop. When set to true the character limit will not be enforced and character count will be shown in error state if the character limit is exceeded.\n */\n unlimitedChars: PropTypes.bool,\n /**\n * To specify the text to be displayed above the Input.\n */\n label: PropTypes.string,\n /**\n * To specify the error message to be shown in the Input field.\n */\n error: PropTypes.string,\n /**\n * To specify the content to be added at the end of the Input field.\n */\n suffix: PropTypes.node,\n /**\n * To specify the content to be added at the beginning of the Input field.\n */\n prefix: PropTypes.node,\n /**\n * To specify whether the Input field is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * To specify the text that appears below the Input field.\n */\n helpText: PropTypes.string,\n /**\n * To specify external classNames that can be provided as overrides to the main wrapper.\n */\n className: PropTypes.string,\n /**\n * To create an Input field without any borders.\n */\n nakedInput: PropTypes.bool,\n /**\n * To specify the value to be passed as size attribute to the Input field.\n */\n contentSize: PropTypes.number,\n /**\n * To specify whether the Input field is required or not.\n */\n required: PropTypes.bool,\n /**\n * To specify a regex to be matched against the user input. Any character that matches it\n * cannot be input by the user. It will also prevent such characters from being pasted into the input.\n */\n rejectCharsRegex: PropTypes.instanceOf(RegExp),\n /**\n * To disable leading and trailing white spaces onBlur.\n */\n disableTrimOnBlur: PropTypes.bool,\n};\n\nexport default Input;\n"],"names":["toFixed","numStr","precision","num","Number","isNaN","isValidNumberString","trim","formatWithPrecision","value","str","toString","enforceDecimalPrecision","valueStr","split","regex","RegExp","concat","test","parts","length","_parts","_slicedToArray","integerPart","decimalPart","substring","formatWithRejectCharsRegex","rejectCharsRegex","globalRegex","replace","getTrimmedValue","disableTrimOnBlur","preserveCursor","e","updateValueFn","input","target","prevCursor","selectionStart","prevValue","lengthDiff","newCursor","Math","max","requestAnimationFrame","document","activeElement","type","setSelectionRange","SIZES","small","medium","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","_ref$label","label","_ref$dataTestid","dataTestid","_ref$error","error","_ref$suffix","suffix","_ref$prefix","prefix","_ref$disabled","disabled","_ref$helpText","helpText","_ref$className","className","_ref$nakedInput","nakedInput","_ref$contentSize","contentSize","_ref$required","required","maxLength","_ref$unlimitedChars","unlimitedChars","labelProps","onBlur","_ref$disableTrimOnBlu","_ref$precision","otherProps","_objectWithoutProperties","_excluded","_useState","useState","_useState2","valueInternal","setValueInternal","id","useId","errorId","helpTextId","valueLength","isCharacterLimitVisible","maxLengthError","onChange","_otherProps$onChange","call","isMaxLengthPresent","handleChange","formattedValue","mergeDeepLeft","handleOnBlur","trimmedValue","handleOnWheel","blur","dataTestIdLabel","hyphenize","_jsxs","classnames","children","_jsx","Label","_objectSpread","htmlFor","_defineProperty","onWheel","displayName"],"mappings":"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"}