@statorjs/language-server 0.1.33-next.1 → 0.1.33-next.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/server.cjs +26 -17
  2. package/package.json +2 -2
package/dist/server.cjs CHANGED
@@ -44494,6 +44494,29 @@ function scopeHash(input) {
44494
44494
 
44495
44495
  // ../stator/src/compiler/lower.ts
44496
44496
  var import_typescript3 = __toESM(require("typescript"), 1);
44497
+
44498
+ // ../stator/src/template/void-elements.ts
44499
+ var VOID_ELEMENTS = /* @__PURE__ */ new Set([
44500
+ "area",
44501
+ "base",
44502
+ "br",
44503
+ "col",
44504
+ "embed",
44505
+ "hr",
44506
+ "img",
44507
+ "input",
44508
+ "link",
44509
+ "meta",
44510
+ "param",
44511
+ "source",
44512
+ "track",
44513
+ "wbr"
44514
+ ]);
44515
+ function isVoidElement(tag) {
44516
+ return VOID_ELEMENTS.has(tag.toLowerCase());
44517
+ }
44518
+
44519
+ // ../stator/src/compiler/lower.ts
44497
44520
  function cleanJsxText(raw) {
44498
44521
  const lines = raw.split(/\r\n|\n|\r/);
44499
44522
  let lastNonEmpty = 0;
@@ -44741,7 +44764,8 @@ function lowerTemplate(template, opts = {}) {
44741
44764
  return `\${${lowerComponent(tag, node.attributes, void 0)}}`;
44742
44765
  }
44743
44766
  if (meta && tag.includes("-")) meta.customElements.add(tag);
44744
- return `<${tag}${lowerAttributes(node.attributes)}${scopeSuffix} />`;
44767
+ const open = `<${tag}${lowerAttributes(node.attributes)}${scopeSuffix}>`;
44768
+ return isVoidElement(tag) ? open : `${open}</${tag}>`;
44745
44769
  }
44746
44770
  if (import_typescript3.default.isJsxFragment(node)) return contentOfChildren(node.children);
44747
44771
  throw new CompileError(
@@ -45798,21 +45822,6 @@ function buildServerTsx(regions) {
45798
45822
  code += "</>);\n}\n";
45799
45823
  return { lang: "tsx", code, mappings };
45800
45824
  }
45801
- var VOID_TAGS = /* @__PURE__ */ new Set([
45802
- "area",
45803
- "base",
45804
- "br",
45805
- "col",
45806
- "embed",
45807
- "hr",
45808
- "img",
45809
- "input",
45810
- "link",
45811
- "meta",
45812
- "source",
45813
- "track",
45814
- "wbr"
45815
- ]);
45816
45825
  function appendTemplateTsx(code, mappings, tpl, tplOffset) {
45817
45826
  let out = code;
45818
45827
  let i = 0;
@@ -45860,7 +45869,7 @@ function appendTemplateTsx(code, mappings, tpl, tplOffset) {
45860
45869
  if (ch === ">") break;
45861
45870
  j++;
45862
45871
  }
45863
- if (VOID_TAGS.has(tag.toLowerCase()) && j < tpl.length) {
45872
+ if (VOID_ELEMENTS.has(tag.toLowerCase()) && j < tpl.length) {
45864
45873
  let k = j - 1;
45865
45874
  while (k > i && /\s/.test(tpl[k])) k--;
45866
45875
  if (tpl[k] !== "/") {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@statorjs/language-server",
3
- "version": "0.1.33-next.1",
3
+ "version": "0.1.33-next.2",
4
4
  "description": "Volar-based language server for .stator files.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -33,7 +33,7 @@
33
33
  "volar-service-typescript": "0.0.71",
34
34
  "vscode-css-languageservice": "^6.3.0",
35
35
  "vscode-uri": "^3.0.8",
36
- "@statorjs/stator": "2.11.0-next.1"
36
+ "@statorjs/stator": "2.11.0-next.2"
37
37
  },
38
38
  "peerDependencies": {
39
39
  "typescript": "^5.6.0"