diff --git a/packages/demo-app-ts/src/demos/topologyPackageDemo/demoComponentFactory.tsx b/packages/demo-app-ts/src/demos/topologyPackageDemo/demoComponentFactory.tsx index c8a394f0..0ca214f9 100644 --- a/packages/demo-app-ts/src/demos/topologyPackageDemo/demoComponentFactory.tsx +++ b/packages/demo-app-ts/src/demos/topologyPackageDemo/demoComponentFactory.tsx @@ -31,7 +31,8 @@ import { EditableDragOperationType, GraphElementProps, isEdge, - Model + Model, + ContextSubMenuItem } from '@patternfly/react-topology'; import CustomPathNode from '../../components/CustomPathNode'; import CustomPolygonNode from '../../components/CustomPolygonNode'; @@ -99,8 +100,16 @@ const contextMenuItem = (label: string, i: number): React.ReactElement => { if (label === '-') { return ; } + if (label === 'Second') { + return ( + + alert(`Selected: ${label} 1`)}>{`${label} subitem number 1`} + alert(`Selected: ${label} 2`)}>{`${label} subitem number 2`} + alert(`Selected: ${label} 3`)}>{`${label} subitem number 3`} + + ); + } return ( - // eslint-disable-next-line no-alert alert(`Selected: ${label}`)}> {label} @@ -117,7 +126,7 @@ const demoComponentFactory: ComponentFactory = ( ): React.ComponentType<{ element: GraphElement }> | undefined => { if (kind === ModelKind.graph) { return withDndDrop(graphDropTargetSpec([NODE_DRAG_TYPE]))( - withPanZoom()(withAreaSelection(['ctrlKey', 'shiftKey'])(GraphComponent)) + withPanZoom()(withAreaSelection(['ctrlKey', 'shiftKey'])(withContextMenu(() => defaultMenu)(GraphComponent))) ); } switch (type) { diff --git a/packages/module/src/components/contextmenu/ContextSubMenuItem.tsx b/packages/module/src/components/contextmenu/ContextSubMenuItem.tsx index da50b362..aff168e9 100644 --- a/packages/module/src/components/contextmenu/ContextSubMenuItem.tsx +++ b/packages/module/src/components/contextmenu/ContextSubMenuItem.tsx @@ -59,6 +59,7 @@ const ContextSubMenuItem: React.FunctionComponent = ({