New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

vscode-html-languageservice

Package Overview
Dependencies
Maintainers
7
Versions
141
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

vscode-html-languageservice - npm Package Compare versions

Comparing version 3.1.5 to 3.2.0

lib/esm/services/htmlLinkedEditing.js

5

CHANGELOG.md

@@ -0,1 +1,6 @@

3.2.0 / 2020-11-30
==================
* New parameter `HoverSettings` for `LanguageService.doHover`: Defines whether the hover contains element documentation and/or a reference to MDN.
* Deprecated `LanguageService.findOnTypeRenameRanges`, replaced by New API `LanguageService.findLinkedEditingRanges`.
3.1.0 / 2020-07-29

@@ -2,0 +7,0 @@ ==================

6

lib/esm/htmlLanguageService.d.ts

@@ -1,2 +0,2 @@

import { Scanner, HTMLDocument, CompletionConfiguration, ICompletionParticipant, HTMLFormatConfiguration, DocumentContext, IHTMLDataProvider, HTMLDataV1, LanguageServiceOptions, TextDocument, SelectionRange, WorkspaceEdit, Position, CompletionList, Hover, Range, SymbolInformation, TextEdit, DocumentHighlight, DocumentLink, FoldingRange } from './htmlLanguageTypes';
import { Scanner, HTMLDocument, CompletionConfiguration, ICompletionParticipant, HTMLFormatConfiguration, DocumentContext, IHTMLDataProvider, HTMLDataV1, LanguageServiceOptions, TextDocument, SelectionRange, WorkspaceEdit, Position, CompletionList, Hover, Range, SymbolInformation, TextEdit, DocumentHighlight, DocumentLink, FoldingRange, HoverSettings } from './htmlLanguageTypes';
export * from './htmlLanguageTypes';

