@hi-ui/check-cascader 5.0.0-experimental.1 → 5.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +39 -49
- package/lib/cjs/CheckCascader.js +45 -4
- package/lib/cjs/CheckCascaderMenu.js +13 -10
- package/lib/cjs/CheckCascaderMenuList.js +11 -5
- package/lib/cjs/icons/index.js +7 -2
- package/lib/cjs/ui/virtual-list/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +1 -1
- package/lib/cjs/ui/virtual-list/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +1 -1
- package/lib/cjs/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/cjs/react-is.development.js +1 -1
- package/lib/cjs/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/cjs/react-is.production.min.js +1 -1
- package/lib/cjs/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/index.js +3 -3
- package/lib/esm/CheckCascader.js +45 -4
- package/lib/esm/CheckCascaderMenu.js +14 -11
- package/lib/esm/CheckCascaderMenuList.js +11 -5
- package/lib/esm/icons/index.js +8 -3
- package/lib/esm/ui/virtual-list/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/Children/toArray.js +1 -1
- package/lib/esm/ui/virtual-list/lib/esm/node_modules/rc-resize-observer/node_modules/rc-util/es/ref.js +1 -1
- package/lib/esm/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/cjs/react-is.development.js +1 -1
- package/lib/esm/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/cjs/react-is.production.min.js +1 -1
- package/lib/esm/ui/virtual-list/lib/esm/node_modules/{rc-resize-observer/node_modules/react-is → react-is}/index.js +3 -3
- package/lib/types/CheckCascader.d.ts +7 -2
- package/lib/types/CheckCascaderMenuList.d.ts +8 -0
- package/lib/types/context.d.ts +2 -0
- package/lib/types/hooks/use-async-switch.d.ts +1 -1
- package/lib/types/hooks/use-check.d.ts +2 -2
- package/lib/types/icons/index.d.ts +1 -1
- package/lib/types/types.d.ts +2 -2
- package/lib/types/utils/index.d.ts +4 -4
- package/package.json +27 -26
package/CHANGELOG.md
CHANGED
|
@@ -1,20 +1,6 @@
|
|
|
1
1
|
# @hi-ui/check-cascader
|
|
2
2
|
|
|
3
|
-
## 5.0.0-
|
|
4
|
-
|
|
5
|
-
### Patch Changes
|
|
6
|
-
|
|
7
|
-
- 8f23e9322: style: 表单类组件统一调整后缀颜色、placeholder 颜色 (5.0)
|
|
8
|
-
- 发布 hiui experimental 版本
|
|
9
|
-
- Updated dependencies [8f23e9322]
|
|
10
|
-
- Updated dependencies [b27483796]
|
|
11
|
-
- Updated dependencies [900c6c2f0]
|
|
12
|
-
- Updated dependencies
|
|
13
|
-
- @hi-ui/input@5.0.0-experimental.1
|
|
14
|
-
- @hi-ui/picker@5.0.0-experimental.1
|
|
15
|
-
- @hi-ui/tag-input@5.0.0-experimental.1
|
|
16
|
-
|
|
17
|
-
## 5.0.0-experimental.0
|
|
3
|
+
## 5.0.0-rc.0
|
|
18
4
|
|
|
19
5
|
### Major Changes
|
|
20
6
|
|
|
@@ -31,21 +17,21 @@
|
|
|
31
17
|
- 6dca7795c: feat: 下拉选择组件增加 showIndicator 参数 & 修改 appearance 中的 unset 样式 (5.0)
|
|
32
18
|
- 77d969c2e: feat: 下拉选择类组件 appearance 参数增加 contained 类型 (5.0)
|
|
33
19
|
- 58ad82e94: feat: 输入框和选择器组件增加 borderless 形态 (5.0)
|
|
20
|
+
- 59cef699f: feat: 组件语义化样式改造,增加 styles 和 classNames 属性 (5.0)
|
|
34
21
|
|
|
35
22
|
### Patch Changes
|
|
36
23
|
|
|
37
|
-
- 6fb223e3a: style: fix ui bug (5.0)
|
|
38
24
|
- 9b34d99bc: chore: 将代码中 v4 改为 v5 (5.0)
|
|
39
|
-
- 1662753e0: style: fix ui bug (5.0)
|
|
40
25
|
- cf89262c7: style(picker): 移除 picker 组件中的 \_\_text 样式定义 (5.0)
|
|
41
26
|
- 68dccedb1: fix(check-cascader): 修复非平铺展示搜索结果时显示出层级问题 (5.0)
|
|
42
27
|
- 9b34d99bc: fix: 修复 5.0 UI 问题 (5.0)
|
|
43
28
|
- 1dbc23ca5: feat(check-cascader): 增加全选功能
|
|
44
29
|
- cb9d8f6db: fix(tag-input): 修复 contained 模式下 displayRender 设置无效问题 (5.0)
|
|
45
|
-
- be5a59325: style: 修改样式问题 (5.0)
|
|
46
30
|
- 79ea480f3: feat(global-context): 增加 size api 全局配置 (5.0)
|
|
47
31
|
- 2e56529f7: styles: 主题定制功能完善&&样式变量化写法改造&&兼容 RTL (5.0)
|
|
48
32
|
- 95abba983: fix: 修改 UI 问题 (5.0)
|
|
33
|
+
- 8f23e9322: style: 表单类组件统一调整后缀颜色、placeholder 颜色 (5.0)
|
|
34
|
+
- eb17c4697: style: 修复 UI/样式问题 (5.0)
|
|
49
35
|
- de8d058dc: perf: 对下拉选择类组件的 customRender 的内容增加 memoization 以优化性能 (5.0)
|
|
50
36
|
- 5210770d9: feat(picker): add header api (5.0)
|
|
51
37
|
- 424700fc5: style(cascader&check-cascader): 调整下拉框样式,增加搜索框宽度设置 (5.0)
|
|
@@ -73,72 +59,76 @@
|
|
|
73
59
|
- Updated dependencies [1e226cd66]
|
|
74
60
|
- Updated dependencies [cce71cdfa]
|
|
75
61
|
- Updated dependencies [b9989e482]
|
|
76
|
-
- Updated dependencies [
|
|
62
|
+
- Updated dependencies [7f204c892]
|
|
77
63
|
- Updated dependencies [122d1d859]
|
|
78
64
|
- Updated dependencies [f1ab51725]
|
|
79
65
|
- Updated dependencies [41552be0b]
|
|
66
|
+
- Updated dependencies [eb17c4697]
|
|
80
67
|
- Updated dependencies [8c0ee78f0]
|
|
81
68
|
- Updated dependencies [9b34d99bc]
|
|
82
69
|
- Updated dependencies [8f3aa85e4]
|
|
83
|
-
- Updated dependencies [f4fc0ef30]
|
|
84
70
|
- Updated dependencies [cb9d8f6db]
|
|
85
71
|
- Updated dependencies [ec4c7faa2]
|
|
86
72
|
- Updated dependencies [29cae09ea]
|
|
87
73
|
- Updated dependencies [fd4c20bbd]
|
|
88
|
-
- Updated dependencies [be5a59325]
|
|
89
|
-
- Updated dependencies [71fc15e5c]
|
|
90
74
|
- Updated dependencies [f8acad4e1]
|
|
91
75
|
- Updated dependencies [79ea480f3]
|
|
92
76
|
- Updated dependencies [2e56529f7]
|
|
77
|
+
- Updated dependencies [3a7186e4b]
|
|
93
78
|
- Updated dependencies [277c5033a]
|
|
94
79
|
- Updated dependencies [4e0ed3a31]
|
|
95
80
|
- Updated dependencies [95abba983]
|
|
81
|
+
- Updated dependencies [8f23e9322]
|
|
96
82
|
- Updated dependencies [4a31cea53]
|
|
83
|
+
- Updated dependencies [b27483796]
|
|
84
|
+
- Updated dependencies [eb17c4697]
|
|
97
85
|
- Updated dependencies [976ec929d]
|
|
98
86
|
- Updated dependencies [f1ab51725]
|
|
99
87
|
- Updated dependencies [6dca7795c]
|
|
88
|
+
- Updated dependencies [900c6c2f0]
|
|
100
89
|
- Updated dependencies [7b956b1eb]
|
|
101
90
|
- Updated dependencies [5210770d9]
|
|
102
|
-
- Updated dependencies [e2d184e74]
|
|
103
91
|
- Updated dependencies [4006b2c8c]
|
|
92
|
+
- Updated dependencies [c407744fe]
|
|
93
|
+
- Updated dependencies [d91a8bb0f]
|
|
104
94
|
- Updated dependencies [77d969c2e]
|
|
105
95
|
- Updated dependencies [9ecf354ba]
|
|
106
96
|
- Updated dependencies [e42e2badf]
|
|
107
97
|
- Updated dependencies [33da3144e]
|
|
108
98
|
- Updated dependencies [e7b64347e]
|
|
109
|
-
- Updated dependencies [7f3abee55]
|
|
110
99
|
- Updated dependencies [6fcda9bf2]
|
|
111
100
|
- Updated dependencies [0a4e90dbd]
|
|
112
101
|
- Updated dependencies [58ad82e94]
|
|
113
|
-
- Updated dependencies [
|
|
102
|
+
- Updated dependencies [95d930354]
|
|
114
103
|
- Updated dependencies [f2be367e9]
|
|
115
104
|
- Updated dependencies [1972fd16a]
|
|
105
|
+
- Updated dependencies [59cef699f]
|
|
116
106
|
- Updated dependencies [99801c2d1]
|
|
117
|
-
- Updated dependencies [86910f5e2]
|
|
118
107
|
- Updated dependencies [cb7b794d0]
|
|
119
|
-
- @hi-ui/picker@5.0.0-
|
|
120
|
-
- @hi-ui/input@5.0.0-
|
|
121
|
-
- @hi-ui/popper@5.0.0-
|
|
122
|
-
- @hi-ui/tag-input@5.0.0-
|
|
123
|
-
- @hi-ui/icons@5.0.0-
|
|
124
|
-
- @hi-ui/core@5.0.0-
|
|
125
|
-
- @hi-ui/use-check@5.0.0-
|
|
126
|
-
- @hi-ui/use-data-source@5.0.0-
|
|
127
|
-
- @hi-ui/use-latest@5.0.0-
|
|
128
|
-
- @hi-ui/use-merge-refs@5.0.0-
|
|
129
|
-
- @hi-ui/use-outside-click@5.0.0-
|
|
130
|
-
- @hi-ui/use-search-mode@5.0.0-
|
|
131
|
-
- @hi-ui/use-toggle@5.0.0-
|
|
132
|
-
- @hi-ui/use-uncontrolled-state@5.0.0-
|
|
133
|
-
- @hi-ui/checkbox@5.0.0-
|
|
134
|
-
- @hi-ui/spinner@5.0.0-
|
|
135
|
-
- @hi-ui/array-utils@5.0.0-
|
|
136
|
-
- @hi-ui/classname@5.0.0-
|
|
137
|
-
- @hi-ui/env@5.0.0-
|
|
138
|
-
- @hi-ui/func-utils@5.0.0-
|
|
139
|
-
- @hi-ui/times@5.0.0-
|
|
140
|
-
- @hi-ui/tree-utils@5.0.0-
|
|
141
|
-
- @hi-ui/type-assertion@5.0.0-
|
|
108
|
+
- @hi-ui/picker@5.0.0-rc.0
|
|
109
|
+
- @hi-ui/input@5.0.0-rc.0
|
|
110
|
+
- @hi-ui/popper@5.0.0-rc.0
|
|
111
|
+
- @hi-ui/tag-input@5.0.0-rc.0
|
|
112
|
+
- @hi-ui/icons@5.0.0-rc.0
|
|
113
|
+
- @hi-ui/core@5.0.0-rc.0
|
|
114
|
+
- @hi-ui/use-check@5.0.0-rc.0
|
|
115
|
+
- @hi-ui/use-data-source@5.0.0-rc.0
|
|
116
|
+
- @hi-ui/use-latest@5.0.0-rc.0
|
|
117
|
+
- @hi-ui/use-merge-refs@5.0.0-rc.0
|
|
118
|
+
- @hi-ui/use-outside-click@5.0.0-rc.0
|
|
119
|
+
- @hi-ui/use-search-mode@5.0.0-rc.0
|
|
120
|
+
- @hi-ui/use-toggle@5.0.0-rc.0
|
|
121
|
+
- @hi-ui/use-uncontrolled-state@5.0.0-rc.0
|
|
122
|
+
- @hi-ui/checkbox@5.0.0-rc.0
|
|
123
|
+
- @hi-ui/spinner@5.0.0-rc.0
|
|
124
|
+
- @hi-ui/array-utils@5.0.0-rc.0
|
|
125
|
+
- @hi-ui/classname@5.0.0-rc.0
|
|
126
|
+
- @hi-ui/env@5.0.0-rc.0
|
|
127
|
+
- @hi-ui/func-utils@5.0.0-rc.0
|
|
128
|
+
- @hi-ui/times@5.0.0-rc.0
|
|
129
|
+
- @hi-ui/tree-utils@5.0.0-rc.0
|
|
130
|
+
- @hi-ui/type-assertion@5.0.0-rc.0
|
|
131
|
+
- @hi-ui/use-merge-semantic@5.0.0-rc.0
|
|
142
132
|
|
|
143
133
|
## 4.5.2
|
|
144
134
|
|
package/lib/cjs/CheckCascader.js
CHANGED
|
@@ -23,6 +23,7 @@ var icons = require('@hi-ui/icons');
|
|
|
23
23
|
var index = require('./hooks/use-cache/lib/esm/index.js');
|
|
24
24
|
var picker = require('@hi-ui/picker');
|
|
25
25
|
var tagInput = require('@hi-ui/tag-input');
|
|
26
|
+
var useMergeSemantic = require('@hi-ui/use-merge-semantic');
|
|
26
27
|
var CheckCascaderMenuList = require('./CheckCascaderMenuList.js');
|
|
27
28
|
var useSearchMode = require('@hi-ui/use-search-mode');
|
|
28
29
|
var index$1 = require('./utils/index.js');
|
|
@@ -100,11 +101,33 @@ var CheckCascader = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
100
101
|
_a$showIndicator = _a.showIndicator,
|
|
101
102
|
showIndicator = _a$showIndicator === void 0 ? true : _a$showIndicator,
|
|
102
103
|
renderExtraHeader = _a.renderExtraHeader,
|
|
103
|
-
|
|
104
|
+
classNamesProp = _a.classNames,
|
|
105
|
+
stylesProp = _a.styles,
|
|
106
|
+
rest = tslib.__rest(_a, ["prefixCls", "className", "defaultValue", "value", "onChange", "data", "placeholder", "clearable", "onClear", "onSelect", "expandTrigger", "disabled", "emptyContent", "changeOnSelect", "render", "displayRender", "checkCascaded", "searchPlaceholder", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "clearSearchOnClosed", "overlayClassName", "type", "flattedSearchResult", "checkedMode", "visible", "onOpen", "onClose", "tagInputProps", "size", "prefix", "suffix", "renderExtraFooter", "dropdownColumnRender", "customRender", "fieldNames", "label", "showOnlyShowChecked", "virtual", "showCheckAll", "showIndicator", "renderExtraHeader", "classNames", "styles"]);
|
|
104
107
|
var _useGlobalContext = core.useGlobalContext(),
|
|
105
|
-
globalSize = _useGlobalContext.size
|
|
108
|
+
globalSize = _useGlobalContext.size,
|
|
109
|
+
checkCascaderConfig = _useGlobalContext.checkCascader;
|
|
106
110
|
var size = (_b = sizeProp !== null && sizeProp !== void 0 ? sizeProp : globalSize) !== null && _b !== void 0 ? _b : 'md';
|
|
111
|
+
var _useGlobalContext2 = core.useGlobalContext(),
|
|
112
|
+
direction = _useGlobalContext2.direction;
|
|
107
113
|
var i18n = core.useLocaleContext();
|
|
114
|
+
var _useMergeSemantic = useMergeSemantic.useMergeSemantic({
|
|
115
|
+
classNamesList: [checkCascaderConfig === null || checkCascaderConfig === void 0 ? void 0 : checkCascaderConfig.classNames, classNamesProp],
|
|
116
|
+
stylesList: [checkCascaderConfig === null || checkCascaderConfig === void 0 ? void 0 : checkCascaderConfig.styles, stylesProp],
|
|
117
|
+
info: {
|
|
118
|
+
props: Object.assign(Object.assign({}, rest), {
|
|
119
|
+
data: data,
|
|
120
|
+
disabled: disabled,
|
|
121
|
+
searchable: searchableProp,
|
|
122
|
+
visible: visible,
|
|
123
|
+
size: size,
|
|
124
|
+
appearance: appearance,
|
|
125
|
+
expandTrigger: expandTrigger
|
|
126
|
+
})
|
|
127
|
+
}
|
|
128
|
+
}),
|
|
129
|
+
classNames = _useMergeSemantic.classNames,
|
|
130
|
+
styles = _useMergeSemantic.styles;
|
|
108
131
|
var pickerInnerRef = React.useRef(null);
|
|
109
132
|
var placeholder = typeAssertion.isUndef(placeholderProp) ? i18n.get('checkCascader.placeholder') : placeholderProp;
|
|
110
133
|
var flatted = type === 'flatted';
|
|
@@ -288,15 +311,31 @@ var CheckCascader = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
288
311
|
(_a = pickerInnerRef.current) === null || _a === void 0 ? void 0 : _a.update();
|
|
289
312
|
}
|
|
290
313
|
}, [menuVisible]);
|
|
314
|
+
var pickerSemanticKeys = ['root', 'container', 'panel', 'header', 'search', 'body', 'footer', 'loading', 'empty', 'creator'];
|
|
315
|
+
var pickerClassNames = pickerSemanticKeys.reduce(function (acc, key) {
|
|
316
|
+
if ((classNames === null || classNames === void 0 ? void 0 : classNames[key]) !== undefined) {
|
|
317
|
+
acc[key] = classNames[key];
|
|
318
|
+
}
|
|
319
|
+
return acc;
|
|
320
|
+
}, {});
|
|
321
|
+
var pickerStyles = pickerSemanticKeys.reduce(function (acc, key) {
|
|
322
|
+
if (styles === null || styles === void 0 ? void 0 : styles[key]) {
|
|
323
|
+
acc[key] = styles[key];
|
|
324
|
+
}
|
|
325
|
+
return acc;
|
|
326
|
+
}, {});
|
|
291
327
|
return /*#__PURE__*/React__default["default"].createElement(picker.Picker, Object.assign({
|
|
292
328
|
ref: ref,
|
|
293
329
|
innerRef: pickerInnerRef,
|
|
294
330
|
className: cls,
|
|
295
|
-
overlayClassName: classname.cx(prefixCls + "__popper", overlayClassName)
|
|
331
|
+
overlayClassName: classname.cx(prefixCls + "__popper", overlayClassName),
|
|
332
|
+
classNames: pickerClassNames,
|
|
333
|
+
styles: pickerStyles
|
|
296
334
|
}, rest, {
|
|
297
335
|
// 这种展现形式宽度是不固定的,关掉宽度匹配策略
|
|
298
336
|
overlay: Object.assign({
|
|
299
|
-
matchWidth: false
|
|
337
|
+
matchWidth: false,
|
|
338
|
+
placement: direction === 'rtl' ? 'bottom-end' : 'bottom-start'
|
|
300
339
|
}, rest.overlay),
|
|
301
340
|
visible: menuVisible,
|
|
302
341
|
onOpen: function onOpen() {
|
|
@@ -393,6 +432,8 @@ var CheckCascader = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
393
432
|
}), typeAssertion.isArrayNonEmpty(selectProps.data) ? ( /*#__PURE__*/React__default["default"].createElement(CheckCascaderMenuList.CheckCascaderMenuList, {
|
|
394
433
|
disabled: disabled,
|
|
395
434
|
value: value,
|
|
435
|
+
classNames: classNames,
|
|
436
|
+
styles: styles,
|
|
396
437
|
// @ts-ignore
|
|
397
438
|
onChange: proxyOnChange,
|
|
398
439
|
expandTrigger: expandTrigger,
|
|
@@ -42,12 +42,15 @@ var CheckCascaderMenu = function CheckCascaderMenu(_ref) {
|
|
|
42
42
|
menu = _ref.data,
|
|
43
43
|
getCascaderItemRequiredProps = _ref.getCascaderItemRequiredProps;
|
|
44
44
|
var _useCheckCascaderCont = context.useCheckCascaderContext(),
|
|
45
|
-
virtual = _useCheckCascaderCont.virtual
|
|
45
|
+
virtual = _useCheckCascaderCont.virtual,
|
|
46
|
+
classNames = _useCheckCascaderCont.classNames,
|
|
47
|
+
styles = _useCheckCascaderCont.styles;
|
|
46
48
|
var isCheckableMenu = menu.some(function (_ref2) {
|
|
47
49
|
var checkable = _ref2.checkable;
|
|
48
50
|
return checkable;
|
|
49
51
|
});
|
|
50
|
-
var cls = classname.cx(prefixCls, className, isCheckableMenu && prefixCls + "--checkable");
|
|
52
|
+
var cls = classname.cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.menu, isCheckableMenu && prefixCls + "--checkable");
|
|
53
|
+
var menuStyle = Object.assign(Object.assign({}, style), styles === null || styles === void 0 ? void 0 : styles.menu);
|
|
51
54
|
var virtualListProps = {
|
|
52
55
|
virtual: virtual,
|
|
53
56
|
data: menu,
|
|
@@ -56,7 +59,7 @@ var CheckCascaderMenu = function CheckCascaderMenu(_ref) {
|
|
|
56
59
|
};
|
|
57
60
|
return /*#__PURE__*/React__default["default"].createElement("ul", {
|
|
58
61
|
className: cls,
|
|
59
|
-
style:
|
|
62
|
+
style: menuStyle,
|
|
60
63
|
role: role
|
|
61
64
|
}, virtual ? ( /*#__PURE__*/React__default["default"].createElement(List["default"], Object.assign({
|
|
62
65
|
itemKey: 'id',
|
|
@@ -94,7 +97,9 @@ var MenuItem = /*#__PURE__*/React.forwardRef(function (_ref3, ref) {
|
|
|
94
97
|
expandTrigger = _useCheckCascaderCont2.expandTrigger,
|
|
95
98
|
onCheck = _useCheckCascaderCont2.onCheck,
|
|
96
99
|
onSelect = _useCheckCascaderCont2.onSelect,
|
|
97
|
-
titleRender = _useCheckCascaderCont2.titleRender
|
|
100
|
+
titleRender = _useCheckCascaderCont2.titleRender,
|
|
101
|
+
classNames = _useCheckCascaderCont2.classNames,
|
|
102
|
+
styles = _useCheckCascaderCont2.styles;
|
|
98
103
|
var renderTitle = React.useCallback(function (option) {
|
|
99
104
|
// 如果 titleRender 返回 `true`,则使用默认 title
|
|
100
105
|
var title = titleRender ? titleRender(option) : true;
|
|
@@ -122,7 +127,7 @@ var MenuItem = /*#__PURE__*/React.forwardRef(function (_ref3, ref) {
|
|
|
122
127
|
// 此处 option.children?.length || !option.checkable 的含义是
|
|
123
128
|
// 如果存在子节点,则可以展现选择态
|
|
124
129
|
// 不存在子节点,如不是可勾选item,则可以展现勾选态
|
|
125
|
-
selected && (((_a = option.children) === null || _a === void 0 ? void 0 : _a.length) || !option.checkable) && prefixCls + "-option--selected", loading && prefixCls + "-option--loading", disabled && prefixCls + "-option--disabled");
|
|
130
|
+
selected && (((_a = option.children) === null || _a === void 0 ? void 0 : _a.length) || !option.checkable) && prefixCls + "-option--selected", loading && prefixCls + "-option--loading", disabled && prefixCls + "-option--disabled", classNames === null || classNames === void 0 ? void 0 : classNames.option);
|
|
126
131
|
return /*#__PURE__*/React__default["default"].createElement("li", {
|
|
127
132
|
ref: ref,
|
|
128
133
|
role: "menu-item",
|
|
@@ -131,6 +136,7 @@ var MenuItem = /*#__PURE__*/React.forwardRef(function (_ref3, ref) {
|
|
|
131
136
|
title: typeof option.title === 'string' ? option.title : undefined
|
|
132
137
|
}, /*#__PURE__*/React__default["default"].createElement("div", {
|
|
133
138
|
className: optionCls,
|
|
139
|
+
style: styles === null || styles === void 0 ? void 0 : styles.option,
|
|
134
140
|
onClick: function onClick(evt) {
|
|
135
141
|
if (disabled) return;
|
|
136
142
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventOption);
|
|
@@ -175,11 +181,8 @@ var renderSuffix = function renderSuffix(prefixCls, node, loading, onLoadChildre
|
|
|
175
181
|
var canLoadChildren = onLoadChildren && !node.children && !node.isLeaf;
|
|
176
182
|
if (hasChildren || canLoadChildren) {
|
|
177
183
|
return /*#__PURE__*/React__default["default"].createElement("span", {
|
|
178
|
-
className: classname.cx(prefixCls + "-switcher")
|
|
179
|
-
|
|
180
|
-
transform: "rotate(-90deg)"
|
|
181
|
-
}
|
|
182
|
-
}, index$1.defaultSuffixIcon);
|
|
184
|
+
className: classname.cx(prefixCls + "-switcher")
|
|
185
|
+
}, /*#__PURE__*/React__default["default"].createElement(index$1.DefaultSuffixIcon, null));
|
|
183
186
|
}
|
|
184
187
|
return /*#__PURE__*/React__default["default"].createElement("span", {
|
|
185
188
|
className: classname.cx(prefixCls + "-switcher", prefixCls + "-switcher--noop")
|
|
@@ -63,7 +63,9 @@ var CheckCascaderMenuList = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
63
63
|
checkedMode = _a$checkedMode === void 0 ? 'ALL' : _a$checkedMode,
|
|
64
64
|
virtual = _a.virtual,
|
|
65
65
|
onMenuListChange = _a.onMenuListChange,
|
|
66
|
-
|
|
66
|
+
classNames = _a.classNames,
|
|
67
|
+
styles = _a.styles,
|
|
68
|
+
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "data", "flattedData", "originalFlattedData", "onChangeData", "value", "defaultValue", "disabled", "expandTrigger", "changeOnSelect", "checkCascaded", "onLoadChildren", "onChange", "onSelect", "titleRender", "dropdownColumnRender", "flatted", "checkedMode", "virtual", "onMenuListChange", "classNames", "styles"]);
|
|
67
69
|
if (checkCascaded === false) {
|
|
68
70
|
checkedMode = 'SEPARATE';
|
|
69
71
|
}
|
|
@@ -104,9 +106,11 @@ var CheckCascaderMenuList = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
104
106
|
titleRender: titleRender,
|
|
105
107
|
onLoadChildren: onLoadChildren,
|
|
106
108
|
disabled: disabled,
|
|
107
|
-
virtual: virtual
|
|
109
|
+
virtual: virtual,
|
|
110
|
+
classNames: classNames,
|
|
111
|
+
styles: styles
|
|
108
112
|
};
|
|
109
|
-
}, [expandTrigger, onOptionCheck, onItemExpand, flatted, changeOnSelect, titleRender, onLoadChildren, disabled, virtual]);
|
|
113
|
+
}, [expandTrigger, onOptionCheck, onItemExpand, flatted, changeOnSelect, titleRender, onLoadChildren, disabled, virtual, classNames, styles]);
|
|
110
114
|
var filteredMenus = React.useMemo(function () {
|
|
111
115
|
var menus = flatted ? index.getFlattedMenus(originalFlattedData) : index.getActiveMenus(originalFlattedData, selectedId);
|
|
112
116
|
return index.getFilteredMenuList(menus, flattedData);
|
|
@@ -114,13 +118,15 @@ var CheckCascaderMenuList = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
|
114
118
|
React.useEffect(function () {
|
|
115
119
|
onMenuListChange === null || onMenuListChange === void 0 ? void 0 : onMenuListChange(filteredMenus);
|
|
116
120
|
}, [filteredMenus, onMenuListChange]);
|
|
117
|
-
var cls = classname.cx(prefixCls, className, flatted && prefixCls + "--flatted", changeOnSelect && prefixCls + "--selectchange");
|
|
121
|
+
var cls = classname.cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.menuList, flatted && prefixCls + "--flatted", changeOnSelect && prefixCls + "--selectchange");
|
|
122
|
+
var rootStyle = styles === null || styles === void 0 ? void 0 : styles.menuList;
|
|
118
123
|
return /*#__PURE__*/React__default["default"].createElement(context.CheckCascaderProvider, {
|
|
119
124
|
value: providedValue
|
|
120
125
|
}, /*#__PURE__*/React__default["default"].createElement("div", Object.assign({
|
|
121
126
|
ref: ref,
|
|
122
127
|
role: role,
|
|
123
|
-
className: cls
|
|
128
|
+
className: cls,
|
|
129
|
+
style: rootStyle
|
|
124
130
|
}, rest), filteredMenus.map(function (menu, menuIndex) {
|
|
125
131
|
var menuContent = /*#__PURE__*/React__default["default"].createElement(CheckCascaderMenu.CheckCascaderMenu, {
|
|
126
132
|
key: menuIndex,
|
package/lib/cjs/icons/index.js
CHANGED
|
@@ -16,17 +16,22 @@ Object.defineProperty(exports, '__esModule', {
|
|
|
16
16
|
var React = require('react');
|
|
17
17
|
var icons = require('@hi-ui/icons');
|
|
18
18
|
var spinner = require('@hi-ui/spinner');
|
|
19
|
+
var core = require('@hi-ui/core');
|
|
19
20
|
function _interopDefaultCompat(e) {
|
|
20
21
|
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
21
22
|
'default': e
|
|
22
23
|
};
|
|
23
24
|
}
|
|
24
25
|
var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
25
|
-
var
|
|
26
|
+
var DefaultSuffixIcon = function DefaultSuffixIcon() {
|
|
27
|
+
var _useGlobalContext = core.useGlobalContext(),
|
|
28
|
+
direction = _useGlobalContext.direction;
|
|
29
|
+
return direction === 'rtl' ? /*#__PURE__*/React__default["default"].createElement(icons.LeftOutlined, null) : /*#__PURE__*/React__default["default"].createElement(icons.RightOutlined, null);
|
|
30
|
+
};
|
|
26
31
|
var defaultLeafIcon = null;
|
|
27
32
|
var defaultLoadingIcon = /*#__PURE__*/React__default["default"].createElement(spinner.Spinner, {
|
|
28
33
|
size: "sm"
|
|
29
34
|
});
|
|
35
|
+
exports.DefaultSuffixIcon = DefaultSuffixIcon;
|
|
30
36
|
exports.defaultLeafIcon = defaultLeafIcon;
|
|
31
37
|
exports.defaultLoadingIcon = defaultLoadingIcon;
|
|
32
|
-
exports.defaultSuffixIcon = defaultSuffixIcon;
|
|
@@ -14,7 +14,7 @@ Object.defineProperty(exports, '__esModule', {
|
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
16
|
var React = require('react');
|
|
17
|
-
require('
|
|
17
|
+
require('../../../../../react-is/index.js');
|
|
18
18
|
var index2 = require('../../../../../../_virtual/index2.js');
|
|
19
19
|
function _interopDefaultCompat(e) {
|
|
20
20
|
return e && _typeof(e) === 'object' && 'default' in e ? e : {
|
|
@@ -14,7 +14,7 @@ Object.defineProperty(exports, '__esModule', {
|
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
16
|
var _typeof = require('@babel/runtime/helpers/esm/typeof');
|
|
17
|
-
require('
|
|
17
|
+
require('../../../../react-is/index.js');
|
|
18
18
|
var index2 = require('../../../../../_virtual/index2.js');
|
|
19
19
|
function _interopDefaultCompat(e) {
|
|
20
20
|
return e && _typeof2(e) === 'object' && 'default' in e ? e : {
|
|
@@ -14,7 +14,7 @@ Object.defineProperty(exports, '__esModule', {
|
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
16
|
var _typeof = require('@babel/runtime/helpers/esm/typeof');
|
|
17
|
-
var reactIs_development = require('
|
|
17
|
+
var reactIs_development = require('../../../_virtual/react-is.development.js');
|
|
18
18
|
function _interopDefaultCompat(e) {
|
|
19
19
|
return e && _typeof2(e) === 'object' && 'default' in e ? e : {
|
|
20
20
|
'default': e
|
|
@@ -14,7 +14,7 @@ Object.defineProperty(exports, '__esModule', {
|
|
|
14
14
|
value: true
|
|
15
15
|
});
|
|
16
16
|
var _typeof = require('@babel/runtime/helpers/esm/typeof');
|
|
17
|
-
var reactIs_production_min = require('
|
|
17
|
+
var reactIs_production_min = require('../../../_virtual/react-is.production.min.js');
|
|
18
18
|
function _interopDefaultCompat(e) {
|
|
19
19
|
return e && _typeof2(e) === 'object' && 'default' in e ? e : {
|
|
20
20
|
'default': e
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
*/
|
|
10
10
|
'use strict';
|
|
11
11
|
|
|
12
|
-
var index2 = require('
|
|
12
|
+
var index2 = require('../../_virtual/index2.js');
|
|
13
13
|
require('./cjs/react-is.production.min.js');
|
|
14
14
|
require('./cjs/react-is.development.js');
|
|
15
|
-
var reactIs_production_min = require('
|
|
16
|
-
var reactIs_development = require('
|
|
15
|
+
var reactIs_production_min = require('../../_virtual/react-is.production.min.js');
|
|
16
|
+
var reactIs_development = require('../../_virtual/react-is.development.js');
|
|
17
17
|
|
|
18
18
|
/** @LICENSE
|
|
19
19
|
* @hi-ui/virtual-list
|
package/lib/esm/CheckCascader.js
CHANGED
|
@@ -17,6 +17,7 @@ import { UpOutlined, DownOutlined } from '@hi-ui/icons';
|
|
|
17
17
|
import { useCache } from './hooks/use-cache/lib/esm/index.js';
|
|
18
18
|
import { Picker } from '@hi-ui/picker';
|
|
19
19
|
import { TagInputMock } from '@hi-ui/tag-input';
|
|
20
|
+
import { useMergeSemantic } from '@hi-ui/use-merge-semantic';
|
|
20
21
|
import { CheckCascaderMenuList } from './CheckCascaderMenuList.js';
|
|
21
22
|
import { useTreeCustomSearch, useTreeUpMatchSearch, useSearchMode, matchStrategy } from '@hi-ui/use-search-mode';
|
|
22
23
|
import { flattenTreeData, parseCheckDataDirty, getAllCheckedStatus, processCheckedIds, allowCheck } from './utils/index.js';
|
|
@@ -87,11 +88,33 @@ var CheckCascader = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
87
88
|
_a$showIndicator = _a.showIndicator,
|
|
88
89
|
showIndicator = _a$showIndicator === void 0 ? true : _a$showIndicator,
|
|
89
90
|
renderExtraHeader = _a.renderExtraHeader,
|
|
90
|
-
|
|
91
|
+
classNamesProp = _a.classNames,
|
|
92
|
+
stylesProp = _a.styles,
|
|
93
|
+
rest = __rest(_a, ["prefixCls", "className", "defaultValue", "value", "onChange", "data", "placeholder", "clearable", "onClear", "onSelect", "expandTrigger", "disabled", "emptyContent", "changeOnSelect", "render", "displayRender", "checkCascaded", "searchPlaceholder", "onLoadChildren", "appearance", "invalid", "filterOption", "searchable", "keyword", "onSearch", "clearSearchOnClosed", "overlayClassName", "type", "flattedSearchResult", "checkedMode", "visible", "onOpen", "onClose", "tagInputProps", "size", "prefix", "suffix", "renderExtraFooter", "dropdownColumnRender", "customRender", "fieldNames", "label", "showOnlyShowChecked", "virtual", "showCheckAll", "showIndicator", "renderExtraHeader", "classNames", "styles"]);
|
|
91
94
|
var _useGlobalContext = useGlobalContext(),
|
|
92
|
-
globalSize = _useGlobalContext.size
|
|
95
|
+
globalSize = _useGlobalContext.size,
|
|
96
|
+
checkCascaderConfig = _useGlobalContext.checkCascader;
|
|
93
97
|
var size = (_b = sizeProp !== null && sizeProp !== void 0 ? sizeProp : globalSize) !== null && _b !== void 0 ? _b : 'md';
|
|
98
|
+
var _useGlobalContext2 = useGlobalContext(),
|
|
99
|
+
direction = _useGlobalContext2.direction;
|
|
94
100
|
var i18n = useLocaleContext();
|
|
101
|
+
var _useMergeSemantic = useMergeSemantic({
|
|
102
|
+
classNamesList: [checkCascaderConfig === null || checkCascaderConfig === void 0 ? void 0 : checkCascaderConfig.classNames, classNamesProp],
|
|
103
|
+
stylesList: [checkCascaderConfig === null || checkCascaderConfig === void 0 ? void 0 : checkCascaderConfig.styles, stylesProp],
|
|
104
|
+
info: {
|
|
105
|
+
props: Object.assign(Object.assign({}, rest), {
|
|
106
|
+
data: data,
|
|
107
|
+
disabled: disabled,
|
|
108
|
+
searchable: searchableProp,
|
|
109
|
+
visible: visible,
|
|
110
|
+
size: size,
|
|
111
|
+
appearance: appearance,
|
|
112
|
+
expandTrigger: expandTrigger
|
|
113
|
+
})
|
|
114
|
+
}
|
|
115
|
+
}),
|
|
116
|
+
classNames = _useMergeSemantic.classNames,
|
|
117
|
+
styles = _useMergeSemantic.styles;
|
|
95
118
|
var pickerInnerRef = useRef(null);
|
|
96
119
|
var placeholder = isUndef(placeholderProp) ? i18n.get('checkCascader.placeholder') : placeholderProp;
|
|
97
120
|
var flatted = type === 'flatted';
|
|
@@ -275,15 +298,31 @@ var CheckCascader = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
275
298
|
(_a = pickerInnerRef.current) === null || _a === void 0 ? void 0 : _a.update();
|
|
276
299
|
}
|
|
277
300
|
}, [menuVisible]);
|
|
301
|
+
var pickerSemanticKeys = ['root', 'container', 'panel', 'header', 'search', 'body', 'footer', 'loading', 'empty', 'creator'];
|
|
302
|
+
var pickerClassNames = pickerSemanticKeys.reduce(function (acc, key) {
|
|
303
|
+
if ((classNames === null || classNames === void 0 ? void 0 : classNames[key]) !== undefined) {
|
|
304
|
+
acc[key] = classNames[key];
|
|
305
|
+
}
|
|
306
|
+
return acc;
|
|
307
|
+
}, {});
|
|
308
|
+
var pickerStyles = pickerSemanticKeys.reduce(function (acc, key) {
|
|
309
|
+
if (styles === null || styles === void 0 ? void 0 : styles[key]) {
|
|
310
|
+
acc[key] = styles[key];
|
|
311
|
+
}
|
|
312
|
+
return acc;
|
|
313
|
+
}, {});
|
|
278
314
|
return /*#__PURE__*/React__default.createElement(Picker, Object.assign({
|
|
279
315
|
ref: ref,
|
|
280
316
|
innerRef: pickerInnerRef,
|
|
281
317
|
className: cls,
|
|
282
|
-
overlayClassName: cx(prefixCls + "__popper", overlayClassName)
|
|
318
|
+
overlayClassName: cx(prefixCls + "__popper", overlayClassName),
|
|
319
|
+
classNames: pickerClassNames,
|
|
320
|
+
styles: pickerStyles
|
|
283
321
|
}, rest, {
|
|
284
322
|
// 这种展现形式宽度是不固定的,关掉宽度匹配策略
|
|
285
323
|
overlay: Object.assign({
|
|
286
|
-
matchWidth: false
|
|
324
|
+
matchWidth: false,
|
|
325
|
+
placement: direction === 'rtl' ? 'bottom-end' : 'bottom-start'
|
|
287
326
|
}, rest.overlay),
|
|
288
327
|
visible: menuVisible,
|
|
289
328
|
onOpen: function onOpen() {
|
|
@@ -380,6 +419,8 @@ var CheckCascader = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
380
419
|
}), isArrayNonEmpty(selectProps.data) ? ( /*#__PURE__*/React__default.createElement(CheckCascaderMenuList, {
|
|
381
420
|
disabled: disabled,
|
|
382
421
|
value: value,
|
|
422
|
+
classNames: classNames,
|
|
423
|
+
styles: styles,
|
|
383
424
|
// @ts-ignore
|
|
384
425
|
onChange: proxyOnChange,
|
|
385
426
|
expandTrigger: expandTrigger,
|
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
*/
|
|
10
10
|
import React__default, { forwardRef, useCallback } from 'react';
|
|
11
11
|
import { getPrefixCls, cx } from '@hi-ui/classname';
|
|
12
|
-
import { defaultLoadingIcon,
|
|
12
|
+
import { defaultLoadingIcon, DefaultSuffixIcon, defaultLeafIcon } from './icons/index.js';
|
|
13
13
|
import Checkbox from '@hi-ui/checkbox';
|
|
14
14
|
import { useCheckCascaderContext } from './context.js';
|
|
15
15
|
import { getCascaderItemEventData } from './utils/index.js';
|
|
@@ -29,12 +29,15 @@ var CheckCascaderMenu = function CheckCascaderMenu(_ref) {
|
|
|
29
29
|
menu = _ref.data,
|
|
30
30
|
getCascaderItemRequiredProps = _ref.getCascaderItemRequiredProps;
|
|
31
31
|
var _useCheckCascaderCont = useCheckCascaderContext(),
|
|
32
|
-
virtual = _useCheckCascaderCont.virtual
|
|
32
|
+
virtual = _useCheckCascaderCont.virtual,
|
|
33
|
+
classNames = _useCheckCascaderCont.classNames,
|
|
34
|
+
styles = _useCheckCascaderCont.styles;
|
|
33
35
|
var isCheckableMenu = menu.some(function (_ref2) {
|
|
34
36
|
var checkable = _ref2.checkable;
|
|
35
37
|
return checkable;
|
|
36
38
|
});
|
|
37
|
-
var cls = cx(prefixCls, className, isCheckableMenu && prefixCls + "--checkable");
|
|
39
|
+
var cls = cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.menu, isCheckableMenu && prefixCls + "--checkable");
|
|
40
|
+
var menuStyle = Object.assign(Object.assign({}, style), styles === null || styles === void 0 ? void 0 : styles.menu);
|
|
38
41
|
var virtualListProps = {
|
|
39
42
|
virtual: virtual,
|
|
40
43
|
data: menu,
|
|
@@ -43,7 +46,7 @@ var CheckCascaderMenu = function CheckCascaderMenu(_ref) {
|
|
|
43
46
|
};
|
|
44
47
|
return /*#__PURE__*/React__default.createElement("ul", {
|
|
45
48
|
className: cls,
|
|
46
|
-
style:
|
|
49
|
+
style: menuStyle,
|
|
47
50
|
role: role
|
|
48
51
|
}, virtual ? ( /*#__PURE__*/React__default.createElement(List, Object.assign({
|
|
49
52
|
itemKey: 'id',
|
|
@@ -81,7 +84,9 @@ var MenuItem = /*#__PURE__*/forwardRef(function (_ref3, ref) {
|
|
|
81
84
|
expandTrigger = _useCheckCascaderCont2.expandTrigger,
|
|
82
85
|
onCheck = _useCheckCascaderCont2.onCheck,
|
|
83
86
|
onSelect = _useCheckCascaderCont2.onSelect,
|
|
84
|
-
titleRender = _useCheckCascaderCont2.titleRender
|
|
87
|
+
titleRender = _useCheckCascaderCont2.titleRender,
|
|
88
|
+
classNames = _useCheckCascaderCont2.classNames,
|
|
89
|
+
styles = _useCheckCascaderCont2.styles;
|
|
85
90
|
var renderTitle = useCallback(function (option) {
|
|
86
91
|
// 如果 titleRender 返回 `true`,则使用默认 title
|
|
87
92
|
var title = titleRender ? titleRender(option) : true;
|
|
@@ -109,7 +114,7 @@ var MenuItem = /*#__PURE__*/forwardRef(function (_ref3, ref) {
|
|
|
109
114
|
// 此处 option.children?.length || !option.checkable 的含义是
|
|
110
115
|
// 如果存在子节点,则可以展现选择态
|
|
111
116
|
// 不存在子节点,如不是可勾选item,则可以展现勾选态
|
|
112
|
-
selected && (((_a = option.children) === null || _a === void 0 ? void 0 : _a.length) || !option.checkable) && prefixCls + "-option--selected", loading && prefixCls + "-option--loading", disabled && prefixCls + "-option--disabled");
|
|
117
|
+
selected && (((_a = option.children) === null || _a === void 0 ? void 0 : _a.length) || !option.checkable) && prefixCls + "-option--selected", loading && prefixCls + "-option--loading", disabled && prefixCls + "-option--disabled", classNames === null || classNames === void 0 ? void 0 : classNames.option);
|
|
113
118
|
return /*#__PURE__*/React__default.createElement("li", {
|
|
114
119
|
ref: ref,
|
|
115
120
|
role: "menu-item",
|
|
@@ -118,6 +123,7 @@ var MenuItem = /*#__PURE__*/forwardRef(function (_ref3, ref) {
|
|
|
118
123
|
title: typeof option.title === 'string' ? option.title : undefined
|
|
119
124
|
}, /*#__PURE__*/React__default.createElement("div", {
|
|
120
125
|
className: optionCls,
|
|
126
|
+
style: styles === null || styles === void 0 ? void 0 : styles.option,
|
|
121
127
|
onClick: function onClick(evt) {
|
|
122
128
|
if (disabled) return;
|
|
123
129
|
onSelect === null || onSelect === void 0 ? void 0 : onSelect(eventOption);
|
|
@@ -162,11 +168,8 @@ var renderSuffix = function renderSuffix(prefixCls, node, loading, onLoadChildre
|
|
|
162
168
|
var canLoadChildren = onLoadChildren && !node.children && !node.isLeaf;
|
|
163
169
|
if (hasChildren || canLoadChildren) {
|
|
164
170
|
return /*#__PURE__*/React__default.createElement("span", {
|
|
165
|
-
className: cx(prefixCls + "-switcher")
|
|
166
|
-
|
|
167
|
-
transform: "rotate(-90deg)"
|
|
168
|
-
}
|
|
169
|
-
}, defaultSuffixIcon);
|
|
171
|
+
className: cx(prefixCls + "-switcher")
|
|
172
|
+
}, /*#__PURE__*/React__default.createElement(DefaultSuffixIcon, null));
|
|
170
173
|
}
|
|
171
174
|
return /*#__PURE__*/React__default.createElement("span", {
|
|
172
175
|
className: cx(prefixCls + "-switcher", prefixCls + "-switcher--noop")
|
|
@@ -51,7 +51,9 @@ var CheckCascaderMenuList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
51
51
|
checkedMode = _a$checkedMode === void 0 ? 'ALL' : _a$checkedMode,
|
|
52
52
|
virtual = _a.virtual,
|
|
53
53
|
onMenuListChange = _a.onMenuListChange,
|
|
54
|
-
|
|
54
|
+
classNames = _a.classNames,
|
|
55
|
+
styles = _a.styles,
|
|
56
|
+
rest = __rest(_a, ["prefixCls", "role", "className", "children", "data", "flattedData", "originalFlattedData", "onChangeData", "value", "defaultValue", "disabled", "expandTrigger", "changeOnSelect", "checkCascaded", "onLoadChildren", "onChange", "onSelect", "titleRender", "dropdownColumnRender", "flatted", "checkedMode", "virtual", "onMenuListChange", "classNames", "styles"]);
|
|
55
57
|
if (checkCascaded === false) {
|
|
56
58
|
checkedMode = 'SEPARATE';
|
|
57
59
|
}
|
|
@@ -92,9 +94,11 @@ var CheckCascaderMenuList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
92
94
|
titleRender: titleRender,
|
|
93
95
|
onLoadChildren: onLoadChildren,
|
|
94
96
|
disabled: disabled,
|
|
95
|
-
virtual: virtual
|
|
97
|
+
virtual: virtual,
|
|
98
|
+
classNames: classNames,
|
|
99
|
+
styles: styles
|
|
96
100
|
};
|
|
97
|
-
}, [expandTrigger, onOptionCheck, onItemExpand, flatted, changeOnSelect, titleRender, onLoadChildren, disabled, virtual]);
|
|
101
|
+
}, [expandTrigger, onOptionCheck, onItemExpand, flatted, changeOnSelect, titleRender, onLoadChildren, disabled, virtual, classNames, styles]);
|
|
98
102
|
var filteredMenus = useMemo(function () {
|
|
99
103
|
var menus = flatted ? getFlattedMenus(originalFlattedData) : getActiveMenus(originalFlattedData, selectedId);
|
|
100
104
|
return getFilteredMenuList(menus, flattedData);
|
|
@@ -102,13 +106,15 @@ var CheckCascaderMenuList = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
|
102
106
|
useEffect(function () {
|
|
103
107
|
onMenuListChange === null || onMenuListChange === void 0 ? void 0 : onMenuListChange(filteredMenus);
|
|
104
108
|
}, [filteredMenus, onMenuListChange]);
|
|
105
|
-
var cls = cx(prefixCls, className, flatted && prefixCls + "--flatted", changeOnSelect && prefixCls + "--selectchange");
|
|
109
|
+
var cls = cx(prefixCls, className, classNames === null || classNames === void 0 ? void 0 : classNames.menuList, flatted && prefixCls + "--flatted", changeOnSelect && prefixCls + "--selectchange");
|
|
110
|
+
var rootStyle = styles === null || styles === void 0 ? void 0 : styles.menuList;
|
|
106
111
|
return /*#__PURE__*/React__default.createElement(CheckCascaderProvider, {
|
|
107
112
|
value: providedValue
|
|
108
113
|
}, /*#__PURE__*/React__default.createElement("div", Object.assign({
|
|
109
114
|
ref: ref,
|
|
110
115
|
role: role,
|
|
111
|
-
className: cls
|
|
116
|
+
className: cls,
|
|
117
|
+
style: rootStyle
|
|
112
118
|
}, rest), filteredMenus.map(function (menu, menuIndex) {
|
|
113
119
|
var menuContent = /*#__PURE__*/React__default.createElement(CheckCascaderMenu, {
|
|
114
120
|
key: menuIndex,
|
package/lib/esm/icons/index.js
CHANGED
|
@@ -8,11 +8,16 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import React__default from 'react';
|
|
11
|
-
import {
|
|
11
|
+
import { LeftOutlined, RightOutlined } from '@hi-ui/icons';
|
|
12
12
|
import { Spinner } from '@hi-ui/spinner';
|
|
13
|
-
|
|
13
|
+
import { useGlobalContext } from '@hi-ui/core';
|
|
14
|
+
var DefaultSuffixIcon = function DefaultSuffixIcon() {
|
|
15
|
+
var _useGlobalContext = useGlobalContext(),
|
|
16
|
+
direction = _useGlobalContext.direction;
|
|
17
|
+
return direction === 'rtl' ? /*#__PURE__*/React__default.createElement(LeftOutlined, null) : /*#__PURE__*/React__default.createElement(RightOutlined, null);
|
|
18
|
+
};
|
|
14
19
|
var defaultLeafIcon = null;
|
|
15
20
|
var defaultLoadingIcon = /*#__PURE__*/React__default.createElement(Spinner, {
|
|
16
21
|
size: "sm"
|
|
17
22
|
});
|
|
18
|
-
export { defaultLeafIcon, defaultLoadingIcon
|
|
23
|
+
export { DefaultSuffixIcon, defaultLeafIcon, defaultLoadingIcon };
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import React__default from 'react';
|
|
11
|
-
import '
|
|
11
|
+
import '../../../../../react-is/index.js';
|
|
12
12
|
import { r as reactIs } from '../../../../../../_virtual/index2.js';
|
|
13
13
|
|
|
14
14
|
/** @LICENSE
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import _typeof from '@babel/runtime/helpers/esm/typeof';
|
|
11
|
-
import '
|
|
11
|
+
import '../../../../react-is/index.js';
|
|
12
12
|
import { r as reactIs } from '../../../../../_virtual/index2.js';
|
|
13
13
|
|
|
14
14
|
/** @LICENSE
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import _typeof from '@babel/runtime/helpers/esm/typeof';
|
|
11
|
-
import { __exports as reactIs_development } from '
|
|
11
|
+
import { __exports as reactIs_development } from '../../../_virtual/react-is.development.js';
|
|
12
12
|
|
|
13
13
|
/** @license React v16.13.1
|
|
14
14
|
* react-is.development.js
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
10
|
import _typeof from '@babel/runtime/helpers/esm/typeof';
|
|
11
|
-
import { __exports as reactIs_production_min } from '
|
|
11
|
+
import { __exports as reactIs_production_min } from '../../../_virtual/react-is.production.min.js';
|
|
12
12
|
|
|
13
13
|
/** @license React v16.13.1
|
|
14
14
|
* react-is.production.min.js
|
|
@@ -7,11 +7,11 @@
|
|
|
7
7
|
* This source code is licensed under the MIT license found in the
|
|
8
8
|
* LICENSE file in the root directory of this source tree.
|
|
9
9
|
*/
|
|
10
|
-
import { r as reactIs } from '
|
|
10
|
+
import { r as reactIs } from '../../_virtual/index2.js';
|
|
11
11
|
import './cjs/react-is.production.min.js';
|
|
12
12
|
import './cjs/react-is.development.js';
|
|
13
|
-
import { __exports as reactIs_production_min } from '
|
|
14
|
-
import { __exports as reactIs_development } from '
|
|
13
|
+
import { __exports as reactIs_production_min } from '../../_virtual/react-is.production.min.js';
|
|
14
|
+
import { __exports as reactIs_development } from '../../_virtual/react-is.development.js';
|
|
15
15
|
|
|
16
16
|
/** @LICENSE
|
|
17
17
|
* @hi-ui/virtual-list
|
|
@@ -1,13 +1,18 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CheckCascaderDataItem, CheckCascaderExpandTriggerEnum, CheckCascaderItemEventData, CheckCascaderAppearanceEnum, FlattedCheckCascaderDataItem } from './types';
|
|
3
|
-
import { PickerProps } from '@hi-ui/picker';
|
|
3
|
+
import { PickerProps, PickerSemanticName } from '@hi-ui/picker';
|
|
4
4
|
import { TagInputMockProps } from '@hi-ui/tag-input';
|
|
5
|
+
import type { ComponentSemantic, SemanticClassNamesType, SemanticStylesType } from '@hi-ui/use-merge-semantic';
|
|
5
6
|
import { HiBaseFieldNames, HiBaseSizeEnum } from '@hi-ui/core';
|
|
6
7
|
/**
|
|
7
8
|
* 多项级联选择器
|
|
8
9
|
*/
|
|
9
10
|
export declare const CheckCascader: React.ForwardRefExoticComponent<CheckCascaderProps & React.RefAttributes<HTMLDivElement | null>>;
|
|
10
|
-
export
|
|
11
|
+
export declare type CheckCascaderSemanticName = PickerSemanticName | 'menuList' | 'menu' | 'option';
|
|
12
|
+
export declare type CheckCascaderSemanticClassNames = SemanticClassNamesType<CheckCascaderProps, CheckCascaderSemanticName>;
|
|
13
|
+
export declare type CheckCascaderSemanticStyles = SemanticStylesType<CheckCascaderProps, CheckCascaderSemanticName>;
|
|
14
|
+
export declare type CheckCascaderSemantic = ComponentSemantic<CheckCascaderSemanticClassNames, CheckCascaderSemanticStyles>;
|
|
15
|
+
export interface CheckCascaderProps extends Omit<PickerProps, 'trigger' | 'scrollable' | 'header' | 'footer' | 'classNames' | 'styles'>, CheckCascaderSemantic {
|
|
11
16
|
/**
|
|
12
17
|
* 设置选择项数据源
|
|
13
18
|
*/
|
|
@@ -99,4 +99,12 @@ export interface CascaderMenusProps {
|
|
|
99
99
|
* 菜单列表改变时的回调
|
|
100
100
|
*/
|
|
101
101
|
onMenuListChange?: (menuList: FlattedCheckCascaderDataItem[][]) => void;
|
|
102
|
+
/**
|
|
103
|
+
* 语义化 classNames(由 CheckCascader 传入,用于 menuList/menu/option)
|
|
104
|
+
*/
|
|
105
|
+
classNames?: Partial<Record<string, string>>;
|
|
106
|
+
/**
|
|
107
|
+
* 语义化 styles(由 CheckCascader 传入,用于 menuList/menu/option)
|
|
108
|
+
*/
|
|
109
|
+
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
102
110
|
}
|
package/lib/types/context.d.ts
CHANGED
|
@@ -11,6 +11,8 @@ interface CheckCascaderContext {
|
|
|
11
11
|
titleRender?: (item: CheckCascaderItemEventData) => React.ReactNode;
|
|
12
12
|
getCascaderItemRequiredProps?: (item: FlattedCheckCascaderDataItem) => CheckCascaderDataItemRequiredProps;
|
|
13
13
|
virtual?: boolean;
|
|
14
|
+
classNames?: Partial<Record<string, string>>;
|
|
15
|
+
styles?: Partial<Record<string, React.CSSProperties>>;
|
|
14
16
|
}
|
|
15
17
|
export declare const CheckCascaderProvider: React.Provider<CheckCascaderContext>;
|
|
16
18
|
export declare const useCheckCascaderContext: () => CheckCascaderContext;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CheckCascaderDataItem, CheckCascaderItemEventData } from '../types';
|
|
3
|
-
export declare const useAsyncSwitch: (setCascaderData: React.Dispatch<React.SetStateAction<CheckCascaderDataItem[]>>, onExpand?: (selectedOption: CheckCascaderItemEventData) => void, onLoadChildren?: (item: CheckCascaderItemEventData, idPaths: React.ReactText[]) => Promise<CheckCascaderDataItem[] | void> | void) => readonly [(id: React.ReactText) => boolean, (node: CheckCascaderItemEventData) => Promise<void>];
|
|
3
|
+
export declare const useAsyncSwitch: (setCascaderData: React.Dispatch<React.SetStateAction<CheckCascaderDataItem[]>>, onExpand?: ((selectedOption: CheckCascaderItemEventData) => void) | undefined, onLoadChildren?: ((item: CheckCascaderItemEventData, idPaths: React.ReactText[]) => Promise<CheckCascaderDataItem[] | void> | void) | undefined) => readonly [(id: React.ReactText) => boolean, (node: CheckCascaderItemEventData) => Promise<void>];
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { CheckCascaderItemEventData, FlattedCheckCascaderDataItem } from '../types';
|
|
3
|
-
export declare const useCheck: (checkedMode: string, disabled: boolean, flattedData: FlattedCheckCascaderDataItem[], defaultCheckedIds?: React.ReactText[], checkedIdsProp?: React.ReactText[], onCheck?: (checkedInfo: {
|
|
3
|
+
export declare const useCheck: (checkedMode: string, disabled: boolean, flattedData: FlattedCheckCascaderDataItem[], defaultCheckedIds?: React.ReactText[], checkedIdsProp?: React.ReactText[] | undefined, onCheck?: ((checkedInfo: {
|
|
4
4
|
checkedIds: React.ReactText[];
|
|
5
5
|
semiCheckedIds: React.ReactText[];
|
|
6
|
-
}, node: CheckCascaderItemEventData, checked: boolean) => void) => readonly [(targetItem: import("@hi-ui/use-check").UseCascadeCheckItem, shouldChecked: boolean) => void, (id: React.ReactText) => boolean, (id: React.ReactText) => boolean];
|
|
6
|
+
}, node: CheckCascaderItemEventData, checked: boolean) => void) | undefined) => readonly [(targetItem: import("@hi-ui/use-check").UseCascadeCheckItem, shouldChecked: boolean) => void, (id: React.ReactText) => boolean, (id: React.ReactText) => boolean];
|
package/lib/types/types.d.ts
CHANGED
|
@@ -63,5 +63,5 @@ export interface CheckCascaderDataItemRequiredProps {
|
|
|
63
63
|
}
|
|
64
64
|
export interface CheckCascaderItemEventData extends FlattedCheckCascaderDataItem, CheckCascaderDataItemRequiredProps {
|
|
65
65
|
}
|
|
66
|
-
export type CheckCascaderExpandTriggerEnum = 'click' | 'hover';
|
|
67
|
-
export type CheckCascaderAppearanceEnum = HiBaseAppearanceEnum | 'contained' | undefined;
|
|
66
|
+
export declare type CheckCascaderExpandTriggerEnum = 'click' | 'hover';
|
|
67
|
+
export declare type CheckCascaderAppearanceEnum = HiBaseAppearanceEnum | 'contained' | undefined;
|
|
@@ -7,10 +7,10 @@ import { CheckCascaderDataItemRequiredProps, CheckCascaderItemEventData, CheckCa
|
|
|
7
7
|
* @param treeData
|
|
8
8
|
* @returns
|
|
9
9
|
*/
|
|
10
|
-
export declare const flattenTreeData: (treeData: CheckCascaderDataItem[], fieldNames?: HiBaseFieldNames) => FlattedCheckCascaderDataItem[];
|
|
11
|
-
export declare const getActiveMenus: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText) => FlattedCheckCascaderDataItem[][];
|
|
10
|
+
export declare const flattenTreeData: (treeData: CheckCascaderDataItem[], fieldNames?: HiBaseFieldNames | undefined) => FlattedCheckCascaderDataItem[];
|
|
11
|
+
export declare const getActiveMenus: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText | undefined) => FlattedCheckCascaderDataItem[][];
|
|
12
12
|
export declare const getFlattedMenus: (data: FlattedCheckCascaderDataItem[]) => FlattedCheckCascaderDataItem[][];
|
|
13
|
-
export declare const getActiveMenuIds: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText) => React.ReactText[];
|
|
13
|
+
export declare const getActiveMenuIds: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText | undefined) => React.ReactText[];
|
|
14
14
|
export declare function getCascaderItemEventData(node: FlattedCheckCascaderDataItem, requiredProps: CheckCascaderDataItemRequiredProps): CheckCascaderItemEventData;
|
|
15
15
|
/**
|
|
16
16
|
* 处理选中的回显数据
|
|
@@ -23,7 +23,7 @@ export declare const processCheckedIds: (type: string, checkedIds: React.ReactTe
|
|
|
23
23
|
/**
|
|
24
24
|
* 根据传入的 checkedIds 解析全选/半选数据
|
|
25
25
|
*/
|
|
26
|
-
export declare const parseCheckDataDirty: (type: string, checkedIds: React.ReactText[], flattenData: any, allowCheck?: (node: any) => boolean) => React.ReactText[];
|
|
26
|
+
export declare const parseCheckDataDirty: (type: string, checkedIds: React.ReactText[], flattenData: any, allowCheck?: ((node: any) => boolean) | undefined) => React.ReactText[];
|
|
27
27
|
export declare const allowCheck: (targetItem: CheckCascaderItemEventData) => boolean;
|
|
28
28
|
export declare const getAllCheckedStatus: (flattedData: any[], values: React.ReactText[]) => boolean[];
|
|
29
29
|
export declare const getFilteredMenuList: (menuList: FlattedCheckCascaderDataItem[][], searchedData: any[]) => any[];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@hi-ui/check-cascader",
|
|
3
|
-
"version": "5.0.0-
|
|
3
|
+
"version": "5.0.0-rc.0",
|
|
4
4
|
"description": "A sub-package for @hi-ui/hiui.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"author": "HiUI <mi-hiui@xiaomi.com>",
|
|
@@ -45,37 +45,38 @@
|
|
|
45
45
|
"url": "https://github.com/XiaoMi/hiui/issues"
|
|
46
46
|
},
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@hi-ui/array-utils": "^5.0.0-
|
|
49
|
-
"@hi-ui/checkbox": "^5.0.0-
|
|
50
|
-
"@hi-ui/classname": "^5.0.0-
|
|
51
|
-
"@hi-ui/env": "^5.0.0-
|
|
52
|
-
"@hi-ui/func-utils": "^5.0.0-
|
|
53
|
-
"@hi-ui/icons": "^5.0.0-
|
|
54
|
-
"@hi-ui/input": "^5.0.0-
|
|
55
|
-
"@hi-ui/picker": "^5.0.0-
|
|
56
|
-
"@hi-ui/popper": "^5.0.0-
|
|
57
|
-
"@hi-ui/spinner": "^5.0.0-
|
|
58
|
-
"@hi-ui/tag-input": "^5.0.0-
|
|
59
|
-
"@hi-ui/times": "^5.0.0-
|
|
60
|
-
"@hi-ui/tree-utils": "^5.0.0-
|
|
61
|
-
"@hi-ui/type-assertion": "^5.0.0-
|
|
62
|
-
"@hi-ui/use-check": "^5.0.0-
|
|
63
|
-
"@hi-ui/use-data-source": "^5.0.0-
|
|
64
|
-
"@hi-ui/use-latest": "^5.0.0-
|
|
65
|
-
"@hi-ui/use-merge-refs": "^5.0.0-
|
|
66
|
-
"@hi-ui/use-
|
|
67
|
-
"@hi-ui/use-
|
|
68
|
-
"@hi-ui/use-
|
|
69
|
-
"@hi-ui/use-
|
|
48
|
+
"@hi-ui/array-utils": "^5.0.0-rc.0",
|
|
49
|
+
"@hi-ui/checkbox": "^5.0.0-rc.0",
|
|
50
|
+
"@hi-ui/classname": "^5.0.0-rc.0",
|
|
51
|
+
"@hi-ui/env": "^5.0.0-rc.0",
|
|
52
|
+
"@hi-ui/func-utils": "^5.0.0-rc.0",
|
|
53
|
+
"@hi-ui/icons": "^5.0.0-rc.0",
|
|
54
|
+
"@hi-ui/input": "^5.0.0-rc.0",
|
|
55
|
+
"@hi-ui/picker": "^5.0.0-rc.0",
|
|
56
|
+
"@hi-ui/popper": "^5.0.0-rc.0",
|
|
57
|
+
"@hi-ui/spinner": "^5.0.0-rc.0",
|
|
58
|
+
"@hi-ui/tag-input": "^5.0.0-rc.0",
|
|
59
|
+
"@hi-ui/times": "^5.0.0-rc.0",
|
|
60
|
+
"@hi-ui/tree-utils": "^5.0.0-rc.0",
|
|
61
|
+
"@hi-ui/type-assertion": "^5.0.0-rc.0",
|
|
62
|
+
"@hi-ui/use-check": "^5.0.0-rc.0",
|
|
63
|
+
"@hi-ui/use-data-source": "^5.0.0-rc.0",
|
|
64
|
+
"@hi-ui/use-latest": "^5.0.0-rc.0",
|
|
65
|
+
"@hi-ui/use-merge-refs": "^5.0.0-rc.0",
|
|
66
|
+
"@hi-ui/use-merge-semantic": "^5.0.0-rc.0",
|
|
67
|
+
"@hi-ui/use-outside-click": "^5.0.0-rc.0",
|
|
68
|
+
"@hi-ui/use-search-mode": "^5.0.0-rc.0",
|
|
69
|
+
"@hi-ui/use-toggle": "^5.0.0-rc.0",
|
|
70
|
+
"@hi-ui/use-uncontrolled-state": "^5.0.0-rc.0"
|
|
70
71
|
},
|
|
71
72
|
"peerDependencies": {
|
|
72
|
-
"@hi-ui/core": ">=5.0.0-
|
|
73
|
+
"@hi-ui/core": ">=5.0.0-rc.0",
|
|
73
74
|
"react": ">=16.8.6",
|
|
74
75
|
"react-dom": ">=16.8.6"
|
|
75
76
|
},
|
|
76
77
|
"devDependencies": {
|
|
77
|
-
"@hi-ui/core": "^5.0.0-
|
|
78
|
-
"@hi-ui/core-css": "^5.0.0-
|
|
78
|
+
"@hi-ui/core": "^5.0.0-rc.0",
|
|
79
|
+
"@hi-ui/core-css": "^5.0.0-rc.0",
|
|
79
80
|
"react": "^17.0.1",
|
|
80
81
|
"react-dom": "^17.0.1"
|
|
81
82
|
}
|