Skip to main content
PortMapping
Definition of a port inside a view.
NameTypeDescription
allowLoopback?booleanWhether or not to allow edges from this vertex back to itself. Defaults to true. This flag will not prevent an edge from a port back to the node/group to which it belongs - for that, see allowVertexLoopback.
allowVertexLoopback?booleanWhether or not to allow edges from a port back to the vertex it belongs to. Defaults to true.
anchor?AnchorSpecSpec for anchors connected to this port
anchorOffsetX?numberOffset, in pixels, to apply to the position in the x axis after the anchorX value has been used to compute its default position.
anchorOffsetY?numberOffset, in pixels, to apply to the position in the y axis after the anchorY value has been used to compute its default position.
anchorOrientationX?numberThe orientation in the x axis for connections attached to an anchor created for this port.
anchorOrientationY?numberThe orientation in the y axis for connections attached to an anchor created for this port.
anchorPositionFinder?AnchorPositionFinder<any>Optional function to call on connection drop, to determine the location for the target anchor for the new connection. Returning null from this indicates no preference, and VisuallyJs will use its own computed value.
anchorPositions?Array<ObjectAnchorSpec>Optional array of anchor positions to use.
anchorX?numberThe x location of any anchors created for this port. Allows you to specify where, in proportional values, the anchor should be located in the x axis. For a full discussion of how to use this (and the other anchor properties in this interface), see the documentation for anchors.
anchorY?numberThe y location of any anchors created for this port. Allows you to specify where, in proportional values, the anchor should be located in the y axis.
edgeType?stringType of edges generated by this port.
events?EVTOptional map of event bindings.
isSource?booleanWhether or not the port can act as a source for dragged connections. Defaults to false.
isTarget?booleanWhether or not the port can act as a target for dragged connections. Defaults to false.
maxConnections?numberMaximum number of connections this vertex supports. Default is 1. A value of -1 means no limit.
mergeStrategy?stringWhen merging a type description into its parent(s), values in the child for connector, anchor and anchors will always overwrite any such values in the parent. But other values, such as overlays, will be merged with their parent's entry for that key. You can force a child's type to override every corresponding value in its parent by setting mergeStrategy:'override'.
parameters?Record<string,any>A map of parameters that the template engine will merge with the backing data when rendering the vertex.
parent?string | Array<string>Optional ID of one or more edge definitions to include in this definition. The child definition is merged on top of the parent definition(s). Circular references are not allowed and will throw an error.
template?stringTemplate to use for a vertex of this type. This is only for 'vanilla' VisuallyJs: if you are using an integration such as React/Angular/Vue/Svelte, you will not need to provide this. If you provide this and also templateId, this will take precedence.
templateId?stringID of the template to use for a vertex of this type. This is only for 'vanilla' VisuallyJs: if you are using an integration such as React/Angular/Vue, you will not need to provide this. This parameter is distinct from template in that when you provide templateId you are expecting VisuallyJs to resolve the template for you, either from a templates block in a render call, or by looking for a script element in the DOM with the appropriate ID. If you provide this and also template, template will take precedence.
templateIdResolver?(data:ObjectData, ui:UICore<E>, model:VisuallyJsModel, object:Vertex) => stringA function that can resolve the ID of the template to use for the given vertex. This is an advanced configuration that is not often needed, and is only for 'vanilla' VisuallyJs. This function will take precedence over both template and templateId.