@riil-frontend/component-topology 6.0.0-alpha.4 → 6.0.0-alpha.41

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 (335) 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/es/components/ColorPanel/components/ColorBlock/index.js +37 -0
  6. package/es/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
  7. package/es/components/ColorPanel/components/FontColorRange/index.js +35 -0
  8. package/es/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
  9. package/es/components/ColorPanel/index.js +237 -0
  10. package/es/components/ColorPanel/index.module.scss +35 -0
  11. package/es/components/VerticalIconTab/VerticalIconTab.module.scss +5 -1
  12. package/es/components/collapse/Collapse.js +22 -3
  13. package/es/components/collapse/Collapse.module.scss +24 -0
  14. package/es/components/collapse/index.js +2 -0
  15. package/es/core/common/hooks/useHtElements.js +21 -0
  16. package/es/core/common/icons/icon.js +41 -0
  17. package/es/core/common/icons/useIcons.js +8 -16
  18. package/es/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
  19. package/es/core/components/AlarmListPanel/components/index.module.scss +5 -5
  20. package/es/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
  21. package/es/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +9 -3
  22. package/es/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +122 -0
  23. package/es/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
  24. package/es/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +76 -19
  25. package/es/core/components/TopoView/GraphViewPanel.js +21 -0
  26. package/es/core/components/TopoView/editor.module.scss +1 -0
  27. package/es/core/components/TopoView/topoView.js +29 -49
  28. package/es/core/components/titlebar/TitleBar.module.scss +1 -1
  29. package/es/core/editor/components/EditorPlugin.js +2 -1
  30. package/es/core/editor/components/Sidebar/Sidebar.js +41 -50
  31. package/es/core/editor/components/Sidebar/panes.js +32 -0
  32. package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +38 -0
  33. package/es/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
  34. package/es/core/editor/components/Sidebar/views/CanvasPanel/index.js +1 -1
  35. package/es/core/editor/components/Sidebar/views/CanvasPanel/themes.js +63 -0
  36. package/es/core/editor/components/Sidebar/views/CanvasPanel/useCanvasThemeConfig.js +115 -0
  37. package/es/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +3 -3
  38. package/es/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +14 -6
  39. package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +14 -5
  40. package/es/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +5 -0
  41. package/es/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +20 -7
  42. package/es/core/editor/components/Toolbar/EditorToolbar.js +23 -13
  43. package/es/core/editor/components/Toolbar/Toolbar.js +1 -1
  44. package/es/core/editor/components/Toolbar/Toolbar.module.scss +14 -3
  45. package/es/core/editor/components/Toolbar/buttons.js +20 -18
  46. package/es/core/editor/components/Toolbar/widgets/AddResourceButton.js +8 -7
  47. package/es/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +2 -2
  48. package/es/core/editor/components/Toolbar/widgets/CanvasMoveWidget.js +13 -2
  49. package/es/core/editor/components/Toolbar/widgets/CanvasSelectWidget.js +11 -2
  50. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +46 -2
  51. package/es/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +98 -6
  52. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +184 -3
  53. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +44 -0
  54. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +53 -0
  55. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.module.scss +31 -0
  56. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +77 -0
  57. package/es/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +74 -6
  58. package/es/core/editor/components/Toolbar/widgets/FontColorButton.js +70 -16
  59. package/es/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +43 -0
  60. package/es/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +25 -11
  61. package/es/core/editor/components/Toolbar/widgets/FontSizeWidget.js +29 -13
  62. package/es/core/editor/components/Toolbar/widgets/FontStyleButton.js +100 -39
  63. package/es/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +3 -2
  64. package/es/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +5 -4
  65. package/es/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +109 -0
  66. package/es/core/editor/components/Toolbar/widgets/IconSelect/constant.js +64 -0
  67. package/es/core/editor/components/Toolbar/widgets/IconSelect/index.js +101 -0
  68. package/es/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
  69. package/es/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +49 -0
  70. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +99 -0
  71. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
  72. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +42 -0
  73. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
  74. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +75 -0
  75. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
  76. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +23 -0
  77. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +10 -0
  78. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
  79. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
  80. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
  81. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
  82. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +31 -0
  83. package/es/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
  84. package/es/core/editor/components/Toolbar/widgets/Layout/index.js +128 -15
  85. package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +95 -23
  86. package/es/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
  87. package/es/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +15 -5
  88. package/es/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -7
  89. package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +98 -13
  90. package/es/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
  91. package/es/core/editor/components/Toolbar/widgets/WidgetBox.js +15 -22
  92. package/es/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
  93. package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.js +5 -3
  94. package/es/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
  95. package/es/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
  96. package/es/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +16 -6
  97. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +49 -0
  98. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +59 -0
  99. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +30 -0
  100. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +25 -0
  101. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +41 -0
  102. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +14 -0
  103. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +49 -0
  104. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +36 -0
  105. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +32 -0
  106. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +71 -0
  107. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +25 -0
  108. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +52 -0
  109. package/es/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +20 -0
  110. package/es/core/editor/components/settings/CloseablePanel.js +33 -0
  111. package/es/core/editor/components/settings/CloseablePanel.module.scss +9 -0
  112. package/es/core/editor/components/settings/OpenPropertyPanelListener.js +33 -0
  113. package/es/core/editor/components/settings/PropertyView.js +29 -8
  114. package/es/core/editor/components/settings/Settings.js +4 -44
  115. package/es/core/editor/components/settings/Settings.module.scss +8 -4
  116. package/es/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +2 -2
  117. package/es/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +80 -0
  118. package/es/core/editor/components/settings/common/AlignSetting/index.js +20 -72
  119. package/es/core/editor/components/settings/common/LineType/index.js +12 -119
  120. package/es/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +3 -3
  121. package/es/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +31 -21
  122. package/es/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +7 -6
  123. package/es/core/editor/components/settings/common/text/fontStyleUtil.js +11 -19
  124. package/es/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +7 -1
  125. package/es/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +0 -8
  126. package/es/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +8 -9
  127. package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
  128. package/es/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
  129. package/es/core/editor/components/settings/propertyViews/text/TextPropertyView.js +1 -1
  130. package/es/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +9 -6
  131. package/es/core/editor/components/titlebar/TopoEditorTitleBar.js +8 -4
  132. package/es/core/editor/hooks/useKeyboardShortcut.js +42 -0
  133. package/es/core/{store/models → editor/store}/background.js +0 -0
  134. package/es/core/{store/models → editor/store}/historyManager.js +0 -0
  135. package/es/core/editor/store/topoEdit.js +49 -0
  136. package/es/core/editor/utils/edgeTypeStyleUtil.js +96 -0
  137. package/es/core/editor/utils/textStyleUtil.js +0 -0
  138. package/es/core/hooks/useCanvasTheme.js +61 -0
  139. package/es/core/hooks/usePolling.js +2 -5
  140. package/es/core/hooks/useTopoEdit.js +38 -58
  141. package/es/core/models/Alarm.js +2 -2
  142. package/es/core/models/AttributeMetricDisplay.js +4 -0
  143. package/es/core/models/HistoryManager.js +11 -3
  144. package/es/core/models/SelectionManager.js +28 -9
  145. package/es/core/models/TopoApp.js +1 -1
  146. package/es/core/models/TopoGraphView.js +8 -2
  147. package/es/core/models/selection/ignoreList.js +1 -0
  148. package/es/core/models/utils/linkUtils.js +5 -6
  149. package/es/core/store/coreModels.js +6 -7
  150. package/es/core/store/models/selection.js +2 -1
  151. package/es/core/store/models/topoBizMod.js +0 -3
  152. package/es/core/store/models/topoConfig.js +10 -12
  153. package/es/core/store/models/topoMod.js +26 -28
  154. package/es/core/utils/edgeUtil.js +6 -0
  155. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
  156. package/es/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
  157. package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
  158. package/es/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
  159. package/es/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
  160. package/es/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
  161. package/es/networkTopo/createTopo.js +2 -0
  162. package/es/networkTopo/services/link.js +2 -2
  163. package/es/networkTopo/store/topoTreeMod.js +6 -7
  164. package/es/style.js +1 -0
  165. package/es/utils/htElementUtils.js +3 -0
  166. package/es/utils/topoData.js +1 -0
  167. package/lib/components/ColorPanel/components/ColorBlock/index.js +47 -0
  168. package/lib/components/ColorPanel/components/ColorBlock/index.module.scss +9 -0
  169. package/lib/components/ColorPanel/components/FontColorRange/index.js +49 -0
  170. package/lib/components/ColorPanel/components/FontColorRange/index.module.scss +25 -0
  171. package/lib/components/ColorPanel/index.js +255 -0
  172. package/lib/components/ColorPanel/index.module.scss +35 -0
  173. package/lib/components/VerticalIconTab/VerticalIconTab.module.scss +5 -1
  174. package/lib/components/collapse/Collapse.js +28 -3
  175. package/lib/components/collapse/Collapse.module.scss +24 -0
  176. package/lib/components/collapse/index.js +11 -0
  177. package/lib/core/common/hooks/useHtElements.js +27 -0
  178. package/lib/core/common/icons/icon.js +48 -0
  179. package/lib/core/common/icons/useIcons.js +10 -15
  180. package/lib/core/components/AlarmListPanel/components/AlarmListItem.js +14 -13
  181. package/lib/core/components/AlarmListPanel/components/index.module.scss +5 -5
  182. package/lib/core/components/DisplaySettingDrawer/DisplaySetting.js +2 -1
  183. package/lib/core/components/DisplaySettingDrawer/DisplaySettingDrawer.js +10 -3
  184. package/lib/core/components/DisplaySettingDrawer/EditorDisplaySetting.js +147 -0
  185. package/lib/core/components/DisplaySettingDrawer/LineExpandAllRadioGroup.js +0 -3
  186. package/lib/core/components/DisplaySettingDrawer/hooks/useDisplaySetting.js +76 -19
  187. package/lib/core/components/TopoView/GraphViewPanel.js +31 -0
  188. package/lib/core/components/TopoView/editor.module.scss +1 -0
  189. package/lib/core/components/TopoView/topoView.js +32 -50
  190. package/lib/core/components/titlebar/TitleBar.module.scss +1 -1
  191. package/lib/core/editor/components/EditorPlugin.js +3 -1
  192. package/lib/core/editor/components/Sidebar/Sidebar.js +40 -53
  193. package/lib/core/editor/components/Sidebar/panes.js +45 -0
  194. package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.js +53 -0
  195. package/lib/core/editor/components/Sidebar/views/CanvasPanel/CanvasPanel.module.scss +74 -0
  196. package/lib/core/editor/components/Sidebar/views/CanvasPanel/index.js +2 -2
  197. package/lib/core/editor/components/Sidebar/views/CanvasPanel/themes.js +72 -0
  198. package/lib/core/editor/components/Sidebar/views/CanvasPanel/useCanvasThemeConfig.js +128 -0
  199. package/lib/core/editor/components/Sidebar/views/ImagePanel/CiTypeImagePanel.js +1 -1
  200. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtCustomImagePanel.js +15 -6
  201. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.js +16 -5
  202. package/lib/core/editor/components/Sidebar/views/ImagePanel/HtImagePalette.module.scss +5 -0
  203. package/lib/core/editor/components/Sidebar/views/ImagePanel/ImagePanel.js +29 -11
  204. package/lib/core/editor/components/Toolbar/EditorToolbar.js +22 -11
  205. package/lib/core/editor/components/Toolbar/Toolbar.js +1 -1
  206. package/lib/core/editor/components/Toolbar/Toolbar.module.scss +14 -3
  207. package/lib/core/editor/components/Toolbar/buttons.js +21 -20
  208. package/lib/core/editor/components/Toolbar/widgets/AddResourceButton.js +8 -7
  209. package/lib/core/editor/components/Toolbar/widgets/BoxBackgroundButton/BoxBackgroundButton.js +2 -2
  210. package/lib/core/editor/components/Toolbar/widgets/CanvasMoveWidget.js +13 -2
  211. package/lib/core/editor/components/Toolbar/widgets/CanvasSelectWidget.js +11 -2
  212. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/Content.js +48 -2
  213. package/lib/core/editor/components/Toolbar/widgets/EdgeColorButton/EdgeColorButton.js +100 -6
  214. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.js +194 -3
  215. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/EdgeType.module.scss +44 -0
  216. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.js +71 -0
  217. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/LineType.module.scss +31 -0
  218. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/constants.js +83 -0
  219. package/lib/core/editor/components/Toolbar/widgets/EdgeTypeButton/index.js +76 -5
  220. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.js +75 -16
  221. package/lib/core/editor/components/Toolbar/widgets/FontColorButton.module.scss +43 -0
  222. package/lib/core/editor/components/Toolbar/widgets/FontFamilyWidget.js +26 -10
  223. package/lib/core/editor/components/Toolbar/widgets/FontSizeWidget.js +30 -12
  224. package/lib/core/editor/components/Toolbar/widgets/FontStyleButton.js +105 -39
  225. package/lib/core/editor/components/Toolbar/widgets/HistoryRedoButton.js +4 -2
  226. package/lib/core/editor/components/Toolbar/widgets/HistoryUndoButton.js +5 -3
  227. package/lib/core/editor/components/Toolbar/widgets/IconSelect/IconSelect.js +126 -0
  228. package/lib/core/editor/components/Toolbar/widgets/IconSelect/constant.js +69 -0
  229. package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.js +117 -0
  230. package/lib/core/editor/components/Toolbar/widgets/IconSelect/index.module.scss +153 -0
  231. package/lib/core/editor/components/Toolbar/widgets/IconSelect/popUpContent.js +61 -0
  232. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.js +116 -0
  233. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutSettings.module.scss +70 -0
  234. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.js +55 -0
  235. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagImageSelect/index.module.scss +7 -0
  236. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.js +93 -0
  237. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTagSelect/index.scss +32 -0
  238. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/Icon.js +32 -0
  239. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/index.js +22 -0
  240. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_circular.svg +10 -0
  241. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_hierarchical.svg +10 -0
  242. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_rectangle.svg +12 -0
  243. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/assets/topo_layout_toward.svg +16 -0
  244. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.js +44 -0
  245. package/lib/core/editor/components/Toolbar/widgets/Layout/components/LayoutTemplateButton/index.module.scss +53 -0
  246. package/lib/core/editor/components/Toolbar/widgets/Layout/index.js +133 -16
  247. package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.js +98 -23
  248. package/lib/core/editor/components/Toolbar/widgets/NodeAlignWidget.module.scss +33 -0
  249. package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/BoxBackgroundSetting.js +21 -5
  250. package/lib/core/editor/components/Toolbar/widgets/NodeImageButton/NodeImageButton.js +41 -6
  251. package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.js +99 -12
  252. package/lib/core/editor/components/Toolbar/widgets/NodeSizeButton/NodeSizeButton.module.scss +28 -0
  253. package/lib/core/editor/components/Toolbar/widgets/WidgetBox.js +16 -22
  254. package/lib/core/editor/components/Toolbar/widgets/WidgetBox.module.scss +11 -1
  255. package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.js +5 -3
  256. package/lib/core/editor/components/Toolbar/widgets/components/ButtonBox.module.scss +3 -0
  257. package/lib/core/editor/components/Toolbar/widgets/components/DropdownButton.js +21 -3
  258. package/lib/core/editor/components/Toolbar/widgets/components/DropdownMenu.js +17 -6
  259. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/ElementTextStyleSetting.js +63 -0
  260. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/colorUtil.js +72 -0
  261. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/box.js +45 -0
  262. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/edgeTag.js +40 -0
  263. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/groupTitle.js +57 -0
  264. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/index.js +28 -0
  265. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/layerTitle.js +64 -0
  266. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/nodeTag.js +52 -0
  267. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/elements/text.js +47 -0
  268. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/ElementTextStyleSetting/textStyleUtil.js +83 -0
  269. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/GlobalTagStyleSetting.js +39 -0
  270. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/GlobalTagStyleSetting/globalTag.js +65 -0
  271. package/lib/core/editor/components/Toolbar/widgets/components/textStyleSetting/textStyleSettingRouter.js +31 -0
  272. package/lib/core/editor/components/settings/CloseablePanel.js +46 -0
  273. package/lib/core/editor/components/settings/CloseablePanel.module.scss +9 -0
  274. package/lib/core/editor/components/settings/OpenPropertyPanelListener.js +43 -0
  275. package/lib/core/editor/components/settings/PropertyView.js +32 -8
  276. package/lib/core/editor/components/settings/Settings.js +4 -44
  277. package/lib/core/editor/components/settings/Settings.module.scss +8 -4
  278. package/lib/core/editor/components/settings/common/AlignSetting/AlignSetting.module.scss +2 -2
  279. package/lib/core/editor/components/settings/common/AlignSetting/AlignTypeList.js +97 -0
  280. package/lib/core/editor/components/settings/common/AlignSetting/index.js +21 -80
  281. package/lib/core/editor/components/settings/common/LineType/index.js +13 -126
  282. package/lib/core/editor/components/settings/common/NodeSizeInput/NodeSizeInput.js +2 -2
  283. package/lib/core/editor/components/settings/common/SizeInput/NodeSizeInput.js +32 -23
  284. package/lib/core/editor/components/settings/common/SizeInput/NodeSizeNumberPicker.js +6 -6
  285. package/lib/core/editor/components/settings/common/text/fontStyleUtil.js +12 -20
  286. package/lib/core/editor/components/settings/propertyViews/edge/CommonEdgePropertyView.js +7 -1
  287. package/lib/core/editor/components/settings/propertyViews/group/SettingTab/GroupExpandSetting.js +0 -8
  288. package/lib/core/editor/components/settings/propertyViews/multipleElements/BatchSetNodeSize/BatchSetNodeSize.js +6 -8
  289. package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementLineType.js +5 -42
  290. package/lib/core/editor/components/settings/propertyViews/multipleElements/MultipleElementPropertyView.js +2 -15
  291. package/lib/core/editor/components/settings/propertyViews/text/TextPropertyView.js +1 -1
  292. package/lib/core/editor/components/settings/propertyViews/view/BatchSetNodeSize.js +7 -5
  293. package/lib/core/editor/components/titlebar/TopoEditorTitleBar.js +9 -1
  294. package/lib/core/editor/hooks/useKeyboardShortcut.js +52 -0
  295. package/lib/core/{store/models → editor/store}/background.js +0 -0
  296. package/lib/core/{store/models → editor/store}/historyManager.js +0 -0
  297. package/lib/core/editor/store/topoEdit.js +59 -0
  298. package/lib/core/editor/utils/edgeTypeStyleUtil.js +109 -0
  299. package/lib/core/editor/utils/textStyleUtil.js +1 -0
  300. package/lib/core/hooks/useCanvasTheme.js +75 -0
  301. package/lib/core/hooks/usePolling.js +2 -5
  302. package/lib/core/hooks/useTopoEdit.js +39 -60
  303. package/lib/core/models/Alarm.js +2 -2
  304. package/lib/core/models/AttributeMetricDisplay.js +4 -0
  305. package/lib/core/models/HistoryManager.js +11 -3
  306. package/lib/core/models/SelectionManager.js +30 -9
  307. package/lib/core/models/TopoApp.js +1 -1
  308. package/lib/core/models/TopoGraphView.js +8 -2
  309. package/lib/core/models/selection/ignoreList.js +6 -0
  310. package/lib/core/models/utils/linkUtils.js +5 -6
  311. package/lib/core/store/coreModels.js +5 -7
  312. package/lib/core/store/models/selection.js +2 -1
  313. package/lib/core/store/models/topoBizMod.js +0 -3
  314. package/lib/core/store/models/topoConfig.js +9 -18
  315. package/lib/core/store/models/topoMod.js +27 -29
  316. package/lib/core/utils/edgeUtil.js +6 -0
  317. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/hooks/useMetricPolling.js +3 -4
  318. package/lib/core/viewer/components/plugins/ResourceDetail/components/ResourceOverview/components/LinkTopo/services/index.js +19 -5
  319. package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/WebConsoleForm.js +13 -29
  320. package/lib/core/viewer/components/plugins/ResourceDetail/components/WebConsole/WebConsoleForm/hooks/useWebConsole.js +6 -5
  321. package/lib/core/viewer/components/titlebar/widgets/SettingButton.js +3 -1
  322. package/lib/core/viewer/components/titlebar/widgets/SettingButtonWidget.js +4 -2
  323. package/lib/networkTopo/createTopo.js +3 -0
  324. package/lib/networkTopo/services/link.js +2 -2
  325. package/lib/networkTopo/store/topoTreeMod.js +6 -8
  326. package/lib/style.js +1 -0
  327. package/lib/utils/htElementUtils.js +5 -0
  328. package/lib/utils/topoData.js +1 -0
  329. package/package.json +5 -4
  330. package/es/core/editor/components/Sidebar/views/CanvasPanel/ImagePanel.js +0 -4
  331. package/es/core/store/models/topoEdit.js +0 -39
  332. package/es/core/store/models/topoView.js +0 -36
  333. package/lib/core/editor/components/Sidebar/views/CanvasPanel/ImagePanel.js +0 -12
  334. package/lib/core/store/models/topoEdit.js +0 -51
  335. package/lib/core/store/models/topoView.js +0 -47
