vscode-languageserver-textdocument
Advanced tools
Comparing version 1.0.0 to 1.0.1-next.1
@@ -0,0 +0,0 @@ /** |
@@ -6,9 +6,2 @@ /* -------------------------------------------------------------------------------------------- | ||
'use strict'; | ||
var __spreadArrays = (this && this.__spreadArrays) || function () { | ||
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; | ||
for (var r = Array(s), k = 0, i = 0; i < il; i++) | ||
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) | ||
r[k] = a[j]; | ||
return r; | ||
}; | ||
var FullTextDocument = /** @class */ (function () { | ||
@@ -73,3 +66,3 @@ function FullTextDocument(uri, languageId, version, content) { | ||
if (addedLineOffsets.length < 10000) { | ||
lineOffsets.splice.apply(lineOffsets, __spreadArrays([startLine + 1, endLine - startLine], addedLineOffsets)); | ||
lineOffsets.splice.apply(lineOffsets, [startLine + 1, endLine - startLine].concat(addedLineOffsets)); | ||
} | ||
@@ -197,16 +190,20 @@ else { // avoid too many arguments for splice | ||
}); | ||
var lastModifiedOffset = text.length; | ||
for (var i = sortedEdits.length - 1; i >= 0; i--) { | ||
var e = sortedEdits[i]; | ||
var lastModifiedOffset = 0; | ||
var spans = []; | ||
for (var _i = 0, sortedEdits_1 = sortedEdits; _i < sortedEdits_1.length; _i++) { | ||
var e = sortedEdits_1[_i]; | ||
var startOffset = document.offsetAt(e.range.start); | ||
var endOffset = document.offsetAt(e.range.end); | ||
if (endOffset <= lastModifiedOffset) { | ||
text = text.substring(0, startOffset) + e.newText + text.substring(endOffset, text.length); | ||
} | ||
else { | ||
if (startOffset < lastModifiedOffset) { | ||
throw new Error('Overlapping edit'); | ||
} | ||
lastModifiedOffset = startOffset; | ||
else if (startOffset > lastModifiedOffset) { | ||
spans.push(text.substring(lastModifiedOffset, startOffset)); | ||
} | ||
if (e.newText.length) { | ||
spans.push(e.newText); | ||
} | ||
lastModifiedOffset = document.offsetAt(e.range.end); | ||
} | ||
return text; | ||
spans.push(text.substr(lastModifiedOffset)); | ||
return spans.join(''); | ||
} | ||
@@ -213,0 +210,0 @@ TextDocument.applyEdits = applyEdits; |
@@ -0,0 +0,0 @@ /** |
@@ -1,8 +0,1 @@ | ||
var __spreadArrays = (this && this.__spreadArrays) || function () { | ||
for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; | ||
for (var r = Array(s), k = 0, i = 0; i < il; i++) | ||
for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) | ||
r[k] = a[j]; | ||
return r; | ||
}; | ||
(function (factory) { | ||
@@ -82,3 +75,3 @@ if (typeof module === "object" && typeof module.exports === "object") { | ||
if (addedLineOffsets.length < 10000) { | ||
lineOffsets.splice.apply(lineOffsets, __spreadArrays([startLine + 1, endLine - startLine], addedLineOffsets)); | ||
lineOffsets.splice.apply(lineOffsets, [startLine + 1, endLine - startLine].concat(addedLineOffsets)); | ||
} | ||
@@ -206,16 +199,20 @@ else { // avoid too many arguments for splice | ||
}); | ||
var lastModifiedOffset = text.length; | ||
for (var i = sortedEdits.length - 1; i >= 0; i--) { | ||
var e = sortedEdits[i]; | ||
var lastModifiedOffset = 0; | ||
var spans = []; | ||
for (var _i = 0, sortedEdits_1 = sortedEdits; _i < sortedEdits_1.length; _i++) { | ||
var e = sortedEdits_1[_i]; | ||
var startOffset = document.offsetAt(e.range.start); | ||
var endOffset = document.offsetAt(e.range.end); | ||
if (endOffset <= lastModifiedOffset) { | ||
text = text.substring(0, startOffset) + e.newText + text.substring(endOffset, text.length); | ||
} | ||
else { | ||
if (startOffset < lastModifiedOffset) { | ||
throw new Error('Overlapping edit'); | ||
} | ||
lastModifiedOffset = startOffset; | ||
else if (startOffset > lastModifiedOffset) { | ||
spans.push(text.substring(lastModifiedOffset, startOffset)); | ||
} | ||
if (e.newText.length) { | ||
spans.push(e.newText); | ||
} | ||
lastModifiedOffset = document.offsetAt(e.range.end); | ||
} | ||
return text; | ||
spans.push(text.substr(lastModifiedOffset)); | ||
return spans.join(''); | ||
} | ||
@@ -222,0 +219,0 @@ TextDocument.applyEdits = applyEdits; |
@@ -0,0 +0,0 @@ Copyright (c) Microsoft Corporation |
{ | ||
"name": "vscode-languageserver-textdocument", | ||
"description": "A simple text document implementation for Node LSP servers", | ||
"version": "1.0.0", | ||
"version": "1.0.1-next.1", | ||
"author": "Microsoft Corporation", | ||
@@ -6,0 +6,0 @@ "license": "MIT", |
@@ -0,0 +0,0 @@ # Text Document implementation for a LSP Node server |
@@ -0,0 +0,0 @@ { |
Sorry, the diff of this file is not supported yet
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
68876
924
2