[Interactive inlay hints] Get source file from parameter node (#55476)

This commit is contained in:
Maria José Solano
2023-08-23 16:40:49 -07:00
committed by GitHub
parent 12d9f04d33
commit 5fe88ea044
4 changed files with 68 additions and 15 deletions

View File

@@ -1875,14 +1875,24 @@ export class Session<TMessage = string> implements EventSender {
return {
...hint,
position: scriptInfo.positionToLineOffset(position),
displayParts: displayParts?.map(({ text, span, file }) => ({
text,
span: span && {
start: scriptInfo.positionToLineOffset(span.start),
end: scriptInfo.positionToLineOffset(span.start + span.length),
file: file!,
},
})),
displayParts: displayParts?.map(({ text, span, file }) => {
if (span) {
Debug.assertIsDefined(file, "Target file should be defined together with its span.");
const scriptInfo = this.projectService.getScriptInfo(file)!;
return {
text,
span: {
start: scriptInfo.positionToLineOffset(span.start),
end: scriptInfo.positionToLineOffset(span.start + span.length),
file,
},
};
}
else {
return { text };
}
}),
};
});
}