buildFNodeWidget function

Widget buildFNodeWidget(
  1. FNode node,
  2. FluentDocument document, {
  3. int anchorOffset = -1,
  4. int focusOffset = -1,
})

Implementation

Widget buildFNodeWidget(FNode node, FluentDocument document,
    {int anchorOffset = -1, int focusOffset = -1}) {
  return switch (node) {
    HorizontalRule() => FluentHrWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    FluentImage() => FluentImageWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    FluentCell() => FluentCellWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    FluentTable() => FluentTableWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    FluentList() => FluentListWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    ListItem() => FluentListItemWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    Link() => FluentLinkWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    Paragraph() => FluentParagraphWidget(
        key: document.getKeyForNode(node.id), node: node, document: document),
    Fragment() => FluentFragmentWidget(
        key: document.getKeyForNode(node.id),
        node: node,
        anchorOffset: anchorOffset,
        focusOffset: focusOffset),
    _ => throw Exception('Node type not supported: ${node.runtimeType}'),
  };
}