Version 3.0.0
This version makes the VSDX export compatible with the yFiles for HTML 3.0 release, and therefore requires yFiles version 3.0 or later. It includes some incompatible API changes, along with various bug fixes and general enhancements.
New Features
-
The
Connectionsclass now has the public propertiesautoGenandpromptcorresponding to theAutoGenandPromptcells of theConnectionsection. -
The
VsdxDocumentclass now has the public propertiesuserandscratchesfor theUserandScratchessections. -
The new
GradientStop.indexproperty describes the index of the stop in theGradientsection.
Styles
-
The
Arrow.cropLengthproperty, which defines the distance from the node-edge intersection to the arrow, is now supported. -
The
ImageNodeStyleand theIconLabelStylecan have a background visual shape that can be exported to Visio. -
The new
PathEdgeStyleBaseclass, which can be used to create a complexGeneralPathfor an edge can be converted by theSvgProviderandSvgProcessingStep. TheEdgePathProcessingStepis also required to process the edge path. -
The new
ShapePortStyleclass can be converted by theSvgProviderandSvgProcessingStep. -
The new
DelegatingNodeStyle,DelegatingEdgeStyle,DelegatingLabelStyleandDelegatingPortStyleclasses can be converted by theSvgProviderandSvgProcessingStep. -
The new
CompositeEdgeProviderandCompositeEdgeProcessingStepclasses can convert edges withCompositeEdgeStyle. The other composite styles are converted by theSvgProviderandSvgProcessingStep.
Improvements
-
The dependency
@yworks/canvghas been updated to 4.0.4. -
The dependency
colorhas been updated to 5.0.0. -
The
StretchNodeLabelProcessingStepclass now correctly appliesStretchNodeLabelModel.padding. -
The configuration created with the
VsdxExportConfiguration.defaultmethod now contains instances ofArrowEdgeProcessingStep,NodePortAdapterProcessingStep,ArrowEdgeProvider,VoidEdgeProvider,NodePortAdapterProvider,ArrowEdgeProvider.CompositeEdgeProvider, andCompositeEdgeProcessingStep.
Bugfixes
-
The
EdgePathProcessingStepclass no longer throws an error when the export graph contains edges withIEdgeStyle.VOID_EDGE_STYLE. -
Visio no longer shows a warning when opening a VSDX file that contains a master created with the
VoidEdgeProviderclass.
Incompatible Changes
-
The VSDX Export npm package is now named
@yfiles/vsdx-export. This makes it easier to serve the addon from a local registry by associating the @yfiles scope with it. -
The Vsdx Export, like yFiles for HTML, no longer supports outdated browsers like Internet Explorer. The 'vsdx-export-for-yfiles-for-html/polyfills' file and the optional dependency to the third party library 'core-js' have been removed. The dependency to the third party library 'regenerator-runtime' has also been removed.
-
The
VssxStencilProviderFactory.fromBase64,VsdxExport.writeBase64,VsdxIO.fromBase64, andVsdxIO.writeBase64methods have been removed. Use theBlobvariants, instead. -
DefaultLabelProviderandDefaultLabelProcessingStepare now calledLabelProviderandLabelProcessingStepto match the new name of theLabelStyleclass in the yFiles library. -
InteriorStretchLabelProcessingStepis now calledStretchNodeLabelProcessingStepto match the new name of theStretchNodeLabelModelin the yFiles library. -
The deprecated
CoordinateConverterparameter of theSvgSupport.applySvgmethod has been removed. -
The
PanelNodeProviderandPanelNodeProcessingStepshave been removed. -
The value type of the
valueandpromptcells of theUserDefinedCellclass is nowunknowninstead ofany. -
The value type of the
Property.valuecell is nowunknowninstead ofany. -
The value type of the
Field.valuecell is nowunknowninstead ofstring. -
The
langIdcells of theCHARACTER,Property, andStylableclasses are now consistently calledlangId(lowercase "d"). -
The value type of the
Action.actioncell is nownumberto match the specification. Only the formula of this cell is relevant. -
The
Valueclass is now immutable. -
The
Value.unitproperty is now calleddisplayUnit. -
Many properties that were designed as immutable are now marked as immutable in the typings and API documentation.
-
Properties are now written with get/set accessors in the typings and not as fields.
-
The public constructor of the
DocumentSettingsclass has been removed. -
The
StyleSheetclass is now calledVsdxStyleSheetto avoid a name clash with the globalStyleSheetclass in browser environments. -
The
Textclass is now calledVsdxTextto avoid a name clash with the globalTextclass in browser environments. -
The properties of the
NameIdclass are now all optional. -
The
fillparameter of theVsdxFill.applymethod is now nullable. -
The
strokeparameter of theVsdxStroke.applymethod is now nullable. -
The
VsdxPathFactoryclass now has methods for allShapeNodeShapes. Shapes that have been removed in yFiles for HTML 3.0 have also been removed from this class. -
Similar to yFiles for HTML 3.0, API members that were of type
Class<T>are now of typeClassConstructor<T>. Instead ofMyClass.$class, you can now passMyClass. -
The
Userclass now inherits fromVsdxSectionand can therefore be iterated. -
Retrieval of existing
UserDefinedCellsfrom aUsersection is now possible with thegetCellmethod. Retrieving aUserDefinedCellwith property accessors is no longer possible.