linkifyMarkdown method

String linkifyMarkdown(
  1. String source, {
  2. required PassageUriBuilder uriBuilder,
  3. String labelBuilder(
    1. PassageMatch match
    )?,
  4. BibleLanguageEnum? language,
})

Replaces matches with Markdown links.

Implementation

String linkifyMarkdown(
  String source, {
  required PassageUriBuilder uriBuilder,
  String Function(PassageMatch match)? labelBuilder,
  BibleLanguageEnum? language,
}) {
  return replaceMatches(
    source,
    (match) {
      final label = _escapeMarkdownLabel(
        labelBuilder?.call(match) ?? match.sourceText,
      );
      final destination = _escapeMarkdownDestination(uriBuilder(match));
      return '[$label]($destination)';
    },
    language: language,
  );
}