@riil-frontend/component-topology 6.0.0-alpha.5 → 6.0.0-alpha.50

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.
Files changed (384) hide show
  1. package/build/1.js +2 -2
  2. package/build/2.js +1 -1
  3. package/build/index.css +1 -1
  4. package/build/index.js +35 -35
  5. package/demo/CHANGELOG/CHANGELOG.md +5 -0
  6. package/es/components/ColorPanel/components/ColorBlock/index.js +37 -0
  7. package/es/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
  8. package/es/components/ColorPanel/components/FontColorRange/index.js +35 -0
  9. package/es/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
  10. package/es/components/ColorPanel/index.js +241 -0
  11. package/es/components/ColorPanel/index.module.scss +35 -0
  12. package/es/components/VerticalIconTab/VerticalIconTab.js +11 -1
  13. package/es/components/VerticalIconTab/VerticalIconTab.module.scss +6 -0
  14. package/es/components/collapse/Collapse.js +22 -3
  15. package/es/components/collapse/Collapse.module.scss +24 -0
  16. package/es/components/collapse/index.js +2 -0
  17. package/es/core/common/hooks/useHtElements.js +21 -0
  18. package/es/core/common/icons/icon.js +41 -0
  19. package/es/core/common/icons/useIcons.js +8 -16
  20. package/es/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
  21. package/es/core/components/AlarmListPanel/components/index.module.scss +5 -5
  22. package/es/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
  23. package/es/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +9 -3
  24. package/es/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +122 -0
  25. package/es/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
  26. package/es/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +84 -22
  27. package/es/core/components/TopoView/GraphViewPanel.js +21 -0
  28. package/es/core/components/TopoView/editor.module.scss +1 -0
  29. package/es/core/components/TopoView/topoView.js +29 -49
  30. package/es/core/components/titlebar/TitleBar.module.scss +1 -1
  31. package/es/core/editor/components/EditorPlugin.js +8 -2
  32. package/es/core/editor/components/Sidebar/Sidebar.js +29 -3
  33. package/es/core/editor/components/Sidebar/panes.js +6 -1
  34. package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +36 -2
  35. package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
  36. package/es/core/editor/components/Sidebar/views/CanvasPanel/hooks/useCanvasThemeConfig.js +128 -0
  37. package/es/core/editor/components/Sidebar/views/CanvasPanel/hooks/useNewElementTheme.js +32 -0
  38. package/es/core/editor/components/Sidebar/views/CanvasPanel/themes.js +87 -0
  39. package/es/core/editor/components/Sidebar/views/CanvasPanel/utils/elementThemeUtil.js +0 -0
  40. package/es/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +3 -3
  41. package/es/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +12 -1
  42. package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +12 -1
  43. package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +3 -3
  44. package/es/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +27 -8
  45. package/es/core/editor/components/Toolbar/EditorToolbar.js +16 -9
  46. package/es/core/editor/components/Toolbar/buttons.js +20 -18
  47. package/es/core/editor/components/Toolbar/widgets/AddResourceButton.js +3 -3
  48. package/es/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +3 -3
  49. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +46 -2
  50. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +98 -6
  51. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +74 -23
  52. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +1 -3
  53. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +18 -12
  54. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +77 -0
  55. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +74 -6
  56. package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +104 -16
  57. package/es/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +42 -0
  58. package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +25 -11
  59. package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +29 -13
  60. package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +100 -39
  61. package/es/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +1 -1
  62. package/es/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +2 -2
  63. package/es/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +109 -0
  64. package/es/core/editor/components/Toolbar/widgets/IconSelect/constant.js +64 -0
  65. package/es/core/editor/components/Toolbar/widgets/IconSelect/index.js +101 -0
  66. package/es/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
  67. package/es/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +49 -0
  68. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +99 -0
  69. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
  70. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +42 -0
  71. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
  72. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +75 -0
  73. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
  74. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +23 -0
  75. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +10 -0
  76. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
  77. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
  78. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
  79. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
  80. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +31 -0
  81. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
  82. package/es/core/editor/components/Toolbar/widgets/Layout/index.js +130 -15
  83. package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +102 -23
  84. package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
  85. package/es/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +15 -5
  86. package/es/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -7
  87. package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +99 -14
  88. package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
  89. package/es/core/editor/components/Toolbar/widgets/WidgetBox.js +15 -5
  90. package/es/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
  91. package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.js +1 -1
  92. package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
  93. package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
  94. package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +16 -6
  95. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +49 -0
  96. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +67 -0
  97. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +30 -0
  98. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +25 -0
  99. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +41 -0
  100. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +14 -0
  101. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +49 -0
  102. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +36 -0
  103. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +33 -0
  104. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +71 -0
  105. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +25 -0
  106. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +52 -0
  107. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +20 -0
  108. package/es/core/editor/components/settings/CloseablePanel.js +33 -0
  109. package/es/core/editor/components/settings/CloseablePanel.module.scss +21 -0
  110. package/es/core/editor/components/settings/PropertyView.js +35 -11
  111. package/es/core/editor/components/settings/Settings.js +42 -116
  112. package/es/core/editor/components/settings/Settings.module.scss +7 -11
  113. package/es/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +3 -3
  114. package/es/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +80 -0
  115. package/es/core/editor/components/settings/common/AlignSetting/index.js +20 -72
  116. package/es/core/editor/components/settings/common/GroupNodeList/ResourceList.module.scss +1 -0
  117. package/es/core/editor/components/settings/common/LineType/index.js +12 -119
  118. package/es/core/editor/components/settings/common/NameInput.js +24 -0
  119. package/es/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +3 -3
  120. package/es/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +31 -21
  121. package/es/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +7 -6
  122. package/es/core/editor/components/settings/common/text/fontStyleUtil.js +11 -19
  123. package/es/core/editor/components/settings/core/PropertyViewManager.js +68 -0
  124. package/es/core/editor/components/settings/core/getPropertyViewType.js +34 -0
  125. package/es/core/editor/components/settings/core/updateElementProperty.js +21 -0
  126. package/es/core/editor/components/settings/propertyViews/box/BoxPropertyView.js +6 -13
  127. package/es/core/editor/components/settings/propertyViews/box/BoxPropertyViewV1.js +58 -0
  128. package/es/core/editor/components/settings/propertyViews/box/NameInput.js +5 -4
  129. package/es/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +12 -3
  130. package/es/core/editor/components/settings/propertyViews/edge/EdgeGroupPropertyView.js +7 -8
  131. package/es/core/editor/components/settings/propertyViews/edge/EdgePropertyView.js +9 -23
  132. package/es/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +10 -0
  133. package/es/core/editor/components/settings/propertyViews/edge/edgeGroup/EdgeGroupSetting.js +1 -6
  134. package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +13 -21
  135. package/es/core/editor/components/settings/propertyViews/group/GroupPropertyView.module.scss +8 -1
  136. package/es/core/editor/components/settings/propertyViews/group/GroupPropertyViewV1.js +28 -0
  137. package/es/core/editor/components/settings/propertyViews/group/SettingTab/GroupBasicSetting.js +75 -0
  138. package/es/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +9 -15
  139. package/es/core/editor/components/settings/propertyViews/group/cluster/ClusterGroupRelateData.js +8 -6
  140. package/es/core/editor/components/settings/propertyViews/index.js +4 -2
  141. package/es/core/editor/components/settings/propertyViews/layer/BasicSetting.js +58 -0
  142. package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyView.js +11 -17
  143. package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyView.module.scss +10 -0
  144. package/es/core/editor/components/settings/propertyViews/layer/LayerPropertyViewV1.js +27 -0
  145. package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +8 -9
  146. package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
  147. package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
  148. package/es/core/editor/components/settings/propertyViews/node/NodePropertyView.js +8 -32
  149. package/es/core/editor/components/settings/propertyViews/node/NodePropertyViewV1.js +53 -0
  150. package/es/core/editor/components/settings/propertyViews/node/Setting/BasicSetting.js +49 -0
  151. package/es/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +5 -4
  152. package/es/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
  153. package/es/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +1 -0
  154. package/es/core/editor/components/settings/propertyViews/text/TextPropertyView.js +5 -20
  155. package/es/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +9 -6
  156. package/es/core/editor/components/titlebar/TopoEditorTitleBar.js +8 -4
  157. package/es/core/editor/hooks/useKeyboardShortcut.js +42 -0
  158. package/es/core/editor/store/topoEdit.js +44 -34
  159. package/es/core/editor/utils/edgeTypeStyleUtil.js +96 -0
  160. package/es/core/editor/utils/textStyleUtil.js +0 -0
  161. package/es/core/hooks/useCanvasTheme.js +61 -0
  162. package/es/core/hooks/usePolling.js +2 -5
  163. package/es/core/hooks/useTopoEdit.js +30 -12
  164. package/es/core/models/Alarm.js +2 -2
  165. package/es/core/models/AttributeMetricDisplay.js +4 -0
  166. package/es/core/models/HistoryManager.js +13 -8
  167. package/es/core/models/{SelectionManager.js → SelectionModel.js} +55 -22
  168. package/es/core/models/TopoApp.js +3 -3
  169. package/es/core/models/TopoGraphView.js +8 -2
  170. package/es/core/models/selection/ignoreList.js +1 -0
  171. package/es/core/models/utils/linkUtils.js +5 -6
  172. package/es/core/store/models/selection.js +2 -1
  173. package/es/core/store/models/topoBizMod.js +0 -3
  174. package/es/core/store/models/topoConfig.js +10 -12
  175. package/es/core/store/models/topoMod.js +26 -28
  176. package/es/core/utils/edgeUtil.js +6 -0
  177. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
  178. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
  179. package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
  180. package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
  181. package/es/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
  182. package/es/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
  183. package/es/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +39 -6
  184. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +10 -16
  185. package/es/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +37 -0
  186. package/es/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +1 -1
  187. package/es/networkTopo/createTopo.js +2 -0
  188. package/es/networkTopo/models/LinkDynamicStyleExecutor.js +2 -2
  189. package/es/networkTopo/services/link.js +2 -2
  190. package/es/networkTopo/store/topoTreeMod.js +6 -7
  191. package/es/style.js +2 -1
  192. package/es/utils/htElementUtils.js +3 -0
  193. package/es/utils/topoData.js +1 -0
  194. package/lib/components/ColorPanel/components/ColorBlock/index.js +47 -0
  195. package/lib/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
  196. package/lib/components/ColorPanel/components/FontColorRange/index.js +49 -0
  197. package/lib/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
  198. package/lib/components/ColorPanel/index.js +259 -0
  199. package/lib/components/ColorPanel/index.module.scss +35 -0
  200. package/lib/components/VerticalIconTab/VerticalIconTab.js +14 -1
  201. package/lib/components/VerticalIconTab/VerticalIconTab.module.scss +6 -0
  202. package/lib/components/collapse/Collapse.js +28 -3
  203. package/lib/components/collapse/Collapse.module.scss +24 -0
  204. package/lib/components/collapse/index.js +11 -0
  205. package/lib/core/common/hooks/useHtElements.js +27 -0
  206. package/lib/core/common/icons/icon.js +48 -0
  207. package/lib/core/common/icons/useIcons.js +10 -15
  208. package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
  209. package/lib/core/components/AlarmListPanel/components/index.module.scss +5 -5
  210. package/lib/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
  211. package/lib/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +10 -3
  212. package/lib/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +147 -0
  213. package/lib/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
  214. package/lib/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +84 -22
  215. package/lib/core/components/TopoView/GraphViewPanel.js +31 -0
  216. package/lib/core/components/TopoView/editor.module.scss +1 -0
  217. package/lib/core/components/TopoView/topoView.js +32 -50
  218. package/lib/core/components/titlebar/TitleBar.module.scss +1 -1
  219. package/lib/core/editor/components/EditorPlugin.js +13 -2
  220. package/lib/core/editor/components/Sidebar/Sidebar.js +28 -2
  221. package/lib/core/editor/components/Sidebar/panes.js +6 -1
  222. package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +43 -2
  223. package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
  224. package/lib/core/editor/components/Sidebar/views/CanvasPanel/hooks/useCanvasThemeConfig.js +142 -0
  225. package/lib/core/editor/components/Sidebar/views/CanvasPanel/hooks/useNewElementTheme.js +48 -0
  226. package/lib/core/editor/components/Sidebar/views/CanvasPanel/themes.js +96 -0
  227. package/lib/core/editor/components/Sidebar/views/CanvasPanel/utils/elementThemeUtil.js +1 -0
  228. package/lib/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +1 -1
  229. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +13 -1
  230. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +13 -1
  231. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +3 -3
  232. package/lib/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +36 -12
  233. package/lib/core/editor/components/Toolbar/EditorToolbar.js +14 -7
  234. package/lib/core/editor/components/Toolbar/buttons.js +21 -20
  235. package/lib/core/editor/components/Toolbar/widgets/AddResourceButton.js +3 -3
  236. package/lib/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +3 -3
  237. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +48 -2
  238. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +100 -6
  239. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +73 -22
  240. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +1 -3
  241. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +19 -10
  242. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +83 -0
  243. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +76 -5
  244. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +109 -16
  245. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +42 -0
  246. package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +26 -10
  247. package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +30 -12
  248. package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +105 -39
  249. package/lib/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +1 -1
  250. package/lib/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +2 -2
  251. package/lib/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +126 -0
  252. package/lib/core/editor/components/Toolbar/widgets/IconSelect/constant.js +69 -0
  253. package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.js +117 -0
  254. package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
  255. package/lib/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +61 -0
  256. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +116 -0
  257. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
  258. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +55 -0
  259. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
  260. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +93 -0
  261. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
  262. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +32 -0
  263. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +22 -0
  264. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
  265. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
  266. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
  267. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
  268. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +44 -0
  269. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
  270. package/lib/core/editor/components/Toolbar/widgets/Layout/index.js +135 -16
  271. package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +105 -23
  272. package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
  273. package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +21 -5
  274. package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -6
  275. package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +100 -13
  276. package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
  277. package/lib/core/editor/components/Toolbar/widgets/WidgetBox.js +18 -5
  278. package/lib/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
  279. package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.js +1 -1
  280. package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
  281. package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
  282. package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +17 -6
  283. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +63 -0
  284. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +82 -0
  285. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +45 -0
  286. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +40 -0
  287. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +57 -0
  288. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +28 -0
  289. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +64 -0
  290. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +52 -0
  291. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +48 -0
  292. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +83 -0
  293. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +39 -0
  294. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +65 -0
  295. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +31 -0
  296. package/lib/core/editor/components/settings/CloseablePanel.js +46 -0
  297. package/lib/core/editor/components/settings/CloseablePanel.module.scss +21 -0
  298. package/lib/core/editor/components/settings/PropertyView.js +43 -12
  299. package/lib/core/editor/components/settings/Settings.js +47 -118
  300. package/lib/core/editor/components/settings/Settings.module.scss +7 -11
  301. package/lib/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +3 -3
  302. package/lib/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +97 -0
  303. package/lib/core/editor/components/settings/common/AlignSetting/index.js +21 -80
  304. package/lib/core/editor/components/settings/common/GroupNodeList/ResourceList.module.scss +1 -0
  305. package/lib/core/editor/components/settings/common/LineType/index.js +13 -126
  306. package/lib/core/editor/components/settings/common/NameInput.js +38 -0
  307. package/lib/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +2 -2
  308. package/lib/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +32 -23
  309. package/lib/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +6 -6
  310. package/lib/core/editor/components/settings/common/text/fontStyleUtil.js +12 -20
  311. package/lib/core/editor/components/settings/core/PropertyViewManager.js +77 -0
  312. package/lib/core/editor/components/settings/core/getPropertyViewType.js +40 -0
  313. package/lib/core/editor/components/settings/core/updateElementProperty.js +27 -0
  314. package/lib/core/editor/components/settings/propertyViews/box/BoxPropertyView.js +6 -13
  315. package/lib/core/editor/components/settings/propertyViews/box/BoxPropertyViewV1.js +76 -0
  316. package/lib/core/editor/components/settings/propertyViews/box/NameInput.js +6 -5
  317. package/lib/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +15 -3
  318. package/lib/core/editor/components/settings/propertyViews/edge/EdgeGroupPropertyView.js +9 -12
  319. package/lib/core/editor/components/settings/propertyViews/edge/EdgePropertyView.js +7 -23
  320. package/lib/core/editor/components/settings/propertyViews/edge/addEdgeProps.js +19 -0
  321. package/lib/core/editor/components/settings/propertyViews/edge/edgeGroup/EdgeGroupSetting.js +1 -6
  322. package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.js +14 -25
  323. package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyView.module.scss +8 -1
  324. package/lib/core/editor/components/settings/propertyViews/group/GroupPropertyViewV1.js +43 -0
  325. package/lib/core/editor/components/settings/propertyViews/group/SettingTab/GroupBasicSetting.js +98 -0
  326. package/lib/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +8 -14
  327. package/lib/core/editor/components/settings/propertyViews/group/cluster/ClusterGroupRelateData.js +9 -7
  328. package/lib/core/editor/components/settings/propertyViews/index.js +5 -2
  329. package/lib/core/editor/components/settings/propertyViews/layer/BasicSetting.js +77 -0
  330. package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyView.js +12 -20
  331. package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyView.module.scss +10 -0
  332. package/lib/core/editor/components/settings/propertyViews/layer/LayerPropertyViewV1.js +40 -0
  333. package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +6 -8
  334. package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
  335. package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
  336. package/lib/core/editor/components/settings/propertyViews/node/NodePropertyView.js +8 -35
  337. package/lib/core/editor/components/settings/propertyViews/node/NodePropertyViewV1.js +68 -0
  338. package/lib/core/editor/components/settings/propertyViews/node/Setting/BasicSetting.js +64 -0
  339. package/lib/core/editor/components/settings/propertyViews/node/Setting/NameInput.js +6 -5
  340. package/lib/core/editor/components/settings/propertyViews/node/data/Data.js +2 -1
  341. package/lib/core/editor/components/settings/propertyViews/node/data/NodeRelateResourceButton.js +1 -0
  342. package/lib/core/editor/components/settings/propertyViews/text/TextPropertyView.js +5 -20
  343. package/lib/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +7 -5
  344. package/lib/core/editor/components/titlebar/TopoEditorTitleBar.js +9 -1
  345. package/lib/core/editor/hooks/useKeyboardShortcut.js +52 -0
  346. package/lib/core/editor/store/topoEdit.js +46 -37
  347. package/lib/core/editor/utils/edgeTypeStyleUtil.js +109 -0
  348. package/lib/core/editor/utils/textStyleUtil.js +1 -0
  349. package/lib/core/hooks/useCanvasTheme.js +75 -0
  350. package/lib/core/hooks/usePolling.js +2 -5
  351. package/lib/core/hooks/useTopoEdit.js +31 -12
  352. package/lib/core/models/Alarm.js +2 -2
  353. package/lib/core/models/AttributeMetricDisplay.js +4 -0
  354. package/lib/core/models/HistoryManager.js +13 -8
  355. package/lib/core/models/{SelectionManager.js → SelectionModel.js} +57 -22
  356. package/lib/core/models/TopoApp.js +3 -3
  357. package/lib/core/models/TopoGraphView.js +8 -2
  358. package/lib/core/models/selection/ignoreList.js +6 -0
  359. package/lib/core/models/utils/linkUtils.js +5 -6
  360. package/lib/core/store/models/selection.js +2 -1
  361. package/lib/core/store/models/topoBizMod.js +0 -3
  362. package/lib/core/store/models/topoConfig.js +9 -18
  363. package/lib/core/store/models/topoMod.js +27 -29
  364. package/lib/core/utils/edgeUtil.js +6 -0
  365. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
  366. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
  367. package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
  368. package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
  369. package/lib/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
  370. package/lib/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
  371. package/lib/networkTopo/components/editor/propertyViews/edge/EdgePropertyView.js +45 -7
  372. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyView.js +10 -18
  373. package/lib/networkTopo/components/editor/propertyViews/edge/LinkPropertyView/LinkPropertyViewV1.js +50 -0
  374. package/lib/networkTopo/components/editor/propertyViews/edge/link/LinkInfoPreview.module.scss +1 -1
  375. package/lib/networkTopo/createTopo.js +3 -0
  376. package/lib/networkTopo/models/LinkDynamicStyleExecutor.js +2 -2
  377. package/lib/networkTopo/services/link.js +2 -2
  378. package/lib/networkTopo/store/topoTreeMod.js +6 -8
  379. package/lib/style.js +2 -1
  380. package/lib/utils/htElementUtils.js +5 -0
  381. package/lib/utils/topoData.js +1 -0
  382. package/package.json +5 -4
  383. package/es/core/store/models/topoView.js +0 -36
  384. package/lib/core/store/models/topoView.js +0 -47
