renderMarkdown function

String renderMarkdown(
  1. List<String> path,
  2. String markdown, {
  3. Iterable<BlockSyntax> blockSyntaxes = const [],
  4. Iterable<InlineSyntax> inlineSyntaxes = const [],
  5. ExtensionSet? extensionSet,
  6. Resolver? linkResolver,
  7. Resolver? imageLinkResolver,
  8. bool inlineOnly = false,
})

Implementation

String renderMarkdown(
  List<String> path,
  String markdown, {
  Iterable<BlockSyntax> blockSyntaxes = const [],
  Iterable<InlineSyntax> inlineSyntaxes = const [],
  ExtensionSet? extensionSet,
  Resolver? linkResolver,
  Resolver? imageLinkResolver,
  bool inlineOnly = false,
}) {
  var document = Document(
    blockSyntaxes: blockSyntaxes,
    inlineSyntaxes: inlineSyntaxes,
    extensionSet: extensionSet,
    linkResolver: linkResolver,
    imageLinkResolver: imageLinkResolver,
  );

  // Replace windows line endings with unix line endings, and split.
  var lines = markdown.replaceAll('\r\n', '\n').split('\n');
  final nodes = document.parseLines(lines);

  _replaceByAbsoluteImageSrcs(path, nodes);

  return renderToHtml(nodes) + '\n';
}