diff --git a/extensions/html-language-features/server/src/htmlServerMain.ts b/extensions/html-language-features/server/src/htmlServerMain.ts
index cbbd4c4b5a90b9678f463c83666b9a401aecdc39..2289c38c950665d33a78ec482a6c9ac1bd6bcc38 100644
--- a/extensions/html-language-features/server/src/htmlServerMain.ts
+++ b/extensions/html-language-features/server/src/htmlServerMain.ts
@@ -6,11 +6,13 @@
import {
createConnection, IConnection, TextDocuments, InitializeParams, InitializeResult, RequestType,
DocumentRangeFormattingRequest, Disposable, DocumentSelector, TextDocumentPositionParams, ServerCapabilities,
- Position, ConfigurationRequest, ConfigurationParams, DidChangeWorkspaceFoldersNotification, Range,
- WorkspaceFolder, DocumentColorRequest, ColorInformation, ColorPresentationRequest, TextDocumentSyncKind
+ ConfigurationRequest, ConfigurationParams, DidChangeWorkspaceFoldersNotification,
+ DocumentColorRequest, ColorPresentationRequest, TextDocumentSyncKind
} from 'vscode-languageserver';
-import { TextDocument, Diagnostic, DocumentLink, SymbolInformation, TextDocumentIdentifier } from 'vscode-html-languageservice';
-import { getLanguageModes, LanguageModes, Settings } from './modes/languageModes';
+import {
+ getLanguageModes, LanguageModes, Settings, TextDocument, Position, Diagnostic, WorkspaceFolder, ColorInformation,
+ Range, DocumentLink, SymbolInformation, TextDocumentIdentifier
+} from './modes/languageModes';
import { format } from './modes/formatting';
import { pushAll } from './utils/arrays';
diff --git a/extensions/html-language-features/server/src/languageModelCache.ts b/extensions/html-language-features/server/src/languageModelCache.ts
index c022b8047a90231a17854a3bee8ac347552d35e1..06d331bca8a22e05e40f7ea4b0a9ccc2f9b5400d 100644
--- a/extensions/html-language-features/server/src/languageModelCache.ts
+++ b/extensions/html-language-features/server/src/languageModelCache.ts
@@ -18,10 +18,10 @@ export function getLanguageModelCache(maxEntries: number, cleanupIntervalTime
let cleanupInterval: NodeJS.Timer | undefined = undefined;
if (cleanupIntervalTimeInSec > 0) {
cleanupInterval = setInterval(() => {
- let cutoffTime = Date.now() - cleanupIntervalTimeInSec * 1000;
- let uris = Object.keys(languageModels);
- for (let uri of uris) {
- let languageModelInfo = languageModels[uri];
+ const cutoffTime = Date.now() - cleanupIntervalTimeInSec * 1000;
+ const uris = Object.keys(languageModels);
+ for (const uri of uris) {
+ const languageModelInfo = languageModels[uri];
if (languageModelInfo.cTime < cutoffTime) {
delete languageModels[uri];
nModels--;
@@ -32,14 +32,14 @@ export function getLanguageModelCache(maxEntries: number, cleanupIntervalTime
return {
get(document: TextDocument): T {
- let version = document.version;
- let languageId = document.languageId;
- let languageModelInfo = languageModels[document.uri];
+ const version = document.version;
+ const languageId = document.languageId;
+ const languageModelInfo = languageModels[document.uri];
if (languageModelInfo && languageModelInfo.version === version && languageModelInfo.languageId === languageId) {
languageModelInfo.cTime = Date.now();
return languageModelInfo.languageModel;
}
- let languageModel = parse(document);
+ const languageModel = parse(document);
languageModels[document.uri] = { languageModel, version, languageId, cTime: Date.now() };
if (!languageModelInfo) {
nModels++;
@@ -48,8 +48,8 @@ export function getLanguageModelCache(maxEntries: number, cleanupIntervalTime
if (nModels === maxEntries) {
let oldestTime = Number.MAX_VALUE;
let oldestUri = null;
- for (let uri in languageModels) {
- let languageModelInfo = languageModels[uri];
+ for (const uri in languageModels) {
+ const languageModelInfo = languageModels[uri];
if (languageModelInfo.cTime < oldestTime) {
oldestUri = uri;
oldestTime = languageModelInfo.cTime;
@@ -64,7 +64,7 @@ export function getLanguageModelCache(maxEntries: number, cleanupIntervalTime
},
onDocumentRemoved(document: TextDocument) {
- let uri = document.uri;
+ const uri = document.uri;
if (languageModels[uri]) {
delete languageModels[uri];
nModels--;
diff --git a/extensions/html-language-features/server/src/modes/cssMode.ts b/extensions/html-language-features/server/src/modes/cssMode.ts
index 490f7ea2fa44dc62b4e597b12b2e0878acf67340..e705f44bbabc1088b0de93af7db8a1e148267fb9 100644
--- a/extensions/html-language-features/server/src/modes/cssMode.ts
+++ b/extensions/html-language-features/server/src/modes/cssMode.ts
@@ -4,11 +4,9 @@
*--------------------------------------------------------------------------------------------*/
import { LanguageModelCache, getLanguageModelCache } from '../languageModelCache';
-import { TextDocument, Position, Range, CompletionList } from 'vscode-html-languageservice';
-import { Stylesheet, FoldingRange, LanguageService as CSSLanguageService } from 'vscode-css-languageservice';
-import { LanguageMode, Workspace } from './languageModes';
+import { Stylesheet, LanguageService as CSSLanguageService } from 'vscode-css-languageservice';
+import { FoldingRange, LanguageMode, Workspace, Color, TextDocument, Position, Range, CompletionList } from './languageModes';
import { HTMLDocumentRegions, CSS_STYLE_RULE } from './embeddedSupport';
-import { Color } from 'vscode-languageserver';
export function getCSSMode(cssLanguageService: CSSLanguageService, documentRegions: LanguageModelCache, workspace: Workspace): LanguageMode {
let embeddedCSSDocuments = getLanguageModelCache(10, 60, document => documentRegions.get(document).getEmbeddedDocument('css'));
diff --git a/extensions/html-language-features/server/src/modes/embeddedSupport.ts b/extensions/html-language-features/server/src/modes/embeddedSupport.ts
index df47be3ed97d39f5e4886c3cc55014f2b03fd22e..837842c64059ed263f7575e177691bce65ebad3d 100644
--- a/extensions/html-language-features/server/src/modes/embeddedSupport.ts
+++ b/extensions/html-language-features/server/src/modes/embeddedSupport.ts
@@ -3,7 +3,7 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-import { TextDocument, Position, LanguageService, TokenType, Range } from 'vscode-html-languageservice';
+import { TextDocument, Position, LanguageService, TokenType, Range } from './languageModes';
export interface LanguageRange extends Range {
languageId: string | undefined;
diff --git a/extensions/html-language-features/server/src/modes/formatting.ts b/extensions/html-language-features/server/src/modes/formatting.ts
index a9df4b4a30ba770560e489e584afeaf3f942a196..4acb60a9b9ad39c4b1b012b82f0469328d4d85dd 100644
--- a/extensions/html-language-features/server/src/modes/formatting.ts
+++ b/extensions/html-language-features/server/src/modes/formatting.ts
@@ -3,8 +3,7 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-import { TextDocument, Range, TextEdit, FormattingOptions, Position } from 'vscode-html-languageservice';
-import { LanguageModes, Settings, LanguageModeRange } from './languageModes';
+import { LanguageModes, Settings, LanguageModeRange, TextDocument, Range, TextEdit, FormattingOptions, Position } from './languageModes';
import { pushAll } from '../utils/arrays';
import { isEOL } from '../utils/strings';
diff --git a/extensions/html-language-features/server/src/modes/htmlFolding.ts b/extensions/html-language-features/server/src/modes/htmlFolding.ts
index aacdcc604fc413f3d99c94ac4f20c1e6dde22a60..5eccc0ef876a24b153211dd1a00af8ad5d195ec2 100644
--- a/extensions/html-language-features/server/src/modes/htmlFolding.ts
+++ b/extensions/html-language-features/server/src/modes/htmlFolding.ts
@@ -3,9 +3,8 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-import { TextDocument, CancellationToken, Position, Range } from 'vscode-languageserver';
-import { FoldingRange } from 'vscode-html-languageservice';
-import { LanguageModes, LanguageMode } from './languageModes';
+import { TextDocument, FoldingRange, Position, Range, LanguageModes, LanguageMode } from './languageModes';
+import { CancellationToken } from 'vscode-languageserver';
export function getFoldingRanges(languageModes: LanguageModes, document: TextDocument, maxRanges: number | undefined, _cancellationToken: CancellationToken | null): FoldingRange[] {
let htmlMode = languageModes.getMode('html');
diff --git a/extensions/html-language-features/server/src/modes/htmlMode.ts b/extensions/html-language-features/server/src/modes/htmlMode.ts
index 6f2461d6c2056c69e60a5237b6a953273b4e2d8f..251821d1272b602694fa2998483eb3b72cf0acfc 100644
--- a/extensions/html-language-features/server/src/modes/htmlMode.ts
+++ b/extensions/html-language-features/server/src/modes/htmlMode.ts
@@ -7,9 +7,9 @@ import { getLanguageModelCache } from '../languageModelCache';
import {
LanguageService as HTMLLanguageService, HTMLDocument, DocumentContext, FormattingOptions,
HTMLFormatConfiguration, SelectionRange,
- TextDocument, Position, Range, CompletionItem, FoldingRange
-} from 'vscode-html-languageservice';
-import { LanguageMode, Workspace } from './languageModes';
+ TextDocument, Position, Range, CompletionItem, FoldingRange,
+ LanguageMode, Workspace
+} from './languageModes';
import { getPathCompletionParticipant } from './pathCompletion';
export function getHTMLMode(htmlLanguageService: HTMLLanguageService, workspace: Workspace): LanguageMode {
diff --git a/extensions/html-language-features/server/src/modes/pathCompletion.ts b/extensions/html-language-features/server/src/modes/pathCompletion.ts
index 278d967bd954f1c605407db7d1eff68bd9dd38ad..d522efdc0df023185797c8f7c22a5f733621a1d7 100644
--- a/extensions/html-language-features/server/src/modes/pathCompletion.ts
+++ b/extensions/html-language-features/server/src/modes/pathCompletion.ts
@@ -3,11 +3,10 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-import { WorkspaceFolder } from 'vscode-languageserver';
import * as path from 'path';
import * as fs from 'fs';
import { URI } from 'vscode-uri';
-import { ICompletionParticipant, TextDocument, CompletionItemKind, CompletionItem, TextEdit, Range, Position } from 'vscode-html-languageservice';
+import { ICompletionParticipant, TextDocument, CompletionItemKind, CompletionItem, TextEdit, Range, Position, WorkspaceFolder } from './languageModes';
import { startsWith } from '../utils/strings';
import { contains } from '../utils/arrays';
diff --git a/extensions/html-language-features/server/src/modes/selectionRanges.ts b/extensions/html-language-features/server/src/modes/selectionRanges.ts
index ab6cbdc0f3618361cb4d65b61d9e2452a3fd3595..6c0627f6356a055339d184870306e10f8ae3c6e3 100644
--- a/extensions/html-language-features/server/src/modes/selectionRanges.ts
+++ b/extensions/html-language-features/server/src/modes/selectionRanges.ts
@@ -3,8 +3,7 @@
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
-import { LanguageModes } from './languageModes';
-import { TextDocument, Position, Range, SelectionRange } from 'vscode-html-languageservice';
+import { LanguageModes, TextDocument, Position, Range, SelectionRange } from './languageModes';
export function getSelectionRanges(languageModes: LanguageModes, document: TextDocument, positions: Position[]) {
const htmlMode = languageModes.getMode('html');
diff --git a/extensions/html-language-features/server/src/test/completions.test.ts b/extensions/html-language-features/server/src/test/completions.test.ts
index e0e3a7e22cae34a45a4a0d8cbfd001bca0ec1f53..9c3b8f0831b14ee0e9555c2151fe1c3dd67040b2 100644
--- a/extensions/html-language-features/server/src/test/completions.test.ts
+++ b/extensions/html-language-features/server/src/test/completions.test.ts
@@ -6,10 +6,7 @@ import 'mocha';
import * as assert from 'assert';
import * as path from 'path';
import { URI } from 'vscode-uri';
-import { getLanguageModes } from '../modes/languageModes';
-import { WorkspaceFolder } from 'vscode-languageserver';
-import { TextDocument, CompletionList, CompletionItemKind, ClientCapabilities } from 'vscode-html-languageservice';
-
+import { getLanguageModes, WorkspaceFolder, TextDocument, CompletionList, CompletionItemKind, ClientCapabilities} from '../modes/languageModes';
export interface ItemDescription {
label: string;
documentation?: string;
diff --git a/extensions/html-language-features/server/src/test/embedded.test.ts b/extensions/html-language-features/server/src/test/embedded.test.ts
index 4191cfcb9b5f0c5c6bc8fcf98e06669b6f80be0c..525d5a59c112942cd157ba60dea30ef8543ea0ab 100644
--- a/extensions/html-language-features/server/src/test/embedded.test.ts
+++ b/extensions/html-language-features/server/src/test/embedded.test.ts
@@ -5,31 +5,32 @@
import 'mocha';
import * as assert from 'assert';
import * as embeddedSupport from '../modes/embeddedSupport';
-import { getLanguageService, TextDocument } from 'vscode-html-languageservice';
+import { getLanguageService } from 'vscode-html-languageservice';
+import { TextDocument } from '../modes/languageModes';
suite('HTML Embedded Support', () => {
- var htmlLanguageService = getLanguageService();
+ const htmlLanguageService = getLanguageService();
function assertLanguageId(value: string, expectedLanguageId: string | undefined): void {
- let offset = value.indexOf('|');
+ const offset = value.indexOf('|');
value = value.substr(0, offset) + value.substr(offset + 1);
- let document = TextDocument.create('test://test/test.html', 'html', 0, value);
+ const document = TextDocument.create('test://test/test.html', 'html', 0, value);
- let position = document.positionAt(offset);
+ const position = document.positionAt(offset);
- let docRegions = embeddedSupport.getDocumentRegions(htmlLanguageService, document);
- let languageId = docRegions.getLanguageAtPosition(position);
+ const docRegions = embeddedSupport.getDocumentRegions(htmlLanguageService, document);
+ const languageId = docRegions.getLanguageAtPosition(position);
assert.equal(languageId, expectedLanguageId);
}
function assertEmbeddedLanguageContent(value: string, languageId: string, expectedContent: string): void {
- let document = TextDocument.create('test://test/test.html', 'html', 0, value);
+ const document = TextDocument.create('test://test/test.html', 'html', 0, value);
- let docRegions = embeddedSupport.getDocumentRegions(htmlLanguageService, document);
- let content = docRegions.getEmbeddedDocument(languageId);
+ const docRegions = embeddedSupport.getDocumentRegions(htmlLanguageService, document);
+ const content = docRegions.getEmbeddedDocument(languageId);
assert.equal(content.getText(), expectedContent);
}
diff --git a/extensions/html-language-features/server/src/test/folding.test.ts b/extensions/html-language-features/server/src/test/folding.test.ts
index f732a6cd72c9a05885ffa1b5cb0735271d048a95..5384e48c6abd049095ca66a8634164e717ef25f6 100644
--- a/extensions/html-language-features/server/src/test/folding.test.ts
+++ b/extensions/html-language-features/server/src/test/folding.test.ts
@@ -17,13 +17,13 @@ interface ExpectedIndentRange {
}
function assertRanges(lines: string[], expected: ExpectedIndentRange[], message?: string, nRanges?: number): void {
- let document = TextDocument.create('test://foo/bar.json', 'json', 1, lines.join('\n'));
- let workspace = {
+ const document = TextDocument.create('test://foo/bar.json', 'json', 1, lines.join('\n'));
+ const workspace = {
settings: {},
folders: [{ name: 'foo', uri: 'test://foo' }]
};
- let languageModes = getLanguageModes({ css: true, javascript: true }, workspace, ClientCapabilities.LATEST);
- let actual = getFoldingRanges(languageModes, document, nRanges, null);
+ const languageModes = getLanguageModes({ css: true, javascript: true }, workspace, ClientCapabilities.LATEST);
+ const actual = getFoldingRanges(languageModes, document, nRanges, null);
let actualRanges = [];
for (let i = 0; i < actual.length; i++) {
@@ -40,7 +40,7 @@ function r(startLine: number, endLine: number, kind?: string): ExpectedIndentRan
suite('HTML Folding', () => {
test('Embedded JavaScript', () => {
- let input = [
+ const input = [
/*0*/'',
/*1*/'',
/*2*/'