@@ -0,0 +1,12 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="30px" height="30px" viewBox="0 0 30 30" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <title>topo/source/layout/Icon/分层排布</title>
4
+ <g id="topo/source/layout/Icon/分层排布" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
5
+ <g id="矩形布局" transform="translate(0.000000, 11.428571)" fill-rule="nonzero">
6
+ <path d="M3.57142857,0.714285714 C5.149385,0.714285714 6.42857143,1.99347214 6.42857143,3.57142857 C6.42857143,5.149385 5.149385,6.42857143 3.57142857,6.42857143 C1.99347214,6.42857143 0.714285714,5.149385 0.714285714,3.57142857 C0.714285714,1.99347214 1.99347214,0.714285714 3.57142857,0.714285714 Z M26.4285714,0.714285714 C28.0065279,0.714285714 29.2857143,1.99347214 29.2857143,3.57142857 C29.2857143,5.149385 28.0065279,6.42857143 26.4285714,6.42857143 C24.850615,6.42857143 23.5714286,5.149385 23.5714286,3.57142857 C23.5714286,1.99347214 24.850615,0.714285714 26.4285714,0.714285714 Z" id="形状" fill="#DAE4F0"></path>
7
+ <path d="M3.57142857,0 C5.54387411,0 7.14285714,1.59898307 7.14285714,3.57142857 C7.14285714,5.54387407 5.54387411,7.14285714 3.57142857,7.14285714 C1.59898304,7.14285714 0,5.54387407 0,3.57142857 C0,1.59898307 1.59898304,0 3.57142857,0 Z M15,0 C16.9724455,0 18.5714286,1.59898307 18.5714286,3.57142857 C18.5714286,5.54387407 16.9724455,7.14285714 15,7.14285714 C13.0275545,7.14285714 11.4285714,5.54387407 11.4285714,3.57142857 C11.4285714,1.59898307 13.0275545,0 15,0 Z M26.4285714,0 C28.4010169,0 30,1.59898307 30,3.57142857 C30,5.54387407 28.4010169,7.14285714 26.4285714,7.14285714 C24.4561259,7.14285714 22.8571429,5.54387407 22.8571429,3.57142857 C22.8571429,1.59898307 24.4561259,0 26.4285714,0 Z M3.57142857,1.04166664 C2.17427965,1.04166664 1.04166666,2.17427964 1.04166666,3.57142857 C1.04166666,4.9685775 2.17427965,6.1011905 3.57142857,6.1011905 C4.96857749,6.1011905 6.1011905,4.9685775 6.1011905,3.57142857 C6.1011905,2.17427964 4.96857749,1.04166664 3.57142857,1.04166664 Z M15,1.04166664 C13.6028511,1.04166664 12.4702381,2.17427964 12.4702381,3.57142857 C12.4702381,4.9685775 13.6028511,6.1011905 15,6.1011905 C16.3971489,6.1011905 17.5297619,4.9685775 17.5297619,3.57142857 C17.5297619,2.17427964 16.3971489,1.04166664 15,1.04166664 Z M26.4285714,1.04166664 C25.0314225,1.04166664 23.8988095,2.17427964 23.8988095,3.57142857 C23.8988095,4.9685775 25.0314225,6.1011905 26.4285714,6.1011905 C27.8257204,6.1011905 28.9583334,4.9685775 28.9583334,3.57142857 C28.9583334,2.17427964 27.8257204,1.04166664 26.4285714,1.04166664 Z" id="形状" fill="#BACCE7"></path>
8
+ </g>
9
+ <polygon id="直线" fill="#BACCE7" fill-rule="nonzero" points="30 2 30 5 0 5 0 2"></polygon>
10
+ <polygon id="直线备份" fill="#BACCE7" fill-rule="nonzero" points="30 25 30 28 0 28 0 25"></polygon>
11
+ </g>
12
+ </svg>
@@ -0,0 +1,16 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="46px" height="46px" viewBox="0 0 46 46" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
3
+ <!-- Generator: Sketch 63.1 (92452) - https://sketch.com -->
4
+ <title>树形布局</title>
5
+ <desc>Created with Sketch.</desc>
6
+ <g id="树形布局" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
7
+ <circle id="椭圆形" fill="#DAE4F0" cx="11" cy="23" r="4"></circle>
8
+ <circle id="椭圆形备份" fill="#DAE4F0" cx="35" cy="23" r="4"></circle>
9
+ <circle id="椭圆形备份-2" fill="#DAE4F0" cx="41" cy="40" r="4"></circle>
10
+ <circle id="椭圆形备份-3" fill="#DAE4F0" cx="29" cy="40" r="4"></circle>
11
+ <circle id="椭圆形备份-4" fill="#DAE4F0" cx="17" cy="40" r="4"></circle>
12
+ <circle id="椭圆形备份-5" fill="#DAE4F0" cx="5" cy="40" r="4"></circle>
13
+ <path d="M37.470512,26.076139 L41.5378785,35.2115936 L39.7107875,36.0250669 L35.6434211,26.8896123 L37.470512,26.076139 Z M13.0270909,26.076139 L17.0944573,35.2115936 L15.2673664,36.0250669 L11.2,26.8896123 L13.0270909,26.076139 Z M8.66045376,26.1182616 L10.4580419,26.9950039 L6.07433039,35.9829444 L4.27674229,35.1062021 L8.66045376,26.1182616 Z M33.0837115,26.1182616 L34.8812996,26.9950039 L30.4975881,35.9829444 L28.7,35.1062021 L33.0837115,26.1182616 Z M20.5096741,8.18361912 L22.0190933,9.49573718 L13.0067139,19.8172607 L11.3248477,18.7495532 L20.5096741,8.18361912 Z M25.9958912,8.18361912 L35,18.5136719 L33.0152395,19.3069617 L24.4864721,9.49573718 L25.9958912,8.18361912 Z" id="形状结合" fill="#BACCE7"></path>
14
+ <path d="M41,35 C43.7614237,35 46,37.2385763 46,40 C46,42.7614237 43.7614237,45 41,45 C38.2385763,45 36,42.7614237 36,40 C36,37.2385763 38.2385763,35 41,35 Z M29,35 C31.7614237,35 34,37.2385763 34,40 C34,42.7614237 31.7614237,45 29,45 C26.2385763,45 24,42.7614237 24,40 C24,37.2385763 26.2385763,35 29,35 Z M5,35 C7.76142375,35 10,37.2385763 10,40 C10,42.7614237 7.76142375,45 5,45 C2.23857625,45 -1.5187851e-13,42.7614237 -1.5187851e-13,40 C-1.5187851e-13,37.2385763 2.23857625,35 5,35 Z M17,35 C19.7614237,35 22,37.2385763 22,40 C22,42.7614237 19.7614237,45 17,45 C14.2385763,45 12,42.7614237 12,40 C12,37.2385763 14.2385763,35 17,35 Z M41,36.4583333 C39.0439915,36.4583333 37.4583333,38.0439915 37.4583333,40 C37.4583333,41.9560085 39.0439915,43.5416667 41,43.5416667 C42.9560085,43.5416667 44.5416667,41.9560085 44.5416667,40 C44.5416667,38.0439915 42.9560085,36.4583333 41,36.4583333 Z M29,36.4583333 C27.0439915,36.4583333 25.4583333,38.0439915 25.4583333,40 C25.4583333,41.9560085 27.0439915,43.5416667 29,43.5416667 C30.9560085,43.5416667 32.5416667,41.9560085 32.5416667,40 C32.5416667,38.0439915 30.9560085,36.4583333 29,36.4583333 Z M5,36.4583333 C3.04399151,36.4583333 1.45833333,38.0439915 1.45833333,40 C1.45833333,41.9560085 3.04399151,43.5416667 5,43.5416667 C6.95600849,43.5416667 8.54166667,41.9560085 8.54166667,40 C8.54166667,38.0439915 6.95600849,36.4583333 5,36.4583333 Z M17,36.4583333 C15.0439915,36.4583333 13.4583333,38.0439915 13.4583333,40 C13.4583333,41.9560085 15.0439915,43.5416667 17,43.5416667 C18.9560085,43.5416667 20.5416667,41.9560085 20.5416667,40 C20.5416667,38.0439915 18.9560085,36.4583333 17,36.4583333 Z M11,18 C13.7614237,18 16,20.2385763 16,23 C16,25.7614237 13.7614237,28 11,28 C8.23857625,28 6,25.7614237 6,23 C6,20.2385763 8.23857625,18 11,18 Z M35,18 C37.7614237,18 40,20.2385763 40,23 C40,25.7614237 37.7614237,28 35,28 C32.2385763,28 30,25.7614237 30,23 C30,20.2385763 32.2385763,18 35,18 Z M11,19.4583333 C9.04399151,19.4583333 7.45833333,21.0439915 7.45833333,23 C7.45833333,24.9560085 9.04399151,26.5416667 11,26.5416667 C12.9560085,26.5416667 14.5416667,24.9560085 14.5416667,23 C14.5416667,21.0439915 12.9560085,19.4583333 11,19.4583333 Z M35,19.4583333 C33.0439915,19.4583333 31.4583333,21.0439915 31.4583333,23 C31.4583333,24.9560085 33.0439915,26.5416667 35,26.5416667 C36.9560085,26.5416667 38.5416667,24.9560085 38.5416667,23 C38.5416667,21.0439915 36.9560085,19.4583333 35,19.4583333 Z M23,-1.5187851e-13 C25.7614237,-1.5187851e-13 28,2.23857625 28,5 C28,7.76142375 25.7614237,10 23,10 C20.2385763,10 18,7.76142375 18,5 C18,2.23857625 20.2385763,-1.5187851e-13 23,-1.5187851e-13 Z M23,1.45833333 C21.0439915,1.45833333 19.4583333,3.04399151 19.4583333,5 C19.4583333,6.95600849 21.0439915,8.54166667 23,8.54166667 C24.9560085,8.54166667 26.5416667,6.95600849 26.5416667,5 C26.5416667,3.04399151 24.9560085,1.45833333 23,1.45833333 Z" id="形状结合" fill="#BACCE7"></path>
15
+ </g>
16
+ </svg>
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ exports.__esModule = true;
6
+ exports["default"] = void 0;
7
+
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
+
12
+ var _react = _interopRequireDefault(require("react"));
13
+
14
+ var _classnames = _interopRequireDefault(require("classnames"));
15
+
16
+ var _Icon = _interopRequireDefault(require("./Icon"));
17
+
18
+ var _indexModule = _interopRequireDefault(require("./index.module.scss"));
19
+
20
+ var _excluded = ["className", "children", "icon", "img", "iconClassName", "textClassName"];
21
+
22
+ var TemplateButton = function TemplateButton(props) {
23
+ var className = props.className,
24
+ children = props.children,
25
+ icon = props.icon,
26
+ img = props.img,
27
+ iconClassName = props.iconClassName,
28
+ textClassName = props.textClassName,
29
+ rest = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
30
+ return /*#__PURE__*/_react["default"].createElement("div", {
31
+ className: (0, _classnames["default"])(_indexModule["default"].card, className)
32
+ }, /*#__PURE__*/_react["default"].createElement("div", {
33
+ className: _indexModule["default"].iconWrapper
34
+ }, /*#__PURE__*/_react["default"].createElement(_Icon["default"], (0, _extends2["default"])({
35
+ className: (0, _classnames["default"])(_indexModule["default"].icon, iconClassName),
36
+ img: img,
37
+ type: icon
38
+ }, rest))), /*#__PURE__*/_react["default"].createElement("div", {
39
+ className: (0, _classnames["default"])(_indexModule["default"].text, textClassName)
40
+ }, /*#__PURE__*/_react["default"].createElement("span", null, children)));
41
+ };
42
+
43
+ var _default = TemplateButton;
44
+ exports["default"] = _default;
@@ -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
+ }
@@ -5,35 +5,154 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports["default"] = void 0;
7
7
 
