rsuite 5.56.0 → 5.58.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/Accordion/styles/index.css +30 -0
- package/AutoComplete/styles/index.css +0 -137
- package/CHANGELOG.md +32 -0
- package/CascadeTree/package.json +7 -0
- package/CascadeTree/styles/index.css +273 -0
- package/CascadeTree/styles/index.less +77 -0
- package/CascadeTree/styles/search.less +45 -0
- package/Cascader/styles/index.css +187 -329
- package/Cascader/styles/index.less +1 -122
- package/CheckPicker/styles/index.css +0 -137
- package/CheckTree/styles/index.css +0 -137
- package/CheckTreePicker/styles/index.css +0 -137
- package/DatePicker/styles/index.css +0 -137
- package/DateRangePicker/styles/index.css +0 -137
- package/Dropdown/styles/index.css +35 -8
- package/Dropdown/styles/index.less +24 -13
- package/Heading/package.json +7 -0
- package/Heading/styles/index.css +42 -0
- package/Heading/styles/index.less +41 -0
- package/HeadingGroup/package.json +7 -0
- package/HeadingGroup/styles/index.css +5 -0
- package/HeadingGroup/styles/index.less +3 -0
- package/InputPicker/styles/index.css +29 -146
- package/InputPicker/styles/index.less +28 -12
- package/InputPicker/styles/mixin.less +7 -0
- package/MultiCascadeTree/package.json +7 -0
- package/MultiCascadeTree/styles/index.css +3564 -0
- package/MultiCascadeTree/styles/index.less +37 -0
- package/MultiCascader/styles/index.css +72 -206
- package/MultiCascader/styles/index.less +11 -31
- package/Nav/styles/index.css +35 -8
- package/Navbar/styles/index.css +35 -8
- package/Pagination/styles/index.css +0 -137
- package/Panel/styles/index.css +30 -0
- package/Panel/styles/index.less +1 -0
- package/Popover/styles/index.css +30 -0
- package/Popover/styles/index.less +3 -2
- package/SelectPicker/styles/index.css +0 -137
- package/Tabs/styles/index.css +35 -8
- package/TagInput/styles/index.css +132 -150
- package/TagPicker/styles/index.css +132 -150
- package/TagPicker/styles/index.less +57 -5
- package/TagPicker/styles/mixin.less +21 -0
- package/Text/package.json +7 -0
- package/Text/styles/index.css +192 -0
- package/Text/styles/index.less +117 -0
- package/cjs/@types/common.d.ts +12 -14
- package/cjs/CascadeTree/CascadeTree.d.ts +16 -0
- package/cjs/CascadeTree/CascadeTree.js +174 -0
- package/cjs/CascadeTree/SearchView.d.ts +17 -0
- package/cjs/CascadeTree/SearchView.js +106 -0
- package/cjs/CascadeTree/TreeView.d.ts +20 -0
- package/cjs/{Cascader → CascadeTree}/TreeView.js +42 -33
- package/cjs/CascadeTree/hooks/index.d.ts +3 -0
- package/cjs/CascadeTree/hooks/index.js +12 -0
- package/cjs/{Cascader/utils.d.ts → CascadeTree/hooks/usePaths.d.ts} +3 -25
- package/cjs/CascadeTree/hooks/usePaths.js +42 -0
- package/cjs/CascadeTree/hooks/useSearch.d.ts +17 -0
- package/cjs/CascadeTree/hooks/useSearch.js +59 -0
- package/cjs/CascadeTree/hooks/useSelect.d.ts +23 -0
- package/cjs/CascadeTree/hooks/useSelect.js +64 -0
- package/cjs/CascadeTree/index.d.ts +4 -0
- package/cjs/CascadeTree/index.js +9 -0
- package/cjs/CascadeTree/types.d.ts +66 -0
- package/cjs/CascadeTree/types.js +2 -0
- package/cjs/CascadeTree/utils.d.ts +32 -0
- package/cjs/CascadeTree/utils.js +66 -0
- package/cjs/Cascader/Cascader.d.ts +57 -26
- package/cjs/Cascader/Cascader.js +178 -249
- package/cjs/Cascader/useActive.d.ts +15 -0
- package/cjs/Cascader/useActive.js +43 -0
- package/cjs/CheckPicker/CheckPicker.js +2 -9
- package/cjs/CheckTreePicker/CheckTreePicker.js +2 -10
- package/cjs/DatePicker/DatePicker.js +5 -5
- package/cjs/DateRangePicker/DateRangePicker.js +3 -5
- package/cjs/Dropdown/DropdownItem.d.ts +10 -2
- package/cjs/Dropdown/DropdownItem.js +12 -3
- package/cjs/Heading/Heading.d.ts +16 -0
- package/cjs/Heading/Heading.js +44 -0
- package/cjs/Heading/index.d.ts +3 -0
- package/cjs/Heading/index.js +10 -0
- package/cjs/HeadingGroup/HeadingGroup.d.ts +8 -0
- package/cjs/HeadingGroup/HeadingGroup.js +17 -0
- package/cjs/HeadingGroup/index.d.ts +3 -0
- package/cjs/HeadingGroup/index.js +9 -0
- package/cjs/InlineEdit/InlineEdit.d.ts +1 -1
- package/cjs/InputPicker/InputPicker.js +7 -8
- package/cjs/Loader/Loader.js +5 -4
- package/cjs/MultiCascadeTree/MultiCascadeTree.d.ts +9 -0
- package/cjs/MultiCascadeTree/MultiCascadeTree.js +131 -0
- package/cjs/MultiCascadeTree/SearchView.d.ts +17 -0
- package/cjs/MultiCascadeTree/SearchView.js +117 -0
- package/cjs/MultiCascadeTree/TreeView.d.ts +22 -0
- package/cjs/{MultiCascader → MultiCascadeTree}/TreeView.js +20 -20
- package/cjs/MultiCascadeTree/hooks/index.d.ts +5 -0
- package/cjs/MultiCascadeTree/hooks/index.js +16 -0
- package/cjs/MultiCascadeTree/hooks/useCascadeValue.d.ts +18 -0
- package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +202 -0
- package/cjs/MultiCascadeTree/hooks/useColumnData.d.ts +16 -0
- package/cjs/MultiCascadeTree/hooks/useColumnData.js +52 -0
- package/cjs/MultiCascadeTree/hooks/useFlattenData.d.ts +9 -0
- package/cjs/MultiCascadeTree/hooks/useFlattenData.js +33 -0
- package/cjs/MultiCascadeTree/hooks/useSearch.d.ts +17 -0
- package/cjs/MultiCascadeTree/hooks/useSearch.js +52 -0
- package/cjs/MultiCascadeTree/hooks/useSelect.d.ts +19 -0
- package/cjs/MultiCascadeTree/hooks/useSelect.js +83 -0
- package/cjs/MultiCascadeTree/index.d.ts +4 -0
- package/cjs/MultiCascadeTree/index.js +9 -0
- package/cjs/MultiCascadeTree/types.d.ts +26 -0
- package/cjs/MultiCascadeTree/types.js +2 -0
- package/cjs/MultiCascadeTree/utils.d.ts +37 -0
- package/cjs/MultiCascadeTree/utils.js +140 -0
- package/cjs/MultiCascader/MultiCascader.d.ts +57 -29
- package/cjs/MultiCascader/MultiCascader.js +173 -289
- package/cjs/Panel/Panel.js +3 -1
- package/cjs/Popover/Popover.js +3 -1
- package/cjs/SelectPicker/SelectPicker.js +3 -9
- package/cjs/Text/Text.d.ts +47 -0
- package/cjs/Text/Text.js +72 -0
- package/cjs/Text/index.d.ts +3 -0
- package/cjs/Text/index.js +10 -0
- package/cjs/Tree/Tree.d.ts +4 -4
- package/cjs/TreePicker/TreePicker.js +3 -10
- package/cjs/index.d.ts +27 -16
- package/cjs/index.js +30 -19
- package/cjs/internals/Overlay/OverlayTrigger.js +24 -17
- package/cjs/internals/Picker/PickerToggle.d.ts +4 -5
- package/cjs/internals/Picker/PickerToggleTrigger.d.ts +1 -1
- package/cjs/internals/Picker/PickerToggleTrigger.js +1 -1
- package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -2
- package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +0 -4
- package/cjs/toaster/ToastContainer.d.ts +9 -2
- package/cjs/toaster/index.d.ts +0 -1
- package/cjs/toaster/index.js +1 -3
- package/cjs/useToaster/index.d.ts +2 -0
- package/cjs/useToaster/index.js +9 -0
- package/cjs/{toaster → useToaster}/useToaster.d.ts +4 -4
- package/cjs/{toaster → useToaster}/useToaster.js +4 -4
- package/cjs/utils/index.d.ts +1 -0
- package/cjs/utils/index.js +5 -2
- package/dist/rsuite-no-reset-rtl.css +393 -219
- 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 +393 -219
- package/dist/rsuite-no-reset.min.css +1 -1
- package/dist/rsuite-no-reset.min.css.map +1 -1
- package/dist/rsuite-rtl.css +393 -219
- package/dist/rsuite-rtl.min.css +1 -1
- package/dist/rsuite-rtl.min.css.map +1 -1
- package/dist/rsuite.css +393 -219
- package/dist/rsuite.js +321 -57
- 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 +12 -14
- package/esm/CascadeTree/CascadeTree.d.ts +16 -0
- package/esm/CascadeTree/CascadeTree.js +167 -0
- package/esm/CascadeTree/SearchView.d.ts +17 -0
- package/esm/CascadeTree/SearchView.js +100 -0
- package/esm/CascadeTree/TreeView.d.ts +20 -0
- package/esm/{Cascader → CascadeTree}/TreeView.js +42 -33
- package/esm/CascadeTree/hooks/index.d.ts +3 -0
- package/esm/CascadeTree/hooks/index.js +4 -0
- package/esm/{Cascader/utils.d.ts → CascadeTree/hooks/usePaths.d.ts} +3 -25
- package/esm/CascadeTree/hooks/usePaths.js +36 -0
- package/esm/CascadeTree/hooks/useSearch.d.ts +17 -0
- package/esm/CascadeTree/hooks/useSearch.js +54 -0
- package/esm/CascadeTree/hooks/useSelect.d.ts +23 -0
- package/esm/CascadeTree/hooks/useSelect.js +59 -0
- package/esm/CascadeTree/index.d.ts +4 -0
- package/esm/CascadeTree/index.js +3 -0
- package/esm/CascadeTree/types.d.ts +66 -0
- package/esm/CascadeTree/types.js +1 -0
- package/esm/CascadeTree/utils.d.ts +32 -0
- package/esm/CascadeTree/utils.js +61 -0
- package/esm/Cascader/Cascader.d.ts +57 -26
- package/esm/Cascader/Cascader.js +165 -235
- package/esm/Cascader/useActive.d.ts +15 -0
- package/esm/Cascader/useActive.js +37 -0
- package/esm/CheckPicker/CheckPicker.js +2 -9
- package/esm/CheckTreePicker/CheckTreePicker.js +2 -10
- package/esm/DatePicker/DatePicker.js +6 -6
- package/esm/DateRangePicker/DateRangePicker.js +3 -5
- package/esm/Dropdown/DropdownItem.d.ts +10 -2
- package/esm/Dropdown/DropdownItem.js +12 -3
- package/esm/Heading/Heading.d.ts +16 -0
- package/esm/Heading/Heading.js +38 -0
- package/esm/Heading/index.d.ts +3 -0
- package/esm/Heading/index.js +4 -0
- package/esm/HeadingGroup/HeadingGroup.d.ts +8 -0
- package/esm/HeadingGroup/HeadingGroup.js +11 -0
- package/esm/HeadingGroup/index.d.ts +3 -0
- package/esm/HeadingGroup/index.js +3 -0
- package/esm/InlineEdit/InlineEdit.d.ts +1 -1
- package/esm/InputPicker/InputPicker.js +7 -8
- package/esm/Loader/Loader.js +6 -5
- package/esm/MultiCascadeTree/MultiCascadeTree.d.ts +9 -0
- package/esm/MultiCascadeTree/MultiCascadeTree.js +125 -0
- package/esm/MultiCascadeTree/SearchView.d.ts +17 -0
- package/esm/MultiCascadeTree/SearchView.js +111 -0
- package/esm/MultiCascadeTree/TreeView.d.ts +22 -0
- package/esm/{MultiCascader → MultiCascadeTree}/TreeView.js +20 -20
- package/esm/MultiCascadeTree/hooks/index.d.ts +5 -0
- package/esm/MultiCascadeTree/hooks/index.js +6 -0
- package/esm/MultiCascadeTree/hooks/useCascadeValue.d.ts +18 -0
- package/esm/MultiCascadeTree/hooks/useCascadeValue.js +197 -0
- package/esm/MultiCascadeTree/hooks/useColumnData.d.ts +16 -0
- package/esm/MultiCascadeTree/hooks/useColumnData.js +46 -0
- package/esm/MultiCascadeTree/hooks/useFlattenData.d.ts +9 -0
- package/esm/MultiCascadeTree/hooks/useFlattenData.js +28 -0
- package/esm/MultiCascadeTree/hooks/useSearch.d.ts +17 -0
- package/esm/MultiCascadeTree/hooks/useSearch.js +47 -0
- package/esm/MultiCascadeTree/hooks/useSelect.d.ts +19 -0
- package/esm/MultiCascadeTree/hooks/useSelect.js +77 -0
- package/esm/MultiCascadeTree/index.d.ts +4 -0
- package/esm/MultiCascadeTree/index.js +3 -0
- package/esm/MultiCascadeTree/types.d.ts +26 -0
- package/esm/MultiCascadeTree/types.js +1 -0
- package/esm/MultiCascadeTree/utils.d.ts +37 -0
- package/esm/MultiCascadeTree/utils.js +130 -0
- package/esm/MultiCascader/MultiCascader.d.ts +57 -29
- package/esm/MultiCascader/MultiCascader.js +166 -281
- package/esm/Panel/Panel.js +3 -1
- package/esm/Popover/Popover.js +3 -1
- package/esm/SelectPicker/SelectPicker.js +3 -9
- package/esm/Text/Text.d.ts +47 -0
- package/esm/Text/Text.js +66 -0
- package/esm/Text/index.d.ts +3 -0
- package/esm/Text/index.js +4 -0
- package/esm/Tree/Tree.d.ts +4 -4
- package/esm/TreePicker/TreePicker.js +3 -10
- package/esm/index.d.ts +27 -16
- package/esm/index.js +38 -15
- package/esm/internals/Overlay/OverlayTrigger.js +24 -17
- package/esm/internals/Picker/PickerToggle.d.ts +4 -5
- package/esm/internals/Picker/PickerToggleTrigger.d.ts +1 -1
- package/esm/internals/Picker/PickerToggleTrigger.js +1 -1
- package/esm/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -2
- package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +0 -4
- package/esm/toaster/ToastContainer.d.ts +9 -2
- package/esm/toaster/index.d.ts +0 -1
- package/esm/toaster/index.js +0 -1
- package/esm/useToaster/index.d.ts +2 -0
- package/esm/useToaster/index.js +3 -0
- package/esm/{toaster → useToaster}/useToaster.d.ts +4 -4
- package/esm/{toaster → useToaster}/useToaster.js +4 -4
- package/esm/utils/index.d.ts +1 -0
- package/esm/utils/index.js +2 -1
- package/internals/Picker/styles/index.less +0 -5
- package/internals/Picker/styles/mixin.less +0 -73
- package/package.json +1 -1
- package/styles/color-modes/light.less +7 -0
- package/styles/index.less +5 -0
- package/useToaster/package.json +7 -0
- package/useToaster/styles/index.css +239 -0
- package/useToaster/styles/index.less +1 -0
- package/cjs/Cascader/DropdownMenu.d.ts +0 -24
- package/cjs/Cascader/DropdownMenu.js +0 -175
- package/cjs/Cascader/TreeView.d.ts +0 -24
- package/cjs/Cascader/utils.js +0 -79
- package/cjs/MultiCascader/TreeView.d.ts +0 -25
- package/cjs/MultiCascader/utils.d.ts +0 -71
- package/cjs/MultiCascader/utils.js +0 -382
- package/esm/Cascader/DropdownMenu.d.ts +0 -24
- package/esm/Cascader/DropdownMenu.js +0 -168
- package/esm/Cascader/TreeView.d.ts +0 -24
- package/esm/Cascader/utils.js +0 -74
- package/esm/MultiCascader/TreeView.d.ts +0 -25
- package/esm/MultiCascader/utils.d.ts +0 -71
- package/esm/MultiCascader/utils.js +0 -369
package/cjs/Cascader/Cascader.js
CHANGED
|
@@ -5,24 +5,23 @@ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWild
|
|
|
5
5
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
6
|
exports.__esModule = true;
|
|
7
7
|
exports.default = void 0;
|
|
8
|
-
var
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
9
9
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
|
-
var _reactUseSet = require("react-use-set");
|
|
12
11
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
13
12
|
var _omit = _interopRequireDefault(require("lodash/omit"));
|
|
14
13
|
var _pick = _interopRequireDefault(require("lodash/pick"));
|
|
15
14
|
var _isNil = _interopRequireDefault(require("lodash/isNil"));
|
|
16
15
|
var _isFunction = _interopRequireDefault(require("lodash/isFunction"));
|
|
17
|
-
var
|
|
18
|
-
var
|
|
16
|
+
var _TreeView = _interopRequireDefault(require("../CascadeTree/TreeView"));
|
|
17
|
+
var _SearchView = _interopRequireDefault(require("../CascadeTree/SearchView"));
|
|
18
|
+
var _hooks = require("../CascadeTree/hooks");
|
|
19
19
|
var _treeUtils = require("../utils/treeUtils");
|
|
20
|
-
var
|
|
21
|
-
var
|
|
20
|
+
var _propTypes2 = require("../internals/propTypes");
|
|
21
|
+
var _utils = require("../utils");
|
|
22
22
|
var _Picker = require("../internals/Picker");
|
|
23
|
-
var _SearchBox = _interopRequireDefault(require("../internals/SearchBox"));
|
|
24
23
|
var _useMap = require("../utils/useMap");
|
|
25
|
-
var
|
|
24
|
+
var _useActive2 = _interopRequireDefault(require("./useActive"));
|
|
26
25
|
var emptyArray = [];
|
|
27
26
|
|
|
28
27
|
/**
|
|
@@ -55,82 +54,121 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
55
54
|
toggleAs = props.toggleAs,
|
|
56
55
|
style = props.style,
|
|
57
56
|
valueProp = props.value,
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
menuHeight = props.menuHeight,
|
|
57
|
+
popupClassName = props.popupClassName,
|
|
58
|
+
popupStyle = props.popupStyle,
|
|
59
|
+
columnHeight = props.columnHeight,
|
|
60
|
+
columnWidth = props.columnWidth,
|
|
63
61
|
_props$searchable = props.searchable,
|
|
64
62
|
searchable = _props$searchable === void 0 ? true : _props$searchable,
|
|
65
63
|
parentSelectable = props.parentSelectable,
|
|
66
64
|
_props$placement = props.placement,
|
|
67
65
|
placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
|
|
68
66
|
id = props.id,
|
|
69
|
-
|
|
67
|
+
renderColumn = props.renderColumn,
|
|
68
|
+
renderTreeNode = props.renderTreeNode,
|
|
70
69
|
renderSearchItem = props.renderSearchItem,
|
|
71
70
|
renderValue = props.renderValue,
|
|
72
|
-
renderMenu = props.renderMenu,
|
|
73
71
|
renderExtraFooter = props.renderExtraFooter,
|
|
74
|
-
|
|
72
|
+
onEntered = props.onEntered,
|
|
75
73
|
onExited = props.onExited,
|
|
76
74
|
onClean = props.onClean,
|
|
77
75
|
onChange = props.onChange,
|
|
78
76
|
onSelect = props.onSelect,
|
|
79
77
|
onSearch = props.onSearch,
|
|
80
|
-
onClose = props.onClose,
|
|
81
|
-
onOpen = props.onOpen,
|
|
82
78
|
getChildren = props.getChildren,
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
79
|
+
DEPRECATED_menuClassName = props.menuClassName,
|
|
80
|
+
DEPRECATED_menuStyle = props.menuStyle,
|
|
81
|
+
DEPRECATED_menuWidth = props.menuWidth,
|
|
82
|
+
DEPRECATED_menuHeight = props.menuHeight,
|
|
83
|
+
DEPRECATED_renderMenuItem = props.renderMenuItem,
|
|
84
|
+
DEPRECATED_renderMenu = props.renderMenu,
|
|
85
|
+
rest = (0, _objectWithoutPropertiesLoose2.default)(props, ["as", "data", "classPrefix", "childrenKey", "valueKey", "labelKey", "defaultValue", "placeholder", "disabled", "disabledItemValues", "appearance", "cleanable", "locale", "toggleAs", "style", "value", "popupClassName", "popupStyle", "columnHeight", "columnWidth", "searchable", "parentSelectable", "placement", "id", "renderColumn", "renderTreeNode", "renderSearchItem", "renderValue", "renderExtraFooter", "onEntered", "onExited", "onClean", "onChange", "onSelect", "onSearch", "getChildren", "menuClassName", "menuStyle", "menuWidth", "menuHeight", "renderMenuItem", "renderMenu"]);
|
|
87
86
|
var _usePickerRef = (0, _Picker.usePickerRef)(ref),
|
|
88
87
|
trigger = _usePickerRef.trigger,
|
|
89
88
|
root = _usePickerRef.root,
|
|
90
89
|
target = _usePickerRef.target,
|
|
91
90
|
overlay = _usePickerRef.overlay,
|
|
92
91
|
searchInput = _usePickerRef.searchInput;
|
|
93
|
-
var _ref = (0,
|
|
92
|
+
var _ref = (0, _utils.useControlled)(valueProp, defaultValue),
|
|
94
93
|
value = _ref[0],
|
|
95
|
-
setValue = _ref[1];
|
|
96
|
-
var
|
|
97
|
-
|
|
98
|
-
|
|
94
|
+
setValue = _ref[1]; // Store the children of each node
|
|
95
|
+
var childrenMap = (0, _useMap.useMap)();
|
|
96
|
+
|
|
97
|
+
// Store the parent of each node
|
|
99
98
|
var parentMap = (0, _react.useMemo)(function () {
|
|
100
99
|
return (0, _treeUtils.getParentMap)(data, function (item) {
|
|
101
|
-
var
|
|
102
|
-
return (
|
|
100
|
+
var _childrenMap$get;
|
|
101
|
+
return (_childrenMap$get = childrenMap.get(item)) !== null && _childrenMap$get !== void 0 ? _childrenMap$get : item[childrenKey];
|
|
103
102
|
});
|
|
104
|
-
}, [
|
|
103
|
+
}, [childrenMap, childrenKey, data]);
|
|
104
|
+
|
|
105
|
+
// Flatten the tree data
|
|
105
106
|
var flattenedData = (0, _react.useMemo)(function () {
|
|
106
107
|
return (0, _treeUtils.flattenTree)(data, function (item) {
|
|
107
|
-
var
|
|
108
|
-
return (
|
|
108
|
+
var _childrenMap$get2;
|
|
109
|
+
return (_childrenMap$get2 = childrenMap.get(item)) !== null && _childrenMap$get2 !== void 0 ? _childrenMap$get2 : item[childrenKey];
|
|
109
110
|
});
|
|
110
|
-
}, [
|
|
111
|
+
}, [childrenMap, childrenKey, data]);
|
|
112
|
+
|
|
113
|
+
// The selected item
|
|
114
|
+
var selectedItem = flattenedData.find(function (item) {
|
|
115
|
+
return item[valueKey] === value;
|
|
116
|
+
});
|
|
111
117
|
|
|
112
|
-
//
|
|
113
|
-
var
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
118
|
+
// Callback function after selecting the node
|
|
119
|
+
var onSelectCallback = function onSelectCallback(node, event) {
|
|
120
|
+
var _trigger$current;
|
|
121
|
+
var isLeafNode = node.isLeafNode,
|
|
122
|
+
cascadePaths = node.cascadePaths,
|
|
123
|
+
itemData = node.itemData;
|
|
124
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(itemData, cascadePaths, event);
|
|
125
|
+
var nextValue = itemData[valueKey];
|
|
126
|
+
if (isLeafNode) {
|
|
127
|
+
// Determines whether the option is a leaf node, and if so, closes the picker.
|
|
128
|
+
handleClose();
|
|
129
|
+
setValue(nextValue);
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
|
|
133
|
+
// When the parent is optional, the value and the displayed path are updated.
|
|
134
|
+
if (parentSelectable && !(0, _utils.shallowEqual)(value, nextValue)) {
|
|
135
|
+
setValue(nextValue);
|
|
136
|
+
onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
// Update menu position
|
|
140
|
+
(_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : _trigger$current.updatePosition();
|
|
141
|
+
};
|
|
142
|
+
var _useSelect = (0, _hooks.useSelect)({
|
|
143
|
+
value: value,
|
|
144
|
+
valueKey: valueKey,
|
|
145
|
+
childrenKey: childrenKey,
|
|
146
|
+
childrenMap: childrenMap,
|
|
147
|
+
selectedItem: selectedItem,
|
|
148
|
+
getChildren: getChildren,
|
|
149
|
+
onChange: onChange,
|
|
150
|
+
onSelect: onSelectCallback
|
|
151
|
+
}),
|
|
152
|
+
activeItem = _useSelect.activeItem,
|
|
153
|
+
setActiveItem = _useSelect.setActiveItem,
|
|
154
|
+
loadingItemsSet = _useSelect.loadingItemsSet,
|
|
155
|
+
handleSelect = _useSelect.handleSelect;
|
|
156
|
+
var _usePaths = (0, _hooks.usePaths)({
|
|
117
157
|
data: data,
|
|
118
158
|
activeItem: activeItem,
|
|
119
|
-
selectedItem:
|
|
120
|
-
return item[valueKey] === value;
|
|
121
|
-
}),
|
|
159
|
+
selectedItem: selectedItem,
|
|
122
160
|
getParent: function getParent(item) {
|
|
123
161
|
return parentMap.get(item);
|
|
124
162
|
},
|
|
125
163
|
getChildren: function getChildren(item) {
|
|
126
|
-
var
|
|
127
|
-
return (
|
|
164
|
+
var _childrenMap$get3;
|
|
165
|
+
return (_childrenMap$get3 = childrenMap.get(item)) !== null && _childrenMap$get3 !== void 0 ? _childrenMap$get3 : item[childrenKey];
|
|
128
166
|
}
|
|
129
167
|
}),
|
|
130
|
-
|
|
168
|
+
columns = _usePaths.columns,
|
|
131
169
|
pathTowardsActiveItem = _usePaths.pathTowardsActiveItem,
|
|
132
170
|
pathTowardsSelectedItem = _usePaths.pathTowardsSelectedItem;
|
|
133
|
-
var _useCustom = (0,
|
|
171
|
+
var _useCustom = (0, _utils.useCustom)('Picker', overrideLocale),
|
|
134
172
|
locale = _useCustom.locale,
|
|
135
173
|
rtl = _useCustom.rtl;
|
|
136
174
|
/**
|
|
@@ -138,40 +176,14 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
138
176
|
* 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.
|
|
139
177
|
*/
|
|
140
178
|
var hasValue = pathTowardsSelectedItem.length > 0 || !(0, _isNil.default)(value) && (0, _isFunction.default)(renderValue);
|
|
141
|
-
var _useClassNames = (0,
|
|
179
|
+
var _useClassNames = (0, _utils.useClassNames)(classPrefix),
|
|
142
180
|
prefix = _useClassNames.prefix,
|
|
143
181
|
merge = _useClassNames.merge;
|
|
144
|
-
var
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
return true;
|
|
150
|
-
}
|
|
151
|
-
var parent = parentMap.get(item);
|
|
152
|
-
if (parent && someKeyword(parent)) {
|
|
153
|
-
return true;
|
|
154
|
-
}
|
|
155
|
-
return false;
|
|
156
|
-
};
|
|
157
|
-
var getSearchResult = function getSearchResult(keyword) {
|
|
158
|
-
var items = [];
|
|
159
|
-
var result = flattenedData.filter(function (item) {
|
|
160
|
-
if (!parentSelectable && item[childrenKey]) {
|
|
161
|
-
return false;
|
|
162
|
-
}
|
|
163
|
-
return someKeyword(item, keyword);
|
|
164
|
-
});
|
|
165
|
-
for (var i = 0; i < result.length; i++) {
|
|
166
|
-
items.push(result[i]);
|
|
167
|
-
|
|
168
|
-
// A maximum of 100 search results are returned.
|
|
169
|
-
if (i === 99) {
|
|
170
|
-
return items;
|
|
171
|
-
}
|
|
172
|
-
}
|
|
173
|
-
return items;
|
|
174
|
-
};
|
|
182
|
+
var onFocusItemCallback = (0, _react.useCallback)(function (value) {
|
|
183
|
+
setActiveItem(flattenedData.find(function (item) {
|
|
184
|
+
return item[valueKey] === value;
|
|
185
|
+
}));
|
|
186
|
+
}, [flattenedData, setActiveItem, valueKey]);
|
|
175
187
|
|
|
176
188
|
// Used to hover the focuse item when trigger `onKeydown`
|
|
177
189
|
var _useFocusItemValue = (0, _Picker.useFocusItemValue)(value, {
|
|
@@ -185,20 +197,14 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
185
197
|
getParent: function getParent(item) {
|
|
186
198
|
return parentMap.get(item);
|
|
187
199
|
},
|
|
188
|
-
callback:
|
|
189
|
-
setActiveItem(flattenedData.find(function (item) {
|
|
190
|
-
return item[valueKey] === value;
|
|
191
|
-
}));
|
|
192
|
-
}, [flattenedData, setActiveItem, valueKey])
|
|
200
|
+
callback: onFocusItemCallback
|
|
193
201
|
}),
|
|
194
202
|
focusItemValue = _useFocusItemValue.focusItemValue,
|
|
195
203
|
setFocusItemValue = _useFocusItemValue.setFocusItemValue,
|
|
196
204
|
setLayer = _useFocusItemValue.setLayer,
|
|
197
205
|
setKeys = _useFocusItemValue.setKeys,
|
|
198
206
|
onFocusItem = _useFocusItemValue.onKeyDown;
|
|
199
|
-
var
|
|
200
|
-
var items = getSearchResult(value);
|
|
201
|
-
setSearchKeyword(value);
|
|
207
|
+
var onSearchCallback = function onSearchCallback(value, items, event) {
|
|
202
208
|
onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);
|
|
203
209
|
if (!value || items.length === 0) {
|
|
204
210
|
setFocusItemValue(undefined);
|
|
@@ -209,37 +215,43 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
209
215
|
setLayer(0);
|
|
210
216
|
setKeys([]);
|
|
211
217
|
}
|
|
212
|
-
}
|
|
213
|
-
var
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
218
|
+
};
|
|
219
|
+
var _useSearch = (0, _hooks.useSearch)({
|
|
220
|
+
labelKey: labelKey,
|
|
221
|
+
childrenKey: childrenKey,
|
|
222
|
+
parentMap: parentMap,
|
|
223
|
+
flattenedData: flattenedData,
|
|
224
|
+
parentSelectable: parentSelectable,
|
|
225
|
+
onSearch: onSearchCallback
|
|
226
|
+
}),
|
|
227
|
+
items = _useSearch.items,
|
|
228
|
+
searchKeyword = _useSearch.searchKeyword,
|
|
229
|
+
setSearchKeyword = _useSearch.setSearchKeyword,
|
|
230
|
+
handleSearch = _useSearch.handleSearch;
|
|
231
|
+
var _useActive = (0, _useActive2.default)({
|
|
232
|
+
onEntered: onEntered,
|
|
233
|
+
onExited: onExited,
|
|
234
|
+
target: target,
|
|
235
|
+
setSearchKeyword: setSearchKeyword
|
|
236
|
+
}),
|
|
237
|
+
active = _useActive.active,
|
|
238
|
+
handleEntered = _useActive.handleEntered,
|
|
239
|
+
handleExited = _useActive.handleExited;
|
|
240
|
+
var handleClose = (0, _utils.useEventCallback)(function () {
|
|
241
|
+
var _trigger$current2, _target$current, _target$current$focus;
|
|
242
|
+
(_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.close();
|
|
231
243
|
|
|
232
244
|
// The focus is on the trigger button after closing
|
|
233
245
|
(_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);
|
|
234
246
|
});
|
|
235
|
-
var handleClean = (0,
|
|
247
|
+
var handleClean = (0, _utils.useEventCallback)(function (event) {
|
|
236
248
|
if (disabled || !target.current) {
|
|
237
249
|
return;
|
|
238
250
|
}
|
|
239
251
|
setValue(null);
|
|
240
252
|
onChange === null || onChange === void 0 ? void 0 : onChange(null, event);
|
|
241
253
|
});
|
|
242
|
-
var handleMenuPressEnter = (0,
|
|
254
|
+
var handleMenuPressEnter = (0, _utils.useEventCallback)(function (event) {
|
|
243
255
|
var focusItem = (0, _treeUtils.findNodeOfTree)(data, function (item) {
|
|
244
256
|
return item[valueKey] === focusItemValue;
|
|
245
257
|
});
|
|
@@ -249,14 +261,14 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
249
261
|
if (pathTowardsActiveItem.length) {
|
|
250
262
|
setLayer(pathTowardsActiveItem.length - 1);
|
|
251
263
|
}
|
|
252
|
-
if (!(0,
|
|
264
|
+
if (!(0, _utils.shallowEqual)(value, focusItemValue)) {
|
|
253
265
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(focusItem, pathTowardsActiveItem, event);
|
|
254
266
|
onChange === null || onChange === void 0 ? void 0 : onChange(focusItemValue !== null && focusItemValue !== void 0 ? focusItemValue : null, event);
|
|
255
267
|
}
|
|
256
268
|
handleClose();
|
|
257
269
|
}
|
|
258
270
|
});
|
|
259
|
-
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0,
|
|
271
|
+
var onPickerKeyDown = (0, _Picker.useToggleKeyDownEvent)((0, _extends2.default)({
|
|
260
272
|
toggle: !focusItemValue || !active,
|
|
261
273
|
trigger: trigger,
|
|
262
274
|
target: target,
|
|
@@ -267,162 +279,79 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
267
279
|
onMenuKeyDown: onFocusItem,
|
|
268
280
|
onMenuPressEnter: handleMenuPressEnter
|
|
269
281
|
}, rest));
|
|
270
|
-
var handleSelect = (0, _utils2.useEventCallback)(function (node, cascadePaths, isLeafNode, event) {
|
|
271
|
-
var _node$childrenKey, _trigger$current2;
|
|
272
|
-
onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);
|
|
273
|
-
setActiveItem(node);
|
|
274
|
-
var nextValue = node[valueKey];
|
|
275
|
-
|
|
276
|
-
// Lazy load node's children
|
|
277
|
-
if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0 && !asyncChildrenMap.has(node)) {
|
|
278
|
-
loadingItemsSet.add(node);
|
|
279
|
-
var children = getChildren(node);
|
|
280
|
-
if (children instanceof Promise) {
|
|
281
|
-
children.then(function (data) {
|
|
282
|
-
if (isMounted()) {
|
|
283
|
-
loadingItemsSet.delete(node);
|
|
284
|
-
asyncChildrenMap.set(node, data);
|
|
285
|
-
}
|
|
286
|
-
});
|
|
287
|
-
} else {
|
|
288
|
-
loadingItemsSet.delete(node);
|
|
289
|
-
asyncChildrenMap.set(node, children);
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
if (isLeafNode) {
|
|
293
|
-
// Determines whether the option is a leaf node, and if so, closes the picker.
|
|
294
|
-
handleClose();
|
|
295
|
-
setValue(nextValue);
|
|
296
|
-
if (!(0, _shallowEqual.default)(value, nextValue)) {
|
|
297
|
-
onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
|
|
298
|
-
}
|
|
299
|
-
return;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
/** When the parent is optional, the value and the displayed path are updated. */
|
|
303
|
-
if (parentSelectable && !(0, _shallowEqual.default)(value, nextValue)) {
|
|
304
|
-
setValue(nextValue);
|
|
305
|
-
onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
|
|
306
|
-
}
|
|
307
|
-
|
|
308
|
-
// Update menu position
|
|
309
|
-
(_trigger$current2 = trigger.current) === null || _trigger$current2 === void 0 ? void 0 : _trigger$current2.updatePosition();
|
|
310
|
-
});
|
|
311
282
|
|
|
312
283
|
/**
|
|
313
284
|
* The search structure option is processed after being selected.
|
|
314
285
|
*/
|
|
315
|
-
var handleSearchRowSelect = (0,
|
|
316
|
-
var nextValue =
|
|
286
|
+
var handleSearchRowSelect = (0, _utils.useEventCallback)(function (itemData, nodes, event) {
|
|
287
|
+
var nextValue = itemData[valueKey];
|
|
317
288
|
handleClose();
|
|
318
289
|
setSearchKeyword('');
|
|
319
290
|
setValue(nextValue);
|
|
320
|
-
onSelect === null || onSelect === void 0 ? void 0 : onSelect(
|
|
291
|
+
onSelect === null || onSelect === void 0 ? void 0 : onSelect(itemData, nodes, event);
|
|
321
292
|
onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
|
|
322
293
|
});
|
|
323
|
-
var
|
|
324
|
-
var
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
for (var i = 0; i < a.length; i++) {
|
|
334
|
-
labelElements.push(a[i]);
|
|
335
|
-
if (b && b[i]) {
|
|
336
|
-
labelElements.push( /*#__PURE__*/_react.default.createElement("span", {
|
|
337
|
-
key: i,
|
|
338
|
-
className: prefix('cascader-search-match')
|
|
339
|
-
}, b[i]));
|
|
340
|
-
}
|
|
341
|
-
}
|
|
342
|
-
return (0, _extends3.default)({}, node, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2));
|
|
343
|
-
});
|
|
344
|
-
var disabled = disabledItemValues.some(function (value) {
|
|
345
|
-
return formattedNodes.some(function (node) {
|
|
346
|
-
return node[valueKey] === value;
|
|
347
|
-
});
|
|
348
|
-
});
|
|
349
|
-
var itemClasses = prefix('cascader-row', {
|
|
350
|
-
'cascader-row-disabled': disabled,
|
|
351
|
-
'cascader-row-focus': item[valueKey] === focusItemValue
|
|
352
|
-
});
|
|
353
|
-
var label = formattedNodes.map(function (node, index) {
|
|
354
|
-
return /*#__PURE__*/_react.default.createElement("span", {
|
|
355
|
-
key: "col-" + index,
|
|
356
|
-
className: prefix('cascader-col')
|
|
357
|
-
}, node[labelKey]);
|
|
358
|
-
});
|
|
359
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
360
|
-
role: "treeitem",
|
|
361
|
-
key: key,
|
|
362
|
-
"aria-disabled": disabled,
|
|
363
|
-
"data-key": item[valueKey],
|
|
364
|
-
className: itemClasses,
|
|
365
|
-
tabIndex: -1,
|
|
366
|
-
onClick: function onClick(event) {
|
|
367
|
-
if (!disabled) {
|
|
368
|
-
handleSearchRowSelect(item, nodes, event);
|
|
369
|
-
}
|
|
370
|
-
}
|
|
371
|
-
}, renderSearchItem ? renderSearchItem(label, nodes) : label);
|
|
294
|
+
var renderCascadeColumn = function renderCascadeColumn(childNodes, column) {
|
|
295
|
+
var items = column.items,
|
|
296
|
+
parentItem = column.parentItem,
|
|
297
|
+
layer = column.layer;
|
|
298
|
+
if (typeof renderColumn === 'function') {
|
|
299
|
+
return renderColumn(childNodes, column);
|
|
300
|
+
} else if (typeof DEPRECATED_renderMenu === 'function') {
|
|
301
|
+
return DEPRECATED_renderMenu(items, childNodes, parentItem, layer);
|
|
302
|
+
}
|
|
303
|
+
return childNodes;
|
|
372
304
|
};
|
|
373
|
-
var
|
|
374
|
-
|
|
375
|
-
|
|
305
|
+
var renderCascadeTreeNode = function renderCascadeTreeNode(node, itemData) {
|
|
306
|
+
var render = typeof renderTreeNode === 'function' ? renderTreeNode : DEPRECATED_renderMenuItem;
|
|
307
|
+
if (typeof render === 'function') {
|
|
308
|
+
return render(node, itemData);
|
|
376
309
|
}
|
|
377
|
-
|
|
378
|
-
return /*#__PURE__*/_react.default.createElement("div", {
|
|
379
|
-
className: prefix('cascader-search-panel'),
|
|
380
|
-
"data-layer": 0,
|
|
381
|
-
role: "tree"
|
|
382
|
-
}, items.length ? items.map(renderSearchRow) : /*#__PURE__*/_react.default.createElement("div", {
|
|
383
|
-
className: prefix('none')
|
|
384
|
-
}, locale.noResultsText));
|
|
310
|
+
return node;
|
|
385
311
|
};
|
|
386
312
|
var renderTreeView = function renderTreeView(positionProps, speakerRef) {
|
|
387
313
|
var _ref2 = positionProps || {},
|
|
388
314
|
left = _ref2.left,
|
|
389
315
|
top = _ref2.top,
|
|
390
316
|
className = _ref2.className;
|
|
391
|
-
var styles = (0,
|
|
317
|
+
var styles = (0, _extends2.default)({}, DEPRECATED_menuStyle, popupStyle, {
|
|
392
318
|
left: left,
|
|
393
319
|
top: top
|
|
394
320
|
});
|
|
395
|
-
var classes = merge(className,
|
|
396
|
-
inline: inline
|
|
397
|
-
}));
|
|
321
|
+
var classes = merge(className, DEPRECATED_menuClassName, popupClassName, prefix('popup-cascader'));
|
|
398
322
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerPopup, {
|
|
399
|
-
ref: (0,
|
|
323
|
+
ref: (0, _utils.mergeRefs)(overlay, speakerRef),
|
|
400
324
|
className: classes,
|
|
401
325
|
style: styles,
|
|
402
326
|
target: trigger,
|
|
403
327
|
onKeyDown: onPickerKeyDown
|
|
404
|
-
}, searchable && /*#__PURE__*/_react.default.createElement(
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
328
|
+
}, searchable && /*#__PURE__*/_react.default.createElement(_SearchView.default, {
|
|
329
|
+
data: items,
|
|
330
|
+
searchKeyword: searchKeyword,
|
|
331
|
+
valueKey: valueKey,
|
|
332
|
+
labelKey: labelKey,
|
|
333
|
+
parentMap: parentMap,
|
|
334
|
+
disabledItemValues: disabledItemValues,
|
|
335
|
+
focusItemValue: focusItemValue,
|
|
336
|
+
inputRef: searchInput,
|
|
337
|
+
renderSearchItem: renderSearchItem,
|
|
338
|
+
onSelect: handleSearchRowSelect,
|
|
339
|
+
onSearch: handleSearch
|
|
340
|
+
}), searchKeyword === '' && /*#__PURE__*/_react.default.createElement(_TreeView.default, {
|
|
341
|
+
columnWidth: columnWidth !== null && columnWidth !== void 0 ? columnWidth : DEPRECATED_menuWidth,
|
|
342
|
+
columnHeight: columnHeight !== null && columnHeight !== void 0 ? columnHeight : DEPRECATED_menuHeight,
|
|
412
343
|
disabledItemValues: disabledItemValues,
|
|
413
344
|
loadingItemsSet: loadingItemsSet,
|
|
414
345
|
valueKey: valueKey,
|
|
415
346
|
labelKey: labelKey,
|
|
416
347
|
childrenKey: childrenKey,
|
|
417
|
-
classPrefix: '
|
|
418
|
-
|
|
348
|
+
classPrefix: 'cascade-tree',
|
|
349
|
+
data: columns,
|
|
419
350
|
cascadePaths: pathTowardsActiveItem,
|
|
420
|
-
activeItemValue: value
|
|
421
|
-
// FIXME make onSelect generic
|
|
422
|
-
,
|
|
351
|
+
activeItemValue: value,
|
|
423
352
|
onSelect: handleSelect,
|
|
424
|
-
|
|
425
|
-
|
|
353
|
+
renderColumn: renderCascadeColumn,
|
|
354
|
+
renderTreeNode: renderCascadeTreeNode
|
|
426
355
|
}), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());
|
|
427
356
|
};
|
|
428
357
|
var selectedElement = placeholder;
|
|
@@ -448,7 +377,7 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
448
377
|
hasValue = false;
|
|
449
378
|
}
|
|
450
379
|
}
|
|
451
|
-
var _usePickerClassName = (0, _Picker.usePickerClassName)((0,
|
|
380
|
+
var _usePickerClassName = (0, _Picker.usePickerClassName)((0, _extends2.default)({}, props, {
|
|
452
381
|
classPrefix: classPrefix,
|
|
453
382
|
hasValue: hasValue,
|
|
454
383
|
name: 'cascader',
|
|
@@ -456,30 +385,26 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
456
385
|
cleanable: cleanable
|
|
457
386
|
})),
|
|
458
387
|
classes = _usePickerClassName[0],
|
|
459
|
-
usedClassNamePropKeys = _usePickerClassName[1];
|
|
460
|
-
// consider an isolated Menu component
|
|
461
|
-
if (inline) {
|
|
462
|
-
return renderTreeView();
|
|
463
|
-
}
|
|
388
|
+
usedClassNamePropKeys = _usePickerClassName[1];
|
|
464
389
|
return /*#__PURE__*/_react.default.createElement(_Picker.PickerToggleTrigger, {
|
|
465
390
|
id: id,
|
|
466
391
|
popupType: "tree",
|
|
467
392
|
pickerProps: (0, _pick.default)(props, _Picker.pickTriggerPropKeys),
|
|
468
393
|
ref: trigger,
|
|
469
394
|
placement: placement,
|
|
470
|
-
onEntered:
|
|
471
|
-
onExited:
|
|
395
|
+
onEntered: handleEntered,
|
|
396
|
+
onExited: handleExited,
|
|
472
397
|
speaker: renderTreeView
|
|
473
398
|
}, /*#__PURE__*/_react.default.createElement(Component, {
|
|
474
399
|
className: classes,
|
|
475
400
|
style: style,
|
|
476
401
|
ref: root
|
|
477
|
-
}, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0,
|
|
402
|
+
}, /*#__PURE__*/_react.default.createElement(_Picker.PickerToggle, (0, _extends2.default)({}, (0, _omit.default)(rest, [].concat(_Picker.omitTriggerPropKeys, usedClassNamePropKeys)), {
|
|
478
403
|
ref: target,
|
|
479
404
|
as: toggleAs,
|
|
480
405
|
appearance: appearance,
|
|
481
406
|
disabled: disabled,
|
|
482
|
-
onClean: (0,
|
|
407
|
+
onClean: (0, _utils.createChainedFunction)(handleClean, onClean),
|
|
483
408
|
onKeyDown: onPickerKeyDown,
|
|
484
409
|
cleanable: cleanable && !disabled,
|
|
485
410
|
hasValue: hasValue,
|
|
@@ -490,21 +415,25 @@ var Cascader = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {
|
|
|
490
415
|
}), selectedElement || (locale === null || locale === void 0 ? void 0 : locale.placeholder))));
|
|
491
416
|
});
|
|
492
417
|
Cascader.displayName = 'Cascader';
|
|
493
|
-
Cascader.propTypes = (0,
|
|
418
|
+
Cascader.propTypes = (0, _extends2.default)({}, _Picker.listPickerPropTypes, {
|
|
494
419
|
disabledItemValues: _propTypes.default.array,
|
|
495
420
|
locale: _propTypes.default.any,
|
|
496
421
|
appearance: (0, _propTypes2.oneOf)(['default', 'subtle']),
|
|
497
|
-
renderMenu: _propTypes.default.func,
|
|
498
422
|
onSelect: _propTypes.default.func,
|
|
499
423
|
onSearch: _propTypes.default.func,
|
|
500
424
|
cleanable: _propTypes.default.bool,
|
|
501
|
-
|
|
425
|
+
renderColumn: _propTypes.default.func,
|
|
426
|
+
renderTreeNode: _propTypes.default.func,
|
|
502
427
|
renderSearchItem: _propTypes.default.func,
|
|
503
|
-
|
|
504
|
-
|
|
428
|
+
columnWidth: _propTypes.default.number,
|
|
429
|
+
columnHeight: _propTypes.default.number,
|
|
505
430
|
searchable: _propTypes.default.bool,
|
|
506
|
-
|
|
507
|
-
|
|
431
|
+
parentSelectable: _propTypes.default.bool,
|
|
432
|
+
inline: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.bool, 'Use `<CascadeTree>` instead.'),
|
|
433
|
+
renderMenu: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "renderColumn" property instead.'),
|
|
434
|
+
renderMenuItem: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.func, 'Use "renderTreeNode" property instead.'),
|
|
435
|
+
menuWidth: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.number, 'Use "columnWidth" property instead.'),
|
|
436
|
+
menuHeight: (0, _propTypes2.deprecatePropTypeNew)(_propTypes.default.number, 'Use "columnHeight" property instead.')
|
|
508
437
|
});
|
|
509
438
|
var _default = Cascader;
|
|
510
439
|
exports.default = _default;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
interface UseActiveProps {
|
|
3
|
+
target: React.RefObject<HTMLElement>;
|
|
4
|
+
onOpen?: () => void;
|
|
5
|
+
onClose?: () => void;
|
|
6
|
+
onEntered?: (node: HTMLElement) => void;
|
|
7
|
+
onExited?: (node: HTMLElement) => void;
|
|
8
|
+
setSearchKeyword: (keyword: string) => void;
|
|
9
|
+
}
|
|
10
|
+
declare const useActive: (props: UseActiveProps) => {
|
|
11
|
+
active: boolean;
|
|
12
|
+
handleEntered: (...args: any[]) => any;
|
|
13
|
+
handleExited: (...args: any[]) => any;
|
|
14
|
+
};
|
|
15
|
+
export default useActive;
|