@hi-ui/check-cascader 4.0.0-beta.26 → 4.0.0-beta.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.
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- export interface CheckCascaderItem {
2
+ export interface CheckCascaderDataItem {
3
3
  /**
4
4
  * 树节点唯一 id
5
5
  */
@@ -11,7 +11,7 @@ export interface CheckCascaderItem {
11
11
  /**
12
12
  * 该节点的子节点列表
13
13
  */
14
- children?: CheckCascaderItem[];
14
+ children?: CheckCascaderDataItem[];
15
15
  /**
16
16
  * 是否为叶子节点
17
17
  */
@@ -29,22 +29,22 @@ export interface CheckCascaderItem {
29
29
  */
30
30
  disabledCheckbox?: boolean;
31
31
  }
32
- export interface FlattedCheckCascaderItemWithChildren extends FlattedCheckCascaderItem {
33
- children: FlattedCheckCascaderItem[];
32
+ export interface FlattedCheckCascaderDataItemWithChildren extends FlattedCheckCascaderDataItem {
33
+ children: FlattedCheckCascaderDataItem[];
34
34
  }
35
- export interface FlattedCheckCascaderItem extends Required<Omit<CheckCascaderItem, 'children'>> {
35
+ export interface FlattedCheckCascaderDataItem extends Required<Omit<CheckCascaderDataItem, 'children'>> {
36
36
  /**
37
37
  * 该节点的子节点列表
38
38
  */
39
- children?: FlattedCheckCascaderItem[];
39
+ children?: FlattedCheckCascaderDataItem[];
40
40
  /**
41
41
  * 该节点的所有祖先节点列表
42
42
  */
43
- ancestors?: FlattedCheckCascaderItemWithChildren[];
43
+ ancestors?: FlattedCheckCascaderDataItemWithChildren[];
44
44
  /**
45
45
  * 关联用户传入的原始节点
46
46
  */
47
- raw: CheckCascaderItem;
47
+ raw: CheckCascaderDataItem;
48
48
  /**
49
49
  * 该节点的层级,从 0(顶层)开始
50
50
  */
@@ -52,16 +52,15 @@ export interface FlattedCheckCascaderItem extends Required<Omit<CheckCascaderIte
52
52
  /**
53
53
  * 该节点的父节点
54
54
  */
55
- parent: FlattedCheckCascaderItemWithChildren;
55
+ parent: FlattedCheckCascaderDataItemWithChildren;
56
56
  }
57
- export interface CheckCascaderItemRequiredProps {
57
+ export interface CheckCascaderDataItemRequiredProps {
58
58
  selected: boolean;
59
59
  checked: boolean;
60
60
  semiChecked: boolean;
61
61
  loading: boolean;
62
- focused: boolean;
63
62
  }
64
- export interface CheckCascaderItemEventData extends FlattedCheckCascaderItem, CheckCascaderItemRequiredProps {
63
+ export interface CheckCascaderDataItemEventData extends FlattedCheckCascaderDataItem, CheckCascaderDataItemRequiredProps {
65
64
  }
66
65
  export declare type ExpandTrigger = 'click' | 'hover';
67
66
  export interface NodeRoot<T> {
@@ -1,19 +1,26 @@
1
1
  import React from 'react';
2
- import { CheckCascaderItemRequiredProps, CheckCascaderItemEventData, CheckCascaderItem, FlattedCheckCascaderItem } from '../types';
2
+ import { HiBaseFieldNames } from '@hi-ui/core';
3
+ import { CheckCascaderDataItemRequiredProps, CheckCascaderDataItemEventData, CheckCascaderDataItem, FlattedCheckCascaderDataItem } from '../types';
3
4
  /**
4
5
  * 扁平化树数据结构,基于前序遍历
5
6
  *
6
7
  * @param treeData
7
8
  * @returns
8
9
  */
9
- export declare const flattenTreeData: (treeData: CheckCascaderItem[]) => FlattedCheckCascaderItem[];
10
+ export declare const flattenTreeData: (treeData: CheckCascaderDataItem[], fieldNames?: HiBaseFieldNames | undefined) => FlattedCheckCascaderDataItem[];
11
+ export declare const getActiveMenus: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText | undefined) => FlattedCheckCascaderDataItem[][];
12
+ export declare const getFlattedMenus: (data: FlattedCheckCascaderDataItem[]) => FlattedCheckCascaderDataItem[][];
13
+ export declare const getActiveMenuIds: (data: FlattedCheckCascaderDataItem[], selectedIds?: React.ReactText | undefined) => React.ReactText[];
14
+ export declare function getCascaderItemEventData(node: FlattedCheckCascaderDataItem, requiredProps: CheckCascaderDataItemRequiredProps): CheckCascaderDataItemEventData;
10
15
  /**
11
- * 获取祖先节点,包括自己
12
- * @param node
13
- * @returns
16
+ * 处理选中的回显数据
17
+ *
18
+ * @param checkedIds 当前所有被选中的节点 ID 集合
19
+ * @param nodeEntries 所有数据的Map 集合
20
+ * @param type 数据回显方式
21
+ */
22
+ export declare const processCheckedIds: (type: string, checkedIds: React.ReactText[], flattenData: any, allowCheck: (node: any) => boolean) => React.ReactText[];
23
+ /**
24
+ * 根据传入的 checkedIds 解析全选/半选数据
14
25
  */
15
- export declare const getNodeAncestors: (node: FlattedCheckCascaderItem) => FlattedCheckCascaderItem[];
16
- export declare const getActiveMenus: (data: FlattedCheckCascaderItem[], selectedIds?: React.ReactText | undefined) => FlattedCheckCascaderItem[][];
17
- export declare const getFlattedMenus: (data: FlattedCheckCascaderItem[]) => FlattedCheckCascaderItem[][];
18
- export declare const getActiveMenuIds: (data: FlattedCheckCascaderItem[], selectedIds?: React.ReactText | undefined) => React.ReactText[];
19
- export declare function getCascaderItemEventData(node: FlattedCheckCascaderItem, requiredProps: CheckCascaderItemRequiredProps): CheckCascaderItemEventData;
26
+ export declare const parseCheckDataDirty: (type: string, checkedIds: React.ReactText[], flattenData: any, allowCheck?: ((node: any) => boolean) | undefined) => React.ReactText[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hi-ui/check-cascader",
3
- "version": "4.0.0-beta.26",
3
+ "version": "4.0.0-beta.29",
4
4
  "description": "A sub-package for @hi-ui/hiui.",
5
5
  "keywords": [],
6
6
  "author": "HIUI <mi-hiui@xiaomi.com>",
@@ -45,18 +45,19 @@
45
45
  },
46
46
  "dependencies": {
47
47
  "@hi-ui/array-utils": "^4.0.0-beta.7",
48
- "@hi-ui/checkbox": "^4.0.0-beta.9",
48
+ "@hi-ui/checkbox": "^4.0.0-beta.10",
49
49
  "@hi-ui/classname": "^4.0.0-beta.0",
50
+ "@hi-ui/core": "^4.0.0-beta.8",
50
51
  "@hi-ui/core-css": "^4.0.0-beta.5",
51
52
  "@hi-ui/env": "^4.0.0-beta.0",
52
- "@hi-ui/func-utils": "^4.0.0-beta.10",
53
+ "@hi-ui/func-utils": "^4.0.0-beta.11",
53
54
  "@hi-ui/icons": "^4.0.0-beta.10",
54
55
  "@hi-ui/input": "^4.0.0-beta.13",
55
- "@hi-ui/locale-context": "^4.0.0-beta.16",
56
- "@hi-ui/picker": "^4.0.0-beta.21",
56
+ "@hi-ui/locale-context": "^4.0.0-beta.17",
57
+ "@hi-ui/picker": "^4.0.0-beta.22",
57
58
  "@hi-ui/popper": "^4.0.0-beta.12",
58
59
  "@hi-ui/spinner": "^4.0.0-beta.8",
59
- "@hi-ui/tag-input": "^4.0.0-beta.16",
60
+ "@hi-ui/tag-input": "^4.0.0-beta.17",
60
61
  "@hi-ui/times": "^4.0.0-beta.5",
61
62
  "@hi-ui/tree-utils": "^4.0.0-beta.4",
62
63
  "@hi-ui/type-assertion": "^4.0.0-beta.4",
@@ -65,7 +66,7 @@
65
66
  "@hi-ui/use-latest": "^4.0.0-beta.4",
66
67
  "@hi-ui/use-merge-refs": "^4.0.0-beta.4",
67
68
  "@hi-ui/use-outside-click": "^4.0.0-beta.4",
68
- "@hi-ui/use-search-mode": "^4.0.0-beta.15",
69
+ "@hi-ui/use-search-mode": "^4.0.0-beta.17",
69
70
  "@hi-ui/use-toggle": "^4.0.0-beta.4",
70
71
  "@hi-ui/use-uncontrolled-state": "^4.0.0-beta.4"
71
72
  },
@@ -78,5 +79,5 @@
78
79
  "react": "^17.0.1",
79
80
  "react-dom": "^17.0.1"
80
81
  },
81
- "gitHead": "53ae46d5c39ae7c8ed67049ca2ecbc156c891aef"
82
+ "gitHead": "798e91b8086b524e9ef1df8fef404bbf284198f5"
82
83
  }
@@ -1,39 +0,0 @@
1
- /** @LICENSE
2
- * @hi-ui/check-cascader
3
- * https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-cascader#readme
4
- *
5
- * Copyright (c) HIUI <mi-hiui@xiaomi.com>.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */
10
- 'use strict';
11
-
12
- Object.defineProperty(exports, '__esModule', {
13
- value: true
14
- });
15
-
16
- require('react');
17
-
18
- require('@hi-ui/use-latest');
19
-
20
- var env = require('@hi-ui/env');
21
- /**
22
- * 返回 -1 表示匹配失败
23
- */
24
-
25
-
26
- var matchStrategy = function matchStrategy(content, keyword) {
27
- if (typeof content !== 'string') {
28
- if (env.__DEV__) {
29
- console.warn('Warning: must be string type when enable searchable.');
30
- }
31
-
32
- return -1;
33
- } // 忽略大小写匹配
34
-
35
-
36
- return content.toLowerCase().indexOf(keyword.toLowerCase());
37
- };
38
-
39
- exports.matchStrategy = matchStrategy;
@@ -1,30 +0,0 @@
1
- /** @LICENSE
2
- * @hi-ui/check-cascader
3
- * https://github.com/XiaoMi/hiui/tree/master/packages/ui/check-cascader#readme
4
- *
5
- * Copyright (c) HIUI <mi-hiui@xiaomi.com>.
6
- *
7
- * This source code is licensed under the MIT license found in the
8
- * LICENSE file in the root directory of this source tree.
9
- */
10
- import 'react';
11
- import '@hi-ui/use-latest';
12
- import { __DEV__ } from '@hi-ui/env';
13
- /**
14
- * 返回 -1 表示匹配失败
15
- */
16
-
17
- var matchStrategy = function matchStrategy(content, keyword) {
18
- if (typeof content !== 'string') {
19
- if (__DEV__) {
20
- console.warn('Warning: must be string type when enable searchable.');
21
- }
22
-
23
- return -1;
24
- } // 忽略大小写匹配
25
-
26
-
27
- return content.toLowerCase().indexOf(keyword.toLowerCase());
28
- };
29
-
30
- export { matchStrategy };
@@ -1,8 +0,0 @@
1
- /// <reference types="react" />
2
- /**
3
- * 一个缓存数据的 hook
4
- *
5
- * @param data
6
- * @returns
7
- */
8
- export declare const useCache: <T>(data: T) => readonly [T, import("react").Dispatch<import("react").SetStateAction<T>>];
@@ -1,13 +0,0 @@
1
- import React from 'react';
2
- import { FlattedCheckCascaderItem } from '../types';
3
- /**
4
- * 支持搜索功能的 hook
5
- */
6
- export declare const useSearch: (flattedData: FlattedCheckCascaderItem[], upMatch: boolean) => readonly [boolean, FlattedCheckCascaderItem[], {
7
- value: string;
8
- onChange: (evt: React.ChangeEvent<HTMLInputElement>) => void;
9
- }, boolean];
10
- /**
11
- * 返回 -1 表示匹配失败
12
- */
13
- export declare const matchStrategy: (content: unknown, keyword: string) => number;