@@ -11,3 +11,3 @@ export interface LanguageService {

setCompletionParticipants(registeredCompletionParticipants: ICompletionParticipant[]): void;
doHover(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Hover | null;
doHover(document: TextDocument, position: Position, htmlDocument: HTMLDocument, options?: HoverSettings): Hover | null;
format(document: TextDocument, range: Range | undefined, options: HTMLFormatConfiguration): TextEdit[];

@@ -23,3 +23,5 @@ findDocumentLinks(document: TextDocument, documentContext: DocumentContext): DocumentLink[];

findMatchingTagPosition(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Position | null;
/** Deprecated, Use findLinkedEditingRanges instead */
findOnTypeRenameRanges(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Range[] | null;
findLinkedEditingRanges(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Range[] | null;
}

@@ -26,0 +28,0 @@ export declare function getLanguageService(options?: LanguageServiceOptions): LanguageService;

@@ -15,3 +15,3 @@ /*---------------------------------------------------------------------------------------------

import { findMatchingTagPosition } from './services/htmlMatchingTagPosition';
import { findOnTypeRenameRanges } from './services/htmlSyncedRegions';
import { findLinkedEditingRanges } from './services/htmlLinkedEditing';
import { getFoldingRanges } from './services/htmlFolding';

@@ -46,3 +46,4 @@ import { getSelectionRanges } from './services/htmlSelectionRange';

findMatchingTagPosition: findMatchingTagPosition,
findOnTypeRenameRanges: findOnTypeRenameRanges
findOnTypeRenameRanges: findLinkedEditingRanges,
findLinkedEditingRanges: findLinkedEditingRanges
};

@@ -49,0 +50,0 @@ }

@@ -24,2 +24,6 @@ import { Position, Range, MarkupContent, MarkupKind, DocumentUri } from 'vscode-languageserver-types';

}
export interface HoverSettings {
documentation?: boolean;
references?: boolean;
}
export interface CompletionConfiguration {

@@ -26,0 +30,0 @@ [provider: string]: boolean | undefined;

@@ -87,3 +87,4 @@ /*---------------------------------------------------------------------------------------------

*/
export function generateDocumentation(item, doesSupportMarkdown) {
export function generateDocumentation(item, settings, doesSupportMarkdown) {
if (settings === void 0) { settings = {}; }
var result = {

@@ -93,3 +94,3 @@ kind: doesSupportMarkdown ? 'markdown' : 'plaintext',

};
if (item.description) {
if (item.description && settings.documentation !== false) {
var normalizedDescription = normalizeMarkupContent(item.description);

@@ -100,4 +101,6 @@ if (normalizedDescription) {

}
if (item.references && item.references.length > 0) {
result.value += "\n\n";
if (item.references && item.references.length > 0 && settings.references !== false) {
if (result.value.length) {
result.value += "\n\n";
}
if (doesSupportMarkdown) {

@@ -104,0 +107,0 @@ result.value += item.references.map(function (r) {

@@ -41,5 +41,4 @@ /*---------------------------------------------------------------------------------------------

};
import { Position, CompletionItemKind, Range, TextEdit, InsertTextFormat, MarkupKind } from 'vscode-languageserver-types';
import { createScanner } from '../parser/htmlScanner';
import { ScannerState, TokenType } from '../htmlLanguageTypes';
import { ScannerState, TokenType, Position, CompletionItemKind, Range, TextEdit, InsertTextFormat, MarkupKind } from '../htmlLanguageTypes';
import { entities } from '../parser/htmlEntities';

@@ -128,3 +127,3 @@ import * as nls from 'vscode-nls';

kind: CompletionItemKind.Property,
documentation: generateDocumentation(tag, doesSupportMarkdown),
documentation: generateDocumentation(tag, undefined, doesSupportMarkdown),
textEdit: TextEdit.replace(range, tag.name),

@@ -189,3 +188,3 @@ insertTextFormat: InsertTextFormat.PlainText

kind: CompletionItemKind.Property,
documentation: generateDocumentation(tag, doesSupportMarkdown),
documentation: generateDocumentation(tag, undefined, doesSupportMarkdown),
filterText: '/' + tag + closeTag,

@@ -249,3 +248,3 @@ textEdit: TextEdit.replace(range, '/' + tag + closeTag),

kind: attr.valueSet === 'handler' ? CompletionItemKind.Function : CompletionItemKind.Value,
documentation: generateDocumentation(attr, doesSupportMarkdown),
documentation: generateDocumentation(attr, undefined, doesSupportMarkdown),
textEdit: TextEdit.replace(range, codeSnippet),

@@ -324,3 +323,3 @@ insertTextFormat: InsertTextFormat.Snippet,

kind: CompletionItemKind.Unit,
documentation: generateDocumentation(value, doesSupportMarkdown),
documentation: generateDocumentation(value, undefined, doesSupportMarkdown),
textEdit: TextEdit.replace(range, insertText),

@@ -327,0 +326,0 @@ insertTextFormat: InsertTextFormat.PlainText

@@ -5,4 +5,3 @@ /*---------------------------------------------------------------------------------------------

*--------------------------------------------------------------------------------------------*/
import { FoldingRangeKind } from 'vscode-languageserver-types';
import { TokenType } from '../htmlLanguageTypes';
import { TokenType, FoldingRangeKind } from '../htmlLanguageTypes';
import { createScanner } from '../parser/htmlScanner';

@@ -9,0 +8,0 @@ import { isVoidElement } from '../languageFacts/fact';

@@ -5,3 +5,3 @@ /*---------------------------------------------------------------------------------------------

*--------------------------------------------------------------------------------------------*/
import { Range, Position } from 'vscode-languageserver-types';
import { Range, Position } from '../htmlLanguageTypes';
import { html_beautify } from '../beautify/beautify-html';

@@ -8,0 +8,0 @@ import { repeat } from '../utils/strings';

@@ -6,4 +6,3 @@ /*---------------------------------------------------------------------------------------------

import { createScanner } from '../parser/htmlScanner';
import { DocumentHighlightKind } from 'vscode-languageserver-types';
import { TokenType } from '../htmlLanguageTypes';
import { TokenType, DocumentHighlightKind } from '../htmlLanguageTypes';
export function findDocumentHighlights(document, position, htmlDocument) {

@@ -10,0 +9,0 @@ var offset = document.offsetAt(position);

@@ -6,4 +6,3 @@ /*---------------------------------------------------------------------------------------------

import { createScanner } from '../parser/htmlScanner';
import { Range, Position, MarkupKind } from 'vscode-languageserver-types';
import { TokenType } from '../htmlLanguageTypes';
import { TokenType, Range, Position, MarkupKind } from '../htmlLanguageTypes';
import { isDefined } from '../utils/object';

@@ -20,3 +19,3 @@ import { generateDocumentation } from '../languageFacts/dataProvider';

}
HTMLHover.prototype.doHover = function (document, position, htmlDocument) {
HTMLHover.prototype.doHover = function (document, position, htmlDocument, options) {
var convertContents = this.convertContents.bind(this);

@@ -36,3 +35,3 @@ var doesSupportMarkdown = this.doesSupportMarkdown();

if (tag.name.toLowerCase() === currTag.toLowerCase()) {
var markupContent = generateDocumentation(tag, doesSupportMarkdown);
var markupContent = generateDocumentation(tag, options, doesSupportMarkdown);
if (!markupContent) {

@@ -65,3 +64,3 @@ markupContent = {

if (currAttr === attr.name && attr.description) {
var contentsDoc = generateDocumentation(attr, doesSupportMarkdown);
var contentsDoc = generateDocumentation(attr, options, doesSupportMarkdown);
if (contentsDoc) {

@@ -93,3 +92,3 @@ hover = { contents: contentsDoc, range: range };

if (currAttrValue === attrValue.name && attrValue.description) {
var contentsDoc = generateDocumentation(attrValue, doesSupportMarkdown);
var contentsDoc = generateDocumentation(attrValue, options, doesSupportMarkdown);
if (contentsDoc) {

@@ -96,0 +95,0 @@ hover = { contents: contentsDoc, range: range };

@@ -6,6 +6,5 @@ /*---------------------------------------------------------------------------------------------

import { createScanner } from '../parser/htmlScanner';
import { Range } from 'vscode-languageserver-types';
import * as strings from '../utils/strings';
import { URI as Uri } from 'vscode-uri';
import { TokenType } from '../htmlLanguageTypes';
import { TokenType, Range } from '../htmlLanguageTypes';
function normalizeRef(url) {

@@ -12,0 +11,0 @@ var first = url[0];

@@ -1,9 +0,8 @@

/**
* Until SelectionRange lands in LSP, we'll return Range from server and convert it to
* SelectionRange on client side
*/
import { Range, SelectionRange } from 'vscode-languageserver-types';
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
import { createScanner } from '../parser/htmlScanner';
import { parse } from '../parser/htmlParser';
import { TokenType } from '../htmlLanguageTypes';
import { TokenType, Range, SelectionRange } from '../htmlLanguageTypes';
export function getSelectionRanges(document, positions) {

@@ -10,0 +9,0 @@ function getSelectionRange(position) {

@@ -5,3 +5,3 @@ /*---------------------------------------------------------------------------------------------

*--------------------------------------------------------------------------------------------*/
import { Location, Range, SymbolKind } from 'vscode-languageserver-types';
import { Location, Range, SymbolKind } from '../htmlLanguageTypes';
export function findDocumentSymbols(document, htmlDocument) {

@@ -8,0 +8,0 @@ var symbols = [];

@@ -5,5 +5,4 @@ /*---------------------------------------------------------------------------------------------

*--------------------------------------------------------------------------------------------*/
'use strict';
export function isDefined(obj) {
return typeof obj !== 'undefined';
}

@@ -5,3 +5,3 @@ /*---------------------------------------------------------------------------------------------

*--------------------------------------------------------------------------------------------*/
import { URI } from "vscode-uri";
import { URI } from 'vscode-uri';
var Slash = '/'.charCodeAt(0);

@@ -8,0 +8,0 @@ var Dot = '.'.charCodeAt(0);

@@ -1,2 +0,2 @@

import { Scanner, HTMLDocument, CompletionConfiguration, ICompletionParticipant, HTMLFormatConfiguration, DocumentContext, IHTMLDataProvider, HTMLDataV1, LanguageServiceOptions, TextDocument, SelectionRange, WorkspaceEdit, Position, CompletionList, Hover, Range, SymbolInformation, TextEdit, DocumentHighlight, DocumentLink, FoldingRange } from './htmlLanguageTypes';
import { Scanner, HTMLDocument, CompletionConfiguration, ICompletionParticipant, HTMLFormatConfiguration, DocumentContext, IHTMLDataProvider, HTMLDataV1, LanguageServiceOptions, TextDocument, SelectionRange, WorkspaceEdit, Position, CompletionList, Hover, Range, SymbolInformation, TextEdit, DocumentHighlight, DocumentLink, FoldingRange, HoverSettings } from './htmlLanguageTypes';
export * from './htmlLanguageTypes';

@@ -11,3 +11,3 @@ export interface LanguageService {

setCompletionParticipants(registeredCompletionParticipants: ICompletionParticipant[]): void;
doHover(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Hover | null;
doHover(document: TextDocument, position: Position, htmlDocument: HTMLDocument, options?: HoverSettings): Hover | null;
format(document: TextDocument, range: Range | undefined, options: HTMLFormatConfiguration): TextEdit[];

@@ -23,3 +23,5 @@ findDocumentLinks(document: TextDocument, documentContext: DocumentContext): DocumentLink[];

findMatchingTagPosition(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Position | null;
/** Deprecated, Use findLinkedEditingRanges instead */
findOnTypeRenameRanges(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Range[] | null;
findLinkedEditingRanges(document: TextDocument, position: Position, htmlDocument: HTMLDocument): Range[] | null;
}

@@ -26,0 +28,0 @@ export declare function getLanguageService(options?: LanguageServiceOptions): LanguageService;

@@ -21,3 +21,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "./parser/htmlScanner", "./parser/htmlParser", "./services/htmlCompletion", "./services/htmlHover", "./services/htmlFormatter", "./services/htmlLinks", "./services/htmlHighlighting", "./services/htmlSymbolsProvider", "./services/htmlRename", "./services/htmlMatchingTagPosition", "./services/htmlSyncedRegions", "./services/htmlFolding", "./services/htmlSelectionRange", "./languageFacts/dataProvider", "./languageFacts/dataManager", "./languageFacts/data/webCustomData", "./htmlLanguageTypes"], factory);
define(["require", "exports", "./parser/htmlScanner", "./parser/htmlParser", "./services/htmlCompletion", "./services/htmlHover", "./services/htmlFormatter", "./services/htmlLinks", "./services/htmlHighlighting", "./services/htmlSymbolsProvider", "./services/htmlRename", "./services/htmlMatchingTagPosition", "./services/htmlLinkedEditing", "./services/htmlFolding", "./services/htmlSelectionRange", "./languageFacts/dataProvider", "./languageFacts/dataManager", "./languageFacts/data/webCustomData", "./htmlLanguageTypes"], factory);
}

@@ -38,3 +38,3 @@ })(function (require, exports) {

var htmlMatchingTagPosition_1 = require("./services/htmlMatchingTagPosition");
var htmlSyncedRegions_1 = require("./services/htmlSyncedRegions");
var htmlLinkedEditing_1 = require("./services/htmlLinkedEditing");
var htmlFolding_1 = require("./services/htmlFolding");

@@ -69,3 +69,4 @@ var htmlSelectionRange_1 = require("./services/htmlSelectionRange");

findMatchingTagPosition: htmlMatchingTagPosition_1.findMatchingTagPosition,
findOnTypeRenameRanges: htmlSyncedRegions_1.findOnTypeRenameRanges
findOnTypeRenameRanges: htmlLinkedEditing_1.findLinkedEditingRanges,
findLinkedEditingRanges: htmlLinkedEditing_1.findLinkedEditingRanges
};

@@ -72,0 +73,0 @@ }

@@ -24,2 +24,6 @@ import { Position, Range, MarkupContent, MarkupKind, DocumentUri } from 'vscode-languageserver-types';

}
export interface HoverSettings {
documentation?: boolean;
references?: boolean;
}
export interface CompletionConfiguration {

@@ -26,0 +30,0 @@ [provider: string]: boolean | undefined;

@@ -99,3 +99,4 @@ /*---------------------------------------------------------------------------------------------

*/
function generateDocumentation(item, doesSupportMarkdown) {
function generateDocumentation(item, settings, doesSupportMarkdown) {
if (settings === void 0) { settings = {}; }
var result = {

@@ -105,3 +106,3 @@ kind: doesSupportMarkdown ? 'markdown' : 'plaintext',

};
if (item.description) {
if (item.description && settings.documentation !== false) {
var normalizedDescription = markup_1.normalizeMarkupContent(item.description);

@@ -112,4 +113,6 @@ if (normalizedDescription) {

}
if (item.references && item.references.length > 0) {
result.value += "\n\n";
if (item.references && item.references.length > 0 && settings.references !== false) {
if (result.value.length) {
result.value += "\n\n";
}
if (doesSupportMarkdown) {

@@ -116,0 +119,0 @@ result.value += item.references.map(function (r) {

@@ -47,3 +47,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "vscode-languageserver-types", "../parser/htmlScanner", "../htmlLanguageTypes", "../parser/htmlEntities", "vscode-nls", "../utils/strings", "../languageFacts/fact", "../utils/object", "../languageFacts/dataProvider", "./pathCompletion"], factory);
define(["require", "exports", "../parser/htmlScanner", "../htmlLanguageTypes", "../parser/htmlEntities", "vscode-nls", "../utils/strings", "../languageFacts/fact", "../utils/object", "../languageFacts/dataProvider", "./pathCompletion"], factory);
}

@@ -54,3 +54,2 @@ })(function (require, exports) {

exports.HTMLCompletion = void 0;
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlScanner_1 = require("../parser/htmlScanner");

@@ -140,6 +139,6 @@ var htmlLanguageTypes_1 = require("../htmlLanguageTypes");

label: tag.name,
kind: vscode_languageserver_types_1.CompletionItemKind.Property,
documentation: dataProvider_1.generateDocumentation(tag, doesSupportMarkdown),
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, tag.name),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
kind: htmlLanguageTypes_1.CompletionItemKind.Property,
documentation: dataProvider_1.generateDocumentation(tag, undefined, doesSupportMarkdown),
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, tag.name),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
});

@@ -177,6 +176,6 @@ });

label: '/' + tag,
kind: vscode_languageserver_types_1.CompletionItemKind.Property,
kind: htmlLanguageTypes_1.CompletionItemKind.Property,
filterText: '/' + tag,
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, '/' + tag + closeTag),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, '/' + tag + closeTag),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
};

@@ -187,3 +186,3 @@ var startIndent = getLineIndent(curr.start);

var insertText = startIndent + '</' + tag + closeTag;
item.textEdit = vscode_languageserver_types_1.TextEdit.replace(getReplaceRange(afterOpenBracket - 1 - endIndent.length), insertText);
item.textEdit = htmlLanguageTypes_1.TextEdit.replace(getReplaceRange(afterOpenBracket - 1 - endIndent.length), insertText);
item.filterText = endIndent + '</' + tag;

@@ -203,7 +202,7 @@ }

label: '/' + tag.name,
kind: vscode_languageserver_types_1.CompletionItemKind.Property,
documentation: dataProvider_1.generateDocumentation(tag, doesSupportMarkdown),
kind: htmlLanguageTypes_1.CompletionItemKind.Property,
documentation: dataProvider_1.generateDocumentation(tag, undefined, doesSupportMarkdown),
filterText: '/' + tag + closeTag,
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, '/' + tag + closeTag),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, '/' + tag + closeTag),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
});

@@ -222,6 +221,6 @@ });

label: '</' + tag + '>',
kind: vscode_languageserver_types_1.CompletionItemKind.Property,
kind: htmlLanguageTypes_1.CompletionItemKind.Property,
filterText: '</' + tag + '>',
textEdit: vscode_languageserver_types_1.TextEdit.insert(pos, '$0</' + tag + '>'),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.Snippet
textEdit: htmlLanguageTypes_1.TextEdit.insert(pos, '$0</' + tag + '>'),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.Snippet
});

@@ -264,6 +263,6 @@ }

label: attr.name,
kind: attr.valueSet === 'handler' ? vscode_languageserver_types_1.CompletionItemKind.Function : vscode_languageserver_types_1.CompletionItemKind.Value,
documentation: dataProvider_1.generateDocumentation(attr, doesSupportMarkdown),
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, codeSnippet),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.Snippet,
kind: attr.valueSet === 'handler' ? htmlLanguageTypes_1.CompletionItemKind.Function : htmlLanguageTypes_1.CompletionItemKind.Value,
documentation: dataProvider_1.generateDocumentation(attr, undefined, doesSupportMarkdown),
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, codeSnippet),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.Snippet,
command: command

