Does the flyout automatically close when a block is created?
Corner radius of the flyout background.
Gap between items in horizontal flyouts. Can be overridden with the "sep" element.
Gap between items in vertical flyouts. Can be overridden with the "sep" element.
Whether the flyout should be laid out horizontally or not.
The unique id for this component that is used to register with the ComponentManager.
Margin around the edges of the blocks in the flyout.
Is RTL vs LTR.
Top/bottom padding between scrollbar and edge of flyout background.
The target workspace
Creates the flyout's DOM. Only needs to be called once. The flyout can either exist as its own SVG element or be a g element nested inside a separate SVG element.
The type of tag to put the flyout in. This should be
The flyout's SVG group.
Get the scale (zoom level) of the flyout. By default, this matches the target workspace scale, but this can be overridden.
Flyout workspace scale.
Get the height of the flyout.
The width of the flyout.
Get the width of the flyout.
The width of the flyout.
Calculates the x coordinate for the flyout position.
X coordinate.
Calculates the y coordinate for the flyout position.
Y coordinate.
Hide and empty the flyout.
Initializes the flyout.
The workspace in which to create new blocks.
Determine if a drag delta is toward the workspace, based on the position and orientation of the flyout. This is used in determineDragIntention_ to determine if a new block should be created or if the flyout should scroll.
How far the pointer has moved from the position at mouse down, in pixel units.
True if the drag is toward the workspace.
Is the flyout visible?
True if visible.
Handles when a cursor with a block or bubble enters this drag target.
The block or bubble currently being dragged.
Handles when a cursor with a block or bubble exits this drag target.
The block or bubble currently being dragged.
Handles when a cursor with a block or bubble is dragged over this drag target.
The block or bubble currently being dragged.
Handles when a block or bubble is dropped on this component. Should not handle delete here.
The block or bubble currently being dragged.
Position the flyout.
Reflow blocks and their mats.
Set whether this flyout's container is visible.
Whether the container is visible.
Set whether the flyout is visible. A value of true does not necessarily mean that the flyout is shown. It could be hidden because its container is hidden.
True if visible.
Returns whether the provided block or bubble should not be moved after being dropped on this component. If true, the element will return to where it was when the drag started.
The block or bubble currently being dragged.
Whether the block or bubble provided should be returned to drag start.
Show and populate the flyout.
Contents to display in the flyout. This is either an array of Nodes, a NodeList, a toolbox definition, or a string with the name of the dynamic category.
Returns whether the provided block or bubble would be deleted if dropped on this area. This method should check if the element is deletable and is always called before onDragEnter/onDragOver/onDragExit.
The block or bubble currently being dragged.
Whether the element could could connect to another.
Whether the element provided would be deleted if dropped on this area.
Fake class which should be extended to avoid inheriting static properties