Files
vscode/extensions/markdown-language-features/src/util/links.ts
Matt Bierner b72c349e05 Don't try re-encoding vscode-resoure markdown links
Fixes #60374

Some markdown-it extensions end up reprocessing the same tokens multiple times. This can result in our link normalized being re-invoked on a link, which causes it to fail

Fix to to make sure that `vscode-resource` is a recongized link so that we don't try re-normalizing in these cases
2018-10-29 16:18:11 -07:00

18 lines
710 B
TypeScript

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import * as vscode from 'vscode';
const knownSchemes = ['http:', 'https:', 'file:', 'mailto:', 'vscode-resource:'];
export function getUriForLinkWithKnownExternalScheme(
link: string,
): vscode.Uri | undefined {
if (knownSchemes.some(knownScheme => link.toLowerCase().startsWith(knownScheme))) {
return vscode.Uri.parse(link);
}
return undefined;
}