Provide related information to diagnostics

pull/2748/head
Sebastian Pahnke 5 years ago
parent c050127710
commit 8b18d160db

@ -200,10 +200,31 @@ export class DiagnosticsAdapter extends Adapter {
endLineNumber,
endColumn,
message: flattenDiagnosticMessageText(diag.messageText, '\n'),
code: diag.code.toString()
code: diag.code.toString(),
relatedInformation: this._convertRelatedInformation(resource, diag.relatedInformation)
};
}
private _convertRelatedInformation(resource: Uri, relatedInformation?: ts.DiagnosticRelatedInformation[]): monaco.editor.IRelatedInformation[] {
if (relatedInformation === undefined)
return undefined;
return relatedInformation.map(info => {
const relatedResource = info.file === undefined ? resource : monaco.Uri.parse(info.file.fileName);
const { lineNumber: startLineNumber, column: startColumn } = this._offsetToPosition(relatedResource, info.start);
const { lineNumber: endLineNumber, column: endColumn } = this._offsetToPosition(relatedResource, info.start + info.length);
return {
resource: relatedResource,
startLineNumber,
startColumn,
endLineNumber,
endColumn,
message: flattenDiagnosticMessageText(info.messageText, '\n')
};
});
}
private _tsDiagnosticCategoryToMarkerSeverity(category: ts.DiagnosticCategory): monaco.MarkerSeverity {
switch (category) {
case ts.DiagnosticCategory.Error: return monaco.MarkerSeverity.Error

Loading…
Cancel
Save