vscode-html-languageservice
Advanced tools
Comparing version 1.0.1-next.4 to 2.0.0-next.1
@@ -6,3 +6,3 @@ (function (factory) { | ||
else if (typeof define === 'function' && define.amd) { | ||
define(["require", "exports", '../parser/htmlScanner', './tagProviders'], factory); | ||
define(["require", "exports", 'vscode-languageserver-types', '../parser/htmlScanner', './tagProviders'], factory); | ||
} | ||
@@ -15,2 +15,3 @@ })(function (require, exports) { | ||
'use strict'; | ||
var vscode_languageserver_types_1 = require('vscode-languageserver-types'); | ||
var htmlScanner_1 = require('../parser/htmlScanner'); | ||
@@ -48,3 +49,3 @@ var tagProviders_1 = require('./tagProviders'); | ||
documentation: label, | ||
textEdit: { newText: tag, range: range } | ||
range: range | ||
}); | ||
@@ -81,3 +82,4 @@ }); | ||
filterText: '/' + tag + closeTag, | ||
textEdit: { newText: '/' + tag + closeTag, range: range } | ||
insertText: '/' + tag + closeTag, | ||
range: range | ||
}; | ||
@@ -87,3 +89,4 @@ var startIndent = getLineIndent(curr.start); | ||
if (startIndent !== null && endIndent !== null && startIndent !== endIndent) { | ||
item.textEdit = { newText: startIndent + '</' + tag + closeTag, range: getReplaceRange(afterOpenBracket - 1 - endIndent.length) }; | ||
item.insertText = startIndent + '</' + tag + closeTag; | ||
item.range = getReplaceRange(afterOpenBracket - 1 - endIndent.length); | ||
item.filterText = endIndent + '</' + tag + closeTag; | ||
@@ -106,3 +109,4 @@ } | ||
filterText: '/' + tag + closeTag, | ||
textEdit: { newText: '/' + tag + closeTag, range: range } | ||
insertText: '/' + tag + closeTag, | ||
range: range | ||
}); | ||
@@ -121,3 +125,3 @@ }); | ||
var range = getReplaceRange(nameStart, nameEnd); | ||
var value = isFollowedBy(text, nameEnd, htmlScanner_1.ScannerState.AfterAttributeName, htmlScanner_1.TokenType.DelimiterAssign) ? '' : '="{{}}"'; | ||
var value = isFollowedBy(text, nameEnd, htmlScanner_1.ScannerState.AfterAttributeName, htmlScanner_1.TokenType.DelimiterAssign) ? '' : '="$1"'; | ||
var tag = currentTag.toLowerCase(); | ||
@@ -133,3 +137,4 @@ tagProviders.forEach(function (provider) { | ||
kind: type === 'handler' ? 3 /* Function */ : 12 /* Value */, | ||
textEdit: { newText: codeSnippet, range: range } | ||
insertText: vscode_languageserver_types_1.SnippetString.create(codeSnippet), | ||
range: range | ||
}); | ||
@@ -161,8 +166,9 @@ }); | ||
provider.collectValues(tag, attribute, function (value) { | ||
var codeSnippet = addQuotes ? '"' + value + '"' : value; | ||
var insertText = addQuotes ? '"' + value + '"' : value; | ||
result.items.push({ | ||
label: value, | ||
filterText: codeSnippet, | ||
filterText: insertText, | ||
kind: 11 /* Unit */, | ||
textEdit: { newText: codeSnippet, range: range } | ||
insertText: insertText, | ||
range: range | ||
}); | ||
@@ -169,0 +175,0 @@ }); |
@@ -31,21 +31,18 @@ (function (factory) { | ||
assert.equal(matches.length, 1, expected.label + " should only existing once: Actual: " + completions.items.map(function (c) { return c.label; }).join(', ')); | ||
var match = matches[0]; | ||
if (expected.documentation) { | ||
assert.equal(matches[0].documentation, expected.documentation); | ||
assert.equal(match.documentation, expected.documentation); | ||
} | ||
if (expected.kind) { | ||
assert.equal(matches[0].kind, expected.kind); | ||
assert.equal(match.kind, expected.kind); | ||
} | ||
if (expected.insertText) { | ||
assert.equal(matches[0].insertText || matches[0].textEdit.newText, expected.insertText); | ||
} | ||
if (expected.resultText) { | ||
assert.equal(textEditSupport_1.applyEdits(document, [matches[0].textEdit]), expected.resultText); | ||
} | ||
if (expected.insertText && typeof expected.overwriteBefore === 'number' && matches[0].textEdit) { | ||
var text = document.getText(); | ||
var expectedText = text.substr(0, offset - expected.overwriteBefore) + expected.insertText + text.substr(offset); | ||
var actualText = textEditSupport_1.applyEdits(document, [matches[0].textEdit]); | ||
if (actualText !== expectedText) { | ||
assert.equal(actualText, expectedText); | ||
var insertText = match.label; | ||
if (vscode_languageserver_types_1.SnippetString.is(match.insertText)) { | ||
insertText = match.insertText.value; | ||
} | ||
else if (match.insertText) { | ||
insertText = match.insertText; | ||
} | ||
assert.equal(textEditSupport_1.applyEdits(document, [vscode_languageserver_types_1.TextEdit.replace(match.range, insertText)]), expected.resultText); | ||
} | ||
@@ -119,5 +116,5 @@ }; | ||
items: [ | ||
{ label: 'type', resultText: '<input type="{{}}"' }, | ||
{ label: 'style', resultText: '<input style="{{}}"' }, | ||
{ label: 'onmousemove', resultText: '<input onmousemove="{{}}"' }, | ||
{ label: 'type', resultText: '<input type="$1"' }, | ||
{ label: 'style', resultText: '<input style="$1"' }, | ||
{ label: 'onmousemove', resultText: '<input onmousemove="$1"' }, | ||
] | ||
@@ -127,4 +124,4 @@ }), | ||
items: [ | ||
{ label: 'type', resultText: '<input type="{{}}"' }, | ||
{ label: 'tabindex', resultText: '<input tabindex="{{}}"' }, | ||
{ label: 'type', resultText: '<input type="$1"' }, | ||
{ label: 'tabindex', resultText: '<input tabindex="$1"' }, | ||
] | ||
@@ -134,4 +131,4 @@ }), | ||
items: [ | ||
{ label: 'type', resultText: '<input type="{{}}"' }, | ||
{ label: 'tabindex', resultText: '<input tabindex="{{}}"' }, | ||
{ label: 'type', resultText: '<input type="$1"' }, | ||
{ label: 'tabindex', resultText: '<input tabindex="$1"' }, | ||
] | ||
@@ -147,5 +144,5 @@ }), | ||
items: [ | ||
{ label: 'style', resultText: '<input type="text" style="{{}}"' }, | ||
{ label: 'type', resultText: '<input type="text" type="{{}}"' }, | ||
{ label: 'size', resultText: '<input type="text" size="{{}}"' }, | ||
{ label: 'style', resultText: '<input type="text" style="$1"' }, | ||
{ label: 'type', resultText: '<input type="text" type="$1"' }, | ||
{ label: 'size', resultText: '<input type="text" size="$1"' }, | ||
] | ||
@@ -155,5 +152,5 @@ }), | ||
items: [ | ||
{ label: 'style', resultText: '<input type="text" style="{{}}"' }, | ||
{ label: 'src', resultText: '<input type="text" src="{{}}"' }, | ||
{ label: 'size', resultText: '<input type="text" size="{{}}"' }, | ||
{ label: 'style', resultText: '<input type="text" style="$1"' }, | ||
{ label: 'src', resultText: '<input type="text" src="$1"' }, | ||
{ label: 'size', resultText: '<input type="text" size="$1"' }, | ||
] | ||
@@ -164,3 +161,3 @@ }), | ||
{ label: 'disabled', resultText: '<input disabled type="text"' }, | ||
{ label: 'dir', resultText: '<input dir="{{}}" type="text"' }, | ||
{ label: 'dir', resultText: '<input dir="$1" type="text"' }, | ||
] | ||
@@ -170,4 +167,4 @@ }), | ||
items: [ | ||
{ label: 'dir', resultText: '<input disabled dir="{{}}" type="text"' }, | ||
{ label: 'style', resultText: '<input disabled style="{{}}" type="text"' }, | ||
{ label: 'dir', resultText: '<input disabled dir="$1" type="text"' }, | ||
{ label: 'style', resultText: '<input disabled style="$1" type="text"' }, | ||
] | ||
@@ -332,3 +329,3 @@ }), | ||
items: [ | ||
{ label: 'type', resultText: '<iNpUt type="{{}}"' } | ||
{ label: 'type', resultText: '<iNpUt type="$1"' } | ||
] | ||
@@ -413,4 +410,4 @@ }), | ||
items: [ | ||
{ label: 'ng-controller', resultText: '<body ng-controller="{{}}"> </body >' }, | ||
{ label: 'data-ng-controller', resultText: '<body data-ng-controller="{{}}"> </body >' }, | ||
{ label: 'ng-controller', resultText: '<body ng-controller="$1"> </body >' }, | ||
{ label: 'data-ng-controller', resultText: '<body data-ng-controller="$1"> </body >' }, | ||
] | ||
@@ -420,4 +417,4 @@ }), | ||
items: [ | ||
{ label: 'ng-repeat', resultText: '<li ng-repeat="{{}}"> </li >' }, | ||
{ label: 'data-ng-repeat', resultText: '<li data-ng-repeat="{{}}"> </li >' }, | ||
{ label: 'ng-repeat', resultText: '<li ng-repeat="$1"> </li >' }, | ||
{ label: 'data-ng-repeat', resultText: '<li data-ng-repeat="$1"> </li >' }, | ||
] | ||
@@ -427,4 +424,4 @@ }), | ||
items: [ | ||
{ label: 'ng-model', resultText: '<input ng-model="{{}}"> </input >' }, | ||
{ label: 'data-ng-model', resultText: '<input data-ng-model="{{}}"> </input >' }, | ||
{ label: 'ng-model', resultText: '<input ng-model="$1"> </input >' }, | ||
{ label: 'data-ng-model', resultText: '<input data-ng-model="$1"> </input >' }, | ||
] | ||
@@ -431,0 +428,0 @@ }) |
{ | ||
"name": "vscode-html-languageservice", | ||
"version": "1.0.1-next.4", | ||
"description": "Language service for HTML", | ||
"main": "./lib/htmlLanguageService.js", | ||
"typings": "./lib/htmlLanguageService", | ||
"author": "Microsoft Corporation", | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/Microsoft/vscode-html-languageservice" | ||
}, | ||
"license": "MIT", | ||
"bugs": { | ||
"url": "https://github.com/Microsoft/vscode-html-languageservice" | ||
}, | ||
"devDependencies": { | ||
"mocha": "^2.4.5", | ||
"typescript": "^2.0.8", | ||
"@types/node": "^6.0.46", | ||
"@types/mocha": "^2.2.32" | ||
}, | ||
"dependencies": { | ||
"vscode-languageserver-types": "^1.0.5-next.1", | ||
"vscode-nls": "^1.0.4", | ||
"vscode-uri": "^1.0.0" | ||
}, | ||
"scripts": { | ||
"prepublish": "npm run compile", | ||
"compile": "tsc -p ./src && cp ./src/beautify/*.js ./lib/beautify", | ||
"watch": "cp ./src/beautify/*.js ./lib/beautify && tsc -w -p ./src", | ||
"test": "npm run compile && mocha" | ||
} | ||
"name": "vscode-html-languageservice", | ||
"version": "2.0.0-next.1", | ||
"description": "Language service for HTML", | ||
"main": "./lib/htmlLanguageService.js", | ||
"typings": "./lib/htmlLanguageService", | ||
"author": "Microsoft Corporation", | ||
"repository": { | ||
"type": "git", | ||
"url": "https://github.com/Microsoft/vscode-html-languageservice" | ||
}, | ||
"license": "MIT", | ||
"bugs": { | ||
"url": "https://github.com/Microsoft/vscode-html-languageservice" | ||
}, | ||
"devDependencies": { | ||
"mocha": "^2.4.5", | ||
"typescript": "^2.0.10", | ||
"@types/node": "^6.0.51", | ||
"@types/mocha": "^2.2.33" | ||
}, | ||
"dependencies": { | ||
"vscode-languageserver-types": "^3.0.1-alpha.2", | ||
"vscode-nls": "^1.0.7", | ||
"vscode-uri": "^1.0.0" | ||
}, | ||
"scripts": { | ||
"prepublish": "npm run compile", | ||
"compile": "tsc -p ./src && cp ./src/beautify/*.js ./lib/beautify", | ||
"watch": "cp ./src/beautify/*.js ./lib/beautify && tsc -w -p ./src", | ||
"test": "npm run compile && mocha" | ||
} | ||
} |
4943
292671
+ Addedvscode-languageserver-types@3.17.5(transitive)
- Removedvscode-languageserver-types@1.0.5-next.1(transitive)
Updatedvscode-nls@^1.0.7