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.
Files changed (272) hide show
  1. package/Accordion/styles/index.css +30 -0
  2. package/AutoComplete/styles/index.css +0 -137
  3. package/CHANGELOG.md +32 -0
  4. package/CascadeTree/package.json +7 -0
  5. package/CascadeTree/styles/index.css +273 -0
  6. package/CascadeTree/styles/index.less +77 -0
  7. package/CascadeTree/styles/search.less +45 -0
  8. package/Cascader/styles/index.css +187 -329
  9. package/Cascader/styles/index.less +1 -122
  10. package/CheckPicker/styles/index.css +0 -137
  11. package/CheckTree/styles/index.css +0 -137
  12. package/CheckTreePicker/styles/index.css +0 -137
  13. package/DatePicker/styles/index.css +0 -137
  14. package/DateRangePicker/styles/index.css +0 -137
  15. package/Dropdown/styles/index.css +35 -8
  16. package/Dropdown/styles/index.less +24 -13
  17. package/Heading/package.json +7 -0
  18. package/Heading/styles/index.css +42 -0
  19. package/Heading/styles/index.less +41 -0
  20. package/HeadingGroup/package.json +7 -0
  21. package/HeadingGroup/styles/index.css +5 -0
  22. package/HeadingGroup/styles/index.less +3 -0
  23. package/InputPicker/styles/index.css +29 -146
  24. package/InputPicker/styles/index.less +28 -12
  25. package/InputPicker/styles/mixin.less +7 -0
  26. package/MultiCascadeTree/package.json +7 -0
  27. package/MultiCascadeTree/styles/index.css +3564 -0
  28. package/MultiCascadeTree/styles/index.less +37 -0
  29. package/MultiCascader/styles/index.css +72 -206
  30. package/MultiCascader/styles/index.less +11 -31
  31. package/Nav/styles/index.css +35 -8
  32. package/Navbar/styles/index.css +35 -8
  33. package/Pagination/styles/index.css +0 -137
  34. package/Panel/styles/index.css +30 -0
  35. package/Panel/styles/index.less +1 -0
  36. package/Popover/styles/index.css +30 -0
  37. package/Popover/styles/index.less +3 -2
  38. package/SelectPicker/styles/index.css +0 -137
  39. package/Tabs/styles/index.css +35 -8
  40. package/TagInput/styles/index.css +132 -150
  41. package/TagPicker/styles/index.css +132 -150
  42. package/TagPicker/styles/index.less +57 -5
  43. package/TagPicker/styles/mixin.less +21 -0
  44. package/Text/package.json +7 -0
  45. package/Text/styles/index.css +192 -0
  46. package/Text/styles/index.less +117 -0
  47. package/cjs/@types/common.d.ts +12 -14
  48. package/cjs/CascadeTree/CascadeTree.d.ts +16 -0
  49. package/cjs/CascadeTree/CascadeTree.js +174 -0
  50. package/cjs/CascadeTree/SearchView.d.ts +17 -0
  51. package/cjs/CascadeTree/SearchView.js +106 -0
  52. package/cjs/CascadeTree/TreeView.d.ts +20 -0
  53. package/cjs/{Cascader → CascadeTree}/TreeView.js +42 -33
  54. package/cjs/CascadeTree/hooks/index.d.ts +3 -0
  55. package/cjs/CascadeTree/hooks/index.js +12 -0
  56. package/cjs/{Cascader/utils.d.ts → CascadeTree/hooks/usePaths.d.ts} +3 -25
  57. package/cjs/CascadeTree/hooks/usePaths.js +42 -0
  58. package/cjs/CascadeTree/hooks/useSearch.d.ts +17 -0
  59. package/cjs/CascadeTree/hooks/useSearch.js +59 -0
  60. package/cjs/CascadeTree/hooks/useSelect.d.ts +23 -0
  61. package/cjs/CascadeTree/hooks/useSelect.js +64 -0
  62. package/cjs/CascadeTree/index.d.ts +4 -0
  63. package/cjs/CascadeTree/index.js +9 -0
  64. package/cjs/CascadeTree/types.d.ts +66 -0
  65. package/cjs/CascadeTree/types.js +2 -0
  66. package/cjs/CascadeTree/utils.d.ts +32 -0
  67. package/cjs/CascadeTree/utils.js +66 -0
  68. package/cjs/Cascader/Cascader.d.ts +57 -26
  69. package/cjs/Cascader/Cascader.js +178 -249
  70. package/cjs/Cascader/useActive.d.ts +15 -0
  71. package/cjs/Cascader/useActive.js +43 -0
  72. package/cjs/CheckPicker/CheckPicker.js +2 -9
  73. package/cjs/CheckTreePicker/CheckTreePicker.js +2 -10
  74. package/cjs/DatePicker/DatePicker.js +5 -5
  75. package/cjs/DateRangePicker/DateRangePicker.js +3 -5
  76. package/cjs/Dropdown/DropdownItem.d.ts +10 -2
  77. package/cjs/Dropdown/DropdownItem.js +12 -3
  78. package/cjs/Heading/Heading.d.ts +16 -0
  79. package/cjs/Heading/Heading.js +44 -0
  80. package/cjs/Heading/index.d.ts +3 -0
  81. package/cjs/Heading/index.js +10 -0
  82. package/cjs/HeadingGroup/HeadingGroup.d.ts +8 -0
  83. package/cjs/HeadingGroup/HeadingGroup.js +17 -0
  84. package/cjs/HeadingGroup/index.d.ts +3 -0
  85. package/cjs/HeadingGroup/index.js +9 -0
  86. package/cjs/InlineEdit/InlineEdit.d.ts +1 -1
  87. package/cjs/InputPicker/InputPicker.js +7 -8
  88. package/cjs/Loader/Loader.js +5 -4
  89. package/cjs/MultiCascadeTree/MultiCascadeTree.d.ts +9 -0
  90. package/cjs/MultiCascadeTree/MultiCascadeTree.js +131 -0
  91. package/cjs/MultiCascadeTree/SearchView.d.ts +17 -0
  92. package/cjs/MultiCascadeTree/SearchView.js +117 -0
  93. package/cjs/MultiCascadeTree/TreeView.d.ts +22 -0
  94. package/cjs/{MultiCascader → MultiCascadeTree}/TreeView.js +20 -20
  95. package/cjs/MultiCascadeTree/hooks/index.d.ts +5 -0
  96. package/cjs/MultiCascadeTree/hooks/index.js +16 -0
  97. package/cjs/MultiCascadeTree/hooks/useCascadeValue.d.ts +18 -0
  98. package/cjs/MultiCascadeTree/hooks/useCascadeValue.js +202 -0
  99. package/cjs/MultiCascadeTree/hooks/useColumnData.d.ts +16 -0
  100. package/cjs/MultiCascadeTree/hooks/useColumnData.js +52 -0
  101. package/cjs/MultiCascadeTree/hooks/useFlattenData.d.ts +9 -0
  102. package/cjs/MultiCascadeTree/hooks/useFlattenData.js +33 -0
  103. package/cjs/MultiCascadeTree/hooks/useSearch.d.ts +17 -0
  104. package/cjs/MultiCascadeTree/hooks/useSearch.js +52 -0
  105. package/cjs/MultiCascadeTree/hooks/useSelect.d.ts +19 -0
  106. package/cjs/MultiCascadeTree/hooks/useSelect.js +83 -0
  107. package/cjs/MultiCascadeTree/index.d.ts +4 -0
  108. package/cjs/MultiCascadeTree/index.js +9 -0
  109. package/cjs/MultiCascadeTree/types.d.ts +26 -0
  110. package/cjs/MultiCascadeTree/types.js +2 -0
  111. package/cjs/MultiCascadeTree/utils.d.ts +37 -0
  112. package/cjs/MultiCascadeTree/utils.js +140 -0
  113. package/cjs/MultiCascader/MultiCascader.d.ts +57 -29
  114. package/cjs/MultiCascader/MultiCascader.js +173 -289
  115. package/cjs/Panel/Panel.js +3 -1
  116. package/cjs/Popover/Popover.js +3 -1
  117. package/cjs/SelectPicker/SelectPicker.js +3 -9
  118. package/cjs/Text/Text.d.ts +47 -0
  119. package/cjs/Text/Text.js +72 -0
  120. package/cjs/Text/index.d.ts +3 -0
  121. package/cjs/Text/index.js +10 -0
  122. package/cjs/Tree/Tree.d.ts +4 -4
  123. package/cjs/TreePicker/TreePicker.js +3 -10
  124. package/cjs/index.d.ts +27 -16
  125. package/cjs/index.js +30 -19
  126. package/cjs/internals/Overlay/OverlayTrigger.js +24 -17
  127. package/cjs/internals/Picker/PickerToggle.d.ts +4 -5
  128. package/cjs/internals/Picker/PickerToggleTrigger.d.ts +1 -1
  129. package/cjs/internals/Picker/PickerToggleTrigger.js +1 -1
  130. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -2
  131. package/cjs/internals/Picker/hooks/useToggleKeyDownEvent.js +0 -4
  132. package/cjs/toaster/ToastContainer.d.ts +9 -2
  133. package/cjs/toaster/index.d.ts +0 -1
  134. package/cjs/toaster/index.js +1 -3
  135. package/cjs/useToaster/index.d.ts +2 -0
  136. package/cjs/useToaster/index.js +9 -0
  137. package/cjs/{toaster → useToaster}/useToaster.d.ts +4 -4
  138. package/cjs/{toaster → useToaster}/useToaster.js +4 -4
  139. package/cjs/utils/index.d.ts +1 -0
  140. package/cjs/utils/index.js +5 -2
  141. package/dist/rsuite-no-reset-rtl.css +393 -219
  142. package/dist/rsuite-no-reset-rtl.min.css +1 -1
  143. package/dist/rsuite-no-reset-rtl.min.css.map +1 -1
  144. package/dist/rsuite-no-reset.css +393 -219
  145. package/dist/rsuite-no-reset.min.css +1 -1
  146. package/dist/rsuite-no-reset.min.css.map +1 -1
  147. package/dist/rsuite-rtl.css +393 -219
  148. package/dist/rsuite-rtl.min.css +1 -1
  149. package/dist/rsuite-rtl.min.css.map +1 -1
  150. package/dist/rsuite.css +393 -219
  151. package/dist/rsuite.js +321 -57
  152. package/dist/rsuite.js.map +1 -1
  153. package/dist/rsuite.min.css +1 -1
  154. package/dist/rsuite.min.css.map +1 -1
  155. package/dist/rsuite.min.js +1 -1
  156. package/dist/rsuite.min.js.map +1 -1
  157. package/esm/@types/common.d.ts +12 -14
  158. package/esm/CascadeTree/CascadeTree.d.ts +16 -0
  159. package/esm/CascadeTree/CascadeTree.js +167 -0
  160. package/esm/CascadeTree/SearchView.d.ts +17 -0
  161. package/esm/CascadeTree/SearchView.js +100 -0
  162. package/esm/CascadeTree/TreeView.d.ts +20 -0
  163. package/esm/{Cascader → CascadeTree}/TreeView.js +42 -33
  164. package/esm/CascadeTree/hooks/index.d.ts +3 -0
  165. package/esm/CascadeTree/hooks/index.js +4 -0
  166. package/esm/{Cascader/utils.d.ts → CascadeTree/hooks/usePaths.d.ts} +3 -25
  167. package/esm/CascadeTree/hooks/usePaths.js +36 -0
  168. package/esm/CascadeTree/hooks/useSearch.d.ts +17 -0
  169. package/esm/CascadeTree/hooks/useSearch.js +54 -0
  170. package/esm/CascadeTree/hooks/useSelect.d.ts +23 -0
  171. package/esm/CascadeTree/hooks/useSelect.js +59 -0
  172. package/esm/CascadeTree/index.d.ts +4 -0
  173. package/esm/CascadeTree/index.js +3 -0
  174. package/esm/CascadeTree/types.d.ts +66 -0
  175. package/esm/CascadeTree/types.js +1 -0
  176. package/esm/CascadeTree/utils.d.ts +32 -0
  177. package/esm/CascadeTree/utils.js +61 -0
  178. package/esm/Cascader/Cascader.d.ts +57 -26
  179. package/esm/Cascader/Cascader.js +165 -235
  180. package/esm/Cascader/useActive.d.ts +15 -0
  181. package/esm/Cascader/useActive.js +37 -0
  182. package/esm/CheckPicker/CheckPicker.js +2 -9
  183. package/esm/CheckTreePicker/CheckTreePicker.js +2 -10
  184. package/esm/DatePicker/DatePicker.js +6 -6
  185. package/esm/DateRangePicker/DateRangePicker.js +3 -5
  186. package/esm/Dropdown/DropdownItem.d.ts +10 -2
  187. package/esm/Dropdown/DropdownItem.js +12 -3
  188. package/esm/Heading/Heading.d.ts +16 -0
  189. package/esm/Heading/Heading.js +38 -0
  190. package/esm/Heading/index.d.ts +3 -0
  191. package/esm/Heading/index.js +4 -0
  192. package/esm/HeadingGroup/HeadingGroup.d.ts +8 -0
  193. package/esm/HeadingGroup/HeadingGroup.js +11 -0
  194. package/esm/HeadingGroup/index.d.ts +3 -0
  195. package/esm/HeadingGroup/index.js +3 -0
  196. package/esm/InlineEdit/InlineEdit.d.ts +1 -1
  197. package/esm/InputPicker/InputPicker.js +7 -8
  198. package/esm/Loader/Loader.js +6 -5
  199. package/esm/MultiCascadeTree/MultiCascadeTree.d.ts +9 -0
  200. package/esm/MultiCascadeTree/MultiCascadeTree.js +125 -0
  201. package/esm/MultiCascadeTree/SearchView.d.ts +17 -0
  202. package/esm/MultiCascadeTree/SearchView.js +111 -0
  203. package/esm/MultiCascadeTree/TreeView.d.ts +22 -0
  204. package/esm/{MultiCascader → MultiCascadeTree}/TreeView.js +20 -20
  205. package/esm/MultiCascadeTree/hooks/index.d.ts +5 -0
  206. package/esm/MultiCascadeTree/hooks/index.js +6 -0
  207. package/esm/MultiCascadeTree/hooks/useCascadeValue.d.ts +18 -0
  208. package/esm/MultiCascadeTree/hooks/useCascadeValue.js +197 -0
  209. package/esm/MultiCascadeTree/hooks/useColumnData.d.ts +16 -0
  210. package/esm/MultiCascadeTree/hooks/useColumnData.js +46 -0
  211. package/esm/MultiCascadeTree/hooks/useFlattenData.d.ts +9 -0
  212. package/esm/MultiCascadeTree/hooks/useFlattenData.js +28 -0
  213. package/esm/MultiCascadeTree/hooks/useSearch.d.ts +17 -0
  214. package/esm/MultiCascadeTree/hooks/useSearch.js +47 -0
  215. package/esm/MultiCascadeTree/hooks/useSelect.d.ts +19 -0
  216. package/esm/MultiCascadeTree/hooks/useSelect.js +77 -0
  217. package/esm/MultiCascadeTree/index.d.ts +4 -0
  218. package/esm/MultiCascadeTree/index.js +3 -0
  219. package/esm/MultiCascadeTree/types.d.ts +26 -0
  220. package/esm/MultiCascadeTree/types.js +1 -0
  221. package/esm/MultiCascadeTree/utils.d.ts +37 -0
  222. package/esm/MultiCascadeTree/utils.js +130 -0
  223. package/esm/MultiCascader/MultiCascader.d.ts +57 -29
  224. package/esm/MultiCascader/MultiCascader.js +166 -281
  225. package/esm/Panel/Panel.js +3 -1
  226. package/esm/Popover/Popover.js +3 -1
  227. package/esm/SelectPicker/SelectPicker.js +3 -9
  228. package/esm/Text/Text.d.ts +47 -0
  229. package/esm/Text/Text.js +66 -0
  230. package/esm/Text/index.d.ts +3 -0
  231. package/esm/Text/index.js +4 -0
  232. package/esm/Tree/Tree.d.ts +4 -4
  233. package/esm/TreePicker/TreePicker.js +3 -10
  234. package/esm/index.d.ts +27 -16
  235. package/esm/index.js +38 -15
  236. package/esm/internals/Overlay/OverlayTrigger.js +24 -17
  237. package/esm/internals/Picker/PickerToggle.d.ts +4 -5
  238. package/esm/internals/Picker/PickerToggleTrigger.d.ts +1 -1
  239. package/esm/internals/Picker/PickerToggleTrigger.js +1 -1
  240. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.d.ts +0 -2
  241. package/esm/internals/Picker/hooks/useToggleKeyDownEvent.js +0 -4
  242. package/esm/toaster/ToastContainer.d.ts +9 -2
  243. package/esm/toaster/index.d.ts +0 -1
  244. package/esm/toaster/index.js +0 -1
  245. package/esm/useToaster/index.d.ts +2 -0
  246. package/esm/useToaster/index.js +3 -0
  247. package/esm/{toaster → useToaster}/useToaster.d.ts +4 -4
  248. package/esm/{toaster → useToaster}/useToaster.js +4 -4
  249. package/esm/utils/index.d.ts +1 -0
  250. package/esm/utils/index.js +2 -1
  251. package/internals/Picker/styles/index.less +0 -5
  252. package/internals/Picker/styles/mixin.less +0 -73
  253. package/package.json +1 -1
  254. package/styles/color-modes/light.less +7 -0
  255. package/styles/index.less +5 -0
  256. package/useToaster/package.json +7 -0
  257. package/useToaster/styles/index.css +239 -0
  258. package/useToaster/styles/index.less +1 -0
  259. package/cjs/Cascader/DropdownMenu.d.ts +0 -24
  260. package/cjs/Cascader/DropdownMenu.js +0 -175
  261. package/cjs/Cascader/TreeView.d.ts +0 -24
  262. package/cjs/Cascader/utils.js +0 -79
  263. package/cjs/MultiCascader/TreeView.d.ts +0 -25
  264. package/cjs/MultiCascader/utils.d.ts +0 -71
  265. package/cjs/MultiCascader/utils.js +0 -382
  266. package/esm/Cascader/DropdownMenu.d.ts +0 -24
  267. package/esm/Cascader/DropdownMenu.js +0 -168
  268. package/esm/Cascader/TreeView.d.ts +0 -24
  269. package/esm/Cascader/utils.js +0 -74
  270. package/esm/MultiCascader/TreeView.d.ts +0 -25
  271. package/esm/MultiCascader/utils.d.ts +0 -71
  272. package/esm/MultiCascader/utils.js +0 -369