@@ -11,18 +11,48 @@ var _DropdownButton = _interopRequireDefault(require("./components/DropdownButto
11
11
 
12
12
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
13
13
 
14
+ var _ColorPanel = _interopRequireDefault(require("../../../../../components/ColorPanel"));
15
+
16
+ var _FontColorRange = _interopRequireDefault(require("../../../../../components/ColorPanel/components/FontColorRange"));
17
+
18
+ var _FontColorButtonModule = _interopRequireDefault(require("./FontColorButton.module.scss"));
19
+
20
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
21
+
14
22
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
23
 
16
24
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
25
 
18
- function FontFamilySelect(props) {
19
- var value = props.value,
20
- onChange = props.onChange;
26
+ /* eslint-disable jsx-a11y/alt-text */
27
+ function FontColorDropdown(props) {
28
+ var onChange = props.onChange,
29
+ topo = props.topo,
30
+ color = props.color,
31
+ background = props.background,
32
+ opacity = props.opacity;
21
33
 
22
34
  var _useState = (0, _react.useState)(false),
23
35
  disabled = _useState[0],
24
36
  setDisabled = _useState[1];
25
37
 
38
+ var backOpacityChange = function backOpacityChange(value) {
39
+ onChange({
40
+ opacity: value / 100
41
+ });
42
+ };
43
+
44
+ var colorChang = function colorChang(value) {
45
+ onChange({
46
+ color: value
47
+ });
48
+ };
49
+
50
+ var backgroundChang = function backgroundChang(value) {
51
+ onChange({
52
+ background: value
53
+ });
54
+ };
55
+
26
56
  var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
27
57
  src: "/img/topo/editor/toolbar/\u6587\u5B57\u989C\u8272\u53CA\u586B\u5145/Disable.svg",
28
58
  alt: ""
@@ -32,27 +62,56 @@ function FontFamilySelect(props) {
32
62
  });
33
63
  return /*#__PURE__*/_react["default"].createElement(_DropdownButton["default"], {
34
64
  disabled: disabled,
35
- trigger: icon,
36
- onChange: onChange
37
- }, "xxxx");
65
+ trigger: icon
66
+ }, /*#__PURE__*/_react["default"].createElement("div", {
67
+ className: _FontColorButtonModule["default"].content
68
+ }, /*#__PURE__*/_react["default"].createElement("div", {
69
+ className: _FontColorButtonModule["default"].fontColor
70
+ }, /*#__PURE__*/_react["default"].createElement("span", null, "\u5B57\u4F53\u989C\u8272"), /*#__PURE__*/_react["default"].createElement(_ColorPanel["default"], {
71
+ onChange: colorChang
72
+ })), /*#__PURE__*/_react["default"].createElement("div", {
73
+ className: _FontColorButtonModule["default"].backgroundColor
74
+ }, /*#__PURE__*/_react["default"].createElement("span", null, "\u80CC\u666F\u586B\u5145"), /*#__PURE__*/_react["default"].createElement("div", {
75
+ className: _FontColorButtonModule["default"].backOpacity
76
+ }, /*#__PURE__*/_react["default"].createElement("img", {
77
+ src: "/img/topo/editor/toolbar/\u6587\u5B57\u989C\u8272\u53CA\u586B\u5145/\u80CC\u666F\u586B\u5145.svg"
78
+ }), /*#__PURE__*/_react["default"].createElement(_FontColorRange["default"], {
79
+ max: 100,
80
+ min: 0,
81
+ unit: "%",
82
+ list: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100],
83
+ onChange: backOpacityChange,
84
+ defaultValue: opacity
85
+ })), /*#__PURE__*/_react["default"].createElement(_ColorPanel["default"], {
86
+ showClear: true,
87
+ onChange: backgroundChang
88
+ }))));
38
89
  }
