@riil-frontend/component-topology 4.0.0-beta.9 → 4.0.2
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/build/1.js +2 -2
- package/build/2.js +1 -1
- package/build/index.css +1 -1
- package/build/index.js +32 -32
- package/es/components/BatchAttrMetric/setting.js +47 -7
- package/es/components/Drawer/Drawer.js +60 -0
- package/es/components/Drawer/index.js +1 -59
- package/es/constants/ResourceInfoDisplay.js +1 -4
- package/es/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
- package/es/core/components/AlarmListPanel/hooks/useAlarmList.js +34 -0
- package/es/core/components/AlarmListPanel/index.js +27 -24
- package/es/core/components/AlarmListPanel/index.module.scss +46 -16
- package/es/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
- package/es/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
- package/es/core/components/DisplaySettingDrawer/NodeTag.js +3 -5
- package/es/core/components/DisplaySettingDrawer/NodeTip.js +4 -5
- package/es/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
- package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +25 -0
- package/es/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +8 -0
- package/es/core/components/TopoView/topoView.js +25 -1
- package/es/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
- package/es/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -7
- package/es/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -12
- package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +4 -1
- package/es/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +22 -9
- package/es/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
- package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +21 -0
- package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +5 -0
- package/es/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
- package/es/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +36 -0
- package/es/core/editor/components/settings/propertyViews/node/Setting/Setting.js +2 -2
- package/es/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
- package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +4 -2
- package/es/core/hooks/ht/useHtDataPropertyChangeListener.js +28 -0
- package/es/core/models/AttributeMetricDisplay.js +28 -10
- package/es/core/models/TopoApp.js +12 -7
- package/es/core/models/TopoGraphView.js +3 -1
- package/es/core/models/attributeFormatter/index.js +2 -26
- package/es/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
- package/es/core/models/tagstips/ElementTagTipConfig.js +132 -0
- package/es/core/models/tagstips/utils.js +44 -0
- package/es/core/models/utils/linkUtils.js +3 -1
- package/es/core/services/topo.js +30 -0
- package/es/core/utils/edgeUtil.js +8 -0
- package/es/core/utils/graphLinkUtil.js +22 -0
- package/es/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +24 -2
- package/es/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
- package/es/core/viewer/components/titlebar/BasicTools.js +5 -2
- package/es/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
- package/es/hooks/useAlarm.js +59 -0
- package/es/hooks/useEventData.js +20 -0
- package/es/hooks/useGraphAlarmDisplay.js +68 -18
- package/es/hooks/useManageStatus.js +0 -34
- package/es/hooks/useResourceConfig.js +6 -13
- package/es/hooks/useSelection.js +2 -4
- package/es/hooks/useTopoEdit.js +90 -37
- package/es/models/topoAlarm.js +8 -9
- package/es/models/topoMod.js +16 -8
- package/es/style.js +1 -0
- package/es/topoCenter/components/TopoView.js +6 -1
- package/es/topoCenter/components/Topology.js +7 -1
- package/es/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +2 -2
- package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -15
- package/es/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
- package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +24 -0
- package/es/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
- package/es/topoCenter/components/viewer/displaySetting/LinkTagV2.js +87 -0
- package/es/topoCenter/getTopoData.js +18 -6
- package/es/topoCenter/hooks/editor/useGroupSortResources.js +16 -0
- package/es/topoCenter/hooks/useEdgeExpand.js +25 -0
- package/es/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
- package/es/topoCenter/hooks/useTopoEdit.js +3 -0
- package/es/topoCenter/models/LinkDynamicStyleExecutor.js +38 -10
- package/es/topoCenter/models/TopoCenter.js +3 -11
- package/es/topoCenter/store/functionAuth.js +2 -0
- package/es/topoCenter/utils/SortResourcesUtil.js +3 -3
- package/es/topoCenter/utils/exportData.js +13 -7
- package/es/topoCenter/utils/linkUtil.js +8 -0
- package/es/utils/ResourceConfigUtil.js +4 -5
- package/es/utils/clusterUtil.js +27 -2
- package/es/utils/htElementDataUtil.js +22 -1
- package/es/utils/htElementUtils.js +22 -9
- package/es/utils/showGraphManageStatusUtil.js +67 -0
- package/es/utils/topoData.js +57 -32
- package/lib/components/BatchAttrMetric/setting.js +47 -6
- package/lib/components/Drawer/Drawer.js +73 -0
- package/lib/components/Drawer/index.js +2 -64
- package/lib/constants/ResourceInfoDisplay.js +1 -4
- package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +31 -1
- package/lib/core/components/AlarmListPanel/hooks/useAlarmList.js +40 -0
- package/lib/core/components/AlarmListPanel/index.js +30 -24
- package/lib/core/components/AlarmListPanel/index.module.scss +46 -16
- package/lib/core/components/DisplaySettingDrawer/EdgeFlow.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/EdgeFlowDirection.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/NodeTag.js +3 -6
- package/lib/core/components/DisplaySettingDrawer/NodeTip.js +4 -6
- package/lib/core/components/DisplaySettingDrawer/ResourceDisplay/BasicConfig.js +3 -1
- package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSetting.js +39 -0
- package/lib/core/components/DisplaySettingDrawer/tagtip/CustomSettingDrawer/CustomSettingDrawer.js +17 -0
- package/lib/core/components/TopoView/topoView.js +28 -1
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/GroupNodeList.js +4 -2
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/RelateData.js +0 -8
- package/lib/core/editor/components/settings/propertyViews/group/DataTab/hoooks/useGroupRelateResource.js +13 -13
- package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +5 -1
- package/lib/core/editor/components/settings/propertyViews/group/{DataTab/ClusterGroupRelateData → cluster}/ClusterGroupRelateData.js +23 -9
- package/lib/core/editor/components/settings/propertyViews/layer/DataTab/NodeList.js +2 -5
- package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeIcon.js +31 -0
- package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +6 -0
- package/lib/core/editor/components/settings/propertyViews/node/NodePropertyView.js +3 -1
- package/lib/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +52 -0
- package/lib/core/editor/components/settings/propertyViews/node/Setting/Setting.js +3 -3
- package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +3 -5
- package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +5 -2
- package/lib/core/hooks/ht/useHtDataPropertyChangeListener.js +37 -0
- package/lib/core/models/AttributeMetricDisplay.js +28 -10
- package/lib/core/models/TopoApp.js +10 -5
- package/lib/core/models/TopoGraphView.js +3 -1
- package/lib/core/models/attributeFormatter/index.js +2 -26
- package/lib/core/models/cache/{CiTyeCache.js → CiTypeCache.js} +3 -1
- package/lib/core/models/tagstips/ElementTagTipConfig.js +142 -0
- package/lib/core/models/tagstips/utils.js +59 -0
- package/lib/core/models/utils/linkUtils.js +3 -1
- package/lib/core/services/topo.js +40 -0
- package/lib/core/utils/edgeUtil.js +12 -0
- package/lib/core/utils/graphLinkUtil.js +27 -0
- package/lib/core/viewer/components/plugins/ResourceDetail/ResourceDetail.js +1 -1
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.js +25 -2
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ClusterMemberTable.module.scss +1 -1
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfo.js +7 -101
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/BaseInfoBlock.js +13 -3
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverview.js +166 -89
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/ResourceOverviewMetric.js +7 -14
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/Configurator/index.js +38 -13
- package/lib/core/viewer/components/titlebar/BasicTools.js +6 -2
- package/lib/core/viewer/components/titlebar/widgets/NodesDragSwitch.js +4 -2
- package/lib/hooks/useAlarm.js +61 -0
- package/lib/hooks/useEventData.js +28 -0
- package/lib/hooks/useGraphAlarmDisplay.js +69 -18
- package/lib/hooks/useManageStatus.js +0 -34
- package/lib/hooks/useResourceConfig.js +6 -12
- package/lib/hooks/useSelection.js +1 -5
- package/lib/hooks/useTopoEdit.js +94 -36
- package/lib/models/topoAlarm.js +8 -9
- package/lib/models/topoMod.js +15 -8
- package/lib/style.js +1 -0
- package/lib/topoCenter/components/TopoView.js +8 -1
- package/lib/topoCenter/components/Topology.js +8 -1
- package/lib/topoCenter/components/editor/propertyViews/LayerRelatedResourceList.js +1 -1
- package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/AddLinkDrawer.js +35 -14
- package/lib/topoCenter/components/editor/propertyViews/edge/addLinkDrawer/components/editLinkInfo.js +11 -2
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.js +35 -0
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagCommonRidioGroup.module.scss +23 -0
- package/lib/topoCenter/components/viewer/displaySetting/LinkTagV2.js +102 -0
- package/lib/topoCenter/getTopoData.js +19 -6
- package/lib/topoCenter/hooks/editor/useGroupSortResources.js +21 -0
- package/lib/topoCenter/hooks/useEdgeExpand.js +33 -0
- package/lib/topoCenter/hooks/useLinkDynamicStyle.js +1 -1
- package/lib/topoCenter/hooks/useTopoEdit.js +3 -0
- package/lib/topoCenter/models/LinkDynamicStyleExecutor.js +38 -9
- package/lib/topoCenter/models/TopoCenter.js +3 -12
- package/lib/topoCenter/store/functionAuth.js +2 -0
- package/lib/topoCenter/utils/SortResourcesUtil.js +3 -3
- package/lib/topoCenter/utils/exportData.js +14 -7
- package/lib/topoCenter/utils/linkUtil.js +15 -0
- package/lib/utils/ResourceConfigUtil.js +4 -4
- package/lib/utils/clusterUtil.js +34 -2
- package/lib/utils/htElementDataUtil.js +38 -1
- package/lib/utils/htElementUtils.js +24 -9
- package/lib/utils/showGraphManageStatusUtil.js +78 -0
- package/lib/utils/topoData.js +59 -32
- package/package.json +5 -5
|
@@ -5,6 +5,7 @@ import EditButton from "./widgets/EditButton";
|
|
|
5
5
|
import NodesDragSwitch from "./widgets/NodesDragSwitch";
|
|
6
6
|
import AlarmListShowButton from "./widgets/AlarmListShowButton";
|
|
7
7
|
import SettingButton from "./widgets/SettingButtonWidget";
|
|
8
|
+
import useEventData from "../../../../hooks/useEventData";
|
|
8
9
|
export default function BasicTools(props) {
|
|
9
10
|
var topo = props.topo,
|
|
10
11
|
_props$showEditButton = props.showEditButton,
|
|
@@ -15,8 +16,10 @@ export default function BasicTools(props) {
|
|
|
15
16
|
alarmState = _topo$store$useModel[0],
|
|
16
17
|
alarmDispatchers = _topo$store$useModel[1];
|
|
17
18
|
|
|
18
|
-
var alarmPanelIsOpen = alarmState.alarmPanelIsOpen
|
|
19
|
-
|
|
19
|
+
var alarmPanelIsOpen = alarmState.alarmPanelIsOpen;
|
|
20
|
+
var alarmData = useEventData({
|
|
21
|
+
topo: topo
|
|
22
|
+
});
|
|
20
23
|
return /*#__PURE__*/React.createElement(_Box, {
|
|
21
24
|
direction: "row",
|
|
22
25
|
spacing: 8
|
|
@@ -47,9 +47,11 @@ export default function NodesDragSwitch(props) {
|
|
|
47
47
|
|
|
48
48
|
topo.getGraphView().setMovableFunc(function (data) {
|
|
49
49
|
return !newLock; // self._graphView.dm().sm().getSelection().size()===1 && !(data instanceof ht.Grid);
|
|
50
|
-
}); //
|
|
50
|
+
}); // 开锁状态下禁用悬停展示悬浮框,TODO 待迁移走独立
|
|
51
51
|
|
|
52
|
-
topo.attributeMetricDisplay.updateTagsTips();
|
|
52
|
+
topo.attributeMetricDisplay.updateTagsTips(); // 开锁状态可移动链路指标位置
|
|
53
|
+
|
|
54
|
+
topo.getHtTopo().setEdgeIndicatorCanDrag(!newLock);
|
|
53
55
|
};
|
|
54
56
|
|
|
55
57
|
var title = lock ? '解锁后可进行拓扑图标的移动' : '锁上后禁用图标移动';
|
package/es/hooks/useAlarm.js
CHANGED
|
@@ -14,6 +14,63 @@ export default function useAlarm(options) {
|
|
|
14
14
|
useGraphAlarmDisplay({
|
|
15
15
|
topo: topo
|
|
16
16
|
});
|
|
17
|
+
|
|
18
|
+
var handleRiskData = function handleRiskData(receivedData) {
|
|
19
|
+
var _risks;
|
|
20
|
+
|
|
21
|
+
// 非在活状态:
|
|
22
|
+
// 已修复 recovered
|
|
23
|
+
// 已关闭 closed
|
|
24
|
+
var prevRisks = topo.store.getModelState('topoAlarm').risks;
|
|
25
|
+
|
|
26
|
+
var isLiveRisk = function isLiveRisk(data) {
|
|
27
|
+
return ['recovered', 'closed'].indexOf(data.status) === -1;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
var hasCiPermission = function hasCiPermission(data) {
|
|
31
|
+
var _data$resourceId;
|
|
32
|
+
|
|
33
|
+
var ciId = (_data$resourceId = data.resourceId) !== null && _data$resourceId !== void 0 ? _data$resourceId : data.ciId;
|
|
34
|
+
var ci = topo.dataModel.getDataById(ciId);
|
|
35
|
+
return ci && ci.operation;
|
|
36
|
+
}; // 合并
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
var risks = prevRisks.map(function (risk) {
|
|
40
|
+
var newRisk = receivedData.find(function (item) {
|
|
41
|
+
return item.id === risk.id;
|
|
42
|
+
});
|
|
43
|
+
return newRisk || risk;
|
|
44
|
+
}); // 新的
|
|
45
|
+
|
|
46
|
+
var addRisks = receivedData.filter(function (risk) {
|
|
47
|
+
return !prevRisks.find(function (item) {
|
|
48
|
+
return item.id === risk.id;
|
|
49
|
+
});
|
|
50
|
+
}).filter(hasCiPermission);
|
|
51
|
+
|
|
52
|
+
(_risks = risks).push.apply(_risks, addRisks); // 过滤掉无权限、非在活的
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
risks = risks.filter(isLiveRisk).filter(hasCiPermission).sort(function (a, b) {
|
|
56
|
+
return a.executeTime - b.executeTime;
|
|
57
|
+
});
|
|
58
|
+
rlog.debug('更新风险', {
|
|
59
|
+
prevRisks: prevRisks,
|
|
60
|
+
receivedData: receivedData,
|
|
61
|
+
risks: risks
|
|
62
|
+
});
|
|
63
|
+
topo.store.getModelDispatchers('topoAlarm').update({
|
|
64
|
+
risks: risks
|
|
65
|
+
});
|
|
66
|
+
|
|
67
|
+
if (addRisks.length) {
|
|
68
|
+
topo.alarm.updateState({
|
|
69
|
+
alarmPanelIsOpen: true
|
|
70
|
+
});
|
|
71
|
+
}
|
|
72
|
+
};
|
|
73
|
+
|
|
17
74
|
useCbbEventListener("topo", {
|
|
18
75
|
name: "topo",
|
|
19
76
|
onMessage: function onMessage(data) {
|
|
@@ -21,6 +78,8 @@ export default function useAlarm(options) {
|
|
|
21
78
|
|
|
22
79
|
if (data.type === "alarm") {
|
|
23
80
|
topo.alarm.handleAlarmEvent(data.data);
|
|
81
|
+
} else if (data.type === "risk") {
|
|
82
|
+
handleRiskData(data.data);
|
|
24
83
|
}
|
|
25
84
|
}
|
|
26
85
|
});
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
|
2
|
+
export default function useEventData(props) {
|
|
3
|
+
var topo = props.topo;
|
|
4
|
+
var topoDatas = topo.dataModel.useDatas();
|
|
5
|
+
|
|
6
|
+
var _topo$store$useModelS = topo.store.useModelState('topoAlarm'),
|
|
7
|
+
risks = _topo$store$useModelS.risks,
|
|
8
|
+
alarmData = _topo$store$useModelS.alarmData;
|
|
9
|
+
|
|
10
|
+
var data = [].concat((alarmData || []).map(function (item) {
|
|
11
|
+
return _extends({}, item, {
|
|
12
|
+
eventType: 'alarm'
|
|
13
|
+
});
|
|
14
|
+
}), (risks || []).map(function (item) {
|
|
15
|
+
return _extends({}, item, {
|
|
16
|
+
eventType: 'risk'
|
|
17
|
+
});
|
|
18
|
+
}));
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
@@ -1,12 +1,40 @@
|
|
|
1
1
|
import { useEffect } from "react";
|
|
2
2
|
import rlog from "@riil-frontend/component-topology-utils/es/rlog";
|
|
3
3
|
import { getElements } from "../utils/htElementUtils";
|
|
4
|
+
import { removeManageStatus, showManageStatus } from "../utils/showGraphManageStatusUtil";
|
|
5
|
+
|
|
6
|
+
function getCiAlarmLevels(alarmList, risks) {
|
|
7
|
+
var ciIdLevelMap = {};
|
|
8
|
+
[].concat(alarmList, risks.map(function (item) {
|
|
9
|
+
var _item$resourceId;
|
|
10
|
+
|
|
11
|
+
return {
|
|
12
|
+
id: (_item$resourceId = item.resourceId) !== null && _item$resourceId !== void 0 ? _item$resourceId : item.ciId,
|
|
13
|
+
level: 5
|
|
14
|
+
};
|
|
15
|
+
})).forEach(function (item) {
|
|
16
|
+
var level = ciIdLevelMap[item.id]; // 优先显示高等级告警。值小的等级高
|
|
17
|
+
|
|
18
|
+
if (!level || item.level < level) {
|
|
19
|
+
level = item.level;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
ciIdLevelMap[item.id] = level;
|
|
23
|
+
});
|
|
24
|
+
return Object.keys(ciIdLevelMap).map(function (id) {
|
|
25
|
+
return {
|
|
26
|
+
id: id,
|
|
27
|
+
level: ciIdLevelMap[id]
|
|
28
|
+
};
|
|
29
|
+
});
|
|
30
|
+
}
|
|
4
31
|
/**
|
|
5
32
|
* 告警显示到ht拓扑
|
|
6
33
|
*
|
|
7
34
|
* @param {*} options
|
|
8
35
|
*/
|
|
9
36
|
|
|
37
|
+
|
|
10
38
|
export default function useGraphAlarmDisplay(options) {
|
|
11
39
|
var topo = options.topo;
|
|
12
40
|
var store = topo.store;
|
|
@@ -15,30 +43,47 @@ export default function useGraphAlarmDisplay(options) {
|
|
|
15
43
|
topoState = _topo$store$useModel[0],
|
|
16
44
|
topoDispatchers = _topo$store$useModel[1];
|
|
17
45
|
|
|
18
|
-
var graphLoaded = topoState.graphLoaded
|
|
46
|
+
var graphLoaded = topoState.graphLoaded,
|
|
47
|
+
viewState = topoState.viewState;
|
|
48
|
+
var isEditMode = viewState === 'edit';
|
|
19
49
|
|
|
20
50
|
var _topo$alarm$useState = topo.alarm.useState(),
|
|
21
51
|
alarmIsOpened = _topo$alarm$useState.alarmIsOpened,
|
|
22
|
-
alarmList = _topo$alarm$useState.alarmList
|
|
52
|
+
alarmList = _topo$alarm$useState.alarmList,
|
|
53
|
+
risks = _topo$alarm$useState.risks;
|
|
23
54
|
|
|
24
55
|
var resources = topo.dataModel.useCis();
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
56
|
+
|
|
57
|
+
function getCisEventLevel() {
|
|
58
|
+
return getCiAlarmLevels(alarmList || [], risks).filter(function (alarm) {
|
|
59
|
+
var resource = resources.find(function (item) {
|
|
60
|
+
return item.id === alarm.id;
|
|
61
|
+
});
|
|
62
|
+
|
|
63
|
+
if (!resource) {
|
|
64
|
+
return false;
|
|
29
65
|
}
|
|
30
66
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
}); // 未监控不显示告警
|
|
67
|
+
return true;
|
|
68
|
+
});
|
|
69
|
+
}
|
|
35
70
|
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
71
|
+
useEffect(function () {
|
|
72
|
+
showAlarm();
|
|
73
|
+
showManageStatus({
|
|
74
|
+
topo: topo,
|
|
75
|
+
resources: resources,
|
|
76
|
+
isEditMode: isEditMode,
|
|
77
|
+
graphLoaded: graphLoaded,
|
|
78
|
+
cisEventLevel: getCisEventLevel()
|
|
79
|
+
});
|
|
39
80
|
|
|
40
|
-
|
|
41
|
-
|
|
81
|
+
function showAlarm() {
|
|
82
|
+
if (!graphLoaded || !alarmIsOpened || isEditMode) {
|
|
83
|
+
return;
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
var finalAlarms = getCisEventLevel(); // 将告警级别放入ht元素,便于测试
|
|
42
87
|
|
|
43
88
|
getElements(topo.getDataModel()).filter(function (item) {
|
|
44
89
|
return !!item.getTag();
|
|
@@ -52,8 +97,13 @@ export default function useGraphAlarmDisplay(options) {
|
|
|
52
97
|
}); // 更新到ht拓扑
|
|
53
98
|
|
|
54
99
|
topo.view.loadAlarm(finalAlarms);
|
|
55
|
-
}
|
|
100
|
+
}
|
|
56
101
|
|
|
57
|
-
|
|
58
|
-
|
|
102
|
+
return function () {
|
|
103
|
+
removeManageStatus({
|
|
104
|
+
topo: topo,
|
|
105
|
+
resources: resources
|
|
106
|
+
});
|
|
107
|
+
};
|
|
108
|
+
}, [isEditMode, graphLoaded, resources, alarmIsOpened, alarmList, risks]);
|
|
59
109
|
}
|
|
@@ -57,38 +57,4 @@ export default function useManageStatus(props) {
|
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
});
|
|
60
|
-
useEffect(function () {
|
|
61
|
-
// 首次加载和监控状态变化后,更新节点和连线置灰状态
|
|
62
|
-
if (!isEditMode && graphLoaded) {
|
|
63
|
-
resources.forEach(function (resource) {
|
|
64
|
-
var type = resource.type,
|
|
65
|
-
id = resource.id,
|
|
66
|
-
manageStatus = resource.manageStatus,
|
|
67
|
-
permission = resource.permission;
|
|
68
|
-
var isNotMonite = manageStatus === 0;
|
|
69
|
-
var readable = !!(permission !== null && permission !== void 0 && permission.readable);
|
|
70
|
-
var showNotMoniteStatus = isNotMonite && readable;
|
|
71
|
-
var element = topo.getDataModel().getDataByTag(id);
|
|
72
|
-
if (!element) return;
|
|
73
|
-
|
|
74
|
-
if (type === 'node') {
|
|
75
|
-
try {
|
|
76
|
-
if (showNotMoniteStatus) {
|
|
77
|
-
topo.getHtTopo().setNodeStyleIcon(element, {
|
|
78
|
-
styleIcon: 'unMoniter',
|
|
79
|
-
icon: 'resource.subIcon.unMoniter'
|
|
80
|
-
});
|
|
81
|
-
} else {
|
|
82
|
-
element.removeStyleIcon('unMoniter');
|
|
83
|
-
}
|
|
84
|
-
} catch (error) {
|
|
85
|
-
rlog.error('设置监控图标异常', element, error);
|
|
86
|
-
} // setElementRuntimeStyle(element, 'opacity', showNotMoniteStatus ? 0.3 : undefined)
|
|
87
|
-
|
|
88
|
-
} else {
|
|
89
|
-
setElementRuntimeStyle(element, 'color', showNotMoniteStatus ? '#C9CED2' : undefined);
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
}
|
|
93
|
-
}, [isEditMode, graphLoaded, resources]);
|
|
94
60
|
}
|
|
@@ -5,7 +5,8 @@ import { useMemo, useState, useEffect } from 'react';
|
|
|
5
5
|
import rlog from '@riil-frontend/component-topology-utils/es/rlog';
|
|
6
6
|
import { DEFAULT_GROUP } from "../utils/template";
|
|
7
7
|
import ResourceConfigUtil from "../utils/ResourceConfigUtil";
|
|
8
|
-
import { getEdges, getNodes } from "../utils/htElementUtils";
|
|
8
|
+
import { getEdges, getElements, getNodes } from "../utils/htElementUtils";
|
|
9
|
+
import { getAllEdgeResourceIds as _getAllEdgeResourceIds, isResourceNodeElement } from "../utils/htElementDataUtil";
|
|
9
10
|
export default function (props) {
|
|
10
11
|
var topo = props.topo;
|
|
11
12
|
var store = topo.store;
|
|
@@ -262,17 +263,7 @@ export default function (props) {
|
|
|
262
263
|
}
|
|
263
264
|
|
|
264
265
|
var getAllNodeResourceIds = function getAllNodeResourceIds() {
|
|
265
|
-
return
|
|
266
|
-
return !!node.getTag();
|
|
267
|
-
}).map(function (node) {
|
|
268
|
-
return node.getTag();
|
|
269
|
-
});
|
|
270
|
-
};
|
|
271
|
-
|
|
272
|
-
var getAllEdgeResourceIds = function getAllEdgeResourceIds() {
|
|
273
|
-
return getEdges(topo.getDataModel()).filter(function (node) {
|
|
274
|
-
return !!node.getTag();
|
|
275
|
-
}).map(function (node) {
|
|
266
|
+
return getElements(topo.getDataModel()).filter(isResourceNodeElement).map(function (node) {
|
|
276
267
|
return node.getTag();
|
|
277
268
|
});
|
|
278
269
|
};
|
|
@@ -282,7 +273,9 @@ export default function (props) {
|
|
|
282
273
|
getConfig: getConfig,
|
|
283
274
|
updateConfig: updateConfig,
|
|
284
275
|
getAllNodeResourceIds: getAllNodeResourceIds,
|
|
285
|
-
getAllEdgeResourceIds: getAllEdgeResourceIds
|
|
276
|
+
getAllEdgeResourceIds: function getAllEdgeResourceIds() {
|
|
277
|
+
return _getAllEdgeResourceIds(topo.getDataModel());
|
|
278
|
+
},
|
|
286
279
|
getViewResources: getViewResources,
|
|
287
280
|
getGroups: getGroups,
|
|
288
281
|
getGroupConfigByElement: ResourceConfigUtil.getGroupConfigByElement,
|
package/es/hooks/useSelection.js
CHANGED
|
@@ -20,10 +20,8 @@ function useSelection(props) {
|
|
|
20
20
|
var selectionModel = topo.getSelectionModel();
|
|
21
21
|
var htSelection = selectionModel.getSelection().getArray(); // TODO 对比变更更新
|
|
22
22
|
|
|
23
|
-
var selectionArr = htSelection.map(getElementData);
|
|
24
|
-
|
|
25
|
-
return element.id;
|
|
26
|
-
}));
|
|
23
|
+
var selectionArr = htSelection.map(getElementData); // rlog.info("updateSelection", selectionArr.map((element) => element.id));
|
|
24
|
+
|
|
27
25
|
setSelection(selectionArr);
|
|
28
26
|
} catch (e) {
|
|
29
27
|
rlog.error("updateSelection error", e);
|
package/es/hooks/useTopoEdit.js
CHANGED
|
@@ -9,10 +9,12 @@ import { TopoEvent } from "@riil-frontend/component-topology-graph";
|
|
|
9
9
|
import { filterElementsByNodeId } from "../utils/format";
|
|
10
10
|
import { TPL_BLANK, TPL_TREE } from "../utils/template";
|
|
11
11
|
import topoPermissonUtil from "../utils/topoPermissionUtil";
|
|
12
|
-
import { getElements,
|
|
12
|
+
import { getElements, getGroupElementByTag, isEdge, isExistedElement, isGroup, isLayer, isNode } from "../utils/htElementUtils";
|
|
13
13
|
import useResourceConfig from "./useResourceConfig";
|
|
14
14
|
import useGroupAddResource from "./useGroupAddResource";
|
|
15
15
|
import { findGroupChildren } from "../utils/topoData";
|
|
16
|
+
import { getGroupChildrenResourceElements } from "../utils/htElementDataUtil";
|
|
17
|
+
import { isClusterHtElement, isClusterMemberHtElement } from "../utils/clusterUtil";
|
|
16
18
|
|
|
17
19
|
var useTopoEdit = function useTopoEdit(params) {
|
|
18
20
|
var topo = params.topo,
|
|
@@ -108,11 +110,10 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
108
110
|
if (!isLayerTopo && config.layers.length) {
|
|
109
111
|
topoDispatchers.setTopoType(TPL_TREE);
|
|
110
112
|
} // 更新配置
|
|
113
|
+
// resourceConfig.updateConfig(config);
|
|
114
|
+
// 更新配置对应的资源、链路
|
|
115
|
+
// editDispatchers.fetchDataByConfig();
|
|
111
116
|
|
|
112
|
-
|
|
113
|
-
resourceConfig.updateConfig(config); // 更新配置对应的资源、链路
|
|
114
|
-
|
|
115
|
-
editDispatchers.fetchDataByConfig();
|
|
116
117
|
};
|
|
117
118
|
|
|
118
119
|
var deleteLayer = function deleteLayer(layerElement) {
|
|
@@ -194,7 +195,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
194
195
|
return;
|
|
195
196
|
}
|
|
196
197
|
|
|
197
|
-
if (!
|
|
198
|
+
if (!getGroupChildrenResourceElements(group).length || isClusterHtElement(group)) {
|
|
198
199
|
doDelete();
|
|
199
200
|
return;
|
|
200
201
|
} // 有子节点时需要确认
|
|
@@ -295,6 +296,11 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
295
296
|
var handleDeleteNode = function handleDeleteNode(element) {
|
|
296
297
|
var _topo$options$editor;
|
|
297
298
|
|
|
299
|
+
// 集群内成员禁用删除
|
|
300
|
+
if (isClusterMemberHtElement(element)) {
|
|
301
|
+
return;
|
|
302
|
+
}
|
|
303
|
+
|
|
298
304
|
var data = element.getAttrObject(); // eslint-disable-next-line no-case-declarations
|
|
299
305
|
|
|
300
306
|
var nodeDeleteable = params.nodeDeleteable || ((_topo$options$editor = topo.options.editor) === null || _topo$options$editor === void 0 ? void 0 : _topo$options$editor.nodeDeleteable);
|
|
@@ -390,8 +396,14 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
390
396
|
}
|
|
391
397
|
}
|
|
392
398
|
};
|
|
399
|
+
/**
|
|
400
|
+
* 获得未存在的连线元素
|
|
401
|
+
* @param {*} elements
|
|
402
|
+
* @returns
|
|
403
|
+
*/
|
|
404
|
+
|
|
393
405
|
|
|
394
|
-
function
|
|
406
|
+
function findUNExistedLinkElements(elements) {
|
|
395
407
|
var existedLinkIds = resourceConfig.getAllEdgeResourceIds();
|
|
396
408
|
var newLinkElements = elements.filter(function (element) {
|
|
397
409
|
return (element.type === "link" || element.type === "linkGroup") && existedLinkIds.indexOf(element.id) === -1;
|
|
@@ -429,7 +441,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
429
441
|
elements = _yield$editDispatcher2.elements;
|
|
430
442
|
// 区域里的子区域及子区域的节点、新增的链路
|
|
431
443
|
nodeElements = findGroupChildren(elements, group);
|
|
432
|
-
newLinkElements =
|
|
444
|
+
newLinkElements = findUNExistedLinkElements(elements);
|
|
433
445
|
updateElements = [].concat(nodeElements, newLinkElements);
|
|
434
446
|
|
|
435
447
|
if (updateElements.length) {
|
|
@@ -517,7 +529,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
517
529
|
|
|
518
530
|
case 7:
|
|
519
531
|
_yield$editDispatcher3 = _context11.sent;
|
|
520
|
-
elements = _yield$editDispatcher3.
|
|
532
|
+
elements = _yield$editDispatcher3.elements;
|
|
521
533
|
saveBind(TopoEvent.DATA_TYPE_RESOURCE_COMBO, elements); // 临时放这里,仅拓扑中心有
|
|
522
534
|
|
|
523
535
|
if (topo.linkDynamicStyleExecutor) {
|
|
@@ -540,7 +552,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
540
552
|
|
|
541
553
|
function _addLayerResources() {
|
|
542
554
|
_addLayerResources = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee12(group, newResourceIds) {
|
|
543
|
-
var _yield$editDispatcher4, elements,
|
|
555
|
+
var _yield$editDispatcher4, elements, data;
|
|
544
556
|
|
|
545
557
|
return _regeneratorRuntime.wrap(function _callee12$(_context12) {
|
|
546
558
|
while (1) {
|
|
@@ -556,32 +568,29 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
556
568
|
case 4:
|
|
557
569
|
_yield$editDispatcher4 = _context12.sent;
|
|
558
570
|
elements = _yield$editDispatcher4.elements;
|
|
559
|
-
|
|
560
|
-
return !isExistedElement(topo.getDataModel(), element);
|
|
561
|
-
}); // 过滤出新增的资源和链路
|
|
562
|
-
|
|
571
|
+
// 过滤出新增的资源和链路
|
|
563
572
|
data = {
|
|
564
|
-
groups:
|
|
573
|
+
groups: elements.filter(function (ele) {
|
|
565
574
|
return ele.type === 'group';
|
|
566
575
|
}),
|
|
567
|
-
nodes:
|
|
576
|
+
nodes: elements.filter(function (ele) {
|
|
568
577
|
return ele.type === 'node';
|
|
569
578
|
}),
|
|
570
|
-
lines:
|
|
579
|
+
lines: elements.filter(function (ele) {
|
|
571
580
|
return ele.type === 'link';
|
|
572
581
|
})
|
|
573
582
|
}; // 添加到分层
|
|
574
583
|
|
|
575
|
-
_context12.next =
|
|
576
|
-
return topo.
|
|
584
|
+
_context12.next = 9;
|
|
585
|
+
return topo.updateElements(data);
|
|
577
586
|
|
|
578
|
-
case
|
|
587
|
+
case 9:
|
|
579
588
|
// 临时放这里,仅拓扑中心有
|
|
580
589
|
if (topo.linkDynamicStyleExecutor) {
|
|
581
590
|
topo.linkDynamicStyleExecutor.execute();
|
|
582
591
|
}
|
|
583
592
|
|
|
584
|
-
case
|
|
593
|
+
case 10:
|
|
585
594
|
case "end":
|
|
586
595
|
return _context12.stop();
|
|
587
596
|
}
|
|
@@ -855,7 +864,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
855
864
|
|
|
856
865
|
var bindNodeResource = /*#__PURE__*/function () {
|
|
857
866
|
var _ref7 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime.mark(function _callee8(params) {
|
|
858
|
-
var id, oldResId, newResId, node, groupElement, config, groupId, groupTag, _yield$editDispatcher, elements,
|
|
867
|
+
var id, oldResId, newResId, node, groupElement, htTopo, config, groupId, groupTag, _yield$editDispatcher, elements, newData, newNodeElements, newLinkElements, newDatas, createElementsData, sm, dm, newElement, replaceOrAddRes;
|
|
859
868
|
|
|
860
869
|
return _regeneratorRuntime.wrap(function _callee8$(_context8) {
|
|
861
870
|
while (1) {
|
|
@@ -874,6 +883,7 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
874
883
|
node = topo.getDataModel().getDataById(id); // 节点所属容器
|
|
875
884
|
|
|
876
885
|
groupElement = node.getParent();
|
|
886
|
+
htTopo = topo.getHtTopo();
|
|
877
887
|
config = resourceConfig.getConfig();
|
|
878
888
|
|
|
879
889
|
if (groupElement) {
|
|
@@ -898,42 +908,85 @@ var useTopoEdit = function useTopoEdit(params) {
|
|
|
898
908
|
config.resources = replaceOrAddRes(config.resources, oldResId, newResId);
|
|
899
909
|
}
|
|
900
910
|
|
|
901
|
-
_context8.next =
|
|
911
|
+
_context8.next = 10;
|
|
902
912
|
return resourceConfig.updateConfig(config);
|
|
903
913
|
|
|
904
|
-
case
|
|
905
|
-
_context8.next =
|
|
914
|
+
case 10:
|
|
915
|
+
_context8.next = 12;
|
|
906
916
|
return editDispatchers.fetchDataByConfig();
|
|
907
917
|
|
|
908
|
-
case
|
|
918
|
+
case 12:
|
|
909
919
|
_yield$editDispatcher = _context8.sent;
|
|
910
|
-
elements = _yield$editDispatcher.
|
|
911
|
-
|
|
912
|
-
|
|
920
|
+
elements = _yield$editDispatcher.elements;
|
|
921
|
+
newData = elements.find(function (item) {
|
|
922
|
+
return item.id === newResId;
|
|
923
|
+
});
|
|
924
|
+
|
|
925
|
+
if (newData.type === 'group') {
|
|
926
|
+
newNodeElements = [newData].concat(findGroupChildren(elements, newData));
|
|
927
|
+
} else {
|
|
928
|
+
newNodeElements = [newData];
|
|
929
|
+
}
|
|
930
|
+
|
|
931
|
+
newLinkElements = findUNExistedLinkElements(elements); // 过滤出关联的节点和连线,通知ht更新
|
|
932
|
+
// const newDatas = filterElementsByNodeId(elements, newResId);
|
|
913
933
|
|
|
914
|
-
|
|
915
|
-
|
|
934
|
+
newDatas = [].concat(newNodeElements, newLinkElements);
|
|
935
|
+
|
|
936
|
+
if (newDatas.length) {
|
|
937
|
+
_context8.next = 22;
|
|
916
938
|
break;
|
|
917
939
|
}
|
|
918
940
|
|
|
919
941
|
_Message.error("关联资源失败");
|
|
920
942
|
|
|
943
|
+
rlog.warn("关联资源失败");
|
|
921
944
|
return _context8.abrupt("return", false);
|
|
922
945
|
|
|
923
|
-
case
|
|
924
|
-
|
|
925
|
-
|
|
946
|
+
case 22:
|
|
947
|
+
createElementsData = {
|
|
948
|
+
groups: newDatas.filter(function (item) {
|
|
949
|
+
return item.type === 'group';
|
|
950
|
+
}),
|
|
951
|
+
nodes: newDatas.filter(function (item) {
|
|
952
|
+
return item.type === 'node';
|
|
953
|
+
}),
|
|
954
|
+
links: newDatas.filter(function (item) {
|
|
955
|
+
return item.type === 'link';
|
|
956
|
+
}),
|
|
957
|
+
linkGroups: newDatas.filter(function (item) {
|
|
958
|
+
return item.type === 'linkGroup';
|
|
959
|
+
})
|
|
960
|
+
};
|
|
961
|
+
rlog.debug('批量创建元素', newDatas, createElementsData);
|
|
962
|
+
htTopo.createElements(createElementsData);
|
|
963
|
+
sm = htTopo.getGraphView().sm();
|
|
964
|
+
dm = htTopo.getGraphView().dm(); // 恢复图标、大小、位置
|
|
926
965
|
|
|
927
|
-
|
|
966
|
+
newElement = dm.getDataByTag(newData.id);
|
|
967
|
+
|
|
968
|
+
if (newElement) {
|
|
969
|
+
newElement.setSize(node.getSize());
|
|
970
|
+
newElement.setPosition(node.getPosition());
|
|
971
|
+
newElement.setImage(node.getImage());
|
|
972
|
+
}
|
|
973
|
+
|
|
974
|
+
sm.setSelection([newElement]); // 移除旧节点
|
|
975
|
+
|
|
976
|
+
dm.remove(node); // saveBind(TopoEvent.DATA_TYPE_RESOURCE_SINGLE, newDatas);
|
|
977
|
+
// node.a("customName", null);
|
|
978
|
+
// 删除关联在节点上的出口链路
|
|
979
|
+
|
|
980
|
+
_context8.next = 33;
|
|
928
981
|
return deleteExLink(node);
|
|
929
982
|
|
|
930
|
-
case
|
|
983
|
+
case 33:
|
|
931
984
|
// 临时放这里,仅拓扑中心有
|
|
932
985
|
if (topo.linkDynamicStyleExecutor) {
|
|
933
986
|
topo.linkDynamicStyleExecutor.execute();
|
|
934
987
|
}
|
|
935
988
|
|
|
936
|
-
case
|
|
989
|
+
case 34:
|
|
937
990
|
case "end":
|
|
938
991
|
return _context8.stop();
|
|
939
992
|
}
|
package/es/models/topoAlarm.js
CHANGED
|
@@ -13,13 +13,15 @@ export default function (topo) {
|
|
|
13
13
|
return {
|
|
14
14
|
// 定义 model 的初始 state
|
|
15
15
|
state: {
|
|
16
|
-
|
|
16
|
+
events: [],
|
|
17
17
|
alarmOpening: false,
|
|
18
18
|
alarmIsOpened: true,
|
|
19
19
|
alarmRecord: [],
|
|
20
20
|
alarmDoc: {},
|
|
21
21
|
alarmDatas: [],
|
|
22
|
-
alarmPanelIsOpen: false
|
|
22
|
+
alarmPanelIsOpen: false,
|
|
23
|
+
risks: [],
|
|
24
|
+
currentTopoId: undefined
|
|
23
25
|
},
|
|
24
26
|
// 定义改变该模型状态的纯函数
|
|
25
27
|
reducers: {
|
|
@@ -40,7 +42,9 @@ export default function (topo) {
|
|
|
40
42
|
case 0:
|
|
41
43
|
_this.update({
|
|
42
44
|
alarmDoc: {},
|
|
43
|
-
|
|
45
|
+
alarmList: [],
|
|
46
|
+
alarmRecord: [],
|
|
47
|
+
risks: []
|
|
44
48
|
});
|
|
45
49
|
|
|
46
50
|
return _context.abrupt("return", "resetAlarmDoc Over");
|
|
@@ -181,11 +185,6 @@ export default function (topo) {
|
|
|
181
185
|
return null;
|
|
182
186
|
}
|
|
183
187
|
}));
|
|
184
|
-
_context2.next = 11;
|
|
185
|
-
return _this2.filterElementAlarmsByManageStatus(alarmlist);
|
|
186
|
-
|
|
187
|
-
case 11:
|
|
188
|
-
alarmlist = _context2.sent;
|
|
189
188
|
eqFlag = _.isEqual(_.sortBy(alarmlist), _.sortBy(currentAlarmList));
|
|
190
189
|
rlog.debug("告警归档结束", eqFlag, currentAlarmList, alarmlist, doc, record);
|
|
191
190
|
|
|
@@ -200,7 +199,7 @@ export default function (topo) {
|
|
|
200
199
|
alarmlist: alarmlist
|
|
201
200
|
});
|
|
202
201
|
|
|
203
|
-
case
|
|
202
|
+
case 13:
|
|
204
203
|
case "end":
|
|
205
204
|
return _context2.stop();
|
|
206
205
|
}
|