8
- var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
8
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
 
10
- var _icon = _interopRequireDefault(require("@alifd/next/lib/icon"));
10
+ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
11
 
12
- var _react = _interopRequireDefault(require("react"));
12
+ var _react = _interopRequireWildcard(require("react"));
13
13
 
14
- var _ArrowPopup = _interopRequireDefault(require("../components/ArrowPopup"));
14
+ var _LayoutSettings = _interopRequireDefault(require("./components/LayoutSettings"));
15
15
 
16
16
  var _WidgetBox = _interopRequireDefault(require("../WidgetBox"));
17
17
 
18
- var _excluded = ["showLabel"];
18
+ var _DropdownButton = _interopRequireDefault(require("../components/DropdownButton"));
19
+
20
+ var _htElementDataUtil = require("../../../../../../utils/htElementDataUtil");
21
+
22
+ var _excluded = ["topo", "showLabel"];
23
+
24
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
25
+
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
27
 
20
28
  function Layout(props) {
21
- var topo = props.topo;
22
- return /*#__PURE__*/_react["default"].createElement(_ArrowPopup["default"], {
23
- label: /*#__PURE__*/_react["default"].createElement(_icon["default"], {
24
- type: "Topology_icon_zoomout",
25
- size: "small"
29
+ var topo = props.topo,
30
+ topoShowType = props.topoShowType;
31
+
32
+ var _useState = (0, _react.useState)(),
33
+ layout = _useState[0],
34
+ setLayout = _useState[1]; // 选中的元素
35
+
36
+
37
+ var selectionElements = topo.selectionModel.useHtSelection();
38
+
39
+ var _topo$store$useModelS = topo.store.useModelState('selection'),
40
+ selection = _topo$store$useModelS.selection;
41
+
42
+ var setDisabled = function setDisabled(data) {
43
+ if (topoShowType == 'layers' && selection.length == 1 && !(0, _htElementDataUtil.isGroup)(selection[0])) {
44
+ return data != 'rectangle';
45
+ } else {
46
+ return data == 'rectangle';
47
+ }
48
+ };
49
+
50
+ var globalLayout = function globalLayout(data) {
51
+ var firstElement = selection[0];
52
+ var layouType = data.id === 'toward' ? "" + data.id + data.options.subId : data.id; // eslint-disable-next-line eqeqeq
53
+
54
+ if (topoShowType != 'layers' && selection.length == 0) {
55
+ topo.getHtTopo().layoutInTopo(layouType);
56
+ } // eslint-disable-next-line eqeqeq
57
+
58
+
59
+ if (topoShowType != 'layers' && selection.length == 1) {
60
+ topo.getHtTopo().layoutInContainer(layouType);
61
+ } // eslint-disable-next-line eqeqeq
62
+
63
+
64
+ if ((0, _htElementDataUtil.isLayer)(firstElement)) {
65
+ topo.getHtTopo().layoutLayer(selectionElements[0]);
66
+ }
67
+ };
68
+
69
+ var layoutOnChange = function layoutOnChange(v) {
70
+ var _selection$;
71
+
72
+ topo.historyManager.beginTransaction();
73
+ setLayout(v); // eslint-disable-next-line eqeqeq
74
+
75
+ 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) {
76
+ globalLayout(v);
77
+ }
78
+
79
+ topo.historyManager.endTransaction();
80
+ };
81
+
82
+ return (
83
+ /*#__PURE__*/
84
+ // <LayoutSettings size="xs" selection = {selection} topoShowType={topoShowType} layout={layout} onChange={layoutOnChange} />
85
+ _react["default"].createElement(_LayoutSettings["default"], {
86
+ size: "xs",
87
+ layout: layout,
88
+ onChange: layoutOnChange,
89
+ disabled: setDisabled
26
90
  })
27
- }, /*#__PURE__*/_react["default"].createElement("div", null, "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null), "\u5E03\u5C40 ", /*#__PURE__*/_react["default"].createElement("br", null)));
91
+ );
28
92
  }
29
93
 
30
94
  function LayoutWidget(props) {
31
- var showLabel = props.showLabel,
32
- otherProps = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded);
95
+ var topo = props.topo,
96
+ showLabel = props.showLabel,
97
+ otherProps = (0, _objectWithoutPropertiesLoose2["default"])(props, _excluded); // eslint-disable-next-line no-undef
98
+
99
+ var store = topo.store; // 拓扑图是否加载
100
+
101
+ var topoState = store.useModelState('topoMod'); // 分层或分区时候选中的值,未选中length为0 配合下面的type属性一起使用,
102
+ // type为partition且selection.length>=0时可以点击布局, selection[0].className != 'ht.Node'
103
+ // type为auto且selection.length==0时可以点击布局
104
+
105
+ var _topo$store$useModelS2 = topo.store.useModelState('selection'),
106
+ selection = _topo$store$useModelS2.selection;
107
+
108
+ var topoShowType = topoState.type; // 获取ID以及拓扑类型 // 拓扑类型:auto自由布局,layers分层,partition分区
109
+
110
+ var disabled = (0, _react.useMemo)(function () {
111
+ return !isLayoutEnabled({
112
+ topoShowType: topoShowType,
113
+ selection: selection
114
+ });
115
+ }, [topoShowType, selection]);
116
+ var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
117
+ src: "/img/topo/editor/toolbar/layout/Disable.svg",
118
+ alt: ""
119
+ }) : /*#__PURE__*/_react["default"].createElement("img", {
120
+ src: "/img/topo/editor/toolbar/layout/Normal.svg",
121
+ alt: ""
122
+ });
33
123
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
34
- label: "\u5E03\u5C40",
35
- showLabel: showLabel
36
- }, /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"].ButtonBox, null, /*#__PURE__*/_react["default"].createElement(Layout, otherProps)));
124
+ label: "\u5E03\u5C40\u65B9\u5F0F",
125
+ tooltip: "\u5E03\u5C40\u65B9\u5F0F",
126
+ showLabel: showLabel,
127
+ disabled: disabled
128
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownButton["default"], {
129
+ disabled: disabled,
130
+ trigger: icon
131
+ }, !disabled && /*#__PURE__*/_react["default"].createElement(Layout, (0, _extends2["default"])({
132
+ topo: topo,
133
+ topoShowType: topoShowType
134
+ }, otherProps))));
135
+ }
136
+
137
+ function isLayoutEnabled(props) {
138
+ var topoShowType = props.topoShowType,
139
+ selection = props.selection; // 选中单个区域/集群后,该按钮亮起
140
+
141
+ if (selection.length === 1 && (0, _htElementDataUtil.isGroup)(selection[0]) && selection[0].expanded) {
142
+ return true;
143
+ } // 分层拓扑选中任意分层时,布局按钮亮起
144
+
145
+
146
+ if (topoShowType === 'layers' && selection.length === 1 && (0, _htElementDataUtil.isLayer)(selection[0])) {
147
+ return true;
148
+ } // 空白拓扑未选中任何资源时,布局按钮亮起
149
+
150
+
151
+ if (topoShowType !== 'layers' && !selection.length) {
152
+ return true;
153
+ }
154
+
155
+ return false;
37
156
  }