39
90
 
40
91
  function FontColorButton(props) {
41
- var showLabel = props.showLabel;
42
-
43
- var _useState2 = (0, _react.useState)('微软雅黑'),
44
- value = _useState2[0],
45
- setValue = _useState2[1];
46
-
92
+ var showLabel = props.showLabel,
93
+ topo = props.topo,
94
+ style = props.style,
95
+ setStyle = props.setStyle;
47
96
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
48
97
  label: "\u6587\u5B57\u989C\u8272",
49
98
  tooltip: "\u6587\u5B57\u989C\u8272",
50
99
  showLabel: showLabel
51
- }, /*#__PURE__*/_react["default"].createElement(FontFamilySelect, {
52
- value: value,
53
- onChange: setValue
100
+ }, /*#__PURE__*/_react["default"].createElement(FontColorDropdown, {
101
+ color: style.color,
102
+ background: style.background,
103
+ opacity: style.opacity,
104
+ onChange: function onChange(val) {
105
+ topo.historyManager.beginTransaction();
106
+ setStyle(val);
107
+ topo.historyManager.endTransaction();
108
+ },
109
+ topo: topo
54
110
  }));
55
111
  }
56
112
 
57
- var _default = FontColorButton;
113
+ var _default = (0, _textStyleSettingRouter["default"])(FontColorButton, {
114
+ names: ['color', 'background', 'opacity']
115
+ });
116
+
58
117
  exports["default"] = _default;
