FlexiBoard
The main container component of a board, managing the targets and widgets within it.
FlexiBoard (component)
Props
config FlexiBoardConfigurationThe configuration object for the board.
class ClassValueThe class to apply to the board.
children SnippetThe child content of the board, which should contain the inner FlexiTarget and FlexiWidget components.
controller FlexiBoardController (bindable)The controller for the board.
onfirstcreate (controller: FlexiBoardController) => voidA callback that fires when the board's controller is first created.
FlexiBoardController
FlexiBoard uses a controller to manage its state and behaviour. You can access the controller via binding to the controller prop or using the onfirstcreate callback.
The FlexiBoardController allows you to manage the board directly and carry out actions.
Properties
style stringThe reactive styling to apply to the board's root element.
ref HTMLElement | nullThe reactive DOM reference to the board's root element.
Methods
moveWidget (widget: FlexiWidgetController, from: FlexiTargetController | undefined, to: FlexiTargetController) => voidMoves an existing widget from one target to another.
FlexiBoardConfiguration
The configuration object for the FlexiBoard component, which supports reactivity where specified.
To use reactivity, ensure that the config prop has a reactive source (proxy).
Properties
widgetDefaults FlexiWidgetDefaultsThe default configuration for widgets. Reactive.
targetDefaults FlexiTargetDefaultsThe default configuration for targets. Reactive.
FlexiTargetDefaults
The default configuration for targets.
Properties
rowSizing string | ({ target, grid }: { target: FlexiTargetController, grid: FlexiGrid }) => stringAllows the specifying of the value inside the `repeat()` function of the `grid-template-rows` CSS property for the target. Defaults to 'minmax(1rem, auto)'. Reactive.
columnSizing string | ({ target, grid }: { target: FlexiTargetController, grid: FlexiGrid }) => stringAllows the specifying of the value inside the `repeat()` function of the `grid-template-columns` CSS property for the target. Defaults to 'minmax(0, 1fr)'. Reactive.
layout TargetLayoutThe layout algorithm and parameters to use for the target grid.
FlexiWidgetDefaults
The default configuration for widgets.
Properties
draggable booleanWhether the widget is draggable. Defaults to true. Reactive.
resizability 'none' | 'horizontal' | 'vertical' | 'both'The resizability of the widget. Defaults to 'both'. Reactive.
width numberThe width of the widget in units. Defaults to 1. Not reactive.
height numberThe height of the widget in units. Defaults to 1. Not reactive.
snippet SnippetThe snippet that is rendered by this widget. Reactive.
component ComponentThe component that is rendered by this widget. Reactive.
componentProps Record<string, any>The props applied to the component rendered, if it has one. Reactive.
className ClassValueThe class names to apply to this widget. Reactive.
grabTrigger FlexiWidgetTriggerConfigurationThe configuration for how pointer events should trigger a grab event on the widget. E.g. a long press.
resizeTrigger FlexiWidgetTriggerConfigurationThe configuration for how pointer events should trigger a resize event on the widget. E.g. a long press.
transitionConfig FlexiWidgetTransitionConfigurationGets the transition configuration for this widget.