@@ -1,21 +1,22 @@
1
1
  'use client';
2
2
  import _extends from "@babel/runtime/helpers/esm/extends";
3
3
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
4
- import React, { useState, useCallback } from 'react';
4
+ import React, { useCallback } from 'react';
5
5
  import PropTypes from 'prop-types';
6
6
  import pick from 'lodash/pick';
7
7
  import omit from 'lodash/omit';
8
8
  import isFunction from 'lodash/isFunction';
9
9
  import isNil from 'lodash/isNil';
10
- import TreeView from './TreeView';
11
- import Checkbox from '../Checkbox';
12
- import { useCascadeValue, useColumnData, useFlattenData, isSomeChildChecked } from './utils';
13
- import { getNodeParents, findNodeOfTree } from '../utils/treeUtils';
14
- import { getColumnsAndPaths } from '../Cascader/utils';
15
- import { createChainedFunction, mergeRefs, getSafeRegExpString, useClassNames, useCustom, useUpdateEffect, useControlled, useEventCallback } from '../utils';
10
+ import { findNodeOfTree } from '../utils/treeUtils';
11
+ import { getColumnsAndPaths } from '../CascadeTree/utils';
12
+ import { createChainedFunction, mergeRefs, useClassNames, useCustom, useControlled, useEventCallback } from '../utils';
16
13
  import { PickerToggle, PickerPopup, SelectedElement, PickerToggleTrigger, usePickerClassName, usePickerRef, useToggleKeyDownEvent, useFocusItemValue, pickTriggerPropKeys, omitTriggerPropKeys, listPickerPropTypes } from '../internals/Picker';
