rsuite 5.0.0-beta.5 → 5.0.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/Animation/styles/index.less +16 -16
- package/Animation/styles/mixin.less +2 -2
- package/Button/styles/index.less +36 -1
- package/Button/styles/mixin.less +7 -1
- package/CHANGELOG.md +47 -4
- package/Calendar/styles/index.less +7 -1
- package/Checkbox/styles/index.less +18 -2
- package/DatePicker/styles/index.less +6 -2
- package/Drawer/styles/index.less +11 -2
- package/Drawer/styles/mixin.less +2 -2
- package/Dropdown/styles/index.less +4 -0
- package/Form/styles/mixin.less +6 -0
- package/InputGroup/styles/index.less +4 -0
- package/Message/styles/index.less +16 -0
- package/Modal/styles/index.less +3 -2
- package/Nav/styles/index.less +18 -2
- package/Navbar/styles/index.less +68 -34
- package/Notification/styles/index.less +9 -3
- package/Pagination/styles/index.less +12 -1
- package/Pagination/styles/mixin.less +7 -0
- package/Picker/styles/index.less +25 -3
- package/Picker/styles/mixin.less +7 -2
- package/Popover/styles/index.less +23 -30
- package/Popover/styles/mixins.less +72 -0
- package/README.md +4 -4
- package/Radio/styles/index.less +16 -0
- package/RadioGroup/styles/index.less +4 -0
- package/Rate/styles/index.less +13 -2
- package/Ripple/styles/index.less +8 -4
- package/Sidenav/styles/index.less +160 -47
- package/Table/styles/index.less +8 -0
- package/TagInput/package.json +7 -0
- package/TagInput/styles/index.less +13 -0
- package/Toggle/styles/index.less +29 -19
- package/Tooltip/styles/index.less +32 -38
- package/Tooltip/styles/mixins.less +72 -0
- package/Uploader/styles/index.less +11 -1
- package/cjs/@types/common.d.ts +2 -0
- package/cjs/Animation/Bounce.js +10 -4
- package/cjs/Animation/Collapse.d.ts +1 -48
- package/cjs/Animation/Collapse.js +60 -106
- package/cjs/Animation/Fade.js +10 -5
- package/cjs/Animation/Slide.js +8 -4
- package/cjs/Carousel/Carousel.d.ts +7 -0
- package/cjs/Carousel/Carousel.js +24 -11
- package/cjs/CheckTree/index.js +14 -5
- package/cjs/CheckTreePicker/CheckTreePicker.js +9 -5
- package/cjs/DatePicker/DatePicker.d.ts +5 -1
- package/cjs/DatePicker/DatePicker.js +2 -13
- package/cjs/DateRangePicker/Calendar.d.ts +2 -1
- package/cjs/DateRangePicker/Calendar.js +4 -3
- package/cjs/DateRangePicker/DateRangePicker.d.ts +1 -1
- package/cjs/DateRangePicker/DateRangePicker.js +58 -43
- package/cjs/DateRangePicker/utils.d.ts +1 -1
- package/cjs/DateRangePicker/utils.js +9 -5
- package/cjs/Dropdown/Dropdown.js +31 -18
- package/cjs/Dropdown/DropdownContext.d.ts +4 -1
- package/cjs/Dropdown/DropdownItem.js +31 -4
- package/cjs/Dropdown/DropdownState.d.ts +37 -0
- package/cjs/Dropdown/DropdownState.js +66 -0
- package/cjs/Dropdown/DropdownToggle.js +3 -6
- package/cjs/InputNumber/InputNumber.js +11 -10
- package/cjs/InputPicker/InputPicker.d.ts +16 -3
- package/cjs/InputPicker/InputPicker.js +85 -44
- package/cjs/List/ListItem.d.ts +1 -1
- package/cjs/Menu/MenuItem.js +1 -1
- package/cjs/MultiCascader/MultiCascader.js +4 -3
- package/cjs/Nav/NavItem.js +11 -63
- package/cjs/Navbar/NavbarItem.d.ts +19 -0
- package/cjs/Navbar/NavbarItem.js +93 -0
- package/cjs/Pagination/Pagination.js +1 -1
- package/cjs/Picker/PickerToggle.js +2 -2
- package/cjs/Picker/utils.d.ts +1 -1
- package/cjs/Picker/utils.js +26 -22
- package/cjs/Progress/ProgressCircle.js +15 -15
- package/cjs/SelectPicker/SelectPicker.d.ts +1 -3
- package/cjs/Sidenav/SidenavDropdown.js +6 -1
- package/cjs/Sidenav/SidenavItem.js +46 -12
- package/cjs/Slider/Slider.js +2 -1
- package/cjs/TagInput/index.d.ts +13 -0
- package/cjs/TagInput/index.js +58 -0
- package/cjs/TagPicker/index.d.ts +10 -2
- package/cjs/TagPicker/index.js +25 -6
- package/cjs/Tree/Tree.d.ts +0 -2
- package/cjs/Tree/Tree.js +13 -4
- package/cjs/Tree/TreeContext.d.ts +7 -0
- package/cjs/Tree/TreeContext.js +13 -0
- package/cjs/TreePicker/TreeNode.js +10 -3
- package/cjs/TreePicker/TreePicker.js +22 -10
- package/cjs/Uploader/UploadFileItem.d.ts +5 -0
- package/cjs/Uploader/UploadFileItem.js +4 -3
- package/cjs/Uploader/Uploader.d.ts +8 -3
- package/cjs/Uploader/Uploader.js +12 -6
- package/cjs/index.d.ts +2 -0
- package/cjs/index.js +5 -1
- package/cjs/utils/ajaxUpload.d.ts +5 -1
- package/cjs/utils/ajaxUpload.js +24 -13
- package/cjs/utils/constants.d.ts +1 -0
- package/cjs/utils/constants.js +1 -0
- package/cjs/utils/dateUtils.d.ts +1 -0
- package/cjs/utils/dateUtils.js +5 -1
- package/cjs/utils/useInternalId.d.ts +4 -0
- package/cjs/utils/useInternalId.js +24 -0
- package/cjs/utils/useUniqueId.d.ts +1 -1
- package/cjs/utils/useUniqueId.js +1 -1
- package/dist/rsuite-rtl.css +1614 -221
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +1618 -221
- package/dist/rsuite.js +288 -288
- 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 +2 -0
- package/esm/Animation/Bounce.js +8 -4
- package/esm/Animation/Collapse.d.ts +1 -48
- package/esm/Animation/Collapse.js +59 -104
- package/esm/Animation/Fade.js +8 -4
- package/esm/Animation/Slide.js +6 -3
- package/esm/Carousel/Carousel.d.ts +7 -0
- package/esm/Carousel/Carousel.js +25 -12
- package/esm/CheckTree/index.js +11 -5
- package/esm/CheckTreePicker/CheckTreePicker.js +8 -6
- package/esm/DatePicker/DatePicker.d.ts +5 -1
- package/esm/DatePicker/DatePicker.js +2 -13
- package/esm/DateRangePicker/Calendar.d.ts +2 -1
- package/esm/DateRangePicker/Calendar.js +4 -3
- package/esm/DateRangePicker/DateRangePicker.d.ts +1 -1
- package/esm/DateRangePicker/DateRangePicker.js +27 -12
- package/esm/DateRangePicker/utils.d.ts +1 -1
- package/esm/DateRangePicker/utils.js +7 -3
- package/esm/Dropdown/Dropdown.js +30 -19
- package/esm/Dropdown/DropdownContext.d.ts +4 -1
- package/esm/Dropdown/DropdownItem.js +30 -6
- package/esm/Dropdown/DropdownState.d.ts +37 -0
- package/esm/Dropdown/DropdownState.js +55 -0
- package/esm/Dropdown/DropdownToggle.js +3 -6
- package/esm/InputNumber/InputNumber.js +11 -10
- package/esm/InputPicker/InputPicker.d.ts +16 -3
- package/esm/InputPicker/InputPicker.js +84 -45
- package/esm/List/ListItem.d.ts +1 -1
- package/esm/Menu/MenuItem.js +1 -1
- package/esm/MultiCascader/MultiCascader.js +4 -3
- package/esm/Nav/NavItem.js +12 -61
- package/esm/Navbar/NavbarItem.d.ts +19 -0
- package/esm/Navbar/NavbarItem.js +73 -0
- package/esm/Pagination/Pagination.js +1 -1
- package/esm/Picker/PickerToggle.js +2 -2
- package/esm/Picker/utils.d.ts +1 -1
- package/esm/Picker/utils.js +26 -22
- package/esm/Progress/ProgressCircle.js +15 -15
- package/esm/SelectPicker/SelectPicker.d.ts +1 -3
- package/esm/Sidenav/SidenavDropdown.js +5 -1
- package/esm/Sidenav/SidenavItem.js +47 -13
- package/esm/Slider/Slider.js +2 -1
- package/esm/TagInput/index.d.ts +13 -0
- package/esm/TagInput/index.js +44 -0
- package/esm/TagPicker/index.d.ts +10 -2
- package/esm/TagPicker/index.js +23 -6
- package/esm/Tree/Tree.d.ts +0 -2
- package/esm/Tree/Tree.js +10 -4
- package/esm/Tree/TreeContext.d.ts +7 -0
- package/esm/Tree/TreeContext.js +3 -0
- package/esm/TreePicker/TreeNode.js +10 -4
- package/esm/TreePicker/TreePicker.js +23 -12
- package/esm/Uploader/UploadFileItem.d.ts +5 -0
- package/esm/Uploader/UploadFileItem.js +2 -3
- package/esm/Uploader/Uploader.d.ts +8 -3
- package/esm/Uploader/Uploader.js +12 -6
- package/esm/index.d.ts +2 -0
- package/esm/index.js +1 -0
- package/esm/utils/ajaxUpload.d.ts +5 -1
- package/esm/utils/ajaxUpload.js +24 -13
- package/esm/utils/constants.d.ts +1 -0
- package/esm/utils/constants.js +1 -0
- package/esm/utils/dateUtils.d.ts +1 -0
- package/esm/utils/dateUtils.js +1 -0
- package/esm/utils/useInternalId.d.ts +4 -0
- package/esm/utils/useInternalId.js +16 -0
- package/esm/utils/useUniqueId.d.ts +1 -1
- package/esm/utils/useUniqueId.js +1 -1
- package/package.json +4 -9
- package/styles/color-modes/dark.less +28 -5
- package/styles/color-modes/high-contrast.less +317 -0
- package/styles/color-modes/light.less +24 -1
- package/styles/color-modes.less +5 -0
- package/styles/colors/high-contrast.less +105 -0
- package/styles/index.less +1 -0
- package/styles/mixins/color-modes.less +6 -0
- package/styles/mixins/listbox.less +13 -1
- package/styles/mixins/menu.less +7 -0
- package/styles/mixins/utilities.less +9 -1
- package/styles/variables.less +11 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
interface DropdownItemState {
|
|
2
|
+
/**
|
|
3
|
+
* Internal ID
|
|
4
|
+
*/
|
|
5
|
+
id: string;
|
|
6
|
+
/**
|
|
7
|
+
*
|
|
8
|
+
*/
|
|
9
|
+
props: {
|
|
10
|
+
selected: boolean;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
interface DropdownState {
|
|
14
|
+
items: DropdownItemState[];
|
|
15
|
+
}
|
|
16
|
+
export declare const initialState: DropdownState;
|
|
17
|
+
export declare enum DropdownActionType {
|
|
18
|
+
RegisterItem = 0,
|
|
19
|
+
UnregisterItem = 1,
|
|
20
|
+
UpdateItem = 2
|
|
21
|
+
}
|
|
22
|
+
export declare type DropdownAction = {
|
|
23
|
+
type: DropdownActionType.RegisterItem;
|
|
24
|
+
payload: {
|
|
25
|
+
id: string;
|
|
26
|
+
props: {
|
|
27
|
+
selected: boolean;
|
|
28
|
+
};
|
|
29
|
+
};
|
|
30
|
+
} | {
|
|
31
|
+
type: DropdownActionType.UnregisterItem;
|
|
32
|
+
payload: {
|
|
33
|
+
id: string;
|
|
34
|
+
};
|
|
35
|
+
};
|
|
36
|
+
export declare function reducer(state: DropdownState, action: DropdownAction): DropdownState;
|
|
37
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
exports.__esModule = true;
|
|
6
|
+
exports.reducer = reducer;
|
|
7
|
+
exports.DropdownActionType = exports.initialState = void 0;
|
|
8
|
+
|
|
9
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
10
|
+
|
|
11
|
+
var initialState = {
|
|
12
|
+
items: []
|
|
13
|
+
};
|
|
14
|
+
exports.initialState = initialState;
|
|
15
|
+
var DropdownActionType;
|
|
16
|
+
exports.DropdownActionType = DropdownActionType;
|
|
17
|
+
|
|
18
|
+
(function (DropdownActionType) {
|
|
19
|
+
DropdownActionType[DropdownActionType["RegisterItem"] = 0] = "RegisterItem";
|
|
20
|
+
DropdownActionType[DropdownActionType["UnregisterItem"] = 1] = "UnregisterItem";
|
|
21
|
+
DropdownActionType[DropdownActionType["UpdateItem"] = 2] = "UpdateItem";
|
|
22
|
+
})(DropdownActionType || (exports.DropdownActionType = DropdownActionType = {}));
|
|
23
|
+
|
|
24
|
+
function reducer(state, action) {
|
|
25
|
+
if (state === void 0) {
|
|
26
|
+
state = initialState;
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
switch (action.type) {
|
|
30
|
+
case DropdownActionType.RegisterItem:
|
|
31
|
+
if (state.items.find(function (item) {
|
|
32
|
+
return item.id === action.payload.id;
|
|
33
|
+
})) {
|
|
34
|
+
return (0, _extends2.default)({}, state, {
|
|
35
|
+
items: state.items.map(function (item) {
|
|
36
|
+
if (item.id === action.payload.id) {
|
|
37
|
+
return (0, _extends2.default)({}, item, {
|
|
38
|
+
props: (0, _extends2.default)({}, item.props, {
|
|
39
|
+
selected: action.payload.props.selected
|
|
40
|
+
})
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return item;
|
|
45
|
+
})
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
return (0, _extends2.default)({}, state, {
|
|
50
|
+
items: [].concat(state.items, [{
|
|
51
|
+
id: action.payload.id,
|
|
52
|
+
props: action.payload.props
|
|
53
|
+
}])
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
case DropdownActionType.UnregisterItem:
|
|
57
|
+
return (0, _extends2.default)({}, state, {
|
|
58
|
+
items: state.items.filter(function (item) {
|
|
59
|
+
return item.id !== action.payload.id;
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
default:
|
|
64
|
+
return state;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
@@ -51,16 +51,13 @@ var DropdownToggle = /*#__PURE__*/_react.default.forwardRef(function (props, ref
|
|
|
51
51
|
var inSidenav = !!sidenav; // Caret icon is down by default, when Dropdown is used in Sidenav.
|
|
52
52
|
|
|
53
53
|
var Caret = (0, _useToggleCaret.default)(inSidenav ? 'bottomStart' : placement);
|
|
54
|
-
var buttonProps = Component === _Button.default ? {
|
|
55
|
-
appearance: 'subtle'
|
|
56
|
-
} : null;
|
|
57
54
|
|
|
58
|
-
var toggle = /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({},
|
|
55
|
+
var toggle = /*#__PURE__*/_react.default.createElement(Component, (0, _extends2.default)({}, rest, {
|
|
59
56
|
ref: ref,
|
|
60
57
|
className: classes
|
|
61
|
-
}), /*#__PURE__*/_react.default.
|
|
58
|
+
}), icon && /*#__PURE__*/_react.default.cloneElement(icon, {
|
|
62
59
|
className: prefix('icon')
|
|
63
|
-
}
|
|
60
|
+
}), children, noCaret ? null : /*#__PURE__*/_react.default.createElement(Caret, {
|
|
64
61
|
className: prefix('caret')
|
|
65
62
|
}));
|
|
66
63
|
|
|
@@ -151,7 +151,7 @@ var InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
151
151
|
rest = _partitionHTMLProps[1];
|
|
152
152
|
|
|
153
153
|
var inputRef = (0, _react.useRef)();
|
|
154
|
-
var
|
|
154
|
+
var handleChangeValue = (0, _react.useCallback)(function (currentValue, event) {
|
|
155
155
|
if (currentValue !== value) {
|
|
156
156
|
// Disable the up button when the value is greater than the maximum value.
|
|
157
157
|
setDisabledUpButton(disableMaxValue(currentValue, max)); // Disable the down button when the value is greater than the minimum value.
|
|
@@ -179,13 +179,13 @@ var InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
179
179
|
var handlePlus = (0, _react.useCallback)(function (event) {
|
|
180
180
|
var val = +(value || 0);
|
|
181
181
|
var bit = decimals(val, step);
|
|
182
|
-
|
|
183
|
-
}, [getSafeValue,
|
|
182
|
+
handleChangeValue(getSafeValue((val + step).toFixed(bit)), event);
|
|
183
|
+
}, [getSafeValue, handleChangeValue, step, value]);
|
|
184
184
|
var handleMinus = (0, _react.useCallback)(function (event) {
|
|
185
185
|
var val = +(value || 0);
|
|
186
186
|
var bit = decimals(val, step);
|
|
187
|
-
|
|
188
|
-
}, [getSafeValue,
|
|
187
|
+
handleChangeValue(getSafeValue((val - step).toFixed(bit)), event);
|
|
188
|
+
}, [getSafeValue, handleChangeValue, step, value]);
|
|
189
189
|
var handleWheel = (0, _react.useCallback)(function (event) {
|
|
190
190
|
if (!disabled && !readOnly && event.target === document.activeElement) {
|
|
191
191
|
event.preventDefault();
|
|
@@ -207,14 +207,14 @@ var InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
207
207
|
return;
|
|
208
208
|
}
|
|
209
209
|
|
|
210
|
-
|
|
211
|
-
}, [
|
|
210
|
+
handleChangeValue(value, event);
|
|
211
|
+
}, [handleChangeValue]);
|
|
212
212
|
var handleBlur = (0, _react.useCallback)(function (event) {
|
|
213
213
|
var _event$target;
|
|
214
214
|
|
|
215
215
|
var targetValue = Number.parseFloat((_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.value);
|
|
216
|
-
|
|
217
|
-
}, [getSafeValue,
|
|
216
|
+
handleChangeValue(getSafeValue(targetValue), event);
|
|
217
|
+
}, [getSafeValue, handleChangeValue]);
|
|
218
218
|
(0, _react.useEffect)(function () {
|
|
219
219
|
var wheelListener;
|
|
220
220
|
|
|
@@ -241,7 +241,8 @@ var InputNumber = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
241
241
|
value: (0, _isNil.default)(value) ? '' : "" + value,
|
|
242
242
|
disabled: disabled,
|
|
243
243
|
readOnly: readOnly,
|
|
244
|
-
plaintext: plaintext
|
|
244
|
+
plaintext: plaintext,
|
|
245
|
+
ref: plaintext ? ref : undefined
|
|
245
246
|
}));
|
|
246
247
|
|
|
247
248
|
if (plaintext) {
|
|
@@ -4,17 +4,30 @@ import { PickerComponent } from '../Picker';
|
|
|
4
4
|
import { TagProps } from '../Tag';
|
|
5
5
|
import { ItemDataType, FormControlPickerProps } from '../@types/common';
|
|
6
6
|
import { SelectProps } from '../SelectPicker';
|
|
7
|
+
export declare type TriggerType = 'Enter' | 'Space' | 'Comma';
|
|
8
|
+
export interface InputPickerContextProps {
|
|
9
|
+
/** Multiple selections are allowed */
|
|
10
|
+
multi?: boolean;
|
|
11
|
+
/** Tag related props. */
|
|
12
|
+
tagProps?: TagProps;
|
|
13
|
+
/**
|
|
14
|
+
* Set the trigger for creating tags. only valid when creatable
|
|
15
|
+
*/
|
|
16
|
+
trigger?: TriggerType | TriggerType[];
|
|
17
|
+
/**
|
|
18
|
+
* No overlay provides options
|
|
19
|
+
*/
|
|
20
|
+
disabledOptions?: boolean;
|
|
21
|
+
}
|
|
22
|
+
export declare const InputPickerContext: React.Context<InputPickerContextProps>;
|
|
7
23
|
interface InputItemDataType extends ItemDataType {
|
|
8
24
|
create?: boolean;
|
|
9
25
|
}
|
|
10
26
|
export declare type ValueType = any;
|
|
11
27
|
export interface InputPickerProps<T = ValueType> extends FormControlPickerProps<T, InputPickerLocale, InputItemDataType>, SelectProps<T> {
|
|
12
28
|
tabIndex?: number;
|
|
13
|
-
multi?: boolean;
|
|
14
29
|
/** Settings can create new options */
|
|
15
30
|
creatable?: boolean;
|
|
16
|
-
/** Tag related props. */
|
|
17
|
-
tagProps?: TagProps;
|
|
18
31
|
/** Option to cache value when searching asynchronously */
|
|
19
32
|
cacheData?: InputItemDataType[];
|
|
20
33
|
/** The `onBlur` attribute for the `input` element. */
|
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
5
5
|
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
6
6
|
|
|
7
7
|
exports.__esModule = true;
|
|
8
|
-
exports.default = void 0;
|
|
8
|
+
exports.default = exports.InputPickerContext = void 0;
|
|
9
9
|
|
|
10
10
|
var _taggedTemplateLiteralLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteralLoose"));
|
|
11
11
|
|
|
@@ -51,8 +51,11 @@ var _InputAutosize = _interopRequireDefault(require("./InputAutosize"));
|
|
|
51
51
|
|
|
52
52
|
var _InputSearch = _interopRequireDefault(require("./InputSearch"));
|
|
53
53
|
|
|
54
|
-
var _templateObject, _templateObject2, _templateObject3, _templateObject4;
|
|
54
|
+
var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5;
|
|
55
55
|
|
|
56
|
+
var InputPickerContext = /*#__PURE__*/_react.default.createContext({});
|
|
57
|
+
|
|
58
|
+
exports.InputPickerContext = InputPickerContext;
|
|
56
59
|
var defaultProps = {
|
|
57
60
|
as: 'div',
|
|
58
61
|
appearance: 'default',
|
|
@@ -66,8 +69,7 @@ var defaultProps = {
|
|
|
66
69
|
placement: 'bottomStart',
|
|
67
70
|
searchable: true,
|
|
68
71
|
menuAutoWidth: true,
|
|
69
|
-
menuMaxHeight: 320
|
|
70
|
-
tagProps: {}
|
|
72
|
+
menuMaxHeight: 320
|
|
71
73
|
};
|
|
72
74
|
|
|
73
75
|
var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
@@ -88,10 +90,8 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
88
90
|
toggleAs = props.toggleAs,
|
|
89
91
|
style = props.style,
|
|
90
92
|
searchable = props.searchable,
|
|
91
|
-
multi = props.multi,
|
|
92
93
|
controlledOpen = props.open,
|
|
93
94
|
placeholder = props.placeholder,
|
|
94
|
-
tagProps = props.tagProps,
|
|
95
95
|
groupBy = props.groupBy,
|
|
96
96
|
menuClassName = props.menuClassName,
|
|
97
97
|
menuStyle = props.menuStyle,
|
|
@@ -126,7 +126,13 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
126
126
|
onFocus = props.onFocus,
|
|
127
127
|
searchBy = props.searchBy,
|
|
128
128
|
placement = props.placement,
|
|
129
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "cleanable", "cacheData", "classPrefix", "data", "disabled", "readOnly", "plaintext", "defaultValue", "defaultOpen", "disabledItemValues", "locale", "toggleAs", "style", "searchable", "
|
|
129
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "cleanable", "cacheData", "classPrefix", "data", "disabled", "readOnly", "plaintext", "defaultValue", "defaultOpen", "disabledItemValues", "locale", "toggleAs", "style", "searchable", "open", "placeholder", "groupBy", "menuClassName", "menuStyle", "menuAutoWidth", "menuMaxHeight", "creatable", "value", "valueKey", "virtualized", "labelKey", "listProps", "id", "tabIndex", "sort", "renderMenu", "renderExtraFooter", "renderValue", "renderMenuItem", "renderMenuGroup", "onEnter", "onEntered", "onExit", "onExited", "onChange", "onClean", "onCreate", "onSearch", "onSelect", "onOpen", "onClose", "onBlur", "onFocus", "searchBy", "placement"]);
|
|
130
|
+
|
|
131
|
+
var _useContext = (0, _react.useContext)(InputPickerContext),
|
|
132
|
+
multi = _useContext.multi,
|
|
133
|
+
tagProps = _useContext.tagProps,
|
|
134
|
+
trigger = _useContext.trigger,
|
|
135
|
+
disabledOptions = _useContext.disabledOptions;
|
|
130
136
|
|
|
131
137
|
if (groupBy === valueKey || groupBy === labelKey) {
|
|
132
138
|
throw Error('`groupBy` can not be equal to `valueKey` and `labelKey`');
|
|
@@ -197,9 +203,9 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
197
203
|
var _filteredData$;
|
|
198
204
|
|
|
199
205
|
// The first option after filtering is the focus.
|
|
200
|
-
setFocusItemValue((filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]) || searchKeyword);
|
|
206
|
+
setFocusItemValue(disabledOptions ? searchKeyword : (filteredData === null || filteredData === void 0 ? void 0 : (_filteredData$ = filteredData[0]) === null || _filteredData$ === void 0 ? void 0 : _filteredData$[valueKey]) || searchKeyword);
|
|
201
207
|
onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchKeyword, event);
|
|
202
|
-
}, [setFocusItemValue,
|
|
208
|
+
}, [disabledOptions, setFocusItemValue, valueKey, onSearch]); // Use search keywords to filter options.
|
|
203
209
|
|
|
204
210
|
var _useSearch = (0, _Picker.useSearch)({
|
|
205
211
|
labelKey: labelKey,
|
|
@@ -243,16 +249,16 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
243
249
|
var activeItem = allData.find(function (item) {
|
|
244
250
|
return (0, _shallowEqual.default)(item[valueKey], value);
|
|
245
251
|
});
|
|
246
|
-
var
|
|
252
|
+
var itemNode = placeholder;
|
|
247
253
|
|
|
248
254
|
if (activeItem !== null && activeItem !== void 0 && activeItem[labelKey]) {
|
|
249
|
-
|
|
255
|
+
itemNode = activeItem === null || activeItem === void 0 ? void 0 : activeItem[labelKey];
|
|
250
256
|
}
|
|
251
257
|
|
|
252
258
|
return {
|
|
253
259
|
isValid: !!activeItem,
|
|
254
260
|
activeItem: activeItem,
|
|
255
|
-
|
|
261
|
+
itemNode: itemNode
|
|
256
262
|
};
|
|
257
263
|
};
|
|
258
264
|
|
|
@@ -318,7 +324,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
318
324
|
* @param event
|
|
319
325
|
*/
|
|
320
326
|
|
|
321
|
-
var
|
|
327
|
+
var handleSelectItem = function handleSelectItem(value, item, event) {
|
|
322
328
|
setValue(value);
|
|
323
329
|
setFocusItemValue(value);
|
|
324
330
|
setSearchKeyword('');
|
|
@@ -335,7 +341,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
335
341
|
*/
|
|
336
342
|
|
|
337
343
|
|
|
338
|
-
var
|
|
344
|
+
var handleCheckTag = function handleCheckTag(nextItemValue, item, event, checked) {
|
|
339
345
|
var val = cloneValue();
|
|
340
346
|
|
|
341
347
|
if (checked) {
|
|
@@ -354,7 +360,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
354
360
|
focusInput();
|
|
355
361
|
};
|
|
356
362
|
|
|
357
|
-
var
|
|
363
|
+
var handleTagKeyPress = (0, _react.useCallback)(function (event) {
|
|
358
364
|
var val = cloneValue();
|
|
359
365
|
var data = getAllData();
|
|
360
366
|
|
|
@@ -373,7 +379,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
373
379
|
return (0, _shallowEqual.default)(v, focusItemValue);
|
|
374
380
|
})) {
|
|
375
381
|
val.push(focusItemValue);
|
|
376
|
-
} else {
|
|
382
|
+
} else if (!disabledOptions) {
|
|
377
383
|
(0, _remove.default)(val, function (itemVal) {
|
|
378
384
|
return (0, _shallowEqual.default)(itemVal, focusItemValue);
|
|
379
385
|
});
|
|
@@ -391,8 +397,8 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
391
397
|
setSearchKeyword('');
|
|
392
398
|
handleSelect(val, focusItem, event);
|
|
393
399
|
handleChange(val, event);
|
|
394
|
-
}, [
|
|
395
|
-
var
|
|
400
|
+
}, [cloneValue, getAllData, focusItemValue, disabledItemValues, disabledOptions, setValue, setSearchKeyword, handleSelect, handleChange, valueKey, createOption]);
|
|
401
|
+
var handleMenuItemKeyPress = (0, _react.useCallback)(function (event) {
|
|
396
402
|
if (!focusItemValue || !controlledData) {
|
|
397
403
|
return;
|
|
398
404
|
} // If the value is disabled in this option, it is returned.
|
|
@@ -458,14 +464,43 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
458
464
|
handleChange(null, event);
|
|
459
465
|
onClean === null || onClean === void 0 ? void 0 : onClean(event);
|
|
460
466
|
}, [disabled, searchKeyword, onClean, handleChange, setValue, setFocusItemValue, setSearchKeyword]);
|
|
467
|
+
var events = {
|
|
468
|
+
onMenuPressBackspace: multi ? removeLastItem : handleClean,
|
|
469
|
+
onMenuKeyDown: onKeyDown,
|
|
470
|
+
onMenuPressEnter: null,
|
|
471
|
+
onKeyDown: null
|
|
472
|
+
};
|
|
473
|
+
var handleKeyPress = (0, _react.useCallback)(function (event) {
|
|
474
|
+
// When typing a space, create a tag.
|
|
475
|
+
if ((0, _utils.isOneOf)('Space', trigger) && event.key === _utils.KEY_VALUES.SPACE) {
|
|
476
|
+
handleTagKeyPress(event);
|
|
477
|
+
event.preventDefault();
|
|
478
|
+
} // When typing a comma, create a tag.
|
|
479
|
+
|
|
480
|
+
|
|
481
|
+
if ((0, _utils.isOneOf)('Comma', trigger) && event.key === _utils.KEY_VALUES.COMMA) {
|
|
482
|
+
handleTagKeyPress(event);
|
|
483
|
+
event.preventDefault();
|
|
484
|
+
}
|
|
485
|
+
}, [handleTagKeyPress, trigger]);
|
|
486
|
+
|
|
487
|
+
if (multi) {
|
|
488
|
+
if ((0, _utils.isOneOf)('Enter', trigger)) {
|
|
489
|
+
events.onMenuPressEnter = handleTagKeyPress;
|
|
490
|
+
}
|
|
491
|
+
|
|
492
|
+
if (creatable) {
|
|
493
|
+
events.onKeyDown = handleKeyPress;
|
|
494
|
+
}
|
|
495
|
+
} else {
|
|
496
|
+
events.onMenuPressEnter = handleMenuItemKeyPress;
|
|
497
|
+
}
|
|
498
|
+
|
|
461
499
|
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
|
|
462
500
|
triggerRef: triggerRef,
|
|
463
501
|
targetRef: targetRef,
|
|
464
|
-
overlayRef: overlayRef
|
|
465
|
-
|
|
466
|
-
onMenuPressBackspace: multi ? removeLastItem : handleClean,
|
|
467
|
-
onMenuKeyDown: onKeyDown
|
|
468
|
-
}, rest));
|
|
502
|
+
overlayRef: overlayRef
|
|
503
|
+
}, events, rest));
|
|
469
504
|
var handleExited = (0, _react.useCallback)(function () {
|
|
470
505
|
setFocusItemValue(multi ? value === null || value === void 0 ? void 0 : value[0] : value);
|
|
471
506
|
setSearchKeyword('');
|
|
@@ -497,24 +532,24 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
497
532
|
return renderMenuItem ? renderMenuItem(newLabel, item) : newLabel;
|
|
498
533
|
};
|
|
499
534
|
|
|
500
|
-
var
|
|
535
|
+
var checkValue = function checkValue() {
|
|
501
536
|
if (multi) {
|
|
502
537
|
return {
|
|
503
538
|
isValid: false,
|
|
504
|
-
|
|
539
|
+
itemNode: null
|
|
505
540
|
};
|
|
506
541
|
}
|
|
507
542
|
|
|
508
543
|
var dataItem = getDateItem(value);
|
|
509
|
-
var
|
|
544
|
+
var itemNode = dataItem.itemNode;
|
|
510
545
|
|
|
511
546
|
if (!(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue)) {
|
|
512
|
-
|
|
547
|
+
itemNode = renderValue(value, dataItem.activeItem, itemNode);
|
|
513
548
|
}
|
|
514
549
|
|
|
515
550
|
return {
|
|
516
551
|
isValid: dataItem.isValid,
|
|
517
|
-
|
|
552
|
+
itemNode: itemNode
|
|
518
553
|
};
|
|
519
554
|
};
|
|
520
555
|
|
|
@@ -532,7 +567,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
532
567
|
var tagElements = tags.map(function (tag) {
|
|
533
568
|
var _getDateItem = getDateItem(tag),
|
|
534
569
|
isValid = _getDateItem.isValid,
|
|
535
|
-
|
|
570
|
+
itemNode = _getDateItem.itemNode,
|
|
536
571
|
activeItem = _getDateItem.activeItem;
|
|
537
572
|
|
|
538
573
|
items.push(activeItem);
|
|
@@ -545,9 +580,9 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
545
580
|
key: tag,
|
|
546
581
|
size: rest.size === 'lg' ? 'lg' : rest.size === 'xs' ? 'sm' : 'md',
|
|
547
582
|
closable: !disabled && closable && !readOnly && !plaintext,
|
|
548
|
-
title: typeof
|
|
583
|
+
title: typeof itemNode === 'string' ? itemNode : undefined,
|
|
549
584
|
onClose: (0, _utils.createChainedFunction)(handleRemoveItemByTag.bind(null, tag), onClose)
|
|
550
|
-
}),
|
|
585
|
+
}), itemNode);
|
|
551
586
|
}).filter(function (item) {
|
|
552
587
|
return item !== null;
|
|
553
588
|
});
|
|
@@ -584,6 +619,12 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
584
619
|
items = items.sort(sort(false));
|
|
585
620
|
}
|
|
586
621
|
|
|
622
|
+
if (disabledOptions) {
|
|
623
|
+
return /*#__PURE__*/_react.default.createElement(_Picker.PickerOverlay, {
|
|
624
|
+
ref: (0, _utils.mergeRefs)(overlayRef, speakerRef)
|
|
625
|
+
});
|
|
626
|
+
}
|
|
627
|
+
|
|
587
628
|
var menu = items.length ? /*#__PURE__*/_react.default.createElement(_Picker.DropdownMenu, {
|
|
588
629
|
id: id ? id + "-listbox" : undefined,
|
|
589
630
|
listProps: listProps,
|
|
@@ -598,7 +639,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
598
639
|
maxHeight: menuMaxHeight,
|
|
599
640
|
data: items,
|
|
600
641
|
group: !(0, _isUndefined.default)(groupBy),
|
|
601
|
-
onSelect: multi ?
|
|
642
|
+
onSelect: multi ? handleCheckTag : handleSelectItem,
|
|
602
643
|
renderMenuGroup: renderMenuGroup,
|
|
603
644
|
renderMenuItem: renderDropdownMenuItem,
|
|
604
645
|
virtualized: virtualized
|
|
@@ -615,9 +656,9 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
615
656
|
}, renderMenu ? renderMenu(menu) : menu, renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());
|
|
616
657
|
};
|
|
617
658
|
|
|
618
|
-
var
|
|
619
|
-
isValid =
|
|
620
|
-
|
|
659
|
+
var _checkValue = checkValue(),
|
|
660
|
+
isValid = _checkValue.isValid,
|
|
661
|
+
itemNode = _checkValue.itemNode;
|
|
621
662
|
|
|
622
663
|
var tagElements = renderMultiValue();
|
|
623
664
|
/**
|
|
@@ -626,7 +667,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
626
667
|
* 3.If renderValue returns null or undefined, hasValue is false.
|
|
627
668
|
*/
|
|
628
669
|
|
|
629
|
-
var hasSingleValue = !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(
|
|
670
|
+
var hasSingleValue = !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(itemNode);
|
|
630
671
|
var hasMultiValue = (0, _isArray.default)(value) && value.length > 0 && (0, _isFunction.default)(renderValue) && !(0, _isNil.default)(tagElements);
|
|
631
672
|
var hasValue = multi ? !!(tagElements !== null && tagElements !== void 0 && tagElements.length) || hasMultiValue : isValid || hasSingleValue;
|
|
632
673
|
|
|
@@ -637,7 +678,7 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
637
678
|
pickerClasses = _usePickerClassName[0],
|
|
638
679
|
usedClassNamePropKeys = _usePickerClassName[1];
|
|
639
680
|
|
|
640
|
-
var classes = merge(pickerClasses, (_merge = {}, _merge[prefix(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteralLoose2.default)(["tag"])))] = multi, _merge[prefix(_templateObject3 || (_templateObject3 = (0, _taggedTemplateLiteralLoose2.default)(["focused"])))] = open, _merge));
|
|
681
|
+
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));
|
|
641
682
|
var searching = !!searchKeyword && open;
|
|
642
683
|
var displaySearchInput = searchable && !disabled;
|
|
643
684
|
var inputProps = multi ? {
|
|
@@ -662,9 +703,10 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
662
703
|
return /*#__PURE__*/_react.default.createElement(_Plaintext.default, (0, _extends2.default)({
|
|
663
704
|
localeKey: "notSelected",
|
|
664
705
|
ref: targetRef
|
|
665
|
-
}, plaintextProps),
|
|
706
|
+
}, plaintextProps), itemNode || (tagElements !== null && tagElements !== void 0 && tagElements.length ? tagElements : null) || placeholder);
|
|
666
707
|
}
|
|
667
708
|
|
|
709
|
+
var placeholderNode = placeholder || (disabledOptions ? null : locale === null || locale === void 0 ? void 0 : locale.placeholder);
|
|
668
710
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {
|
|
669
711
|
pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),
|
|
670
712
|
ref: triggerRef,
|
|
@@ -693,9 +735,10 @@ var InputPicker = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
693
735
|
active: open,
|
|
694
736
|
disabled: disabled,
|
|
695
737
|
placement: placement,
|
|
696
|
-
inputValue: value
|
|
697
|
-
|
|
698
|
-
|
|
738
|
+
inputValue: value,
|
|
739
|
+
caret: !disabledOptions
|
|
740
|
+
}), searching || multi && hasValue ? null : itemNode || placeholderNode), !(!multi && disabled) && /*#__PURE__*/_react.default.createElement("div", {
|
|
741
|
+
className: prefix(_templateObject5 || (_templateObject5 = (0, _taggedTemplateLiteralLoose2.default)(["tag-wrapper"])))
|
|
699
742
|
}, tagElements, displaySearchInput && /*#__PURE__*/_react.default.createElement(_InputSearch.default, (0, _extends2.default)({}, inputProps, {
|
|
700
743
|
tabIndex: tabIndex,
|
|
701
744
|
readOnly: readOnly,
|
|
@@ -717,7 +760,6 @@ InputPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes,
|
|
|
717
760
|
menuMaxHeight: _propTypes.default.number,
|
|
718
761
|
searchable: _propTypes.default.bool,
|
|
719
762
|
creatable: _propTypes.default.bool,
|
|
720
|
-
multi: _propTypes.default.bool,
|
|
721
763
|
groupBy: _propTypes.default.any,
|
|
722
764
|
sort: _propTypes.default.func,
|
|
723
765
|
renderMenu: _propTypes.default.func,
|
|
@@ -728,8 +770,7 @@ InputPicker.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes,
|
|
|
728
770
|
onGroupTitleClick: _propTypes.default.func,
|
|
729
771
|
onSearch: _propTypes.default.func,
|
|
730
772
|
virtualized: _propTypes.default.bool,
|
|
731
|
-
searchBy: _propTypes.default.func
|
|
732
|
-
tagProps: _propTypes.default.object
|
|
773
|
+
searchBy: _propTypes.default.func
|
|
733
774
|
});
|
|
734
775
|
var _default = InputPicker;
|
|
735
776
|
exports.default = _default;
|
package/cjs/List/ListItem.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { WithAsProps } from '../@types/common';
|
|
3
3
|
import { Collection } from './helper/useManager';
|
|
4
|
-
export interface ListItemProps extends WithAsProps {
|
|
4
|
+
export interface ListItemProps extends WithAsProps, React.HTMLAttributes<HTMLElement> {
|
|
5
5
|
index?: number;
|
|
6
6
|
collection?: Collection;
|
|
7
7
|
disabled?: boolean;
|
package/cjs/Menu/MenuItem.js
CHANGED
|
@@ -34,7 +34,7 @@ function MenuItem(props) {
|
|
|
34
34
|
dispatch = _ref[1]; // Whether this menuitem has focus (indicated by `aria-activedescendant` from parent menu)
|
|
35
35
|
|
|
36
36
|
|
|
37
|
-
var hasFocus = (menuState === null || menuState === void 0 ? void 0 : (_menuState$items$menu = menuState.items[menuState === null || menuState === void 0 ? void 0 : menuState.activeItemIndex]) === null || _menuState$items$menu === void 0 ? void 0 : _menuState$items$menu.element) === menuitemRef.current;
|
|
37
|
+
var hasFocus = (menuState === null || menuState === void 0 ? void 0 : (_menuState$items$menu = menuState.items[menuState === null || menuState === void 0 ? void 0 : menuState.activeItemIndex]) === null || _menuState$items$menu === void 0 ? void 0 : _menuState$items$menu.element) === menuitemRef.current && !!menuitemRef.current;
|
|
38
38
|
var handleClick = (0, _react.useCallback)(function (event) {
|
|
39
39
|
if (disabled) {
|
|
40
40
|
return;
|
|
@@ -89,6 +89,7 @@ var MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
89
89
|
renderMenuItem = props.renderMenuItem,
|
|
90
90
|
renderExtraFooter = props.renderExtraFooter,
|
|
91
91
|
onEnter = props.onEnter,
|
|
92
|
+
onExit = props.onExit,
|
|
92
93
|
onExited = props.onExited,
|
|
93
94
|
onClean = props.onClean,
|
|
94
95
|
onSearch = props.onSearch,
|
|
@@ -97,7 +98,7 @@ var MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
97
98
|
onOpen = props.onOpen,
|
|
98
99
|
onClose = props.onClose,
|
|
99
100
|
onCheck = props.onCheck,
|
|
100
|
-
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "data", "classPrefix", "defaultValue", "value", "valueKey", "labelKey", "childrenKey", "disabled", "disabledItemValues", "cleanable", "locale", "toggleAs", "style", "countable", "cascade", "inline", "placeholder", "placement", "menuWidth", "menuHeight", "menuClassName", "menuStyle", "searchable", "uncheckableItemValues", "id", "getChildren", "renderValue", "renderMenu", "renderMenuItem", "renderExtraFooter", "onEnter", "onExited", "onClean", "onSearch", "onSelect", "onChange", "onOpen", "onClose", "onCheck"]);
|
|
101
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "data", "classPrefix", "defaultValue", "value", "valueKey", "labelKey", "childrenKey", "disabled", "disabledItemValues", "cleanable", "locale", "toggleAs", "style", "countable", "cascade", "inline", "placeholder", "placement", "menuWidth", "menuHeight", "menuClassName", "menuStyle", "searchable", "uncheckableItemValues", "id", "getChildren", "renderValue", "renderMenu", "renderMenuItem", "renderExtraFooter", "onEnter", "onExit", "onExited", "onClean", "onSearch", "onSelect", "onChange", "onOpen", "onClose", "onCheck"]);
|
|
101
102
|
var itemKeys = {
|
|
102
103
|
childrenKey: childrenKey,
|
|
103
104
|
labelKey: labelKey,
|
|
@@ -202,10 +203,9 @@ var MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
202
203
|
setActive(true);
|
|
203
204
|
}, [onOpen]);
|
|
204
205
|
var handleExited = (0, _react.useCallback)(function () {
|
|
205
|
-
onClose === null || onClose === void 0 ? void 0 : onClose();
|
|
206
206
|
setActive(false);
|
|
207
207
|
setSearchKeyword('');
|
|
208
|
-
}, [
|
|
208
|
+
}, []);
|
|
209
209
|
var handleSelect = (0, _react.useCallback)(function (node, cascadePaths, event) {
|
|
210
210
|
var _node$childrenKey, _node$childrenKey2, _triggerRef$current, _triggerRef$current$u;
|
|
211
211
|
|
|
@@ -493,6 +493,7 @@ var MultiCascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref)
|
|
|
493
493
|
placement: placement,
|
|
494
494
|
onEnter: (0, _utils3.createChainedFunction)(handleEntered, onEnter),
|
|
495
495
|
onExited: (0, _utils3.createChainedFunction)(handleExited, onExited),
|
|
496
|
+
onExit: (0, _utils3.createChainedFunction)(onClose, onExit),
|
|
496
497
|
speaker: renderDropdownMenu
|
|
497
498
|
}, /*#__PURE__*/_react.default.createElement(Component, {
|
|
498
499
|
className: classes,
|