buildSpans function
Implementation
List<InlineSpan> buildSpans(m.Element? parentNode, TextStyle? parentStyle) {
if (parentNode == null) return [];
List<m.Node>? nodes = parentNode.children;
if (nodes == null || nodes.isEmpty) return [];
return List.generate(nodes.length, (index) {
final node = nodes[index];
if (node is m.Text) {
bool shouldParseHtml = needParseHtml(parentNode);
return buildTextSpan(node, parentStyle, shouldParseHtml);
} else if (node is m.Element) {
return getBlockSpan(node.children, node, parentStyle);
} else {
print('node: $node can\'t be parse');
return TextSpan();
}
});
}