@@ -293,5 +292,5 @@ });

label: attr,
kind: vscode_languageserver_types_1.CompletionItemKind.Value,
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, dataAttributes[attr]),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.Snippet
kind: htmlLanguageTypes_1.CompletionItemKind.Value,
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, dataAttributes[attr]),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.Snippet
}); });

@@ -340,6 +339,6 @@ }

filterText: insertText,
kind: vscode_languageserver_types_1.CompletionItemKind.Unit,
documentation: dataProvider_1.generateDocumentation(value, doesSupportMarkdown),
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, insertText),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
kind: htmlLanguageTypes_1.CompletionItemKind.Unit,
documentation: dataProvider_1.generateDocumentation(value, undefined, doesSupportMarkdown),
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, insertText),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
});

@@ -378,3 +377,3 @@ });

if (k >= 0 && text[k] === '&') {
var range = vscode_languageserver_types_1.Range.create(vscode_languageserver_types_1.Position.create(position.line, characterStart - 1), position);
var range = htmlLanguageTypes_1.Range.create(htmlLanguageTypes_1.Position.create(position.line, characterStart - 1), position);
for (var entity in htmlEntities_1.entities) {

@@ -385,6 +384,6 @@ if (strings_1.endsWith(entity, ';')) {

label: label,
kind: vscode_languageserver_types_1.CompletionItemKind.Keyword,
kind: htmlLanguageTypes_1.CompletionItemKind.Keyword,
documentation: localize('entity.propose', "Character entity representing '" + htmlEntities_1.entities[entity] + "'"),
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, label),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, label),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
});

