@hi-ui/check-tree-select 4.7.5 → 4.7.6

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 CHANGED
@@ -1,5 +1,14 @@
1
1
  # @hi-ui/check-tree-select
2
2
 
3
+ ## 4.7.6
4
+
5
+ ### Patch Changes
6
+
7
+ - [#3409](https://github.com/XiaoMi/hiui/pull/3409) [`467701f`](https://github.com/XiaoMi/hiui/commit/467701f925d0bb0709e3fd17ca6e178fa1ca01c6) Thanks [@zyprepare](https://github.com/zyprepare)! - refactor(check-tree-select): 搜索和全选勾选逻辑调整,过滤后的结果勾选态还是按照全量数据进行计算,全选态根据过滤后的数据进行计算 (#3398)
8
+
9
+ - Updated dependencies [[`b2de718e9`](https://github.com/XiaoMi/hiui/commit/b2de718e9fd12dbe8fa1d762c6924696c19bc924)]:
10
+ - @hi-ui/core@4.0.11
11
+
3
12
  ## 4.7.5
4
13
 
5
14
  ### Patch Changes
@@ -192,11 +192,7 @@ var CheckTreeSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
192
192
  searchMode = _useSearchMode.searchMode,
193
193
  onSearch = _useSearchMode.onSearch,
194
194
  searchValue = _useSearchMode.keyword;
195
- var dataMemo = React.useMemo(function () {
196
- var flattedStateData = flatData(stateInSearch.data);
197
- return typeAssertion.isArrayNonEmpty(flattedStateData) ? flattedStateData : flattedData;
198
- }, [flatData, stateInSearch.data, flattedData]);
199
- var _useCheck = useCheck.useCheck(checkedMode, disabled, dataMemo, defaultValue, valueProp, onChange),
195
+ var _useCheck = useCheck.useCheck(checkedMode, disabled, flattedData, defaultValue, valueProp, onChange),
200
196
  value = _useCheck[0],
201
197
  tryChangeValue = _useCheck[1],
202
198
  onNodeCheck = _useCheck[2],
@@ -249,13 +245,14 @@ var CheckTreeSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
249
245
  return arrayUtils.uniqBy(nextData, 'id');
250
246
  }, [checkedNodes, flattedData]);
251
247
  var toggleCheckAll = React.useCallback(function () {
252
- var _getAllCheckedStatus = index.getAllCheckedStatus(dataMemo, parsedCheckedIds),
248
+ var flattedData = flatData(showData);
249
+ var _getAllCheckedStatus = index.getAllCheckedStatus(flattedData, parsedCheckedIds),
253
250
  currentAllChecked = _getAllCheckedStatus[0],
254
251
  hasCheckedAll = _getAllCheckedStatus[2];
255
252
  var shouldChecked = !currentAllChecked;
256
253
  // 全选操作
257
254
  if (!currentAllChecked && !hasCheckedAll) {
258
- tryChangeValue(dataMemo.filter(function (item) {
255
+ tryChangeValue(flattedData.filter(function (item) {
259
256
  if (!item.disabled) {
260
257
  // 根据 checkedMode 类型过滤出已选项,保证全选操作下 onChange 回调的值是符合 checkedMode 的规则
261
258
  if (checkedMode === 'CHILD') {
@@ -274,10 +271,11 @@ var CheckTreeSelect = /*#__PURE__*/React.forwardRef(function (_a, ref) {
274
271
  } else {
275
272
  tryChangeValue([], null, shouldChecked, []);
276
273
  }
277
- }, [checkedMode, dataMemo, parsedCheckedIds, tryChangeValue]);
274
+ }, [checkedMode, flatData, parsedCheckedIds, showData, tryChangeValue]);
278
275
  var _useMemo = React.useMemo(function () {
279
- return index.getAllCheckedStatus(dataMemo, parsedCheckedIds);
280
- }, [dataMemo, parsedCheckedIds]),
276
+ var flattedData = flatData(showData);
277
+ return index.getAllCheckedStatus(flattedData, parsedCheckedIds);
278
+ }, [flatData, parsedCheckedIds, showData]),
281
279
  showAllChecked = _useMemo[0],
282
280
  showIndeterminate = _useMemo[1];
283
281
  var renderDefaultFooter = function renderDefaultFooter() {
@@ -179,11 +179,7 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
179
179
  searchMode = _useSearchMode.searchMode,
180
180
  onSearch = _useSearchMode.onSearch,
181
181
  searchValue = _useSearchMode.keyword;
182
- var dataMemo = useMemo(function () {
183
- var flattedStateData = flatData(stateInSearch.data);
184
- return isArrayNonEmpty(flattedStateData) ? flattedStateData : flattedData;
185
- }, [flatData, stateInSearch.data, flattedData]);
186
- var _useCheck = useCheck(checkedMode, disabled, dataMemo, defaultValue, valueProp, onChange),
182
+ var _useCheck = useCheck(checkedMode, disabled, flattedData, defaultValue, valueProp, onChange),
187
183
  value = _useCheck[0],
188
184
  tryChangeValue = _useCheck[1],
189
185
  onNodeCheck = _useCheck[2],
@@ -236,13 +232,14 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
236
232
  return uniqBy(nextData, 'id');
237
233
  }, [checkedNodes, flattedData]);
238
234
  var toggleCheckAll = useCallback(function () {
239
- var _getAllCheckedStatus = getAllCheckedStatus(dataMemo, parsedCheckedIds),
235
+ var flattedData = flatData(showData);
236
+ var _getAllCheckedStatus = getAllCheckedStatus(flattedData, parsedCheckedIds),
240
237
  currentAllChecked = _getAllCheckedStatus[0],
241
238
  hasCheckedAll = _getAllCheckedStatus[2];
242
239
  var shouldChecked = !currentAllChecked;
243
240
  // 全选操作
244
241
  if (!currentAllChecked && !hasCheckedAll) {
245
- tryChangeValue(dataMemo.filter(function (item) {
242
+ tryChangeValue(flattedData.filter(function (item) {
246
243
  if (!item.disabled) {
247
244
  // 根据 checkedMode 类型过滤出已选项,保证全选操作下 onChange 回调的值是符合 checkedMode 的规则
248
245
  if (checkedMode === 'CHILD') {
@@ -261,10 +258,11 @@ var CheckTreeSelect = /*#__PURE__*/forwardRef(function (_a, ref) {
261
258
  } else {
262
259
  tryChangeValue([], null, shouldChecked, []);
263
260
  }
264
- }, [checkedMode, dataMemo, parsedCheckedIds, tryChangeValue]);
261
+ }, [checkedMode, flatData, parsedCheckedIds, showData, tryChangeValue]);
265
262
  var _useMemo = useMemo(function () {
266
- return getAllCheckedStatus(dataMemo, parsedCheckedIds);
267
- }, [dataMemo, parsedCheckedIds]),
263
+ var flattedData = flatData(showData);
264
+ return getAllCheckedStatus(flattedData, parsedCheckedIds);
265
+ }, [flatData, parsedCheckedIds, showData]),
268
266
  showAllChecked = _useMemo[0],
269
267
  showIndeterminate = _useMemo[1];
270
268
  var renderDefaultFooter = function renderDefaultFooter() {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hi-ui/check-tree-select",
3
- "version": "4.7.5",
3
+ "version": "4.7.6",
4
4
  "description": "A sub-package for @hi-ui/hiui.",
5
5
  "keywords": [],
6
6
  "author": "HiUI <mi-hiui@xiaomi.com>",
@@ -63,12 +63,12 @@
63
63
  "@hi-ui/use-uncontrolled-state": "^4.0.4"
64
64
  },
65
65
  "peerDependencies": {
66
- "@hi-ui/core": ">=4.0.8",
66
+ "@hi-ui/core": ">=4.0.11",
67
67
  "react": ">=16.8.6",
68
68
  "react-dom": ">=16.8.6"
69
69
  },
70
70
  "devDependencies": {
71
- "@hi-ui/core": "^4.0.8",
71
+ "@hi-ui/core": "^4.0.11",
72
72
  "@hi-ui/core-css": "^4.1.5",
73
73
  "react": "^17.0.1",
74
74
  "react-dom": "^17.0.1"