chore(vscode): prepare 0.8.8 marketplace release
Quality / quality (ubuntu-latest) (push) Failing after 9m53s
Quality / quality (windows-latest) (push) Canceled after 0s

This commit is contained in:
2026-08-18 22:43:01 +05:30
parent d70e89230b
commit 7ad336b4dd
2 changed files with 39 additions and 11 deletions
+9
View File
@@ -1,5 +1,14 @@
# Changelog # Changelog
## 0.8.8
- Added HTML tag and attribute completions inside WRN `view` blocks, while preserving WRNexus
component completion priority and suppressing HTML suggestions outside markup regions.
- Added HTML hover documentation, folding ranges, linked tag editing, and automatic closing tags.
- Added Emmet expansion support for WRN documents and kept void elements from receiving closing tags.
- Hardened completion and auto-close handling against quoted attribute values, replaced selections,
stale asynchronous edits, and duplicate client-side suggestions.
## 0.8.3 ## 0.8.3
- Rebuilt the embedded WRN compiler with the 0.8.3 SSR, computed-value, Async-scope, and typed loop-prop fixes. - Rebuilt the embedded WRN compiler with the 0.8.3 SSR, computed-value, Async-scope, and typed loop-prop fixes.
+30 -11
View File
@@ -1,7 +1,8 @@
#!/usr/bin/env node #!/usr/bin/env node
// WRN editor language server source hash: 1bda85712569242c96adb5fe2512cc07a59d469c50791a892c5146ab61043da9 // WRN editor language server source hash: 5702fe2c68d78698b5507beb585cfd66a1c826f5c9febddca09fc45c49e40d4e
// WRN editor language server generator hash: f593a44aaf05495b789ce7a3086bee1eebb951b884d41c0e017bbcfe5f547e72 // WRN editor language server generator hash: f593a44aaf05495b789ce7a3086bee1eebb951b884d41c0e017bbcfe5f547e72
var __create = Object.create; // @bun @bun-cjs
(function(exports, require, module, __filename, __dirname) {var __create = Object.create;
var __getProtoOf = Object.getPrototypeOf; var __getProtoOf = Object.getPrototypeOf;
var __defProp = Object.defineProperty; var __defProp = Object.defineProperty;
var __getOwnPropNames = Object.getOwnPropertyNames; var __getOwnPropNames = Object.getOwnPropertyNames;
@@ -195905,12 +195906,20 @@ function regionsFor(document) {
regionCache.set(document.uri, { version: document.version, regions }); regionCache.set(document.uri, { version: document.version, regions });
return regions; return regions;
} }
function clearHtmlRegionCache(uri) { // packages/language-server/src/index.ts
if (uri) function offsetAt2(text, position) {
regionCache.delete(uri); const lines = text.split(/\r?\n/);
else let offset = 0;
regionCache.clear(); for (let line = 0;line < Math.min(position.line, lines.length); line++)
offset += (lines[line]?.length ?? 0) + 1;
return Math.min(text.length, offset + Math.max(0, position.character));
} }
var semanticTokenTypes2 = ["variable"];
var semanticTokenModifiers2 = ["declaration", "modification"];
var semanticTokensLegend2 = {
tokenTypes: [...semanticTokenTypes2],
tokenModifiers: [...semanticTokenModifiers2]
};
// packages/language-server/src/html-service.ts // packages/language-server/src/html-service.ts
var service = getLanguageService(); var service = getLanguageService();
@@ -195927,7 +195936,7 @@ function markdown(value) {
return ""; return "";
} }
function htmlCompletions(document, position) { function htmlCompletions(document, position) {
if (!isInsideHtml(document, offsetAt(document.text, position))) if (!isInsideHtml(document, offsetAt2(document.text, position)))
return []; return [];
const virtual = htmlDocument(document); const virtual = htmlDocument(document);
const parsed = service.parseHTMLDocument(virtual); const parsed = service.parseHTMLDocument(virtual);
@@ -195942,7 +195951,7 @@ function htmlCompletions(document, position) {
})); }));
} }
function htmlHover(document, position) { function htmlHover(document, position) {
if (!isInsideHtml(document, offsetAt(document.text, position))) if (!isInsideHtml(document, offsetAt2(document.text, position)))
return null; return null;
const virtual = htmlDocument(document); const virtual = htmlDocument(document);
const result = service.doHover(virtual, position, service.parseHTMLDocument(virtual)); const result = service.doHover(virtual, position, service.parseHTMLDocument(virtual));
@@ -195955,7 +195964,7 @@ function htmlFoldingRanges(document) {
return service.getFoldingRanges(htmlDocument(document)).map((range) => ({ startLine: range.startLine, endLine: range.endLine })); return service.getFoldingRanges(htmlDocument(document)).map((range) => ({ startLine: range.startLine, endLine: range.endLine }));
} }
function htmlLinkedEditingRanges(document, position) { function htmlLinkedEditingRanges(document, position) {
if (!isInsideHtml(document, offsetAt(document.text, position))) if (!isInsideHtml(document, offsetAt2(document.text, position)))
return null; return null;
const virtual = htmlDocument(document); const virtual = htmlDocument(document);
const ranges = service.findLinkedEditingRanges(virtual, position, service.parseHTMLDocument(virtual)); const ranges = service.findLinkedEditingRanges(virtual, position, service.parseHTMLDocument(virtual));
@@ -195991,7 +196000,7 @@ function selfClosingTagCompletion(text, offset) {
return ">"; return ">";
} }
function htmlTagComplete(document, position) { function htmlTagComplete(document, position) {
const offset = offsetAt(document.text, position); const offset = offsetAt2(document.text, position);
if (!isInsideHtml(document, offset)) if (!isInsideHtml(document, offset))
return null; return null;
const virtual = htmlDocument(document); const virtual = htmlDocument(document);
@@ -196008,6 +196017,15 @@ function mergeCompletions(wrnexus, html) {
]; ];
} }
// packages/language-server/src/html-regions.ts
var regionCache2 = new Map;
function clearHtmlRegionCache(uri) {
if (uri)
regionCache2.delete(uri);
else
regionCache2.clear();
}
// packages/language-server/src/server.ts // packages/language-server/src/server.ts
var documents = new Map; var documents = new Map;
var diagnosticTimers = new Map; var diagnosticTimers = new Map;
@@ -196414,3 +196432,4 @@ process.stdin.on("data", (chunk) => {
} }
}); });
process.stdin.resume(); process.stdin.resume();
})(exports, require, module, __filename, __dirname);