@@ -400,6 +399,6 @@ }

label: '!DOCTYPE',
kind: vscode_languageserver_types_1.CompletionItemKind.Property,
kind: htmlLanguageTypes_1.CompletionItemKind.Property,
documentation: 'A preamble for an HTML document.',
textEdit: vscode_languageserver_types_1.TextEdit.replace(range, '!DOCTYPE html>'),
insertTextFormat: vscode_languageserver_types_1.InsertTextFormat.PlainText
textEdit: htmlLanguageTypes_1.TextEdit.replace(range, '!DOCTYPE html>'),
insertTextFormat: htmlLanguageTypes_1.InsertTextFormat.PlainText
});

@@ -563,3 +562,3 @@ }

var documentationFormat = (_c = (_b = (_a = this.lsOptions.clientCapabilities.textDocument) === null || _a === void 0 ? void 0 : _a.completion) === null || _b === void 0 ? void 0 : _b.completionItem) === null || _c === void 0 ? void 0 : _c.documentationFormat;
this.supportsMarkdown = Array.isArray(documentationFormat) && documentationFormat.indexOf(vscode_languageserver_types_1.MarkupKind.Markdown) !== -1;
this.supportsMarkdown = Array.isArray(documentationFormat) && documentationFormat.indexOf(htmlLanguageTypes_1.MarkupKind.Markdown) !== -1;
}