38
157
 
39
158
  var _default = LayoutWidget;
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports["default"] = void 0;
7
7
 
8
- var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
8
+ var _numberPicker = _interopRequireDefault(require("@alifd/next/lib/number-picker"));
9
9
 
10
10
  var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
11
11
 
@@ -15,27 +15,18 @@ var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
15
15
 
16
16
  var _DropdownButton = _interopRequireDefault(require("./components/DropdownButton"));
17
17
 
18
+ var _AlignSetting = _interopRequireDefault(require("../../settings/common/AlignSetting"));
19
+
20
+ var _htElementUtils = require("../../../../../utils/htElementUtils");
21
+
22
+ var _NodeAlignWidgetModule = _interopRequireDefault(require("./NodeAlignWidget.module.scss"));
23
+
18
24
  var _excluded = ["topo", "showLabel"];
19
25
 
20
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
27
 
22
28
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
29
 
24
- function NodeAlignPopup(props) {
25
- var topo = props.topo,
26
- disabled = props.disabled;
27
- var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
28
- src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Disable.svg",
29
- alt: ""
30
- }) : /*#__PURE__*/_react["default"].createElement("img", {
31
- src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Normal.svg",
32
- alt: ""
33
- });
34
- return /*#__PURE__*/_react["default"].createElement(_DropdownButton["default"], {
35
- trigger: icon
36
- }, "\u5BF9\u9F50\u65B9\u5F0F");
37
- }
38
-
39
30
  function NodeAlignWidget(props) {
40
31
  var topo = props.topo,
41
32
  showLabel = props.showLabel,
@@ -43,21 +34,112 @@ function NodeAlignWidget(props) {
43
34
 
44
35
  var _useState = (0, _react.useState)(true),
45
36
  disabled = _useState[0],
46
- setDisabled = _useState[1]; // 选中的元素
37
+ setDisabled = _useState[1];
38
+
39
+ var _useState2 = (0, _react.useState)(),
40
+ leftInputVal = _useState2[0],
41
+ setLeftInputVal = _useState2[1];
42
+
43
+ var _useState3 = (0, _react.useState)(),
44
+ rightInputVal = _useState3[0],
45
+ setRightInputVal = _useState3[1];
46
+
47
+ var _useState4 = (0, _react.useState)(true),
48
+ distributionDisabled = _useState4[0],
49
+ setDistributionDisabled = _useState4[1]; // 拓扑图是否加载
50
+
47
51
 
52
+ var _topo$store$useModelS = topo.store.useModelState('topoMod'),
53
+ graphLoaded = _topo$store$useModelS.graphLoaded; // 选中的元素
54
+
55
+
56
+ var selection = topo.selectionModel.useHtSelection();
57
+
58
+ var setSpace = function setSpace(type, num) {
59
+ topo.historyManager.beginTransaction(); // eslint-disable-next-line no-shadow
60
+
61
+ var selection = topo.getHtTopo().getGraphView().getSelectionModel().getSelection().toArray();
62
+ var nodes = selection.filter(function (ele) {
63
+ return !(0, _htElementUtils.isLayer)(ele) && !(0, _htElementUtils.isEdge)(ele);
64
+ });
65
+ topo.view.topoClient.htTopoClient.setElementsSpace(nodes, type, num);
66
+ topo.historyManager.endTransaction();
67
+ };
68
+
69
+ var leftInputChange = function leftInputChange(v) {
70
+ setLeftInputVal(v);
71
+ setSpace('h', v);
72
+ };
73
+
74
+ var rightInputChange = function rightInputChange(v) {
75
+ setRightInputVal(v);
76
+ setSpace('v', v);
77
+ };
48
78
 
49
- var selection = topo.selectionManager.useSelection();
50
79
  (0, _react.useEffect)(function () {
51
- setDisabled(false);
52
- }, [selection]);
80
+ if (graphLoaded) {
81
+ var selectionEle = topo.getHtTopo().getGraphView().getSelectionModel().getSelection().toArray();
82
+ var nodes = selectionEle.filter(function (ele) {
83
+ return !(0, _htElementUtils.isLayer)(ele) && !(0, _htElementUtils.isEdge)(ele);
84
+ });
85
+ setDisabled(nodes.length <= 1); // eslint-disable-next-line no-use-before-define
86
+
87
+ setLeftInputVal();
88
+ setRightInputVal();
89
+ setDistributionDisabled(nodes.length <= 2);
90
+
91
+ if (nodes.length === 2) {
92
+ var h = topo.view.topoClient.htTopoClient.getElementsSpace(nodes, 'h')[0];
93
+ var v = topo.view.topoClient.htTopoClient.getElementsSpace(nodes, 'v')[0];
94
+ setLeftInputVal(Math.round(h * 1 > 0 ? h : 0));
95
+ setRightInputVal(Math.round(v * 1 > 0 ? v : 0));
96
+ }
97
+ } // eslint-disable-next-line react-hooks/exhaustive-deps
98
+
99
+ }, [graphLoaded, selection]);
100
+ var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
101
+ src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Disable.svg",
102
+ alt: ""
103
+ }) : /*#__PURE__*/_react["default"].createElement("img", {
104
+ src: "/img/topo/editor/toolbar/\u5BF9\u9F50/Normal.svg",
105
+ alt: ""
106
+ });
53
107
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
54
108
  showLabel: showLabel,
