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 = ({