The base class for a block renderer.
The renderer name.
The renderer name.
Rendering constant overrides, passed in through options.
Create any DOM elements that this renderer needs.
The root of the workspace's SVG.
The workspace theme object.
Chooses a connection preview method based on the available connection, the current dragged connection, and the block being dragged.
The available connection.
The connection currently being dragged.
The block currently being dragged.
The preview type to display.
Get the current renderer's constant provider. We assume that when this is called, the renderer has already been initialized.
The constant provider.
Create a new instance of the renderer's marker drawer.
The workspace the marker belongs to.
The marker.
The object in charge of drawing the marker.
Create a new instance of a renderer path object.
The root SVG element.
The style object to use for colouring.
The renderer path object.
Checks if an orphaned block can connect to the "end" of the topBlock's block-clump. If the clump is a row the end is the last input. If the clump is a stack, the end is the last next connection. If the clump is neither, then this returns false.
Whether there is a home for the orphan or not.
Refresh the renderer after a theme change.
The root of the workspace's SVG.
The workspace theme object.
Determine whether or not to highlight a connection.
The connection to determine whether or not to highlight.
True if we should highlight the connection.
Fake class which should be extended to avoid inheriting static properties