Releases: UST-MICO/grapheditor
Releases · UST-MICO/grapheditor
Version 0.4.0
Known Issue: this version was compiled using typescript 3.7!
The resulting .d.ts
are only compatible with typescript versions >= 3.6
. See typescript 3.7 release notes for more information.
Added
- Added more specific typing information
- The order of nodes and edges in the dom is now the same as the order in the node or edge list
- Added
getNodesFromPoint
andgetClientPointFromGraphCoordinates
to get a list of nodes that overlap a certain point - Added
moveNode
to move a node with all special node movement logic - Added Groups and a GroupingManager
- Added GroupBehaviour for changing how a group interacts with its own and other nodes
- Added
onBeforeNodeMove
NodeMovementInformation used when a node moves - Added NodeDropZones for groups to specify where a dragged node should be placed
- Added util module to collect small interfaces and functions
- Added
Rect
interface to util - Added
calculateBoundingRect
that calculates a bounding box of a bunch of rects
Incompatible changes
- Changed the type of
Node.type
fromany
tostring
Version 0.3.1
Known Issue: this version was compiled using typescript 3.7!
The resulting .d.ts
are only compatible with typescript versions >= 3.6
. See typescript 3.7 release notes for more information.
Added
- Added 'backgroundclick' event
- Added api for node selection (
selectNode
,deselectNode
,changeSelected
andselected
)
Fixed
- Fixed all possible classes in the
classes
attribute of thenetwork-graph
beeing applied to nodes/edges ifsetNodeClass
/setEdgeClass
was null - Fixed marker for
MarkerStart
not beeing rotated 180° like the line attachement point - Fixed
removeEdge
not working correctly with edges with explicit id
Version 0.3.0
Known Issue: this version was compiled using typescript 3.7!
The resulting .d.ts
are only compatible with typescript versions >= 3.6
. See typescript 3.7 release notes for more information.
Added
- Added
Edge.markerStart
- Added
data-line-attachement-point
to marker templates to specify where an edge attaches to the marker if the marker is an end marker - Added dynamic templates for Nodes, Markers,TextComponents and LinkHandles
- Added dynamic template registry
- Added static template registry
- Consolidated positioning for all objects placed along an edge (markers and text components)
- Added rotation to text components
- Added rotation to link handles
- Added
EdgePathGenerator
andEdgePathGeneratorRegistry
Deprecated
- Deprecated
Marker.rotate
. UseMarker.absoluteRotation
andMarker.relativeRotation
instead.
Incompatible changes
- Removed
Marker.lineOffset
. Usedata-line-attachement-point
in marker template instead. - Removed
TextComponent.class
. Use custom dynamic templates instead. - All text components are wrapped in a
<g>
element. This will break some css styles!
Version 0.2.0
Added
- Use slots instead of html templates to load custom styles and templates into grapheditor
- Templating now uses standard svg groups in the
defs
section of the provided svg. - Add ability to template link handles with marker templates
- Add default marker template (used as link handle template)
Fixed
attributePath
text components not working correctly
Incompatible changes
- Removed templating using html templates (old template content can be reused)
- All link handles are now rendered using marker templates
- Changed
template-type
attribute of templates todata-template-type
- The
network-graph
tag can no longer be empty it must at least contain asvg
tag for thegraph
slot
Version 0.1.3
Added
originalEdge
in detail of edgedrop for edges that have createdFrom set
Fixed
- Dragged edge not removed if edge remove event was cancelled
- Click event key not found in newest firefox
- zoom beahviour set every render
getEdgesByTarget
always returning empty set- Fix documentation dependencies to specific versions and add Pipfile for use with pipenv
- Update dependencies
Version 0.1.2
Added
- Changed single d3 dependency to dependencys on d3 modules
Fixed
- Fixed display bugs when running in Firefox
Version 0.1.1
This release needs d3-selection ^1.4.0 to work correctly. Please ensure that your package lock got updated correctly.
Added
- Use regex to determine word boundarys when wrapping text (before only spaces were valid word boundarys for texwrapping)
- Use ResizeObserver to detect resizes if available (if unavailable calculate current size before zooming to bounding box)
- New
edgedrop
event to enable creating nodes where an edge was dropped in the void - Add
eventSource
to all custom events to distinguish events by how they were triggered (possible values:INTERNAL
,API
,USER_INTERACTION
) - Add
clickEventKey
attribute toMarker
class (used to setdata-click
attribute in html) - Click events
edgeclick
andnodeclick
now search the whole path (only inside the specific svg group) for adata-click
attribute to use as key - Add textcomponents to edge to display text in an edge with text wrapping and drag behaviour for manual positioning
- Add
edgetextpositionchange
events used when the user drags a text component - Update d3 to >5.9 to use join
- Add
calculateLinkHandlesForEdge
callback to customise where edges attach to nodes - Allow dynamic propertys with
data-content
,data-fill
,data-stroke
anddata-href
attributes
Fixed
- Grapheditor fails updating graph if an edge with a source or target pointing to a nonexisting node is present
Version 0.1.0 (first beta)
First beta release.
Fixed
- Wrapping multiline text failing in firefox browser (stackoverflow "How to get the width of an SVG tspan element")
- Textwrapping sometimes producing infinite loops.
Version 0.0.3
Added
updateTextElements
function to update and reflow text withforce
parametergetNode
,getEdge
,getEdgesBySource
andgetEdgesByTarget
functions in grapheditor
Fixed
- First multiline textwrap not rendering the text
scaleRelative
not affectinglineOffset
position ofedge.markerEnd
Version 0.0.2
Added
- LinkHandles for
path
andpolygon
elements - scaleRelative attribute in
Marker
for scaling relative to stroke-width of edge path - markerEnd attribute in
Edge
for better arrowheads - lineOffset attribute in
Marker
for offsetting markerEnd from the end of the edge path