@@ -0,0 +1,43 @@
1
+ .content {
2
+ height: 296px;
3
+ .fontColor{
4
+ width: 100%;
5
+ height: 143px;//159px
6
+ .colorPanelBox{
7
+ padding: 9px;
8
+ padding-top: 8px;
9
+ }
10
+ &>span{
11
+ font-size: 12px;
12
+ color: black;
13
+ font-family: PingFangSC-Regular, PingFang SC;
14
+ font-weight: 400;
15
+ color: #4D6277;
16
+ line-height: 17px;
17
+ }
18
+ }
19
+ .backgroundColor{
20
+ width: 100%;
21
+ height: 159px;
22
+ .colorPanelBox{
23
+ padding: 9px;
24
+ padding-top: 0px;
25
+ }
26
+ &>span{
27
+ font-size: 12px;
28
+ color: black;
29
+ font-family: PingFangSC-Regular, PingFang SC;
30
+ font-weight: 400;
31
+ color: #4D6277;
32
+ line-height: 17px;
33
+ }
34
+ .backOpacity{
35
+ margin-top: 2px;
36
+ margin-bottom: 5px;
37
+ margin-left: 11px;
38
+ line-height: 8px;
39
+ display: flex;
40
+ flex-direction: row;
41
+ }
42
+ }
43
+ }
@@ -9,6 +9,8 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
11
11
 
