@riil-frontend/component-topology 6.0.0-alpha.5 → 6.0.0-alpha.51
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 +35 -35
- package/demo/CHANGELOG/CHANGELOG.md +5 -0
- package/es/components/ColorPanel/components/ColorBlock/index.js +37 -0
- package/es/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
- package/es/components/ColorPanel/components/FontColorRange/index.js +35 -0
- package/es/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
- package/es/components/ColorPanel/index.js +241 -0
- package/es/components/ColorPanel/index.module.scss +35 -0
- package/es/components/VerticalIconTab/VerticalIconTab.js +11 -1
- package/es/components/VerticalIconTab/VerticalIconTab.module.scss +6 -0
- package/es/components/collapse/Collapse.js +22 -3
- package/es/components/collapse/Collapse.module.scss +24 -0
- package/es/components/collapse/index.js +2 -0
- package/es/core/common/hooks/useHtElements.js +21 -0
- package/es/core/common/icons/icon.js +41 -0
- package/es/core/common/icons/useIcons.js +8 -16
- package/es/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
- package/es/core/components/AlarmListPanel/components/index.module.scss +5 -5
- package/es/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
- package/es/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +9 -3
- package/es/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +122 -0
- package/es/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
- package/es/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +84 -22
- package/es/core/components/TopoView/GraphViewPanel.js +21 -0
- package/es/core/components/TopoView/editor.module.scss +1 -0
- package/es/core/components/TopoView/topoView.js +29 -49
- package/es/core/components/titlebar/TitleBar.module.scss +1 -1
- package/es/core/editor/components/EditorPlugin.js +8 -2
- package/es/core/editor/components/Sidebar/Sidebar.js +29 -3
- package/es/core/editor/components/Sidebar/panes.js +6 -1
- package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +36 -2
- package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
- package/es/core/editor/components/Sidebar/views/CanvasPanel/hooks/useCanvasThemeConfig.js +128 -0
- package/es/core/editor/components/Sidebar/views/CanvasPanel/hooks/useNewElementTheme.js +32 -0
- package/es/core/editor/components/Sidebar/views/CanvasPanel/themes.js +87 -0
- package/es/core/editor/components/Sidebar/views/CanvasPanel/utils/elementThemeUtil.js +0 -0
- package/es/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +3 -3
- package/es/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +12 -1
- package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +12 -1
- package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +3 -3
- package/es/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +27 -8
- package/es/core/editor/components/Toolbar/EditorToolbar.js +16 -9
- package/es/core/editor/components/Toolbar/buttons.js +20 -18
- package/es/core/editor/components/Toolbar/widgets/AddResourceButton.js +3 -3
- package/es/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +3 -3
- package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +46 -2
- package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +98 -6
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +74 -23
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +1 -3
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +18 -12
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +77 -0
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +74 -6
- package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +104 -16
- package/es/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +42 -0
- package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +25 -11
- package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +29 -13
- package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +100 -39
- package/es/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +1 -1
- package/es/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +2 -2
- package/es/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +109 -0
- package/es/core/editor/components/Toolbar/widgets/IconSelect/constant.js +64 -0
- package/es/core/editor/components/Toolbar/widgets/IconSelect/index.js +101 -0
- package/es/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
- package/es/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +49 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +99 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +42 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +75 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +23 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +10 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +31 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
- package/es/core/editor/components/Toolbar/widgets/Layout/index.js +130 -15
- package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +102 -23
- package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
- package/es/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +15 -5
- package/es/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -7
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +99 -14
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
- package/es/core/editor/components/Toolbar/widgets/WidgetBox.js +15 -5
- package/es/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
- package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.js +1 -1
- package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
- package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
- package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +16 -6
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +49 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +67 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +30 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +36 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +41 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +14 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +49 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +36 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +33 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +71 -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 +52 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +20 -0
- package/es/core/editor/components/settings/CloseablePanel.js +33 -0
- package/es/core/editor/components/settings/CloseablePanel.module.scss +21 -0
- package/es/core/editor/components/settings/PropertyView.js +35 -11
- package/es/core/editor/components/settings/Settings.js +42 -116
- package/es/core/editor/components/settings/Settings.module.scss +7 -11
- package/es/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +3 -3
- package/es/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +80 -0
- package/es/core/editor/components/settings/common/AlignSetting/index.js +20 -72
- package/es/core/editor/components/settings/common/GroupNodeList/ResourceList.module.scss +1 -0
- package/es/core/editor/components/settings/common/LineType/index.js +12 -119
- package/es/core/editor/components/settings/common/NameInput.js +24 -0
- package/es/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +3 -3
- package/es/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +31 -21
- package/es/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +7 -6
- package/es/core/editor/components/settings/common/text/fontStyleUtil.js +11 -19
- package/es/core/editor/components/settings/core/PropertyViewManager.js +68 -0
- package/es/core/editor/components/settings/core/getPropertyViewType.js +34 -0
- package/es/core/editor/components/settings/core/updateElementProperty.js +21 -0
- package/es/core/editor/components/settings/propertyViews/box/BoxPropertyView.js +6 -13
- package/es/core/editor/components/settings/propertyViews/box/BoxPropertyViewV1.js +58 -0
- package/es/core/editor/components/settings/propertyViews/box/NameInput.js +5 -4
- package/es/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +12 -3
- package/es/core/editor/components/settings/propertyViews/edge/EdgeGroupPropertyView.js +7 -8
- package/es/core/editor/components/settings/propertyViews/edge/EdgePropertyView.js +9 -23
- package/es/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +10 -0
- package/es/core/editor/components/settings/propertyViews/edge/edgeGroup/EdgeGroupSetting.js +1 -6
- package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +13 -21
- package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.module.scss +8 -1
- package/es/core/editor/components/settings/propertyViews/group/GroupPropertyViewV1.js +28 -0
- package/es/core/editor/components/settings/propertyViews/group/SettingTab/GroupBasicSetting.js +75 -0
- package/es/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +9 -15
- package/es/core/editor/components/settings/propertyViews/group/cluster/ClusterGroupRelateData.js +8 -6
- package/es/core/editor/components/settings/propertyViews/index.js +4 -2
- package/es/core/editor/components/settings/propertyViews/layer/BasicSetting.js +58 -0
- package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyView.js +11 -17
- package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyView.module.scss +10 -0
- package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyViewV1.js +27 -0
- package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +8 -9
- package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
- package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
- package/es/core/editor/components/settings/propertyViews/node/NodePropertyView.js +8 -32
- package/es/core/editor/components/settings/propertyViews/node/NodePropertyViewV1.js +53 -0
- package/es/core/editor/components/settings/propertyViews/node/Setting/BasicSetting.js +49 -0
- package/es/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +5 -4
- package/es/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
- package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +1 -0
- package/es/core/editor/components/settings/propertyViews/text/TextPropertyView.js +5 -20
- package/es/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +9 -6
- package/es/core/editor/components/titlebar/TopoEditorTitleBar.js +8 -4
- package/es/core/editor/hooks/useKeyboardShortcut.js +42 -0
- package/es/core/editor/store/topoEdit.js +44 -34
- package/es/core/editor/utils/edgeTypeStyleUtil.js +96 -0
- package/es/core/editor/utils/textStyleUtil.js +0 -0
- package/es/core/hooks/useCanvasTheme.js +61 -0
- package/es/core/hooks/usePolling.js +2 -5
- package/es/core/hooks/useTopoEdit.js +30 -12
- package/es/core/models/Alarm.js +2 -2
- package/es/core/models/AttributeMetricDisplay.js +4 -0
- package/es/core/models/HistoryManager.js +13 -8
- package/es/core/models/{SelectionManager.js → SelectionModel.js} +55 -22
- package/es/core/models/TopoApp.js +3 -3
- package/es/core/models/TopoGraphView.js +8 -2
- package/es/core/models/selection/ignoreList.js +1 -0
- package/es/core/models/utils/linkUtils.js +5 -6
- package/es/core/store/models/selection.js +2 -1
- package/es/core/store/models/topoBizMod.js +0 -3
- package/es/core/store/models/topoConfig.js +10 -12
- package/es/core/store/models/topoMod.js +26 -28
- package/es/core/utils/edgeUtil.js +6 -0
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
- package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
- package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
- package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
- package/es/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
- package/es/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
- package/es/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +39 -6
- package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +10 -16
- package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +37 -0
- package/es/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +1 -1
- package/es/networkTopo/createTopo.js +2 -0
- package/es/networkTopo/models/LinkDynamicStyleExecutor.js +2 -2
- package/es/networkTopo/services/link.js +2 -2
- package/es/networkTopo/store/topoTreeMod.js +6 -7
- package/es/style.js +2 -1
- package/es/utils/htElementUtils.js +3 -0
- package/es/utils/topoData.js +1 -0
- package/lib/components/ColorPanel/components/ColorBlock/index.js +47 -0
- package/lib/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
- package/lib/components/ColorPanel/components/FontColorRange/index.js +49 -0
- package/lib/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
- package/lib/components/ColorPanel/index.js +259 -0
- package/lib/components/ColorPanel/index.module.scss +35 -0
- package/lib/components/VerticalIconTab/VerticalIconTab.js +14 -1
- package/lib/components/VerticalIconTab/VerticalIconTab.module.scss +6 -0
- package/lib/components/collapse/Collapse.js +28 -3
- package/lib/components/collapse/Collapse.module.scss +24 -0
- package/lib/components/collapse/index.js +11 -0
- package/lib/core/common/hooks/useHtElements.js +27 -0
- package/lib/core/common/icons/icon.js +48 -0
- package/lib/core/common/icons/useIcons.js +10 -15
- package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
- package/lib/core/components/AlarmListPanel/components/index.module.scss +5 -5
- package/lib/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
- package/lib/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +10 -3
- package/lib/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +147 -0
- package/lib/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
- package/lib/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +84 -22
- package/lib/core/components/TopoView/GraphViewPanel.js +31 -0
- package/lib/core/components/TopoView/editor.module.scss +1 -0
- package/lib/core/components/TopoView/topoView.js +32 -50
- package/lib/core/components/titlebar/TitleBar.module.scss +1 -1
- package/lib/core/editor/components/EditorPlugin.js +13 -2
- package/lib/core/editor/components/Sidebar/Sidebar.js +28 -2
- package/lib/core/editor/components/Sidebar/panes.js +6 -1
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +43 -2
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/hooks/useCanvasThemeConfig.js +142 -0
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/hooks/useNewElementTheme.js +48 -0
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/themes.js +96 -0
- package/lib/core/editor/components/Sidebar/views/CanvasPanel/utils/elementThemeUtil.js +1 -0
- package/lib/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +1 -1
- package/lib/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +13 -1
- package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +13 -1
- package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +3 -3
- package/lib/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +36 -12
- package/lib/core/editor/components/Toolbar/EditorToolbar.js +14 -7
- package/lib/core/editor/components/Toolbar/buttons.js +21 -20
- package/lib/core/editor/components/Toolbar/widgets/AddResourceButton.js +3 -3
- package/lib/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +3 -3
- package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +48 -2
- package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +100 -6
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +73 -22
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +1 -3
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +19 -10
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +83 -0
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +76 -5
- package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +109 -16
- package/lib/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +42 -0
- package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +26 -10
- package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +30 -12
- package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +105 -39
- package/lib/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +1 -1
- package/lib/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +2 -2
- package/lib/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +126 -0
- package/lib/core/editor/components/Toolbar/widgets/IconSelect/constant.js +69 -0
- package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.js +117 -0
- package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
- package/lib/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +61 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +116 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +55 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +93 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +32 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +22 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +44 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
- package/lib/core/editor/components/Toolbar/widgets/Layout/index.js +135 -16
- package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +105 -23
- package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
- package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +21 -5
- package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -6
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +100 -13
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
- package/lib/core/editor/components/Toolbar/widgets/WidgetBox.js +18 -5
- package/lib/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
- package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.js +1 -1
- package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +17 -6
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +63 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +82 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +45 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +52 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +57 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +28 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +64 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +52 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +48 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +83 -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 +65 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +31 -0
- package/lib/core/editor/components/settings/CloseablePanel.js +46 -0
- package/lib/core/editor/components/settings/CloseablePanel.module.scss +21 -0
- package/lib/core/editor/components/settings/PropertyView.js +43 -12
- package/lib/core/editor/components/settings/Settings.js +47 -118
- package/lib/core/editor/components/settings/Settings.module.scss +7 -11
- package/lib/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +3 -3
- package/lib/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +97 -0
- package/lib/core/editor/components/settings/common/AlignSetting/index.js +21 -80
- package/lib/core/editor/components/settings/common/GroupNodeList/ResourceList.module.scss +1 -0
- package/lib/core/editor/components/settings/common/LineType/index.js +13 -126
- package/lib/core/editor/components/settings/common/NameInput.js +38 -0
- package/lib/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +2 -2
- package/lib/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +32 -23
- package/lib/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +6 -6
- package/lib/core/editor/components/settings/common/text/fontStyleUtil.js +12 -20
- package/lib/core/editor/components/settings/core/PropertyViewManager.js +77 -0
- package/lib/core/editor/components/settings/core/getPropertyViewType.js +40 -0
- package/lib/core/editor/components/settings/core/updateElementProperty.js +27 -0
- package/lib/core/editor/components/settings/propertyViews/box/BoxPropertyView.js +6 -13
- package/lib/core/editor/components/settings/propertyViews/box/BoxPropertyViewV1.js +76 -0
- package/lib/core/editor/components/settings/propertyViews/box/NameInput.js +6 -5
- package/lib/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +15 -3
- package/lib/core/editor/components/settings/propertyViews/edge/EdgeGroupPropertyView.js +9 -12
- package/lib/core/editor/components/settings/propertyViews/edge/EdgePropertyView.js +7 -23
- package/lib/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +19 -0
- package/lib/core/editor/components/settings/propertyViews/edge/edgeGroup/EdgeGroupSetting.js +1 -6
- package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +14 -25
- package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.module.scss +8 -1
- package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyViewV1.js +43 -0
- package/lib/core/editor/components/settings/propertyViews/group/SettingTab/GroupBasicSetting.js +98 -0
- package/lib/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +8 -14
- package/lib/core/editor/components/settings/propertyViews/group/cluster/ClusterGroupRelateData.js +9 -7
- package/lib/core/editor/components/settings/propertyViews/index.js +5 -2
- package/lib/core/editor/components/settings/propertyViews/layer/BasicSetting.js +77 -0
- package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyView.js +12 -20
- package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyView.module.scss +10 -0
- package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyViewV1.js +40 -0
- package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +6 -8
- package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
- package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
- package/lib/core/editor/components/settings/propertyViews/node/NodePropertyView.js +8 -35
- package/lib/core/editor/components/settings/propertyViews/node/NodePropertyViewV1.js +68 -0
- package/lib/core/editor/components/settings/propertyViews/node/Setting/BasicSetting.js +64 -0
- package/lib/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +6 -5
- package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
- package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +1 -0
- package/lib/core/editor/components/settings/propertyViews/text/TextPropertyView.js +5 -20
- package/lib/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +7 -5
- package/lib/core/editor/components/titlebar/TopoEditorTitleBar.js +9 -1
- package/lib/core/editor/hooks/useKeyboardShortcut.js +52 -0
- package/lib/core/editor/store/topoEdit.js +46 -37
- package/lib/core/editor/utils/edgeTypeStyleUtil.js +109 -0
- package/lib/core/editor/utils/textStyleUtil.js +1 -0
- package/lib/core/hooks/useCanvasTheme.js +75 -0
- package/lib/core/hooks/usePolling.js +2 -5
- package/lib/core/hooks/useTopoEdit.js +31 -12
- package/lib/core/models/Alarm.js +2 -2
- package/lib/core/models/AttributeMetricDisplay.js +4 -0
- package/lib/core/models/HistoryManager.js +13 -8
- package/lib/core/models/{SelectionManager.js → SelectionModel.js} +57 -22
- package/lib/core/models/TopoApp.js +3 -3
- package/lib/core/models/TopoGraphView.js +8 -2
- package/lib/core/models/selection/ignoreList.js +6 -0
- package/lib/core/models/utils/linkUtils.js +5 -6
- package/lib/core/store/models/selection.js +2 -1
- package/lib/core/store/models/topoBizMod.js +0 -3
- package/lib/core/store/models/topoConfig.js +9 -18
- package/lib/core/store/models/topoMod.js +27 -29
- package/lib/core/utils/edgeUtil.js +6 -0
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
- package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
- package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
- package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
- package/lib/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
- package/lib/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
- package/lib/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +45 -7
- package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +10 -18
- package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +50 -0
- package/lib/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +1 -1
- package/lib/networkTopo/createTopo.js +3 -0
- package/lib/networkTopo/models/LinkDynamicStyleExecutor.js +2 -2
- package/lib/networkTopo/services/link.js +2 -2
- package/lib/networkTopo/store/topoTreeMod.js +6 -8
- package/lib/style.js +2 -1
- package/lib/utils/htElementUtils.js +5 -0
- package/lib/utils/topoData.js +1 -0
- package/package.json +5 -4
- package/es/core/store/models/topoView.js +0 -36
- package/lib/core/store/models/topoView.js +0 -47
@@ -0,0 +1,41 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import fontStyleUtil from "../../../../../../settings/common/text/fontStyleUtil";
|
3
|
+
import { formatBackgroundRgbaColor, parseBackground, parseColor } from "../colorUtil";
|
4
|
+
import nodeTag from "./nodeTag";
|
5
|
+
export function getTextStyle(element) {
|
6
|
+
if (!element.isExpanded()) {
|
7
|
+
// eslint-disable-next-line import/no-named-as-default-member
|
8
|
+
return nodeTag.getTextStyle(element);
|
9
|
+
}
|
10
|
+
|
11
|
+
var underline = element.s('text.decoration') === 'underline';
|
12
|
+
return _extends({
|
13
|
+
color: parseColor(element.s('group.title.color')),
|
14
|
+
underline: underline
|
15
|
+
}, fontStyleUtil.toMap(element.s('group.title.font')), parseBackground(element.s('group.title.background')));
|
16
|
+
}
|
17
|
+
export function setTextStyle(element, style, topo) {
|
18
|
+
if (!element.isExpanded()) {
|
19
|
+
// eslint-disable-next-line import/no-named-as-default-member
|
20
|
+
return nodeTag.setTextStyle(element, style, topo);
|
21
|
+
} // if ('underline' in style) {
|
22
|
+
// }
|
23
|
+
|
24
|
+
|
25
|
+
if ('color' in style) {
|
26
|
+
element.s('group.title.color', style.color.hex);
|
27
|
+
} // 背景颜色
|
28
|
+
|
29
|
+
|
30
|
+
var prevStyle = getTextStyle(element);
|
31
|
+
element.s('group.title.background', formatBackgroundRgbaColor(prevStyle, style));
|
32
|
+
|
33
|
+
var fontStyle = _extends({}, getTextStyle(element), style);
|
34
|
+
|
35
|
+
var fontStr = fontStyleUtil.build(fontStyle);
|
36
|
+
element.s('group.title.font', fontStr);
|
37
|
+
}
|
38
|
+
export default {
|
39
|
+
getTextStyle: getTextStyle,
|
40
|
+
setTextStyle: setTextStyle
|
41
|
+
};
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import text from "./text";
|
2
|
+
import nodeTag from "./nodeTag";
|
3
|
+
import edgeTag from "./edgeTag";
|
4
|
+
import groupTitle from "./groupTitle";
|
5
|
+
import layerTitle from "./layerTitle";
|
6
|
+
import box from "./box";
|
7
|
+
export default {
|
8
|
+
nodeTag: nodeTag,
|
9
|
+
edgeTag: edgeTag,
|
10
|
+
text: text,
|
11
|
+
groupTitle: groupTitle,
|
12
|
+
layerTitle: layerTitle,
|
13
|
+
box: box
|
14
|
+
};
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import fontStyleUtil from "../../../../../../settings/common/text/fontStyleUtil";
|
3
|
+
import { formatBackgroundRgbaColor, parseBackground, parseColor } from "../colorUtil";
|
4
|
+
var defaultStyle = {};
|
5
|
+
|
6
|
+
function getLabelStyle(element) {
|
7
|
+
return _extends({}, defaultStyle, element.a('labelStyle') || {});
|
8
|
+
}
|
9
|
+
|
10
|
+
function setLabelStyle(element, style) {
|
11
|
+
element.a('labelStyle', _extends({}, element.a('labelStyle'), style)); // eslint-disable-next-line no-underscore-dangle
|
12
|
+
|
13
|
+
element.__labelNode.a(style);
|
14
|
+
|
15
|
+
console.error(element.__labelNode.getAttrObject());
|
16
|
+
} // 分层标题文字样式
|
17
|
+
|
18
|
+
|
19
|
+
export function getTextStyle(element) {
|
20
|
+
var style = getLabelStyle(element);
|
21
|
+
var underline = null;
|
22
|
+
return _extends({
|
23
|
+
color: parseColor(style.fontColor),
|
24
|
+
underline: underline
|
25
|
+
}, fontStyleUtil.toMap(style.font), parseBackground(style.background));
|
26
|
+
}
|
27
|
+
export function setTextStyle(element, style) {
|
28
|
+
// if ('underline' in style) {
|
29
|
+
// }
|
30
|
+
var labelStyle = {};
|
31
|
+
|
32
|
+
if ('color' in style) {
|
33
|
+
labelStyle.fontColor = style.color.hex;
|
34
|
+
} // 背景颜色
|
35
|
+
|
36
|
+
|
37
|
+
var prevStyle = getTextStyle(element);
|
38
|
+
labelStyle.background = formatBackgroundRgbaColor(prevStyle, style);
|
39
|
+
|
40
|
+
var fontStyle = _extends({}, getTextStyle(element), style);
|
41
|
+
|
42
|
+
var fontStr = fontStyleUtil.build(fontStyle);
|
43
|
+
labelStyle.font = fontStr;
|
44
|
+
setLabelStyle(element, labelStyle);
|
45
|
+
}
|
46
|
+
export default {
|
47
|
+
getTextStyle: getTextStyle,
|
48
|
+
setTextStyle: setTextStyle
|
49
|
+
};
|
@@ -0,0 +1,36 @@
|
|
1
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
2
|
+
import _extends from "@babel/runtime/helpers/extends";
|
3
|
+
var _excluded = ["color", "background", "opacity"];
|
4
|
+
import fontStyleUtil from "../../../../../../settings/common/text/fontStyleUtil";
|
5
|
+
import { formatBackgroundRgbaColor, parseBackground, parseColor } from "../colorUtil";
|
6
|
+
export function getTextStyle(element) {
|
7
|
+
var underline = null;
|
8
|
+
return _extends({
|
9
|
+
color: parseColor(element.a('ht.color')),
|
10
|
+
underline: underline
|
11
|
+
}, fontStyleUtil.toMap(element.a('ht.font')), parseBackground(element.a('ht.background')));
|
12
|
+
}
|
13
|
+
export function setTextStyle(element, style, topo) {
|
14
|
+
var color = style.color,
|
15
|
+
background = style.background,
|
16
|
+
opacity = style.opacity,
|
17
|
+
otherStyle = _objectWithoutPropertiesLoose(style, _excluded);
|
18
|
+
|
19
|
+
var tagStyle = _extends({}, otherStyle);
|
20
|
+
|
21
|
+
if ('color' in style) {
|
22
|
+
tagStyle.color = color.hex;
|
23
|
+
}
|
24
|
+
|
25
|
+
if ('background' in style || 'opacity' in style) {
|
26
|
+
// 背景颜色
|
27
|
+
var prevStyle = getTextStyle(element);
|
28
|
+
tagStyle.background = formatBackgroundRgbaColor(prevStyle, style);
|
29
|
+
}
|
30
|
+
|
31
|
+
topo.getHtTopo().setNodeLabelStyle(element, tagStyle);
|
32
|
+
}
|
33
|
+
export default {
|
34
|
+
getTextStyle: getTextStyle,
|
35
|
+
setTextStyle: setTextStyle
|
36
|
+
};
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import fontStyleUtil from "../../../../../../settings/common/text/fontStyleUtil";
|
3
|
+
import { formatBackgroundRgbaColor, parseBackground, parseColor } from "../colorUtil";
|
4
|
+
export function getTextStyle(element) {
|
5
|
+
var underline = element.s('text.decoration') === 'underline';
|
6
|
+
return _extends({
|
7
|
+
color: parseColor(element.s('text.color')),
|
8
|
+
underline: underline
|
9
|
+
}, fontStyleUtil.toMap(element.s('text.font')), parseBackground(element.s('textBackground')));
|
10
|
+
}
|
11
|
+
export function setTextStyle(element, style) {
|
12
|
+
if ('underline' in style) {
|
13
|
+
element.s('text.decoration', style.underline ? 'underline' : null);
|
14
|
+
}
|
15
|
+
|
16
|
+
if ('color' in style) {
|
17
|
+
element.s('text.color', style.color.hex);
|
18
|
+
} // 背景颜色
|
19
|
+
|
20
|
+
|
21
|
+
var prevStyle = getTextStyle(element);
|
22
|
+
var background = formatBackgroundRgbaColor(prevStyle, style);
|
23
|
+
element.s('textBackground', background);
|
24
|
+
|
25
|
+
var fontStyle = _extends({}, getTextStyle(element), style);
|
26
|
+
|
27
|
+
var fontStr = fontStyleUtil.build(fontStyle);
|
28
|
+
element.s('text.font', fontStr);
|
29
|
+
}
|
30
|
+
export default {
|
31
|
+
getTextStyle: getTextStyle,
|
32
|
+
setTextStyle: setTextStyle
|
33
|
+
};
|
@@ -0,0 +1,71 @@
|
|
1
|
+
import { isGroup, isLayer, isNode, isText, isEdge } from "../../../../../../../../utils/htElementUtils";
|
2
|
+
import typeMap from "./elements";
|
3
|
+
|
4
|
+
function getElementType(element) {
|
5
|
+
if (isText(element)) {
|
6
|
+
return 'text';
|
7
|
+
} else if (element.a('type') === 'box') {
|
8
|
+
return 'box';
|
9
|
+
} else if (isGroup(element)) {
|
10
|
+
return 'groupTitle';
|
11
|
+
} else if (isNode(element)) {
|
12
|
+
return 'nodeTag';
|
13
|
+
} else if (isEdge(element)) {
|
14
|
+
return 'edgeTag';
|
15
|
+
} else if (isLayer(element)) {
|
16
|
+
return 'layerTitle';
|
17
|
+
}
|
18
|
+
|
19
|
+
return null;
|
20
|
+
}
|
21
|
+
|
22
|
+
export function getElementTextStyle(element) {
|
23
|
+
var type = getElementType(element);
|
24
|
+
var handler = typeMap[type];
|
25
|
+
|
26
|
+
if (handler) {
|
27
|
+
return handler.getTextStyle(element);
|
28
|
+
}
|
29
|
+
|
30
|
+
return null;
|
31
|
+
}
|
32
|
+
export function getTextStyle(htSelection, styleNames) {
|
33
|
+
if (htSelection.length === 1) {
|
34
|
+
var element = htSelection[0];
|
35
|
+
return getElementTextStyle(element);
|
36
|
+
} else if (htSelection.length) {
|
37
|
+
// 多选时值相同返回?
|
38
|
+
var values = htSelection.map(function (element) {
|
39
|
+
return getElementTextStyle(element);
|
40
|
+
}).filter(function (item) {
|
41
|
+
return !!item;
|
42
|
+
});
|
43
|
+
|
44
|
+
if (!values.length) {
|
45
|
+
return null;
|
46
|
+
}
|
47
|
+
|
48
|
+
var value = {};
|
49
|
+
styleNames.forEach(function (styleName) {
|
50
|
+
var val = values[0][styleName];
|
51
|
+
var different = values.filter(function (obj) {
|
52
|
+
return obj[styleName] !== val;
|
53
|
+
});
|
54
|
+
|
55
|
+
if (!different.length) {
|
56
|
+
value[styleName] = val;
|
57
|
+
}
|
58
|
+
});
|
59
|
+
return Object.keys(value).length ? value : null;
|
60
|
+
}
|
61
|
+
|
62
|
+
return null;
|
63
|
+
}
|
64
|
+
export function setTextStyle(element, style, topo) {
|
65
|
+
var type = getElementType(element);
|
66
|
+
var handler = typeMap[type];
|
67
|
+
|
68
|
+
if (handler) {
|
69
|
+
handler.setTextStyle(element, style, topo);
|
70
|
+
}
|
71
|
+
}
|
@@ -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,52 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
2
|
+
import { formatBackgroundRgbaColor, parseBackground } from "../ElementTextStyleSetting/colorUtil";
|
3
|
+
var defaultStyle = {
|
4
|
+
color: '#AFB9C2',
|
5
|
+
fontFamily: '微软雅黑'
|
6
|
+
};
|
7
|
+
export function useValues(topo) {
|
8
|
+
var displayConfigState = topo.store.useModelState('displayConfig');
|
9
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
10
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
11
|
+
return _extends({
|
12
|
+
color: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.color) || defaultStyle.color,
|
13
|
+
fontFamily: (nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontFamily) || defaultStyle.fontFamily,
|
14
|
+
fontSize: nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.fontSize
|
15
|
+
}, parseBackground(nodeLabelStyle === null || nodeLabelStyle === void 0 ? void 0 : nodeLabelStyle.background));
|
16
|
+
}
|
17
|
+
export var setGlobalTagStyle = function setGlobalTagStyle(topo, styleData) {
|
18
|
+
var _topo$store$getModel = topo.store.getModel('displayConfig'),
|
19
|
+
displayConfigState = _topo$store$getModel[0],
|
20
|
+
displayConfigDispatchers = _topo$store$getModel[1];
|
21
|
+
|
22
|
+
var nodeLabelStyle = displayConfigState.nodeLabelStyle,
|
23
|
+
defaultEdgeLabelStyle = displayConfigState.defaultEdgeLabelStyle;
|
24
|
+
var style = buildStyle(styleData, nodeLabelStyle);
|
25
|
+
|
26
|
+
var globalNodeLabelStyle = _extends({}, nodeLabelStyle, style);
|
27
|
+
|
28
|
+
topo.getHtTopo().setGlobalNodeLabelStyle(globalNodeLabelStyle);
|
29
|
+
var globalEdgeTagStyle = globalNodeLabelStyle;
|
30
|
+
topo.getHtTopo().setGlobalEdgeTagStyle(globalEdgeTagStyle);
|
31
|
+
displayConfigDispatchers.update({
|
32
|
+
nodeLabelStyle: globalNodeLabelStyle,
|
33
|
+
defaultEdgeLabelStyle: globalEdgeTagStyle
|
34
|
+
});
|
35
|
+
};
|
36
|
+
|
37
|
+
function buildStyle(styleData, prevTagStyle) {
|
38
|
+
var style = {};
|
39
|
+
|
40
|
+
if ('color' in styleData) {
|
41
|
+
style.color = styleData.color.hex;
|
42
|
+
}
|
43
|
+
|
44
|
+
if ('background' in styleData || 'opacity' in styleData) {
|
45
|
+
var prevBackgroundStyle = parseBackground(prevTagStyle === null || prevTagStyle === void 0 ? void 0 : prevTagStyle.background);
|
46
|
+
style.background = formatBackgroundRgbaColor(prevBackgroundStyle, styleData);
|
47
|
+
}
|
48
|
+
|
49
|
+
return style;
|
50
|
+
}
|
51
|
+
|
52
|
+
export function setStyle() {}
|
@@ -0,0 +1,20 @@
|
|
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
|
+
var names = (options === null || options === void 0 ? void 0 : options.names) || [];
|
8
|
+
return function TextStyleSettingButton(props) {
|
9
|
+
var topo = props.topo;
|
10
|
+
var selection = topo.selectionModel.useHtSelection();
|
11
|
+
var Widget = !selection.length ? GlobalTagStyleSetting : ElementTextStyleSetting;
|
12
|
+
return /*#__PURE__*/React.createElement(Widget, _extends({
|
13
|
+
Component: Component
|
14
|
+
}, props, {
|
15
|
+
styleNames: names
|
16
|
+
}));
|
17
|
+
};
|
18
|
+
}
|
19
|
+
|
20
|
+
export default textStyleSettingRouter;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import _ConfigProvider from "@alifd/next/es/config-provider";
|
2
|
+
import _Icon from "@alifd/next/es/icon";
|
3
|
+
import React from 'react';
|
4
|
+
import styles from "./CloseablePanel.module.scss";
|
5
|
+
|
6
|
+
function CloseablePanel(props) {
|
7
|
+
var prefix = props.prefix,
|
8
|
+
title = props.title,
|
9
|
+
onClose = props.onClose,
|
10
|
+
children = props.children;
|
11
|
+
return /*#__PURE__*/React.createElement("div", {
|
12
|
+
className: styles.panel
|
13
|
+
}, /*#__PURE__*/React.createElement("div", {
|
14
|
+
className: prefix + "drawer-header",
|
15
|
+
role: "heading",
|
16
|
+
"aria-level": "1"
|
17
|
+
}, title, /*#__PURE__*/React.createElement("a", {
|
18
|
+
role: "button",
|
19
|
+
"aria-label": "\u5173\u95ED",
|
20
|
+
className: prefix + "drawer-close",
|
21
|
+
onClick: onClose
|
22
|
+
}, /*#__PURE__*/React.createElement(_Icon, {
|
23
|
+
type: "close",
|
24
|
+
className: "next-drawer-close-icon"
|
25
|
+
}))), /*#__PURE__*/React.createElement("div", {
|
26
|
+
className: styles.body
|
27
|
+
}, children));
|
28
|
+
}
|
29
|
+
|
30
|
+
CloseablePanel.defaultProps = {
|
31
|
+
prefix: 'next-'
|
32
|
+
};
|
33
|
+
export default _ConfigProvider.config(CloseablePanel);
|
@@ -0,0 +1,21 @@
|
|
1
|
+
@import '~@alifd/next/variables.scss';
|
2
|
+
|
3
|
+
|
4
|
+
.panel {
|
5
|
+
height: 100%;
|
6
|
+
display: flex;
|
7
|
+
flex-direction: column;
|
8
|
+
background: #FFFFFF;
|
9
|
+
|
10
|
+
|
11
|
+
:global {
|
12
|
+
.#{$css-prefix}drawer-header {
|
13
|
+
padding-left: 16px;
|
14
|
+
padding-right: 16px;
|
15
|
+
}
|
16
|
+
}
|
17
|
+
}
|
18
|
+
.body {
|
19
|
+
flex: 1;
|
20
|
+
overflow: auto;
|
21
|
+
}
|
@@ -1,37 +1,61 @@
|
|
1
|
-
import
|
1
|
+
import classNames from 'classnames';
|
2
|
+
import React, { useEffect, useMemo } from 'react';
|
3
|
+
import CloseablePanel from "./CloseablePanel";
|
4
|
+
import PropertyViewManager from "./core/PropertyViewManager";
|
2
5
|
import Settings from "./Settings";
|
3
6
|
import styles from "./Settings.module.scss";
|
4
|
-
export default function
|
7
|
+
export default function PropertyPanel(props) {
|
8
|
+
var _classNames;
|
9
|
+
|
5
10
|
var topo = props.topo,
|
6
11
|
editorProps = props.editorProps;
|
7
12
|
var store = topo.store;
|
8
13
|
var topoState = store.useModelState('topoMod');
|
14
|
+
var topoShowType = topoState.type,
|
15
|
+
graphLoaded = topoState.graphLoaded;
|
9
16
|
|
10
17
|
var _store$useModelState = store.useModelState('selection'),
|
11
18
|
selection = _store$useModelState.selection;
|
12
19
|
|
13
|
-
var
|
14
|
-
|
20
|
+
var _topo$store$useModel = topo.store.useModel('topoEdit'),
|
21
|
+
topoEditState = _topo$store$useModel[0],
|
22
|
+
topoEditDispatchers = _topo$store$useModel[1];
|
23
|
+
|
24
|
+
var propertyPanelVisible = topoEditState.propertyPanelVisible;
|
25
|
+
var propertyViewManager = useMemo(function () {
|
26
|
+
return new PropertyViewManager(topo);
|
27
|
+
}, []);
|
28
|
+
useEffect(function () {
|
29
|
+
if (graphLoaded) {
|
30
|
+
propertyViewManager.init();
|
31
|
+
}
|
15
32
|
|
16
|
-
|
17
|
-
|
18
|
-
|
33
|
+
return function () {
|
34
|
+
propertyViewManager.destroy();
|
35
|
+
};
|
36
|
+
}, [graphLoaded, propertyViewManager]);
|
19
37
|
|
20
38
|
var renderContent = function renderContent() {
|
21
|
-
if (!
|
39
|
+
if (!propertyPanelVisible) {
|
22
40
|
return null;
|
23
41
|
}
|
24
42
|
|
25
43
|
return /*#__PURE__*/React.createElement(Settings, {
|
26
44
|
topo: topo,
|
45
|
+
selection: selection,
|
46
|
+
propertyViewManager: propertyViewManager,
|
27
47
|
topoShowType: topoShowType,
|
28
48
|
topoEditApi: topo.topoEdit,
|
29
|
-
selection: selection,
|
30
49
|
editorProps: editorProps
|
31
50
|
});
|
32
51
|
};
|
33
52
|
|
34
53
|
return /*#__PURE__*/React.createElement("div", {
|
35
|
-
className: styles.
|
36
|
-
},
|
54
|
+
className: classNames(styles.propertyPanel, (_classNames = {}, _classNames[styles.hide] = !propertyPanelVisible, _classNames))
|
55
|
+
}, /*#__PURE__*/React.createElement(CloseablePanel, {
|
56
|
+
title: "\u6570\u636E\u5C5E\u6027",
|
57
|
+
onClose: function onClose() {
|
58
|
+
propertyViewManager.close();
|
59
|
+
}
|
60
|
+
}, renderContent()));
|
37
61
|
}
|
@@ -1,141 +1,67 @@
|
|
1
1
|
import _extends from "@babel/runtime/helpers/extends";
|
2
|
-
import React from
|
3
|
-
import { isEdge, isGroup, isLayer, isNode, isText } from "../../../../utils/htElementDataUtil";
|
4
|
-
import propertyPanelMap from "./propertyViews";
|
2
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
5
3
|
import useSettingRuntimeState from "./useSettingRuntimeState";
|
6
|
-
import
|
4
|
+
import updateElementProperty from "./core/updateElementProperty";
|
7
5
|
|
8
|
-
function
|
9
|
-
var
|
10
|
-
var selectionSize = selection.length;
|
11
|
-
var elementType;
|
12
|
-
|
13
|
-
if (!selectionSize) {
|
14
|
-
// 未选
|
15
|
-
elementType = "view";
|
16
|
-
} else if (selectionSize >= 2) {
|
17
|
-
// 多选
|
18
|
-
elementType = "multiple";
|
19
|
-
} else if (isGroup(selectionElement)) {
|
20
|
-
elementType = "group";
|
21
|
-
} else if (selectionElement.attrObject.topLeftText) {
|
22
|
-
// TODO 临时方式
|
23
|
-
elementType = "box";
|
24
|
-
} else if (isNode(selectionElement)) {
|
25
|
-
elementType = "node";
|
26
|
-
} else if (isEdge(selectionElement)) {
|
27
|
-
elementType = "edge";
|
28
|
-
} else if (isLayer(selectionElement)) {
|
29
|
-
// 分层
|
30
|
-
elementType = "layer";
|
31
|
-
} else if (isText(selectionElement)) {
|
32
|
-
elementType = "text";
|
33
|
-
}
|
6
|
+
function buildElementValues(selection) {
|
7
|
+
var values = _extends({}, selection[0]);
|
34
8
|
|
35
|
-
|
9
|
+
var attrTypes = ['attrObject', 'position', 'styleMap'];
|
10
|
+
attrTypes.forEach(function (type) {
|
11
|
+
Object.keys(values[type] || {}).forEach(function (key) {
|
12
|
+
values[type + "." + key] = values[type][key];
|
13
|
+
});
|
14
|
+
});
|
15
|
+
return values;
|
36
16
|
}
|
37
17
|
|
38
|
-
export default function
|
18
|
+
export default function PropertyViewContainer(props) {
|
39
19
|
var topo = props.topo,
|
40
20
|
topoShowType = props.topoShowType,
|
41
21
|
topoEditApi = props.topoEditApi,
|
42
22
|
selection = props.selection,
|
43
|
-
editorProps = props.editorProps
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
if (name.startsWith("attrObject.")) {
|
58
|
-
element.setAttr(name.replace("attrObject.", ""), value);
|
59
|
-
} else if (name.startsWith("position.")) {
|
60
|
-
element.setPosition(name.replace("position.", ""), value);
|
61
|
-
} else if (name.startsWith("styleMap.")) {
|
62
|
-
element.setStyle(name.replace("styleMap.", ""), value);
|
63
|
-
} else if (name === "name") {
|
64
|
-
element.setName(value);
|
65
|
-
} else if (name === "width") {
|
66
|
-
element.setWidth(value);
|
67
|
-
} else if (name === "height") {
|
68
|
-
element.setHeight(value);
|
69
|
-
} else if (name === "image") {
|
70
|
-
element.setImage(value);
|
71
|
-
} else if (name === "layout") {
|
72
|
-
// console.info("element----layout", element, value);
|
73
|
-
var layouType = value.id === "toward" ? "" + value.id + value.options.subId : value.id; // console.info(
|
74
|
-
// "element----layout",
|
75
|
-
// topo.view.topoClient.htTopoClient,
|
76
|
-
// layouType
|
77
|
-
// );
|
78
|
-
|
79
|
-
topo.getHtTopo().layoutInContainer(layouType); // let autoLayout = new ht.layout.AutoLayout(gv);
|
80
|
-
// const layouType=value.id==='toward'?`${value.id}${value.options.subId}`:value.id;
|
81
|
-
// gv.dm().sm().ss(element.getChildren());
|
82
|
-
// autoLayout.layout(layouType, function () {
|
83
|
-
// gv.dm().sm().ss(element);
|
84
|
-
// });
|
85
|
-
} else if (name === "groupAlign") {
|
86
|
-
var selectList = [];
|
87
|
-
|
88
|
-
if (selection.length === 1) {
|
89
|
-
// 选择分层
|
90
|
-
if (element instanceof ht.Grid) {
|
91
|
-
// selectList = gv
|
92
|
-
// .dm()
|
93
|
-
// .toDatas((d) => d.getHost() === gv.dm().sm().ld())
|
94
|
-
// .toArray();
|
95
|
-
selectList = element.getChildren().toArray();
|
96
|
-
} // 选择分区
|
97
|
-
|
98
|
-
|
99
|
-
if (element instanceof ht.Group) {
|
100
|
-
selectList = element.getChildren().toArray();
|
101
|
-
}
|
102
|
-
} else {
|
103
|
-
selectList = topo.getSelectionModel().getSelection().toArray();
|
104
|
-
} // console.info("element--selectList", element, selectList);
|
105
|
-
|
106
|
-
|
107
|
-
topo.view.topoClient.htTopoClient.setAlignmentBySelectionNodes(value, selectList);
|
23
|
+
editorProps = props.editorProps,
|
24
|
+
propertyViewManager = props.propertyViewManager;
|
25
|
+
var settingRuntimeState = useSettingRuntimeState();
|
26
|
+
var selectionElements = useMemo(function () {
|
27
|
+
return topo.selectionModel.getSelection();
|
28
|
+
}, [selection]);
|
29
|
+
var PropertyView = propertyViewManager.getPropertyView(selection); // 不建议使用,直接使用ht元素对象。待优化
|
30
|
+
|
31
|
+
var singleElementValues = useMemo(function () {
|
32
|
+
return selection.length === 1 ? buildElementValues(selection) : undefined;
|
33
|
+
}, [selection]);
|
34
|
+
useEffect(function () {
|
35
|
+
if (!PropertyView) {
|
36
|
+
propertyViewManager.close();
|
108
37
|
}
|
109
|
-
};
|
110
|
-
|
111
|
-
var elementType = getElementType(selection);
|
112
|
-
var PropertyView = propertyPanelMap[elementType];
|
38
|
+
}, [PropertyView, propertyViewManager]);
|
113
39
|
|
114
40
|
if (!PropertyView) {
|
115
41
|
return null;
|
116
42
|
}
|
117
43
|
|
118
|
-
var
|
44
|
+
var elementProps = {};
|
119
45
|
|
120
|
-
|
46
|
+
if (selection.length === 1) {
|
47
|
+
elementProps = {
|
48
|
+
selectionElement: selectionElements[0],
|
49
|
+
values: singleElementValues
|
50
|
+
};
|
51
|
+
}
|
121
52
|
|
122
|
-
|
123
|
-
Object.keys(values[type] || {}).forEach(function (key) {
|
124
|
-
values[type + "." + key] = values[type][key];
|
125
|
-
});
|
126
|
-
});
|
127
|
-
return /*#__PURE__*/React.createElement("div", {
|
128
|
-
className: styles.settings
|
129
|
-
}, /*#__PURE__*/React.createElement(PropertyView, {
|
130
|
-
type: elementType,
|
53
|
+
return /*#__PURE__*/React.createElement(PropertyView, _extends({
|
131
54
|
topo: topo,
|
55
|
+
selection: selection,
|
56
|
+
selectionElements: selectionElements,
|
132
57
|
topoShowType: topoShowType,
|
133
58
|
topoEdit: topoEditApi,
|
134
59
|
topoEditApi: topoEditApi,
|
135
|
-
|
136
|
-
|
137
|
-
onChange:
|
138
|
-
|
60
|
+
editorProps: editorProps
|
61
|
+
}, elementProps, {
|
62
|
+
onChange: function onChange(name, value) {
|
63
|
+
updateElementProperty(topo, name, value);
|
64
|
+
},
|
139
65
|
settingRuntimeState: settingRuntimeState
|
140
66
|
}));
|
141
67
|
}
|