mirror of
https://github.com/microsoft/vscode.git
synced 2026-05-04 07:15:54 +01:00
Prototype allowing scripts to be contributed to markdown preview
This commit is contained in:
@@ -29,6 +29,7 @@ export class MDDocumentContentProvider implements vscode.TextDocumentContentProv
|
||||
private _onDidChange = new vscode.EventEmitter<vscode.Uri>();
|
||||
private _waiting: boolean = false;
|
||||
private extraStyles: Array<vscode.Uri> = [];
|
||||
private extraScripts: Array<vscode.Uri> = [];
|
||||
|
||||
constructor(
|
||||
private engine: MarkdownEngine,
|
||||
@@ -36,6 +37,10 @@ export class MDDocumentContentProvider implements vscode.TextDocumentContentProv
|
||||
private cspArbiter: ContentSecurityPolicyArbiter
|
||||
) { }
|
||||
|
||||
public addScript(resource: vscode.Uri): void {
|
||||
this.extraScripts.push(resource);
|
||||
}
|
||||
|
||||
public addStyle(resource: vscode.Uri): void {
|
||||
this.extraStyles.push(resource);
|
||||
}
|
||||
@@ -110,7 +115,8 @@ export class MDDocumentContentProvider implements vscode.TextDocumentContentProv
|
||||
}
|
||||
|
||||
private getScripts(nonce: string): string {
|
||||
return [this.getMediaPath('main.js')]
|
||||
const scripts = [this.getMediaPath('main.js')].concat(this.extraScripts.map(resource => resource.toString()));
|
||||
return scripts
|
||||
.map(source => `<script src="${source}" nonce="${nonce}"></script>`)
|
||||
.join('\n');
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user