@bigbinary/neetoui 8.3.30 → 8.3.32
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.
- package/dist/Accordion.js +94 -76
- package/dist/Accordion.js.map +1 -1
- package/dist/ActionDropdown.js +29 -32
- package/dist/ActionDropdown.js.map +1 -1
- package/dist/Alert.js +44 -38
- package/dist/Alert.js.map +1 -1
- package/dist/Avatar.js +28 -22
- package/dist/Avatar.js.map +1 -1
- package/dist/Button.js +45 -43
- package/dist/Button.js.map +1 -1
- package/dist/Callout.js +12 -7
- package/dist/Callout.js.map +1 -1
- package/dist/Checkbox.js +35 -28
- package/dist/Checkbox.js.map +1 -1
- package/dist/ColorPicker.js +134 -117
- package/dist/ColorPicker.js.map +1 -1
- package/dist/DatePicker.js +25 -9
- package/dist/DatePicker.js.map +1 -1
- package/dist/Dropdown.js +75 -83
- package/dist/Dropdown.js.map +1 -1
- package/dist/Input.js +82 -70
- package/dist/Input.js.map +1 -1
- package/dist/Kbd.js +13 -7
- package/dist/Kbd.js.map +1 -1
- package/dist/Label.js +59 -40
- package/dist/Label.js.map +1 -1
- package/dist/Modal.js +76 -65
- package/dist/Modal.js.map +1 -1
- package/dist/MultiEmailInput.js +118 -99
- package/dist/MultiEmailInput.js.map +1 -1
- package/dist/NoData.js +55 -39
- package/dist/NoData.js.map +1 -1
- package/dist/Pagination.js +64 -52
- package/dist/Pagination.js.map +1 -1
- package/dist/Pane.js +66 -56
- package/dist/Pane.js.map +1 -1
- package/dist/Popover.js +10 -7
- package/dist/Popover.js.map +1 -1
- package/dist/ProgressBar.js +20 -17
- package/dist/ProgressBar.js.map +1 -1
- package/dist/Radio.js +50 -40
- package/dist/Radio.js.map +1 -1
- package/dist/Select.js +111 -90
- package/dist/Select.js.map +1 -1
- package/dist/Sidebar.js +265 -216
- package/dist/Sidebar.js.map +1 -1
- package/dist/Slider.js +45 -38
- package/dist/Slider.js.map +1 -1
- package/dist/Spinner.js +3 -2
- package/dist/Spinner.js.map +1 -1
- package/dist/Stepper.js +33 -26
- package/dist/Stepper.js.map +1 -1
- package/dist/Switch.js +56 -46
- package/dist/Switch.js.map +1 -1
- package/dist/Tab.js +17 -11
- package/dist/Tab.js.map +1 -1
- package/dist/Table.js +221 -182
- package/dist/Table.js.map +1 -1
- package/dist/Tag.js +31 -24
- package/dist/Tag.js.map +1 -1
- package/dist/{Textarea-DlEGZFfG.js → Textarea-D1gsiIxm.js} +66 -56
- package/dist/{Textarea-DlEGZFfG.js.map → Textarea-D1gsiIxm.js.map} +1 -1
- package/dist/Textarea.js +4 -4
- package/dist/TimePicker.js +25 -9
- package/dist/TimePicker.js.map +1 -1
- package/dist/Toastr.js +46 -37
- package/dist/Toastr.js.map +1 -1
- package/dist/Tooltip.js +10 -6
- package/dist/Tooltip.js.map +1 -1
- package/dist/TranslationProvider.js +6 -4
- package/dist/TranslationProvider.js.map +1 -1
- package/dist/Tree.js +17 -15
- package/dist/Tree.js.map +1 -1
- package/dist/TreeSelect.js +65 -58
- package/dist/TreeSelect.js.map +1 -1
- package/dist/Typography.js +7 -3
- package/dist/Typography.js.map +1 -1
- package/dist/cjs/Accordion.js +94 -76
- package/dist/cjs/Accordion.js.map +1 -1
- package/dist/cjs/ActionDropdown.js +29 -32
- package/dist/cjs/ActionDropdown.js.map +1 -1
- package/dist/cjs/Alert.js +43 -37
- package/dist/cjs/Alert.js.map +1 -1
- package/dist/cjs/Avatar.js +27 -21
- package/dist/cjs/Avatar.js.map +1 -1
- package/dist/cjs/Button.js +45 -43
- package/dist/cjs/Button.js.map +1 -1
- package/dist/cjs/Callout.js +11 -6
- package/dist/cjs/Callout.js.map +1 -1
- package/dist/cjs/Checkbox.js +34 -27
- package/dist/cjs/Checkbox.js.map +1 -1
- package/dist/cjs/ColorPicker.js +132 -115
- package/dist/cjs/ColorPicker.js.map +1 -1
- package/dist/cjs/DatePicker.js +25 -9
- package/dist/cjs/DatePicker.js.map +1 -1
- package/dist/cjs/Dropdown.js +74 -82
- package/dist/cjs/Dropdown.js.map +1 -1
- package/dist/cjs/Input.js +81 -69
- package/dist/cjs/Input.js.map +1 -1
- package/dist/cjs/Kbd.js +13 -7
- package/dist/cjs/Kbd.js.map +1 -1
- package/dist/cjs/Label.js +59 -40
- package/dist/cjs/Label.js.map +1 -1
- package/dist/cjs/Modal.js +76 -65
- package/dist/cjs/Modal.js.map +1 -1
- package/dist/cjs/MultiEmailInput.js +117 -98
- package/dist/cjs/MultiEmailInput.js.map +1 -1
- package/dist/cjs/NoData.js +55 -39
- package/dist/cjs/NoData.js.map +1 -1
- package/dist/cjs/Pagination.js +63 -51
- package/dist/cjs/Pagination.js.map +1 -1
- package/dist/cjs/Pane.js +65 -55
- package/dist/cjs/Pane.js.map +1 -1
- package/dist/cjs/Popover.js +10 -7
- package/dist/cjs/Popover.js.map +1 -1
- package/dist/cjs/ProgressBar.js +20 -17
- package/dist/cjs/ProgressBar.js.map +1 -1
- package/dist/cjs/Radio.js +49 -39
- package/dist/cjs/Radio.js.map +1 -1
- package/dist/cjs/Select.js +110 -89
- package/dist/cjs/Select.js.map +1 -1
- package/dist/cjs/Sidebar.js +268 -219
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/Slider.js +45 -38
- package/dist/cjs/Slider.js.map +1 -1
- package/dist/cjs/Spinner.js +3 -2
- package/dist/cjs/Spinner.js.map +1 -1
- package/dist/cjs/Stepper.js +33 -26
- package/dist/cjs/Stepper.js.map +1 -1
- package/dist/cjs/Switch.js +55 -45
- package/dist/cjs/Switch.js.map +1 -1
- package/dist/cjs/Tab.js +17 -11
- package/dist/cjs/Tab.js.map +1 -1
- package/dist/cjs/Table.js +224 -185
- package/dist/cjs/Table.js.map +1 -1
- package/dist/cjs/Tag.js +30 -23
- package/dist/cjs/Tag.js.map +1 -1
- package/dist/cjs/{Textarea-CiUKmQHr.js → Textarea-BzBZbgdT.js} +65 -55
- package/dist/cjs/{Textarea-CiUKmQHr.js.map → Textarea-BzBZbgdT.js.map} +1 -1
- package/dist/cjs/Textarea.js +4 -4
- package/dist/cjs/TimePicker.js +25 -9
- package/dist/cjs/TimePicker.js.map +1 -1
- package/dist/cjs/Toastr.js +45 -36
- package/dist/cjs/Toastr.js.map +1 -1
- package/dist/cjs/Tooltip.js +10 -6
- package/dist/cjs/Tooltip.js.map +1 -1
- package/dist/cjs/TranslationProvider.js +5 -3
- package/dist/cjs/TranslationProvider.js.map +1 -1
- package/dist/cjs/Tree.js +17 -15
- package/dist/cjs/Tree.js.map +1 -1
- package/dist/cjs/TreeSelect.js +66 -59
- package/dist/cjs/TreeSelect.js.map +1 -1
- package/dist/cjs/Typography.js +7 -3
- package/dist/cjs/Typography.js.map +1 -1
- package/dist/cjs/constants.js.map +1 -1
- package/dist/cjs/formik/ActionBlock.js +16 -9
- package/dist/cjs/formik/ActionBlock.js.map +1 -1
- package/dist/cjs/formik/BlockNavigation.js +40 -30
- package/dist/cjs/formik/BlockNavigation.js.map +1 -1
- package/dist/cjs/formik/Button.js +5 -3
- package/dist/cjs/formik/Button.js.map +1 -1
- package/dist/cjs/formik/Checkbox.js +29 -28
- package/dist/cjs/formik/Checkbox.js.map +1 -1
- package/dist/cjs/formik/Form.js +53 -47
- package/dist/cjs/formik/Form.js.map +1 -1
- package/dist/cjs/formik/Input.js +27 -26
- package/dist/cjs/formik/Input.js.map +1 -1
- package/dist/cjs/formik/MultiEmailInput.js +10 -6
- package/dist/cjs/formik/MultiEmailInput.js.map +1 -1
- package/dist/cjs/formik/Radio.js +7 -7
- package/dist/cjs/formik/Radio.js.map +1 -1
- package/dist/cjs/formik/Select.js +15 -10
- package/dist/cjs/formik/Select.js.map +1 -1
- package/dist/cjs/formik/Slider.js +7 -7
- package/dist/cjs/formik/Slider.js.map +1 -1
- package/dist/cjs/formik/Switch.js +31 -28
- package/dist/cjs/formik/Switch.js.map +1 -1
- package/dist/cjs/formik/Textarea.js +28 -27
- package/dist/cjs/formik/Textarea.js.map +1 -1
- package/dist/cjs/formik/TreeSelect.js +8 -5
- package/dist/cjs/formik/TreeSelect.js.map +1 -1
- package/dist/cjs/formik/index.js +11 -7
- package/dist/cjs/formik/index.js.map +1 -1
- package/dist/cjs/{index-eifA8CnA.js → index-Dv40T5Ly.js} +195 -169
- package/dist/cjs/{index-eifA8CnA.js.map → index-Dv40T5Ly.js.map} +1 -1
- package/dist/cjs/{index--BeRLo6L.js → index-h3QcOeWw.js} +12 -14
- package/dist/cjs/{index--BeRLo6L.js.map → index-h3QcOeWw.js.map} +1 -1
- package/dist/cjs/index.css +1 -2
- package/dist/cjs/index.js +26 -10
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/layouts.js +8 -3
- package/dist/cjs/layouts.js.map +1 -1
- package/dist/cjs/overlayManager.js +1 -2
- package/dist/cjs/overlayManager.js.map +1 -1
- package/dist/cjs/{react-select-creatable.esm-Bdv9YAMt.js → react-select-creatable.esm-lcdODVBz.js} +449 -243
- package/dist/cjs/react-select-creatable.esm-lcdODVBz.js.map +1 -0
- package/dist/cjs/useId-DXHUzdxd.js.map +1 -1
- package/dist/cjs/{useOverlayManager-CxBh9gVG.js → useOverlayManager-Bj58uLfc.js} +14 -9
- package/dist/cjs/{useOverlayManager-CxBh9gVG.js.map → useOverlayManager-Bj58uLfc.js.map} +1 -1
- package/dist/cjs/useQueryParams-BrrbBvY_.js +18 -0
- package/dist/cjs/{useQueryParams-l5fJJYCR.js.map → useQueryParams-BrrbBvY_.js.map} +1 -1
- package/dist/cjs/useRecentlyUsedColors-BcOkiB-v.js +1239 -0
- package/dist/cjs/useRecentlyUsedColors-BcOkiB-v.js.map +1 -0
- package/dist/cjs/useRestoreScrollPosition-DP8SUs19.js +236 -0
- package/dist/cjs/useRestoreScrollPosition-DP8SUs19.js.map +1 -0
- package/dist/constants.js.map +1 -1
- package/dist/formik/ActionBlock.js +16 -9
- package/dist/formik/ActionBlock.js.map +1 -1
- package/dist/formik/BlockNavigation.js +41 -31
- package/dist/formik/BlockNavigation.js.map +1 -1
- package/dist/formik/Button.js +6 -4
- package/dist/formik/Button.js.map +1 -1
- package/dist/formik/Checkbox.js +30 -29
- package/dist/formik/Checkbox.js.map +1 -1
- package/dist/formik/Form.js +54 -48
- package/dist/formik/Form.js.map +1 -1
- package/dist/formik/Input.js +28 -27
- package/dist/formik/Input.js.map +1 -1
- package/dist/formik/MultiEmailInput.js +11 -7
- package/dist/formik/MultiEmailInput.js.map +1 -1
- package/dist/formik/Radio.js +7 -7
- package/dist/formik/Radio.js.map +1 -1
- package/dist/formik/Select.js +17 -12
- package/dist/formik/Select.js.map +1 -1
- package/dist/formik/Slider.js +8 -8
- package/dist/formik/Slider.js.map +1 -1
- package/dist/formik/Switch.js +31 -28
- package/dist/formik/Switch.js.map +1 -1
- package/dist/formik/Textarea.js +29 -28
- package/dist/formik/Textarea.js.map +1 -1
- package/dist/formik/TreeSelect.js +9 -6
- package/dist/formik/TreeSelect.js.map +1 -1
- package/dist/formik/index.js +11 -7
- package/dist/formik/index.js.map +1 -1
- package/dist/{index-Dxaw6gl9.js → index-D6vmwyYl.js} +14 -16
- package/dist/index-D6vmwyYl.js.map +1 -0
- package/dist/{index-ITIifSw4.js → index-D6yXgUQN.js} +196 -170
- package/dist/{index-ITIifSw4.js.map → index-D6yXgUQN.js.map} +1 -1
- package/dist/index.css +1 -2
- package/dist/index.js +26 -10
- package/dist/index.js.map +1 -1
- package/dist/layouts.js +8 -3
- package/dist/layouts.js.map +1 -1
- package/dist/overlayManager.js +1 -2
- package/dist/overlayManager.js.map +1 -1
- package/dist/{react-select-creatable.esm-Dx_vEnyD.js → react-select-creatable.esm-opiJTCqo.js} +450 -244
- package/dist/react-select-creatable.esm-opiJTCqo.js.map +1 -0
- package/dist/useId-Jj9hXm-g.js.map +1 -1
- package/dist/{useOverlayManager-AZIGhUYS.js → useOverlayManager-BzuBvhPZ.js} +14 -9
- package/dist/{useOverlayManager-AZIGhUYS.js.map → useOverlayManager-BzuBvhPZ.js.map} +1 -1
- package/dist/useQueryParams-BKsf4FPY.js +16 -0
- package/dist/{useQueryParams-b60CHFUx.js.map → useQueryParams-BKsf4FPY.js.map} +1 -1
- package/dist/useRecentlyUsedColors-CtvdF-KQ.js +1236 -0
- package/dist/useRecentlyUsedColors-CtvdF-KQ.js.map +1 -0
- package/dist/useRestoreScrollPosition-BVX-mT5c.js +225 -0
- package/dist/useRestoreScrollPosition-BVX-mT5c.js.map +1 -0
- package/package.json +42 -48
- package/dist/cjs/react-select-creatable.esm-Bdv9YAMt.js.map +0 -1
- package/dist/cjs/useQueryParams-l5fJJYCR.js +0 -18
- package/dist/cjs/useRecentlyUsedColors-3cKx-eDH.js +0 -1270
- package/dist/cjs/useRecentlyUsedColors-3cKx-eDH.js.map +0 -1
- package/dist/cjs/useRestoreScrollPosition-PsoENtiB.js +0 -218
- package/dist/cjs/useRestoreScrollPosition-PsoENtiB.js.map +0 -1
- package/dist/index-Dxaw6gl9.js.map +0 -1
- package/dist/react-select-creatable.esm-Dx_vEnyD.js.map +0 -1
- package/dist/useQueryParams-b60CHFUx.js +0 -16
- package/dist/useRecentlyUsedColors-CqUfqfck.js +0 -1267
- package/dist/useRecentlyUsedColors-CqUfqfck.js.map +0 -1
- package/dist/useRestoreScrollPosition-C1NSANQW.js +0 -207
- package/dist/useRestoreScrollPosition-C1NSANQW.js.map +0 -1
- package/src/translations/ar.json +0 -41
- package/src/translations/bg.json +0 -41
- package/src/translations/ca.json +0 -41
- package/src/translations/cs.json +0 -41
- package/src/translations/da.json +0 -41
- package/src/translations/de.json +0 -41
- package/src/translations/en.json +0 -41
- package/src/translations/es-MX.json +0 -41
- package/src/translations/es.json +0 -41
- package/src/translations/et.json +0 -41
- package/src/translations/fi.json +0 -41
- package/src/translations/fil.json +0 -41
- package/src/translations/fr.json +0 -41
- package/src/translations/hi.json +0 -41
- package/src/translations/hr.json +0 -41
- package/src/translations/id.json +0 -41
- package/src/translations/index.js +0 -18
- package/src/translations/it.json +0 -41
- package/src/translations/ja.json +0 -41
- package/src/translations/ko.json +0 -41
- package/src/translations/nl.json +0 -41
- package/src/translations/pl.json +0 -41
- package/src/translations/pt-BR.json +0 -41
- package/src/translations/pt.json +0 -41
- package/src/translations/ro.json +0 -41
- package/src/translations/ru.json +0 -41
- package/src/translations/sk.json +0 -41
- package/src/translations/sl.json +0 -41
- package/src/translations/sv.json +0 -41
- package/src/translations/th.json +0 -41
- package/src/translations/tr.json +0 -41
- package/src/translations/uk.json +0 -41
- package/src/translations/vi.json +0 -41
- package/src/translations/zh-CN.json +0 -41
- package/src/translations/zh-TW.json +0 -41
package/dist/cjs/Input.js
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
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 _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');
|
|
8
|
+
var ramda = require('ramda');
|
|
9
9
|
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
|
|
13
|
+
var index = require('./index-h3QcOeWw.js');
|
|
14
14
|
require('qs');
|
|
15
|
-
var ramda = require('ramda');
|
|
16
15
|
var Label = require('./Label.js');
|
|
16
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
17
17
|
require('@babel/runtime/helpers/classCallCheck');
|
|
18
18
|
require('@babel/runtime/helpers/createClass');
|
|
19
19
|
require('@bigbinary/neeto-cist');
|
|
@@ -24,7 +24,7 @@ require('dayjs/plugin/localeData');
|
|
|
24
24
|
require('dayjs/plugin/utc');
|
|
25
25
|
require('dayjs/plugin/weekday');
|
|
26
26
|
require('dayjs/plugin/weekOfYear');
|
|
27
|
-
require('@bigbinary/neeto-icons');
|
|
27
|
+
require('@bigbinary/neeto-icons/Help');
|
|
28
28
|
require('./Button.js');
|
|
29
29
|
require('./Spinner.js');
|
|
30
30
|
require('./Tooltip.js');
|
|
@@ -84,13 +84,10 @@ var preserveCursor = function preserveCursor(e, updateValueFn) {
|
|
|
84
84
|
};
|
|
85
85
|
|
|
86
86
|
var _excluded = ["size", "type", "label", "dataCy", "error", "suffix", "prefix", "disabled", "helpText", "className", "nakedInput", "contentSize", "required", "maxLength", "unlimitedChars", "labelProps", "rejectCharsRegex", "onBlur", "disableTrimOnBlur", "precision"];
|
|
87
|
-
function ownKeys(
|
|
88
|
-
function _objectSpread(
|
|
87
|
+
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; }
|
|
88
|
+
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; }
|
|
89
89
|
var SIZES = {
|
|
90
|
-
|
|
91
|
-
medium: "medium",
|
|
92
|
-
large: "large"
|
|
93
|
-
};
|
|
90
|
+
medium: "medium"};
|
|
94
91
|
var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
95
92
|
var _ref2, _formatWithPrecision;
|
|
96
93
|
var _ref$size = _ref.size,
|
|
@@ -146,7 +143,7 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
146
143
|
if (!otherProps.onChange || !otherProps.value) {
|
|
147
144
|
setValueInternal(e.target.value);
|
|
148
145
|
}
|
|
149
|
-
(_otherProps$onChange = otherProps.onChange) === null || _otherProps$onChange === void 0
|
|
146
|
+
(_otherProps$onChange = otherProps.onChange) === null || _otherProps$onChange === void 0 ? void 0 : _otherProps$onChange.call(otherProps, e);
|
|
150
147
|
};
|
|
151
148
|
var isMaxLengthPresent = !!maxLength || maxLength === 0;
|
|
152
149
|
var handleChange = function handleChange(e) {
|
|
@@ -158,14 +155,19 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
158
155
|
formattedValue = enforceDecimalPrecision(formattedValue, precision);
|
|
159
156
|
if (formattedValue !== e.target.value) {
|
|
160
157
|
preserveCursor(e, function () {
|
|
161
|
-
return
|
|
158
|
+
return ramda.mergeDeepLeft({
|
|
159
|
+
target: {
|
|
160
|
+
value: formattedValue
|
|
161
|
+
}
|
|
162
|
+
}, e);
|
|
162
163
|
});
|
|
164
|
+
} else {
|
|
165
|
+
onChange(e);
|
|
163
166
|
}
|
|
164
|
-
onChange(e);
|
|
165
167
|
};
|
|
166
168
|
var handleOnBlur = function handleOnBlur(e) {
|
|
167
169
|
if (type === "file") {
|
|
168
|
-
onBlur === null || onBlur === void 0
|
|
170
|
+
onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
|
|
169
171
|
return;
|
|
170
172
|
}
|
|
171
173
|
var trimmedValue = getTrimmedValue(value, disableTrimOnBlur);
|
|
@@ -174,66 +176,76 @@ var Input = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
|
174
176
|
e.target.value = formattedValue;
|
|
175
177
|
handleChange(e);
|
|
176
178
|
}
|
|
177
|
-
onBlur === null || onBlur === void 0
|
|
179
|
+
onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);
|
|
178
180
|
};
|
|
179
181
|
var handleOnWheel = function handleOnWheel(e) {
|
|
180
182
|
if (type === "number") e.target.blur();
|
|
181
183
|
};
|
|
182
184
|
var dataCyLabel = typeof label === "string" ? index.hyphenize(label) : index.hyphenize(dataCy);
|
|
183
|
-
return /*#__PURE__*/
|
|
184
|
-
className: classnames(["neeto-ui-input__wrapper", className])
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
"
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
"
|
|
201
|
-
"neeto-ui-input
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
185
|
+
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
186
|
+
className: classnames(["neeto-ui-input__wrapper", className]),
|
|
187
|
+
children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
188
|
+
className: "neeto-ui-input__label-wrapper",
|
|
189
|
+
children: [label && /*#__PURE__*/jsxRuntime.jsx(Label, _objectSpread(_objectSpread({
|
|
190
|
+
required: required,
|
|
191
|
+
"data-cy": "".concat(dataCyLabel, "-input-label"),
|
|
192
|
+
htmlFor: id
|
|
193
|
+
}, labelProps), {}, {
|
|
194
|
+
children: label
|
|
195
|
+
})), isCharacterLimitVisible && /*#__PURE__*/jsxRuntime.jsxs("p", {
|
|
196
|
+
className: classnames("neeto-ui-input__max-length", {
|
|
197
|
+
"neeto-ui-input__max-length--error": maxLengthError
|
|
198
|
+
}),
|
|
199
|
+
children: [valueLength, "/", maxLength]
|
|
200
|
+
})]
|
|
201
|
+
}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
202
|
+
"data-cy": "".concat(dataCyLabel, "-input"),
|
|
203
|
+
className: classnames("neeto-ui-input", {
|
|
204
|
+
"neeto-ui-input--naked": !!nakedInput,
|
|
205
|
+
"neeto-ui-input--error": !!error,
|
|
206
|
+
"neeto-ui-input--disabled": !!disabled,
|
|
207
|
+
"neeto-ui-input--small": size === "small",
|
|
208
|
+
"neeto-ui-input--medium": size === "medium",
|
|
209
|
+
"neeto-ui-input--large": size === "large"
|
|
210
|
+
}),
|
|
211
|
+
children: [prefix && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
212
|
+
className: "neeto-ui-input__prefix",
|
|
213
|
+
children: prefix
|
|
214
|
+
}), /*#__PURE__*/jsxRuntime.jsx("input", _objectSpread(_objectSpread({
|
|
215
|
+
"aria-invalid": !!error,
|
|
216
|
+
"data-cy": "".concat(dataCyLabel, "-input-field"),
|
|
217
|
+
size: contentSize,
|
|
218
|
+
"aria-describedby": classnames(_defineProperty(_defineProperty({}, errorId, !!error), helpTextId, helpText))
|
|
219
|
+
}, _objectSpread(_objectSpread(_objectSpread({
|
|
220
|
+
disabled: disabled,
|
|
221
|
+
id: id,
|
|
222
|
+
ref: ref,
|
|
223
|
+
required: required,
|
|
224
|
+
type: type
|
|
225
|
+
}, isMaxLengthPresent && !unlimitedChars && {
|
|
226
|
+
maxLength: maxLength
|
|
227
|
+
}), otherProps), {}, {
|
|
228
|
+
value: value
|
|
229
|
+
})), {}, {
|
|
230
|
+
onBlur: handleOnBlur,
|
|
231
|
+
onChange: handleChange,
|
|
232
|
+
onWheel: handleOnWheel
|
|
233
|
+
})), suffix && /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
234
|
+
className: "neeto-ui-input__suffix",
|
|
235
|
+
children: suffix
|
|
236
|
+
})]
|
|
237
|
+
}), !!error && /*#__PURE__*/jsxRuntime.jsx("p", {
|
|
238
|
+
className: "neeto-ui-input__error",
|
|
239
|
+
"data-cy": "".concat(dataCyLabel, "-input-error"),
|
|
240
|
+
id: errorId,
|
|
241
|
+
children: error
|
|
242
|
+
}), helpText && /*#__PURE__*/jsxRuntime.jsx("p", {
|
|
243
|
+
className: "neeto-ui-input__help-text",
|
|
244
|
+
"data-cy": "".concat(dataCyLabel, "-input-help"),
|
|
245
|
+
id: helpTextId,
|
|
246
|
+
children: helpText
|
|
247
|
+
})]
|
|
248
|
+
});
|
|
237
249
|
});
|
|
238
250
|
Input.displayName = "Input";
|
|
239
251
|
|
package/dist/cjs/Input.js.map
CHANGED
|
@@ -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 input.setSelectionRange(newCursor, newCursor);\n });\n};\n","import React, { useState, forwardRef } from \"react\";\n\nimport classnames from \"classnames\";\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 dataCy = \"\",\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, () => (e.target.value = formattedValue));\n }\n\n onChange(e);\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 dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${dataCyLabel}-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","setSelectionRange","SIZES","small","medium","large","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","handleOnBlur","trimmedValue","handleOnWheel","blur","dataCyLabel","hyphenize","React","createElement","classnames","Label","_extends","htmlFor","_defineProperty","_objectSpread","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 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 dataCy = \"\",\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 dataCyLabel =\n typeof label === \"string\" ? hyphenize(label) : hyphenize(dataCy);\n\n return (\n <div className={classnames([\"neeto-ui-input__wrapper\", className])}>\n <div className=\"neeto-ui-input__label-wrapper\">\n {label && (\n <Label\n {...{ required }}\n data-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-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-cy={`${dataCyLabel}-input-error`}\n id={errorId}\n >\n {error}\n </p>\n )}\n {helpText && (\n <p\n className=\"neeto-ui-input__help-text\"\n data-cy={`${dataCyLabel}-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","setSelectionRange","SIZES","small","medium","Input","forwardRef","_ref","ref","_ref2","_formatWithPrecision","_ref$size","size","_ref$type","type","_ref$label","label","_ref$dataCy","dataCy","_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","dataCyLabel","hyphenize","_jsxs","classnames","children","_jsx","Label","_objectSpread","htmlFor","_defineProperty","onWheel","displayName"],"mappings":"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"}
|
package/dist/cjs/Kbd.js
CHANGED
|
@@ -1,26 +1,32 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
4
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
5
|
-
|
|
5
|
+
require('react');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
7
|
var Tooltip = require('./Tooltip.js');
|
|
8
|
-
require('
|
|
8
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
require('@babel/runtime/helpers/slicedToArray');
|
|
10
10
|
require('@tippyjs/react');
|
|
11
11
|
require('tippy.js');
|
|
12
12
|
|
|
13
13
|
var _excluded = ["keyName", "className", "tooltipProps"];
|
|
14
|
+
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; }
|
|
15
|
+
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; }
|
|
14
16
|
var Kbd = function Kbd(_ref) {
|
|
15
17
|
var keyName = _ref.keyName,
|
|
16
18
|
className = _ref.className,
|
|
17
19
|
tooltipProps = _ref.tooltipProps,
|
|
18
20
|
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
19
|
-
return /*#__PURE__*/
|
|
21
|
+
return /*#__PURE__*/jsxRuntime.jsx(Tooltip, _objectSpread(_objectSpread({
|
|
20
22
|
disabled: !tooltipProps
|
|
21
|
-
}, tooltipProps),
|
|
22
|
-
|
|
23
|
-
|
|
23
|
+
}, tooltipProps), {}, {
|
|
24
|
+
children: /*#__PURE__*/jsxRuntime.jsx("span", _objectSpread(_objectSpread({
|
|
25
|
+
className: classnames(["neeto-ui-kbd", className])
|
|
26
|
+
}, otherProps), {}, {
|
|
27
|
+
children: keyName
|
|
28
|
+
}))
|
|
29
|
+
}));
|
|
24
30
|
};
|
|
25
31
|
|
|
26
32
|
module.exports = Kbd;
|
package/dist/cjs/Kbd.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Kbd.js","sources":["../../src/components/Kbd.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Tooltip from \"./Tooltip\";\n\nconst Kbd = ({ keyName, className, tooltipProps, ...otherProps }) => (\n <Tooltip disabled={!tooltipProps} {...tooltipProps}>\n <span className={classnames([\"neeto-ui-kbd\", className])} {...otherProps}>\n {keyName}\n </span>\n </Tooltip>\n);\n\nKbd.propTypes = {\n /**\n * To specify keyboard key\n */\n keyName: PropTypes.string,\n /**\n * To provide additional class names to the Kbd.\n */\n className: PropTypes.string,\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default Kbd;\n"],"names":["Kbd","_ref","keyName","className","tooltipProps","otherProps","_objectWithoutProperties","_excluded","
|
|
1
|
+
{"version":3,"file":"Kbd.js","sources":["../../src/components/Kbd.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport Tooltip from \"./Tooltip\";\n\nconst Kbd = ({ keyName, className, tooltipProps, ...otherProps }) => (\n <Tooltip disabled={!tooltipProps} {...tooltipProps}>\n <span className={classnames([\"neeto-ui-kbd\", className])} {...otherProps}>\n {keyName}\n </span>\n </Tooltip>\n);\n\nKbd.propTypes = {\n /**\n * To specify keyboard key\n */\n keyName: PropTypes.string,\n /**\n * To provide additional class names to the Kbd.\n */\n className: PropTypes.string,\n /**\n * To specify the props to be passed to the tooltip.\n */\n tooltipProps: PropTypes.object,\n};\n\nexport default Kbd;\n"],"names":["Kbd","_ref","keyName","className","tooltipProps","otherProps","_objectWithoutProperties","_excluded","_jsx","Tooltip","_objectSpread","disabled","children","classnames"],"mappings":";;;;;;;;;;;;;;;AAOA,IAAMA,GAAG,GAAG,SAANA,GAAGA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMC,OAAO,GAAAD,IAAA,CAAPC,OAAO;IAAEC,SAAS,GAAAF,IAAA,CAATE,SAAS;IAAEC,YAAY,GAAAH,IAAA,CAAZG,YAAY;AAAKC,IAAAA,UAAU,GAAAC,wBAAA,CAAAL,IAAA,EAAAM,SAAA,CAAA;AAAA,EAAA,oBAC5DC,cAAA,CAACC,OAAO,EAAAC,aAAA,CAAAA,aAAA,CAAA;AAACC,IAAAA,QAAQ,EAAE,CAACP;AAAa,GAAA,EAAKA,YAAY,CAAA,EAAA,EAAA,EAAA;AAAAQ,IAAAA,QAAA,eAChDJ,cAAA,CAAA,MAAA,EAAAE,aAAA,CAAAA,aAAA,CAAA;AAAMP,MAAAA,SAAS,EAAEU,UAAU,CAAC,CAAC,cAAc,EAAEV,SAAS,CAAC;AAAE,KAAA,EAAKE,UAAU,CAAA,EAAA,EAAA,EAAA;AAAAO,MAAAA,QAAA,EACrEV;KAAO,CACJ;AAAC,GAAA,CACA,CAAC;AAAA;;;;"}
|
package/dist/cjs/Label.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
4
4
|
var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
|
|
5
5
|
var React = require('react');
|
|
6
6
|
var classnames = require('classnames');
|
|
7
|
-
var
|
|
8
|
-
var
|
|
7
|
+
var Help = require('@bigbinary/neeto-icons/Help');
|
|
8
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
9
9
|
var Button = require('./Button.js');
|
|
10
10
|
var Popover = require('./Popover.js');
|
|
11
11
|
var Tooltip = require('./Tooltip.js');
|
|
@@ -17,24 +17,29 @@ require('react-router-dom');
|
|
|
17
17
|
require('./Spinner.js');
|
|
18
18
|
|
|
19
19
|
var _excluded$2 = ["onClick", "className", "icon"];
|
|
20
|
+
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; }
|
|
21
|
+
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; }
|
|
20
22
|
var HelpIcon = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
|
|
21
23
|
var onClick = _ref.onClick,
|
|
22
24
|
className = _ref.className,
|
|
23
25
|
icon = _ref.icon,
|
|
24
26
|
otherProps = _objectWithoutProperties(_ref, _excluded$2);
|
|
25
|
-
var HelpIcon = icon ||
|
|
26
|
-
return /*#__PURE__*/
|
|
27
|
+
var HelpIcon = icon || Help;
|
|
28
|
+
return /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
27
29
|
onClick: onClick,
|
|
28
30
|
ref: ref,
|
|
29
|
-
className: classnames("neeto-ui-label__help-icon-wrap", _defineProperty({}, className, className))
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
31
|
+
className: classnames("neeto-ui-label__help-icon-wrap", _defineProperty({}, className, className)),
|
|
32
|
+
children: /*#__PURE__*/jsxRuntime.jsx(HelpIcon, _objectSpread$2({
|
|
33
|
+
size: 16
|
|
34
|
+
}, otherProps))
|
|
35
|
+
});
|
|
33
36
|
});
|
|
34
37
|
HelpIcon.displayName = "HelpIcon";
|
|
35
38
|
|
|
36
39
|
var _excluded$1 = ["tooltipProps", "popoverProps"],
|
|
37
40
|
_excluded2 = ["title", "description", "helpLinkProps"];
|
|
41
|
+
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; }
|
|
42
|
+
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; }
|
|
38
43
|
var HelpContent = function HelpContent(_ref) {
|
|
39
44
|
var helpIconProps = _ref.helpIconProps;
|
|
40
45
|
var popoverReferenceElement = React.useRef();
|
|
@@ -43,42 +48,53 @@ var HelpContent = function HelpContent(_ref) {
|
|
|
43
48
|
popoverProps = _ref2.popoverProps,
|
|
44
49
|
otherHelpIconProps = _objectWithoutProperties(_ref2, _excluded$1);
|
|
45
50
|
if (tooltipProps) {
|
|
46
|
-
return /*#__PURE__*/
|
|
51
|
+
return /*#__PURE__*/jsxRuntime.jsx(Tooltip, _objectSpread$1(_objectSpread$1({}, tooltipProps), {}, {
|
|
52
|
+
children: /*#__PURE__*/jsxRuntime.jsx(HelpIcon, _objectSpread$1({}, otherHelpIconProps))
|
|
53
|
+
}));
|
|
47
54
|
}
|
|
48
55
|
if (popoverProps) {
|
|
49
56
|
var title = popoverProps.title,
|
|
50
57
|
description = popoverProps.description,
|
|
51
58
|
helpLinkProps = popoverProps.helpLinkProps,
|
|
52
59
|
otherPopoverProps = _objectWithoutProperties(popoverProps, _excluded2);
|
|
53
|
-
return /*#__PURE__*/
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
60
|
+
return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
|
|
61
|
+
children: [/*#__PURE__*/jsxRuntime.jsx(HelpIcon, _objectSpread$1(_objectSpread$1({}, otherHelpIconProps), {}, {
|
|
62
|
+
ref: popoverReferenceElement
|
|
63
|
+
})), /*#__PURE__*/jsxRuntime.jsx(Popover, _objectSpread$1(_objectSpread$1({
|
|
64
|
+
reference: popoverReferenceElement
|
|
65
|
+
}, otherPopoverProps), {}, {
|
|
66
|
+
children: /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
67
|
+
className: "neeto-ui-flex neeto-ui-flex-col",
|
|
68
|
+
children: [title && /*#__PURE__*/jsxRuntime.jsx(Popover.Title, {
|
|
69
|
+
"data-cy": "help-popover-title",
|
|
70
|
+
"data-testid": "help-popover-title",
|
|
71
|
+
children: title
|
|
72
|
+
}), typeof description === "string" ? /*#__PURE__*/jsxRuntime.jsx(Typography, {
|
|
73
|
+
"data-cy": "help-popover-description",
|
|
74
|
+
"data-testid": "help-popover-description",
|
|
75
|
+
lineHeight: "normal",
|
|
76
|
+
style: "body2",
|
|
77
|
+
weight: "normal",
|
|
78
|
+
children: description
|
|
79
|
+
}) : description, helpLinkProps && /*#__PURE__*/jsxRuntime.jsx(Button, _objectSpread$1(_objectSpread$1({
|
|
80
|
+
className: "neeto-ui-mt-3",
|
|
81
|
+
"data-cy": "help-popover-link-button",
|
|
82
|
+
size: "small"
|
|
83
|
+
}, helpLinkProps), {}, {
|
|
84
|
+
"data-testid": "help-popover-link-button",
|
|
85
|
+
style: "link",
|
|
86
|
+
target: "_blank"
|
|
87
|
+
}))]
|
|
88
|
+
})
|
|
89
|
+
}))]
|
|
90
|
+
});
|
|
77
91
|
}
|
|
78
|
-
return /*#__PURE__*/
|
|
92
|
+
return /*#__PURE__*/jsxRuntime.jsx(HelpIcon, _objectSpread$1({}, otherHelpIconProps));
|
|
79
93
|
};
|
|
80
94
|
|
|
81
95
|
var _excluded = ["children", "className", "required", "helpIconProps"];
|
|
96
|
+
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; }
|
|
97
|
+
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; }
|
|
82
98
|
var Label = function Label(_ref) {
|
|
83
99
|
var children = _ref.children,
|
|
84
100
|
_ref$className = _ref.className,
|
|
@@ -88,12 +104,15 @@ var Label = function Label(_ref) {
|
|
|
88
104
|
_ref$helpIconProps = _ref.helpIconProps,
|
|
89
105
|
helpIconProps = _ref$helpIconProps === void 0 ? null : _ref$helpIconProps,
|
|
90
106
|
props = _objectWithoutProperties(_ref, _excluded);
|
|
91
|
-
return /*#__PURE__*/
|
|
107
|
+
return /*#__PURE__*/jsxRuntime.jsxs("label", _objectSpread(_objectSpread({
|
|
92
108
|
className: classnames("neeto-ui-label neeto-ui-flex neeto-ui-items-center", className)
|
|
93
|
-
}, props),
|
|
94
|
-
"
|
|
95
|
-
|
|
96
|
-
|
|
109
|
+
}, props), {}, {
|
|
110
|
+
children: [children, required && /*#__PURE__*/jsxRuntime.jsx("span", {
|
|
111
|
+
"aria-hidden": true,
|
|
112
|
+
children: "*"
|
|
113
|
+
}), helpIconProps && /*#__PURE__*/jsxRuntime.jsx(HelpContent, {
|
|
114
|
+
helpIconProps: helpIconProps
|
|
115
|
+
})]
|
|
97
116
|
}));
|
|
98
117
|
};
|
|
99
118
|
|
package/dist/cjs/Label.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Label.js","sources":["../../src/components/Label/HelpIcon.jsx","../../src/components/Label/HelpContent.jsx","../../src/components/Label/index.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Help } from \"neetoicons\";\n\nconst HelpIcon = forwardRef(\n ({ onClick, className, icon, ...otherProps }, ref) => {\n const HelpIcon = icon || Help;\n\n return (\n <span\n {...{ onClick, ref }}\n className={classNames(\"neeto-ui-label__help-icon-wrap\", {\n [className]: className,\n })}\n >\n <HelpIcon size={16} {...otherProps} />\n </span>\n );\n }\n);\n\nHelpIcon.displayName = \"HelpIcon\";\n\nexport default HelpIcon;\n","import React, { useRef } from \"react\";\n\nimport HelpIcon from \"./HelpIcon\";\n\nimport Button from \"../Button\";\nimport Popover from \"../Popover\";\nimport Tooltip from \"../Tooltip\";\nimport Typography from \"../Typography\";\n\nconst HelpContent = ({ helpIconProps }) => {\n const popoverReferenceElement = useRef();\n\n const { tooltipProps, popoverProps, ...otherHelpIconProps } =\n helpIconProps || {};\n\n if (tooltipProps) {\n return (\n <Tooltip {...tooltipProps}>\n <HelpIcon {...otherHelpIconProps} />\n </Tooltip>\n );\n }\n\n if (popoverProps) {\n const { title, description, helpLinkProps, ...otherPopoverProps } =\n popoverProps;\n\n return (\n <>\n <HelpIcon {...otherHelpIconProps} ref={popoverReferenceElement} />\n <Popover reference={popoverReferenceElement} {...otherPopoverProps}>\n <div className=\"neeto-ui-flex neeto-ui-flex-col\">\n {title && (\n <Popover.Title\n data-cy=\"help-popover-title\"\n data-testid=\"help-popover-title\"\n >\n {title}\n </Popover.Title>\n )}\n {typeof description === \"string\" ? (\n <Typography\n data-cy=\"help-popover-description\"\n data-testid=\"help-popover-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps && (\n <Button\n className=\"neeto-ui-mt-3\"\n data-cy=\"help-popover-link-button\"\n size=\"small\"\n {...helpLinkProps}\n data-testid=\"help-popover-link-button\"\n style=\"link\"\n target=\"_blank\"\n />\n )}\n </div>\n </Popover>\n </>\n );\n }\n\n return <HelpIcon {...otherHelpIconProps} />;\n};\n\nexport default HelpContent;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport HelpContent from \"./HelpContent\";\n\nimport Button from \"../Button\";\nimport Tooltip from \"../Tooltip\";\n\nconst Label = ({\n children,\n className = \"\",\n required = false,\n helpIconProps = null,\n ...props\n}) => (\n <label\n className={classnames(\n \"neeto-ui-label neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n {...props}\n >\n {children}\n {required && <span aria-hidden>*</span>}\n {helpIconProps && <HelpContent {...{ helpIconProps }} />}\n </label>\n);\n\nLabel.propTypes = {\n /**\n * To specify the content to be rendered inside the Label.\n */\n children: PropTypes.node,\n /**\n * Provide external classnames to Label component.\n */\n className: PropTypes.string,\n /**\n * To specify whether to show the required asterisk.\n */\n required: PropTypes.bool,\n /**\n * Props for the help icon\n */\n helpIconProps: PropTypes.shape({\n onClick: PropTypes.func,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n tooltipProps: PropTypes.shape({ ...Tooltip.propTypes }),\n popoverProps: PropTypes.shape({\n title: PropTypes.node,\n description: PropTypes.node,\n helpLinkProps: PropTypes.shape({ ...Button.propTypes }),\n }),\n className: PropTypes.string,\n }),\n};\n\nexport default Label;\n"],"names":["HelpIcon","forwardRef","_ref","ref","onClick","className","icon","otherProps","_objectWithoutProperties","_excluded","Help","
|
|
1
|
+
{"version":3,"file":"Label.js","sources":["../../src/components/Label/HelpIcon.jsx","../../src/components/Label/HelpContent.jsx","../../src/components/Label/index.jsx"],"sourcesContent":["import React, { forwardRef } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Help } from \"neetoicons\";\n\nconst HelpIcon = forwardRef(\n ({ onClick, className, icon, ...otherProps }, ref) => {\n const HelpIcon = icon || Help;\n\n return (\n <span\n {...{ onClick, ref }}\n className={classNames(\"neeto-ui-label__help-icon-wrap\", {\n [className]: className,\n })}\n >\n <HelpIcon size={16} {...otherProps} />\n </span>\n );\n }\n);\n\nHelpIcon.displayName = \"HelpIcon\";\n\nexport default HelpIcon;\n","import React, { useRef } from \"react\";\n\nimport HelpIcon from \"./HelpIcon\";\n\nimport Button from \"../Button\";\nimport Popover from \"../Popover\";\nimport Tooltip from \"../Tooltip\";\nimport Typography from \"../Typography\";\n\nconst HelpContent = ({ helpIconProps }) => {\n const popoverReferenceElement = useRef();\n\n const { tooltipProps, popoverProps, ...otherHelpIconProps } =\n helpIconProps || {};\n\n if (tooltipProps) {\n return (\n <Tooltip {...tooltipProps}>\n <HelpIcon {...otherHelpIconProps} />\n </Tooltip>\n );\n }\n\n if (popoverProps) {\n const { title, description, helpLinkProps, ...otherPopoverProps } =\n popoverProps;\n\n return (\n <>\n <HelpIcon {...otherHelpIconProps} ref={popoverReferenceElement} />\n <Popover reference={popoverReferenceElement} {...otherPopoverProps}>\n <div className=\"neeto-ui-flex neeto-ui-flex-col\">\n {title && (\n <Popover.Title\n data-cy=\"help-popover-title\"\n data-testid=\"help-popover-title\"\n >\n {title}\n </Popover.Title>\n )}\n {typeof description === \"string\" ? (\n <Typography\n data-cy=\"help-popover-description\"\n data-testid=\"help-popover-description\"\n lineHeight=\"normal\"\n style=\"body2\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps && (\n <Button\n className=\"neeto-ui-mt-3\"\n data-cy=\"help-popover-link-button\"\n size=\"small\"\n {...helpLinkProps}\n data-testid=\"help-popover-link-button\"\n style=\"link\"\n target=\"_blank\"\n />\n )}\n </div>\n </Popover>\n </>\n );\n }\n\n return <HelpIcon {...otherHelpIconProps} />;\n};\n\nexport default HelpContent;\n","import React from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport HelpContent from \"./HelpContent\";\n\nimport Button from \"../Button\";\nimport Tooltip from \"../Tooltip\";\n\nconst Label = ({\n children,\n className = \"\",\n required = false,\n helpIconProps = null,\n ...props\n}) => (\n <label\n className={classnames(\n \"neeto-ui-label neeto-ui-flex neeto-ui-items-center\",\n className\n )}\n {...props}\n >\n {children}\n {required && <span aria-hidden>*</span>}\n {helpIconProps && <HelpContent {...{ helpIconProps }} />}\n </label>\n);\n\nLabel.propTypes = {\n /**\n * To specify the content to be rendered inside the Label.\n */\n children: PropTypes.node,\n /**\n * Provide external classnames to Label component.\n */\n className: PropTypes.string,\n /**\n * To specify whether to show the required asterisk.\n */\n required: PropTypes.bool,\n /**\n * Props for the help icon\n */\n helpIconProps: PropTypes.shape({\n onClick: PropTypes.func,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n tooltipProps: PropTypes.shape({ ...Tooltip.propTypes }),\n popoverProps: PropTypes.shape({\n title: PropTypes.node,\n description: PropTypes.node,\n helpLinkProps: PropTypes.shape({ ...Button.propTypes }),\n }),\n className: PropTypes.string,\n }),\n};\n\nexport default Label;\n"],"names":["HelpIcon","forwardRef","_ref","ref","onClick","className","icon","otherProps","_objectWithoutProperties","_excluded","Help","_jsx","classNames","_defineProperty","children","_objectSpread","size","displayName","HelpContent","helpIconProps","popoverReferenceElement","useRef","_ref2","tooltipProps","popoverProps","otherHelpIconProps","Tooltip","title","description","helpLinkProps","otherPopoverProps","_excluded2","_jsxs","_Fragment","Popover","reference","Title","Typography","lineHeight","style","weight","Button","target","Label","_ref$className","_ref$required","required","_ref$helpIconProps","props","classnames"],"mappings":"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"}
|