109
+ disabled: disabled,
55
110
  label: "\u5BF9\u9F50\u65B9\u5F0F",
56
111
  tooltip: "\u5BF9\u9F50\u65B9\u5F0F"
57
- }, /*#__PURE__*/_react["default"].createElement(NodeAlignPopup, (0, _extends2["default"])({
112
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownButton["default"], {
113
+ disabled: disabled,
114
+ trigger: icon
115
+ }, /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement("div", {
116
+ style: {
117
+ margin: '10px 7px 17px 7px'
118
+ }
119
+ }, /*#__PURE__*/_react["default"].createElement(_AlignSetting["default"], {
120
+ topo: topo,
121
+ distributionDisabled: distributionDisabled
122
+ })), /*#__PURE__*/_react["default"].createElement(_numberPicker["default"], {
123
+ disabled: disabled,
124
+ size: "small",
125
+ hasTrigger: false,
126
+ placeholder: "\u591A\u4E2A\u503C",
127
+ className: _NodeAlignWidgetModule["default"].leftInput,
128
+ value: leftInputVal,
129
+ min: 0,
130
+ max: 10000,
131
+ onChange: leftInputChange
132
+ }), /*#__PURE__*/_react["default"].createElement(_numberPicker["default"], {
58
133
  disabled: disabled,
59
- selection: selection
60
- }, otherProps)));
134
+ size: "small",
135
+ hasTrigger: false,
136
+ placeholder: "\u591A\u4E2A\u503C",
137
+ className: _NodeAlignWidgetModule["default"].rightInput,
138
+ value: rightInputVal,
139
+ min: 0,
140
+ max: 10000,
141
+ onChange: rightInputChange
142
+ }))));
61
143
  }
