@hi-ui/check-select 4.0.0-alpha.25 → 4.0.0-alpha.29
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/README.md +8 -10
- package/lib/cjs/CheckSelect.js +16 -21
- package/lib/cjs/CheckSelect.js.map +1 -1
- package/lib/cjs/use-check-select.js +15 -5
- package/lib/cjs/use-check-select.js.map +1 -1
- package/lib/esm/CheckSelect.js +15 -21
- package/lib/esm/CheckSelect.js.map +1 -1
- package/lib/esm/use-check-select.js +16 -6
- package/lib/esm/use-check-select.js.map +1 -1
- package/lib/types/CheckSelect.d.ts +6 -9
- package/lib/types/context.d.ts +2 -2
- package/lib/types/use-check-select.d.ts +5 -2
- package/package.json +22 -21
package/README.md
CHANGED
@@ -37,17 +37,17 @@
|
|
37
37
|
| renderExtraFooter | 自定义下拉菜单底部渲染 | () => ReactNode | - | 无内容 |
|
38
38
|
| overlayClassName | 下拉根元素的类名称 | string | - | - |
|
39
39
|
| onOverlayScroll | 下拉列表滚动时的回调 | function | - | - |
|
40
|
-
|
|
41
|
-
|
|
40
|
+
| overlay | 自定义控制弹出层 popper 行为 | PopperOverlayProps | - | - |
|
41
|
+
| render | 自定义渲染节点的 title 内容径 | (item: CheckSelectEventData, keyword: string) => React.ReactNode | - |
|
42
42
|
| displayRender | 自定义选择后展示的内容 | (selectedItems: DataItem[]) => string | - | - |
|
43
43
|
|
44
|
-
> 注意,如果发现下拉菜单跟随页面滚动,或者需要在其他弹层中触发 CheckSelect,请尝试使用 `
|
44
|
+
> 注意,如果发现下拉菜单跟随页面滚动,或者需要在其他弹层中触发 CheckSelect,请尝试使用 `overlay={ container: triggerNode.parentElement }` 将下拉弹层渲染节点固定在触发器的父元素中。
|
45
45
|
|
46
46
|
## Events
|
47
47
|
|
48
|
-
| 名称 | 说明 | 类型
|
49
|
-
| -------- | ------------------ |
|
50
|
-
| onChange | 改变选项时触发函数 | (selectedIds: string[], changedItems: DataItem[]
|
48
|
+
| 名称 | 说明 | 类型 | 参数 | 返回值 |
|
49
|
+
| -------- | ------------------ | ---------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ------ |
|
50
|
+
| onChange | 改变选项时触发函数 | (selectedIds: string[], changedItems: DataItem[], afterChangedItems: DataItem[]) => void | selectedIds: 所有选中项的 id 集合 <br /> changedItem: 变更的选项集合 <br /> afterChangedItems:变更后的选项集合 | - |
|
51
51
|
|
52
52
|
## Type
|
53
53
|
|
@@ -107,8 +107,7 @@
|
|
107
107
|
| bordered | deprecated | 字段 `bordered` => `appearance` | 对于 Picker 类型的组件,统一使用 appearance 设置外形(线\面\无边框)值 |
|
108
108
|
| searchPlaceholder | feature | - | Picker 类型组件统一支持 |
|
109
109
|
| loadingContent | feature | - | Picker 类型组件统一支持,适配新 UI |
|
110
|
-
|
|
111
|
-
| titleRender | feature | 字段 render => titleRender | 统一支持自定义渲染每一项 |
|
110
|
+
| overlay | feature | - | Picker 类型组件统一支持,聚合管理。比如: placement setOverlayContainer 等,之前有的加了有的没加 |
|
112
111
|
| virtual | feature | - | 支持虚拟列表 |
|
113
112
|
| height | feature | - | 支持虚拟列表 |
|
114
113
|
| itemHeight | feature | - | 支持虚拟列表 |
|
@@ -117,5 +116,4 @@
|
|
117
116
|
| onSearch | deprecated | - | 使用 dataSource 替代,功能重合 |
|
118
117
|
| appearance | feature | - | 统一支持:线性\面性\无边框 |
|
119
118
|
| displayRender | feature | - | 统一支持选择后内容自定义渲染 |
|
120
|
-
| setOverlayContainer | deprecated | - | 使用
|
121
|
-
| onChange | update | 添加 shouldChecked 第四个参数 | 方便用户获取,执行相应拦截之类的操作 |
|
119
|
+
| setOverlayContainer | deprecated | - | 使用 overlay.container 替代,功能重合 |
|
package/lib/cjs/CheckSelect.js
CHANGED
@@ -49,6 +49,8 @@ var useToggle = require('@hi-ui/use-toggle');
|
|
49
49
|
|
50
50
|
var times = require('@hi-ui/times');
|
51
51
|
|
52
|
+
var funcUtils = require('@hi-ui/func-utils');
|
53
|
+
|
52
54
|
var useSearchMode = require('@hi-ui/use-search-mode');
|
53
55
|
|
54
56
|
function _interopDefaultLegacy(e) {
|
@@ -84,7 +86,8 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
84
86
|
placeholder = _a$placeholder === void 0 ? '请选择' : _a$placeholder,
|
85
87
|
displayRenderProp = _a.displayRender,
|
86
88
|
onSelectProp = _a.onSelect,
|
87
|
-
height = _a.height,
|
89
|
+
_a$height = _a.height,
|
90
|
+
height = _a$height === void 0 ? 260 : _a$height,
|
88
91
|
_a$itemHeight = _a.itemHeight,
|
89
92
|
itemHeight = _a$itemHeight === void 0 ? 40 : _a$itemHeight,
|
90
93
|
_a$virtual = _a.virtual,
|
@@ -94,9 +97,10 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
94
97
|
dataSource = _a.dataSource,
|
95
98
|
filterOption = _a.filterOption,
|
96
99
|
searchableProp = _a.searchable,
|
97
|
-
titleRender = _a.
|
100
|
+
titleRender = _a.render,
|
98
101
|
renderExtraFooter = _a.renderExtraFooter,
|
99
|
-
|
102
|
+
onSearchProp = _a.onSearch,
|
103
|
+
rest = tslib.__rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "wrap", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "onOpen", "onClose", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch"]);
|
100
104
|
|
101
105
|
var _useToggle = useToggle.useToggle(),
|
102
106
|
menuVisible = _useToggle[0],
|
@@ -104,6 +108,7 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
104
108
|
|
105
109
|
var displayRender = React.useCallback(function (item) {
|
106
110
|
if (typeAssertion.isFunction(displayRenderProp)) {
|
111
|
+
// @ts-ignore
|
107
112
|
return displayRenderProp(item);
|
108
113
|
}
|
109
114
|
|
@@ -220,20 +225,11 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
220
225
|
},
|
221
226
|
disabled: disabled,
|
222
227
|
onClose: menuVisibleAction.off,
|
223
|
-
// value={value}
|
224
|
-
// onChange={tryChangeValue}
|
225
|
-
// data={mergedData}
|
226
228
|
searchable: searchable,
|
227
|
-
onSearch: onSearch,
|
229
|
+
onSearch: funcUtils.callAllFuncs(onSearchProp, onSearch),
|
228
230
|
loading: loading,
|
229
231
|
footer: renderExtraFooter ? renderExtraFooter() : null,
|
230
|
-
trigger: /*#__PURE__*/React__default['default'].createElement(tagInput.TagInputMock
|
231
|
-
// onClick={openMenu}
|
232
|
-
// disabled={disabled}
|
233
|
-
, {
|
234
|
-
// ref={targetElementRef}
|
235
|
-
// onClick={openMenu}
|
236
|
-
// disabled={disabled}
|
232
|
+
trigger: /*#__PURE__*/React__default['default'].createElement(tagInput.TagInputMock, {
|
237
233
|
clearable: clearable,
|
238
234
|
placeholder: placeholder,
|
239
235
|
// @ts-ignore
|
@@ -244,7 +240,6 @@ var CheckSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
244
240
|
value: value,
|
245
241
|
onChange: tryChangeValue,
|
246
242
|
data: mergedData,
|
247
|
-
// @ts-ignore
|
248
243
|
invalid: invalid,
|
249
244
|
onExpand: function onExpand() {
|
250
245
|
// setViewSelected(true)
|
@@ -293,22 +288,22 @@ var CheckSelectOption = /*#__PURE__*/React.forwardRef(function (_a, ref) {
|
|
293
288
|
rest = tslib.__rest(_a, ["prefixCls", "className", "children", "option", "onClick", "titleRender", "depth"]);
|
294
289
|
|
295
290
|
var _useCheckSelectContex = context.useCheckSelectContext(),
|
296
|
-
|
291
|
+
isCheckedId = _useCheckSelectContex.isCheckedId,
|
297
292
|
onSelect = _useCheckSelectContex.onSelect;
|
298
293
|
|
299
294
|
var id = option.id,
|
300
295
|
_option$disabled = option.disabled,
|
301
296
|
disabled = _option$disabled === void 0 ? false : _option$disabled;
|
302
|
-
var
|
297
|
+
var checked = isCheckedId(id);
|
303
298
|
var eventNodeRef = useLatest.useLatestRef(Object.assign({}, option, {
|
304
299
|
disabled: disabled,
|
305
|
-
checked:
|
300
|
+
checked: checked
|
306
301
|
}));
|
307
|
-
var cls = classname.cx(prefixCls, className,
|
302
|
+
var cls = classname.cx(prefixCls, className, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled");
|
308
303
|
var handleOptionCheck = React.useCallback(function (evt) {
|
309
|
-
onSelect(option, !
|
304
|
+
onSelect(option, !checked);
|
310
305
|
onClick === null || onClick === void 0 ? void 0 : onClick(evt);
|
311
|
-
}, [onSelect, option,
|
306
|
+
}, [onSelect, option, checked, onClick]);
|
312
307
|
var renderTitle = React.useCallback(function (node, titleRender) {
|
313
308
|
// 如果 titleRender 返回 `true`,则使用默认 title
|
314
309
|
var title = titleRender ? titleRender(node) : true;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"CheckSelect.js","sources":["../../src/CheckSelect.tsx"],"sourcesContent":[null],"names":["_role","_prefix","getPrefixCls","CheckSelect","forwardRef","_a","ref","prefixCls","className","children","disabled","clearable","placeholder","displayRenderProp","displayRender","onSelectProp","onSelect","height","itemHeight","virtual","appearance","invalid","dataSource","filterOption","searchableProp","searchable","titleRender","renderExtraFooter","rest","useToggle","menuVisible","menuVisibleAction","useCallback","item","isFunction","title","useLatestCallback","value","shouldChecked","setSelectedItems","prev","_b","useCheckSelect","context","tryChangeValue","flattedData","_c","useAsyncSearch","loading","hasError","dataSourceStrategy","customSearchStrategy","useTreeCustomSearch","data","filterSearchStrategy","useFilterSearch","searchMode","undefined","useSearchMode","strategies","stateInSearch","state","
|
1
|
+
{"version":3,"file":"CheckSelect.js","sources":["../../src/CheckSelect.tsx"],"sourcesContent":[null],"names":["_role","_prefix","getPrefixCls","CheckSelect","forwardRef","_a","ref","prefixCls","className","children","disabled","clearable","placeholder","displayRenderProp","displayRender","onSelectProp","onSelect","height","itemHeight","virtual","appearance","invalid","dataSource","filterOption","searchableProp","searchable","titleRender","render","renderExtraFooter","onSearchProp","onSearch","rest","useToggle","menuVisible","menuVisibleAction","useCallback","item","isFunction","title","useLatestCallback","value","shouldChecked","setSelectedItems","prev","_b","useCheckSelect","context","tryChangeValue","flattedData","_c","useAsyncSearch","loading","hasError","dataSourceStrategy","customSearchStrategy","useTreeCustomSearch","data","filterSearchStrategy","useFilterSearch","searchMode","undefined","useSearchMode","strategies","stateInSearch","state","searchValue","keyword","proxyTitleRender","node","ret","highlight","React","Checkbox","checked","Highlighter","shouldUseSearch","selectProps","useState","selectedItems","mergedData","useMemo","nextData","concat","uniqBy","virtualData","reduce","acc","cur","index","push","id","groupTitle","rootProps","cls","cx","CheckSelectProvider","Picker","visible","onOpen","on","onClose","off","callAllFuncs","footer","trigger","TagInputMock","suffix","UpOutlined","DownOutlined","focused","onChange","onExpand","isArrayNonEmpty","VirtualList","itemKey","fullHeight","CheckSelectOptionGroup","label","CheckSelectOption","option","depth","HiName","__DEV__","displayName","optionPrefix","onClick","useCheckSelectContext","isCheckedId","eventNodeRef","useLatestRef","Object","assign","handleOptionCheck","evt","renderTitle","renderIndent","current","optionGroupPrefix","times","key","style","alignSelf"],"mappings":"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"}
|
@@ -59,6 +59,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
59
59
|
rest = tslib.__rest(_a, ["data", "children", "disabled", "value", "defaultValue", "onChange", "onSelect", "emptyContent", "searchPlaceholder", "filter", "fieldNames"]);
|
60
60
|
|
61
61
|
var data = React.useMemo(function () {
|
62
|
+
// @private
|
62
63
|
if (children) {
|
63
64
|
var dfs = function dfs(child) {
|
64
65
|
var arr = [];
|
@@ -122,6 +123,8 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
122
123
|
var flattedData = React.useMemo(function () {
|
123
124
|
// @ts-ignore
|
124
125
|
return treeUtils.flattenTree(data, function (node) {
|
126
|
+
var _a;
|
127
|
+
|
125
128
|
if ('groupId' in node.raw) {
|
126
129
|
// @ts-ignore
|
127
130
|
node.id = node.raw.groupId; // @ts-ignore
|
@@ -135,7 +138,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
135
138
|
|
136
139
|
node.title = getKeyFields(node.raw, 'title'); // @ts-ignore
|
137
140
|
|
138
|
-
node.disabled = getKeyFields(node.raw, 'disabled');
|
141
|
+
node.disabled = (_a = getKeyFields(node.raw, 'disabled')) !== null && _a !== void 0 ? _a : false;
|
139
142
|
}
|
140
143
|
|
141
144
|
return node;
|
@@ -147,10 +150,17 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
147
150
|
tryChangeValue = _useUncontrolledState[1];
|
148
151
|
|
149
152
|
var onSelectLatest = useLatest.useLatestCallback(onSelect);
|
153
|
+
var flattedDataRef = useLatest.useLatestRef(flattedData);
|
150
154
|
var proxyTryChangeValue = React.useCallback(function (value, item, shouldChecked) {
|
151
|
-
|
155
|
+
// 调用用户的select
|
156
|
+
var checkedItems = flattedDataRef.current.filter(function (item) {
|
157
|
+
return isCheckedId(item.id);
|
158
|
+
}).map(function (item) {
|
159
|
+
return item.raw;
|
160
|
+
});
|
161
|
+
tryChangeValue(value, [item], checkedItems);
|
152
162
|
onSelectLatest(value, item, shouldChecked);
|
153
|
-
}, [tryChangeValue, onSelectLatest]);
|
163
|
+
}, [tryChangeValue, onSelectLatest, flattedDataRef]);
|
154
164
|
|
155
165
|
var _useCheckDefault = useCheck.useCheck({
|
156
166
|
disabled: disabled,
|
@@ -159,7 +169,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
159
169
|
allowCheck: allowCheck
|
160
170
|
}),
|
161
171
|
onOptionCheck = _useCheckDefault[0],
|
162
|
-
|
172
|
+
isCheckedId = _useCheckDefault[1]; // const [inSearch, matchedItems, inputProps, isEmpty, resetSearch] = useSearch(data, filter)
|
163
173
|
// const getSearchInputProps = useCallback(
|
164
174
|
// () => ({
|
165
175
|
// placeholder: searchPlaceholder,
|
@@ -178,7 +188,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
178
188
|
value: value,
|
179
189
|
tryChangeValue: tryChangeValue,
|
180
190
|
onSelect: onOptionCheck,
|
181
|
-
|
191
|
+
isCheckedId: isCheckedId,
|
182
192
|
emptyContent: emptyContent // getSearchInputProps,
|
183
193
|
// isEmpty,
|
184
194
|
// resetSearch,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-check-select.js","sources":["../../src/use-check-select.ts"],"sourcesContent":[null],"names":["NOOP_ARRAY","NOOP_VALUE","DEFAULT_FIELD_NAMES","useCheckSelect","_a","data","dataProp","children","disabled","valueProp","value","defaultValue","onChangeProp","onChange","onSelect","emptyContent","fieldNames","rest","useMemo","dfs","child","arr","list","toArray","forEach","item","React","isValidElement","type","HiName","props","option","id","title","rootProps","push","groupId","label","optGroup","groupTitle","getKeyFields","useCallback","node","key","flattedData","flattenTree","raw","useUncontrolledState","tryChangeValue","onSelectLatest","useLatestCallback","proxyTryChangeValue","shouldChecked","useCheckDefault","checkedIds","onCheck","allowCheck","onOptionCheck"
|
1
|
+
{"version":3,"file":"use-check-select.js","sources":["../../src/use-check-select.ts"],"sourcesContent":[null],"names":["NOOP_ARRAY","NOOP_VALUE","DEFAULT_FIELD_NAMES","useCheckSelect","_a","data","dataProp","children","disabled","valueProp","value","defaultValue","onChangeProp","onChange","onSelect","emptyContent","fieldNames","rest","useMemo","dfs","child","arr","list","toArray","forEach","item","React","isValidElement","type","HiName","props","option","id","title","rootProps","push","groupId","label","optGroup","groupTitle","getKeyFields","useCallback","node","key","flattedData","flattenTree","raw","useUncontrolledState","tryChangeValue","onSelectLatest","useLatestCallback","flattedDataRef","useLatestRef","proxyTryChangeValue","shouldChecked","checkedItems","current","filter","isCheckedId","map","useCheckDefault","checkedIds","onCheck","allowCheck","onOptionCheck"],"mappings":"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"}
|
package/lib/esm/CheckSelect.js
CHANGED
@@ -24,6 +24,7 @@ import { uniqBy } from 'lodash';
|
|
24
24
|
import { Highlighter } from '@hi-ui/highlighter';
|
25
25
|
import { useToggle } from '@hi-ui/use-toggle';
|
26
26
|
import { times } from '@hi-ui/times';
|
27
|
+
import { callAllFuncs } from '@hi-ui/func-utils';
|
27
28
|
import { useAsyncSearch, useTreeCustomSearch, useFilterSearch, useSearchMode } from '@hi-ui/use-search-mode';
|
28
29
|
var _role = 'check-select';
|
29
30
|
|
@@ -46,7 +47,8 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
46
47
|
placeholder = _a$placeholder === void 0 ? '请选择' : _a$placeholder,
|
47
48
|
displayRenderProp = _a.displayRender,
|
48
49
|
onSelectProp = _a.onSelect,
|
49
|
-
height = _a.height,
|
50
|
+
_a$height = _a.height,
|
51
|
+
height = _a$height === void 0 ? 260 : _a$height,
|
50
52
|
_a$itemHeight = _a.itemHeight,
|
51
53
|
itemHeight = _a$itemHeight === void 0 ? 40 : _a$itemHeight,
|
52
54
|
_a$virtual = _a.virtual,
|
@@ -56,9 +58,10 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
56
58
|
dataSource = _a.dataSource,
|
57
59
|
filterOption = _a.filterOption,
|
58
60
|
searchableProp = _a.searchable,
|
59
|
-
titleRender = _a.
|
61
|
+
titleRender = _a.render,
|
60
62
|
renderExtraFooter = _a.renderExtraFooter,
|
61
|
-
|
63
|
+
onSearchProp = _a.onSearch,
|
64
|
+
rest = __rest(_a, ["prefixCls", "role", "className", "children", "disabled", "clearable", "wrap", "placeholder", "displayRender", "onSelect", "height", "itemHeight", "virtual", "onOpen", "onClose", "appearance", "invalid", "dataSource", "filterOption", "searchable", "render", "renderExtraFooter", "onSearch"]);
|
62
65
|
|
63
66
|
var _useToggle = useToggle(),
|
64
67
|
menuVisible = _useToggle[0],
|
@@ -66,6 +69,7 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
66
69
|
|
67
70
|
var displayRender = useCallback(function (item) {
|
68
71
|
if (isFunction(displayRenderProp)) {
|
72
|
+
// @ts-ignore
|
69
73
|
return displayRenderProp(item);
|
70
74
|
}
|
71
75
|
|
@@ -182,20 +186,11 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
182
186
|
},
|
183
187
|
disabled: disabled,
|
184
188
|
onClose: menuVisibleAction.off,
|
185
|
-
// value={value}
|
186
|
-
// onChange={tryChangeValue}
|
187
|
-
// data={mergedData}
|
188
189
|
searchable: searchable,
|
189
|
-
onSearch: onSearch,
|
190
|
+
onSearch: callAllFuncs(onSearchProp, onSearch),
|
190
191
|
loading: loading,
|
191
192
|
footer: renderExtraFooter ? renderExtraFooter() : null,
|
192
|
-
trigger: /*#__PURE__*/React.createElement(TagInputMock
|
193
|
-
// onClick={openMenu}
|
194
|
-
// disabled={disabled}
|
195
|
-
, {
|
196
|
-
// ref={targetElementRef}
|
197
|
-
// onClick={openMenu}
|
198
|
-
// disabled={disabled}
|
193
|
+
trigger: /*#__PURE__*/React.createElement(TagInputMock, {
|
199
194
|
clearable: clearable,
|
200
195
|
placeholder: placeholder,
|
201
196
|
// @ts-ignore
|
@@ -206,7 +201,6 @@ var CheckSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
206
201
|
value: value,
|
207
202
|
onChange: tryChangeValue,
|
208
203
|
data: mergedData,
|
209
|
-
// @ts-ignore
|
210
204
|
invalid: invalid,
|
211
205
|
onExpand: function onExpand() {
|
212
206
|
// setViewSelected(true)
|
@@ -255,22 +249,22 @@ var CheckSelectOption = /*#__PURE__*/forwardRef(function (_a, ref) {
|
|
255
249
|
rest = __rest(_a, ["prefixCls", "className", "children", "option", "onClick", "titleRender", "depth"]);
|
256
250
|
|
257
251
|
var _useCheckSelectContex = useCheckSelectContext(),
|
258
|
-
|
252
|
+
isCheckedId = _useCheckSelectContex.isCheckedId,
|
259
253
|
onSelect = _useCheckSelectContex.onSelect;
|
260
254
|
|
261
255
|
var id = option.id,
|
262
256
|
_option$disabled = option.disabled,
|
263
257
|
disabled = _option$disabled === void 0 ? false : _option$disabled;
|
264
|
-
var
|
258
|
+
var checked = isCheckedId(id);
|
265
259
|
var eventNodeRef = useLatestRef(Object.assign({}, option, {
|
266
260
|
disabled: disabled,
|
267
|
-
checked:
|
261
|
+
checked: checked
|
268
262
|
}));
|
269
|
-
var cls = cx(prefixCls, className,
|
263
|
+
var cls = cx(prefixCls, className, checked && prefixCls + "--checked", disabled && prefixCls + "--disabled");
|
270
264
|
var handleOptionCheck = useCallback(function (evt) {
|
271
|
-
onSelect(option, !
|
265
|
+
onSelect(option, !checked);
|
272
266
|
onClick === null || onClick === void 0 ? void 0 : onClick(evt);
|
273
|
-
}, [onSelect, option,
|
267
|
+
}, [onSelect, option, checked, onClick]);
|
274
268
|
var renderTitle = useCallback(function (node, titleRender) {
|
275
269
|
// 如果 titleRender 返回 `true`,则使用默认 title
|
276
270
|
var title = titleRender ? titleRender(node) : true;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"CheckSelect.js","sources":["../../src/CheckSelect.tsx"],"sourcesContent":[null],"names":["_role","_prefix","getPrefixCls","CheckSelect","forwardRef","_a","ref","prefixCls","className","children","disabled","clearable","placeholder","displayRenderProp","displayRender","onSelectProp","onSelect","height","itemHeight","virtual","appearance","invalid","dataSource","filterOption","searchableProp","searchable","titleRender","renderExtraFooter","rest","useToggle","menuVisible","menuVisibleAction","useCallback","item","isFunction","title","useLatestCallback","value","shouldChecked","setSelectedItems","prev","_b","useCheckSelect","context","tryChangeValue","flattedData","_c","useAsyncSearch","loading","hasError","dataSourceStrategy","customSearchStrategy","useTreeCustomSearch","data","filterSearchStrategy","useFilterSearch","searchMode","undefined","useSearchMode","strategies","stateInSearch","state","
|
1
|
+
{"version":3,"file":"CheckSelect.js","sources":["../../src/CheckSelect.tsx"],"sourcesContent":[null],"names":["_role","_prefix","getPrefixCls","CheckSelect","forwardRef","_a","ref","prefixCls","className","children","disabled","clearable","placeholder","displayRenderProp","displayRender","onSelectProp","onSelect","height","itemHeight","virtual","appearance","invalid","dataSource","filterOption","searchableProp","searchable","titleRender","render","renderExtraFooter","onSearchProp","onSearch","rest","useToggle","menuVisible","menuVisibleAction","useCallback","item","isFunction","title","useLatestCallback","value","shouldChecked","setSelectedItems","prev","_b","useCheckSelect","context","tryChangeValue","flattedData","_c","useAsyncSearch","loading","hasError","dataSourceStrategy","customSearchStrategy","useTreeCustomSearch","data","filterSearchStrategy","useFilterSearch","searchMode","undefined","useSearchMode","strategies","stateInSearch","state","searchValue","keyword","proxyTitleRender","node","ret","highlight","React","Checkbox","checked","Highlighter","shouldUseSearch","selectProps","useState","selectedItems","mergedData","useMemo","nextData","concat","uniqBy","virtualData","reduce","acc","cur","index","push","id","groupTitle","rootProps","cls","cx","CheckSelectProvider","Picker","visible","onOpen","on","onClose","off","callAllFuncs","footer","trigger","TagInputMock","suffix","UpOutlined","DownOutlined","focused","onChange","onExpand","isArrayNonEmpty","VirtualList","itemKey","fullHeight","CheckSelectOptionGroup","label","CheckSelectOption","option","depth","HiName","__DEV__","displayName","optionPrefix","onClick","useCheckSelectContext","isCheckedId","eventNodeRef","useLatestRef","Object","assign","handleOptionCheck","evt","renderTitle","renderIndent","current","optionGroupPrefix","times","key","style","alignSelf"],"mappings":"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"}
|
@@ -11,7 +11,7 @@ import { __rest } from 'tslib';
|
|
11
11
|
import React, { useMemo, useCallback } from 'react';
|
12
12
|
import { useUncontrolledState } from '@hi-ui/use-uncontrolled-state';
|
13
13
|
import { useCheck } from '@hi-ui/use-check';
|
14
|
-
import { useLatestCallback } from '@hi-ui/use-latest';
|
14
|
+
import { useLatestCallback, useLatestRef } from '@hi-ui/use-latest';
|
15
15
|
import { toArray } from '@hi-ui/use-children';
|
16
16
|
import { flattenTree } from '@hi-ui/tree-utils';
|
17
17
|
var NOOP_ARRAY = [];
|
@@ -36,6 +36,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
36
36
|
rest = __rest(_a, ["data", "children", "disabled", "value", "defaultValue", "onChange", "onSelect", "emptyContent", "searchPlaceholder", "filter", "fieldNames"]);
|
37
37
|
|
38
38
|
var data = useMemo(function () {
|
39
|
+
// @private
|
39
40
|
if (children) {
|
40
41
|
var dfs = function dfs(child) {
|
41
42
|
var arr = [];
|
@@ -99,6 +100,8 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
99
100
|
var flattedData = useMemo(function () {
|
100
101
|
// @ts-ignore
|
101
102
|
return flattenTree(data, function (node) {
|
103
|
+
var _a;
|
104
|
+
|
102
105
|
if ('groupId' in node.raw) {
|
103
106
|
// @ts-ignore
|
104
107
|
node.id = node.raw.groupId; // @ts-ignore
|
@@ -112,7 +115,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
112
115
|
|
113
116
|
node.title = getKeyFields(node.raw, 'title'); // @ts-ignore
|
114
117
|
|
115
|
-
node.disabled = getKeyFields(node.raw, 'disabled');
|
118
|
+
node.disabled = (_a = getKeyFields(node.raw, 'disabled')) !== null && _a !== void 0 ? _a : false;
|
116
119
|
}
|
117
120
|
|
118
121
|
return node;
|
@@ -124,10 +127,17 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
124
127
|
tryChangeValue = _useUncontrolledState[1];
|
125
128
|
|
126
129
|
var onSelectLatest = useLatestCallback(onSelect);
|
130
|
+
var flattedDataRef = useLatestRef(flattedData);
|
127
131
|
var proxyTryChangeValue = useCallback(function (value, item, shouldChecked) {
|
128
|
-
|
132
|
+
// 调用用户的select
|
133
|
+
var checkedItems = flattedDataRef.current.filter(function (item) {
|
134
|
+
return isCheckedId(item.id);
|
135
|
+
}).map(function (item) {
|
136
|
+
return item.raw;
|
137
|
+
});
|
138
|
+
tryChangeValue(value, [item], checkedItems);
|
129
139
|
onSelectLatest(value, item, shouldChecked);
|
130
|
-
}, [tryChangeValue, onSelectLatest]);
|
140
|
+
}, [tryChangeValue, onSelectLatest, flattedDataRef]);
|
131
141
|
|
132
142
|
var _useCheckDefault = useCheck({
|
133
143
|
disabled: disabled,
|
@@ -136,7 +146,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
136
146
|
allowCheck: allowCheck
|
137
147
|
}),
|
138
148
|
onOptionCheck = _useCheckDefault[0],
|
139
|
-
|
149
|
+
isCheckedId = _useCheckDefault[1]; // const [inSearch, matchedItems, inputProps, isEmpty, resetSearch] = useSearch(data, filter)
|
140
150
|
// const getSearchInputProps = useCallback(
|
141
151
|
// () => ({
|
142
152
|
// placeholder: searchPlaceholder,
|
@@ -155,7 +165,7 @@ var useCheckSelect = function useCheckSelect(_a) {
|
|
155
165
|
value: value,
|
156
166
|
tryChangeValue: tryChangeValue,
|
157
167
|
onSelect: onOptionCheck,
|
158
|
-
|
168
|
+
isCheckedId: isCheckedId,
|
159
169
|
emptyContent: emptyContent // getSearchInputProps,
|
160
170
|
// isEmpty,
|
161
171
|
// resetSearch,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"use-check-select.js","sources":["../../src/use-check-select.ts"],"sourcesContent":[null],"names":["NOOP_ARRAY","NOOP_VALUE","DEFAULT_FIELD_NAMES","useCheckSelect","_a","data","dataProp","children","disabled","valueProp","value","defaultValue","onChangeProp","onChange","onSelect","emptyContent","fieldNames","rest","useMemo","dfs","child","arr","list","toArray","forEach","item","React","isValidElement","type","HiName","props","option","id","title","rootProps","push","groupId","label","optGroup","groupTitle","getKeyFields","useCallback","node","key","flattedData","flattenTree","raw","useUncontrolledState","tryChangeValue","onSelectLatest","useLatestCallback","proxyTryChangeValue","shouldChecked","useCheckDefault","checkedIds","onCheck","allowCheck","onOptionCheck"
|
1
|
+
{"version":3,"file":"use-check-select.js","sources":["../../src/use-check-select.ts"],"sourcesContent":[null],"names":["NOOP_ARRAY","NOOP_VALUE","DEFAULT_FIELD_NAMES","useCheckSelect","_a","data","dataProp","children","disabled","valueProp","value","defaultValue","onChangeProp","onChange","onSelect","emptyContent","fieldNames","rest","useMemo","dfs","child","arr","list","toArray","forEach","item","React","isValidElement","type","HiName","props","option","id","title","rootProps","push","groupId","label","optGroup","groupTitle","getKeyFields","useCallback","node","key","flattedData","flattenTree","raw","useUncontrolledState","tryChangeValue","onSelectLatest","useLatestCallback","flattedDataRef","useLatestRef","proxyTryChangeValue","shouldChecked","checkedItems","current","filter","isCheckedId","map","useCheckDefault","checkedIds","onCheck","allowCheck","onOptionCheck"],"mappings":"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"}
|
@@ -1,7 +1,6 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import { UseCheckSelectProps } from './use-check-select';
|
3
|
-
import type { HiBaseHTMLProps } from '@hi-ui/core';
|
4
|
-
import { PopperProps } from '@hi-ui/popper';
|
3
|
+
import type { HiBaseAppearanceEnum, HiBaseHTMLProps } from '@hi-ui/core';
|
5
4
|
import { CheckSelectDataItem, CheckSelectEventData } from './types';
|
6
5
|
import { PickerProps } from '@hi-ui/picker';
|
7
6
|
import { UseDataSource } from '@hi-ui/use-data-source';
|
@@ -10,16 +9,14 @@ import { UseDataSource } from '@hi-ui/use-data-source';
|
|
10
9
|
*/
|
11
10
|
export declare const CheckSelect: React.ForwardRefExoticComponent<CheckSelectProps & React.RefAttributes<HTMLDivElement | null>>;
|
12
11
|
export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheckSelectProps {
|
13
|
-
/**
|
14
|
-
* 自定义控制 popper 行为
|
15
|
-
*/
|
16
|
-
popper?: PopperProps;
|
17
12
|
/**
|
18
13
|
* 设置虚拟滚动容器的可视高度
|
14
|
+
* @private
|
19
15
|
*/
|
20
16
|
height?: number;
|
21
17
|
/**
|
22
18
|
* 设置虚拟列表每项的固定高度
|
19
|
+
* @private
|
23
20
|
*/
|
24
21
|
itemHeight?: number;
|
25
22
|
/**
|
@@ -49,11 +46,11 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
|
|
49
46
|
/**
|
50
47
|
* 自定义渲染节点的 title 内容
|
51
48
|
*/
|
52
|
-
|
49
|
+
render?: (item: CheckSelectEventData) => React.ReactNode;
|
53
50
|
/**
|
54
51
|
* 自定义选择后触发器所展示的内容,只在 title 为字符串时有效
|
55
52
|
*/
|
56
|
-
displayRender?: (option:
|
53
|
+
displayRender?: (option: CheckSelectEventData) => React.ReactNode;
|
57
54
|
/**
|
58
55
|
* 触发器输入框占位符
|
59
56
|
*/
|
@@ -61,7 +58,7 @@ export interface CheckSelectProps extends Omit<PickerProps, 'trigger'>, UseCheck
|
|
61
58
|
/**
|
62
59
|
* 设置展现形式
|
63
60
|
*/
|
64
|
-
appearance?:
|
61
|
+
appearance?: HiBaseAppearanceEnum;
|
65
62
|
/**
|
66
63
|
* 节点搜索模式,仅在mode=normal模式下生效
|
67
64
|
*/
|
package/lib/types/context.d.ts
CHANGED
@@ -9,7 +9,7 @@ export declare const CheckSelectProvider: import("react").Provider<Omit<{
|
|
9
9
|
value: import("react").ReactText[];
|
10
10
|
tryChangeValue: (stateOrFunction: import("react").SetStateAction<import("react").ReactText[]>, ...args: any[]) => void;
|
11
11
|
onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
|
12
|
-
|
12
|
+
isCheckedId: (id: import("react").ReactText) => boolean;
|
13
13
|
emptyContent: boolean | import("react").ReactChild | import("react").ReactFragment | import("react").ReactPortal | null;
|
14
14
|
}, "rootProps"> | null>;
|
15
15
|
export declare const useCheckSelectContext: () => Omit<{
|
@@ -22,6 +22,6 @@ export declare const useCheckSelectContext: () => Omit<{
|
|
22
22
|
value: import("react").ReactText[];
|
23
23
|
tryChangeValue: (stateOrFunction: import("react").SetStateAction<import("react").ReactText[]>, ...args: any[]) => void;
|
24
24
|
onSelect: (targetItem: import("packages/hooks/use-check/lib/types").UseCheckItem, shouldChecked: boolean) => void;
|
25
|
-
|
25
|
+
isCheckedId: (id: import("react").ReactText) => boolean;
|
26
26
|
emptyContent: boolean | import("react").ReactChild | import("react").ReactFragment | import("react").ReactPortal | null;
|
27
27
|
}, "rootProps">;
|
@@ -16,7 +16,7 @@ export declare const useCheckSelect: ({ data: dataProp, children, disabled, valu
|
|
16
16
|
value: React.ReactText[];
|
17
17
|
tryChangeValue: (stateOrFunction: React.SetStateAction<React.ReactText[]>, ...args: any[]) => void;
|
18
18
|
onSelect: (targetItem: import("@hi-ui/use-check").UseCheckItem, shouldChecked: boolean) => void;
|
19
|
-
|
19
|
+
isCheckedId: (id: React.ReactText) => boolean;
|
20
20
|
emptyContent: boolean | React.ReactChild | React.ReactFragment | React.ReactPortal | null;
|
21
21
|
};
|
22
22
|
export interface UseCheckSelectProps {
|
@@ -30,8 +30,11 @@ export interface UseCheckSelectProps {
|
|
30
30
|
defaultValue?: React.ReactText[];
|
31
31
|
/**
|
32
32
|
* 选中值改变时的回调
|
33
|
+
* value: 所有选中项的 id 集合
|
34
|
+
* changedItems: 变更的选项集合
|
35
|
+
* checkedItems:所有选中项的选项集合
|
33
36
|
*/
|
34
|
-
onChange?: (value: React.ReactText[],
|
37
|
+
onChange?: (value: React.ReactText[], changedItems?: CheckSelectDataItem[], checkedItems?: CheckSelectDataItem[]) => void;
|
35
38
|
/**
|
36
39
|
* 选中值时回调
|
37
40
|
*/
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@hi-ui/check-select",
|
3
|
-
"version": "4.0.0-alpha.
|
3
|
+
"version": "4.0.0-alpha.29",
|
4
4
|
"description": "A sub-package for @hi-ui/hiui.",
|
5
5
|
"keywords": [],
|
6
6
|
"author": "HIUI <mi-hiui@xiaomi.com>",
|
@@ -43,38 +43,39 @@
|
|
43
43
|
"url": "https://github.com/XiaoMi/hiui/issues"
|
44
44
|
},
|
45
45
|
"dependencies": {
|
46
|
-
"@hi-ui/checkbox": "^4.0.0-alpha.
|
46
|
+
"@hi-ui/checkbox": "^4.0.0-alpha.29",
|
47
47
|
"@hi-ui/classname": "^4.0.0-alpha.3",
|
48
|
-
"@hi-ui/core": "^4.0.0-alpha.
|
49
|
-
"@hi-ui/core-css": "^4.0.0-alpha.
|
48
|
+
"@hi-ui/core": "^4.0.0-alpha.19",
|
49
|
+
"@hi-ui/core-css": "^4.0.0-alpha.13",
|
50
50
|
"@hi-ui/env": "^4.0.0-alpha.5",
|
51
|
-
"@hi-ui/
|
52
|
-
"@hi-ui/
|
53
|
-
"@hi-ui/
|
54
|
-
"@hi-ui/
|
55
|
-
"@hi-ui/
|
56
|
-
"@hi-ui/
|
51
|
+
"@hi-ui/func-utils": "^4.0.0-alpha.5",
|
52
|
+
"@hi-ui/highlighter": "^4.0.0-alpha.11",
|
53
|
+
"@hi-ui/icons": "^4.0.0-alpha.27",
|
54
|
+
"@hi-ui/input": "^4.0.0-alpha.31",
|
55
|
+
"@hi-ui/picker": "^4.0.0-alpha.15",
|
56
|
+
"@hi-ui/popper": "^4.0.0-alpha.23",
|
57
|
+
"@hi-ui/tag-input": "^4.0.0-alpha.22",
|
57
58
|
"@hi-ui/times": "^4.0.0-alpha.4",
|
58
|
-
"@hi-ui/tree-utils": "^4.0.0-alpha.
|
59
|
+
"@hi-ui/tree-utils": "^4.0.0-alpha.12",
|
59
60
|
"@hi-ui/type-assertion": "^4.0.0-alpha.13",
|
60
|
-
"@hi-ui/use-check": "^4.0.0-alpha.
|
61
|
-
"@hi-ui/use-children": "^4.0.0-alpha.
|
62
|
-
"@hi-ui/use-data-source": "^4.0.0-alpha.
|
63
|
-
"@hi-ui/use-latest": "^4.0.0-alpha.
|
64
|
-
"@hi-ui/use-search-mode": "^4.0.0-alpha.
|
65
|
-
"@hi-ui/use-toggle": "^4.0.0-alpha.
|
66
|
-
"@hi-ui/use-uncontrolled-state": "^4.0.0-alpha.
|
61
|
+
"@hi-ui/use-check": "^4.0.0-alpha.19",
|
62
|
+
"@hi-ui/use-children": "^4.0.0-alpha.4",
|
63
|
+
"@hi-ui/use-data-source": "^4.0.0-alpha.7",
|
64
|
+
"@hi-ui/use-latest": "^4.0.0-alpha.5",
|
65
|
+
"@hi-ui/use-search-mode": "^4.0.0-alpha.12",
|
66
|
+
"@hi-ui/use-toggle": "^4.0.0-alpha.11",
|
67
|
+
"@hi-ui/use-uncontrolled-state": "^4.0.0-alpha.13",
|
67
68
|
"lodash": "^4.17.21",
|
68
69
|
"rc-virtual-list": "^3.4.1"
|
69
70
|
},
|
70
71
|
"peerDependencies": {
|
71
|
-
"react": "
|
72
|
-
"react-dom": "
|
72
|
+
"react": ">=16.8.6",
|
73
|
+
"react-dom": ">=16.8.6"
|
73
74
|
},
|
74
75
|
"devDependencies": {
|
75
76
|
"@hi-ui/hi-build": "^4.0.0-alpha.4",
|
76
77
|
"react": "^17.0.1",
|
77
78
|
"react-dom": "^17.0.1"
|
78
79
|
},
|
79
|
-
"gitHead": "
|
80
|
+
"gitHead": "0cb16ec0a4791192b3e5eee1a320a83f5db7459b"
|
80
81
|
}
|