@teamix/pro 1.2.8 → 1.2.9
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/212.js +1 -1
- package/dist/pro.js +237 -260
- package/dist/pro.min.js +1 -1
- package/es/actions/dialog-form.js +2 -2
- package/es/actions/dialog.js +11 -20
- package/es/actions/index.js +25 -22
- package/es/card/index.js +0 -1
- package/es/index.d.ts +1 -1
- package/es/index.js +1 -1
- package/es/sidebar/components/tree/index.js +85 -18
- package/es/sidebar/index.js +9 -5
- package/es/sidebar/typing.d.ts +14 -1
- package/lib/actions/dialog-form.js +1 -1
- package/lib/actions/dialog.js +10 -19
- package/lib/actions/index.js +25 -22
- package/lib/card/index.js +0 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.js +1 -1
- package/lib/sidebar/components/tree/index.js +83 -16
- package/lib/sidebar/index.js +9 -5
- package/lib/sidebar/typing.d.ts +14 -1
- package/package.json +1 -1
@@ -13,10 +13,18 @@ var _utils = require("@teamix/utils");
|
|
13
13
|
|
14
14
|
var _react = _interopRequireWildcard(require("react"));
|
15
15
|
|
16
|
+
var _excluded = ["dataSource", "searchKey", "onSelect"];
|
17
|
+
|
16
18
|
function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
|
17
19
|
|
18
20
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
19
21
|
|
22
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
23
|
+
|
24
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
25
|
+
|
26
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
27
|
+
|
20
28
|
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
21
29
|
|
22
30
|
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -37,32 +45,60 @@ function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Sy
|
|
37
45
|
|
38
46
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
39
47
|
|
48
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
49
|
+
|
50
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
51
|
+
|
40
52
|
var cls = (0, _utils.baseClass)('teamix-pro-sidebar-tree');
|
41
53
|
|
42
54
|
var ProSidebarTree = function ProSidebarTree(props) {
|
43
55
|
var dataSourceProp = props.dataSource,
|
44
|
-
searchKey = props.searchKey
|
56
|
+
searchKey = props.searchKey,
|
57
|
+
onSelect = props.onSelect,
|
58
|
+
others = _objectWithoutProperties(props, _excluded); // 自动展开父节点。过滤时用
|
45
59
|
|
46
|
-
|
60
|
+
|
61
|
+
var _useState = (0, _react.useState)(false),
|
47
62
|
_useState2 = _slicedToArray(_useState, 2),
|
48
|
-
|
49
|
-
|
63
|
+
autoExpandParent = _useState2[0],
|
64
|
+
setAutoExpandParent = _useState2[1];
|
50
65
|
|
51
66
|
var _useState3 = (0, _react.useState)(),
|
52
67
|
_useState4 = _slicedToArray(_useState3, 2),
|
53
|
-
|
54
|
-
|
68
|
+
matchedKeys = _useState4[0],
|
69
|
+
setMatchedKeys = _useState4[1];
|
55
70
|
|
56
|
-
var _useState5 = (0, _react.useState)(
|
71
|
+
var _useState5 = (0, _react.useState)(),
|
57
72
|
_useState6 = _slicedToArray(_useState5, 2),
|
58
|
-
|
59
|
-
|
73
|
+
expandedKeys = _useState6[0],
|
74
|
+
setExpandedKeys = _useState6[1];
|
75
|
+
|
76
|
+
var _useState7 = (0, _react.useState)(dataSourceProp !== null && dataSourceProp !== void 0 ? dataSourceProp : []),
|
77
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
78
|
+
dataSource = _useState8[0],
|
79
|
+
setDataSource = _useState8[1];
|
60
80
|
|
81
|
+
(0, _react.useEffect)(function () {
|
82
|
+
getAllExpend();
|
83
|
+
}, []);
|
61
84
|
(0, _react.useEffect)(function () {
|
62
85
|
filterDataSource(searchKey !== null && searchKey !== void 0 ? searchKey : '');
|
63
|
-
}, [searchKey]); //
|
86
|
+
}, [searchKey]); // 获取全部展开节点key
|
87
|
+
|
88
|
+
var getAllExpend = function getAllExpend() {
|
89
|
+
var allKeys = (0, _utils.treeToList)(dataSource).map(function (item) {
|
90
|
+
return item.value;
|
91
|
+
});
|
92
|
+
setExpandedKeys(allKeys);
|
93
|
+
}; // 过滤
|
94
|
+
|
64
95
|
|
65
96
|
var filterDataSource = function filterDataSource(value) {
|
97
|
+
if (!value) {
|
98
|
+
setExpandedKeys([]);
|
99
|
+
getAllExpend();
|
100
|
+
}
|
101
|
+
|
66
102
|
value = value.trim();
|
67
103
|
var matchedKeys = [];
|
68
104
|
|
@@ -74,7 +110,7 @@ var ProSidebarTree = function ProSidebarTree(props) {
|
|
74
110
|
var loop = function loop(data) {
|
75
111
|
return data.forEach(function (item) {
|
76
112
|
if (item.label.indexOf(value) > -1) {
|
77
|
-
matchedKeys.push(item.
|
113
|
+
matchedKeys.push(item.value);
|
78
114
|
}
|
79
115
|
|
80
116
|
if (item.children && item.children.length) {
|
@@ -85,27 +121,58 @@ var ProSidebarTree = function ProSidebarTree(props) {
|
|
85
121
|
|
86
122
|
loop(dataSource);
|
87
123
|
setExpandedKeys(_toConsumableArray(matchedKeys));
|
124
|
+
setAutoExpandParent(true);
|
88
125
|
setMatchedKeys(matchedKeys);
|
89
126
|
};
|
90
127
|
|
91
128
|
var filterTreeNode = function filterTreeNode(node) {
|
92
129
|
return matchedKeys && matchedKeys.indexOf(node.props.eventKey) > -1;
|
130
|
+
}; // 节点展开回调
|
131
|
+
|
132
|
+
|
133
|
+
var handleExpand = function handleExpand(key) {
|
134
|
+
setExpandedKeys(key);
|
135
|
+
setAutoExpandParent(false);
|
136
|
+
}; // 渲染树节点
|
137
|
+
|
138
|
+
|
139
|
+
var renderTreeNode = function renderTreeNode(data) {
|
140
|
+
return data.map(function (item) {
|
141
|
+
return /*#__PURE__*/_react.default.createElement(_components.Tree.Node, {
|
142
|
+
key: item.value,
|
143
|
+
label: renderTreeNodeItem(item)
|
144
|
+
}, item.children && item.children.length > 0 && renderTreeNode(item.children));
|
145
|
+
});
|
146
|
+
}; // 渲染单个树节点 label
|
147
|
+
|
148
|
+
|
149
|
+
var renderTreeNodeItem = function renderTreeNodeItem(data) {
|
150
|
+
var node = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, data.label);
|
151
|
+
|
152
|
+
if (data.tag) {
|
153
|
+
if ( /*#__PURE__*/(0, _react.isValidElement)(data.tag)) {
|
154
|
+
node = /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, node, data.tag);
|
155
|
+
}
|
156
|
+
}
|
157
|
+
|
158
|
+
return node;
|
93
159
|
};
|
94
160
|
|
95
161
|
return /*#__PURE__*/_react.default.createElement("div", {
|
96
162
|
className: cls()
|
97
|
-
}, /*#__PURE__*/_react.default.createElement(_components.Tree, {
|
98
|
-
draggable: true,
|
163
|
+
}, /*#__PURE__*/_react.default.createElement(_components.Tree, _objectSpread({
|
99
164
|
defaultExpandAll: true,
|
100
165
|
isLabelBlock: true,
|
101
166
|
isNodeBlock: {
|
102
167
|
defaultPaddingLeft: 8,
|
103
168
|
indent: 16
|
104
169
|
},
|
105
|
-
dataSource: dataSource,
|
106
170
|
filterTreeNode: filterTreeNode,
|
107
|
-
expandedKeys: expandedKeys
|
108
|
-
|
171
|
+
expandedKeys: expandedKeys,
|
172
|
+
onExpand: handleExpand,
|
173
|
+
autoExpandParent: autoExpandParent,
|
174
|
+
onSelect: onSelect
|
175
|
+
}, others), renderTreeNode(dataSource)));
|
109
176
|
};
|
110
177
|
|
111
178
|
var _default = ProSidebarTree;
|
package/lib/sidebar/index.js
CHANGED
@@ -17,7 +17,7 @@ var _sidebarContainer = _interopRequireDefault(require("./components/sidebar-con
|
|
17
17
|
|
18
18
|
var _tree = _interopRequireDefault(require("./components/tree"));
|
19
19
|
|
20
|
-
var _excluded = ["dataSource", "className", "style", "searchOnChange", "showSearch"];
|
20
|
+
var _excluded = ["dataSource", "className", "style", "searchOnChange", "showSearch", "onSelect", "treeProps", "cardProps"];
|
21
21
|
|
22
22
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
23
23
|
|
@@ -56,6 +56,9 @@ var ProSidebar = function ProSidebar(props) {
|
|
56
56
|
_searchOnChange = props.searchOnChange,
|
57
57
|
_props$showSearch = props.showSearch,
|
58
58
|
showSearch = _props$showSearch === void 0 ? true : _props$showSearch,
|
59
|
+
onSelect = props.onSelect,
|
60
|
+
treeProps = props.treeProps,
|
61
|
+
cardProps = props.cardProps,
|
59
62
|
others = _objectWithoutProperties(props, _excluded); // 搜索的关键词
|
60
63
|
|
61
64
|
|
@@ -69,7 +72,7 @@ var ProSidebar = function ProSidebar(props) {
|
|
69
72
|
'': true
|
70
73
|
}, className, true)),
|
71
74
|
style: style
|
72
|
-
}, /*#__PURE__*/_react.default.createElement(_sidebarContainer.default, _objectSpread({
|
75
|
+
}, /*#__PURE__*/_react.default.createElement(_sidebarContainer.default, _objectSpread(_objectSpread({
|
73
76
|
searchOnChange: function searchOnChange(value) {
|
74
77
|
if (showSearch) {
|
75
78
|
_searchOnChange === null || _searchOnChange === void 0 ? void 0 : _searchOnChange(value);
|
@@ -77,10 +80,11 @@ var ProSidebar = function ProSidebar(props) {
|
|
77
80
|
}
|
78
81
|
},
|
79
82
|
showSearch: showSearch
|
80
|
-
}, others), /*#__PURE__*/_react.default.createElement(_tree.default, {
|
83
|
+
}, others), cardProps), /*#__PURE__*/_react.default.createElement(_tree.default, _objectSpread({
|
81
84
|
dataSource: dataSource,
|
82
|
-
searchKey: searchKey
|
83
|
-
|
85
|
+
searchKey: searchKey,
|
86
|
+
onSelect: onSelect
|
87
|
+
}, treeProps))));
|
84
88
|
};
|
85
89
|
|
86
90
|
var _default = ProSidebar;
|
package/lib/sidebar/typing.d.ts
CHANGED
@@ -6,7 +6,13 @@ import { ProCardProps, ProFieldProps } from '..';
|
|
6
6
|
export declare type ProSidebarProps = {
|
7
7
|
/** 数据源 */
|
8
8
|
dataSource?: ProSidebarDataSource;
|
9
|
-
|
9
|
+
/** 节点点击回调 */
|
10
|
+
onSelect?: TreeProps['onSelect'];
|
11
|
+
/** 树配置 */
|
12
|
+
treeProps?: TreeProps;
|
13
|
+
/** 卡片配置 */
|
14
|
+
cardProps?: ProCardProps;
|
15
|
+
} & Omit<React.HTMLAttributes<HTMLElement>, 'onSelect'> & Omit<ProSidebarContainerProps, 'onSelect'>;
|
10
16
|
/** 数据源定义 */
|
11
17
|
export declare type ProSidebarDataSource = ProSidebarDataSourceItem[];
|
12
18
|
export declare type ProSidebarDataSourceItem = {
|
@@ -23,6 +29,11 @@ export declare type ProSidebarDataSourceItem = {
|
|
23
29
|
/** 子项 */
|
24
30
|
children?: ProSidebarDataSourceItem[];
|
25
31
|
};
|
32
|
+
/** tag 定义 */
|
33
|
+
export declare type ProSidebarDataSourceTag = {
|
34
|
+
/** 显示值 */
|
35
|
+
value: string;
|
36
|
+
};
|
26
37
|
/** sidebar 容器定义 */
|
27
38
|
export declare type ProSidebarContainerProps = {
|
28
39
|
children?: React.ReactNode;
|
@@ -48,4 +59,6 @@ export declare type ProSidebarTreeProps = {
|
|
48
59
|
dataSource?: ProSidebarDataSource;
|
49
60
|
/** 搜索过滤关键词 */
|
50
61
|
searchKey?: string;
|
62
|
+
/** 节点点击回调 */
|
63
|
+
onChange?: ProSidebarProps['onChange'];
|
51
64
|
} & TreeProps;
|