UNPKG

alm

Version:

The best IDE for TypeScript

46 lines (45 loc) 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var socketClient_1 = require("../../../../socket/socketClient"); var state = require("../../../state/state"); var monacoUtils_1 = require("../../monacoUtils"); function provideDocumentHighlights(model, position, token) { var resource = model.uri; if (!state.inActiveProjectFilePath(model.filePath)) { return Promise.resolve([]); } return monacoUtils_1.onlyLastCallWithDelay(function () { return socketClient_1.server.getOccurrencesAtPosition({ filePath: model.filePath, editorPosition: { line: position.lineNumber - 1, ch: position.column - 1, } }); }, token).then(function (res) { // console.log(res.results); DEBUG return res.results.map(function (entry) { return { range: { startLineNumber: entry.start.line + 1, startColumn: entry.start.ch + 1, endLineNumber: entry.end.line + 1, endColumn: entry.end.ch + 1, }, kind: entry.isWriteAccess ? monaco.languages.DocumentHighlightKind.Write : monaco.languages.DocumentHighlightKind.Text }; }); }); // return wireCancellationToken(token, this._worker(resource).then(worker => { // return worker.getOccurrencesAtPosition(resource.toString(), this._positionToOffset(resource, position)); // }).then(entries => { // if (!entries) { // return; // } // return entries.map(entry => { // return <monaco.languages.DocumentHighlight>{ // range: this._textSpanToRange(resource, entry.textSpan), // kind: entry.isWriteAccess ? monaco.languages.DocumentHighlightKind.Write : monaco.languages.DocumentHighlightKind.Text // }; // }); // })); } exports.provideDocumentHighlights = provideDocumentHighlights;