12
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
13
+
12
14
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
13
15
 
14
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -20,7 +22,14 @@ function FontFamilySelect(props) {
20
22
  onChange = props.onChange;
21
23
  var items = ['宋体', '微软雅黑', '黑体', 'Arial'];
22
24
  return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
23
- value: value,
25
+ value: (items.includes(value) ? value : null) || '',
26
+ valueRender: function valueRender(val) {
27
+ return /*#__PURE__*/_react["default"].createElement("div", {
28
+ style: {
29
+ width: 48
30
+ }
31
+ }, val || '微软雅黑');
32
+ },
24
33
  onChange: onChange
25
34
  }, items.map(function (item) {
26
35
  return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
@@ -34,21 +43,28 @@ function FontFamilySelect(props) {
34
43
  }
35
44
 
36
45
  function FontFamilyWidget(props) {
37
- var showLabel = props.showLabel;
38
-
39
- var _useState = (0, _react.useState)('微软雅黑'),
40
- value = _useState[0],
41
- setValue = _useState[1];
42
-
46
+ var topo = props.topo,
47
+ showLabel = props.showLabel,
48
+ style = props.style,
49
+ setStyle = props.setStyle;
43
50
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
44
51
  label: "\u5B57\u4F53",
45
52
  tooltip: "\u5B57\u4F53",
46
53
  showLabel: showLabel
47
54
  }, /*#__PURE__*/_react["default"].createElement(FontFamilySelect, {
48
- value: value,
49
- onChange: setValue
55
+ value: style.fontFamily,
56
+ onChange: function onChange(val) {
57
+ topo.historyManager.beginTransaction();
58
+ setStyle({
59
+ fontFamily: val
60
+ });
61
+ topo.historyManager.endTransaction();
62
+ }
50
63
  }));
51
64
  }
