@riil-frontend/component-topology 6.0.0-alpha.31 → 6.0.0-alpha.32
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/index.css +1 -1
- package/build/index.js +2 -2
- package/es/core/editor/components/Toolbar/hooks/textStyleSetting/EmptySetting.js +8 -0
- package/es/core/editor/components/Toolbar/hooks/textStyleSetting/edgeTagSetting.js +8 -0
- package/es/core/editor/components/Toolbar/hooks/textStyleSetting/globalTag.js +36 -0
- package/es/core/editor/components/Toolbar/hooks/textStyleSetting/nodeTagSetting.js +8 -0
- package/es/core/editor/components/Toolbar/hooks/textStyleSetting/text.js +8 -0
- package/es/core/editor/components/Toolbar/hooks/useFontStyleSetting.js +47 -24
- package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +16 -16
- package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +20 -18
- package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +42 -45
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +3 -2
- package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +4 -2
- package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +6 -1
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +40 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +13 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +13 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +12 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +13 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +13 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +25 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +46 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +25 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +36 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +17 -0
- package/es/core/editor/components/settings/PropertyView.js +10 -4
- package/es/core/editor/components/settings/common/text/fontStyleUtil.js +5 -4
- package/es/core/editor/components/settings/propertyViews/text/TextPropertyView.js +1 -1
- package/es/core/models/TopoApp.js +1 -1
- package/lib/core/editor/components/Toolbar/hooks/textStyleSetting/EmptySetting.js +13 -0
- package/lib/core/editor/components/Toolbar/hooks/textStyleSetting/edgeTagSetting.js +13 -0
- package/lib/core/editor/components/Toolbar/hooks/textStyleSetting/globalTag.js +47 -0
- package/lib/core/editor/components/Toolbar/hooks/textStyleSetting/nodeTagSetting.js +13 -0
- package/lib/core/editor/components/Toolbar/hooks/textStyleSetting/text.js +13 -0
- package/lib/core/editor/components/Toolbar/hooks/useFontStyleSetting.js +54 -28
- package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +17 -16
- package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +21 -18
- package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +43 -48
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +3 -2
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +5 -2
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +5 -1
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +54 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +23 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +23 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +25 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +23 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +23 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +40 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +58 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +39 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +47 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +28 -0
- package/lib/core/editor/components/settings/PropertyView.js +11 -5
- package/lib/core/editor/components/settings/common/text/fontStyleUtil.js +5 -4
- package/lib/core/editor/components/settings/propertyViews/text/TextPropertyView.js +1 -1
- package/lib/core/models/TopoApp.js +1 -1
- package/package.json +2 -2
@@ -0,0 +1,25 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
3
|
+
var _excluded = ["Component"];
|
4
|
+
import React, { useMemo } from 'react';
|
5
|
+
import { setGlobalTagStyle, useValues } from "./globalTag";
|
6
|
+
|
7
|
+
function GlobalTagStyleSetting(props) {
|
8
|
+
var topo = props.topo;
|
9
|
+
|
10
|
+
var Component = props.Component,
|
11
|
+
widgetProps = _objectWithoutPropertiesLoose(props, _excluded);
|
12
|
+
|
13
|
+
var values = useValues(topo);
|
14
|
+
var setStyle = useMemo(function () {
|
15
|
+
return function (style) {
|
16
|
+
return setGlobalTagStyle(topo, style);
|
17
|
+
};
|
18
|
+
}, []);
|
19
|
+
return /*#__PURE__*/React.createElement(Component, _extends({
|
20
|
+
style: values,
|
21
|
+
setStyle: setStyle
|
22
|
+
}, widgetProps));
|
23
|
+
}
|
24
|
+
|
25
|
+
export default GlobalTagStyleSetting;
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
var defaultStyle = {
|
3
|
+
color: '#AFB9C2',
|
4
|
+
fontFamily: '微软雅黑'
|
5
|
+
};
|
6
|
+
export function useValues(topo) {
|
7
|
+
var displayConfigState = topo.store.useModelState('displayConfig');
|
8
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
9
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
10
|
+
return {
|
11
|
+
color: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.color) || defaultStyle.color,
|
12
|
+
fontFamily: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontFamily) || defaultStyle.fontFamily,
|
13
|
+
fontSize: nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontSize
|
14
|
+
};
|
15
|
+
}
|
16
|
+
export var setGlobalTagStyle = function setGlobalTagStyle(topo, styleData) {
|
17
|
+
var _topo$store$getModel = topo.store.getModel('displayConfig'),
|
18
|
+
displayConfigState = _topo$store$getModel[0],
|
19
|
+
displayConfigDispatchers = _topo$store$getModel[1];
|
20
|
+
|
21
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
22
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
23
|
+
|
24
|
+
var globalNodeLabelStyle = _extends({}, nodeLabelStyle, styleData);
|
25
|
+
|
26
|
+
topo.getHtTopo().setGlobalNodeLabelStyle(globalNodeLabelStyle);
|
27
|
+
|
28
|
+
var globalEdgeTagStyle = _extends({}, defaultEdgeLabelStyle, styleData);
|
29
|
+
|
30
|
+
topo.getHtTopo().setGlobalEdgeTagStyle(globalEdgeTagStyle);
|
31
|
+
displayConfigDispatchers.update({
|
32
|
+
nodeLabelStyle: globalNodeLabelStyle,
|
33
|
+
defaultEdgeLabelStyle: globalEdgeTagStyle
|
34
|
+
});
|
35
|
+
};
|
36
|
+
export function setStyle() {}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import React from 'react';
|
3
|
+
import ElementTextStyleSetting from "./ElementTextStyleSetting/ElementTextStyleSetting";
|
4
|
+
import GlobalTagStyleSetting from "./GlobalTagStyleSetting/GlobalTagStyleSetting";
|
5
|
+
|
6
|
+
function textStyleSettingRouter(Component, options) {
|
7
|
+
return function TextStyleSettingButton(props) {
|
8
|
+
var topo = props.topo;
|
9
|
+
var selection = topo.selectionManager.useHtSelection();
|
10
|
+
var Widget = !selection.length ? GlobalTagStyleSetting : ElementTextStyleSetting;
|
11
|
+
return /*#__PURE__*/React.createElement(Widget, _extends({
|
12
|
+
Component: Component
|
13
|
+
}, props));
|
14
|
+
};
|
15
|
+
}
|
16
|
+
|
17
|
+
export default textStyleSettingRouter;
|
@@ -1,8 +1,8 @@
|
|
1
|
-
import React from 'react';
|
2
1
|
import classNames from 'classnames';
|
3
|
-
import
|
4
|
-
import OpenPropertyPanelListener from "./OpenPropertyPanelListener";
|
2
|
+
import React from 'react';
|
5
3
|
import CloseablePanel from "./CloseablePanel";
|
4
|
+
import OpenPropertyPanelListener from "./OpenPropertyPanelListener";
|
5
|
+
import Settings from "./Settings";
|
6
6
|
import styles from "./Settings.module.scss";
|
7
7
|
export default function PropertyView(props) {
|
8
8
|
var _classNames;
|
@@ -28,6 +28,10 @@ export default function PropertyView(props) {
|
|
28
28
|
}
|
29
29
|
|
30
30
|
var renderContent = function renderContent() {
|
31
|
+
if (!propertyPanelVisible) {
|
32
|
+
return null;
|
33
|
+
}
|
34
|
+
|
31
35
|
return /*#__PURE__*/React.createElement(OpenPropertyPanelListener, {
|
32
36
|
topo: topo
|
33
37
|
}, /*#__PURE__*/React.createElement(Settings, {
|
@@ -48,5 +52,7 @@ export default function PropertyView(props) {
|
|
48
52
|
propertyPanelVisible: false
|
49
53
|
});
|
50
54
|
}
|
51
|
-
},
|
55
|
+
}, /*#__PURE__*/React.createElement(OpenPropertyPanelListener, {
|
56
|
+
topo: topo
|
57
|
+
}, renderContent())));
|
52
58
|
}
|
@@ -8,7 +8,8 @@ var fontStyleUtil = {
|
|
8
8
|
var arr = font.trim().split(' ');
|
9
9
|
var bold = font.indexOf('bold') > -1;
|
10
10
|
var italic = font.indexOf('italic') > -1;
|
11
|
-
var fontFamily
|
11
|
+
var fontFamily;
|
12
|
+
var fontSize;
|
12
13
|
|
13
14
|
if (arr.length) {
|
14
15
|
fontFamily = arr[arr.length - 1];
|
@@ -29,15 +30,15 @@ var fontStyleUtil = {
|
|
29
30
|
build: function build(style) {
|
30
31
|
var font = '';
|
31
32
|
|
32
|
-
if (style.
|
33
|
+
if (style.bold) {
|
33
34
|
font += 'bold ';
|
34
35
|
}
|
35
36
|
|
36
|
-
if (style.
|
37
|
+
if (style.italic) {
|
37
38
|
font += 'italic ';
|
38
39
|
}
|
39
40
|
|
40
|
-
return "" + font + style.
|
41
|
+
return "" + font + style.fontSize + "px " + style.fontFamily;
|
41
42
|
},
|
42
43
|
getFontStyleMap: function getFontStyleMap(obj, prefix) {
|
43
44
|
var map = {};
|
@@ -37,7 +37,7 @@ export default function TextPropertyView(props) {
|
|
37
37
|
|
38
38
|
_onChange('styleMap.label.color', value.color, newValues);
|
39
39
|
|
40
|
-
var font = fontStyleUtil.build(value);
|
40
|
+
var font = fontStyleUtil.build(value.font);
|
41
41
|
|
42
42
|
_onChange('styleMap.text.font', font, newValues);
|
43
43
|
|
@@ -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.32" === 'string' ? "6.0.0-alpha.32" : null;
|
26
26
|
console.info("\u62D3\u6251\u7248\u672C: " + version);
|
27
27
|
/**
|
28
28
|
* 拓扑显示和编辑
|
@@ -0,0 +1,47 @@
|
|
1
|
+
"use strict";
|
2
|
+
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
+
|
5
|
+
exports.__esModule = true;
|
6
|
+
exports.setGlobalTagStyle = void 0;
|
7
|
+
exports.setStyle = setStyle;
|
8
|
+
exports.useValues = useValues;
|
9
|
+
|
10
|
+
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
11
|
+
|
12
|
+
var defaultStyle = {
|
13
|
+
color: '#AFB9C2',
|
14
|
+
fontFamily: '微软雅黑'
|
15
|
+
};
|
16
|
+
|
17
|
+
function useValues(topo) {
|
18
|
+
var displayConfigState = topo.store.useModelState('displayConfig');
|
19
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
20
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
21
|
+
return {
|
22
|
+
color: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.color) || defaultStyle.color,
|
23
|
+
fontFamily: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontFamily) || defaultStyle.fontFamily,
|
24
|
+
fontSize: nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontSize
|
25
|
+
};
|
26
|
+
}
|
27
|
+
|
28
|
+
var setGlobalTagStyle = function setGlobalTagStyle(topo, styleData) {
|
29
|
+
var _topo$store$getModel = topo.store.getModel('displayConfig'),
|
30
|
+
displayConfigState = _topo$store$getModel[0],
|
31
|
+
displayConfigDispatchers = _topo$store$getModel[1];
|
32
|
+
|
33
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
34
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
35
|
+
var globalNodeLabelStyle = (0, _extends2["default"])({}, nodeLabelStyle, styleData);
|
36
|
+
topo.getHtTopo().setGlobalNodeLabelStyle(globalNodeLabelStyle);
|
37
|
+
var globalEdgeTagStyle = (0, _extends2["default"])({}, defaultEdgeLabelStyle, styleData);
|
38
|
+
topo.getHtTopo().setGlobalEdgeTagStyle(globalEdgeTagStyle);
|
39
|
+
displayConfigDispatchers.update({
|
40
|
+
nodeLabelStyle: globalNodeLabelStyle,
|
41
|
+
defaultEdgeLabelStyle: globalEdgeTagStyle
|
42
|
+
});
|
43
|
+
};
|
44
|
+
|
45
|
+
exports.setGlobalTagStyle = setGlobalTagStyle;
|
46
|
+
|
47
|
+
function setStyle() {}
|
@@ -1,53 +1,77 @@
|
|
1
1
|
"use strict";
|
2
2
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
4
|
-
|
5
3
|
exports.__esModule = true;
|
6
4
|
exports["default"] = void 0;
|
7
5
|
|
8
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
9
|
-
|
10
6
|
var _react = _interopRequireWildcard(require("react"));
|
11
7
|
|
12
8
|
var _htElementDataUtil = require("../../../../../utils/htElementDataUtil");
|
13
9
|
|
14
10
|
var _htElementUtils = require("../../../../../utils/htElementUtils");
|
15
11
|
|
12
|
+
var globalTagSetting = _interopRequireWildcard(require("./textStyleSetting/globalTag"));
|
13
|
+
|
14
|
+
var EmptySetting = _interopRequireWildcard(require("./textStyleSetting/EmptySetting"));
|
15
|
+
|
16
16
|
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
17
|
|
18
18
|
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
19
|
|
20
|
+
// 文本
|
21
|
+
function getElementType(element) {
|
22
|
+
if ((0, _htElementUtils.isNode)(element)) {
|
23
|
+
return 'nodeTag';
|
24
|
+
} else if ((0, _htElementUtils.isGroup)(element)) {
|
25
|
+
return 'group';
|
26
|
+
} else if ((0, _htElementDataUtil.isText)(element)) {
|
27
|
+
return 'text';
|
28
|
+
} else if ((0, _htElementUtils.isLayer)(element)) {
|
29
|
+
return 'layer';
|
30
|
+
}
|
31
|
+
|
32
|
+
return null;
|
33
|
+
}
|
34
|
+
|
35
|
+
function getType(selectionElements) {
|
36
|
+
if (!selectionElements.length) {
|
37
|
+
return 'globalTag';
|
38
|
+
} else if (selectionElements.length === 1) {
|
39
|
+
var element = selectionElements[0];
|
40
|
+
return getElementType(element);
|
41
|
+
}
|
42
|
+
|
43
|
+
return null;
|
44
|
+
}
|
45
|
+
|
46
|
+
var useValuesHookMap = {
|
47
|
+
globalTag: globalTagSetting.useValues,
|
48
|
+
empty: EmptySetting.useValues
|
49
|
+
};
|
50
|
+
|
51
|
+
function useValues(topo, selection) {
|
52
|
+
var type = getType(selection);
|
53
|
+
var useValuesHandle = useValuesHookMap[type] || useValuesHookMap.empty;
|
54
|
+
var values = useValuesHandle(topo, selection);
|
55
|
+
return values;
|
56
|
+
}
|
57
|
+
|
58
|
+
var elementSetStyleMap = {};
|
59
|
+
|
20
60
|
function useFontStyleSetting(props) {
|
21
61
|
var topo = props.topo;
|
22
|
-
var
|
23
|
-
var buttonEnabled = true; //
|
24
|
-
|
25
|
-
var
|
26
|
-
displayConfigState = _topo$store$useModel[0],
|
27
|
-
displayConfigDispatchers = _topo$store$useModel[1];
|
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
|
-
};
|
62
|
+
var selection = topo.selectionManager.useHtSelection();
|
63
|
+
var buttonEnabled = true; // const values = useValues(topo, selection)
|
64
|
+
|
65
|
+
var values = {};
|
42
66
|
|
43
67
|
var setStyle = function setStyle(styleData) {
|
44
68
|
topo.historyManager.beginTransaction(); // 全局调整(资源和链路):无选择时,按钮亮起,即可修改全局资源和链路的标注,不影响“文本”、框名称、区域名称、分层名称的格式。
|
45
69
|
|
46
|
-
if (!
|
47
|
-
setGlobalTagStyle(styleData);
|
70
|
+
if (!selection.length) {
|
71
|
+
globalTagSetting.setGlobalTagStyle(topo, styleData);
|
48
72
|
} else {
|
49
|
-
|
50
|
-
|
73
|
+
selection.forEach(function (element) {
|
74
|
+
var elementType = getElementType(element);
|
51
75
|
});
|
52
76
|
}
|
53
77
|
|
@@ -55,7 +79,9 @@ function useFontStyleSetting(props) {
|
|
55
79
|
};
|
56
80
|
|
57
81
|
return {
|
82
|
+
selection: selection,
|
58
83
|
buttonEnabled: buttonEnabled,
|
84
|
+
values: values,
|
59
85
|
setStyle: setStyle
|
60
86
|
};
|
61
87
|
}
|
@@ -7,10 +7,10 @@ exports["default"] = void 0;
|
|
7
7
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
9
9
|
|
10
|
-
var _useFontStyleSetting = _interopRequireDefault(require("../hooks/useFontStyleSetting"));
|
11
|
-
|
12
10
|
var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
|
13
11
|
|
12
|
+
var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
|
13
|
+
|
14
14
|
var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
|
15
15
|
|
16
16
|
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); }
|
@@ -22,7 +22,14 @@ function FontFamilySelect(props) {
|
|
22
22
|
onChange = props.onChange;
|
23
23
|
var items = ['宋体', '微软雅黑', '黑体', 'Arial'];
|
24
24
|
return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
|
25
|
-
value: value,
|
25
|
+
value: value || '',
|
26
|
+
valueRender: function valueRender(val) {
|
27
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
28
|
+
style: {
|
29
|
+
width: 48
|
30
|
+
}
|
31
|
+
}, val || '微软雅黑');
|
32
|
+
},
|
26
33
|
onChange: onChange
|
27
34
|
}, items.map(function (item) {
|
28
35
|
return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
|
@@ -37,29 +44,23 @@ function FontFamilySelect(props) {
|
|
37
44
|
|
38
45
|
function FontFamilyWidget(props) {
|
39
46
|
var topo = props.topo,
|
40
|
-
showLabel = props.showLabel
|
41
|
-
|
42
|
-
|
43
|
-
value = _useState[0],
|
44
|
-
setValue = _useState[1];
|
45
|
-
|
46
|
-
var fontStyleSetting = (0, _useFontStyleSetting["default"])({
|
47
|
-
topo: topo
|
48
|
-
});
|
47
|
+
showLabel = props.showLabel,
|
48
|
+
style = props.style,
|
49
|
+
setStyle = props.setStyle;
|
49
50
|
return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
|
50
51
|
label: "\u5B57\u4F53",
|
51
52
|
tooltip: "\u5B57\u4F53",
|
52
53
|
showLabel: showLabel
|
53
54
|
}, /*#__PURE__*/_react["default"].createElement(FontFamilySelect, {
|
54
|
-
value:
|
55
|
+
value: style.fontFamily,
|
55
56
|
onChange: function onChange(val) {
|
56
|
-
|
57
|
-
fontStyleSetting.setStyle({
|
57
|
+
setStyle({
|
58
58
|
fontFamily: val
|
59
59
|
});
|
60
60
|
}
|
61
61
|
}));
|
62
62
|
}
|
63
63
|
|
64
|
-
var _default = FontFamilyWidget;
|
64
|
+
var _default = (0, _textStyleSettingRouter["default"])(FontFamilyWidget);
|
65
|
+
|
65
66
|
exports["default"] = _default;
|
@@ -7,10 +7,10 @@ exports["default"] = void 0;
|
|
7
7
|
|
8
8
|
var _react = _interopRequireWildcard(require("react"));
|
9
9
|
|
10
|
-
var _useFontStyleSetting = _interopRequireDefault(require("../hooks/useFontStyleSetting"));
|
11
|
-
|
12
10
|
var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
|
13
11
|
|
12
|
+
var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
|
13
|
+
|
14
14
|
var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
|
15
15
|
|
16
16
|
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); }
|
@@ -19,11 +19,20 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
|
|
19
19
|
|
20
20
|
function FontSizeSelect(props) {
|
21
21
|
var value = props.value,
|
22
|
-
|
22
|
+
_onChange = props.onChange;
|
23
23
|
var items = [9, 10, 11, 12, 14, 16, 18, 20, 24, 30, 36];
|
24
24
|
return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
|
25
|
-
value: value,
|
26
|
-
|
25
|
+
value: "" + (value || ''),
|
26
|
+
valueRender: function valueRender(val) {
|
27
|
+
return /*#__PURE__*/_react["default"].createElement("div", {
|
28
|
+
style: {
|
29
|
+
width: 18
|
30
|
+
}
|
31
|
+
}, val || 12);
|
32
|
+
},
|
33
|
+
onChange: function onChange(val) {
|
34
|
+
return _onChange(parseInt(val, 10));
|
35
|
+
}
|
27
36
|
}, items.map(function (item) {
|
28
37
|
return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
|
29
38
|
key: item
|
@@ -33,28 +42,22 @@ function FontSizeSelect(props) {
|
|
33
42
|
|
34
43
|
function FontSizeWidget(props) {
|
35
44
|
var topo = props.topo,
|
36
|
-
showLabel = props.showLabel
|
37
|
-
|
38
|
-
|
39
|
-
});
|
40
|
-
|
41
|
-
var _useState = (0, _react.useState)(12),
|
42
|
-
fontSize = _useState[0],
|
43
|
-
setFontSize = _useState[1];
|
44
|
-
|
45
|
+
showLabel = props.showLabel,
|
46
|
+
style = props.style,
|
47
|
+
setStyle = props.setStyle;
|
45
48
|
return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
|
46
49
|
label: "\u5B57\u53F7",
|
47
50
|
showLabel: showLabel
|
48
51
|
}, /*#__PURE__*/_react["default"].createElement(FontSizeSelect, {
|
49
|
-
value: fontSize,
|
52
|
+
value: style.fontSize,
|
50
53
|
onChange: function onChange(val) {
|
51
|
-
|
52
|
-
fontStyleSetting.setStyle({
|
54
|
+
setStyle({
|
53
55
|
fontSize: val
|
54
56
|
});
|
55
57
|
}
|
56
58
|
}));
|
57
59
|
}
|
58
60
|
|
59
|
-
var _default = FontSizeWidget;
|
61
|
+
var _default = (0, _textStyleSettingRouter["default"])(FontSizeWidget);
|
62
|
+
|
60
63
|
exports["default"] = _default;
|
@@ -5,16 +5,14 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
5
5
|
exports.__esModule = true;
|
6
6
|
exports["default"] = void 0;
|
7
7
|
|
8
|
-
var
|
9
|
-
|
10
|
-
var _htElementUtils = require("../../../../../utils/htElementUtils");
|
11
|
-
|
12
|
-
var _fontStyleUtil = _interopRequireDefault(require("../../settings/common/text/fontStyleUtil"));
|
8
|
+
var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
13
9
|
|
14
|
-
var
|
10
|
+
var _react = _interopRequireWildcard(require("react"));
|
15
11
|
|
16
12
|
var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
|
17
13
|
|
14
|
+
var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
|
15
|
+
|
18
16
|
var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
|
19
17
|
|
20
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); }
|
@@ -35,67 +33,63 @@ var items = [{
|
|
35
33
|
icon: 'Underline'
|
36
34
|
}];
|
37
35
|
|
38
|
-
function
|
39
|
-
|
36
|
+
function buildValue(obj) {
|
37
|
+
return Object.keys(obj).filter(function (key) {
|
38
|
+
return !!obj[key];
|
39
|
+
});
|
40
|
+
}
|
40
41
|
|
41
|
-
|
42
|
+
function formatStyle(arr) {
|
43
|
+
return items.map(function (item) {
|
44
|
+
return item.key;
|
45
|
+
}).reduce(function (map, name) {
|
46
|
+
var _extends2;
|
42
47
|
|
43
|
-
|
44
|
-
|
45
|
-
bold: fontStyle.bold,
|
46
|
-
italic: fontStyle.italic
|
47
|
-
};
|
48
|
+
return (0, _extends3["default"])({}, map, (_extends2 = {}, _extends2[name] = arr.includes(name), _extends2));
|
49
|
+
}, {});
|
48
50
|
}
|
49
51
|
|
50
52
|
function FontStyleButton(props) {
|
51
53
|
var topo = props.topo,
|
52
|
-
showLabel = props.showLabel
|
54
|
+
showLabel = props.showLabel,
|
55
|
+
style = props.style,
|
56
|
+
setStyle = props.setStyle;
|
57
|
+
|
58
|
+
var _useState = (0, _react.useState)(false),
|
59
|
+
disabled = _useState[0],
|
60
|
+
setDisabled = _useState[1];
|
53
61
|
|
54
|
-
var
|
55
|
-
|
56
|
-
|
62
|
+
var bold = style.bold,
|
63
|
+
italic = style.italic,
|
64
|
+
underline = style.underline;
|
57
65
|
|
58
|
-
var _useState2 = (0, _react.useState)(
|
59
|
-
|
60
|
-
|
66
|
+
var _useState2 = (0, _react.useState)(buildValue({
|
67
|
+
bold: bold,
|
68
|
+
italic: italic,
|
69
|
+
underline: underline
|
70
|
+
})),
|
71
|
+
value = _useState2[0],
|
72
|
+
setValue = _useState2[1]; // 选中的元素
|
61
73
|
|
62
74
|
|
63
75
|
var selection = topo.selectionManager.useHtSelection();
|
64
|
-
var fontStyleSetting = (0, _useFontStyleSetting["default"])({
|
65
|
-
topo: topo
|
66
|
-
});
|
67
76
|
(0, _react.useEffect)(function () {
|
68
77
|
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);
|
87
78
|
}, [selection]);
|
79
|
+
(0, _react.useEffect)(function () {
|
80
|
+
setValue(buildValue({
|
81
|
+
bold: bold,
|
82
|
+
italic: italic,
|
83
|
+
underline: underline
|
84
|
+
}));
|
85
|
+
}, [bold, italic, underline]);
|
88
86
|
/**
|
89
87
|
*
|
90
88
|
* @param {Array} selectedKeys
|
91
89
|
*/
|
92
90
|
|
93
91
|
var handleChange = function handleChange(selectedKeys) {
|
94
|
-
|
95
|
-
var style = {
|
96
|
-
fontBold: selectedKeys.includes('bold')
|
97
|
-
};
|
98
|
-
fontStyleSetting.setStyle(style);
|
92
|
+
setStyle(formatStyle(selectedKeys));
|
99
93
|
};
|
100
94
|
|
101
95
|
return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
|
@@ -127,5 +121,6 @@ function FontStyleButton(props) {
|
|
127
121
|
})));
|
128
122
|
}
|
129
123
|
|
130
|
-
var _default = FontStyleButton;
|
124
|
+
var _default = (0, _textStyleSettingRouter["default"])(FontStyleButton);
|
125
|
+
|
131
126
|
exports["default"] = _default;
|
@@ -62,9 +62,10 @@ function NodeSizeButton(props) {
|
|
62
62
|
setDisabled(false);
|
63
63
|
|
64
64
|
if (selection.length === 1) {
|
65
|
+
var element = nodes[0];
|
65
66
|
setSize({
|
66
|
-
width:
|
67
|
-
height:
|
67
|
+
width: element.getWidth(),
|
68
|
+
height: element.getHeight()
|
68
69
|
});
|
69
70
|
}
|
70
71
|
} else {
|