JointJS+ Changelog v4.2.2
appsβ
AIAgentβ
apps.AIAgent β various improvements to the AI Agent appβ
Weβve improved the AI Agent source code and refreshed its styling.

MarketingAutomationβ
apps.MarketingAutomation β Added a new application templateβ
We have created a new Marketing Automation application template that allows users to design and interactively visualize marketing automation workflows.
The application uses the ELK automatic layout to automatically arrange elements and route links orthogonally, and the diagram is fully animated (including transition between states and addition of new nodes).
You can click the βTest flowβ button to run a simulation of the marketing automation workflow.

WorkflowBuilderβ
apps.WorkflowBuilder β Added a new application templateβ
We have created a new Workflow Builder application template that allows users to design and interactively visualize workflows.
The application features the ELK automatic layout for arranging diagrams with ports.

diaβ
Paperβ
dia.Paper - fix to prevent an error when a view is synchronously dumped during an asynchronous visibility checkβ
Fix an edge case where an error could occur if a cell view requests an update of another cell view while being mounted.
dia.Paper - fix to wake up idle async paper with initializeUnmounted: true when a new cell is added to graphβ
Make sure that an async paper with initializeUnmounted: true wakes up from idle state when a new cell is added to the graph.
Elementβ
dia.Element - fix getPortBBox() to return a valid bbox when port has no size definedβ
Make sure that getPortBBox() returns a valid bounding box even when the port has no size defined.
We now default to a size of { width: 0, height: 0 } when the port size is not set.
layoutβ
DirectedGraphβ
layout.DirectedGraph β fix to accept a padding object for clusterPadding option of layout()β
Fix an issue where the clusterPadding option of the layout() method did not accept a padding object with individual values for top, right, bottom, and left.