52
65
 
53
- var _default = FontFamilyWidget;
66
+ var _default = (0, _textStyleSettingRouter["default"])(FontFamilyWidget, {
67
+ names: ['fontFamily']
68
+ });
69
+
54
70
  exports["default"] = _default;
@@ -9,6 +9,8 @@ var _react = _interopRequireWildcard(require("react"));
9
9
 
10
10
  var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
11
11
 
12
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
13
+
12
14
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
13
15
 
14
16
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
@@ -17,11 +19,20 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
17
19
 
18
20
  function FontSizeSelect(props) {
19
21
  var value = props.value,
20
- onChange = props.onChange;
22
+ _onChange = props.onChange;
21
23
  var items = [9, 10, 11, 12, 14, 16, 18, 20, 24, 30, 36];
22
24
  return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
23
- value: value,
24
- onChange: onChange
25
+ value: "" + (value || ''),
26
+ valueRender: function valueRender(val) {
27
+ return /*#__PURE__*/_react["default"].createElement("div", {
28
+ style: {
29
+ width: 18
30
+ }
31
+ }, val || 12);
32
+ },
33
+ onChange: function onChange(val) {
34
+ return _onChange(parseInt(val, 10));
35
+ }
25
36
  }, items.map(function (item) {
26
37
  return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
27
38
  key: item
@@ -30,20 +41,27 @@ function FontSizeSelect(props) {
30
41
  }
31
42
 
32
43
  function FontSizeWidget(props) {
33
- var showLabel = props.showLabel;
34
-
35
- var _useState = (0, _react.useState)(12),
36
- fontSize = _useState[0],
37
- setFontSize = _useState[1];
38
-
44
+ var topo = props.topo,
45
+ showLabel = props.showLabel,
46
+ style = props.style,
47
+ setStyle = props.setStyle;
39
48
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
40
49
  label: "\u5B57\u53F7",
41
50
  showLabel: showLabel
42
51
  }, /*#__PURE__*/_react["default"].createElement(FontSizeSelect, {
43
- value: fontSize,
44
- onChange: setFontSize
52
+ value: style.fontSize,
53
+ onChange: function onChange(val) {
54
+ topo.historyManager.beginTransaction();
55
+ setStyle({
56
+ fontSize: val
57
+ });
58
+ topo.historyManager.endTransaction();
59
+ }
45
60
  }));
46
61
  }
47
62
 
48
- var _default = FontSizeWidget;
63
+ var _default = (0, _textStyleSettingRouter["default"])(FontSizeWidget, {
64
+ names: ['fontSize']
65
+ });
66
+
49
67
  exports["default"] = _default;
@@ -5,72 +5,138 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  exports.__esModule = true;
6
6
  exports["default"] = void 0;
7
7
 
8
+ var _extends3 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
+
8
10
  var _react = _interopRequireWildcard(require("react"));
9
11
 
12
+ var _htElementUtils = require("../../../../../utils/htElementUtils");
13
+
10
14
  var _DropdownMenu = _interopRequireDefault(require("./components/DropdownMenu"));
11
15
 
16
+ var _textStyleSettingRouter = _interopRequireDefault(require("./components/textStyleSetting/textStyleSettingRouter.js"));
17
+
12
18
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
13
19
 
14
20
  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
21
 
16
22
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
17
23
 
18
- function FontFamilySelect(props) {
19
- var value = props.value,
20
- disabled = props.disabled,
21
- onChange = props.onChange;
22
- var items = ['宋体', '微软雅黑', '黑体', 'Arial'];
23
- var icon = disabled ? /*#__PURE__*/_react["default"].createElement("img", {
24
- src: "/img/topo/editor/toolbar/bold/Disable.svg",
25
- alt: ""
26
- }) : /*#__PURE__*/_react["default"].createElement("img", {
27
- src: "/img/topo/editor/toolbar/bold/Normal.svg",
28
- alt: ""
24
+ var items = [{
25
+ key: 'bold',
26
+ label: '加粗',
27
+ icon: 'bold'
28
+ }, {
29
+ key: 'italic',
30
+ label: '斜体',
31
+ icon: 'Italics'
32
+ }, {
33
+ key: 'underline',
34
+ label: '下划线',
35
+ icon: 'Underline'
36
+ }];
37
+
38
+ function buildValue(obj) {
39
+ return Object.keys(obj).filter(function (key) {
40
+ return !!obj[key];
29
41
  });
30
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
31
- value: value,
32
- valueRender: function valueRender() {
33
- return icon;
34
- },
35
- onChange: onChange
36
- }, items.map(function (item) {
37
- return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
38
- key: item
39
- }, /*#__PURE__*/_react["default"].createElement("div", {
40
- style: {
41
- fontFamily: item
42
- }
43
- }, item));
44
- }));
42
+ }
43
+
44
+ function formatStyle(arr) {
45
+ return items.map(function (item) {
46
+ return item.key;
47
+ }).reduce(function (map, name) {
48
+ var _extends2;
49
+
50
+ return (0, _extends3["default"])({}, map, (_extends2 = {}, _extends2[name] = arr.includes(name), _extends2));
51
+ }, {});
45
52
  }
