Refactor markdown contributions

Reducing code duplication and reducing state
This commit is contained in:
Matt Bierner
2019-02-05 16:56:45 -08:00
parent c39efd9a2e
commit 476d7fe0ab
6 changed files with 112 additions and 107 deletions

View File

@@ -7,7 +7,7 @@ import * as crypto from 'crypto';
import { MarkdownIt, Token } from 'markdown-it';
import * as path from 'path';
import * as vscode from 'vscode';
import { MarkdownContributions } from './markdownExtensions';
import { MarkdownContributionProvider as MarkdownContributionProvider } from './markdownExtensions';
import { Slugifier } from './slugify';
import { SkinnyTextDocument } from './tableOfContentsProvider';
import { getUriForLinkWithKnownExternalScheme } from './util/links';
@@ -57,7 +57,7 @@ export class MarkdownEngine {
private _tokenCache = new TokenCache();
public constructor(
private readonly extensionPreviewResourceProvider: MarkdownContributions,
private readonly contributionProvider: MarkdownContributionProvider,
private readonly slugifier: Slugifier,
) { }
@@ -66,7 +66,7 @@ export class MarkdownEngine {
this.md = import('markdown-it').then(async markdownIt => {
let md: MarkdownIt = markdownIt(await getMarkdownOptions(() => md));
for (const plugin of this.extensionPreviewResourceProvider.markdownItPlugins) {
for (const plugin of this.contributionProvider.contributions.markdownItPlugins) {
try {
md = (await plugin)(md);
} catch {