Skip to content

GroupNode

since v0.8.0

Interface representing a group node in the diagram

T extends DataObject = DataObject

optional angle: number

The angle of the node from 0 to 360.

SimpleNode.angle


optional autoSize: boolean

Whether the size of the node is automatically resized based on the content.

SimpleNode.autoSize


readonly optional computedHidden: boolean

ComputedHidden is computed by the system and should not be set manually. The effective visibility of the node: true when its own hidden flag or a template binding is set, or when any ancestor group is effectively hidden.

1.4.0

SimpleNode.computedHidden


readonly optional computedZIndex: number

ComputedZIndex is computed by the system and should not be set manually. The final z-index applied to the DOM element for rendering order. Computed from zOrder, group hierarchy, and selection elevation. Children are always above their parent group.

SimpleNode.computedZIndex


data: T

The data associated with the node.

SimpleNode.data


optional draggable: boolean

Whether the node is draggable.

SimpleNode.draggable


optional groupId: string

The id of the parent node.

SimpleNode.groupId


optional hidden: boolean

Whether the node is hidden. When not set, the node is visible.

A hidden node keeps its size and position and does not block initialization or waitForMeasurements. User interactions ignore it: hit-testing, select-all, box selection, keyboard move, drag, linking, zoomToFit bounds and edge routing. In the default render mode the node stays in the DOM with display: none. With virtualization enabled it is removed from the DOM instead; its geometry stays in the model and is measured again when the node becomes visible. Hiding a group hides all of its descendants. Hiding a node hides the edges connected to it.

Programmatic APIs such as select, centerOnNode and the z-order commands do not skip hidden elements. It is up to the caller whether to use them on hidden elements.

Set by the user; the library only reads it.

computedHidden for the derived effective visibility.

1.4.0

SimpleNode.hidden


highlighted: boolean

Whether the group is highlighted. For example, when a node is being dragged over it.


id: string

The unique identifier for the node.

SimpleNode.id


isGroup: true

Flag indicating the node is a group


readonly optional measuredBounds: Rect

MeasuredBounds are computed by the system and should not be set manually. Bounding box that encompasses the node including its ports, accounting for rotation.

SimpleNode.measuredBounds


readonly optional measuredPorts: Port[]

MeasuredPorts are computed by the system and should not be set manually. The ports of the node with computed position and size.

SimpleNode.measuredPorts


position: Point

The position of the node in the diagram.

SimpleNode.position


optional resizable: boolean

Whether the node is resizable.

SimpleNode.resizable


optional rotatable: boolean

Whether the node is rotatable.

SimpleNode.rotatable


optional selected: boolean

Whether the node is selected.

SimpleNode.selected


optional size: Size

The size of the node.

SimpleNode.size


optional type: string

The type of the node declared in nodeTemplateMap.

SimpleNode.type


optional zOrder: number

The z-order of the node. Controls relative ordering among nodes on the same hierarchy level. With proper values, it can also influence ordering across different hierarchy levels, since each nesting level adds +1 to the computed z-index per child.

  • Root nodes: used directly as the base z-index (negative values allowed).
  • Grouped nodes: acts as a minimum floor — cannot go below the parent’s z-index.

Set by bringToFront / sendToBack commands, or manually.

computedZIndex for the final rendered z-index.

SimpleNode.zOrder