17
- import SearchBox from '../internals/SearchBox';
14
+ import { deprecatePropTypeNew } from '../internals/propTypes';
15
+ import { useCascadeValue, useSearch, useSelect } from '../MultiCascadeTree/hooks';
16
+ import TreeView from '../MultiCascadeTree/TreeView';
17
+ import SearchView from '../MultiCascadeTree/SearchView';
18
18
  import { oneOf } from '../internals/propTypes';
19
+ import useActive from '../Cascader/useActive';
19
20
  var emptyArray = [];
20
21
 
21
22
  /**
@@ -26,23 +27,27 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
26
27
  var _selectedPaths;
27
28
  var _props$as = props.as,
28
29
  Component = _props$as === void 0 ? 'div' : _props$as,
29
- _props$data = props.data,
30
- data = _props$data === void 0 ? emptyArray : _props$data,
30
+ _props$appearance = props.appearance,
31
+ appearance = _props$appearance === void 0 ? 'default' : _props$appearance,
31
32
  _props$classPrefix = props.classPrefix,
32
33
  classPrefix = _props$classPrefix === void 0 ? 'picker' : _props$classPrefix,
33
34
  defaultValue = props.defaultValue,
34
- valueProp = props.value,
35
- _props$valueKey = props.valueKey,
36
- valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,
37
- _props$labelKey = props.labelKey,
38
- labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,
35
+ columnHeight = props.columnHeight,
36
+ columnWidth = props.columnWidth,
39
37
  _props$childrenKey = props.childrenKey,
40
38
  childrenKey = _props$childrenKey === void 0 ? 'children' : _props$childrenKey,
39
+ _props$cleanable = props.cleanable,
40
+ cleanable = _props$cleanable === void 0 ? true : _props$cleanable,
41
+ _props$data = props.data,
42
+ data = _props$data === void 0 ? emptyArray : _props$data,
41
43
  disabled = props.disabled,
42
44
  _props$disabledItemVa = props.disabledItemValues,
43
45
  disabledItemValues = _props$disabledItemVa === void 0 ? emptyArray : _props$disabledItemVa,
44
- _props$cleanable = props.cleanable,
45
- cleanable = _props$cleanable === void 0 ? true : _props$cleanable,
46
+ valueProp = props.value,
47
+ _props$valueKey = props.valueKey,
48
+ valueKey = _props$valueKey === void 0 ? 'value' : _props$valueKey,
49
+ _props$labelKey = props.labelKey,
50
+ labelKey = _props$labelKey === void 0 ? 'label' : _props$labelKey,
46
51
  overrideLocale = props.locale,
47
52
  toggleAs = props.toggleAs,
48
53
  style = props.style,
@@ -50,16 +55,11 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
50
55
  countable = _props$countable === void 0 ? true : _props$countable,
51
56
  _props$cascade = props.cascade,
52
57
  cascade = _props$cascade === void 0 ? true : _props$cascade,
53
- inline = props.inline,
54
58
  placeholder = props.placeholder,
55
59
  _props$placement = props.placement,
56
60
  placement = _props$placement === void 0 ? 'bottomStart' : _props$placement,
57
- _props$appearance = props.appearance,
58
- appearance = _props$appearance === void 0 ? 'default' : _props$appearance,
59
- menuWidth = props.menuWidth,
60
- menuHeight = props.menuHeight,
61
- menuClassName = props.menuClassName,
62
- menuStyle = props.menuStyle,
61
+ popupClassName = props.popupClassName,
62
+ popupStyle = props.popupStyle,
63
63
  _props$searchable = props.searchable,
64
64
  searchable = _props$searchable === void 0 ? true : _props$searchable,
65
65
  _props$uncheckableIte = props.uncheckableItemValues,
@@ -67,55 +67,23 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
67
67
  id = props.id,
68
68
  getChildren = props.getChildren,
69
69
  renderValue = props.renderValue,
70
- renderMenu = props.renderMenu,
71
- renderMenuItem = props.renderMenuItem,
72
70
  renderExtraFooter = props.renderExtraFooter,
73
- onEnter = props.onEnter,
74
- onExit = props.onExit,
71
+ renderColumn = props.renderColumn,
72
+ renderTreeNode = props.renderTreeNode,
73
+ onEntered = props.onEntered,
75
74
  onExited = props.onExited,
76
75
  onClean = props.onClean,
77
76
  onSearch = props.onSearch,
78
77
  onSelect = props.onSelect,
79
78
  onChange = props.onChange,
80
- onOpen = props.onOpen,
81
- onClose = props.onClose,
82
79
  onCheck = props.onCheck,
83
- rest = _objectWithoutPropertiesLoose(props, ["as", "data", "classPrefix", "defaultValue", "value", "valueKey", "labelKey", "childrenKey", "disabled", "disabledItemValues", "cleanable", "locale", "toggleAs", "style", "countable", "cascade", "inline", "placeholder", "placement", "appearance", "menuWidth", "menuHeight", "menuClassName", "menuStyle", "searchable", "uncheckableItemValues", "id", "getChildren", "renderValue", "renderMenu", "renderMenuItem", "renderExtraFooter", "onEnter", "onExit", "onExited", "onClean", "onSearch", "onSelect", "onChange", "onOpen", "onClose", "onCheck"]);
84
- var itemKeys = {
85
- childrenKey: childrenKey,
86
- labelKey: labelKey,
87
- valueKey: valueKey
88
- };
89
- var _useState = useState(false),
90
- active = _useState[0],
91
- setActive = _useState[1];
92
- var _useFlattenData = useFlattenData(data, itemKeys),
93
- flattenData = _useFlattenData.flattenData,
94
- addFlattenData = _useFlattenData.addFlattenData;
95
- var _useControlled = useControlled(valueProp, defaultValue),
96
- controlledValue = _useControlled[0];
97
- var _useCascadeValue = useCascadeValue(_extends({}, itemKeys, {
98
- uncheckableItemValues: uncheckableItemValues,
99
- cascade: cascade,
100
- value: controlledValue
101
- }), flattenData),
102
- value = _useCascadeValue.value,
103
- setValue = _useCascadeValue.setValue,
104
- splitValue = _useCascadeValue.splitValue; // The columns displayed in the cascading panel.
105
- var _useColumnData = useColumnData(flattenData),
106
- columnData = _useColumnData.columnData,
107
- setColumnData = _useColumnData.setColumnData,
108
- addColumn = _useColumnData.addColumn,
109
- removeColumnByIndex = _useColumnData.removeColumnByIndex,
110
- enforceUpdateColumnData = _useColumnData.enforceUpdateColumnData;
111
- useUpdateEffect(function () {
112
- enforceUpdateColumnData(data);
113
- }, [data]);
114
-
115
- // The path after cascading data selection.
116
- var _useState2 = useState(),
117
- selectedPaths = _useState2[0],
118
- setSelectedPaths = _useState2[1];
80
+ DEPRECATED_menuClassName = props.menuClassName,
81
+ DEPRECATED_menuStyle = props.menuStyle,
82
+ DEPRECATED_menuWidth = props.menuWidth,
83
+ DEPRECATED_menuHeight = props.menuHeight,
84
+ DEPRECATED_renderMenu = props.renderMenu,
85
+ DEPRECATED_renderMenuItem = props.renderMenuItem,
86
+ rest = _objectWithoutPropertiesLoose(props, ["as", "appearance", "classPrefix", "defaultValue", "columnHeight", "columnWidth", "childrenKey", "cleanable", "data", "disabled", "disabledItemValues", "value", "valueKey", "labelKey", "locale", "toggleAs", "style", "countable", "cascade", "placeholder", "placement", "popupClassName", "popupStyle", "searchable", "uncheckableItemValues", "id", "getChildren", "renderValue", "renderExtraFooter", "renderColumn", "renderTreeNode", "onEntered", "onExited", "onClean", "onSearch", "onSelect", "onChange", "onCheck", "menuClassName", "menuStyle", "menuWidth", "menuHeight", "renderMenu", "renderMenuItem"]);
119
87
  var _usePickerRef = usePickerRef(ref),
120
88
  trigger = _usePickerRef.trigger,
121
89
  root = _usePickerRef.root,
@@ -125,11 +93,67 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
125
93
  var _useCustom = useCustom('Picker', overrideLocale),
126
94
  locale = _useCustom.locale,
127
95
  rtl = _useCustom.rtl;
96
+ var _useClassNames = useClassNames(classPrefix),
97
+ prefix = _useClassNames.prefix,
98
+ merge = _useClassNames.merge;
99
+ var onSelectCallback = useCallback(function (node, cascadePaths, event) {
100
+ var _trigger$current, _trigger$current$upda;
101
+ onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);
102
+ (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$upda = _trigger$current.updatePosition) === null || _trigger$current$upda === void 0 ? void 0 : _trigger$current$upda.call(_trigger$current);
103
+ }, [onSelect, trigger]);
104
+ var _useSelect = useSelect({
105
+ data: data,
106
+ childrenKey: childrenKey,
107
+ labelKey: labelKey,
108
+ valueKey: valueKey,
109
+ onSelect: onSelectCallback,
110
+ getChildren: getChildren
111
+ }),
112
+ selectedPaths = _useSelect.selectedPaths,
113
+ flattenData = _useSelect.flattenData,
114
+ columnData = _useSelect.columnData,
115
+ setColumnData = _useSelect.setColumnData,
116
+ setSelectedPaths = _useSelect.setSelectedPaths,
117
+ handleSelect = _useSelect.handleSelect;
118
+ var _useControlled = useControlled(valueProp, defaultValue),
119
+ controlledValue = _useControlled[0];
120
+ var itemKeys = {
121
+ childrenKey: childrenKey,
122
+ labelKey: labelKey,
123
+ valueKey: valueKey
124
+ };
125
+ var cascadeValueProps = _extends({}, itemKeys, {
126
+ uncheckableItemValues: uncheckableItemValues,
127
+ cascade: cascade,
128
+ value: controlledValue,
129
+ onCheck: onCheck,
130
+ onChange: onChange
131
+ });
132
+ var _useCascadeValue = useCascadeValue(cascadeValueProps, flattenData),
133
+ value = _useCascadeValue.value,
134
+ setValue = _useCascadeValue.setValue,
135
+ handleCheck = _useCascadeValue.handleCheck;
128
136
  var selectedItems = flattenData.filter(function (item) {
129
137
  return value.some(function (v) {
130
138
  return v === item[valueKey];
131
139
  });
132
140
  }) || [];
141
+ var onFocusItemCallback = useCallback(function (value) {
142
+ var _getColumnsAndPaths = getColumnsAndPaths(data, flattenData.find(function (item) {
143
+ return item[valueKey] === value;
144
+ }), {
145
+ getParent: function getParent() {
146
+ return undefined;
147
+ },
148
+ getChildren: function getChildren(item) {
149
+ return item[childrenKey];
150
+ }
151
+ }),
152
+ columns = _getColumnsAndPaths.columns,
153
+ path = _getColumnsAndPaths.path;
154
+ setColumnData(columns);
155
+ setSelectedPaths(path);
156
+ }, [childrenKey, data, flattenData, setColumnData, setSelectedPaths, valueKey]);
133
157
 
134
158
  // Used to hover the focuse item when trigger `onKeydown`
135
159
  var _useFocusItemValue = useFocusItemValue(selectedPaths === null || selectedPaths === void 0 ? void 0 : (_selectedPaths = selectedPaths[selectedPaths.length - 1]) === null || _selectedPaths === void 0 ? void 0 : _selectedPaths[valueKey], {
@@ -140,98 +164,42 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
140
164
  target: function target() {
141
165
  return overlay.current;
142
166
  },
143
- callback: useCallback(function (value) {
144
- var _getColumnsAndPaths = getColumnsAndPaths(data, flattenData.find(function (item) {
145
- return item[valueKey] === value;
146
- }), {
147
- getParent: function getParent() {
148
- return undefined;
149
- },
150
- getChildren: function getChildren(item) {
151
- return item[childrenKey];
152
- }
153
- }),
154
- columns = _getColumnsAndPaths.columns,
155
- path = _getColumnsAndPaths.path;
156
- setColumnData(columns);
157
- setSelectedPaths(path);
158
- }, [childrenKey, data, flattenData, setColumnData, valueKey])
167
+ callback: onFocusItemCallback
159
168
  }),
160
169
  focusItemValue = _useFocusItemValue.focusItemValue,
161
170
  setLayer = _useFocusItemValue.setLayer,
162
171
  setKeys = _useFocusItemValue.setKeys,
163
172
  onFocusItem = _useFocusItemValue.onKeyDown;
164
- /**
165
- * 1.Have a value and the value is valid.
166
- * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.
167
- */
168
- var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && isFunction(renderValue);
169
- var _useClassNames = useClassNames(classPrefix),
170
- prefix = _useClassNames.prefix,
171
- merge = _useClassNames.merge;
172
- var _useState3 = useState(''),
173
- searchKeyword = _useState3[0],
174
- setSearchKeyword = _useState3[1];
175
- var handleEntered = useEventCallback(function () {
176
- onOpen === null || onOpen === void 0 ? void 0 : onOpen();
177
- setActive(true);
178
- });
179
- var handleExited = useEventCallback(function () {
180
- setActive(false);
181
- setSearchKeyword('');
182
- });
183
- var handleSelect = useEventCallback(function (node, cascadePaths, event) {
184
- var _node$childrenKey, _node$childrenKey2, _trigger$current, _trigger$current$upda;
185
- setSelectedPaths(cascadePaths);
186
- onSelect === null || onSelect === void 0 ? void 0 : onSelect(node, cascadePaths, event);
187
- var columnIndex = cascadePaths.length;
188
-
189
- // Lazy load node's children
190
- if (typeof getChildren === 'function' && ((_node$childrenKey = node[childrenKey]) === null || _node$childrenKey === void 0 ? void 0 : _node$childrenKey.length) === 0) {
191
- node.loading = true;
192
- var children = getChildren(node);
193
- if (children instanceof Promise) {
194
- children.then(function (data) {
195
- node.loading = false;
196
- node[childrenKey] = data;
197
- if (target.current || inline) {
198
- addFlattenData(data, node);
199
- addColumn(data, columnIndex);
200
- }
201
- });
202
- } else {
203
- node.loading = false;
204
- node[childrenKey] = children;
205
- addFlattenData(children, node);
206
- addColumn(children, columnIndex);
207
- }
208
- } else if ((_node$childrenKey2 = node[childrenKey]) !== null && _node$childrenKey2 !== void 0 && _node$childrenKey2.length) {
209
- addColumn(node[childrenKey], columnIndex);
210
- } else {
211
- // Removes subsequent columns of the current column when the clicked node is a leaf node.
212
- removeColumnByIndex(columnIndex);
213
- }
214
- (_trigger$current = trigger.current) === null || _trigger$current === void 0 ? void 0 : (_trigger$current$upda = _trigger$current.updatePosition) === null || _trigger$current$upda === void 0 ? void 0 : _trigger$current$upda.call(_trigger$current);
215
- });
216
- var handleCheck = useEventCallback(function (node, event, checked) {
217
- var nodeValue = node[valueKey];
218
- var nextValue = [];
219
- if (cascade) {
220
- nextValue = splitValue(node, checked, value).value;
221
- } else {
222
- nextValue = [].concat(value);
223
- if (checked) {
224
- nextValue.push(nodeValue);
225
- } else {
226
- nextValue = nextValue.filter(function (n) {
227
- return n !== nodeValue;
228
- });
229
- }
173
+ var onSearchCallback = function onSearchCallback(value, event) {
174
+ if (value) {
175
+ setLayer(0);
176
+ } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {
177
+ setLayer(selectedPaths.length - 1);
230
178
  }
231
- setValue(nextValue);
232
- onChange === null || onChange === void 0 ? void 0 : onChange(nextValue, event);
233
- onCheck === null || onCheck === void 0 ? void 0 : onCheck(nextValue, node, checked, event);
234
- });
179
+ setKeys([]);
180
+ onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);
181
+ };
182
+ var _useSearch = useSearch({
183
+ labelKey: labelKey,
184
+ valueKey: valueKey,
185
+ childrenKey: childrenKey,
186
+ flattenedData: flattenData,
187
+ uncheckableItemValues: uncheckableItemValues,
188
+ onSearch: onSearchCallback
189
+ }),
190
+ items = _useSearch.items,
191
+ searchKeyword = _useSearch.searchKeyword,
192
+ setSearchKeyword = _useSearch.setSearchKeyword,
193
+ handleSearch = _useSearch.handleSearch;
194
+ var _useActive = useActive({
195
+ onEntered: onEntered,
196
+ onExited: onExited,
197
+ target: target,
198
+ setSearchKeyword: setSearchKeyword
199
+ }),
200
+ active = _useActive.active,
201
+ handleEntered = _useActive.handleEntered,
202
+ handleExited = _useActive.handleExited;
235
203
  var handleClean = useEventCallback(function (event) {
236
204
  if (disabled || !target.current) {
237
205
  return;
@@ -262,152 +230,67 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
262
230
  onMenuKeyDown: onFocusItem,
263
231
  onMenuPressEnter: handleMenuPressEnter
264
232
  }, rest));
