@qsxy/element-plus-react 1.0.0-next.5 → 1.0.0-next.8
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/dist/Avatar/Avatar.d.ts +4 -0
- package/dist/Avatar/Avatar.js +86 -0
- package/dist/Avatar/index.d.ts +2 -0
- package/dist/{VirtualList → Avatar}/index.js +7 -7
- package/dist/Avatar/typings.d.ts +21 -0
- package/dist/{VirtualList/interface.js → Avatar/typings.js} +3 -3
- package/dist/Cascader/Cascader.js +147 -182
- package/dist/Cascader/CascaderContext.d.ts +4 -10
- package/dist/Cascader/CascaderContext.js +2 -6
- package/dist/Cascader/CascaderDropdown.js +1 -1
- package/dist/Cascader/CascaderMenu.d.ts +0 -7
- package/dist/Cascader/CascaderMenu.js +4 -77
- package/dist/Cascader/Utils.d.ts +0 -2
- package/dist/Cascader/Utils.js +0 -44
- package/dist/Cascader/index.d.ts +1 -1
- package/dist/Cascader/typings.d.ts +2 -18
- package/dist/Cascader/useCascader.d.ts +1 -15
- package/dist/Cascader/useCascader.js +14 -41
- package/dist/DatePicker/DatePicker.js +5 -5
- package/dist/Empty/ImgEmpty.js +1 -1
- package/dist/Loading/Loading.js +14 -4
- package/dist/Tree/DirectoryTree.d.ts +6 -13
- package/dist/Tree/DirectoryTree.js +32 -81
- package/dist/Tree/DropIndicator.d.ts +4 -2
- package/dist/Tree/DropIndicator.js +7 -2
- package/dist/Tree/Indent.d.ts +2 -2
- package/dist/Tree/Indent.js +4 -4
- package/dist/Tree/MotionTreeNode.d.ts +4 -5
- package/dist/Tree/MotionTreeNode.js +69 -52
- package/dist/Tree/NodeList.d.ts +15 -11
- package/dist/Tree/NodeList.js +38 -29
- package/dist/Tree/RCTree.d.ts +77 -75
- package/dist/Tree/RCTree.js +199 -188
- package/dist/Tree/Tree.d.ts +3 -3
- package/dist/Tree/Tree.js +27 -27
- package/dist/Tree/TreeNode.d.ts +5 -90
- package/dist/Tree/TreeNode.js +320 -422
- package/dist/Tree/contextTypes.d.ts +36 -30
- package/dist/Tree/contextTypes.js +17 -4
- package/dist/Tree/index.d.ts +2 -2
- package/dist/Tree/typings.d.ts +60 -19
- package/dist/Tree/typings.js +1 -13
- package/dist/Tree/typings.tsx--bak +245 -0
- package/dist/Tree/useUnmount.d.ts +5 -0
- package/dist/{VirtualList/hooks/useChildren.js → Tree/useUnmount.js} +24 -16
- package/dist/Tree/util.d.ts +17 -21
- package/dist/Tree/util.js +21 -52
- package/dist/Tree/utils/conductUtil.d.ts +2 -2
- package/dist/Tree/utils/conductUtil.js +14 -3
- package/dist/Tree/utils/dictUtil.d.ts +7 -3
- package/dist/Tree/utils/dictUtil.js +49 -32
- package/dist/Tree/utils/diffUtil.d.ts +4 -3
- package/dist/Tree/utils/keyUtil.d.ts +2 -0
- package/dist/{VirtualList/utils/isFirefox.js → Tree/utils/keyUtil.js} +8 -7
- package/dist/Tree/utils/motion.js +6 -5
- package/dist/Tree/utils/treeUtil.d.ts +16 -18
- package/dist/Tree/utils/treeUtil.js +35 -14
- package/dist/TreeSelect/Utils.d.ts +1 -1
- package/dist/Util/base.d.ts +1 -1
- package/dist/Util/base.js +14 -2
- package/dist/hooks/useClassNames.d.ts +1 -0
- package/dist/hooks/useClassNames.js +11 -1
- package/dist/index.css +58 -6
- package/dist/index.d.ts +5 -5
- package/dist/index.js +3 -5
- package/dist/theme-chalk/avatar/index.scss +50 -0
- package/dist/theme-chalk/calendar/month-table.scss +1 -1
- package/dist/theme-chalk/index.scss +1 -0
- package/dist/theme-chalk/input/input.scss +5 -3
- package/dist/theme-chalk/loading/index.scss +5 -7
- package/package.json +2 -1
- package/dist/Tree/utils/KeyCode.d.ts +0 -436
- package/dist/Tree/utils/KeyCode.js +0 -550
- package/dist/VirtualList/Filler.d.ts +0 -16
- package/dist/VirtualList/Filler.js +0 -78
- package/dist/VirtualList/Item.d.ts +0 -7
- package/dist/VirtualList/Item.js +0 -37
- package/dist/VirtualList/ScrollBar.d.ts +0 -43
- package/dist/VirtualList/ScrollBar.js +0 -216
- package/dist/VirtualList/VirtualList.d.ts +0 -36
- package/dist/VirtualList/VirtualList.js +0 -280
- package/dist/VirtualList/hooks/useChildren.d.ts +0 -3
- package/dist/VirtualList/hooks/useDiffItem.d.ts +0 -2
- package/dist/VirtualList/hooks/useDiffItem.js +0 -39
- package/dist/VirtualList/hooks/useFrameWheel.d.ts +0 -6
- package/dist/VirtualList/hooks/useFrameWheel.js +0 -72
- package/dist/VirtualList/hooks/useHeights.d.ts +0 -3
- package/dist/VirtualList/hooks/useHeights.js +0 -83
- package/dist/VirtualList/hooks/useLayoutEffect.d.ts +0 -6
- package/dist/VirtualList/hooks/useLayoutEffect.js +0 -30
- package/dist/VirtualList/hooks/useMobileTouchMove.d.ts +0 -2
- package/dist/VirtualList/hooks/useMobileTouchMove.js +0 -92
- package/dist/VirtualList/hooks/useOriginScroll.d.ts +0 -2
- package/dist/VirtualList/hooks/useOriginScroll.js +0 -56
- package/dist/VirtualList/hooks/useScrollTo.d.ts +0 -5
- package/dist/VirtualList/hooks/useScrollTo.js +0 -111
- package/dist/VirtualList/index.d.ts +0 -2
- package/dist/VirtualList/interface.d.ts +0 -8
- package/dist/VirtualList/mock.d.ts +0 -6
- package/dist/VirtualList/mock.js +0 -29
- package/dist/VirtualList/utils/CacheMap.d.ts +0 -7
- package/dist/VirtualList/utils/CacheMap.js +0 -36
- package/dist/VirtualList/utils/algorithmUtil.d.ts +0 -23
- package/dist/VirtualList/utils/algorithmUtil.js +0 -81
- package/dist/VirtualList/utils/findDOMNode.d.ts +0 -5
- package/dist/VirtualList/utils/findDOMNode.js +0 -30
- package/dist/VirtualList/utils/isFirefox.d.ts +0 -2
- package/dist/VirtualList/utils/raf.d.ts +0 -5
- package/dist/VirtualList/utils/raf.js +0 -57
- package/dist/theme-chalk/bak/common/popup.scss +0 -47
- package/dist/theme-chalk/bak/common/transition.scss +0 -118
- package/dist/theme-chalk/bak/common/var.scss +0 -1476
- package/dist/theme-chalk/bak/mixins/_button.scss +0 -224
- package/dist/theme-chalk/bak/mixins/_col.scss +0 -38
- package/dist/theme-chalk/bak/mixins/_var.scss +0 -55
- package/dist/theme-chalk/bak/mixins/config.scss +0 -5
- package/dist/theme-chalk/bak/mixins/function.scss +0 -85
- package/dist/theme-chalk/bak/mixins/mixins.scss +0 -215
- package/dist/theme-chalk/bak/mixins/utils.scss +0 -39
|
@@ -33,82 +33,20 @@ __export(CascaderMenu_exports, {
|
|
|
33
33
|
});
|
|
34
34
|
module.exports = __toCommonJS(CascaderMenu_exports);
|
|
35
35
|
var import_classnames = __toESM(require("classnames"));
|
|
36
|
-
var import_flattenDeep = __toESM(require("lodash/flattenDeep"));
|
|
37
36
|
var import_react = __toESM(require("react"));
|
|
38
37
|
var import_scroll_into_view_if_needed = __toESM(require("scroll-into-view-if-needed"));
|
|
39
38
|
var import_Checkbox = require("../Checkbox");
|
|
40
39
|
var import_Icon = require("../Icon");
|
|
41
40
|
var import_Scrollbar = require("../Scrollbar");
|
|
42
|
-
var import_Util = require("../Util");
|
|
43
41
|
var import_hooks = require("../hooks");
|
|
44
42
|
var import_CascaderContext = require("./CascaderContext");
|
|
45
43
|
var CascaderMenu = (0, import_react.memo)(
|
|
46
44
|
(0, import_react.forwardRef)((props, ref) => {
|
|
47
45
|
const { data = [], level, value } = props;
|
|
48
|
-
const { menuProps,
|
|
49
|
-
const { valueKey = "value", labelKey = "label", disabledKey = "disabled", multiple } = menuProps;
|
|
50
|
-
const { valueKey: treeValueKey = "key", labelKey: treeLabelKey = "title", childrenKey: treeChildrenKey } = treeMenuProps;
|
|
46
|
+
const { props: menuProps, onSelect, onCheckedChange, loading } = (0, import_react.useContext)(import_CascaderContext.CascaderContext);
|
|
47
|
+
const { valueKey = "value", labelKey = "label", disabledKey = "disabled", multiple, expandTrigger } = menuProps;
|
|
51
48
|
const { b, be, is } = (0, import_hooks.useClassNames)("cascader");
|
|
52
|
-
const treeRef = (0, import_react.useRef)();
|
|
53
|
-
const dataList = (0, import_react.useRef)([]);
|
|
54
49
|
const ulRef = (0, import_react.useRef)(null);
|
|
55
|
-
const isTree = (0, import_react.useMemo)(() => {
|
|
56
|
-
return getDataType(level);
|
|
57
|
-
}, [getDataType, level]);
|
|
58
|
-
const fieldNames = (0, import_react.useMemo)(() => {
|
|
59
|
-
return { title: treeLabelKey, key: treeValueKey, children: treeChildrenKey };
|
|
60
|
-
}, [treeChildrenKey, treeLabelKey, treeValueKey]);
|
|
61
|
-
const loop = (0, import_react.useCallback)(
|
|
62
|
-
(_data, searchValue, parent) => _data.map((item) => {
|
|
63
|
-
var _a;
|
|
64
|
-
const index = item[fieldNames.title].indexOf(searchValue);
|
|
65
|
-
const beforeStr = item[fieldNames.title].substring(0, index);
|
|
66
|
-
const afterStr = item[fieldNames.title].slice(index + searchValue.length);
|
|
67
|
-
const title = index > -1 ? /* @__PURE__ */ import_react.default.createElement("span", null, beforeStr, /* @__PURE__ */ import_react.default.createElement("span", { className: b("tree-search-value", false) }, searchValue), afterStr) : /* @__PURE__ */ import_react.default.createElement("span", null, item[fieldNames.title]);
|
|
68
|
-
const newItem = { ...item, parentId: parent ? [parent.parentId, parent[fieldNames.key]].filter((item1) => !!item1).join(",") : "" };
|
|
69
|
-
dataList.current.push(newItem);
|
|
70
|
-
if (((_a = item == null ? void 0 : item[fieldNames.children]) == null ? void 0 : _a.length) > 0) {
|
|
71
|
-
return {
|
|
72
|
-
...item,
|
|
73
|
-
[fieldNames.title]: title,
|
|
74
|
-
_title: item[fieldNames.title],
|
|
75
|
-
[fieldNames.key]: item[fieldNames.key],
|
|
76
|
-
[fieldNames.children]: loop(item.children, searchValue, newItem).filter((item1) => !!item1),
|
|
77
|
-
disabled: item.disabled
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
return index > -1 ? {
|
|
81
|
-
...item,
|
|
82
|
-
[fieldNames.title]: title,
|
|
83
|
-
_title: item[fieldNames.title],
|
|
84
|
-
[fieldNames.key]: item[fieldNames.key],
|
|
85
|
-
disabled: item.disabled
|
|
86
|
-
} : null;
|
|
87
|
-
}),
|
|
88
|
-
[b, fieldNames.children, fieldNames.key, fieldNames.title]
|
|
89
|
-
);
|
|
90
|
-
const expandByKeys = (0, import_react.useCallback)((expandedKeys) => {
|
|
91
|
-
var _a, _b;
|
|
92
|
-
const flattenNodes = (_a = treeRef.current) == null ? void 0 : _a.flattenTreeData(expandedKeys);
|
|
93
|
-
(_b = treeRef.current) == null ? void 0 : _b.setState({
|
|
94
|
-
expandedKeys,
|
|
95
|
-
flattenNodes
|
|
96
|
-
});
|
|
97
|
-
}, []);
|
|
98
|
-
const getExpandKeys = (0, import_react.useCallback)(() => {
|
|
99
|
-
if (isTree) {
|
|
100
|
-
const _expandedKeys = (0, import_flattenDeep.default)(
|
|
101
|
-
dataList.current.map((item) => {
|
|
102
|
-
var _a;
|
|
103
|
-
if (item[fieldNames.title].indexOf(searchText) > -1) {
|
|
104
|
-
return ((_a = item.parentId) == null ? void 0 : _a.split(",")) ?? [];
|
|
105
|
-
}
|
|
106
|
-
return null;
|
|
107
|
-
})
|
|
108
|
-
).filter((item, i, self) => item && self.indexOf(item) === i);
|
|
109
|
-
expandByKeys(_expandedKeys);
|
|
110
|
-
}
|
|
111
|
-
}, [expandByKeys, fieldNames.title, isTree, searchText]);
|
|
112
50
|
const scrollToSelected = (0, import_react.useCallback)(() => {
|
|
113
51
|
var _a, _b;
|
|
114
52
|
if ((_b = (_a = ulRef.current) == null ? void 0 : _a.resizeRef) == null ? void 0 : _b.current) {
|
|
@@ -123,17 +61,6 @@ var CascaderMenu = (0, import_react.memo)(
|
|
|
123
61
|
}
|
|
124
62
|
}
|
|
125
63
|
}, []);
|
|
126
|
-
(0, import_react.useEffect)(() => {
|
|
127
|
-
if (isTree && (0, import_Util.isNotEmpty)(searchText)) {
|
|
128
|
-
getExpandKeys();
|
|
129
|
-
}
|
|
130
|
-
}, [searchText]);
|
|
131
|
-
(0, import_react.useEffect)(() => {
|
|
132
|
-
if (isTree) {
|
|
133
|
-
const expandedKeys = getExpandedKeys(level);
|
|
134
|
-
expandByKeys(expandedKeys);
|
|
135
|
-
}
|
|
136
|
-
}, []);
|
|
137
64
|
(0, import_react.useImperativeHandle)(ref, () => ({
|
|
138
65
|
scrollToSelected: () => {
|
|
139
66
|
scrollToSelected();
|
|
@@ -160,13 +87,13 @@ var CascaderMenu = (0, import_react.memo)(
|
|
|
160
87
|
),
|
|
161
88
|
onClick: () => {
|
|
162
89
|
if (!item[disabledKey]) {
|
|
163
|
-
if (
|
|
90
|
+
if (expandTrigger === "click" || item.__leaf) {
|
|
164
91
|
onSelect == null ? void 0 : onSelect(level, item);
|
|
165
92
|
}
|
|
166
93
|
}
|
|
167
94
|
},
|
|
168
95
|
onMouseEnter: () => {
|
|
169
|
-
if (
|
|
96
|
+
if (expandTrigger === "hover" && !item[disabledKey] && !item.__leaf) {
|
|
170
97
|
onSelect == null ? void 0 : onSelect(level, item);
|
|
171
98
|
}
|
|
172
99
|
}
|
package/dist/Cascader/Utils.d.ts
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
import { CascaderMenuProps, OptionNode, TreeMenuProps } from './typings';
|
|
2
1
|
export declare const toArray: (val: string | string[] | string[][], separator?: string) => string[] | string[][];
|
|
3
|
-
export declare const reOrgTree: (treeData: object[], level: number, { valueKey, labelKey, leafKey, childrenKey }: CascaderMenuProps, { valueKey: treeValueKey, labelKey: treeLabelKey, childrenKey: treeChildrenKey }: TreeMenuProps, plainData?: OptionNode[], parent?: any) => OptionNode[];
|
package/dist/Cascader/Utils.js
CHANGED
|
@@ -1,8 +1,6 @@
|
|
|
1
|
-
var __create = Object.create;
|
|
2
1
|
var __defProp = Object.defineProperty;
|
|
3
2
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
3
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
-
var __getProtoOf = Object.getPrototypeOf;
|
|
6
4
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
5
|
var __export = (target, all) => {
|
|
8
6
|
for (var name in all)
|
|
@@ -16,25 +14,14 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
16
14
|
}
|
|
17
15
|
return to;
|
|
18
16
|
};
|
|
19
|
-
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
-
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
-
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
-
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
-
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
-
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
-
mod
|
|
26
|
-
));
|
|
27
17
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
18
|
|
|
29
19
|
// src/Cascader/Utils.ts
|
|
30
20
|
var Utils_exports = {};
|
|
31
21
|
__export(Utils_exports, {
|
|
32
|
-
reOrgTree: () => reOrgTree,
|
|
33
22
|
toArray: () => toArray
|
|
34
23
|
});
|
|
35
24
|
module.exports = __toCommonJS(Utils_exports);
|
|
36
|
-
var import_cloneDeep = __toESM(require("lodash/cloneDeep"));
|
|
37
|
-
var import_omit = __toESM(require("lodash/omit"));
|
|
38
25
|
var import_Util = require("../Util");
|
|
39
26
|
var toArray = (val, separator = "/") => {
|
|
40
27
|
if ((0, import_Util.isNotEmpty)(val)) {
|
|
@@ -46,38 +33,7 @@ var toArray = (val, separator = "/") => {
|
|
|
46
33
|
}
|
|
47
34
|
return [];
|
|
48
35
|
};
|
|
49
|
-
var reOrgTree = (treeData, level, { valueKey = "value", labelKey = "label", leafKey = "leaf", childrenKey = "children" }, { valueKey: treeValueKey = "key", labelKey: treeLabelKey = "title", childrenKey: treeChildrenKey = "children" }, plainData = [], parent = null) => {
|
|
50
|
-
return treeData.map((node) => {
|
|
51
|
-
if (node[childrenKey]) {
|
|
52
|
-
node[childrenKey] = reOrgTree(
|
|
53
|
-
node[childrenKey],
|
|
54
|
-
level,
|
|
55
|
-
{ valueKey, labelKey, leafKey, childrenKey },
|
|
56
|
-
{ valueKey: treeValueKey, labelKey: treeLabelKey, childrenKey: treeChildrenKey },
|
|
57
|
-
plainData,
|
|
58
|
-
(0, import_omit.default)((0, import_cloneDeep.default)(node), childrenKey)
|
|
59
|
-
);
|
|
60
|
-
}
|
|
61
|
-
const id = (0, import_Util.randomCode)(11);
|
|
62
|
-
plainData.push({
|
|
63
|
-
__id: id,
|
|
64
|
-
__level: level,
|
|
65
|
-
__pId: (parent == null ? void 0 : parent.__id) ?? "0",
|
|
66
|
-
[valueKey]: node[treeValueKey],
|
|
67
|
-
[labelKey]: node[treeLabelKey],
|
|
68
|
-
[leafKey]: false,
|
|
69
|
-
treeChildren: Object.prototype.hasOwnProperty.call(node, treeChildrenKey),
|
|
70
|
-
...parent != null ? { parent } : {}
|
|
71
|
-
});
|
|
72
|
-
return {
|
|
73
|
-
...node,
|
|
74
|
-
__id: id,
|
|
75
|
-
__pId: (parent == null ? void 0 : parent.__id) ?? "0"
|
|
76
|
-
};
|
|
77
|
-
});
|
|
78
|
-
};
|
|
79
36
|
// Annotate the CommonJS export names for ESM import in node:
|
|
80
37
|
0 && (module.exports = {
|
|
81
|
-
reOrgTree,
|
|
82
38
|
toArray
|
|
83
39
|
});
|
package/dist/Cascader/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export { default as Cascader } from './Cascader';
|
|
2
|
-
export type { CascaderMenuProps, CascaderProps
|
|
2
|
+
export type { CascaderMenuProps, CascaderProps } from './typings';
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { InputRef } from '../Input';
|
|
3
3
|
import { PopperOptions } from '../Popper';
|
|
4
|
-
import { DataNode, DirectoryTreeProps, Key } from '../Tree';
|
|
5
4
|
import { AnimationEventProps, BaseProps, FormControlBaseProps, NativeProps } from '../types/common';
|
|
6
5
|
export type ValueType = string[] | string[][];
|
|
7
|
-
export interface CascaderProps<V = ValueType, S =
|
|
6
|
+
export interface CascaderProps<V = ValueType, S = any> extends Omit<FormControlBaseProps<V>, 'onChange' | 'value' | 'defaultValue'>, BaseProps, NativeProps, AnimationEventProps, PopperOptions {
|
|
8
7
|
/** 初始值 */
|
|
9
8
|
defaultValue?: ValueType;
|
|
10
9
|
/** 值(可控) */
|
|
@@ -13,8 +12,6 @@ export interface CascaderProps<V = ValueType, S = DataNode> extends Omit<FormCon
|
|
|
13
12
|
options?: any[];
|
|
14
13
|
/** 配置选项 */
|
|
15
14
|
props?: CascaderMenuProps;
|
|
16
|
-
/** 树形租金配置选项 */
|
|
17
|
-
treeMenuProps?: TreeMenuProps;
|
|
18
15
|
/** 是否禁用 */
|
|
19
16
|
disabled?: boolean;
|
|
20
17
|
/** 是否可以清空选项 */
|
|
@@ -61,7 +58,6 @@ export interface CascaderProps<V = ValueType, S = DataNode> extends Omit<FormCon
|
|
|
61
58
|
prepend?: React.ReactElement<any> | string | number;
|
|
62
59
|
/** 输入框后置内容,只对 type="text" 有效 */
|
|
63
60
|
append?: React.ReactElement | string | number;
|
|
64
|
-
expandedKeys?: Key[][];
|
|
65
61
|
lable?: string;
|
|
66
62
|
/** 是否追加到body下 */
|
|
67
63
|
appendToBody?: boolean;
|
|
@@ -83,19 +79,7 @@ export interface CascaderMenuProps {
|
|
|
83
79
|
/** 是否动态加载子节点,需与 lazyLoad 方法结合使用 */
|
|
84
80
|
lazy?: boolean;
|
|
85
81
|
/** 加载动态数据的方法,仅在 lazy 为 true 时有效 */
|
|
86
|
-
lazyLoad?: (node: object, resolve?: (value: object[]
|
|
87
|
-
/** 指定选项的值为选项对象的某个属性值 */
|
|
88
|
-
valueKey?: string;
|
|
89
|
-
/** 指定选项标签为选项对象的某个属性值 */
|
|
90
|
-
labelKey?: string;
|
|
91
|
-
/** 指定选项的子选项为选项对象的某个属性值 */
|
|
92
|
-
childrenKey?: string;
|
|
93
|
-
/** 指定选项的禁用为选项对象的某个属性值 */
|
|
94
|
-
disabledKey?: string;
|
|
95
|
-
/** 指定选项的叶子节点的标志位为选项对象的某个属性值 */
|
|
96
|
-
leafKey?: string;
|
|
97
|
-
}
|
|
98
|
-
export interface TreeMenuProps {
|
|
82
|
+
lazyLoad?: (node: object, resolve?: (value: object[]) => void, reject?: () => void) => void;
|
|
99
83
|
/** 指定选项的值为选项对象的某个属性值 */
|
|
100
84
|
valueKey?: string;
|
|
101
85
|
/** 指定选项标签为选项对象的某个属性值 */
|
|
@@ -1,12 +1,5 @@
|
|
|
1
1
|
import { Key } from '../Tree';
|
|
2
2
|
import { CascaderProps, OptionNode } from './typings';
|
|
3
|
-
/**
|
|
4
|
-
* @author Parker
|
|
5
|
-
* @CreateTime 2022/4/17 16:02:49
|
|
6
|
-
* @LastEditor Parker
|
|
7
|
-
* @ModifyTime 2022/11/20 13:05:51
|
|
8
|
-
* @Description
|
|
9
|
-
*/
|
|
10
3
|
export declare const useCascader: (initialData: object[], props: CascaderProps, value: string[] | string[][]) => {
|
|
11
4
|
/** 最高层级 */
|
|
12
5
|
allLevel: number;
|
|
@@ -17,8 +10,7 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
|
|
|
17
10
|
* @param nodes
|
|
18
11
|
* @param level 层级
|
|
19
12
|
*/
|
|
20
|
-
storeOptionData: (nodes: object[], level: number, parent: OptionNode, {
|
|
21
|
-
isTree?: boolean;
|
|
13
|
+
storeOptionData: (nodes: object[], level: number, parent: OptionNode, { isCover }: {
|
|
22
14
|
isCover?: boolean;
|
|
23
15
|
}) => OptionNode[];
|
|
24
16
|
/**
|
|
@@ -78,12 +70,6 @@ export declare const useCascader: (initialData: object[], props: CascaderProps,
|
|
|
78
70
|
* @returns
|
|
79
71
|
*/
|
|
80
72
|
getDataType: (level: number) => any;
|
|
81
|
-
/**
|
|
82
|
-
* 获取树数据
|
|
83
|
-
* @param level 层级
|
|
84
|
-
* @returns
|
|
85
|
-
*/
|
|
86
|
-
getTreeData: (level: number) => any[];
|
|
87
73
|
/**
|
|
88
74
|
* 获取扩展key
|
|
89
75
|
* @param level 层级
|
|
@@ -38,12 +38,10 @@ var import_isEqual = __toESM(require("lodash/isEqual"));
|
|
|
38
38
|
var import_last = __toESM(require("lodash/last"));
|
|
39
39
|
var import_react = require("react");
|
|
40
40
|
var import_Util = require("../Util");
|
|
41
|
-
var import_Utils = require("./Utils");
|
|
42
41
|
var useCascader = (initialData, props, value) => {
|
|
43
|
-
const { props: menuProps,
|
|
42
|
+
const { props: menuProps, showAllLevels, separator } = props;
|
|
44
43
|
const { childrenKey = "children", valueKey = "value", labelKey = "label", leafKey = "leaf", lazy } = menuProps;
|
|
45
44
|
const [allLevel, setAllLevel] = (0, import_react.useState)(0);
|
|
46
|
-
const [treeData, setTreeData] = (0, import_react.useState)({});
|
|
47
45
|
const [dataTypes, setDataTypes] = (0, import_react.useState)([]);
|
|
48
46
|
const _dataTypes = (0, import_react.useRef)([]);
|
|
49
47
|
const [optionData, setOptionData] = (0, import_react.useState)({});
|
|
@@ -301,26 +299,18 @@ var useCascader = (initialData, props, value) => {
|
|
|
301
299
|
}
|
|
302
300
|
}, []);
|
|
303
301
|
const storeOptionData = (0, import_react.useCallback)(
|
|
304
|
-
(nodes, level, parent, {
|
|
302
|
+
(nodes, level, parent, { isCover }) => {
|
|
305
303
|
let data = (0, import_cloneDeep.default)(_optionData.current);
|
|
306
304
|
let newNodes = [];
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
316
|
-
__level: level,
|
|
317
|
-
__id: (0, import_Util.randomCode)(11),
|
|
318
|
-
__pId: (parent == null ? void 0 : parent.__id) ?? "0",
|
|
319
|
-
__leaf: node[leafKey] ?? false,
|
|
320
|
-
__checked: false,
|
|
321
|
-
__indeterminate: false
|
|
322
|
-
}));
|
|
323
|
-
}
|
|
305
|
+
newNodes = nodes.map((node) => ({
|
|
306
|
+
...node,
|
|
307
|
+
__level: level,
|
|
308
|
+
__id: (0, import_Util.randomCode)(11),
|
|
309
|
+
__pId: (parent == null ? void 0 : parent.__id) ?? "0",
|
|
310
|
+
__leaf: node[leafKey] ?? false,
|
|
311
|
+
__checked: false,
|
|
312
|
+
__indeterminate: false
|
|
313
|
+
}));
|
|
324
314
|
if ((0, import_Util.isEmpty)(data[`level${level}`])) {
|
|
325
315
|
data = {
|
|
326
316
|
...data,
|
|
@@ -350,19 +340,19 @@ var useCascader = (initialData, props, value) => {
|
|
|
350
340
|
selectedValue.current.push(null);
|
|
351
341
|
selectedLabel.current.push(null);
|
|
352
342
|
selectedNode.current.push(null);
|
|
353
|
-
setDataTypes(_dataTypes.current
|
|
343
|
+
setDataTypes(_dataTypes.current);
|
|
354
344
|
}
|
|
355
345
|
} else {
|
|
356
346
|
selectedValue.current[level] = null;
|
|
357
347
|
selectedLabel.current[level] = null;
|
|
358
348
|
selectedNode.current[level] = null;
|
|
359
349
|
const _types = (0, import_cloneDeep.default)(_dataTypes.current);
|
|
360
|
-
_types[level] =
|
|
350
|
+
_types[level] = false;
|
|
361
351
|
setDataTypes(_dataTypes.current = _types);
|
|
362
352
|
}
|
|
363
353
|
return data[`level${level}`];
|
|
364
354
|
},
|
|
365
|
-
[allLevel, childrenKey, leafKey
|
|
355
|
+
[allLevel, childrenKey, leafKey]
|
|
366
356
|
);
|
|
367
357
|
const setNodeLeaf = (0, import_react.useCallback)(
|
|
368
358
|
(node, isLeaf) => {
|
|
@@ -380,12 +370,6 @@ var useCascader = (initialData, props, value) => {
|
|
|
380
370
|
},
|
|
381
371
|
[dataTypes, lazy]
|
|
382
372
|
);
|
|
383
|
-
const getTreeData = (0, import_react.useCallback)(
|
|
384
|
-
(level) => {
|
|
385
|
-
return lazy && treeData[`level${level}`];
|
|
386
|
-
},
|
|
387
|
-
[lazy, treeData]
|
|
388
|
-
);
|
|
389
373
|
const getExpandedKeys = (0, import_react.useCallback)((level) => {
|
|
390
374
|
return expandKeys.current[`level${level}`] ?? [];
|
|
391
375
|
}, []);
|
|
@@ -511,11 +495,6 @@ var useCascader = (initialData, props, value) => {
|
|
|
511
495
|
}
|
|
512
496
|
}
|
|
513
497
|
}, [value, allLevel, props.options]);
|
|
514
|
-
(0, import_react.useEffect)(() => {
|
|
515
|
-
expandedKeys.forEach((keys, level) => {
|
|
516
|
-
setExpandedKeys(level, keys);
|
|
517
|
-
});
|
|
518
|
-
}, [expandedKeys, setExpandedKeys]);
|
|
519
498
|
return {
|
|
520
499
|
// eslint-disable-next-line lines-around-comment
|
|
521
500
|
/** 最高层级 */
|
|
@@ -585,12 +564,6 @@ var useCascader = (initialData, props, value) => {
|
|
|
585
564
|
* @returns
|
|
586
565
|
*/
|
|
587
566
|
getDataType,
|
|
588
|
-
/**
|
|
589
|
-
* 获取树数据
|
|
590
|
-
* @param level 层级
|
|
591
|
-
* @returns
|
|
592
|
-
*/
|
|
593
|
-
getTreeData,
|
|
594
567
|
/**
|
|
595
568
|
* 获取扩展key
|
|
596
569
|
* @param level 层级
|
|
@@ -83,7 +83,7 @@ var DatePicker = (0, import_react.memo)(
|
|
|
83
83
|
if ((0, import_Util.isNotEmpty)(props.format)) {
|
|
84
84
|
return props.format;
|
|
85
85
|
} else {
|
|
86
|
-
switch (
|
|
86
|
+
switch (type) {
|
|
87
87
|
case "year":
|
|
88
88
|
return "YYYY";
|
|
89
89
|
case "month":
|
|
@@ -94,12 +94,12 @@ var DatePicker = (0, import_react.memo)(
|
|
|
94
94
|
return "YYYY-MM-DD";
|
|
95
95
|
}
|
|
96
96
|
}
|
|
97
|
-
}, [props.format,
|
|
97
|
+
}, [props.format, type]);
|
|
98
98
|
const placeholder = (0, import_react.useMemo)(() => {
|
|
99
99
|
if ((0, import_Util.isNotEmpty)(props.placeholder)) {
|
|
100
100
|
return props.placeholder;
|
|
101
101
|
} else {
|
|
102
|
-
switch (
|
|
102
|
+
switch (type) {
|
|
103
103
|
case "year":
|
|
104
104
|
return "请选择年份";
|
|
105
105
|
case "month":
|
|
@@ -110,7 +110,7 @@ var DatePicker = (0, import_react.memo)(
|
|
|
110
110
|
return "请选择日期";
|
|
111
111
|
}
|
|
112
112
|
}
|
|
113
|
-
}, [props.placeholder,
|
|
113
|
+
}, [props.placeholder, type]);
|
|
114
114
|
const dateProp = (0, import_react.useMemo)(() => {
|
|
115
115
|
if (type === "week") {
|
|
116
116
|
return currentDate.current || (currentDate.current = typeof value === "string" ? (0, import_Calendar.toDayjs)(value, props.valueFormat ?? format) : (0, import_Calendar.initDate)());
|
|
@@ -216,7 +216,7 @@ var DatePicker = (0, import_react.memo)(
|
|
|
216
216
|
value: {
|
|
217
217
|
value: dateProp,
|
|
218
218
|
valueRange,
|
|
219
|
-
dateType:
|
|
219
|
+
dateType: type,
|
|
220
220
|
isoWeek: props.isoWeek,
|
|
221
221
|
showToday: props.showToday,
|
|
222
222
|
popperInstRef,
|
package/dist/Empty/ImgEmpty.js
CHANGED
|
@@ -36,7 +36,7 @@ var import_react = __toESM(require("react"));
|
|
|
36
36
|
var import_Util = require("../Util");
|
|
37
37
|
var ImgEmpty = () => {
|
|
38
38
|
const ids = (0, import_react.useMemo)(() => [`linearGradient-${(0, import_Util.randomCode)(5)}`, `linearGradient-${(0, import_Util.randomCode)(5)}`], []);
|
|
39
|
-
return /* @__PURE__ */ import_react.default.createElement("svg", { viewBox: "0 0 79 86", version: "1.1", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink" }, /* @__PURE__ */ import_react.default.createElement("defs", null, /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[0], x1: "38.8503086%", y1: "0%", x2: "61.1496914%", y2: "100%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-4)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[1], x1: "0%", y1: "9.5%", x2: "100%", y2: "90.5%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-6)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("rect", { id: "path-3-1", x: "0", y: "0", width: "17", height: "36" })), /* @__PURE__ */ import_react.default.createElement("g", { id: "Illustrations", stroke: "none", "stroke-width": "1", fill: "none",
|
|
39
|
+
return /* @__PURE__ */ import_react.default.createElement("svg", { viewBox: "0 0 79 86", version: "1.1", xmlns: "http://www.w3.org/2000/svg", xmlnsXlink: "http://www.w3.org/1999/xlink" }, /* @__PURE__ */ import_react.default.createElement("defs", null, /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[0], x1: "38.8503086%", y1: "0%", x2: "61.1496914%", y2: "100%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-4)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("linearGradient", { id: ids[1], x1: "0%", y1: "9.5%", x2: "100%", y2: "90.5%" }, /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-1)", offset: "0%" }), /* @__PURE__ */ import_react.default.createElement("stop", { "stop-color": "var(--el-empty-fill-color-6)", offset: "100%" })), /* @__PURE__ */ import_react.default.createElement("rect", { id: "path-3-1", x: "0", y: "0", width: "17", height: "36" })), /* @__PURE__ */ import_react.default.createElement("g", { id: "Illustrations", stroke: "none", "stroke-width": "1", fill: "none", fillRule: "evenodd" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "B-type", transform: "translate(-1268.000000, -535.000000)" }, /* @__PURE__ */ import_react.default.createElement("g", { id: "Group-2", transform: "translate(1268.000000, 535.000000)" }, /* @__PURE__ */ import_react.default.createElement(
|
|
40
40
|
"path",
|
|
41
41
|
{
|
|
42
42
|
id: "Oval-Copy-2",
|
package/dist/Loading/Loading.js
CHANGED
|
@@ -33,6 +33,7 @@ __export(Loading_exports, {
|
|
|
33
33
|
});
|
|
34
34
|
module.exports = __toCommonJS(Loading_exports);
|
|
35
35
|
var import_classnames = __toESM(require("classnames"));
|
|
36
|
+
var import_dom_lib = require("dom-lib");
|
|
36
37
|
var import_react = __toESM(require("react"));
|
|
37
38
|
var import_react_dom = require("react-dom");
|
|
38
39
|
var import_client = require("react-dom/client");
|
|
@@ -42,17 +43,26 @@ var import_Util = require("../Util");
|
|
|
42
43
|
var import_hooks = require("../hooks");
|
|
43
44
|
var Main = (props) => {
|
|
44
45
|
const { visible, text, fullscreen = true, spinner, background } = props;
|
|
45
|
-
const { b, is } = (0, import_hooks.useClassNames)("loading");
|
|
46
|
+
const { b, is, bm } = (0, import_hooks.useClassNames)("loading");
|
|
46
47
|
const nodeRef = (0, import_react.useRef)(null);
|
|
48
|
+
(0, import_react.useEffect)(() => {
|
|
49
|
+
var _a;
|
|
50
|
+
if ((_a = nodeRef.current) == null ? void 0 : _a.parentNode) {
|
|
51
|
+
(0, import_dom_lib.addClass)(nodeRef.current.parentNode, bm("parent", "relative"));
|
|
52
|
+
}
|
|
53
|
+
}, []);
|
|
47
54
|
return /* @__PURE__ */ import_react.default.createElement(import_Transition.Transition, { nodeRef, name: "loading-fade", visible }, /* @__PURE__ */ import_react.default.createElement("div", { ref: nodeRef, className: (0, import_classnames.default)(b`mask`, is({ fullscreen }), props.className), style: { ...props.style, background, zIndex: import_Util.PopupManager.nextZIndex() } }, /* @__PURE__ */ import_react.default.createElement("div", { className: b`spinner` }, spinner ? /* @__PURE__ */ import_react.default.createElement(import_Icon.Icon, { name: spinner, spin: true }) : /* @__PURE__ */ import_react.default.createElement("svg", { className: "circular", viewBox: "25 25 50 50" }, /* @__PURE__ */ import_react.default.createElement("circle", { className: "path", cx: "50", cy: "50", r: "20", fill: "none" })), text && /* @__PURE__ */ import_react.default.createElement("p", { className: b`text` }, text))));
|
|
48
55
|
};
|
|
49
56
|
var service = (props = {}) => {
|
|
50
57
|
const { target = { current: document.body } } = props;
|
|
51
|
-
const
|
|
58
|
+
const renderDom = document.createDocumentFragment();
|
|
59
|
+
const root = (0, import_client.createRoot)(renderDom);
|
|
52
60
|
root.render((0, import_react_dom.createPortal)(/* @__PURE__ */ import_react.default.createElement(Main, { ...props, visible: true }), target.current));
|
|
53
61
|
return {
|
|
54
62
|
close: () => {
|
|
55
|
-
|
|
63
|
+
setTimeout(() => {
|
|
64
|
+
root.unmount();
|
|
65
|
+
}, 200);
|
|
56
66
|
}
|
|
57
67
|
};
|
|
58
68
|
};
|
|
@@ -64,5 +74,5 @@ var Loading = (props) => {
|
|
|
64
74
|
return /* @__PURE__ */ import_react.default.createElement(Main, { ...props, visible });
|
|
65
75
|
};
|
|
66
76
|
Loading.service = service;
|
|
67
|
-
Loading.displayName = "
|
|
77
|
+
Loading.displayName = "ElLoading";
|
|
68
78
|
var Loading_default = Loading;
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import
|
|
1
|
+
import * as React from 'react';
|
|
2
2
|
import RcTree from './RCTree';
|
|
3
|
-
import { Key } from './typings';
|
|
4
3
|
import { TreeProps } from './Tree';
|
|
4
|
+
import { BasicDataNode, DataNode, Key } from './typings';
|
|
5
5
|
export type ExpandAction = false | 'click' | 'doubleClick';
|
|
6
|
-
export interface DirectoryTreeProps<T> extends TreeProps<T> {
|
|
6
|
+
export interface DirectoryTreeProps<T extends BasicDataNode = DataNode> extends TreeProps<T> {
|
|
7
7
|
expandAction?: ExpandAction;
|
|
8
8
|
}
|
|
9
|
+
type DirectoryTreeCompoundedComponent = (<T extends BasicDataNode | DataNode = DataNode>(props: React.PropsWithChildren<DirectoryTreeProps<T>> & React.RefAttributes<RcTree>) => React.ReactElement) & Pick<React.FC, 'displayName'>;
|
|
9
10
|
export interface DirectoryTreeState {
|
|
10
11
|
expandedKeys?: Key[];
|
|
11
12
|
selectedKeys?: Key[];
|
|
12
13
|
}
|
|
13
|
-
declare const ForwardDirectoryTree:
|
|
14
|
-
|
|
15
|
-
}) => React.ReactElement;
|
|
16
|
-
type InternalDirectoryTreeType = typeof ForwardDirectoryTree;
|
|
17
|
-
interface DirectoryTreeInterface extends InternalDirectoryTreeType {
|
|
18
|
-
displayName?: string;
|
|
19
|
-
defaultProps?: Partial<DirectoryTreeProps<any>>;
|
|
20
|
-
}
|
|
21
|
-
declare const DirectoryTree: DirectoryTreeInterface;
|
|
22
|
-
export default DirectoryTree;
|
|
14
|
+
declare const ForwardDirectoryTree: DirectoryTreeCompoundedComponent;
|
|
15
|
+
export default ForwardDirectoryTree;
|