@riil-frontend/component-topology 6.0.0-alpha.6 → 6.0.0-alpha.61
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 +2 -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 +40 -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 +22 -0
- package/es/core/components/TopoView/editor.module.scss +1 -0
- package/es/core/components/TopoView/topoView.js +29 -59
- package/es/core/components/titlebar/TitleBar.module.scss +1 -1
- package/es/core/editor/components/EditorPlugin.js +14 -2
- package/es/core/editor/components/Sidebar/Sidebar.js +22 -4
- package/es/core/editor/components/Sidebar/panes.js +10 -5
- 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 +112 -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 +17 -10
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +77 -0
- package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +52 -5
- 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 +38 -13
- package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +99 -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 +107 -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 +50 -7
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +99 -15
- package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
- package/es/core/editor/components/Toolbar/widgets/WidgetBox.js +10 -4
- package/es/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +10 -1
- package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.js +2 -2
- package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +4 -0
- package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +23 -8
- package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +16 -6
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +52 -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 +31 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +55 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +55 -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 +63 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +55 -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 +99 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +29 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +60 -0
- package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +20 -0
- package/es/core/editor/components/plugins/AddElementThemePlugin.js +11 -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 +50 -11
- package/es/core/editor/components/settings/Settings.js +37 -122
- 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 +11 -102
- 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 -24
- package/es/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +7 -6
- package/es/core/editor/components/settings/common/text/fontStyleUtil.js +21 -19
- package/es/core/editor/components/settings/core/PropertyViewManager.js +81 -0
- package/es/core/editor/components/settings/core/edgePropertyViewAdapter.js +22 -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 -6
- package/es/core/editor/components/settings/propertyViews/layer/BasicSetting.js +57 -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 -7
- 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/config/themes.js +99 -0
- package/es/core/editor/hooks/useKeyboardShortcut.js +39 -0
- package/es/core/editor/hooks/useNewElementTheme.js +44 -0
- package/es/core/editor/store/topoEdit.js +44 -37
- package/es/core/editor/utils/edgeTypeStyleUtil.js +34 -11
- package/es/core/editor/utils/textStyleUtil.js +0 -0
- package/es/core/editor/utils/themeUtil.js +32 -0
- package/es/core/hooks/useCanvasTheme.js +54 -0
- package/es/core/hooks/useManageStatus.js +1 -9
- 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 +6 -5
- package/es/core/models/selection/ignoreList.js +1 -0
- package/es/core/models/utils/linkUtils.js +5 -6
- package/es/core/store/models/customIcon.js +1 -3
- 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/utils/showGraphManageStatusUtil.js +7 -1
- 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/plugins/ViewerPlugin.js +10 -4
- 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/EdgeGroupPropertyView.js +2 -1
- 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/components/editor/useEditorProps.js +1 -3
- 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 +28 -27
- 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 +2 -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 +47 -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 +32 -0
- package/lib/core/components/TopoView/editor.module.scss +1 -0
- package/lib/core/components/TopoView/topoView.js +35 -66
- package/lib/core/components/titlebar/TitleBar.module.scss +1 -1
- package/lib/core/editor/components/EditorPlugin.js +21 -2
- package/lib/core/editor/components/Sidebar/Sidebar.js +22 -4
- package/lib/core/editor/components/Sidebar/panes.js +10 -5
- 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 +126 -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 +18 -8
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +83 -0
- package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +53 -4
- 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 +39 -12
- package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +104 -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 +110 -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 +50 -6
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +100 -14
- package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
- package/lib/core/editor/components/Toolbar/widgets/WidgetBox.js +13 -4
- package/lib/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +10 -1
- package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.js +2 -2
- package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +4 -0
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +23 -8
- package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +17 -6
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +66 -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 +46 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +74 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +75 -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 +78 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +74 -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 +114 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +44 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +72 -0
- package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +31 -0
- package/lib/core/editor/components/plugins/AddElementThemePlugin.js +20 -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 +59 -12
- package/lib/core/editor/components/settings/Settings.js +40 -122
- 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 +11 -109
- 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 -26
- package/lib/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +6 -6
- package/lib/core/editor/components/settings/common/text/fontStyleUtil.js +25 -20
- package/lib/core/editor/components/settings/core/PropertyViewManager.js +91 -0
- package/lib/core/editor/components/settings/core/edgePropertyViewAdapter.js +33 -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 +4 -9
- package/lib/core/editor/components/settings/propertyViews/layer/BasicSetting.js +75 -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 +4 -6
- 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/config/themes.js +108 -0
- package/lib/core/editor/hooks/useKeyboardShortcut.js +49 -0
- package/lib/core/editor/hooks/useNewElementTheme.js +55 -0
- package/lib/core/editor/store/topoEdit.js +46 -40
- package/lib/core/editor/utils/edgeTypeStyleUtil.js +38 -11
- package/lib/core/editor/utils/textStyleUtil.js +1 -0
- package/lib/core/editor/utils/themeUtil.js +39 -0
- package/lib/core/hooks/useCanvasTheme.js +68 -0
- package/lib/core/hooks/useManageStatus.js +1 -9
- 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 +7 -5
- package/lib/core/models/selection/ignoreList.js +6 -0
- package/lib/core/models/utils/linkUtils.js +5 -6
- package/lib/core/store/models/customIcon.js +1 -3
- 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/utils/showGraphManageStatusUtil.js +7 -1
- 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/plugins/ViewerPlugin.js +11 -3
- 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/EdgeGroupPropertyView.js +1 -0
- 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/components/editor/useEditorProps.js +1 -4
- 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 +28 -27
- package/lib/utils/htElementUtils.js +5 -0
- package/lib/utils/topoData.js +1 -0
- package/package.json +5 -4
@@ -0,0 +1,53 @@
|
|
1
|
+
@import "@alifd/next/variables";
|
2
|
+
|
3
|
+
.card {
|
4
|
+
display: flex;
|
5
|
+
flex-direction: column;
|
6
|
+
width: 100%;
|
7
|
+
height: 100%;
|
8
|
+
border: none;
|
9
|
+
padding-top: 6px;
|
10
|
+
cursor: pointer;
|
11
|
+
}
|
12
|
+
|
13
|
+
.iconWrapper {
|
14
|
+
display: flex;
|
15
|
+
justify-content: center;
|
16
|
+
align-items: center;
|
17
|
+
user-select: none;
|
18
|
+
}
|
19
|
+
|
20
|
+
.icon {
|
21
|
+
width: 120px;
|
22
|
+
}
|
23
|
+
|
24
|
+
.text {
|
25
|
+
height: 20px;
|
26
|
+
line-height: 20px;
|
27
|
+
font-size: 18px;
|
28
|
+
margin-top: 14px;
|
29
|
+
color: $color-text1-3;
|
30
|
+
outline: none;
|
31
|
+
}
|
32
|
+
|
33
|
+
.group-layout-set-card {
|
34
|
+
display: flex;
|
35
|
+
flex-direction: column;
|
36
|
+
width: 55px;
|
37
|
+
height: 60px;
|
38
|
+
border: none;
|
39
|
+
padding-top: 6px;
|
40
|
+
cursor: pointer;
|
41
|
+
}
|
42
|
+
.group-layout-set-icon {
|
43
|
+
width: 30px;
|
44
|
+
}
|
45
|
+
.group-layout-set-text {
|
46
|
+
width: 55px;
|
47
|
+
height: 12px;
|
48
|
+
line-height: 12px;
|
49
|
+
font-size: 12px;
|
50
|
+
margin-top: 8px;
|
51
|
+
color: $color-text1-3;
|
52
|
+
outline: none;
|
53
|
+
}
|
@@ -1,28 +1,143 @@
|
|
1
|
+
import _extends from "@babel/runtime/helpers/extends";
|
1
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
import
|
3
|
+
var _excluded = ["topo", "showLabel"];
|
4
|
+
|
5
|
+
/* eslint-disable eqeqeq */
|
6
|
+
import React, { useState, useMemo } from 'react';
|
7
|
+
import LayoutSettings from "./components/LayoutSettings";
|
6
8
|
import WidgetBox from "../WidgetBox";
|
9
|
+
import DropdownButton from "../components/DropdownButton";
|
10
|
+
import { isGroup, isLayer } from "../../../../../../utils/htElementDataUtil";
|
7
11
|
|
8
12
|
function Layout(props) {
|
9
|
-
var topo = props.topo
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
13
|
+
var topo = props.topo,
|
14
|
+
topoShowType = props.topoShowType;
|
15
|
+
|
16
|
+
var _useState = useState(),
|
17
|
+
layout = _useState[0],
|
18
|
+
setLayout = _useState[1]; // 选中的元素
|
19
|
+
|
20
|
+
|
21
|
+
var selectionElements = topo.selectionModel.useHtSelection();
|
22
|
+
|
23
|
+
var _topo$store$useModelS = topo.store.useModelState('selection'),
|
24
|
+
selection = _topo$store$useModelS.selection;
|
25
|
+
|
26
|
+
var setDisabled = function setDisabled(data) {
|
27
|
+
if (topoShowType == 'layers' && selection.length == 1 && !isGroup(selection[0])) {
|
28
|
+
return data != 'rectangle';
|
29
|
+
} else {
|
30
|
+
return data == 'rectangle';
|
31
|
+
}
|
32
|
+
};
|
33
|
+
|
34
|
+
var globalLayout = function globalLayout(data) {
|
35
|
+
var firstElement = selection[0];
|
36
|
+
var layouType = data.id === 'toward' ? "" + data.id + data.options.subId : data.id; // eslint-disable-next-line eqeqeq
|
37
|
+
|
38
|
+
if (topoShowType != 'layers' && selection.length == 0) {
|
39
|
+
topo.getHtTopo().layoutInTopo(layouType);
|
40
|
+
} // eslint-disable-next-line eqeqeq
|
41
|
+
|
42
|
+
|
43
|
+
if (topoShowType != 'layers' && selection.length == 1) {
|
44
|
+
topo.getHtTopo().layoutInContainer(layouType);
|
45
|
+
} // eslint-disable-next-line eqeqeq
|
46
|
+
|
47
|
+
|
48
|
+
if (firstElement && isLayer(firstElement)) {
|
49
|
+
topo.getHtTopo().layoutLayer(selectionElements[0]);
|
50
|
+
}
|
51
|
+
};
|
52
|
+
|
53
|
+
var layoutOnChange = function layoutOnChange(v) {
|
54
|
+
var _selection$;
|
55
|
+
|
56
|
+
topo.historyManager.beginTransaction();
|
57
|
+
setLayout(v); // eslint-disable-next-line eqeqeq
|
58
|
+
|
59
|
+
if (topoShowType != 'layers' && ((_selection$ = selection[0]) === null || _selection$ === void 0 ? void 0 : _selection$.className) != 'ht.Node' || topoShowType == 'partition' && selection.length == 1 || topoShowType == 'layers' && selection.length == 1) {
|
60
|
+
globalLayout(v);
|
61
|
+
}
|
62
|
+
|
63
|
+
topo.historyManager.endTransaction();
|
64
|
+
};
|
65
|
+
|
66
|
+
return (
|
67
|
+
/*#__PURE__*/
|
68
|
+
// <LayoutSettings size="xs" selection = {selection} topoShowType={topoShowType} layout={layout} onChange={layoutOnChange} />
|
69
|
+
React.createElement(LayoutSettings, {
|
70
|
+
size: "xs",
|
71
|
+
layout: layout,
|
72
|
+
onChange: layoutOnChange,
|
73
|
+
disabled: setDisabled
|
14
74
|
})
|
15
|
-
|
75
|
+
);
|
16
76
|
}
|
17
77
|
|
18
78
|
function LayoutWidget(props) {
|
19
|
-
var
|
20
|
-
|
79
|
+
var topo = props.topo,
|
80
|
+
showLabel = props.showLabel,
|
81
|
+
otherProps = _objectWithoutPropertiesLoose(props, _excluded); // eslint-disable-next-line no-undef
|
82
|
+
|
83
|
+
|
84
|
+
var store = topo.store; // 拓扑图是否加载
|
21
85
|
|
86
|
+
var topoState = store.useModelState('topoMod'); // 分层或分区时候选中的值,未选中length为0 配合下面的type属性一起使用,
|
87
|
+
// type为partition且selection.length>=0时可以点击布局, selection[0].className != 'ht.Node'
|
88
|
+
// type为auto且selection.length==0时可以点击布局
|
89
|
+
|
90
|
+
var _topo$store$useModelS2 = topo.store.useModelState('selection'),
|
91
|
+
selection = _topo$store$useModelS2.selection;
|
92
|
+
|
93
|
+
var topoShowType = topoState.type; // 获取ID以及拓扑类型 // 拓扑类型:auto自由布局,layers分层,partition分区
|
94
|
+
|
95
|
+
var disabled = useMemo(function () {
|
96
|
+
return !isLayoutEnabled({
|
97
|
+
topoShowType: topoShowType,
|
98
|
+
selection: selection
|
99
|
+
});
|
100
|
+
}, [topoShowType, selection]);
|
101
|
+
var icon = disabled ? /*#__PURE__*/React.createElement("img", {
|
102
|
+
src: "/img/topo/editor/toolbar/layout/Disable.svg",
|
103
|
+
alt: ""
|
104
|
+
}) : /*#__PURE__*/React.createElement("img", {
|
105
|
+
src: "/img/topo/editor/toolbar/layout/Normal.svg",
|
106
|
+
alt: ""
|
107
|
+
});
|
22
108
|
return /*#__PURE__*/React.createElement(WidgetBox, {
|
23
|
-
label: "\u5E03\u5C40",
|
24
|
-
|
25
|
-
|
109
|
+
label: "\u5E03\u5C40\u65B9\u5F0F",
|
110
|
+
tooltip: "\u5E03\u5C40\u65B9\u5F0F",
|
111
|
+
showLabel: showLabel,
|
112
|
+
disabled: disabled
|
113
|
+
}, /*#__PURE__*/React.createElement(DropdownButton, {
|
114
|
+
disabled: disabled,
|
115
|
+
trigger: icon
|
116
|
+
}, !disabled && /*#__PURE__*/React.createElement(Layout, _extends({
|
117
|
+
topo: topo,
|
118
|
+
topoShowType: topoShowType
|
119
|
+
}, otherProps))));
|
120
|
+
}
|
121
|
+
|
122
|
+
function isLayoutEnabled(props) {
|
123
|
+
var topoShowType = props.topoShowType,
|
124
|
+
selection = props.selection; // 选中单个区域/集群后,该按钮亮起
|
125
|
+
|
126
|
+
if (selection.length === 1 && isGroup(selection[0]) && selection[0].expanded) {
|
127
|
+
return true;
|
128
|
+
} // 分层拓扑选中任意分层时,布局按钮亮起
|
129
|
+
|
130
|
+
|
131
|
+
if (topoShowType === 'layers' && selection.length === 1 && isLayer(selection[0])) {
|
132
|
+
return true;
|
133
|
+
} // 空白拓扑未选中任何资源时,布局按钮亮起
|
134
|
+
|
135
|
+
|
136
|
+
if (topoShowType !== 'layers' && !selection.length) {
|
137
|
+
return true;
|
138
|
+
}
|
139
|
+
|
140
|
+
return false;
|
26
141
|
}
|
27
142
|
|
28
143
|
export default LayoutWidget;
|
@@ -1,24 +1,12 @@
|
|
1
|
-
import
|
1
|
+
import _NumberPicker from "@alifd/next/es/number-picker";
|
2
2
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
3
3
|
var _excluded = ["topo", "showLabel"];
|
4
4
|
import React, { useState, useEffect } from 'react';
|
5
5
|
import WidgetBox from "./WidgetBox";
|
6
6
|
import DropdownButton from "./components/DropdownButton";
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
disabled = props.disabled;
|
11
|
-
var icon = disabled ? /*#__PURE__*/React.createElement("img", {
|
12
|
-
src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Disable.svg",
|
13
|
-
alt: ""
|
14
|
-
}) : /*#__PURE__*/React.createElement("img", {
|
15
|
-
src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Normal.svg",
|
16
|
-
alt: ""
|
17
|
-
});
|
18
|
-
return /*#__PURE__*/React.createElement(DropdownButton, {
|
19
|
-
trigger: icon
|
20
|
-
}, "\u5BF9\u9F50\u65B9\u5F0F");
|
21
|
-
}
|
7
|
+
import AlignSetting from "../../settings/common/AlignSetting";
|
8
|
+
import { isEdge, isLayer } from "../../../../../utils/htElementUtils";
|
9
|
+
import styles from "./NodeAlignWidget.module.scss";
|
22
10
|
|
23
11
|
function NodeAlignWidget(props) {
|
24
12
|
var topo = props.topo,
|
@@ -27,21 +15,117 @@ function NodeAlignWidget(props) {
|
|
27
15
|
|
28
16
|
var _useState = useState(true),
|
29
17
|
disabled = _useState[0],
|
30
|
-
setDisabled = _useState[1];
|
18
|
+
setDisabled = _useState[1];
|
19
|
+
|
20
|
+
var _useState2 = useState(),
|
21
|
+
leftInputVal = _useState2[0],
|
22
|
+
setLeftInputVal = _useState2[1];
|
23
|
+
|
24
|
+
var _useState3 = useState(),
|
25
|
+
rightInputVal = _useState3[0],
|
26
|
+
setRightInputVal = _useState3[1];
|
27
|
+
|
28
|
+
var _useState4 = useState(true),
|
29
|
+
distributionDisabled = _useState4[0],
|
30
|
+
setDistributionDisabled = _useState4[1]; // 拓扑图是否加载
|
31
|
+
|
32
|
+
|
33
|
+
var _topo$store$useModelS = topo.store.useModelState('topoMod'),
|
34
|
+
graphLoaded = _topo$store$useModelS.graphLoaded; // 选中的元素
|
35
|
+
|
36
|
+
|
37
|
+
var selection = topo.selectionModel.useHtSelection();
|
31
38
|
|
39
|
+
var setSpace = function setSpace(type, num) {
|
40
|
+
topo.historyManager.beginTransaction(); // eslint-disable-next-line no-shadow
|
41
|
+
|
42
|
+
var selection = topo.getHtTopo().getGraphView().getSelectionModel().getSelection().toArray();
|
43
|
+
var nodes = selection.filter(function (ele) {
|
44
|
+
return !isLayer(ele) && !isEdge(ele);
|
45
|
+
});
|
46
|
+
topo.view.topoClient.htTopoClient.setElementsSpace(nodes, type, num);
|
47
|
+
topo.historyManager.endTransaction();
|
48
|
+
};
|
49
|
+
|
50
|
+
var leftInputChange = function leftInputChange(val) {
|
51
|
+
setLeftInputVal(val);
|
52
|
+
setSpace('h', val);
|
53
|
+
};
|
54
|
+
|
55
|
+
var rightInputChange = function rightInputChange(val) {
|
56
|
+
setRightInputVal(val);
|
57
|
+
setSpace('v', val);
|
58
|
+
};
|
59
|
+
|
60
|
+
var parseValue = function parseValue(v) {
|
61
|
+
return v * 1 > 0 ? Math.round(v) : '';
|
62
|
+
};
|
32
63
|
|
33
|
-
var selection = topo.selectionManager.useSelection();
|
34
64
|
useEffect(function () {
|
35
|
-
|
36
|
-
|
65
|
+
if (graphLoaded) {
|
66
|
+
var selectionEle = topo.getHtTopo().getGraphView().getSelectionModel().getSelection().toArray();
|
67
|
+
var nodes = selectionEle.filter(function (ele) {
|
68
|
+
return !isLayer(ele) && !isEdge(ele);
|
69
|
+
});
|
70
|
+
setDisabled(nodes.length <= 1); // eslint-disable-next-line no-use-before-define
|
71
|
+
|
72
|
+
setLeftInputVal();
|
73
|
+
setRightInputVal();
|
74
|
+
setDistributionDisabled(nodes.length <= 2);
|
75
|
+
|
76
|
+
if (nodes.length === 2) {
|
77
|
+
var h = topo.view.topoClient.htTopoClient.getElementsSpace(nodes, 'h')[0];
|
78
|
+
var v = topo.view.topoClient.htTopoClient.getElementsSpace(nodes, 'v')[0];
|
79
|
+
setLeftInputVal(parseValue(h));
|
80
|
+
setRightInputVal(parseValue(v));
|
81
|
+
}
|
82
|
+
} // eslint-disable-next-line react-hooks/exhaustive-deps
|
83
|
+
|
84
|
+
}, [graphLoaded, selection]);
|
85
|
+
var icon = disabled ? /*#__PURE__*/React.createElement("img", {
|
86
|
+
src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Disable.svg",
|
87
|
+
alt: ""
|
88
|
+
}) : /*#__PURE__*/React.createElement("img", {
|
89
|
+
src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Normal.svg",
|
90
|
+
alt: ""
|
91
|
+
});
|
37
92
|
return /*#__PURE__*/React.createElement(WidgetBox, {
|
38
93
|
showLabel: showLabel,
|
94
|
+
disabled: disabled,
|
39
95
|
label: "\u5BF9\u9F50\u65B9\u5F0F",
|
40
96
|
tooltip: "\u5BF9\u9F50\u65B9\u5F0F"
|
41
|
-
}, /*#__PURE__*/React.createElement(
|
97
|
+
}, /*#__PURE__*/React.createElement(DropdownButton, {
|
98
|
+
disabled: disabled,
|
99
|
+
trigger: icon
|
100
|
+
}, /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement("div", {
|
101
|
+
style: {
|
102
|
+
margin: '10px 7px 17px 7px'
|
103
|
+
}
|
104
|
+
}, /*#__PURE__*/React.createElement(AlignSetting, {
|
105
|
+
topo: topo,
|
106
|
+
distributionDisabled: distributionDisabled
|
107
|
+
})), /*#__PURE__*/React.createElement(_NumberPicker, {
|
108
|
+
disabled: disabled,
|
109
|
+
size: "small",
|
110
|
+
hasTrigger: false,
|
111
|
+
placeholder: distributionDisabled ? '' : '多个值',
|
112
|
+
className: styles.leftInput,
|
113
|
+
value: leftInputVal,
|
114
|
+
min: 0,
|
115
|
+
max: 10000,
|
116
|
+
onChange: leftInputChange
|
117
|
+
}), /*#__PURE__*/React.createElement(_NumberPicker, {
|
42
118
|
disabled: disabled,
|
43
|
-
|
44
|
-
|
119
|
+
size: "small",
|
120
|
+
hasTrigger: false // eslint-disable-next-line no-nested-ternary
|
121
|
+
,
|
122
|
+
placeholder: distributionDisabled ? '' : '多个值',
|
123
|
+
className: styles.rightInput,
|
124
|
+
value: rightInputVal,
|
125
|
+
min: 0,
|
126
|
+
max: 10000,
|
127
|
+
onChange: rightInputChange
|
128
|
+
}))));
|
45
129
|
}
|
46
130
|
|
47
131
|
export default NodeAlignWidget;
|
@@ -0,0 +1,33 @@
|
|
1
|
+
.leftInput{
|
2
|
+
width: 106px !important;
|
3
|
+
margin: 0px 9px 10px 9px;
|
4
|
+
:global{
|
5
|
+
input{
|
6
|
+
background: url('/img/topo/editor/toolbar/对齐/水平间距_normal.svg')no-repeat 5px center !important;
|
7
|
+
background-position: 81px center !important;
|
8
|
+
}
|
9
|
+
.next-disabled input{
|
10
|
+
background: url('/img/topo/editor/toolbar/对齐/水平间距_disable.svg')no-repeat 5px center !important;
|
11
|
+
background-position: 81px center !important;
|
12
|
+
}
|
13
|
+
.next-input.next-small input{
|
14
|
+
height: calc(30px - 1px * 2);
|
15
|
+
}
|
16
|
+
}
|
17
|
+
}
|
18
|
+
.rightInput{
|
19
|
+
width: 106px !important;
|
20
|
+
:global{
|
21
|
+
input{
|
22
|
+
background: url('/img/topo/editor/toolbar/对齐/垂直间距 _normal.svg')no-repeat 5px center !important;
|
23
|
+
background-position: 82px center !important;
|
24
|
+
}
|
25
|
+
.next-disabled input{
|
26
|
+
background: url('/img/topo/editor/toolbar/对齐/垂直间距_disable.svg')no-repeat 5px center !important;
|
27
|
+
background-position: 82px center !important;
|
28
|
+
}
|
29
|
+
.next-input.next-small input{
|
30
|
+
height: calc(30px - 1px * 2);
|
31
|
+
}
|
32
|
+
}
|
33
|
+
}
|
@@ -1,8 +1,18 @@
|
|
1
|
-
import React from
|
1
|
+
import React, { useEffect, useState, forwardRef, useImperativeHandle } from "react";
|
2
|
+
import TopoIconSelect from "../IconSelect";
|
3
|
+
import { useNodeIcons } from "../../../../../common/icons/useIcons";
|
2
4
|
|
3
|
-
function
|
4
|
-
|
5
|
-
|
5
|
+
function NodeImageList(props, ref) {
|
6
|
+
var value = props.value,
|
7
|
+
onChange = props.onChange,
|
8
|
+
topo = props.topo;
|
9
|
+
useEffect(function () {}, []);
|
10
|
+
var icons = useNodeIcons(topo);
|
11
|
+
return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(TopoIconSelect, {
|
12
|
+
value: value,
|
13
|
+
iconList: icons,
|
14
|
+
onChange: onChange
|
15
|
+
}));
|
6
16
|
}
|
7
17
|
|
8
|
-
export default
|
18
|
+
export default NodeImageList;
|
@@ -1,15 +1,25 @@
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
2
2
|
var _excluded = ["topo", "showLabel"];
|
3
|
-
import React, { useEffect, useState } from
|
3
|
+
import React, { useEffect, useState } from "react";
|
4
|
+
import { isGroup, isNode, isText } from "../../../../../../utils/htElementUtils";
|
4
5
|
import DropdownButton from "../components/DropdownButton";
|
5
6
|
import WidgetBox from "../WidgetBox";
|
6
7
|
import BoxBackgroundSetting from "./BoxBackgroundSetting";
|
8
|
+
|
9
|
+
function isElementSetImageEnabled(element) {
|
10
|
+
if (isGroup(element)) {
|
11
|
+
return !element.isExpanded();
|
12
|
+
}
|
13
|
+
|
14
|
+
return isNode(element) && !isText(element) && element.a('type') !== 'box';
|
15
|
+
}
|
7
16
|
/**
|
8
17
|
* 替换图片设置
|
9
|
-
* @param {*} props
|
10
|
-
* @returns
|
18
|
+
* @param {*} props
|
19
|
+
* @returns
|
11
20
|
*/
|
12
21
|
|
22
|
+
|
13
23
|
function NodeImageButton(props) {
|
14
24
|
var topo = props.topo,
|
15
25
|
showLabel = props.showLabel,
|
@@ -17,13 +27,43 @@ function NodeImageButton(props) {
|
|
17
27
|
|
18
28
|
var _useState = useState(true),
|
19
29
|
disabled = _useState[0],
|
20
|
-
setDisabled = _useState[1];
|
30
|
+
setDisabled = _useState[1];
|
31
|
+
|
32
|
+
var _useState2 = useState(),
|
33
|
+
imgVal = _useState2[0],
|
34
|
+
setImgVal = _useState2[1]; // 选中的元素
|
21
35
|
|
22
36
|
|
23
|
-
var selection = topo.
|
37
|
+
var selection = topo.selectionModel.useHtSelection();
|
24
38
|
useEffect(function () {
|
25
|
-
|
39
|
+
var nodes = selection.filter(isElementSetImageEnabled);
|
40
|
+
|
41
|
+
if (nodes.length > 0) {
|
42
|
+
setDisabled(false);
|
43
|
+
setImgVal(nodes[0].getImage());
|
44
|
+
} else {
|
45
|
+
setDisabled(true);
|
46
|
+
}
|
26
47
|
}, [selection]);
|
48
|
+
|
49
|
+
var onChange = function onChange(prop) {
|
50
|
+
console.log("onChange-prop", prop, selection); //const { name, value } = prop;
|
51
|
+
// const gv = topo.view.topoClient.getGraphView();
|
52
|
+
//const element = topo.getSelectionModel().getFirstData();
|
53
|
+
|
54
|
+
var elements = selection;
|
55
|
+
console.log("onChange-elements", elements);
|
56
|
+
elements.forEach(function (element) {
|
57
|
+
if (isElementSetImageEnabled(element)) {
|
58
|
+
element.setImage(prop);
|
59
|
+
}
|
60
|
+
}); // selection.map((element) => {
|
61
|
+
// element.setImage(prop);
|
62
|
+
// });
|
63
|
+
// if (name === "image") {
|
64
|
+
// }
|
65
|
+
};
|
66
|
+
|
27
67
|
var icon = disabled ? /*#__PURE__*/React.createElement("img", {
|
28
68
|
src: "/img/topo/editor/toolbar/\u66FF\u6362\u56FE\u7247/Disable.svg",
|
29
69
|
alt: ""
|
@@ -34,12 +74,15 @@ function NodeImageButton(props) {
|
|
34
74
|
return /*#__PURE__*/React.createElement(WidgetBox, {
|
35
75
|
label: "\u66FF\u6362\u56FE\u7247",
|
36
76
|
tooltip: "\u66FF\u6362\u56FE\u7247",
|
77
|
+
disabled: disabled,
|
37
78
|
showLabel: showLabel
|
38
79
|
}, /*#__PURE__*/React.createElement(DropdownButton, {
|
39
80
|
disabled: disabled,
|
40
81
|
trigger: icon
|
41
82
|
}, /*#__PURE__*/React.createElement(BoxBackgroundSetting, {
|
42
|
-
topo: topo
|
83
|
+
topo: topo,
|
84
|
+
onChange: onChange,
|
85
|
+
value: imgVal
|
43
86
|
})));
|
44
87
|
}
|
45
88
|
|
@@ -1,13 +1,17 @@
|
|
1
1
|
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
2
2
|
var _excluded = ["topo", "showLabel"];
|
3
|
-
import React, { useEffect, useState } from 'react';
|
4
|
-
|
3
|
+
import React, { useEffect, useState } from 'react'; // import BatchSetNodeSize from "../../../settings/propertyViews/view/BatchSetNodeSize";
|
4
|
+
|
5
|
+
import BatchSetNodeSize from "../../../settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize";
|
6
|
+
import NodeSizeInput from "../../../settings/common/NodeSizeInput/NodeSizeInput";
|
7
|
+
import useSettingRuntimeState from "../../../settings/useSettingRuntimeState";
|
5
8
|
import WidgetBox from "../WidgetBox";
|
6
|
-
import
|
9
|
+
import styles from "./NodeSizeButton.module.scss";
|
10
|
+
import { isGroup, isNode } from "../../../../../../utils/htElementUtils";
|
7
11
|
/**
|
8
12
|
* 图片尺寸设置
|
9
|
-
* @param {*} props
|
10
|
-
* @returns
|
13
|
+
* @param {*} props
|
14
|
+
* @returns
|
11
15
|
*/
|
12
16
|
|
13
17
|
function NodeSizeButton(props) {
|
@@ -17,26 +21,106 @@ function NodeSizeButton(props) {
|
|
17
21
|
|
18
22
|
var _useState = useState(true),
|
19
23
|
disabled = _useState[0],
|
20
|
-
setDisabled = _useState[1];
|
24
|
+
setDisabled = _useState[1];
|
25
|
+
|
26
|
+
var _useState2 = useState(),
|
27
|
+
size = _useState2[0],
|
28
|
+
setSize = _useState2[1]; // 选中的元素
|
21
29
|
|
22
30
|
|
23
|
-
var selection = topo.
|
31
|
+
var selection = topo.selectionModel.useSelection();
|
32
|
+
var settingRuntimeState = useSettingRuntimeState();
|
24
33
|
useEffect(function () {
|
25
|
-
|
34
|
+
var elements = selection.map(function (item) {
|
35
|
+
return item.id;
|
36
|
+
}).map(function (id) {
|
37
|
+
return topo.getDataModel().getDataById(id);
|
38
|
+
});
|
39
|
+
var nodes = elements.filter(function (ele) {
|
40
|
+
return isGroup(ele) || isNode(ele);
|
41
|
+
});
|
42
|
+
|
43
|
+
if (nodes.length > 0) {
|
44
|
+
setDisabled(false);
|
45
|
+
|
46
|
+
if (selection.length === 1) {
|
47
|
+
var element = nodes[0];
|
48
|
+
setSize({
|
49
|
+
width: element.getWidth(),
|
50
|
+
height: element.getHeight()
|
51
|
+
});
|
52
|
+
}
|
53
|
+
} else {
|
54
|
+
setDisabled(true);
|
55
|
+
setSize({
|
56
|
+
width: null,
|
57
|
+
height: null
|
58
|
+
});
|
59
|
+
}
|
26
60
|
}, [selection]);
|
61
|
+
|
62
|
+
var _onChange = function onChange(prop) {
|
63
|
+
var name = prop.name,
|
64
|
+
value = prop.value;
|
65
|
+
var element = topo.getSelectionModel().getFirstData();
|
66
|
+
|
67
|
+
if (name === 'width') {
|
68
|
+
element.setWidth(value);
|
69
|
+
} else if (name === 'height') {
|
70
|
+
element.setHeight(value);
|
71
|
+
}
|
72
|
+
};
|
73
|
+
|
27
74
|
return /*#__PURE__*/React.createElement(WidgetBox, {
|
28
75
|
label: "\u56FE\u7247\u5C3A\u5BF8",
|
76
|
+
disabled: disabled,
|
29
77
|
tooltip: "\u56FE\u7247\u5C3A\u5BF8",
|
30
78
|
showLabel: showLabel
|
31
79
|
}, /*#__PURE__*/React.createElement("div", {
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
80
|
+
className: styles.toolbarNodeSizeSetting
|
81
|
+
}, selection.length > 1 ? /*#__PURE__*/React.createElement(BatchSetNodeSize, {
|
82
|
+
topo: topo // size="small"
|
83
|
+
,
|
84
|
+
value: size,
|
85
|
+
disabled: disabled,
|
86
|
+
showLabel: false,
|
87
|
+
numberPickerProps: {
|
88
|
+
hasTrigger: false,
|
89
|
+
placeholder: '-'
|
90
|
+
} // onChange={(size) => {
|
91
|
+
// topo.historyManager.beginTransaction();
|
92
|
+
// onChange({ name: "width", value: size.width });
|
93
|
+
// onChange({ name: "height", value: size.height });
|
94
|
+
// topo.historyManager.endTransaction();
|
95
|
+
// }}
|
96
|
+
|
97
|
+
}) : /*#__PURE__*/React.createElement(NodeSizeInput, {
|
98
|
+
topo: topo // size="small"
|
99
|
+
,
|
100
|
+
value: size,
|
101
|
+
disabled: disabled,
|
38
102
|
showLabel: false,
|
39
|
-
hasTrigger: false
|
103
|
+
hasTrigger: false,
|
104
|
+
numberPickerProps: {
|
105
|
+
hasTrigger: false,
|
106
|
+
placeholder: '-'
|
107
|
+
},
|
108
|
+
settingRuntimeState: settingRuntimeState,
|
109
|
+
onChange: function onChange(size) {
|
110
|
+
topo.historyManager.beginTransaction();
|
111
|
+
|
112
|
+
_onChange({
|
113
|
+
name: 'width',
|
114
|
+
value: size.width
|
115
|
+
});
|
116
|
+
|
117
|
+
_onChange({
|
118
|
+
name: 'height',
|
119
|
+
value: size.height
|
120
|
+
});
|
121
|
+
|
122
|
+
topo.historyManager.endTransaction();
|
123
|
+
}
|
40
124
|
})));
|
41
125
|
}
|
42
126
|
|
@@ -0,0 +1,28 @@
|
|
1
|
+
@import '~@alifd/next/variables.scss';
|
2
|
+
|
3
|
+
.toolbarNodeSizeSetting {
|
4
|
+
width: 144px;
|
5
|
+
|
6
|
+
// 图片尺寸输入框
|
7
|
+
:global {
|
8
|
+
.#{$css-prefix}input-inner {
|
9
|
+
padding-right: 8px;
|
10
|
+
}
|
11
|
+
|
12
|
+
.#{$css-prefix}input.#{$css-prefix}medium {
|
13
|
+
height: 24px;
|
14
|
+
}
|
15
|
+
|
16
|
+
.#{$css-prefix}input {
|
17
|
+
border: none;
|
18
|
+
|
19
|
+
&:hover:not(.#{$css-prefix}disabled) {
|
20
|
+
background: #F2F7FD;
|
21
|
+
}
|
22
|
+
}
|
23
|
+
|
24
|
+
.#{$css-prefix}input.#{$css-prefix}medium input {
|
25
|
+
height: 24px;
|
26
|
+
}
|
27
|
+
}
|
28
|
+
}
|