@@ -566,0 +565,0 @@ return this.supportsMarkdown;

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "vscode-languageserver-types", "../htmlLanguageTypes", "../parser/htmlScanner", "../languageFacts/fact"], factory);
define(["require", "exports", "../htmlLanguageTypes", "../parser/htmlScanner", "../languageFacts/fact"], factory);
}

@@ -18,3 +18,2 @@ })(function (require, exports) {

exports.getFoldingRanges = void 0;
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlLanguageTypes_1 = require("../htmlLanguageTypes");

@@ -159,3 +158,3 @@ var htmlScanner_1 = require("../parser/htmlScanner");

if (endLine > startLine && prevStart !== startLine) {
addRange({ startLine: startLine, endLine: endLine, kind: vscode_languageserver_types_1.FoldingRangeKind.Region });
addRange({ startLine: startLine, endLine: endLine, kind: htmlLanguageTypes_1.FoldingRangeKind.Region });
}

@@ -168,3 +167,3 @@ }

if (startLine < endLine) {
addRange({ startLine: startLine, endLine: endLine, kind: vscode_languageserver_types_1.FoldingRangeKind.Comment });
addRange({ startLine: startLine, endLine: endLine, kind: htmlLanguageTypes_1.FoldingRangeKind.Comment });
}

@@ -171,0 +170,0 @@ }

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "vscode-languageserver-types", "../beautify/beautify-html", "../utils/strings"], factory);
define(["require", "exports", "../htmlLanguageTypes", "../beautify/beautify-html", "../utils/strings"], factory);
}

