@kmkf-fe-packages/kmkf-work-order-service-component 2.2.4 → 2.3.0-rc.0
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/esm/CustomerServiceToDoList/index.d.ts +3 -0
- package/dist/esm/CustomerServiceToDoList/index.js +155 -0
- package/dist/esm/CustomerServiceToDoList/index.module.less +134 -0
- package/dist/esm/FlowTemplateDetailV2/common.js +1 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/component-dependency-finder.d.ts +75 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/component-dependency-finder.js +328 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/index.js +84 -36
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/types.d.ts +41 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/types.js +1 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/value-mapping-finder.d.ts +61 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/value-mapping-finder.js +292 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/value-mapping-types.d.ts +65 -0
- package/dist/esm/FlowTemplateDetailV2/components/FormRender/value-mapping-types.js +1 -0
- package/dist/esm/FlowTemplateDetailV2/index.js +12 -4
- package/dist/esm/WorkOrder/components/CustomerServiceToDoCard/index.d.ts +3 -0
- package/dist/esm/WorkOrder/components/CustomerServiceToDoCard/index.js +76 -0
- package/dist/esm/WorkOrder/components/CustomerServiceToDoCard/index.module.less +20 -0
- package/dist/esm/WorkOrder/components/WorkOrderList/components/CustomizeWorkOrderCard/index.js +6 -0
- package/dist/esm/WorkOrder/components/WorkOrderList/index.js +7 -2
- package/dist/esm/WorkOrder/components/WorkOrderList/index.less +4 -3
- package/dist/esm/WorkOrder/index.js +21 -1
- package/dist/esm/common/constant.d.ts +5 -0
- package/dist/esm/common/constant.js +3 -2
- package/dist/esm/common/imgs/ai.png +0 -0
- package/dist/esm/common/imgs/notification.png +0 -0
- package/dist/esm/common/utils/xzSDK.d.ts +2 -0
- package/dist/esm/common/utils/xzSDK.js +45 -1
- package/dist/esm/index.d.ts +1 -0
- package/dist/esm/index.js +1 -0
- package/dist/esm/model/customizeWorkOrder/index.d.ts +1 -1
- package/dist/esm/model/customizeWorkOrder/index.js +17 -3
- package/dist/esm/model/customizeWorkOrder/types.d.ts +2 -0
- package/dist/esm/model/logicFlow/selector.d.ts +3 -0
- package/dist/esm/model/paymentWorkOrder/selector.d.ts +9 -0
- package/dist/esm/model/servers/api.d.ts +1 -0
- package/dist/esm/model/servers/api.js +9 -0
- package/dist/esm/model/singleShopWorkOrder/selector.d.ts +5 -0
- package/package.json +5 -5
- package/dist/esm/GlobalContext/hook/dist/useGetHasErpData.js +0 -52
- package/dist/esm/GlobalContext/orderQuery/dist/useGetErpAddressData.js +0 -180
- package/dist/esm/GlobalContext/orderQuery/dist/useGetErpLogisticsCompany.js +0 -186
- package/dist/esm/common/utils/dist/submitDataTransOldFormat.js +0 -899
- package/dist/esm/common/utils/dist/tools.js +0 -1326
- package/dist/esm/common/utils/dist/transformWorkOrderData.js +0 -965
- package/dist/esm/model/customizeWorkOrder/dist/api.js +0 -48
- package/dist/esm/model/customizeWorkOrder/dist/index.js +0 -370
- package/dist/esm/model/customizeWorkOrder/dist/selector.js +0 -63
- package/dist/esm/model/customizeWorkOrder/dist/types.js +0 -3
- package/dist/esm/model/dist/global.js +0 -44
- package/dist/esm/model/dist/hooks.js +0 -15
- package/dist/esm/model/dist/login.js +0 -245
- package/dist/esm/model/dist/store.js +0 -30
- package/dist/esm/model/dist/userData.js +0 -41
- package/dist/esm/model/dist/workOrder.js +0 -329
- package/dist/esm/model/flowTemplateDetail/dist/api.js +0 -192
- package/dist/esm/model/flowTemplateDetail/dist/types.js +0 -48
- package/dist/esm/model/logicFlow/dist/api.js +0 -14
- package/dist/esm/model/logicFlow/dist/index.js +0 -235
- package/dist/esm/model/logicFlow/dist/selector.js +0 -18
- package/dist/esm/model/logicFlow/dist/types.js +0 -3
- package/dist/esm/model/paymentWorkOrder/dist/index.js +0 -77
- package/dist/esm/model/paymentWorkOrder/dist/selector.js +0 -36
- package/dist/esm/model/paymentWorkOrder/dist/types.js +0 -3
- package/dist/esm/model/servers/dist/api.js +0 -545
- package/dist/esm/model/servers/dist/request.js +0 -63
- package/dist/esm/model/singleShopWorkOrder/dist/index.js +0 -216
- package/dist/esm/model/singleShopWorkOrder/dist/selector.js +0 -24
- package/dist/esm/model/singleShopWorkOrder/dist/types.js +0 -3
- package/dist/esm/model/types/dist/login.js +0 -3
- package/dist/esm/model/types/dist/singleWorkOrder.js +0 -3
- package/dist/esm/model/types/dist/workOrder.js +0 -3
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
import { Button, Card, Tag, Badge, Spin, Empty } from 'antd';
|
|
2
|
+
import React, { useRef, useEffect } from 'react';
|
|
3
|
+
import { useInfiniteScroll } from 'ahooks';
|
|
4
|
+
import { CloseOutlined } from '@ant-design/icons';
|
|
5
|
+
import { useAppDispatch, useAppSelector } from "../model/hooks";
|
|
6
|
+
import { nodeWorkOrderPending } from "../model/servers/api";
|
|
7
|
+
import moment from 'moment';
|
|
8
|
+
import { setWorkOrderProcessStatus } from "../model/customizeWorkOrder";
|
|
9
|
+
import { WORK_ORDER_STATUS_AI_BUILD } from "../common/constant";
|
|
10
|
+
import styles from "./index.module.less";
|
|
11
|
+
var getTableData = function getTableData(params) {
|
|
12
|
+
return nodeWorkOrderPending(params).then(function (res) {
|
|
13
|
+
var _res$data, _res$data2;
|
|
14
|
+
// console.log('API response:', res?.data);
|
|
15
|
+
return {
|
|
16
|
+
list: (res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.list) || [],
|
|
17
|
+
total: (res === null || res === void 0 ? void 0 : (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.total) || 0
|
|
18
|
+
};
|
|
19
|
+
}).catch(function (error) {
|
|
20
|
+
console.error('API error:', error);
|
|
21
|
+
return {
|
|
22
|
+
list: [],
|
|
23
|
+
total: 0
|
|
24
|
+
};
|
|
25
|
+
});
|
|
26
|
+
};
|
|
27
|
+
var CustomerServiceToDoList = function CustomerServiceToDoList(props) {
|
|
28
|
+
var _ref, _data$list;
|
|
29
|
+
var shopUniqueKey = props.shopUniqueKey;
|
|
30
|
+
var dispatch = useAppDispatch();
|
|
31
|
+
var workOrderProcessStatus = useAppSelector(function (state) {
|
|
32
|
+
var _state$customizeWorkO;
|
|
33
|
+
return (_state$customizeWorkO = state.customizeWorkOrder) === null || _state$customizeWorkO === void 0 ? void 0 : _state$customizeWorkO.workOrderProcessStatus;
|
|
34
|
+
});
|
|
35
|
+
var containerRef = useRef(null);
|
|
36
|
+
var _useInfiniteScroll = useInfiniteScroll(function (d) {
|
|
37
|
+
var page = d ? Math.ceil(d.list.length / 10) + 1 : 1;
|
|
38
|
+
return getTableData({
|
|
39
|
+
pageNo: page,
|
|
40
|
+
pageSize: 10,
|
|
41
|
+
onlyWaitForMe: true,
|
|
42
|
+
onlyCount: false,
|
|
43
|
+
onlyStartNode: true,
|
|
44
|
+
flowTags: ['AI_BUILD'],
|
|
45
|
+
shopUniqueKeyList: [shopUniqueKey]
|
|
46
|
+
});
|
|
47
|
+
}, {
|
|
48
|
+
target: containerRef,
|
|
49
|
+
reloadDeps: [],
|
|
50
|
+
// 添加空的 reloadDeps 避免不必要的重新加载
|
|
51
|
+
isNoMore: function isNoMore(d) {
|
|
52
|
+
var _d$list;
|
|
53
|
+
return (d === null || d === void 0 ? void 0 : d.total) <= (d === null || d === void 0 ? void 0 : (_d$list = d.list) === null || _d$list === void 0 ? void 0 : _d$list.length);
|
|
54
|
+
}
|
|
55
|
+
}),
|
|
56
|
+
data = _useInfiniteScroll.data,
|
|
57
|
+
loading = _useInfiniteScroll.loading,
|
|
58
|
+
reload = _useInfiniteScroll.reload,
|
|
59
|
+
noMore = _useInfiniteScroll.noMore;
|
|
60
|
+
var handleProcess = function handleProcess(item) {
|
|
61
|
+
dispatch({
|
|
62
|
+
type: 'customizeWorkOrder/setCurrentCustomizeRecord',
|
|
63
|
+
payload: {
|
|
64
|
+
flowTemplateName: item === null || item === void 0 ? void 0 : item.flowTemplateName
|
|
65
|
+
}
|
|
66
|
+
});
|
|
67
|
+
dispatch({
|
|
68
|
+
type: 'customizeWorkOrder/setLogicFlowId',
|
|
69
|
+
payload: item.flowTemplateKey
|
|
70
|
+
});
|
|
71
|
+
dispatch({
|
|
72
|
+
type: 'customizeWorkOrder/setFlowWorkOrderId',
|
|
73
|
+
payload: item.flowWorkOrderId
|
|
74
|
+
});
|
|
75
|
+
dispatch({
|
|
76
|
+
type: 'customizeWorkOrder/setFormModalVisible',
|
|
77
|
+
payload: true
|
|
78
|
+
});
|
|
79
|
+
};
|
|
80
|
+
var onCancel = function onCancel() {
|
|
81
|
+
dispatch({
|
|
82
|
+
type: 'customizeWorkOrder/setCustomerServiceToDoListOpen',
|
|
83
|
+
payload: false
|
|
84
|
+
});
|
|
85
|
+
};
|
|
86
|
+
useEffect(function () {
|
|
87
|
+
reload();
|
|
88
|
+
}, []);
|
|
89
|
+
useEffect(function () {
|
|
90
|
+
if (['submit'].includes(workOrderProcessStatus)) {
|
|
91
|
+
reload();
|
|
92
|
+
dispatch(setWorkOrderProcessStatus(''));
|
|
93
|
+
}
|
|
94
|
+
}, [workOrderProcessStatus, dispatch]);
|
|
95
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
96
|
+
className: styles.container,
|
|
97
|
+
onClick: onCancel
|
|
98
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
99
|
+
className: styles.todoSection,
|
|
100
|
+
onClick: function onClick(e) {
|
|
101
|
+
return e.stopPropagation();
|
|
102
|
+
}
|
|
103
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
104
|
+
className: styles.todoTabs
|
|
105
|
+
}, /*#__PURE__*/React.createElement(Badge, {
|
|
106
|
+
count: data === null || data === void 0 ? void 0 : data.total
|
|
107
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
108
|
+
className: styles.todoTab
|
|
109
|
+
}, "\u5BA2\u670D\u5F85\u529E")), /*#__PURE__*/React.createElement(CloseOutlined, {
|
|
110
|
+
onClick: onCancel
|
|
111
|
+
})), /*#__PURE__*/React.createElement("main", {
|
|
112
|
+
className: styles.todoList,
|
|
113
|
+
ref: containerRef
|
|
114
|
+
}, ((data === null || data === void 0 ? void 0 : data.list) || []).length > 0 ? /*#__PURE__*/React.createElement(Spin, {
|
|
115
|
+
spinning: loading
|
|
116
|
+
}, (_ref = (data === null || data === void 0 ? void 0 : data.list) || []) === null || _ref === void 0 ? void 0 : _ref.map(function (item) {
|
|
117
|
+
var _item$jsonMap;
|
|
118
|
+
return /*#__PURE__*/React.createElement(Card, {
|
|
119
|
+
key: item.id,
|
|
120
|
+
className: "".concat(styles.todoItem),
|
|
121
|
+
bodyStyle: {
|
|
122
|
+
padding: '12px 16px'
|
|
123
|
+
}
|
|
124
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
125
|
+
className: styles.todoContent
|
|
126
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
127
|
+
className: styles.todoMain
|
|
128
|
+
}, /*#__PURE__*/React.createElement("div", {
|
|
129
|
+
className: styles.todoDescription
|
|
130
|
+
}, item.buyerNick ? "".concat(item.buyerNick, "\u6709\u4E00\u6761") : '', item === null || item === void 0 ? void 0 : (_item$jsonMap = item.jsonMap) === null || _item$jsonMap === void 0 ? void 0 : _item$jsonMap.scene, " \u5DE5\u5355\u9700\u8981\u5904\u7406\uFF0C\u8BF7\u53CA\u65F6\u5904\u7406"), /*#__PURE__*/React.createElement("div", {
|
|
131
|
+
className: styles.todoMeta
|
|
132
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
133
|
+
className: styles.timestamp
|
|
134
|
+
}, moment(item.created).format('YYYY-MM-DD HH:mm:ss')))), /*#__PURE__*/React.createElement("div", {
|
|
135
|
+
className: styles.todoAction
|
|
136
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(Tag, {
|
|
137
|
+
color: "blue",
|
|
138
|
+
className: styles.aiAction
|
|
139
|
+
}, "AI\u81EA\u52A8\u5EFA\u5355-".concat(WORK_ORDER_STATUS_AI_BUILD[item.flowStatus]))), /*#__PURE__*/React.createElement(Button, {
|
|
140
|
+
type: "primary",
|
|
141
|
+
size: "small",
|
|
142
|
+
ghost: true,
|
|
143
|
+
onClick: function onClick() {
|
|
144
|
+
return handleProcess(item);
|
|
145
|
+
}
|
|
146
|
+
}, "\u53BB\u5904\u7406"))));
|
|
147
|
+
})) : /*#__PURE__*/React.createElement("div", {
|
|
148
|
+
className: styles.todoEmpty
|
|
149
|
+
}, /*#__PURE__*/React.createElement(Empty, {
|
|
150
|
+
description: "\u6682\u65E0\u6570\u636E"
|
|
151
|
+
})), noMore && data !== null && data !== void 0 && (_data$list = data.list) !== null && _data$list !== void 0 && _data$list.length ? /*#__PURE__*/React.createElement("p", {
|
|
152
|
+
className: styles.todoNoMore
|
|
153
|
+
}, "\u6CA1\u6709\u66F4\u591A\u6570\u636E\u4E86") : null)));
|
|
154
|
+
};
|
|
155
|
+
export default CustomerServiceToDoList;
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
.container {
|
|
2
|
+
position: fixed;
|
|
3
|
+
top: 0;
|
|
4
|
+
left: 0;
|
|
5
|
+
width: 100%;
|
|
6
|
+
height: 100%;
|
|
7
|
+
background: rgba(0, 0, 0, 0.5);
|
|
8
|
+
z-index: 90;
|
|
9
|
+
}
|
|
10
|
+
.todoTabs {
|
|
11
|
+
display: flex;
|
|
12
|
+
justify-content: space-between;
|
|
13
|
+
align-items: center;
|
|
14
|
+
padding: 0 16px;
|
|
15
|
+
height: 45px;
|
|
16
|
+
.todoTab {
|
|
17
|
+
display: flex;
|
|
18
|
+
align-items: center;
|
|
19
|
+
justify-content: center;
|
|
20
|
+
width: 90px;
|
|
21
|
+
height: 45px;
|
|
22
|
+
font-size: 16px;
|
|
23
|
+
font-weight: 500;
|
|
24
|
+
color: #1890ff;
|
|
25
|
+
border-bottom: 2px solid #1890ff;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
.todoSection {
|
|
29
|
+
position: absolute;
|
|
30
|
+
bottom: 0;
|
|
31
|
+
left: 0;
|
|
32
|
+
right: 0;
|
|
33
|
+
width: 100%;
|
|
34
|
+
height: 80%;
|
|
35
|
+
background: #fff;
|
|
36
|
+
|
|
37
|
+
.todoList {
|
|
38
|
+
height: calc(100% - 50px);
|
|
39
|
+
overflow-y: auto;
|
|
40
|
+
background: #f0f0f0;
|
|
41
|
+
padding-top: 8px;
|
|
42
|
+
.todoItem {
|
|
43
|
+
margin-bottom: 8px;
|
|
44
|
+
border-radius: 6px;
|
|
45
|
+
transition: all 0.3s;
|
|
46
|
+
|
|
47
|
+
&:hover {
|
|
48
|
+
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
&.highlighted {
|
|
52
|
+
border: 2px dashed #ff4d4f;
|
|
53
|
+
background: #fff2f0;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
.todoContent {
|
|
57
|
+
height: 90px;
|
|
58
|
+
|
|
59
|
+
.todoMain {
|
|
60
|
+
flex: 1;
|
|
61
|
+
|
|
62
|
+
.todoDescription {
|
|
63
|
+
display: -webkit-box;
|
|
64
|
+
-webkit-box-orient: vertical;
|
|
65
|
+
-webkit-line-clamp: 2;
|
|
66
|
+
overflow: hidden;
|
|
67
|
+
text-overflow: ellipsis;
|
|
68
|
+
white-space: normal;
|
|
69
|
+
height: 48px;
|
|
70
|
+
font-size: 14px;
|
|
71
|
+
font-weight: 500;
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
.todoMeta {
|
|
75
|
+
display: flex;
|
|
76
|
+
align-items: center;
|
|
77
|
+
gap: 12px;
|
|
78
|
+
flex-wrap: wrap;
|
|
79
|
+
|
|
80
|
+
.timestamp {
|
|
81
|
+
font-size: 12px;
|
|
82
|
+
color: #999;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
.source {
|
|
86
|
+
font-size: 12px;
|
|
87
|
+
color: #666;
|
|
88
|
+
background: #f5f5f5;
|
|
89
|
+
padding: 2px 6px;
|
|
90
|
+
border-radius: 3px;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.aiAction {
|
|
94
|
+
font-size: 11px;
|
|
95
|
+
margin: 0;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
.todoEmpty {
|
|
102
|
+
display: flex;
|
|
103
|
+
justify-content: center;
|
|
104
|
+
align-items: center;
|
|
105
|
+
height: 100%;
|
|
106
|
+
}
|
|
107
|
+
.todoNoMore {
|
|
108
|
+
display: flex;
|
|
109
|
+
justify-content: center;
|
|
110
|
+
align-items: center;
|
|
111
|
+
height: 32px;
|
|
112
|
+
color: #999;
|
|
113
|
+
font-size: 14px;
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
// 响应式设计
|
|
119
|
+
@media (max-width: 768px) {
|
|
120
|
+
.filterOptions {
|
|
121
|
+
gap: 8px;
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
.todoContent {
|
|
125
|
+
flex-direction: column;
|
|
126
|
+
gap: 12px;
|
|
127
|
+
|
|
128
|
+
.todoAction {
|
|
129
|
+
width: 100%;
|
|
130
|
+
display: flex;
|
|
131
|
+
justify-content: space-between;
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 组件显隐依赖关系查找器 - TypeScript ES Module版本
|
|
3
|
+
* 根据配置文件递归查找组件的所有依赖关系
|
|
4
|
+
*/
|
|
5
|
+
import type { Config, DependencyGraph, CircularDependency, DependencyLevels, ComponentStat, DependencyOptions, DependencyAnalysis } from './types.js';
|
|
6
|
+
/**
|
|
7
|
+
* 查找组件的所有依赖关系(递归)
|
|
8
|
+
* @param componentKey - 要查找依赖的组件key
|
|
9
|
+
* @param config - 显隐配置对象
|
|
10
|
+
* @param visited - 已访问的组件集合,用于避免循环依赖
|
|
11
|
+
* @param dependencies - 依赖组件集合
|
|
12
|
+
* @param options - 查找选项
|
|
13
|
+
* @returns 所有依赖组件的key数组
|
|
14
|
+
*/
|
|
15
|
+
export declare function findAllDependencies(componentKey: string, config: Config, visited?: Set<string>, dependencies?: Set<string>, options?: DependencyOptions): string[];
|
|
16
|
+
/**
|
|
17
|
+
* 获取组件的直接依赖
|
|
18
|
+
* @param componentKey - 组件key
|
|
19
|
+
* @param config - 显隐配置对象
|
|
20
|
+
* @returns 直接依赖的组件key数组
|
|
21
|
+
*/
|
|
22
|
+
export declare function getDirectDependencies(componentKey: string, config: Config): string[];
|
|
23
|
+
/**
|
|
24
|
+
* 构建整个依赖关系图
|
|
25
|
+
* @param config - 显隐配置对象
|
|
26
|
+
* @returns 依赖关系图,格式:{ componentKey: [依赖的组件数组] }
|
|
27
|
+
*/
|
|
28
|
+
export declare function buildDependencyGraph(config: Config): DependencyGraph;
|
|
29
|
+
/**
|
|
30
|
+
* 检测循环依赖
|
|
31
|
+
* @param config - 显隐配置对象
|
|
32
|
+
* @returns 包含循环依赖的组件组
|
|
33
|
+
*/
|
|
34
|
+
export declare function detectCircularDependencies(config: Config): CircularDependency[];
|
|
35
|
+
/**
|
|
36
|
+
* 打印依赖关系树
|
|
37
|
+
* @param componentKey - 组件key
|
|
38
|
+
* @param config - 显隐配置对象
|
|
39
|
+
* @param level - 缩进级别
|
|
40
|
+
* @param visited - 已访问的组件集合
|
|
41
|
+
*/
|
|
42
|
+
export declare function printDependencyTree(componentKey: string, config: Config, level?: number, visited?: Set<string>): void;
|
|
43
|
+
/**
|
|
44
|
+
* 获取组件的依赖层级
|
|
45
|
+
* @param componentKey - 组件key
|
|
46
|
+
* @param config - 显隐配置对象
|
|
47
|
+
* @returns 依赖层级对象
|
|
48
|
+
*/
|
|
49
|
+
export declare function getDependencyLevels(componentKey: string, config: Config): DependencyLevels;
|
|
50
|
+
/**
|
|
51
|
+
* 分析组件的完整依赖信息
|
|
52
|
+
* @param componentKey - 组件key
|
|
53
|
+
* @param config - 显隐配置对象
|
|
54
|
+
* @returns 完整的依赖分析结果
|
|
55
|
+
*/
|
|
56
|
+
export declare function analyzeDependency(componentKey: string, config: Config): DependencyAnalysis;
|
|
57
|
+
/**
|
|
58
|
+
* 获取依赖统计信息
|
|
59
|
+
* @param config - 显隐配置对象
|
|
60
|
+
* @param topN - 返回前N个结果
|
|
61
|
+
* @returns 组件统计信息数组
|
|
62
|
+
*/
|
|
63
|
+
export declare function getDependencyStats(config: Config, topN?: number): {
|
|
64
|
+
mostDependencies: ComponentStat[];
|
|
65
|
+
mostDependedOn: ComponentStat[];
|
|
66
|
+
};
|
|
67
|
+
/**
|
|
68
|
+
* 验证配置文件格式
|
|
69
|
+
* @param config - 要验证的配置对象
|
|
70
|
+
* @returns 验证结果和错误信息
|
|
71
|
+
*/
|
|
72
|
+
export declare function validateConfig(config: unknown): {
|
|
73
|
+
isValid: boolean;
|
|
74
|
+
errors: string[];
|
|
75
|
+
};
|