@hi-ui/cascader 4.3.2 → 4.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +22 -0
- package/lib/cjs/Cascader.js +12 -1
- package/lib/esm/Cascader.js +13 -2
- package/lib/types/Cascader.d.ts +4 -0
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
# @hi-ui/cascader
|
|
2
2
|
|
|
3
|
+
## 4.4.1
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#3196](https://github.com/XiaoMi/hiui/pull/3196) [`80a909d2d`](https://github.com/XiaoMi/hiui/commit/80a909d2dae99d68d71f2ec6f4b210080d032ec0) Thanks [@KEH3](https://github.com/KEH3)! - fix(popper): ref 中增加更新位置方法解决上游组件弹窗被遮挡问题 (#3195)
|
|
8
|
+
|
|
9
|
+
- Updated dependencies [[`80a909d2d`](https://github.com/XiaoMi/hiui/commit/80a909d2dae99d68d71f2ec6f4b210080d032ec0)]:
|
|
10
|
+
- @hi-ui/picker@4.1.8
|
|
11
|
+
- @hi-ui/popper@4.1.7
|
|
12
|
+
|
|
13
|
+
## 4.4.0
|
|
14
|
+
|
|
15
|
+
### Minor Changes
|
|
16
|
+
|
|
17
|
+
- [#3172](https://github.com/XiaoMi/hiui/pull/3172) [`a883d8e19`](https://github.com/XiaoMi/hiui/commit/a883d8e197446ef0e7cefcc5cc44d21ed1d0807f) Thanks [@zyprepare](https://github.com/zyprepare)! - feat(mock-input): 增加 onClear 参数 (#3171)
|
|
18
|
+
|
|
19
|
+
### Patch Changes
|
|
20
|
+
|
|
21
|
+
- Updated dependencies [[`7bf0630`](https://github.com/XiaoMi/hiui/commit/7bf063053a73923af41c33370c31371325206276), [`a883d8e19`](https://github.com/XiaoMi/hiui/commit/a883d8e197446ef0e7cefcc5cc44d21ed1d0807f)]:
|
|
22
|
+
- @hi-ui/highlighter@4.1.2
|
|
23
|
+
- @hi-ui/input@4.4.0
|
|
24
|
+
|
|
3
25
|
## 4.3.2
|
|
4
26
|
|
|
5
27
|
### Patch Changes
|
package/lib/cjs/Cascader.js
CHANGED
|
@@ -82,13 +82,15 @@ var Cascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
82
82
|
suffix = props.suffix,
|
|
83
83
|
onOpen = props.onOpen,
|
|
84
84
|
onClose = props.onClose,
|
|
85
|
+
onClear = props.onClear,
|
|
85
86
|
renderExtraFooter = props.renderExtraFooter,
|
|
86
87
|
dropdownColumnRender = props.dropdownColumnRender,
|
|
87
88
|
_props$closeOnSelect = props.closeOnSelect,
|
|
88
89
|
closeOnSelect = _props$closeOnSelect === void 0 ? true : _props$closeOnSelect,
|
|
89
90
|
customRender = props.customRender,
|
|
90
|
-
rest = tslib.__rest(props, ["prefixCls", "className", "placeholder", "disabled", "clearable", "type", "fieldNames", "expandTrigger", "displayRender", "onSelect", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "render", "overlayClassName", "data", "flattedSearchResult", "visible", "size", "prefix", "suffix", "onOpen", "onClose", "renderExtraFooter", "dropdownColumnRender", "closeOnSelect", "customRender"]);
|
|
91
|
+
rest = tslib.__rest(props, ["prefixCls", "className", "placeholder", "disabled", "clearable", "type", "fieldNames", "expandTrigger", "displayRender", "onSelect", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "render", "overlayClassName", "data", "flattedSearchResult", "visible", "size", "prefix", "suffix", "onOpen", "onClose", "onClear", "renderExtraFooter", "dropdownColumnRender", "closeOnSelect", "customRender"]);
|
|
91
92
|
var i18n = core.useLocaleContext();
|
|
93
|
+
var pickerInnerRef = React.useRef(null);
|
|
92
94
|
var placeholder = typeAssertion.isUndef(placeholderProp) ? i18n.get('cascader.placeholder') : placeholderProp;
|
|
93
95
|
var _useUncontrolledToggl = useToggle.useUncontrolledToggle({
|
|
94
96
|
visible: visible,
|
|
@@ -219,6 +221,13 @@ var Cascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
219
221
|
return flattedData;
|
|
220
222
|
}, [selectedItem, flattedData]);
|
|
221
223
|
var cls = classname.cx(prefixCls, className, prefixCls + "--" + (menuVisible ? 'open' : 'closed'));
|
|
224
|
+
React.useEffect(function () {
|
|
225
|
+
var _a;
|
|
226
|
+
if (menuVisible) {
|
|
227
|
+
// 数据改变时更新弹窗显示位置,避免弹窗内容被遮挡
|
|
228
|
+
(_a = pickerInnerRef.current) === null || _a === void 0 ? void 0 : _a.update();
|
|
229
|
+
}
|
|
230
|
+
}, [menuVisible, showData]);
|
|
222
231
|
return /*#__PURE__*/React__default["default"].createElement(context.CascaderProvider, {
|
|
223
232
|
value: Object.assign(Object.assign({}, context$1), {
|
|
224
233
|
expandTrigger: expandTrigger,
|
|
@@ -228,6 +237,7 @@ var Cascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
228
237
|
})
|
|
229
238
|
}, /*#__PURE__*/React__default["default"].createElement(picker.Picker, Object.assign({
|
|
230
239
|
ref: ref,
|
|
240
|
+
innerRef: pickerInnerRef,
|
|
231
241
|
className: cls,
|
|
232
242
|
overlayClassName: classname.cx(prefixCls + "__popper", overlayClassName)
|
|
233
243
|
}, rootProps, {
|
|
@@ -247,6 +257,7 @@ var Cascader = /*#__PURE__*/React.forwardRef(function (props, ref) {
|
|
|
247
257
|
trigger: customRender ? typeof customRender === 'function' ? customRender(selectedItem) : customRender : ( /*#__PURE__*/React__default["default"].createElement(input.MockInput, {
|
|
248
258
|
size: size,
|
|
249
259
|
clearable: clearable,
|
|
260
|
+
onClear: onClear,
|
|
250
261
|
placeholder: placeholder,
|
|
251
262
|
displayRender: displayRender,
|
|
252
263
|
prefix: prefix,
|
package/lib/esm/Cascader.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import { __rest } from 'tslib';
|
|
11
|
-
import React, { forwardRef, useState, useMemo, useEffect } from 'react';
|
|
11
|
+
import React, { forwardRef, useRef, useState, useMemo, useEffect } from 'react';
|
|
12
12
|
import { getPrefixCls, cx } from '@hi-ui/classname';
|
|
13
13
|
import { __DEV__ } from '@hi-ui/env';
|
|
14
14
|
import { useUncontrolledToggle } from '@hi-ui/use-toggle';
|
|
@@ -69,13 +69,15 @@ var Cascader = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
69
69
|
suffix = props.suffix,
|
|
70
70
|
onOpen = props.onOpen,
|
|
71
71
|
onClose = props.onClose,
|
|
72
|
+
onClear = props.onClear,
|
|
72
73
|
renderExtraFooter = props.renderExtraFooter,
|
|
73
74
|
dropdownColumnRender = props.dropdownColumnRender,
|
|
74
75
|
_props$closeOnSelect = props.closeOnSelect,
|
|
75
76
|
closeOnSelect = _props$closeOnSelect === void 0 ? true : _props$closeOnSelect,
|
|
76
77
|
customRender = props.customRender,
|
|
77
|
-
rest = __rest(props, ["prefixCls", "className", "placeholder", "disabled", "clearable", "type", "fieldNames", "expandTrigger", "displayRender", "onSelect", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "render", "overlayClassName", "data", "flattedSearchResult", "visible", "size", "prefix", "suffix", "onOpen", "onClose", "renderExtraFooter", "dropdownColumnRender", "closeOnSelect", "customRender"]);
|
|
78
|
+
rest = __rest(props, ["prefixCls", "className", "placeholder", "disabled", "clearable", "type", "fieldNames", "expandTrigger", "displayRender", "onSelect", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "render", "overlayClassName", "data", "flattedSearchResult", "visible", "size", "prefix", "suffix", "onOpen", "onClose", "onClear", "renderExtraFooter", "dropdownColumnRender", "closeOnSelect", "customRender"]);
|
|
78
79
|
var i18n = useLocaleContext();
|
|
80
|
+
var pickerInnerRef = useRef(null);
|
|
79
81
|
var placeholder = isUndef(placeholderProp) ? i18n.get('cascader.placeholder') : placeholderProp;
|
|
80
82
|
var _useUncontrolledToggl = useUncontrolledToggle({
|
|
81
83
|
visible: visible,
|
|
@@ -206,6 +208,13 @@ var Cascader = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
206
208
|
return flattedData;
|
|
207
209
|
}, [selectedItem, flattedData]);
|
|
208
210
|
var cls = cx(prefixCls, className, prefixCls + "--" + (menuVisible ? 'open' : 'closed'));
|
|
211
|
+
useEffect(function () {
|
|
212
|
+
var _a;
|
|
213
|
+
if (menuVisible) {
|
|
214
|
+
// 数据改变时更新弹窗显示位置,避免弹窗内容被遮挡
|
|
215
|
+
(_a = pickerInnerRef.current) === null || _a === void 0 ? void 0 : _a.update();
|
|
216
|
+
}
|
|
217
|
+
}, [menuVisible, showData]);
|
|
209
218
|
return /*#__PURE__*/React.createElement(CascaderProvider, {
|
|
210
219
|
value: Object.assign(Object.assign({}, context), {
|
|
211
220
|
expandTrigger: expandTrigger,
|
|
@@ -215,6 +224,7 @@ var Cascader = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
215
224
|
})
|
|
216
225
|
}, /*#__PURE__*/React.createElement(Picker, Object.assign({
|
|
217
226
|
ref: ref,
|
|
227
|
+
innerRef: pickerInnerRef,
|
|
218
228
|
className: cls,
|
|
219
229
|
overlayClassName: cx(prefixCls + "__popper", overlayClassName)
|
|
220
230
|
}, rootProps, {
|
|
@@ -234,6 +244,7 @@ var Cascader = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
234
244
|
trigger: customRender ? typeof customRender === 'function' ? customRender(selectedItem) : customRender : ( /*#__PURE__*/React.createElement(MockInput, {
|
|
235
245
|
size: size,
|
|
236
246
|
clearable: clearable,
|
|
247
|
+
onClear: onClear,
|
|
237
248
|
placeholder: placeholder,
|
|
238
249
|
displayRender: displayRender,
|
|
239
250
|
prefix: prefix,
|
package/lib/types/Cascader.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hi-ui/cascader",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.4.1",
|
|
4
4
|
"description": "A sub-package for @hi-ui/hiui.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "HiUI <mi-hiui@xiaomi.com>",
|
|
@@ -47,11 +47,11 @@
|
|
|
47
47
|
"@hi-ui/classname": "^4.0.5",
|
|
48
48
|
"@hi-ui/env": "^4.0.5",
|
|
49
49
|
"@hi-ui/func-utils": "^4.0.4",
|
|
50
|
-
"@hi-ui/highlighter": "^4.
|
|
50
|
+
"@hi-ui/highlighter": "^4.1.2",
|
|
51
51
|
"@hi-ui/icons": "^4.0.19",
|
|
52
|
-
"@hi-ui/input": "^4.
|
|
53
|
-
"@hi-ui/picker": "^4.1.
|
|
54
|
-
"@hi-ui/popper": "^4.1.
|
|
52
|
+
"@hi-ui/input": "^4.4.0",
|
|
53
|
+
"@hi-ui/picker": "^4.1.8",
|
|
54
|
+
"@hi-ui/popper": "^4.1.7",
|
|
55
55
|
"@hi-ui/spinner": "^4.0.9",
|
|
56
56
|
"@hi-ui/tree-utils": "^4.1.4",
|
|
57
57
|
"@hi-ui/type-assertion": "^4.0.4",
|