62
144
 
63
145
  var _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
+ }
@@ -5,12 +5,28 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports["default"] = void 0;
7
7
 
8
- var _react = _interopRequireDefault(require("react"));
8
+ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
- function BoxBackgroundSetting(props) {
11
- // const { } = props
12
- return /*#__PURE__*/_react["default"].createElement("div", null, "xxx");
10
+ var _IconSelect = _interopRequireDefault(require("../IconSelect"));
11
+
12
+ var _useIcons = require("../../../../../common/icons/useIcons");
13
+
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+
16
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
+
18
+ function NodeImageList(props, ref) {
19
+ var value = props.value,
20
+ onChange = props.onChange,
21
+ topo = props.topo;
22
+ (0, _react.useEffect)(function () {}, []);
23
+ var icons = (0, _useIcons.useNodeIcons)(topo);
24
+ return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_IconSelect["default"], {
25
+ value: value,
26
+ iconList: icons,
27
+ onChange: onChange
28
+ }));
13
29
  }
14
30
 
15
- var _default = BoxBackgroundSetting;
31
+ var _default = NodeImageList;
16
32
  exports["default"] = _default;
@@ -9,6 +9,8 @@ var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runt
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _htElementUtils = require("../../../../../../utils/htElementUtils");
13
+
12
14
  var _DropdownButton = _interopRequireDefault(require("../components/DropdownButton"));