@@ -18,3 +18,3 @@ })(function (require, exports) {

exports.format = void 0;
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlLanguageTypes_1 = require("../htmlLanguageTypes");
var beautify_html_1 = require("../beautify/beautify-html");

@@ -52,3 +52,3 @@ var strings_1 = require("../utils/strings");

}
range = vscode_languageserver_types_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset));
range = htmlLanguageTypes_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset));
// Do not modify if substring starts in inside an element

@@ -68,3 +68,3 @@ // Ending inside an element is fine as it doesn't cause formatting errors

if (startOffset !== 0) {
var startOfLineOffset = document.offsetAt(vscode_languageserver_types_1.Position.create(range.start.line, 0));
var startOfLineOffset = document.offsetAt(htmlLanguageTypes_1.Position.create(range.start.line, 0));
initialIndentLevel = computeIndentLevel(document.getText(), startOfLineOffset, options);

@@ -74,3 +74,3 @@ }

else {
range = vscode_languageserver_types_1.Range.create(vscode_languageserver_types_1.Position.create(0, 0), document.positionAt(value.length));
range = htmlLanguageTypes_1.Range.create(htmlLanguageTypes_1.Position.create(0, 0), document.positionAt(value.length));
}

@@ -162,3 +162,3 @@ var htmlOptions = {

if (document.lineCount > 1) {
var to = document.offsetAt(vscode_languageserver_types_1.Position.create(1, 0));
var to = document.offsetAt(htmlLanguageTypes_1.Position.create(1, 0));
var from = to;

@@ -165,0 +165,0 @@ while (from > 0 && isEOL(text, from - 1)) {

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "../parser/htmlScanner", "vscode-languageserver-types", "../htmlLanguageTypes"], factory);
define(["require", "exports", "../parser/htmlScanner", "../htmlLanguageTypes"], factory);
}

@@ -19,3 +19,2 @@ })(function (require, exports) {

var htmlScanner_1 = require("../parser/htmlScanner");
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlLanguageTypes_1 = require("../htmlLanguageTypes");

@@ -33,6 +32,6 @@ function findDocumentHighlights(document, position, htmlDocument) {

if (startTagRange) {
result.push({ kind: vscode_languageserver_types_1.DocumentHighlightKind.Read, range: startTagRange });
result.push({ kind: htmlLanguageTypes_1.DocumentHighlightKind.Read, range: startTagRange });
}
if (endTagRange) {
result.push({ kind: vscode_languageserver_types_1.DocumentHighlightKind.Read, range: endTagRange });
result.push({ kind: htmlLanguageTypes_1.DocumentHighlightKind.Read, range: endTagRange });
}

@@ -39,0 +38,0 @@ }

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "../parser/htmlScanner", "vscode-languageserver-types", "../htmlLanguageTypes", "../utils/object", "../languageFacts/dataProvider", "../parser/htmlEntities", "../utils/strings", "vscode-nls"], factory);
define(["require", "exports", "../parser/htmlScanner", "../htmlLanguageTypes", "../utils/object", "../languageFacts/dataProvider", "../parser/htmlEntities", "../utils/strings", "vscode-nls"], factory);
}

