rsuite 5.49.0 → 5.51.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +24 -0
- package/Cascader/styles/index.less +4 -4
- package/CheckTreePicker/styles/index.less +3 -3
- package/DatePicker/styles/index.less +1 -1
- package/DateRangePicker/styles/index.less +15 -5
- package/Dropdown/styles/index.less +5 -4
- package/Dropdown/styles/mixin.less +0 -11
- package/Form/styles/mixin.less +1 -2
- package/InputGroup/styles/index.less +0 -14
- package/InputPicker/styles/index.less +1 -1
- package/Picker/styles/index.less +33 -26
- package/Picker/styles/mixin.less +20 -16
- package/README.md +4 -4
- package/TagInput/styles/index.less +2 -2
- package/TagPicker/styles/index.less +5 -1
- package/TreePicker/styles/index.less +2 -2
- package/cjs/@types/common.d.ts +8 -0
- package/cjs/AutoComplete/AutoComplete.js +39 -37
- package/cjs/AutoComplete/Combobox.d.ts +8 -0
- package/cjs/AutoComplete/Combobox.js +31 -0
- package/cjs/Calendar/Calendar.d.ts +5 -1
- package/cjs/Calendar/CalendarContainer.d.ts +5 -1
- package/cjs/Calendar/CalendarContainer.js +35 -37
- package/cjs/Cascader/Cascader.js +58 -59
- package/cjs/Cascader/DropdownMenu.d.ts +3 -20
- package/cjs/Cascader/DropdownMenu.js +48 -48
- package/cjs/Cascader/TreeView.d.ts +24 -0
- package/cjs/Cascader/TreeView.js +174 -0
- package/cjs/CheckPicker/CheckPicker.d.ts +2 -2
- package/cjs/CheckPicker/CheckPicker.js +42 -44
- package/cjs/CheckTreePicker/CheckTreeNode.d.ts +2 -2
- package/cjs/CheckTreePicker/CheckTreeNode.js +31 -59
- package/cjs/CheckTreePicker/CheckTreePicker.js +81 -84
- package/cjs/DatePicker/DatePicker.d.ts +5 -1
- package/cjs/DatePicker/DatePicker.js +7 -10
- package/cjs/DatePicker/Toolbar.js +2 -1
- package/cjs/DateRangeInput/DateRangeInput.js +2 -2
- package/cjs/DateRangePicker/Calendar.js +24 -23
- package/cjs/DateRangePicker/DateRangePicker.d.ts +18 -4
- package/cjs/DateRangePicker/DateRangePicker.js +239 -202
- package/cjs/DateRangePicker/types.d.ts +11 -3
- package/cjs/DateRangePicker/utils.d.ts +2 -1
- package/cjs/DateRangePicker/utils.js +7 -5
- package/cjs/Form/Form.d.ts +14 -0
- package/cjs/Form/Form.js +39 -30
- package/cjs/Form/FormContext.d.ts +1 -0
- package/cjs/FormControl/FormControl.d.ts +11 -1
- package/cjs/FormControl/FormControl.js +40 -17
- package/cjs/FormGroup/FormGroup.js +2 -1
- package/cjs/InputPicker/InputPicker.js +108 -92
- package/cjs/InputPicker/InputSearch.js +3 -15
- package/cjs/InputPicker/TagList.d.ts +3 -0
- package/cjs/InputPicker/TagList.js +29 -0
- package/cjs/InputPicker/TextBox.d.ts +18 -0
- package/cjs/InputPicker/TextBox.js +48 -0
- package/cjs/MultiCascader/MultiCascader.js +53 -52
- package/cjs/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
- package/cjs/MultiCascader/{DropdownMenu.js → TreeView.js} +77 -74
- package/{esm/Picker/DropdownMenuCheckItem.d.ts → cjs/Picker/ListCheckItem.d.ts} +3 -3
- package/cjs/Picker/{DropdownMenuCheckItem.js → ListCheckItem.js} +14 -30
- package/cjs/Picker/{DropdownMenuItem.d.ts → ListItem.d.ts} +4 -4
- package/cjs/Picker/{DropdownMenuItem.js → ListItem.js} +15 -24
- package/cjs/Picker/ListItemGroup.d.ts +6 -0
- package/cjs/Picker/{DropdownMenuGroup.js → ListItemGroup.js} +3 -9
- package/cjs/Picker/Listbox.d.ts +35 -0
- package/cjs/Picker/{DropdownMenu.js → Listbox.js} +49 -64
- package/cjs/{DatePicker → Picker}/PickerIndicator.d.ts +1 -1
- package/cjs/{DatePicker → Picker}/PickerIndicator.js +2 -1
- package/cjs/{DatePicker → Picker}/PickerLabel.d.ts +1 -1
- package/cjs/Picker/{PickerOverlay.d.ts → PickerPopup.d.ts} +3 -3
- package/cjs/Picker/{PickerOverlay.js → PickerPopup.js} +9 -7
- package/cjs/Picker/PickerToggle.d.ts +17 -22
- package/cjs/Picker/PickerToggle.js +63 -181
- package/cjs/Picker/PickerToggleTrigger.d.ts +15 -0
- package/cjs/Picker/PickerToggleTrigger.js +21 -5
- package/cjs/Picker/SearchBar.js +7 -9
- package/cjs/Picker/TreeView.d.ts +7 -0
- package/cjs/Picker/TreeView.js +31 -0
- package/cjs/Picker/hooks/index.d.ts +6 -0
- package/cjs/Picker/hooks/index.js +18 -0
- package/cjs/Picker/hooks/useCombobox.d.ts +7 -0
- package/cjs/Picker/hooks/useCombobox.js +22 -0
- package/cjs/Picker/hooks/useFocusItemValue.d.ts +30 -0
- package/cjs/Picker/hooks/useFocusItemValue.js +246 -0
- package/cjs/Picker/hooks/usePickerClassName.d.ts +21 -0
- package/cjs/Picker/hooks/usePickerClassName.js +39 -0
- package/cjs/Picker/{usePickerRef.d.ts → hooks/usePickerRef.d.ts} +5 -3
- package/cjs/Picker/{usePickerRef.js → hooks/usePickerRef.js} +13 -7
- package/cjs/Picker/hooks/useSearch.d.ts +18 -0
- package/cjs/Picker/hooks/useSearch.js +57 -0
- package/cjs/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
- package/cjs/Picker/hooks/useToggleKeyDownEvent.js +101 -0
- package/cjs/Picker/index.d.ts +9 -5
- package/cjs/Picker/index.js +32 -16
- package/cjs/Picker/propTypes.d.ts +0 -6
- package/cjs/Picker/propTypes.js +0 -5
- package/cjs/Picker/utils.d.ts +2 -100
- package/cjs/Picker/utils.js +1 -473
- package/cjs/SelectPicker/SelectPicker.d.ts +2 -2
- package/cjs/SelectPicker/SelectPicker.js +47 -50
- package/cjs/TagInput/index.js +4 -0
- package/cjs/TreePicker/TreeNode.d.ts +2 -2
- package/cjs/TreePicker/TreeNode.js +22 -56
- package/cjs/TreePicker/TreePicker.js +91 -95
- package/cjs/utils/constants.d.ts +2 -1
- package/cjs/utils/constants.js +1 -0
- package/cjs/utils/dateUtils.d.ts +0 -1
- package/cjs/utils/dateUtils.js +0 -6
- package/cjs/utils/getStringLength.d.ts +2 -0
- package/cjs/utils/getStringLength.js +18 -0
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.js +4 -1
- package/dist/rsuite-no-reset-rtl.css +201 -186
- package/dist/rsuite-no-reset-rtl.min.css +1 -1
- package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
- package/dist/rsuite-no-reset.css +201 -186
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +201 -186
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +201 -186
- package/dist/rsuite.js +235 -104
- package/dist/rsuite.js.map +1 -1
- package/dist/rsuite.min.css +1 -1
- package/dist/rsuite.min.css.map +1 -1
- package/dist/rsuite.min.js +1 -1
- package/dist/rsuite.min.js.map +1 -1
- package/esm/@types/common.d.ts +8 -0
- package/esm/AutoComplete/AutoComplete.js +42 -40
- package/esm/AutoComplete/Combobox.d.ts +8 -0
- package/esm/AutoComplete/Combobox.js +25 -0
- package/esm/Calendar/Calendar.d.ts +5 -1
- package/esm/Calendar/CalendarContainer.d.ts +5 -1
- package/esm/Calendar/CalendarContainer.js +37 -39
- package/esm/Cascader/Cascader.js +61 -62
- package/esm/Cascader/DropdownMenu.d.ts +3 -20
- package/esm/Cascader/DropdownMenu.js +50 -49
- package/esm/Cascader/TreeView.d.ts +24 -0
- package/esm/Cascader/TreeView.js +167 -0
- package/esm/CheckPicker/CheckPicker.d.ts +2 -2
- package/esm/CheckPicker/CheckPicker.js +45 -47
- package/esm/CheckTreePicker/CheckTreeNode.d.ts +2 -2
- package/esm/CheckTreePicker/CheckTreeNode.js +33 -61
- package/esm/CheckTreePicker/CheckTreePicker.js +84 -87
- package/esm/DatePicker/DatePicker.d.ts +5 -1
- package/esm/DatePicker/DatePicker.js +5 -8
- package/esm/DatePicker/Toolbar.js +2 -1
- package/esm/DateRangeInput/DateRangeInput.js +2 -2
- package/esm/DateRangePicker/Calendar.js +25 -23
- package/esm/DateRangePicker/DateRangePicker.d.ts +18 -4
- package/esm/DateRangePicker/DateRangePicker.js +241 -204
- package/esm/DateRangePicker/types.d.ts +11 -3
- package/esm/DateRangePicker/utils.d.ts +2 -1
- package/esm/DateRangePicker/utils.js +7 -5
- package/esm/Form/Form.d.ts +14 -0
- package/esm/Form/Form.js +41 -32
- package/esm/Form/FormContext.d.ts +1 -0
- package/esm/FormControl/FormControl.d.ts +11 -1
- package/esm/FormControl/FormControl.js +41 -18
- package/esm/FormGroup/FormGroup.js +3 -2
- package/esm/InputPicker/InputPicker.js +110 -94
- package/esm/InputPicker/InputSearch.js +4 -15
- package/esm/InputPicker/TagList.d.ts +3 -0
- package/esm/InputPicker/TagList.js +23 -0
- package/esm/InputPicker/TextBox.d.ts +18 -0
- package/esm/InputPicker/TextBox.js +42 -0
- package/esm/MultiCascader/MultiCascader.js +56 -55
- package/esm/MultiCascader/{DropdownMenu.d.ts → TreeView.d.ts} +3 -3
- package/esm/MultiCascader/{DropdownMenu.js → TreeView.js} +79 -75
- package/{cjs/Picker/DropdownMenuCheckItem.d.ts → esm/Picker/ListCheckItem.d.ts} +3 -3
- package/esm/Picker/{DropdownMenuCheckItem.js → ListCheckItem.js} +15 -30
- package/esm/Picker/{DropdownMenuItem.d.ts → ListItem.d.ts} +4 -4
- package/esm/Picker/{DropdownMenuItem.js → ListItem.js} +16 -24
- package/esm/Picker/ListItemGroup.d.ts +6 -0
- package/esm/Picker/{DropdownMenuGroup.js → ListItemGroup.js} +3 -9
- package/esm/Picker/Listbox.d.ts +35 -0
- package/esm/Picker/{DropdownMenu.js → Listbox.js} +50 -64
- package/esm/{DatePicker → Picker}/PickerIndicator.d.ts +1 -1
- package/esm/{DatePicker → Picker}/PickerIndicator.js +2 -1
- package/esm/{DatePicker → Picker}/PickerLabel.d.ts +1 -1
- package/esm/Picker/{PickerOverlay.d.ts → PickerPopup.d.ts} +3 -3
- package/esm/Picker/{PickerOverlay.js → PickerPopup.js} +10 -8
- package/esm/Picker/PickerToggle.d.ts +17 -22
- package/esm/Picker/PickerToggle.js +65 -183
- package/esm/Picker/PickerToggleTrigger.d.ts +15 -0
- package/esm/Picker/PickerToggleTrigger.js +20 -5
- package/esm/Picker/SearchBar.js +8 -9
- package/esm/Picker/TreeView.d.ts +7 -0
- package/esm/Picker/TreeView.js +25 -0
- package/esm/Picker/hooks/index.d.ts +6 -0
- package/esm/Picker/hooks/index.js +7 -0
- package/esm/Picker/hooks/useCombobox.d.ts +7 -0
- package/esm/Picker/hooks/useCombobox.js +17 -0
- package/esm/Picker/hooks/useFocusItemValue.d.ts +30 -0
- package/esm/Picker/hooks/useFocusItemValue.js +240 -0
- package/esm/Picker/hooks/usePickerClassName.d.ts +21 -0
- package/esm/Picker/hooks/usePickerClassName.js +33 -0
- package/esm/Picker/{usePickerRef.d.ts → hooks/usePickerRef.d.ts} +5 -3
- package/esm/Picker/{usePickerRef.js → hooks/usePickerRef.js} +13 -8
- package/esm/Picker/hooks/useSearch.d.ts +18 -0
- package/esm/Picker/hooks/useSearch.js +51 -0
- package/esm/Picker/hooks/useToggleKeyDownEvent.d.ts +25 -0
- package/esm/Picker/hooks/useToggleKeyDownEvent.js +96 -0
- package/esm/Picker/index.d.ts +9 -5
- package/esm/Picker/index.js +9 -5
- package/esm/Picker/propTypes.d.ts +0 -6
- package/esm/Picker/propTypes.js +0 -5
- package/esm/Picker/utils.d.ts +2 -100
- package/esm/Picker/utils.js +2 -467
- package/esm/SelectPicker/SelectPicker.d.ts +2 -2
- package/esm/SelectPicker/SelectPicker.js +50 -53
- package/esm/TagInput/index.js +4 -0
- package/esm/TreePicker/TreeNode.d.ts +2 -2
- package/esm/TreePicker/TreeNode.js +24 -58
- package/esm/TreePicker/TreePicker.js +94 -98
- package/esm/utils/constants.d.ts +2 -1
- package/esm/utils/constants.js +1 -0
- package/esm/utils/dateUtils.d.ts +0 -1
- package/esm/utils/dateUtils.js +0 -5
- package/esm/utils/getStringLength.d.ts +2 -0
- package/esm/utils/getStringLength.js +13 -0
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.js +1 -0
- package/package.json +1 -1
- package/styles/mixins/combobox.less +10 -0
- package/styles/variables.less +1 -3
- package/cjs/Picker/DropdownMenu.d.ts +0 -59
- package/cjs/Picker/DropdownMenuGroup.d.ts +0 -6
- package/esm/Picker/DropdownMenu.d.ts +0 -59
- package/esm/Picker/DropdownMenuGroup.d.ts +0 -6
- /package/cjs/{DatePicker → Picker}/PickerLabel.js +0 -0
- /package/esm/{DatePicker → Picker}/PickerLabel.js +0 -0
|
@@ -27,9 +27,20 @@ var _getDataGroupBy = require("../utils/getDataGroupBy");
|
|
|
27
27
|
var _Picker = require("../Picker");
|
|
28
28
|
var _Tag = _interopRequireDefault(require("../Tag"));
|
|
29
29
|
var _InputAutosize = _interopRequireDefault(require("./InputAutosize"));
|
|
30
|
-
var
|
|
30
|
+
var _TextBox = _interopRequireDefault(require("./TextBox"));
|
|
31
31
|
var _InputPickerContext = _interopRequireDefault(require("./InputPickerContext"));
|
|
32
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4
|
|
32
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
33
|
+
var convertSize = function convertSize(size) {
|
|
34
|
+
switch (size) {
|
|
35
|
+
case 'lg':
|
|
36
|
+
return 'lg';
|
|
37
|
+
case 'sm':
|
|
38
|
+
case 'xs':
|
|
39
|
+
return 'sm';
|
|
40
|
+
default:
|
|
41
|
+
return 'md';
|
|
42
|
+
}
|
|
43
|
+
};
|
|
33
44
|
/**
|
|
34
45
|
* Single item selector with text box input.
|
|
35
46
|
*
|
|
@@ -115,11 +126,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
115
126
|
if (groupBy === valueKey || groupBy === labelKey) {
|
|
116
127
|
throw Error('`groupBy` can not be equal to `valueKey` and `labelKey`');
|
|
117
128
|
}
|
|
118
|
-
var overlayRef = (0, _react.useRef)(null);
|
|
119
|
-
var targetRef = (0, _react.useRef)(null);
|
|
120
|
-
var triggerRef = (0, _react.useRef)(null);
|
|
121
129
|
var inputRef = (0, _react.useRef)();
|
|
122
|
-
var
|
|
130
|
+
var _usePickerRef = (0, _Picker.usePickerRef)(ref),
|
|
131
|
+
triggerRef = _usePickerRef.trigger,
|
|
132
|
+
root = _usePickerRef.root,
|
|
133
|
+
target = _usePickerRef.target,
|
|
134
|
+
overlay = _usePickerRef.overlay,
|
|
135
|
+
list = _usePickerRef.list;
|
|
123
136
|
var _useCustom = (0, _utils.useCustom)(['Picker', 'InputPicker'], overrideLocale),
|
|
124
137
|
locale = _useCustom.locale;
|
|
125
138
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
@@ -148,34 +161,34 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
148
161
|
value = _useControlled[0],
|
|
149
162
|
setValue = _useControlled[1],
|
|
150
163
|
isControlled = _useControlled[2];
|
|
151
|
-
var cloneValue =
|
|
164
|
+
var cloneValue = function cloneValue() {
|
|
152
165
|
return multi ? (0, _clone.default)(value) || [] : value;
|
|
153
|
-
}
|
|
154
|
-
var handleClose = (0,
|
|
155
|
-
var _triggerRef$current,
|
|
166
|
+
};
|
|
167
|
+
var handleClose = (0, _utils.useEventCallback)(function () {
|
|
168
|
+
var _triggerRef$current, _target$current, _target$current$focus;
|
|
156
169
|
triggerRef === null || triggerRef === void 0 ? void 0 : (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.close();
|
|
157
170
|
|
|
158
171
|
// The focus is on the trigger button after closing
|
|
159
|
-
(
|
|
160
|
-
}
|
|
172
|
+
(_target$current = target.current) === null || _target$current === void 0 ? void 0 : (_target$current$focus = _target$current.focus) === null || _target$current$focus === void 0 ? void 0 : _target$current$focus.call(_target$current);
|
|
173
|
+
});
|
|
161
174
|
|
|
162
175
|
// Used to hover the focuse item when trigger `onKeydown`
|
|
163
176
|
var _useFocusItemValue = (0, _Picker.useFocusItemValue)(multi ? value === null || value === void 0 ? void 0 : value[0] : value, {
|
|
164
177
|
data: getAllDataAndCache(),
|
|
165
178
|
valueKey: valueKey,
|
|
166
179
|
target: function target() {
|
|
167
|
-
return
|
|
180
|
+
return overlay.current;
|
|
168
181
|
}
|
|
169
182
|
}),
|
|
170
183
|
focusItemValue = _useFocusItemValue.focusItemValue,
|
|
171
184
|
setFocusItemValue = _useFocusItemValue.setFocusItemValue,
|
|
172
185
|
onKeyDown = _useFocusItemValue.onKeyDown;
|
|
173
|
-
var handleSearchCallback = (0,
|
|
186
|
+
var handleSearchCallback = (0, _utils.useEventCallback)(function (searchKeyword, filteredData, event) {
|
|
174
187
|
var _filteredData$;
|
|
175
188
|
// The first option after filtering is the focus.
|
|
176
189
|
setFocusItemValue(disabledOptions ? searchKeyword : (filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]) || searchKeyword);
|
|
177
190
|
onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);
|
|
178
|
-
}
|
|
191
|
+
});
|
|
179
192
|
|
|
180
193
|
// Use search keywords to filter options.
|
|
181
194
|
var _useSearch = (0, _Picker.useSearch)(getAllData(), {
|
|
@@ -201,14 +214,16 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
201
214
|
if ((_triggerRef$current2 = triggerRef.current) !== null && _triggerRef$current2 !== void 0 && _triggerRef$current2.root) {
|
|
202
215
|
setMaxWidth((0, _getWidth.default)(triggerRef.current.root));
|
|
203
216
|
}
|
|
217
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
204
218
|
}, []);
|
|
205
219
|
|
|
206
220
|
// Update the position of the menu when the search keyword and value change
|
|
207
221
|
(0, _react.useEffect)(function () {
|
|
208
222
|
var _triggerRef$current3, _triggerRef$current3$;
|
|
209
223
|
(_triggerRef$current3 = triggerRef.current) === null || _triggerRef$current3 === void 0 ? void 0 : (_triggerRef$current3$ = _triggerRef$current3.updatePosition) === null || _triggerRef$current3$ === void 0 ? void 0 : _triggerRef$current3$.call(_triggerRef$current3);
|
|
224
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
210
225
|
}, [searchKeyword, value]);
|
|
211
|
-
var
|
|
226
|
+
var getDataItem = function getDataItem(value) {
|
|
212
227
|
// Find active `MenuItem` by `value`
|
|
213
228
|
var allData = getAllDataAndCache();
|
|
214
229
|
var activeItem = allData.find(function (item) {
|
|
@@ -224,23 +239,23 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
224
239
|
itemNode: itemNode
|
|
225
240
|
};
|
|
226
241
|
};
|
|
227
|
-
var getInput =
|
|
242
|
+
var getInput = function getInput() {
|
|
228
243
|
var _inputRef$current;
|
|
229
244
|
return multi ? (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.input : inputRef.current;
|
|
230
|
-
}
|
|
231
|
-
var focusInput =
|
|
245
|
+
};
|
|
246
|
+
var focusInput = function focusInput() {
|
|
232
247
|
var _getInput;
|
|
233
248
|
return (_getInput = getInput()) === null || _getInput === void 0 ? void 0 : _getInput.focus();
|
|
234
|
-
}
|
|
235
|
-
var blurInput =
|
|
249
|
+
};
|
|
250
|
+
var blurInput = function blurInput() {
|
|
236
251
|
var _getInput2;
|
|
237
252
|
return (_getInput2 = getInput()) === null || _getInput2 === void 0 ? void 0 : _getInput2.blur();
|
|
238
|
-
}
|
|
253
|
+
};
|
|
239
254
|
|
|
240
255
|
/**
|
|
241
256
|
* Convert the string of the newly created option into an object.
|
|
242
257
|
*/
|
|
243
|
-
var createOption =
|
|
258
|
+
var createOption = function createOption(value) {
|
|
244
259
|
var _ref2;
|
|
245
260
|
if (groupBy) {
|
|
246
261
|
var _ref;
|
|
@@ -251,11 +266,11 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
251
266
|
return _ref2 = {
|
|
252
267
|
create: true
|
|
253
268
|
}, _ref2[valueKey] = value, _ref2[labelKey] = value, _ref2;
|
|
254
|
-
}
|
|
255
|
-
var handleChange = (0,
|
|
269
|
+
};
|
|
270
|
+
var handleChange = (0, _utils.useEventCallback)(function (value, event) {
|
|
256
271
|
onChange === null || onChange === void 0 ? void 0 : onChange(value, event);
|
|
257
|
-
}
|
|
258
|
-
var handleRemoveItemByTag = (0,
|
|
272
|
+
});
|
|
273
|
+
var handleRemoveItemByTag = (0, _utils.useEventCallback)(function (tag, event) {
|
|
259
274
|
event.stopPropagation();
|
|
260
275
|
var val = cloneValue();
|
|
261
276
|
(0, _remove.default)(val, function (itemVal) {
|
|
@@ -264,15 +279,15 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
264
279
|
setValue(val);
|
|
265
280
|
handleChange(val, event);
|
|
266
281
|
onTagRemove === null || onTagRemove === void 0 ? void 0 : onTagRemove(tag, event);
|
|
267
|
-
}
|
|
268
|
-
var handleSelect = (0,
|
|
282
|
+
});
|
|
283
|
+
var handleSelect = (0, _utils.useEventCallback)(function (value, item, event) {
|
|
269
284
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(value, item, event);
|
|
270
285
|
if (creatable && item.create) {
|
|
271
286
|
delete item.create;
|
|
272
287
|
onCreate === null || onCreate === void 0 ? void 0 : onCreate(value, item, event);
|
|
273
288
|
setNewData(newData.concat(item));
|
|
274
289
|
}
|
|
275
|
-
}
|
|
290
|
+
});
|
|
276
291
|
|
|
277
292
|
/**
|
|
278
293
|
* Callback triggered by single selection
|
|
@@ -280,14 +295,14 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
280
295
|
* @param item
|
|
281
296
|
* @param event
|
|
282
297
|
*/
|
|
283
|
-
var handleSelectItem = function
|
|
298
|
+
var handleSelectItem = (0, _utils.useEventCallback)(function (value, item, event) {
|
|
284
299
|
setValue(value);
|
|
285
300
|
setFocusItemValue(value);
|
|
286
301
|
resetSearch();
|
|
287
302
|
handleSelect(value, item, event);
|
|
288
303
|
handleChange(value, event);
|
|
289
304
|
handleClose();
|
|
290
|
-
};
|
|
305
|
+
});
|
|
291
306
|
|
|
292
307
|
/**
|
|
293
308
|
* Callback triggered by multiple selection
|
|
@@ -296,7 +311,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
296
311
|
* @param event
|
|
297
312
|
* @param checked
|
|
298
313
|
*/
|
|
299
|
-
var handleCheckTag = function
|
|
314
|
+
var handleCheckTag = (0, _utils.useEventCallback)(function (nextItemValue, item, event, checked) {
|
|
300
315
|
var val = cloneValue();
|
|
301
316
|
if (checked) {
|
|
302
317
|
val.push(nextItemValue);
|
|
@@ -311,8 +326,8 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
311
326
|
handleSelect(val, item, event);
|
|
312
327
|
handleChange(val, event);
|
|
313
328
|
focusInput();
|
|
314
|
-
};
|
|
315
|
-
var handleTagKeyPress = (0,
|
|
329
|
+
});
|
|
330
|
+
var handleTagKeyPress = (0, _utils.useEventCallback)(function (event) {
|
|
316
331
|
// When composing, ignore the keypress event.
|
|
317
332
|
if (event.nativeEvent.isComposing) {
|
|
318
333
|
return;
|
|
@@ -348,8 +363,8 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
348
363
|
resetSearch();
|
|
349
364
|
handleSelect(val, focusItem, event);
|
|
350
365
|
handleChange(val, event);
|
|
351
|
-
}
|
|
352
|
-
var handleMenuItemKeyPress = (0,
|
|
366
|
+
});
|
|
367
|
+
var handleMenuItemKeyPress = (0, _utils.useEventCallback)(function (event) {
|
|
353
368
|
if (!focusItemValue || !controlledData) {
|
|
354
369
|
return;
|
|
355
370
|
}
|
|
@@ -378,19 +393,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
378
393
|
}
|
|
379
394
|
handleChange(focusItemValue, event);
|
|
380
395
|
handleClose();
|
|
381
|
-
}, [setValue, disabledItemValues, controlledData, focusItemValue, valueKey, searchKeyword, handleClose, resetSearch, createOption, getAllData, handleChange, handleSelect]);
|
|
382
|
-
(0, _Picker.usePublicMethods)(ref, {
|
|
383
|
-
triggerRef: triggerRef,
|
|
384
|
-
overlayRef: overlayRef,
|
|
385
|
-
targetRef: targetRef,
|
|
386
|
-
listRef: listRef
|
|
387
396
|
});
|
|
388
397
|
|
|
389
398
|
/**
|
|
390
399
|
* Remove the last item, after pressing the back key on the keyboard.
|
|
391
400
|
* @param event
|
|
392
401
|
*/
|
|
393
|
-
var removeLastItem = (0,
|
|
402
|
+
var removeLastItem = (0, _utils.useEventCallback)(function (event) {
|
|
394
403
|
var target = event === null || event === void 0 ? void 0 : event.target;
|
|
395
404
|
if ((target === null || target === void 0 ? void 0 : target.tagName) !== 'INPUT') {
|
|
396
405
|
focusInput();
|
|
@@ -403,8 +412,8 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
403
412
|
val.pop();
|
|
404
413
|
setValue(val);
|
|
405
414
|
handleChange(val, event);
|
|
406
|
-
}
|
|
407
|
-
var handleClean = (0,
|
|
415
|
+
});
|
|
416
|
+
var handleClean = (0, _utils.useEventCallback)(function (event) {
|
|
408
417
|
if (disabled || searchKeyword !== '') {
|
|
409
418
|
return;
|
|
410
419
|
}
|
|
@@ -417,14 +426,14 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
417
426
|
handleChange(null, event);
|
|
418
427
|
}
|
|
419
428
|
onClean === null || onClean === void 0 ? void 0 : onClean(event);
|
|
420
|
-
}
|
|
429
|
+
});
|
|
421
430
|
var events = {
|
|
422
431
|
onMenuPressBackspace: multi ? removeLastItem : handleClean,
|
|
423
432
|
onMenuKeyDown: onKeyDown,
|
|
424
433
|
onMenuPressEnter: undefined,
|
|
425
434
|
onKeyDown: undefined
|
|
426
435
|
};
|
|
427
|
-
var handleKeyPress = (0,
|
|
436
|
+
var handleKeyPress = (0, _utils.useEventCallback)(function (event) {
|
|
428
437
|
// When typing a space, create a tag.
|
|
429
438
|
if ((0, _utils.isOneOf)('Space', trigger) && event.key === _utils.KEY_VALUES.SPACE) {
|
|
430
439
|
handleTagKeyPress(event);
|
|
@@ -436,7 +445,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
436
445
|
handleTagKeyPress(event);
|
|
437
446
|
event.preventDefault();
|
|
438
447
|
}
|
|
439
|
-
}
|
|
448
|
+
});
|
|
440
449
|
if (multi) {
|
|
441
450
|
if ((0, _utils.isOneOf)('Enter', trigger)) {
|
|
442
451
|
events.onMenuPressEnter = handleTagKeyPress;
|
|
@@ -448,31 +457,31 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
448
457
|
events.onMenuPressEnter = handleMenuItemKeyPress;
|
|
449
458
|
}
|
|
450
459
|
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
460
|
+
trigger: triggerRef,
|
|
461
|
+
target: target,
|
|
462
|
+
overlay: overlay
|
|
454
463
|
}, events, rest));
|
|
455
|
-
var handleExited = (0,
|
|
464
|
+
var handleExited = (0, _utils.useEventCallback)(function () {
|
|
456
465
|
setFocusItemValue(multi ? value === null || value === void 0 ? void 0 : value[0] : value);
|
|
457
466
|
resetSearch();
|
|
458
467
|
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
459
|
-
}
|
|
460
|
-
var handleFocus = (0,
|
|
468
|
+
});
|
|
469
|
+
var handleFocus = (0, _utils.useEventCallback)(function () {
|
|
461
470
|
if (!readOnly) {
|
|
462
471
|
var _triggerRef$current4;
|
|
463
472
|
setOpen(true);
|
|
464
473
|
(_triggerRef$current4 = triggerRef.current) === null || _triggerRef$current4 === void 0 ? void 0 : _triggerRef$current4.open();
|
|
465
474
|
}
|
|
466
|
-
}
|
|
467
|
-
var handleEnter = (0,
|
|
475
|
+
});
|
|
476
|
+
var handleEnter = (0, _utils.useEventCallback)(function () {
|
|
468
477
|
focusInput();
|
|
469
478
|
setOpen(true);
|
|
470
|
-
}
|
|
471
|
-
var handleExit = (0,
|
|
479
|
+
});
|
|
480
|
+
var handleExit = (0, _utils.useEventCallback)(function () {
|
|
472
481
|
blurInput();
|
|
473
482
|
setOpen(false);
|
|
474
|
-
}
|
|
475
|
-
var
|
|
483
|
+
});
|
|
484
|
+
var renderListItem = function renderListItem(label, item) {
|
|
476
485
|
// 'Create option "{0}"' => Create option "xxxxx"
|
|
477
486
|
var newLabel = item.create ? /*#__PURE__*/_react.default.createElement("span", null, (0, _utils.tplTransform)(locale.createOption, label)) : label;
|
|
478
487
|
return renderMenuItem ? renderMenuItem(newLabel, item) : newLabel;
|
|
@@ -484,7 +493,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
484
493
|
itemNode: null
|
|
485
494
|
};
|
|
486
495
|
}
|
|
487
|
-
var dataItem =
|
|
496
|
+
var dataItem = getDataItem(value);
|
|
488
497
|
var itemNode = dataItem.itemNode;
|
|
489
498
|
if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {
|
|
490
499
|
itemNode = renderValue(value, dataItem.activeItem, itemNode);
|
|
@@ -505,17 +514,19 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
505
514
|
var tags = value || [];
|
|
506
515
|
var items = [];
|
|
507
516
|
var tagElements = tags.map(function (tag) {
|
|
508
|
-
var
|
|
509
|
-
isValid =
|
|
510
|
-
itemNode =
|
|
511
|
-
activeItem =
|
|
517
|
+
var _getDataItem = getDataItem(tag),
|
|
518
|
+
isValid = _getDataItem.isValid,
|
|
519
|
+
itemNode = _getDataItem.itemNode,
|
|
520
|
+
activeItem = _getDataItem.activeItem;
|
|
512
521
|
items.push(activeItem);
|
|
513
522
|
if (!isValid) {
|
|
514
523
|
return null;
|
|
515
524
|
}
|
|
516
|
-
return /*#__PURE__*/_react.default.createElement(_Tag.default, (0, _extends2.default)({
|
|
525
|
+
return /*#__PURE__*/_react.default.createElement(_Tag.default, (0, _extends2.default)({
|
|
526
|
+
role: "option"
|
|
527
|
+
}, tagRest, {
|
|
517
528
|
key: tag,
|
|
518
|
-
size: rest.size
|
|
529
|
+
size: convertSize(rest.size),
|
|
519
530
|
closable: !disabled && closable && !readOnly && !plaintext,
|
|
520
531
|
title: typeof itemNode === 'string' ? itemNode : undefined,
|
|
521
532
|
onClose: (0, _utils.createChainedFunction)(handleRemoveItemByTag.bind(null, tag), onClose)
|
|
@@ -528,7 +539,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
528
539
|
}
|
|
529
540
|
return tagElements;
|
|
530
541
|
};
|
|
531
|
-
var
|
|
542
|
+
var renderPopup = function renderPopup(positionProps, speakerRef) {
|
|
532
543
|
var left = positionProps.left,
|
|
533
544
|
top = positionProps.top,
|
|
534
545
|
className = positionProps.className;
|
|
@@ -552,21 +563,20 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
552
563
|
items = items.sort(sort(false));
|
|
553
564
|
}
|
|
554
565
|
if (disabledOptions) {
|
|
555
|
-
return /*#__PURE__*/_react.default.createElement(_Picker.
|
|
556
|
-
ref: (0, _utils.mergeRefs)(
|
|
566
|
+
return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {
|
|
567
|
+
ref: (0, _utils.mergeRefs)(overlay, speakerRef)
|
|
557
568
|
});
|
|
558
569
|
}
|
|
559
|
-
var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.
|
|
560
|
-
id: id ? id + "-listbox" : undefined,
|
|
570
|
+
var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.Listbox, {
|
|
561
571
|
listProps: listProps,
|
|
562
|
-
listRef:
|
|
572
|
+
listRef: list,
|
|
563
573
|
disabledItemValues: disabledItemValues,
|
|
564
574
|
valueKey: valueKey,
|
|
565
575
|
labelKey: labelKey,
|
|
566
576
|
classPrefix: menuClassPrefix,
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
577
|
+
listItemClassPrefix: multi ? undefined : menuClassPrefix + "-item",
|
|
578
|
+
listItemAs: multi ? _Picker.ListCheckItem : _Picker.ListItem,
|
|
579
|
+
listItemProps: {
|
|
570
580
|
renderMenuItemCheckbox: renderMenuItemCheckbox
|
|
571
581
|
},
|
|
572
582
|
activeItemValues: multi ? value : [value],
|
|
@@ -581,13 +591,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
581
591
|
onSelect: multi ? handleCheckTag : handleSelectItem // fixme don't use any
|
|
582
592
|
,
|
|
583
593
|
renderMenuGroup: renderMenuGroup,
|
|
584
|
-
renderMenuItem:
|
|
594
|
+
renderMenuItem: renderListItem,
|
|
585
595
|
virtualized: virtualized
|
|
586
596
|
}) : /*#__PURE__*/_react.default.createElement("div", {
|
|
587
597
|
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["none"])))
|
|
588
598
|
}, locale === null || locale === void 0 ? void 0 : locale.noResultsText);
|
|
589
|
-
return /*#__PURE__*/_react.default.createElement(_Picker.
|
|
590
|
-
ref: (0, _utils.mergeRefs)(
|
|
599
|
+
return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {
|
|
600
|
+
ref: (0, _utils.mergeRefs)(overlay, speakerRef),
|
|
591
601
|
autoWidth: menuAutoWidth,
|
|
592
602
|
className: classes,
|
|
593
603
|
style: styles,
|
|
@@ -619,7 +629,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
619
629
|
usedClassNamePropKeys = _usePickerClassName[1];
|
|
620
630
|
var classes = merge(pickerClasses, (_merge = {}, _merge[prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["tag"])))] = multi, _merge[prefix(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["focused"])))] = open, _merge[prefix(_templateObject4 || (_templateObject4 = (0, _taggedTemplateLiteralLoose2.default)(["disabled-options"])))] = disabledOptions, _merge));
|
|
621
631
|
var searching = !!searchKeyword && open;
|
|
622
|
-
var
|
|
632
|
+
var editable = searchable && !disabled && !rest.loading;
|
|
623
633
|
var inputProps = multi ? {
|
|
624
634
|
inputStyle: {
|
|
625
635
|
maxWidth: maxWidth - 63
|
|
@@ -640,11 +650,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
640
650
|
}
|
|
641
651
|
return /*#__PURE__*/_react.default.createElement(_Plaintext.default, (0, _extends2.default)({
|
|
642
652
|
localeKey: "notSelected",
|
|
643
|
-
ref:
|
|
653
|
+
ref: target
|
|
644
654
|
}, plaintextProps), itemNode || (tagElements !== null && tagElements !== void 0 && tagElements.length ? tagElements : null) || placeholder);
|
|
645
655
|
}
|
|
646
656
|
var placeholderNode = placeholder || (disabledOptions ? null : locale === null || locale === void 0 ? void 0 : locale.placeholder);
|
|
647
657
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {
|
|
658
|
+
id: id,
|
|
659
|
+
multiple: multi,
|
|
648
660
|
pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),
|
|
649
661
|
ref: triggerRef,
|
|
650
662
|
trigger: "active",
|
|
@@ -652,19 +664,19 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
652
664
|
onEntered: (0, _utils.createChainedFunction)(onEntered, onOpen),
|
|
653
665
|
onExit: (0, _utils.createChainedFunction)(handleExit, onExit),
|
|
654
666
|
onExited: (0, _utils.createChainedFunction)(handleExited, onExited),
|
|
655
|
-
speaker:
|
|
667
|
+
speaker: renderPopup,
|
|
656
668
|
placement: placement
|
|
657
669
|
}, /*#__PURE__*/_react.default.createElement(Component, {
|
|
658
670
|
className: classes,
|
|
659
671
|
style: style,
|
|
660
672
|
onClick: focusInput,
|
|
661
|
-
onKeyDown: onPickerKeyDown
|
|
673
|
+
onKeyDown: onPickerKeyDown,
|
|
674
|
+
ref: root
|
|
662
675
|
}, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {
|
|
663
|
-
id: id,
|
|
664
676
|
appearance: appearance,
|
|
665
677
|
readOnly: readOnly,
|
|
666
678
|
plaintext: plaintext,
|
|
667
|
-
ref:
|
|
679
|
+
ref: target,
|
|
668
680
|
as: toggleAs,
|
|
669
681
|
tabIndex: tabIndex,
|
|
670
682
|
onClean: handleClean,
|
|
@@ -674,18 +686,22 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
674
686
|
disabled: disabled,
|
|
675
687
|
placement: placement,
|
|
676
688
|
inputValue: value,
|
|
689
|
+
focusItemValue: focusItemValue,
|
|
677
690
|
caret: !disabledOptions
|
|
678
|
-
}), searching || multi && hasValue ? null : itemNode || placeholderNode),
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
691
|
+
}), searching || multi && hasValue ? null : itemNode || placeholderNode), /*#__PURE__*/_react.default.createElement(_TextBox.default, {
|
|
692
|
+
showTagList: hasValue && multi,
|
|
693
|
+
tags: tagElements,
|
|
694
|
+
editable: editable,
|
|
682
695
|
readOnly: readOnly,
|
|
696
|
+
disabled: disabled,
|
|
697
|
+
multiple: multi,
|
|
683
698
|
onBlur: onBlur,
|
|
684
699
|
onFocus: (0, _utils.createChainedFunction)(handleFocus, onFocus),
|
|
685
700
|
inputRef: inputRef,
|
|
686
701
|
onChange: handleSearch,
|
|
687
|
-
|
|
688
|
-
|
|
702
|
+
inputValue: open ? searchKeyword : '',
|
|
703
|
+
inputProps: inputProps
|
|
704
|
+
})));
|
|
689
705
|
});
|
|
690
706
|
InputPicker.displayName = 'InputPicker';
|
|
691
707
|
InputPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {
|
|
@@ -2,14 +2,12 @@
|
|
|
2
2
|
"use strict";
|
|
3
3
|
|
|
4
4
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
-
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
6
5
|
exports.__esModule = true;
|
|
7
6
|
exports.default = void 0;
|
|
8
7
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
8
|
var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
10
9
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
11
|
-
var _react =
|
|
12
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
13
11
|
var _utils = require("../utils");
|
|
14
12
|
var _templateObject;
|
|
15
13
|
var InputSearch = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
@@ -25,10 +23,10 @@ var InputSearch = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
25
23
|
readOnly = props.readOnly,
|
|
26
24
|
onChange = props.onChange,
|
|
27
25
|
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "classPrefix", "children", "className", "value", "inputRef", "style", "readOnly", "onChange"]);
|
|
28
|
-
var handleChange = (0,
|
|
26
|
+
var handleChange = (0, _utils.useEventCallback)(function (event) {
|
|
29
27
|
var _event$target;
|
|
30
28
|
onChange === null || onChange === void 0 ? void 0 : onChange(event === null || event === void 0 ? void 0 : (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value, event);
|
|
31
|
-
}
|
|
29
|
+
});
|
|
32
30
|
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
33
31
|
withClassPrefix = _useClassNames.withClassPrefix,
|
|
34
32
|
merge = _useClassNames.merge,
|
|
@@ -47,15 +45,5 @@ var InputSearch = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
47
45
|
})), children);
|
|
48
46
|
});
|
|
49
47
|
InputSearch.displayName = 'InputSearch';
|
|
50
|
-
InputSearch.propTypes = {
|
|
51
|
-
classPrefix: _propTypes.default.string,
|
|
52
|
-
value: _propTypes.default.string,
|
|
53
|
-
className: _propTypes.default.string,
|
|
54
|
-
children: _propTypes.default.node,
|
|
55
|
-
style: _propTypes.default.object,
|
|
56
|
-
inputRef: _utils.TypeChecker.refType,
|
|
57
|
-
as: _propTypes.default.elementType,
|
|
58
|
-
onChange: _propTypes.default.func
|
|
59
|
-
};
|
|
60
48
|
var _default = InputSearch;
|
|
61
49
|
exports.default = _default;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
+
var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
9
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _utils = require("../utils");
|
|
12
|
+
var _useCombobox2 = _interopRequireDefault(require("../Picker/hooks/useCombobox"));
|
|
13
|
+
var _templateObject;
|
|
14
|
+
var TagList = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
15
|
+
var children = props.children,
|
|
16
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["children"]);
|
|
17
|
+
var _useClassNames = (0, _utils.useClassNames)('picker'),
|
|
18
|
+
prefix = _useClassNames.prefix;
|
|
19
|
+
var _useCombobox = (0, _useCombobox2.default)(),
|
|
20
|
+
id = _useCombobox.id;
|
|
21
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
22
|
+
ref: ref,
|
|
23
|
+
role: "listbox",
|
|
24
|
+
id: id + "-describe",
|
|
25
|
+
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["tag-list"])))
|
|
26
|
+
}, rest), children);
|
|
27
|
+
});
|
|
28
|
+
var _default = TagList;
|
|
29
|
+
exports.default = _default;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { InputSearchProps } from './InputSearch';
|
|
3
|
+
interface TextBoxProps {
|
|
4
|
+
tags?: React.ReactNode;
|
|
5
|
+
inputProps?: InputSearchProps;
|
|
6
|
+
readOnly?: boolean;
|
|
7
|
+
disabled?: boolean;
|
|
8
|
+
onBlur?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
9
|
+
onFocus?: (event: React.FocusEvent<HTMLInputElement>) => void;
|
|
10
|
+
onChange?: (value: string, event: React.ChangeEvent<HTMLInputElement>) => void;
|
|
11
|
+
inputValue?: string;
|
|
12
|
+
inputRef?: React.Ref<HTMLInputElement>;
|
|
13
|
+
editable?: boolean;
|
|
14
|
+
multiple?: boolean;
|
|
15
|
+
showTagList?: boolean;
|
|
16
|
+
}
|
|
17
|
+
declare const TextBox: React.ForwardRefExoticComponent<TextBoxProps & React.RefAttributes<HTMLDivElement>>;
|
|
18
|
+
export default TextBox;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
"use strict";
|
|
3
|
+
|
|
4
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
+
var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
9
|
+
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
|
+
var _react = _interopRequireDefault(require("react"));
|
|
11
|
+
var _TagList = _interopRequireDefault(require("./TagList"));
|
|
12
|
+
var _utils = require("../utils");
|
|
13
|
+
var _InputSearch = _interopRequireDefault(require("./InputSearch"));
|
|
14
|
+
var _templateObject;
|
|
15
|
+
var TextBox = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
16
|
+
var tags = props.tags,
|
|
17
|
+
inputProps = props.inputProps,
|
|
18
|
+
readOnly = props.readOnly,
|
|
19
|
+
disabled = props.disabled,
|
|
20
|
+
multiple = props.multiple,
|
|
21
|
+
onBlur = props.onBlur,
|
|
22
|
+
onFocus = props.onFocus,
|
|
23
|
+
onChange = props.onChange,
|
|
24
|
+
inputValue = props.inputValue,
|
|
25
|
+
inputRef = props.inputRef,
|
|
26
|
+
editable = props.editable,
|
|
27
|
+
showTagList = props.showTagList,
|
|
28
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["tags", "inputProps", "readOnly", "disabled", "multiple", "onBlur", "onFocus", "onChange", "inputValue", "inputRef", "editable", "showTagList"]);
|
|
29
|
+
var _useClassNames = (0, _utils.useClassNames)('picker'),
|
|
30
|
+
prefix = _useClassNames.prefix;
|
|
31
|
+
if (!multiple && disabled) {
|
|
32
|
+
return null;
|
|
33
|
+
}
|
|
34
|
+
return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
|
|
35
|
+
className: prefix(_templateObject || (_templateObject = (0, _taggedTemplateLiteralLoose2.default)(["textbox"]))),
|
|
36
|
+
ref: ref
|
|
37
|
+
}, rest), showTagList ? /*#__PURE__*/_react.default.createElement(_TagList.default, null, tags) : null, editable && /*#__PURE__*/_react.default.createElement(_InputSearch.default, (0, _extends2.default)({}, inputProps, {
|
|
38
|
+
tabIndex: -1,
|
|
39
|
+
readOnly: readOnly,
|
|
40
|
+
onBlur: onBlur,
|
|
41
|
+
onFocus: onFocus,
|
|
42
|
+
inputRef: inputRef,
|
|
43
|
+
onChange: onChange,
|
|
44
|
+
value: inputValue
|
|
45
|
+
})));
|
|
46
|
+
});
|
|
47
|
+
var _default = TextBox;
|
|
48
|
+
exports.default = _default;
|