We're please to share with you the latest update to the JointJS+ library, full of the usual updates, fixes and cool new features you've come to expect. Take a look below for the main highlights as well as the full changelog.
JointJS+ 2.3 Highlights:
New format.Print plugin for custom diagrams or showing previews
The brand new format.Print plugin allows you to print the whole diagram or any custom rectangular area using the browser print dialog. Not only you can define the standard paper properties such as width, height, format, margins and orientation but you can also let JointJS+ automatically split the diagram into multiple sheets. All of that with a single function call!
Heavily improved Link tools, optimized link and shape performance
Link and element internals have been completely refactored, leading to a much higher performance, more flexibility in defining custom tools and elements, a better UX and user-friendly API. New built-in link tools allow manipulation of vertices, segments, anchors, arrowheads and boundaries.
Improvements and new API methods for UI, curves and geometries
New abstractions for Paths and Curves and methods allowing JavaScript only calculation of their intersection with other shapes. New methods added to PaperScroller for scrolling and positioning diagram content. Lightbox adds a new cross-browser client-side file download.
Plenty of great new tutorials!
The Tutorials section has been completely updated including new tutorials for step-by-step creation of diagrams, such as: how to listen to events both on the UI layer (paper) and on the data model (graph) to run custom functions; definition of custom shapes and links; link labels and tools; and how to serialize/de-serialize your diagrams to/from JSON so that you can store it in your back-end.
Complete JointJS+ v2.3 Changelog:
KitchenSink revamped
AST app revamped
VectorEditor app does not scale strokes in IE
updated Tutorials
format.Print - print custom areas and posters or show a preview
ui.PaperScroller - add positionContent(), positionElement(), positionPoint(), scrollToContent() and getClientSize()
ui.Selection - honors paper's restricted area
ui.Inspector - prevent model's properties removal for the lists (properties not being edited by the inspector stay untouched)
ui.Inspector - add overwrite option per input
ui.Inspector - prevent multiple updates on a single input change
ui.LightBox - add downloadable, fileName, downloadAction and buttons options
ui.PathEditor - fix removeAnchorPoint bug
shapes.Standard - add new set of high-performance elements and links
dia.LinkView - new flexible definitions based on geometric representation
dia.LinkView - refactor event handlers
dia.LinkView - introduce anchors, connectionPoints and connectionStrategy