renderResizable function

Component renderResizable(
  1. ResizableProps props
)

Renders a Codex resizable panel group component.

Implementation

Component renderResizable(ResizableProps props) {
  final isHorizontal = props.direction == ResizeDirection.horizontal;

  return dom.div(
    classes: 'codex-resizable ${isHorizontal ? 'horizontal' : 'vertical'}',
    attributes: {
      'data-resizable': 'true',
      'data-direction': isHorizontal ? 'horizontal' : 'vertical',
    },
    styles: dom.Styles(raw: {
      'display': 'flex',
      'flex-direction': isHorizontal ? 'row' : 'column',
      'width': '100%',
      'height': '100%',
      'overflow': 'hidden',
    }),
    [
      for (var i = 0; i < props.panels.length; i++) ...[
        _buildPanel(props.panels[i], isHorizontal, i),
        if (i < props.panels.length - 1) _buildHandle(isHorizontal, i, props.showGrip),
      ],
    ],
  );
}