@@ -19,3 +19,2 @@ })(function (require, exports) {

var htmlScanner_1 = require("../parser/htmlScanner");
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlLanguageTypes_1 = require("../htmlLanguageTypes");

@@ -33,3 +32,3 @@ var object_1 = require("../utils/object");

}
HTMLHover.prototype.doHover = function (document, position, htmlDocument) {
HTMLHover.prototype.doHover = function (document, position, htmlDocument, options) {
var convertContents = this.convertContents.bind(this);

@@ -49,3 +48,3 @@ var doesSupportMarkdown = this.doesSupportMarkdown();

if (tag.name.toLowerCase() === currTag.toLowerCase()) {
var markupContent = dataProvider_1.generateDocumentation(tag, doesSupportMarkdown);
var markupContent = dataProvider_1.generateDocumentation(tag, options, doesSupportMarkdown);
if (!markupContent) {

@@ -78,3 +77,3 @@ markupContent = {

if (currAttr === attr.name && attr.description) {
var contentsDoc = dataProvider_1.generateDocumentation(attr, doesSupportMarkdown);
var contentsDoc = dataProvider_1.generateDocumentation(attr, options, doesSupportMarkdown);
if (contentsDoc) {

@@ -106,3 +105,3 @@ hover = { contents: contentsDoc, range: range };

if (currAttrValue === attrValue.name && attrValue.description) {
var contentsDoc = dataProvider_1.generateDocumentation(attrValue, doesSupportMarkdown);
var contentsDoc = dataProvider_1.generateDocumentation(attrValue, options, doesSupportMarkdown);
if (contentsDoc) {

@@ -188,6 +187,6 @@ hover = { contents: contentsDoc, range: range };

if (text[n] === ';') {
range = vscode_languageserver_types_1.Range.create(vscode_languageserver_types_1.Position.create(position.line, characterStart), vscode_languageserver_types_1.Position.create(position.line, characterEnd + 1));
range = htmlLanguageTypes_1.Range.create(htmlLanguageTypes_1.Position.create(position.line, characterStart), htmlLanguageTypes_1.Position.create(position.line, characterEnd + 1));
}
else {
range = vscode_languageserver_types_1.Range.create(vscode_languageserver_types_1.Position.create(position.line, characterStart), vscode_languageserver_types_1.Position.create(position.line, characterEnd));
range = htmlLanguageTypes_1.Range.create(htmlLanguageTypes_1.Position.create(position.line, characterStart), htmlLanguageTypes_1.Position.create(position.line, characterEnd));
}

@@ -289,3 +288,3 @@ return range;

var contentFormat = (_c = (_b = (_a = this.lsOptions.clientCapabilities) === null || _a === void 0 ? void 0 : _a.textDocument) === null || _b === void 0 ? void 0 : _b.hover) === null || _c === void 0 ? void 0 : _c.contentFormat;
this.supportsMarkdown = Array.isArray(contentFormat) && contentFormat.indexOf(vscode_languageserver_types_1.MarkupKind.Markdown) !== -1;
this.supportsMarkdown = Array.isArray(contentFormat) && contentFormat.indexOf(htmlLanguageTypes_1.MarkupKind.Markdown) !== -1;
}

@@ -292,0 +291,0 @@ return this.supportsMarkdown;

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "../parser/htmlScanner", "vscode-languageserver-types", "../utils/strings", "vscode-uri", "../htmlLanguageTypes"], factory);
define(["require", "exports", "../parser/htmlScanner", "../utils/strings", "vscode-uri", "../htmlLanguageTypes"], factory);
}

@@ -19,3 +19,2 @@ })(function (require, exports) {

var htmlScanner_1 = require("../parser/htmlScanner");
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var strings = require("../utils/strings");

@@ -77,3 +76,3 @@ var vscode_uri_1 = require("vscode-uri");

return {
range: vscode_languageserver_types_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset)),
range: htmlLanguageTypes_1.Range.create(document.positionAt(startOffset), document.positionAt(endOffset)),
target: workspaceUrl

@@ -80,0 +79,0 @@ };

@@ -0,1 +1,5 @@

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
(function (factory) {

@@ -7,3 +11,3 @@ if (typeof module === "object" && typeof module.exports === "object") {

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "vscode-languageserver-types", "../parser/htmlScanner", "../parser/htmlParser", "../htmlLanguageTypes"], factory);
define(["require", "exports", "../parser/htmlScanner", "../parser/htmlParser", "../htmlLanguageTypes"], factory);
}

@@ -14,7 +18,2 @@ })(function (require, exports) {

exports.getSelectionRanges = void 0;
/**
* Until SelectionRange lands in LSP, we'll return Range from server and convert it to
* SelectionRange on client side
*/
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlScanner_1 = require("../parser/htmlScanner");

@@ -31,3 +30,3 @@ var htmlParser_1 = require("../parser/htmlParser");

if (!prev || range[0] !== prev[0] || range[1] !== prev[1]) {
current = vscode_languageserver_types_1.SelectionRange.create(vscode_languageserver_types_1.Range.create(document.positionAt(applicableRanges[index][0]), document.positionAt(applicableRanges[index][1])), current);
current = htmlLanguageTypes_1.SelectionRange.create(htmlLanguageTypes_1.Range.create(document.positionAt(applicableRanges[index][0]), document.positionAt(applicableRanges[index][1])), current);
}

@@ -37,3 +36,3 @@ prev = range;

if (!current) {
current = vscode_languageserver_types_1.SelectionRange.create(vscode_languageserver_types_1.Range.create(position, position));
current = htmlLanguageTypes_1.SelectionRange.create(htmlLanguageTypes_1.Range.create(position, position));
}

@@ -56,3 +55,3 @@ return current;

}
var closeRange = vscode_languageserver_types_1.Range.create(document.positionAt(currNode.startTagEnd - 2), document.positionAt(currNode.startTagEnd));
var closeRange = htmlLanguageTypes_1.Range.create(document.positionAt(currNode.startTagEnd - 2), document.positionAt(currNode.startTagEnd));
var closeText = document.getText(closeRange);

@@ -127,3 +126,3 @@ // Self-closing element

function getAttributeLevelRanges(document, currNode, currOffset) {
var currNodeRange = vscode_languageserver_types_1.Range.create(document.positionAt(currNode.start), document.positionAt(currNode.end));
var currNodeRange = htmlLanguageTypes_1.Range.create(document.positionAt(currNode.start), document.positionAt(currNode.end));
var currNodeText = document.getText(currNodeRange);

@@ -130,0 +129,0 @@ var relativeOffset = currOffset - currNode.start;

@@ -11,3 +11,3 @@ /*---------------------------------------------------------------------------------------------

else if (typeof define === "function" && define.amd) {
define(["require", "exports", "vscode-languageserver-types"], factory);
define(["require", "exports", "../htmlLanguageTypes"], factory);
}

@@ -18,3 +18,3 @@ })(function (require, exports) {

exports.findDocumentSymbols = void 0;
var vscode_languageserver_types_1 = require("vscode-languageserver-types");
var htmlLanguageTypes_1 = require("../htmlLanguageTypes");
function findDocumentSymbols(document, htmlDocument) {

@@ -30,3 +30,3 @@ var symbols = [];

var name = nodeToName(node);
var location = vscode_languageserver_types_1.Location.create(document.uri, vscode_languageserver_types_1.Range.create(document.positionAt(node.start), document.positionAt(node.end)));
var location = htmlLanguageTypes_1.Location.create(document.uri, htmlLanguageTypes_1.Range.create(document.positionAt(node.start), document.positionAt(node.end)));
var symbol = {

@@ -36,3 +36,3 @@ name: name,

containerName: container,
kind: vscode_languageserver_types_1.SymbolKind.Field
kind: htmlLanguageTypes_1.SymbolKind.Field
};

@@ -39,0 +39,0 @@ symbols.push(symbol);

@@ -0,1 +1,5 @@

/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
(function (factory) {

@@ -10,7 +14,3 @@ if (typeof module === "object" && typeof module.exports === "object") {

})(function (require, exports) {
/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
* Licensed under the MIT License. See License.txt in the project root for license information.
*--------------------------------------------------------------------------------------------*/
'use strict';
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });

@@ -17,0 +17,0 @@ exports.isDefined = void 0;

@@ -58,3 +58,3 @@ /*---------------------------------------------------------------------------------------------

exports.extname = extname;
exports.join = function () {
var join = function () {
// Not using a function with var-args because of how TS compiles

@@ -81,2 +81,3 @@ // them to JS - it would result in 2*n runtime cost instead

};
exports.join = join;
});
{
"name": "vscode-html-languageservice",
"version": "3.1.5",
"version": "3.2.0",
"description": "Language service for HTML",

@@ -20,10 +20,10 @@ "main": "./lib/umd/htmlLanguageService.js",

"@types/node": "^10.12.21",
"@typescript-eslint/eslint-plugin": "^4.7.0",
"@typescript-eslint/parser": "^4.7.0",
"eslint": "^7.13.0",
"@typescript-eslint/eslint-plugin": "^4.9.0",
"@typescript-eslint/parser": "^4.9.0",
"eslint": "^7.14.0",
"js-beautify": "^1.13.0",
"mocha": "^8.2.1",
"rimraf": "^3.0.2",
"typescript": "^4.0.2",
"vscode-web-custom-data": "^0.3.1"
"typescript": "^4.1.2",
"vscode-web-custom-data": "^0.3.2"
},

@@ -30,0 +30,0 @@ "dependencies": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc