parseElementChildren function

List<Node> parseElementChildren(
  1. List<Node>? elementChildren,
  2. List<CustomMarkdownParser> parsers, {
  3. MarkdownListType listType = MarkdownListType.unknown,
  4. int? startNumber,
})

Implementation

List<Node> parseElementChildren(
  List<md.Node>? elementChildren,
  List<CustomMarkdownParser> parsers, {
  MarkdownListType listType = MarkdownListType.unknown,
  // in case of ordered list, the start number of the list items may not start from 1
  int? startNumber,
}) {
  final List<Node> children = [];

  if (elementChildren == null || elementChildren.isEmpty) {
    return children;
  }

  for (final child in elementChildren) {
    for (final parser in parsers) {
      final nodes = parser.transform(
        child,
        parsers,
        listType: listType,
        startNumber: startNumber,
      );

      if (nodes.isNotEmpty) {
        children.addAll(nodes);
        break;
      }
    }
  }

  return children;
}