Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | 8x 8x 8x 2x 6x 6x 2x 4x 4x 2x 2x | import * as vscode from 'vscode';
import { container } from 'tsyringe';
import { ServiceToken } from '@src/services/tokens';
import { IDocumentContextService } from '@src/services/document';
/**
* Provides hover information for tokens.
*/
export class ResourceTooltipProvider implements vscode.HoverProvider {
private get _contextService() {
return container.resolve<IDocumentContextService>(ServiceToken.DocumentContextService);
}
provideHover(document: vscode.TextDocument, position: vscode.Position): vscode.ProviderResult<vscode.Hover> {
const context = this._contextService.contexts[document.uri.toString()];
if (!context) {
return null;
}
const iri = context.getIriAtPosition(position);
if (iri) {
return new vscode.Hover(context.getResourceTooltip(iri));
}
const literalValue = context.getLiteralAtPosition(position);
if (literalValue) {
return new vscode.Hover(literalValue);
}
return null;
}
}
|