46
53
 
47
54
  function FontStyleButton(props) {
48
55
  var topo = props.topo,
49
- showLabel = props.showLabel;
56
+ showLabel = props.showLabel,
57
+ style = props.style,
58
+ setStyle = props.setStyle;
50
59
 
51
- var _useState = (0, _react.useState)('微软雅黑'),
52
- value = _useState[0],
53
- setValue = _useState[1];
60
+ var _useState = (0, _react.useState)(true),
61
+ disabled = _useState[0],
62
+ setDisabled = _useState[1];
54
63
 
55
- var _useState2 = (0, _react.useState)(true),
56
- disabled = _useState2[0],
57
- setDisabled = _useState2[1]; // 选中的元素
64
+ var bold = style.bold,
65
+ italic = style.italic,
66
+ underline = style.underline;
58
67
 
68
+ var _useState2 = (0, _react.useState)(buildValue({
69
+ bold: bold,
70
+ italic: italic,
71
+ underline: underline
72
+ })),
73
+ value = _useState2[0],
74
+ setValue = _useState2[1]; // 选中的元素
59
75
 
60
- var selection = topo.selectionManager.useSelection();
76
+
77
+ var selection = topo.selectionManager.useHtSelection();
61
78
  (0, _react.useEffect)(function () {
62
- setDisabled(false);
79
+ var isAllText = !selection.filter(function (ele) {
80
+ return !(0, _htElementUtils.isText)(ele);
81
+ }).length;
82
+
83
+ if (selection.length && isAllText) {
84
+ setDisabled(false);
85
+ } else {
86
+ setDisabled(true);
87
+ }
63
88
  }, [selection]);
89
+ (0, _react.useEffect)(function () {
90
+ setValue(buildValue({
91
+ bold: bold,
92
+ italic: italic,
93
+ underline: underline
94
+ }));
95
+ }, [bold, italic, underline]);
96
+ /**
97
+ *
98
+ * @param {Array} selectedKeys
99
+ */
100
+
101
+ var handleChange = function handleChange(selectedKeys) {
102
+ topo.historyManager.beginTransaction();
103
+ setStyle(formatStyle(selectedKeys));
104
+ topo.historyManager.endTransaction();
105
+ };
106
+
64
107
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
65
108
  label: "\u6587\u5B57\u6837\u5F0F",
66
109
  tooltip: "\u6587\u5B57\u6837\u5F0F",
110
+ disabled: disabled,
67
111
  showLabel: showLabel
68
- }, /*#__PURE__*/_react["default"].createElement(FontFamilySelect, {
112
+ }, /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"], {
69
113
  value: value,
114
+ valueRender: function valueRender() {
115
+ return /*#__PURE__*/_react["default"].createElement("img", {
116
+ src: "/img/topo/editor/toolbar/bold/" + (disabled ? 'Disable' : 'Normal') + ".svg",
117
+ alt: ""
118
+ });
119
+ },
120
+ multiple: true,
70
121
  disabled: disabled,
71
- onChange: setValue
72
- }));
122
+ onChange: handleChange
123
+ }, items.map(function (item) {
124
+ return /*#__PURE__*/_react["default"].createElement(_DropdownMenu["default"].Item, {
125
+ key: item.key
126
+ }, /*#__PURE__*/_react["default"].createElement("div", {
127
+ style: {
128
+ display: 'flex',
129
+ alignItems: 'center'
130
+ }
131
+ }, /*#__PURE__*/_react["default"].createElement("img", {
132
+ src: "/img/topo/editor/toolbar/" + item.icon + "/Normal.svg",
133
+ alt: ""
134
+ }), /*#__PURE__*/_react["default"].createElement("span", null, item.label)));
135
+ })));
73
136
  }
74
137
 
75
- var _default = FontStyleButton;
138
+ var _default = (0, _textStyleSettingRouter["default"])(FontStyleButton, {
139
+ names: ['bold', 'italic', 'underline']
140
+ });
141
+
76
142
  exports["default"] = _default;
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
11
11
 
12
+ var _ButtonBox = _interopRequireDefault(require("./components/ButtonBox"));
13
+
12
14
  function HistoryRedoButton(props) {
13
15
  var topo = props.topo,
14
16
  showLabel = props.showLabel;
@@ -21,8 +23,8 @@ function HistoryRedoButton(props) {
21
23
  label: "\u6062\u590D",
22
24
  tooltip: "\u6062\u590D",
23
25
  showLabel: showLabel
24
- }, /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"].ButtonBox, null, /*#__PURE__*/_react["default"].createElement("img", {
25
- src: "/img/topo/editor/toolbar/redo/" + (disabled ? 'Disable' : 'Normal') + ".svg",
26
+ }, /*#__PURE__*/_react["default"].createElement(_ButtonBox["default"], null, /*#__PURE__*/_react["default"].createElement("img", {
27
+ src: "/img/topo/editor/toolbar/undo/" + (disabled ? 'Disable' : 'Normal') + ".svg",
26
28
  alt: ""
27
29
  })));
28
30
  }
