@riil-frontend/component-topology 6.0.0-alpha.30 → 6.0.0-alpha.31
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 +20 -20
- package/es/core/editor/components/EditorPlugin.js +2 -1
- package/es/core/editor/components/Sidebar/Sidebar.js +2 -1
- package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +2 -3
- package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +1 -0
- package/es/core/editor/components/Toolbar/buttons.js +5 -4
- package/es/core/editor/components/Toolbar/hooks/useFontStyleSetting.js +23 -6
- package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +29 -9
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +15 -0
- package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +4 -0
- package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +82 -33
- package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +20 -25
- package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +22 -6
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +12 -9
- package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +19 -6
- package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +8 -5
- package/es/core/editor/components/settings/CloseablePanel.js +7 -2
- package/es/core/editor/components/settings/CloseablePanel.module.scss +9 -0
- package/es/core/editor/components/settings/PropertyView.js +2 -6
- package/es/core/editor/components/settings/common/AlignSetting/index.js +1 -2
- package/es/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +7 -1
- package/es/core/editor/utils/textStyleUtil.js +0 -0
- package/es/core/hooks/usePolling.js +2 -5
- package/es/core/models/AttributeMetricDisplay.js +4 -0
- package/es/core/models/TopoApp.js +1 -1
- package/es/utils/htElementUtils.js +3 -0
- package/lib/core/editor/components/EditorPlugin.js +3 -1
- package/lib/core/editor/components/Sidebar/Sidebar.js +2 -1
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +2 -3
- package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +1 -0
- package/lib/core/editor/components/Toolbar/buttons.js +5 -4
- package/lib/core/editor/components/Toolbar/hooks/useFontStyleSetting.js +20 -6
- package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +29 -8
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +15 -0
- package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +5 -0
- package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +88 -33
- package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +20 -25
- package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +22 -6
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +11 -9
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +18 -6
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +10 -5
- package/lib/core/editor/components/settings/CloseablePanel.js +8 -2
- package/lib/core/editor/components/settings/CloseablePanel.module.scss +9 -0
- package/lib/core/editor/components/settings/PropertyView.js +3 -7
- package/lib/core/editor/components/settings/common/AlignSetting/index.js +1 -2
- package/lib/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +7 -1
- package/lib/core/editor/utils/textStyleUtil.js +1 -0
- package/lib/core/hooks/usePolling.js +2 -5
- package/lib/core/models/AttributeMetricDisplay.js +4 -0
- package/lib/core/models/TopoApp.js +1 -1
- package/lib/utils/htElementUtils.js +5 -0
- package/package.json +2 -2
@@ -1,13 +1,16 @@
|
|
1
1
|
import _ConfigProvider from "@alifd/next/es/config-provider";
|
2
2
|
import _Icon from "@alifd/next/es/icon";
|
3
3
|
import React from 'react';
|
4
|
+
import styles from "./CloseablePanel.module.scss";
|
4
5
|
|
5
6
|
function CloseablePanel(props) {
|
6
7
|
var prefix = props.prefix,
|
7
8
|
title = props.title,
|
8
9
|
onClose = props.onClose,
|
9
10
|
children = props.children;
|
10
|
-
return /*#__PURE__*/React.createElement("div",
|
11
|
+
return /*#__PURE__*/React.createElement("div", {
|
12
|
+
className: styles.panel
|
13
|
+
}, /*#__PURE__*/React.createElement("div", {
|
11
14
|
className: prefix + "drawer-header",
|
12
15
|
role: "heading",
|
13
16
|
"aria-level": "1"
|
@@ -19,7 +22,9 @@ function CloseablePanel(props) {
|
|
19
22
|
}, /*#__PURE__*/React.createElement(_Icon, {
|
20
23
|
type: "close",
|
21
24
|
className: "next-drawer-close-icon"
|
22
|
-
}))), /*#__PURE__*/React.createElement("div",
|
25
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
26
|
+
className: styles.body
|
27
|
+
}, children));
|
23
28
|
}
|
24
29
|
|
25
30
|
CloseablePanel.defaultProps = {
|
@@ -1,9 +1,9 @@
|
|
1
1
|
import React from 'react';
|
2
2
|
import classNames from 'classnames';
|
3
3
|
import Settings from "./Settings";
|
4
|
-
import styles from "./Settings.module.scss";
|
5
4
|
import OpenPropertyPanelListener from "./OpenPropertyPanelListener";
|
6
5
|
import CloseablePanel from "./CloseablePanel";
|
6
|
+
import styles from "./Settings.module.scss";
|
7
7
|
export default function PropertyView(props) {
|
8
8
|
var _classNames;
|
9
9
|
|
@@ -28,10 +28,6 @@ export default function PropertyView(props) {
|
|
28
28
|
}
|
29
29
|
|
30
30
|
var renderContent = function renderContent() {
|
31
|
-
if (!graphLoaded) {
|
32
|
-
return null;
|
33
|
-
}
|
34
|
-
|
35
31
|
return /*#__PURE__*/React.createElement(OpenPropertyPanelListener, {
|
36
32
|
topo: topo
|
37
33
|
}, /*#__PURE__*/React.createElement(Settings, {
|
@@ -52,5 +48,5 @@ export default function PropertyView(props) {
|
|
52
48
|
propertyPanelVisible: false
|
53
49
|
});
|
54
50
|
}
|
55
|
-
}
|
51
|
+
}, renderContent()));
|
56
52
|
}
|
@@ -13,8 +13,7 @@ export default function AlignSetting(props) {
|
|
13
13
|
return !isLayer(ele) && !isEdge(ele);
|
14
14
|
}); // console.info("element--selectList", element, selectList);
|
15
15
|
|
16
|
-
topo.view.topoClient.htTopoClient.setAlignmentBySelectionNodes(type, nodes);
|
17
|
-
|
16
|
+
topo.view.topoClient.htTopoClient.setAlignmentBySelectionNodes(type, nodes);
|
18
17
|
topo.historyManager.endTransaction();
|
19
18
|
};
|
20
19
|
|
@@ -41,8 +41,10 @@ export default function CommonEdgePropertyView(props) {
|
|
41
41
|
}, [values]);
|
42
42
|
|
43
43
|
var setLineColor = function setLineColor(color) {
|
44
|
-
|
44
|
+
// 同时修改实线、虚线
|
45
45
|
edge.s("edge.color", color);
|
46
|
+
edge.s("edge.dash.color", color);
|
47
|
+
var style = edge.a("styles") || {};
|
46
48
|
edge.a("styles", _extends({}, style, {
|
47
49
|
color: color
|
48
50
|
}));
|
@@ -93,6 +95,10 @@ export default function CommonEdgePropertyView(props) {
|
|
93
95
|
style: {
|
94
96
|
width: "100%"
|
95
97
|
},
|
98
|
+
onChange: function onChange(val) {
|
99
|
+
// 同时修改实线、虚线的线宽
|
100
|
+
edge.s('edge.dash.width', val);
|
101
|
+
},
|
96
102
|
onFocus: function onFocus() {
|
97
103
|
topo.historyManager.beginTransaction();
|
98
104
|
},
|
File without changes
|
@@ -61,11 +61,8 @@ var usePolling = function usePolling(props) {
|
|
61
61
|
|
62
62
|
|
63
63
|
useEffect(function () {
|
64
|
-
|
65
|
-
|
66
|
-
if (topo.options.enableDefaultMetricLoader && isViewer) {
|
64
|
+
if (topo.options.enableDefaultMetricLoader) {
|
67
65
|
rlog.debug('usePolling.useEffect: 开始轮询', {
|
68
|
-
isViewer: isViewer,
|
69
66
|
pollingSwitch: pollingSwitch,
|
70
67
|
resIdsList: resIdsList,
|
71
68
|
resourceOverviewState: resourceOverviewState,
|
@@ -80,7 +77,7 @@ var usePolling = function usePolling(props) {
|
|
80
77
|
stopPoll();
|
81
78
|
}
|
82
79
|
};
|
83
|
-
}, [
|
80
|
+
}, [pollingSwitch, resIdsList, displayConfig, resourceOverviewState.id, resourceOverviewState.metricCodes]);
|
84
81
|
/**
|
85
82
|
*
|
86
83
|
* @returns {{id, attributes: object[], metrics: object[]}[]} 属性和指标
|
@@ -650,7 +650,11 @@ var AttributeMetricDisplay = /*#__PURE__*/function () {
|
|
650
650
|
var htTopo = topo.getHtTopo();
|
651
651
|
|
652
652
|
if (htTopo) {
|
653
|
+
var _topo$historyManager, _topo$historyManager2;
|
654
|
+
|
655
|
+
(_topo$historyManager = topo.historyManager) === null || _topo$historyManager === void 0 ? void 0 : _topo$historyManager.setDisabled(true, '加载标注');
|
653
656
|
htTopo.loadTagAndTip(JSON.parse(JSON.stringify(elementTagsAndTips)));
|
657
|
+
(_topo$historyManager2 = topo.historyManager) === null || _topo$historyManager2 === void 0 ? void 0 : _topo$historyManager2.setDisabled(false, '加载标注');
|
654
658
|
}
|
655
659
|
}
|
656
660
|
/**
|
@@ -22,7 +22,7 @@ import topoFactory from "./topoFactory";
|
|
22
22
|
import ElementTagTipConfig from "./tagstips/ElementTagTipConfig";
|
23
23
|
import SelectionManager from "./SelectionManager"; // eslint-disable-next-line no-undef
|
24
24
|
|
25
|
-
var version = typeof "6.0.0-alpha.
|
25
|
+
var version = typeof "6.0.0-alpha.31" === 'string' ? "6.0.0-alpha.31" : null;
|
26
26
|
console.info("\u62D3\u6251\u7248\u672C: " + version);
|
27
27
|
/**
|
28
28
|
* 拓扑显示和编辑
|
@@ -50,6 +50,9 @@ export function isGroup(element) {
|
|
50
50
|
export function isLayer(element) {
|
51
51
|
return element instanceof ht.Grid;
|
52
52
|
}
|
53
|
+
export function isText(element) {
|
54
|
+
return element instanceof ht.Text && element.a('isText');
|
55
|
+
}
|
53
56
|
export function getElements(dataModel) {
|
54
57
|
// console.error(111, dataModel.getDatas().getArray())
|
55
58
|
return dataModel.getDatas().getArray();
|
@@ -17,13 +17,15 @@ var _MultipleResourceSelectPlugin = _interopRequireDefault(require("./plugins/Mu
|
|
17
17
|
|
18
18
|
var _GroupAddResourceDrawerPlugin = _interopRequireDefault(require("./GroupAddResourceDrawerPlugin"));
|
19
19
|
|
20
|
+
var _MetricPollingPlugin = _interopRequireDefault(require("../../viewer/components/plugins/MetricPollingPlugin"));
|
21
|
+
|
20
22
|
function TopoEditorPlugin(props) {
|
21
23
|
var topo = props.topo,
|
22
24
|
topoContext = props.topoContext,
|
23
25
|
topoEdit = props.topoEdit,
|
24
26
|
editorProps = props.editorProps;
|
25
27
|
var store = topo.store;
|
26
|
-
var plugins = [_SaveLoading["default"], _GroupAddResourceDrawerPlugin["default"], _MultipleResourceSelectPlugin["default"], _CustomIconPlugin["default"]].concat((editorProps === null || editorProps === void 0 ? void 0 : editorProps.plugins) || []);
|
28
|
+
var plugins = [_SaveLoading["default"], _GroupAddResourceDrawerPlugin["default"], _MultipleResourceSelectPlugin["default"], _CustomIconPlugin["default"], _MetricPollingPlugin["default"]].concat((editorProps === null || editorProps === void 0 ? void 0 : editorProps.plugins) || []);
|
27
29
|
return /*#__PURE__*/_react["default"].createElement(_react["default"].Fragment, null, plugins.map(function (Plugin, index) {
|
28
30
|
return /*#__PURE__*/_react["default"].createElement(Plugin, (0, _extends2["default"])({
|
29
31
|
key: index,
|
@@ -61,7 +61,7 @@ function CanvasPanel(props) {
|
|
61
61
|
topo.historyManager.beginTransaction();
|
62
62
|
displayConfigDispatchers.update({
|
63
63
|
canvasTheme: theme
|
64
|
-
}); //
|
64
|
+
}); // 设置资源/链路标注样式
|
65
65
|
|
66
66
|
var _topo$store$getModelS = topo.store.getModelState('displayConfig'),
|
67
67
|
nodeLabelStyle = _topo$store$getModelS.nodeLabelStyle,
|
@@ -78,8 +78,7 @@ function CanvasPanel(props) {
|
|
78
78
|
displayConfigDispatchers.update({
|
79
79
|
nodeLabelStyle: globalNodeLabelStyle,
|
80
80
|
defaultEdgeLabelStyle: globalEdgeTagStyle
|
81
|
-
});
|
82
|
-
|
81
|
+
});
|
83
82
|
topo.historyManager.endTransaction();
|
84
83
|
};
|
85
84
|
|
@@ -51,13 +51,14 @@ function getButtons(isNetworkTopo) {
|
|
51
51
|
_FontSizeWidget["default"], // 字号
|
52
52
|
_FontStyleButton["default"], // 文字样式
|
53
53
|
_FontColorButton["default"], // 文字颜色
|
54
|
-
_Divider["default"],
|
55
|
-
|
54
|
+
_Divider["default"], // BoxBackgroundButton, // 框背景
|
55
|
+
// Divider,
|
56
|
+
_EdgeColorButton["default"], // 线条颜色
|
56
57
|
_EdgeTypeButton["default"], // 线形
|
57
58
|
_Divider["default"], _NodeImageButton["default"], // 替换图片
|
58
59
|
_NodeSizeButton["default"], // 图片尺寸
|
59
60
|
_Divider["default"], _Layout["default"], // 布局方式
|
60
|
-
_NodeAlignWidget["default"]
|
61
|
-
|
61
|
+
_NodeAlignWidget["default"] // 对齐方式
|
62
|
+
// SearchWidget, // 搜索
|
62
63
|
]);
|
63
64
|
}
|
@@ -23,21 +23,35 @@ function useFontStyleSetting(props) {
|
|
23
23
|
var buttonEnabled = true; // 全局配置
|
24
24
|
|
25
25
|
var _topo$store$useModel = topo.store.useModel('displayConfig'),
|
26
|
-
|
26
|
+
displayConfigState = _topo$store$useModel[0],
|
27
27
|
displayConfigDispatchers = _topo$store$useModel[1];
|
28
28
|
|
29
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
30
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
31
|
+
|
32
|
+
var setGlobalTagStyle = function setGlobalTagStyle(styleData) {
|
33
|
+
var globalNodeLabelStyle = (0, _extends2["default"])({}, nodeLabelStyle, styleData);
|
34
|
+
topo.getHtTopo().setGlobalNodeLabelStyle(globalNodeLabelStyle);
|
35
|
+
var globalEdgeTagStyle = (0, _extends2["default"])({}, defaultEdgeLabelStyle, styleData);
|
36
|
+
topo.getHtTopo().setGlobalEdgeTagStyle(globalEdgeTagStyle);
|
37
|
+
displayConfigDispatchers.update({
|
38
|
+
nodeLabelStyle: globalNodeLabelStyle,
|
39
|
+
defaultEdgeLabelStyle: globalEdgeTagStyle
|
40
|
+
});
|
41
|
+
};
|
42
|
+
|
29
43
|
var setStyle = function setStyle(styleData) {
|
30
|
-
// 全局调整(资源和链路):无选择时,按钮亮起,即可修改全局资源和链路的标注,不影响“文本”、框名称、区域名称、分层名称的格式。
|
44
|
+
topo.historyManager.beginTransaction(); // 全局调整(资源和链路):无选择时,按钮亮起,即可修改全局资源和链路的标注,不影响“文本”、框名称、区域名称、分层名称的格式。
|
45
|
+
|
31
46
|
if (!selectionElements.length) {
|
32
|
-
|
33
|
-
displayConfigDispatchers.update({
|
34
|
-
nodeLabelStyle: (0, _extends2["default"])({}, nodeLabelStyle, styleData)
|
35
|
-
});
|
47
|
+
setGlobalTagStyle(styleData);
|
36
48
|
} else {
|
37
49
|
selectionElements.forEach(function (element) {
|
38
50
|
if ((0, _htElementUtils.isNode)(element)) {} else if ((0, _htElementUtils.isGroup)(element)) {} else if ((0, _htElementDataUtil.isText)(element)) {} else if ((0, _htElementUtils.isLayer)(element)) {}
|
39
51
|
});
|
40
52
|
}
|
53
|
+
|
54
|
+
topo.historyManager.endTransaction();
|
41
55
|
};
|
42
56
|
|
43
57
|
return {
|
@@ -5,6 +5,8 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9
|
+
|
8
10
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
9
11
|
|
10
12
|
var _react = _interopRequireWildcard(require("react"));
|
@@ -48,10 +50,16 @@ function EdgeColorButton(props) {
|
|
48
50
|
|
49
51
|
var selection = topo.selectionManager.useHtSelection();
|
50
52
|
|
53
|
+
var loopEdges = function loopEdges(edges, operateEdgeFn) {
|
54
|
+
edges.forEach(function (edge) {
|
55
|
+
operateEdgeFn(edge);
|
56
|
+
});
|
57
|
+
};
|
58
|
+
|
51
59
|
var getLines = function getLines(list) {
|
52
60
|
// eslint-disable-next-line prefer-const
|
53
61
|
var arr = [];
|
54
|
-
(
|
62
|
+
loopEdges(list, function (edge) {
|
55
63
|
// eslint-disable-next-line eqeqeq
|
56
64
|
if (edge.getAttrObject().type == 'line') {
|
57
65
|
arr.push(edge);
|
@@ -66,7 +74,7 @@ function EdgeColorButton(props) {
|
|
66
74
|
var list = getLines(edges);
|
67
75
|
setLineWidth(0); // eslint-disable-next-line eqeqeq
|
68
76
|
|
69
|
-
if (selection.length == 1 && selection[0].
|
77
|
+
if (selection.length == 1 && selection[0].a('type') == 'line') {
|
70
78
|
setLineWidth(list[0] && (list[0].a('styles') && list[0].a('styles').width || list[0].getStyleMap()['edge.width']) || 2);
|
71
79
|
}
|
72
80
|
|
@@ -74,14 +82,20 @@ function EdgeColorButton(props) {
|
|
74
82
|
}
|
75
83
|
}, [selection, graphLoaded]);
|
76
84
|
|
77
|
-
var colorOnChange = function colorOnChange(
|
85
|
+
var colorOnChange = function colorOnChange(colors, type) {
|
78
86
|
// eslint-disable-next-line eqeqeq
|
79
87
|
if (type == 'select') topo.historyManager.beginTransaction();
|
80
88
|
var edges = (0, _edgeTypeStyleUtil.getEdgesBySelection)(topo);
|
81
|
-
(
|
89
|
+
loopEdges(edges, function (edge) {
|
82
90
|
// eslint-disable-next-line eqeqeq
|
83
91
|
if (edge.getAttrObject().type == 'line') {
|
84
|
-
|
92
|
+
var color = colors.hex;
|
93
|
+
edge.s('edge.color', color);
|
94
|
+
edge.s('edge.dash.color', color);
|
95
|
+
var style = edge.a('styles') || {};
|
96
|
+
edge.a('styles', (0, _extends2["default"])({}, style, {
|
97
|
+
color: color
|
98
|
+
}));
|
85
99
|
}
|
86
100
|
}); // eslint-disable-next-line eqeqeq
|
87
101
|
|
@@ -97,14 +111,21 @@ function EdgeColorButton(props) {
|
|
97
111
|
topo.historyManager.endTransaction();
|
98
112
|
};
|
99
113
|
|
100
|
-
var lineSizeChange = function lineSizeChange(
|
114
|
+
var lineSizeChange = function lineSizeChange(width) {
|
101
115
|
var edges = (0, _edgeTypeStyleUtil.getEdgesBySelection)(topo);
|
102
|
-
|
116
|
+
topo.historyManager.beginTransaction();
|
117
|
+
loopEdges(edges, function (edge) {
|
103
118
|
// eslint-disable-next-line eqeqeq
|
104
119
|
if (edge.getAttrObject().type == 'line') {
|
105
|
-
edge.s('edge.width',
|
120
|
+
edge.s('edge.dash.width', width);
|
121
|
+
edge.s('edge.width', width);
|
122
|
+
var style = edge.a('styles') || {};
|
123
|
+
edge.a('styles', (0, _extends2["default"])({}, style, {
|
124
|
+
width: width
|
125
|
+
}));
|
106
126
|
}
|
107
127
|
});
|
128
|
+
topo.historyManager.endTransaction();
|
108
129
|
};
|
109
130
|
|
110
131
|
var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
|
@@ -86,8 +86,23 @@ function EdgeTypeButton(props) {
|
|
86
86
|
edge.s('icons', (0, _extends2["default"])({}, edge.s('icons')));
|
87
87
|
edge.addStyleIcon(value, _constants.EDGE_END_POINT_TYPE_MAP[value]);
|
88
88
|
} else if (name === 'lineMold') {
|
89
|
+
// 修改实线虚线
|
89
90
|
edge.a('lineMode', value);
|
90
91
|
htTopo.setElementStyle(edge, _constants.LINE_MOLD_MAP[value]);
|
92
|
+
|
93
|
+
if (value !== 'solid') {
|
94
|
+
var edgeWidth = edge.s('edge.width');
|
95
|
+
|
96
|
+
if (edgeWidth) {
|
97
|
+
edge.s('edge.dash.width', edgeWidth);
|
98
|
+
}
|
99
|
+
|
100
|
+
var color = edge.s('edge.color');
|
101
|
+
|
102
|
+
if (edgeWidth) {
|
103
|
+
edge.s('edge.dash.color', color);
|
104
|
+
}
|
105
|
+
}
|
91
106
|
}
|
92
107
|
});
|
93
108
|
};
|
@@ -17,6 +17,8 @@ var _FontColorRange = _interopRequireDefault(require("../../../../../components/
|
|
17
17
|
|
18
18
|
var _FontColorButtonModule = _interopRequireDefault(require("./FontColorButton.module.scss"));
|
19
19
|
|
20
|
+
var _useFontStyleSetting = _interopRequireDefault(require("../hooks/useFontStyleSetting"));
|
21
|
+
|
20
22
|
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); }
|
21
23
|
|
22
24
|
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; }
|
@@ -31,6 +33,9 @@ function FontFamilySelect(props) {
|
|
31
33
|
disabled = _useState[0],
|
32
34
|
setDisabled = _useState[1];
|
33
35
|
|
36
|
+
var fontStyleSetting = (0, _useFontStyleSetting["default"])({
|
37
|
+
topo: topo
|
38
|
+
});
|
34
39
|
console.log(topo, 'topo这里需要处理颜色改变的事情');
|
35
40
|
|
36
41
|
var backOpacityChange = function backOpacityChange(value) {
|
@@ -7,6 +7,12 @@ exports["default"] = void 0;
|
|
7
7
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
9
9
|
|
10
|
+
var _htElementUtils = require("../../../../../utils/htElementUtils");
|
11
|
+
|
12
|
+
var _fontStyleUtil = _interopRequireDefault(require("../../settings/common/text/fontStyleUtil"));
|
13
|
+
|
14
|
+
var _useFontStyleSetting = _interopRequireDefault(require("../hooks/useFontStyleSetting"));
|
15
|
+
|
10
16
|
var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
|
11
17
|
|
12
18
|
var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
|
@@ -15,40 +21,37 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
15
21
|
|
16
22
|
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; }
|
17
23
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
}
|
43
|
-
}, item));
|
44
|
-
}));
|
24
|
+
var items = [{
|
25
|
+
key: 'bold',
|
26
|
+
label: '加粗',
|
27
|
+
icon: 'bold'
|
28
|
+
}, {
|
29
|
+
key: 'italic',
|
30
|
+
label: '斜体',
|
31
|
+
icon: 'Italics'
|
32
|
+
}, {
|
33
|
+
key: 'underline',
|
34
|
+
label: '下划线',
|
35
|
+
icon: 'Underline'
|
36
|
+
}];
|
37
|
+
|
38
|
+
function getTextFontStyle(textElement) {
|
39
|
+
var underline = textElement.s('text.decoration') === 'underline';
|
40
|
+
|
41
|
+
var fontStyle = _fontStyleUtil["default"].toMap(textElement.s('text.font'));
|
42
|
+
|
43
|
+
return {
|
44
|
+
underline: underline,
|
45
|
+
bold: fontStyle.bold,
|
46
|
+
italic: fontStyle.italic
|
47
|
+
};
|
45
48
|
}
|
46
49
|
|
47
50
|
function FontStyleButton(props) {
|
48
51
|
var topo = props.topo,
|
49
52
|
showLabel = props.showLabel;
|
50
53
|
|
51
|
-
var _useState = (0, _react.useState)('
|
54
|
+
var _useState = (0, _react.useState)(['bold']),
|
52
55
|
value = _useState[0],
|
53
56
|
setValue = _useState[1];
|
54
57
|
|
@@ -57,19 +60,71 @@ function FontStyleButton(props) {
|
|
57
60
|
setDisabled = _useState2[1]; // 选中的元素
|
58
61
|
|
59
62
|
|
60
|
-
var selection = topo.selectionManager.
|
63
|
+
var selection = topo.selectionManager.useHtSelection();
|
64
|
+
var fontStyleSetting = (0, _useFontStyleSetting["default"])({
|
65
|
+
topo: topo
|
66
|
+
});
|
61
67
|
(0, _react.useEffect)(function () {
|
62
68
|
setDisabled(false);
|
69
|
+
var fontObj = {};
|
70
|
+
|
71
|
+
if (selection.length === 1) {
|
72
|
+
var element = selection[0];
|
73
|
+
|
74
|
+
if ((0, _htElementUtils.isText)(element)) {
|
75
|
+
fontObj = getTextFontStyle(element);
|
76
|
+
}
|
77
|
+
}
|
78
|
+
|
79
|
+
var newValue = Object.keys(fontObj).reduce(function (result, key) {
|
80
|
+
if (fontObj[key]) {
|
81
|
+
return [].concat(result, [key]);
|
82
|
+
}
|
83
|
+
|
84
|
+
return result;
|
85
|
+
}, []);
|
86
|
+
setValue(newValue);
|
63
87
|
}, [selection]);
|
88
|
+
/**
|
89
|
+
*
|
90
|
+
* @param {Array} selectedKeys
|
91
|
+
*/
|
92
|
+
|
93
|
+
var handleChange = function handleChange(selectedKeys) {
|
94
|
+
setValue(selectedKeys);
|
95
|
+
var style = {
|
96
|
+
fontBold: selectedKeys.includes('bold')
|
97
|
+
};
|
98
|
+
fontStyleSetting.setStyle(style);
|
99
|
+
};
|
100
|
+
|
64
101
|
return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
|
65
102
|
label: "\u6587\u5B57\u6837\u5F0F",
|
66
103
|
tooltip: "\u6587\u5B57\u6837\u5F0F",
|
67
104
|
showLabel: showLabel
|
68
|
-
}, /*#__PURE__*/_react["default"].createElement(
|
105
|
+
}, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
|
69
106
|
value: value,
|
70
|
-
|
71
|
-
|
72
|
-
|
107
|
+
valueRender: function valueRender() {
|
108
|
+
return /*#__PURE__*/_react["default"].createElement("img", {
|
109
|
+
src: "/img/topo/editor/toolbar/bold/" + (disabled ? 'Disable' : 'Normal') + ".svg",
|
110
|
+
alt: ""
|
111
|
+
});
|
112
|
+
},
|
113
|
+
multiple: true,
|
114
|
+
onChange: handleChange
|
115
|
+
}, items.map(function (item) {
|
116
|
+
return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
|
117
|
+
key: item.key
|
118
|
+
}, /*#__PURE__*/_react["default"].createElement("div", {
|
119
|
+
style: {
|
120
|
+
display: 'flex',
|
121
|
+
alignItems: 'center'
|
122
|
+
}
|
123
|
+
}, /*#__PURE__*/_react["default"].createElement("img", {
|
124
|
+
src: "/img/topo/editor/toolbar/" + item.icon + "/Normal.svg",
|
125
|
+
alt: ""
|
126
|
+
}), /*#__PURE__*/_react["default"].createElement("span", null, item.label)));
|
127
|
+
})));
|
73
128
|
}
|
74
129
|
|
75
130
|
var _default = FontStyleButton;
|
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
8
|
+
var _numberPicker = _interopRequireDefault(require("@alifd/next/lib/number-picker"));
|
9
9
|
|
10
10
|
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
11
11
|
|
@@ -70,27 +70,13 @@ function NodeAlignWidget(props) {
|
|
70
70
|
};
|
71
71
|
|
72
72
|
var leftInputChange = function leftInputChange(v) {
|
73
|
-
|
74
|
-
|
75
|
-
} else if (v * 1 > 10000) {
|
76
|
-
setLeftInputVal(10000);
|
77
|
-
} else {
|
78
|
-
setLeftInputVal(v);
|
79
|
-
}
|
80
|
-
|
81
|
-
setSpace('v', leftInputVal);
|
73
|
+
setLeftInputVal(v);
|
74
|
+
setSpace('h', v);
|
82
75
|
};
|
83
76
|
|
84
77
|
var rightInputChange = function rightInputChange(v) {
|
85
|
-
|
86
|
-
|
87
|
-
} else if (v * 1 > 10000) {
|
88
|
-
setRightInputVal(10000);
|
89
|
-
} else {
|
90
|
-
setRightInputVal(v);
|
91
|
-
}
|
92
|
-
|
93
|
-
setSpace('h', rightInputVal);
|
78
|
+
setRightInputVal(v);
|
79
|
+
setSpace('v', v);
|
94
80
|
};
|
95
81
|
|
96
82
|
(0, _react.useEffect)(function () {
|
@@ -101,10 +87,17 @@ function NodeAlignWidget(props) {
|
|
101
87
|
});
|
102
88
|
setDisabled(nodes.length <= 1);
|
103
89
|
getClickType('none');
|
90
|
+
setLeftInputVal();
|
91
|
+
setRightInputVal();
|
104
92
|
}
|
105
93
|
}, [graphLoaded, selection]);
|
106
94
|
|
107
95
|
var getClickType = function getClickType(type) {
|
96
|
+
if (leftInputVal || rightInputVal) {
|
97
|
+
setLeftInputVal();
|
98
|
+
setRightInputVal();
|
99
|
+
}
|
100
|
+
|
108
101
|
setLeftDisable(true);
|
109
102
|
setRightDisable(true);
|
110
103
|
|
@@ -135,23 +128,25 @@ function NodeAlignWidget(props) {
|
|
135
128
|
}, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_AlignSetting["default"], {
|
136
129
|
topo: topo,
|
137
130
|
getClickType: getClickType
|
138
|
-
}), /*#__PURE__*/_react["default"].createElement(
|
131
|
+
}), /*#__PURE__*/_react["default"].createElement(_numberPicker["default"], {
|
139
132
|
disabled: leftDisable,
|
140
133
|
size: "small",
|
134
|
+
hasTrigger: false,
|
141
135
|
placeholder: "\u591A\u4E2A\u503C",
|
142
136
|
className: _NodeAlignWidgetModule["default"].leftInput,
|
143
137
|
value: leftInputVal,
|
144
|
-
|
145
|
-
|
138
|
+
min: 0,
|
139
|
+
max: 10000,
|
146
140
|
onChange: leftInputChange
|
147
|
-
}), /*#__PURE__*/_react["default"].createElement(
|
141
|
+
}), /*#__PURE__*/_react["default"].createElement(_numberPicker["default"], {
|
148
142
|
disabled: rightDisable,
|
149
143
|
size: "small",
|
144
|
+
hasTrigger: false,
|
150
145
|
placeholder: "\u591A\u4E2A\u503C",
|
151
146
|
className: _NodeAlignWidgetModule["default"].rightInput,
|
152
147
|
value: rightInputVal,
|
153
|
-
|
154
|
-
|
148
|
+
min: 0,
|
149
|
+
max: 10000,
|
155
150
|
onChange: rightInputChange
|
156
151
|
}))));
|
157
152
|
}
|