13
15
 
14
16
  var _WidgetBox = _interopRequireDefault(require("../WidgetBox"));
@@ -23,8 +25,8 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
23
25
 
24
26
  /**
25
27
  * 替换图片设置
26
- * @param {*} props
27
- * @returns
28
+ * @param {*} props
29
+ * @returns
28
30
  */
29
31
  function NodeImageButton(props) {
30
32
  var topo = props.topo,
@@ -33,13 +35,43 @@ function NodeImageButton(props) {
33
35
 
34
36
  var _useState = (0, _react.useState)(true),
35
37
  disabled = _useState[0],
36
- setDisabled = _useState[1]; // 选中的元素
38
+ setDisabled = _useState[1];
39
+
40
+ var _useState2 = (0, _react.useState)(),
41
+ imgVal = _useState2[0],
42
+ setImgVal = _useState2[1]; // 选中的元素
37
43
 
38
44
 
39
- var selection = topo.selectionManager.useSelection();
45
+ var selection = topo.selectionModel.useHtSelection();
40
46
  (0, _react.useEffect)(function () {
41
- setDisabled(false);
47
+ var nodes = selection.filter(function (ele) {
48
+ return (0, _htElementUtils.isGroup)(ele) || (0, _htElementUtils.isNode)(ele);
49
+ });
50
+
51
+ if (nodes.length > 0) {
52
+ setDisabled(false);
53
+ setImgVal(nodes[0].getImage());
54
+ } else {
55
+ setDisabled(true);
56
+ }
42
57
  }, [selection]);
58
+
59
+ var onChange = function onChange(prop) {
60
+ console.log("onChange-prop", prop, selection); //const { name, value } = prop;
61
+ // const gv = topo.view.topoClient.getGraphView();
62
+ //const element = topo.getSelectionModel().getFirstData();
63
+
64
+ var elements = topo.getSelectionModel();
65
+ console.log("onChange-elements", elements);
66
+ elements.each(function (element) {
67
+ element.setImage(prop);
68
+ }); // selection.map((element) => {
69
+ // element.setImage(prop);
70
+ // });
71
+ // if (name === "image") {
72
+ // }
73
+ };
74
+
43
75
  var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
44
76
  src: "/img/topo/editor/toolbar/\u66FF\u6362\u56FE\u7247/Disable.svg",
45
77
  alt: ""
@@ -50,12 +82,15 @@ function NodeImageButton(props) {
50
82
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
51
83
  label: "\u66FF\u6362\u56FE\u7247",
52
84
  tooltip: "\u66FF\u6362\u56FE\u7247",
85
+ disabled: disabled,
53
86
  showLabel: showLabel
54
87
  }, /*#__PURE__*/_react["default"].createElement(_DropdownButton["default"], {
55
88
  disabled: disabled,
56
89
  trigger: icon
57
90
  }, /*#__PURE__*/_react["default"].createElement(_BoxBackgroundSetting["default"], {
58
- topo: topo
91
+ topo: topo,
92
+ onChange: onChange,
93
+ value: imgVal
59
94
  })));
60
95
  }
61
96