265
- var handleSearch = useEventCallback(function (value, event) {
266
- setSearchKeyword(value);
267
- onSearch === null || onSearch === void 0 ? void 0 : onSearch(value, event);
268
- if (value) {
269
- setLayer(0);
270
- } else if (selectedPaths !== null && selectedPaths !== void 0 && selectedPaths.length) {
271
- setLayer(selectedPaths.length - 1);
272
- }
273
- setKeys([]);
274
- });
275
- var getSearchResult = function getSearchResult() {
276
- var items = [];
277
- var result = flattenData.filter(function (item) {
278
- if (uncheckableItemValues.some(function (value) {
279
- return item[valueKey] === value;
280
- })) {
281
- return false;
282
- }
283
- if (item[labelKey].match(new RegExp(getSafeRegExpString(searchKeyword), 'i'))) {
284
- return true;
285
- }
286
- return false;
287
- });
288
- for (var i = 0; i < result.length; i++) {
289
- items.push(result[i]);
290
-
291
- // A maximum of 100 search results are returned.
292
- if (i === 99) {
293
- return items;
294
- }
295
- }
296
- return items;
297
- };
298
- var renderSearchRow = function renderSearchRow(item, key) {
299
- var _extends2;
300
- var nodes = getNodeParents(item);
301
- var regx = new RegExp(getSafeRegExpString(searchKeyword), 'ig');
302
- var labelElements = [];
303
- var a = item[labelKey].split(regx);
304
- var b = item[labelKey].match(regx);
305
- for (var i = 0; i < a.length; i++) {
306
- labelElements.push(a[i]);
307
- if (b[i]) {
308
- labelElements.push( /*#__PURE__*/React.createElement("span", {
309
- key: i,
310
- className: prefix('cascader-search-match')
311
- }, b[i]));
312
- }
233
+ var renderCascadeColumn = function renderCascadeColumn(childNodes, column) {
234
+ var items = column.items,
235
+ parentItem = column.parentItem,
236
+ layer = column.layer;
237
+ if (typeof renderColumn === 'function') {
238
+ return renderColumn(childNodes, column);
239
+ } else if (typeof DEPRECATED_renderMenu === 'function') {
240
+ return DEPRECATED_renderMenu(items, childNodes, parentItem, layer);
313
241
  }
314
- nodes.push(_extends({}, item, (_extends2 = {}, _extends2[labelKey] = labelElements, _extends2)));
315
- var active = value.some(function (value) {
316
- if (cascade) {
317
- return nodes.some(function (node) {
318
- return node[valueKey] === value;
319
- });
320
- }
321
- return item[valueKey] === value;
322
- });
323
- var disabled = disabledItemValues.some(function (value) {
324
- return nodes.some(function (node) {
325
- return node[valueKey] === value;
326
- });
327
- });
328
- var itemClasses = prefix('cascader-row', {
329
- 'cascader-row-disabled': disabled,
330
- 'cascader-row-focus': item[valueKey] === focusItemValue
331
- });
332
- return /*#__PURE__*/React.createElement("div", {
333
- role: "treeitem",
334
- "aria-disabled": disabled,
335
- key: key,
336
- className: itemClasses,
337
- "data-key": item[valueKey]
338
- }, /*#__PURE__*/React.createElement(Checkbox, {
339
- disabled: disabled,
340
- checked: active,
341
- value: item[valueKey],
342
- indeterminate: cascade && !active && isSomeChildChecked(item, value, {
343
- valueKey: valueKey,
344
- childrenKey: childrenKey
345
- }),
346
- onChange: function onChange(_value, checked, event) {
347
- handleCheck(item, event, checked);
348
- }
349
- }, /*#__PURE__*/React.createElement("span", {
350
- className: prefix('cascader-cols')
351
- }, nodes.map(function (node, index) {
352
- return /*#__PURE__*/React.createElement("span", {
353
- key: "col-" + index,
354
- className: prefix('cascader-col')
355
- }, node[labelKey]);
356
- }))));
242
+ return childNodes;
357
243
  };
358
- var renderSearchResultPanel = function renderSearchResultPanel() {
359
- if (searchKeyword === '') {
360
- return null;
244
+ var renderCascadeTreeNode = function renderCascadeTreeNode(node, itemData) {
245
+ var render = typeof renderTreeNode === 'function' ? renderTreeNode : DEPRECATED_renderMenuItem;
246
+ if (typeof render === 'function') {
247
+ return render(node, itemData);
361
248
  }
362
- var items = getSearchResult();
363
- return /*#__PURE__*/React.createElement("div", {
364
- className: prefix('cascader-search-panel'),
365
- "data-layer": 0,
366
- role: "tree"
367
- }, items.length ? items.map(renderSearchRow) : /*#__PURE__*/React.createElement("div", {
368
- className: prefix('none')
369
- }, locale.noResultsText));
249
+ return node;
370
250
  };
371
251
  var renderTreeView = function renderTreeView(positionProps, speakerRef) {
372
252
  var _ref = positionProps || {},
373
253
  left = _ref.left,
374
254
  top = _ref.top,
375
255
  className = _ref.className;
376
- var styles = _extends({}, menuStyle, {
256
+ var styles = _extends({}, DEPRECATED_menuStyle, popupStyle, {
377
257
  left: left,
378
258
  top: top
379
259
  });
380
- var classes = merge(className, menuClassName, prefix('cascader-menu', 'multi-cascader-menu', {
381
- inline: inline
382
- }));
260
+ var classes = merge(className, DEPRECATED_menuClassName, popupClassName, prefix('popup-multi-cascader'));
383
261
  return /*#__PURE__*/React.createElement(PickerPopup, {
384
262
  ref: mergeRefs(overlay, speakerRef),
385
263
  className: classes,
386
264
  style: styles,
387
265
  target: trigger,
388
266
  onKeyDown: onPickerKeyDown
389
- }, searchable && /*#__PURE__*/React.createElement(SearchBox, {
390
- placeholder: locale === null || locale === void 0 ? void 0 : locale.searchPlaceholder,
391
- onChange: handleSearch,
392
- value: searchKeyword,
393
- inputRef: searchInput
394
- }), renderSearchResultPanel(), searchKeyword === '' && /*#__PURE__*/React.createElement(TreeView, {
267
+ }, searchable && /*#__PURE__*/React.createElement(SearchView, {
268
+ data: items,
269
+ value: value,
270
+ searchKeyword: searchKeyword,
271
+ valueKey: valueKey,
272
+ labelKey: labelKey,
273
+ childrenKey: childrenKey,
274
+ disabledItemValues: disabledItemValues,
275
+ onCheck: handleCheck,
276
+ onSearch: handleSearch
277
+ }), !searchKeyword && /*#__PURE__*/React.createElement(TreeView, {
395
278
  cascade: cascade,
396
- menuWidth: menuWidth,
397
- menuHeight: menuHeight,
279
+ columnWidth: columnWidth !== null && columnWidth !== void 0 ? columnWidth : DEPRECATED_menuWidth,
280
+ columnHeight: columnHeight !== null && columnHeight !== void 0 ? columnHeight : DEPRECATED_menuHeight,
281
+ classPrefix: "cascade-tree",
398
282
  uncheckableItemValues: uncheckableItemValues,
399
283
  disabledItemValues: disabledItemValues,
400
284
  valueKey: valueKey,
401
285
  labelKey: labelKey,
402
286
  childrenKey: childrenKey,
403
- classPrefix: 'picker-cascader-menu',
404
287
  cascadeData: columnData,
405
288
  cascadePaths: selectedPaths,
406
289
  value: value,
407
290
  onSelect: handleSelect,
408
291
  onCheck: handleCheck,
409
- renderMenu: renderMenu,
410
- renderMenuItem: renderMenuItem
292
+ renderColumn: renderCascadeColumn,
293
+ renderTreeNode: renderCascadeTreeNode
411
294
  }), renderExtraFooter === null || renderExtraFooter === void 0 ? void 0 : renderExtraFooter());
412
295
  };
413
296
  var selectedElement = placeholder;
@@ -423,6 +306,12 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
423
306
  locale: locale
424
307
  });
425
308
  }
309
+
310
+ /**
311
+ * 1.Have a value and the value is valid.
312
+ * 2.Regardless of whether the value is valid, as long as renderValue is set, it is judged to have a value.
313
+ */
314
+ var hasValue = selectedItems.length > 0 || Number(valueProp === null || valueProp === void 0 ? void 0 : valueProp.length) > 0 && isFunction(renderValue);
426
315
  if (hasValue && isFunction(renderValue)) {
427
316
  selectedElement = renderValue(value.length ? value : valueProp !== null && valueProp !== void 0 ? valueProp : [], selectedItems, selectedElement);
428
317
  // If renderValue returns null or undefined, hasValue is false.
@@ -440,9 +329,6 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
440
329
  })),
441
330
  classes = _usePickerClassName[0],
442
331
  usedClassNamePropKeys = _usePickerClassName[1];
443
- if (inline) {
444
- return renderTreeView();
445
- }
446
332
  return /*#__PURE__*/React.createElement(PickerToggleTrigger, {
447
333
  id: id,
448
334
  popupType: "tree",
@@ -450,9 +336,8 @@ var MultiCascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
450
336
  pickerProps: pick(props, pickTriggerPropKeys),
451
337
  ref: trigger,
452
338
  placement: placement,
453
- onEnter: createChainedFunction(handleEntered, onEnter),
454
- onExited: createChainedFunction(handleExited, onExited),
455
- onExit: createChainedFunction(onClose, onExit),
339
+ onEnter: handleEntered,
340
+ onExited: handleExited,
456
341
  speaker: renderTreeView
457
342
  }, /*#__PURE__*/React.createElement(Component, {
458
343
  className: classes,
@@ -479,16 +364,16 @@ MultiCascader.propTypes = _extends({}, listPickerPropTypes, {
479
364
  locale: PropTypes.any,
480
365
  appearance: oneOf(['default', 'subtle']),
481
366
  cascade: PropTypes.bool,
482
- inline: PropTypes.bool,
483
367
  countable: PropTypes.bool,
484
- menuWidth: PropTypes.number,
485
- menuHeight: PropTypes.oneOfType([PropTypes.number, PropTypes.string]),
486
368
  uncheckableItemValues: PropTypes.array,
487
369
  searchable: PropTypes.bool,
488
- renderMenuItem: PropTypes.func,
489
- renderMenu: PropTypes.func,
490
370
  onSearch: PropTypes.func,
491
371
  onSelect: PropTypes.func,
492
- onCheck: PropTypes.func
372
+ onCheck: PropTypes.func,
373
+ inline: deprecatePropTypeNew(PropTypes.bool, 'Use `<MultiCascadeTree>` instead.'),
374
+ renderMenu: deprecatePropTypeNew(PropTypes.func, 'Use "renderColumn" property instead.'),
375
+ renderMenuItem: deprecatePropTypeNew(PropTypes.func, 'Use "renderTreeNode" property instead.'),
376
+ menuWidth: deprecatePropTypeNew(PropTypes.number, 'Use "columnWidth" property instead.'),
377
+ menuHeight: deprecatePropTypeNew(PropTypes.number, 'Use "columnHeight" property instead.')
493
378
  });
494
379
  export default MultiCascader;
@@ -7,6 +7,7 @@ import get from 'lodash/get';
7
7
  import Collapse from '../Animation/Collapse';
8
8
  import { useClassNames, useControlled, useUniqueId, useEventCallback } from '../utils';
9
9
  import { PanelGroupContext } from '../PanelGroup';
10
+ import Heading from '../Heading';
10
11
  import AccordionButton from './AccordionButton';
11
12
  /**
12
13
  * The `Panel` component is used to display content that can be collapsed.
@@ -120,7 +121,8 @@ var Panel = /*#__PURE__*/React.forwardRef(function (props, ref) {
120
121
  className: _className
121
122
  });
122
123
  }
123
- return /*#__PURE__*/React.createElement("h2", {
124
+ return /*#__PURE__*/React.createElement(Heading, {
125
+ level: 2,
124
126
  className: prefix('header')
125
127
  }, collapsible ? /*#__PURE__*/React.createElement(AccordionButton, {
126
128
  id: btnId,
@@ -6,6 +6,7 @@ var _templateObject, _templateObject2, _templateObject3;
6
6
  import React from 'react';
7
7
  import PropTypes from 'prop-types';
8
8
  import { useClassNames } from '../utils';
9
+ import Heading from '../Heading';
9
10
  /**
10
11
  * The `Popover` component is used to display a popup window for a target component.
11
12
  * @see https://rsuitejs.com/components/popover
@@ -44,7 +45,8 @@ var Popover = /*#__PURE__*/React.forwardRef(function (props, ref) {
44
45
  }), arrow && /*#__PURE__*/React.createElement("div", {
45
46
  className: prefix(_templateObject || (_templateObject = _taggedTemplateLiteralLoose(["arrow"]))),
46
47
  "aria-hidden": true
47
- }), title && /*#__PURE__*/React.createElement("h3", {
48
+ }), title && /*#__PURE__*/React.createElement(Heading, {
49
+ level: 3,
48
50
  className: prefix(_templateObject2 || (_templateObject2 = _taggedTemplateLiteralLoose(["title"])))
49
51
  }, title), /*#__PURE__*/React.createElement("div", {
50
52
  className: prefix(_templateObject3 || (_templateObject3 = _taggedTemplateLiteralLoose(["content"])))
@@ -66,15 +66,13 @@ var SelectPicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
66
66
  onChange = props.onChange,
67
67
  onSelect = props.onSelect,
68
68
  onSearch = props.onSearch,
69
- onClose = props.onClose,
70
- onOpen = props.onOpen,
71
69
  sort = props.sort,
72
70
  renderValue = props.renderValue,
73
71
  renderMenu = props.renderMenu,
74
72
  renderMenuGroup = props.renderMenuGroup,
75
73
  renderMenuItem = props.renderMenuItem,
76
74
  renderExtraFooter = props.renderExtraFooter,
77
- rest = _objectWithoutPropertiesLoose(props, ["as", "appearance", "data", "valueKey", "labelKey", "value", "classPrefix", "placeholder", "defaultValue", "disabled", "cleanable", "placement", "menuClassName", "menuAutoWidth", "menuMaxHeight", "menuStyle", "groupBy", "locale", "toggleAs", "style", "searchable", "disabledItemValues", "virtualized", "listProps", "id", "onGroupTitleClick", "searchBy", "onEntered", "onExited", "onClean", "onChange", "onSelect", "onSearch", "onClose", "onOpen", "sort", "renderValue", "renderMenu", "renderMenuGroup", "renderMenuItem", "renderExtraFooter"]);
75
+ rest = _objectWithoutPropertiesLoose(props, ["as", "appearance", "data", "valueKey", "labelKey", "value", "classPrefix", "placeholder", "defaultValue", "disabled", "cleanable", "placement", "menuClassName", "menuAutoWidth", "menuMaxHeight", "menuStyle", "groupBy", "locale", "toggleAs", "style", "searchable", "disabledItemValues", "virtualized", "listProps", "id", "onGroupTitleClick", "searchBy", "onEntered", "onExited", "onClean", "onChange", "onSelect", "onSearch", "sort", "renderValue", "renderMenu", "renderMenuGroup", "renderMenuItem", "renderExtraFooter"]);
78
76
  var _usePickerRef = usePickerRef(ref),
79
77
  trigger = _usePickerRef.trigger,
80
78
  root = _usePickerRef.root,
@@ -164,21 +162,17 @@ var SelectPicker = /*#__PURE__*/React.forwardRef(function (props, ref) {
164
162
  active: active,
165
163
  onExit: handleClean,
166
164
  onMenuKeyDown: onFocusItem,
167
- onMenuPressEnter: handleMenuPressEnter,
168
- onClose: function onClose() {
169
- setFocusItemValue(null);
170
- }
165
+ onMenuPressEnter: handleMenuPressEnter
171
166
  }, rest));
172
167
  var handleExited = useEventCallback(function () {
173
168
  resetSearch();
174
169
  setActive(false);
175
170
  onSearch === null || onSearch === void 0 ? void 0 : onSearch('');
176
- onClose === null || onClose === void 0 ? void 0 : onClose();
171
+ setFocusItemValue(null);
177
172
  });
178
173
  var handleEntered = useEventCallback(function () {
179
174
  setActive(true);
180
175
  setFocusItemValue(value);
181
- onOpen === null || onOpen === void 0 ? void 0 : onOpen();
182
176
  });
183
177
 
184
178
  // Find active `MenuItem` by `value`