@@ -7,6 +7,8 @@ exports["default"] = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _ButtonBox = _interopRequireDefault(require("./components/ButtonBox"));
11
+
10
12
  var _WidgetBox = _interopRequireDefault(require("./WidgetBox"));
11
13
 
12
14
  // import { Icon, Button } from '@alifd/next';
@@ -21,15 +23,15 @@ function HistoryUndoButton(props) {
21
23
  return /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"], {
22
24
  disabled: disabled,
23
25
  label: "\u64A4\u9500",
24
- tooltip: "\u64A4\u9500",
26
+ tooltip: disabled ? '无法撤销' : '撤销(Ctrl/ ⌘+Z)',
25
27
  showLabel: showLabel
26
- }, /*#__PURE__*/_react["default"].createElement(_WidgetBox["default"].ButtonBox, {
28
+ }, /*#__PURE__*/_react["default"].createElement(_ButtonBox["default"], {
27
29
  disabled: disabled,
28
30
  onClick: function onClick() {
29
31
  topo.historyManager.undo();
30
32
  }
31
33
  }, /*#__PURE__*/_react["default"].createElement("img", {
32
- src: "/img/topo/editor/toolbar/undo/" + (disabled ? 'Disable' : 'Normal') + ".svg",
34
+ src: "/img/topo/editor/toolbar/redo/" + (disabled ? 'Disable' : 'Normal') + ".svg",
33
35
  alt: ""
34
36
  })));
35
37
  }
@@ -0,0 +1,126 @@
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 _select = _interopRequireDefault(require("@alifd/next/lib/select"));
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _indexModule = _interopRequireDefault(require("./index.module.scss"));
13
+
14
+ var _popUpContent = _interopRequireDefault(require("./popUpContent"));
15
+
16
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
17
+
18
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { "default": obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj["default"] = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
19
+
20
+ var TopoIconSelect = function TopoIconSelect(props, ref) {
21
+ // 传入参数
22
+ var value = props.value,
23
+ iconList = props.iconList,
24
+ onChange = props.onChange;
25
+
26
+ var _useState = (0, _react.useState)(value),
27
+ valueData = _useState[0],
28
+ setValue = _useState[1];
29
+
30
+ var _useState2 = (0, _react.useState)(),
31
+ selectItem = _useState2[0],
32
+ setSelect = _useState2[1];
33
+
34
+ var _useState3 = (0, _react.useState)(false),
35
+ visible = _useState3[0],
36
+ setVisible = _useState3[1];
37
+
38
+ (0, _react.useEffect)(function () {
39
+ if (value) {
40
+ for (var i = 0; i < iconList.length; i++) {
41
+ var icons = iconList[i].icons;
42
+ var flag = false;
43
+
44
+ for (var m = 0; m < icons.length; m++) {
45
+ if (value === icons[m].id) {
46
+ flag = true;
47
+ setSelect(icons[m]);
48
+ break;
49
+ }
50
+ }
51
+
52
+ if (flag) {
53
+ break;
54
+ }
55
+ }
56
+ }
57
+ }, [value]);
58
+ (0, _react.useImperativeHandle)(ref, function () {
59
+ return {
60
+ getSelectData: getSelectData
61
+ };
62
+ });
63
+
64
+ var handleChange = function handleChange(v) {
65
+ console.log('handleChange: ', v);
66
+
67
+ if (typeof onChange === 'function') {
68
+ onChange(v.id);
69
+ }
70
+
71
+ setSelect(v);
72
+ setValue(v.id);
73
+ setVisible(false);
74
+ };
75
+
76
+ var getSelectData = function getSelectData() {
77
+ return valueData;
78
+ };
79
+
80
+ var valueRender = function valueRender(v) {
81
+ return selectItem ? /*#__PURE__*/_react["default"].createElement("span", {
82
+ className: _indexModule["default"].selected
83
+ }, /*#__PURE__*/_react["default"].createElement("div", {
84
+ className: _indexModule["default"].iconImgWrapper
85
+ }, /*#__PURE__*/_react["default"].createElement("img", {
86
+ className: _indexModule["default"].iconImg,
87
+ alt: "",
88
+ src: selectItem === null || selectItem === void 0 ? void 0 : selectItem.url
89
+ })), /*#__PURE__*/_react["default"].createElement("span", {
90
+ className: _indexModule["default"].icontitle
91
+ }, selectItem === null || selectItem === void 0 ? void 0 : selectItem.name)) : null;
92
+ };
93
+
94
+ var onVisibleChange = function onVisibleChange(v) {
95
+ setVisible(v);
96
+ };
97
+
98
+ var popupContent = /*#__PURE__*/_react["default"].createElement(_popUpContent["default"], {
99
+ iconList: iconList,
100
+ selectedId: selectItem === null || selectItem === void 0 ? void 0 : selectItem.id,
101
+ onChange: handleChange
102
+ });
103
+
104
+ var popupProps = {
105
+ triggerClickKeycode: [13, 32, 40] // space, enter, down-arrow
106
+
107
+ };
108
+ return /*#__PURE__*/_react["default"].createElement("div", {
109
+ className: _indexModule["default"].TopoIconSelect
110
+ }, /*#__PURE__*/_react["default"].createElement(_select["default"], {
111
+ placeholder: "\u8BF7\u9009\u62E9",
112
+ visible: visible,
113
+ className: _indexModule["default"].iconSelect,
114
+ onVisibleChange: onVisibleChange,
115
+ value: valueData,
116
+ valueRender: valueRender,
117
+ dataSource: iconList,
118
+ onChange: handleChange,
119
+ popupProps: popupProps,
120
+ popupContent: popupContent
121
+ }));
122
+ };
123
+
124
+ var _default = /*#__PURE__*/_react["default"].forwardRef(TopoIconSelect);
125
+
126
+ exports["default"] = _default;