@elurjs/language-server 1.1.0 → 1.2.0

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 (58) hide show
  1. package/dist/capabilities.d.ts +1 -1
  2. package/dist/capabilities.d.ts.map +1 -1
  3. package/dist/capabilities.js +1 -1
  4. package/dist/capabilities.js.map +1 -1
  5. package/dist/codeActions/provider.d.ts +1 -1
  6. package/dist/codeActions/provider.d.ts.map +1 -1
  7. package/dist/codeActions/provider.js +1 -1
  8. package/dist/codeActions/provider.js.map +1 -1
  9. package/dist/completion/directives.d.ts +1 -1
  10. package/dist/completion/directives.d.ts.map +1 -1
  11. package/dist/completion/directives.js +1 -1
  12. package/dist/completion/directives.js.map +1 -1
  13. package/dist/completion/events.d.ts +1 -1
  14. package/dist/completion/events.d.ts.map +1 -1
  15. package/dist/completion/events.js +1 -1
  16. package/dist/completion/events.js.map +1 -1
  17. package/dist/completion/modifiers.d.ts +1 -1
  18. package/dist/completion/modifiers.d.ts.map +1 -1
  19. package/dist/completion/modifiers.js +1 -1
  20. package/dist/completion/modifiers.js.map +1 -1
  21. package/dist/completion/provider.d.ts +1 -1
  22. package/dist/completion/provider.d.ts.map +1 -1
  23. package/dist/completion/provider.js +8 -2
  24. package/dist/completion/provider.js.map +1 -1
  25. package/dist/diagnostics/provider.d.ts +2 -2
  26. package/dist/diagnostics/provider.d.ts.map +1 -1
  27. package/dist/diagnostics/provider.js +13 -3
  28. package/dist/diagnostics/provider.js.map +1 -1
  29. package/dist/diagnostics/rules.d.ts +2 -1
  30. package/dist/diagnostics/rules.d.ts.map +1 -1
  31. package/dist/formatting/provider.d.ts +1 -1
  32. package/dist/formatting/provider.d.ts.map +1 -1
  33. package/dist/formatting/provider.js +12 -5
  34. package/dist/formatting/provider.js.map +1 -1
  35. package/dist/formatting/renderer.js.map +1 -1
  36. package/dist/hover/provider.d.ts +1 -1
  37. package/dist/hover/provider.d.ts.map +1 -1
  38. package/dist/hover/provider.js +3 -2
  39. package/dist/hover/provider.js.map +1 -1
  40. package/dist/modifiers/constants.d.ts.map +1 -1
  41. package/dist/server.d.ts +3 -1
  42. package/dist/server.d.ts.map +1 -1
  43. package/dist/server.js +12 -3
  44. package/dist/server.js.map +1 -1
  45. package/dist/template/detector.d.ts +0 -11
  46. package/dist/template/detector.d.ts.map +1 -1
  47. package/dist/template/detector.js +1 -19
  48. package/dist/template/detector.js.map +1 -1
  49. package/dist/template/parser.d.ts.map +1 -1
  50. package/dist/utils/config.d.ts +15 -0
  51. package/dist/utils/config.d.ts.map +1 -1
  52. package/dist/utils/config.js +38 -0
  53. package/dist/utils/config.js.map +1 -1
  54. package/package.json +11 -8
  55. package/dist/template/scope.d.ts +0 -18
  56. package/dist/template/scope.d.ts.map +0 -1
  57. package/dist/template/scope.js +0 -44
  58. package/dist/template/scope.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * capabilities.ts — LSP capability declarations.
3
3
  */
4
- import type { InitializeResult } from "vscode-languageserver/node.js";
4
+ import type { InitializeResult } from "vscode-languageserver/node";
5
5
  export declare function getCapabilities(): InitializeResult;
6
6
  //# sourceMappingURL=capabilities.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAGtE,wBAAgB,eAAe,IAAI,gBAAgB,CAgBlD"}
1
+ {"version":3,"file":"capabilities.d.ts","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAGnE,wBAAgB,eAAe,IAAI,gBAAgB,CAgBlD"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * capabilities.ts — LSP capability declarations.
3
3
  */
4
- import { TextDocumentSyncKind } from "vscode-languageserver/node.js";
4
+ import { TextDocumentSyncKind } from "vscode-languageserver/node";
5
5
  export function getCapabilities() {
6
6
  return {
7
7
  capabilities: {
@@ -1 +1 @@
1
- {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AAErE,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,YAAY,EAAE;YACZ,gBAAgB,EAAE,oBAAoB,CAAC,WAAW;YAClD,kBAAkB,EAAE;gBAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBAClC,eAAe,EAAE,IAAI;aACtB;YACD,aAAa,EAAE,IAAI;YACnB,kBAAkB,EAAE;gBAClB,eAAe,EAAE,CAAC,UAAU,CAAC;aAC9B;YACD,0BAA0B,EAAE,IAAI;YAChC,+BAA+B,EAAE,IAAI;SACtC;KACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"capabilities.js","sourceRoot":"","sources":["../src/capabilities.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,UAAU,eAAe;IAC7B,OAAO;QACL,YAAY,EAAE;YACZ,gBAAgB,EAAE,oBAAoB,CAAC,WAAW;YAClD,kBAAkB,EAAE;gBAClB,iBAAiB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC;gBAClC,eAAe,EAAE,IAAI;aACtB;YACD,aAAa,EAAE,IAAI;YACnB,kBAAkB,EAAE;gBAClB,eAAe,EAAE,CAAC,UAAU,CAAC;aAC9B;YACD,0BAA0B,EAAE,IAAI;YAChC,+BAA+B,EAAE,IAAI;SACtC;KACF,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * provider.ts — Code actions provider for the LSP server.
3
3
  */
4
- import type { Connection, TextDocuments } from "vscode-languageserver/node.js";
4
+ import type { Connection, TextDocuments } from "vscode-languageserver/node";
5
5
  import type { TextDocument } from "vscode-languageserver-textdocument";
6
6
  export declare function registerCodeActions(connection: Connection, documents: TextDocuments<TextDocument>): void;
7
7
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/codeActions/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAKvE,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CA0CN"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/codeActions/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAKvE,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CA0CN"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * provider.ts — Code actions provider for the LSP server.
3
3
  */
4
- import { CodeActionKind } from "vscode-languageserver/node.js";
4
+ import { CodeActionKind } from "vscode-languageserver/node";
5
5
  import { parseEventBindingChain } from "../modifiers/parser.js";
6
6
  import { createModifierQuickFixes } from "./fixes.js";
7
7
  export function registerCodeActions(connection, documents) {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/codeActions/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAc,cAAc,EAAiB,MAAM,+BAA+B,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,UAAU,mBAAmB,CACjC,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,OAAO,GAAiB,EAAE,CAAC;QAEjC,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACpD,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YAE3C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,MAAM,KAAK,GAAG,wBAAwB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAE3E,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAe;oBACzB,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,IAAI,EAAE,cAAc,CAAC,QAAQ;oBAC7B,WAAW,EAAE,CAAC,UAAU,CAAC;oBACzB,IAAI,EAAE;wBACJ,OAAO,EAAE;4BACP,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gCACd;oCACE,KAAK,EAAE,UAAU,CAAC,KAAK;oCACvB,OAAO,EAAE,GAAG,CAAC,KAAK;iCACnB;6BACF;yBACF;qBACe;oBAClB,WAAW,EACT,GAAG,CAAC,EAAE,KAAK,4BAA4B;wBACvC,GAAG,CAAC,EAAE,KAAK,cAAc;wBACzB,GAAG,CAAC,EAAE,KAAK,0BAA0B;iBACxC,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/codeActions/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAc,cAAc,EAAiB,MAAM,4BAA4B,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAChE,OAAO,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAEtD,MAAM,UAAU,mBAAmB,CACjC,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,MAAM,OAAO,GAAiB,EAAE,CAAC;QAEjC,KAAK,MAAM,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACpD,IAAI,UAAU,CAAC,MAAM,KAAK,MAAM;gBAAE,SAAS;YAE3C,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;YACjD,IAAI,CAAC,MAAM;gBAAE,SAAS;YAEtB,MAAM,KAAK,GAAG,wBAAwB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;YAE3E,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;gBACxB,MAAM,MAAM,GAAe;oBACzB,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,IAAI,EAAE,cAAc,CAAC,QAAQ;oBAC7B,WAAW,EAAE,CAAC,UAAU,CAAC;oBACzB,IAAI,EAAE;wBACJ,OAAO,EAAE;4BACP,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;gCACd;oCACE,KAAK,EAAE,UAAU,CAAC,KAAK;oCACvB,OAAO,EAAE,GAAG,CAAC,KAAK;iCACnB;6BACF;yBACF;qBACe;oBAClB,WAAW,EACT,GAAG,CAAC,EAAE,KAAK,4BAA4B;wBACvC,GAAG,CAAC,EAAE,KAAK,cAAc;wBACzB,GAAG,CAAC,EAAE,KAAK,0BAA0B;iBACxC,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * directives.ts — Directive attribute completion items (ref, show, hide).
3
3
  */
4
- import type { CompletionItem } from "vscode-languageserver/node.js";
4
+ import type { CompletionItem } from "vscode-languageserver/node";
5
5
  export declare function buildDirectiveCompletions(): CompletionItem[];
6
6
  //# sourceMappingURL=directives.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/completion/directives.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE,wBAAgB,yBAAyB,IAAI,cAAc,EAAE,CAS5D"}
1
+ {"version":3,"file":"directives.d.ts","sourceRoot":"","sources":["../../src/completion/directives.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,wBAAgB,yBAAyB,IAAI,cAAc,EAAE,CAS5D"}
@@ -2,7 +2,7 @@
2
2
  * directives.ts — Directive attribute completion items (ref, show, hide).
3
3
  */
4
4
  import { DIRECTIVE_ATTRIBUTES } from "../modifiers/constants.js";
5
- import { CompletionItemKind } from "vscode-languageserver/node.js";
5
+ import { CompletionItemKind } from "vscode-languageserver/node";
6
6
  export function buildDirectiveCompletions() {
7
7
  return DIRECTIVE_ATTRIBUTES.map((directive) => ({
8
8
  label: directive,
@@ -1 +1 @@
1
- {"version":3,"file":"directives.js","sourceRoot":"","sources":["../../src/completion/directives.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,UAAU,yBAAyB;IACvC,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC9C,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,kBAAkB,CAAC,QAAQ;QACjC,UAAU,EAAE,GAAG,SAAS,QAAQ;QAChC,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,gBAAgB;QACxB,aAAa,EAAE,6BAA6B,SAAS,GAAG;KACzD,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"directives.js","sourceRoot":"","sources":["../../src/completion/directives.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,UAAU,yBAAyB;IACvC,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QAC9C,KAAK,EAAE,SAAS;QAChB,IAAI,EAAE,kBAAkB,CAAC,QAAQ;QACjC,UAAU,EAAE,GAAG,SAAS,QAAQ;QAChC,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,gBAAgB;QACxB,aAAa,EAAE,6BAA6B,SAAS,GAAG;KACzD,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * events.ts — Event name completion items.
3
3
  */
4
- import type { CompletionItem } from "vscode-languageserver/node.js";
4
+ import type { CompletionItem } from "vscode-languageserver/node";
5
5
  export declare function buildEventCompletions(prefix: string): CompletionItem[];
6
6
  //# sourceMappingURL=events.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/completion/events.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAatE"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../../src/completion/events.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAatE"}
@@ -2,7 +2,7 @@
2
2
  * events.ts — Event name completion items.
3
3
  */
4
4
  import { EVENT_BINDINGS } from "../modifiers/constants.js";
5
- import { CompletionItemKind } from "vscode-languageserver/node.js";
5
+ import { CompletionItemKind } from "vscode-languageserver/node";
6
6
  export function buildEventCompletions(prefix) {
7
7
  const p = (prefix || "").toLowerCase();
8
8
  return EVENT_BINDINGS
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/completion/events.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,UAAU,qBAAqB,CAAC,MAAc;IAClD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,cAAc;SAClB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC9C,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,SAAS,EAAE;QACtB,IAAI,EAAE,kBAAkB,CAAC,KAAK;QAC9B,UAAU,EAAE,IAAI,SAAS,EAAE;QAC3B,UAAU,EAAE,IAAI,SAAS,QAAQ;QACjC,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,QAAQ,SAAS,gCAAgC;KACjE,CAAC,CAAC,CAAC;AACR,CAAC"}
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../../src/completion/events.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,UAAU,qBAAqB,CAAC,MAAc;IAClD,MAAM,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IACvC,OAAO,cAAc;SAClB,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;SAC9C,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACnB,KAAK,EAAE,IAAI,SAAS,EAAE;QACtB,IAAI,EAAE,kBAAkB,CAAC,KAAK;QAC9B,UAAU,EAAE,IAAI,SAAS,EAAE;QAC3B,UAAU,EAAE,IAAI,SAAS,QAAQ;QACjC,gBAAgB,EAAE,CAAC;QACnB,MAAM,EAAE,oBAAoB;QAC5B,aAAa,EAAE,QAAQ,SAAS,gCAAgC;KACjE,CAAC,CAAC,CAAC;AACR,CAAC"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * modifiers.ts — Modifier completion items.
3
3
  */
4
- import type { CompletionItem } from "vscode-languageserver/node.js";
4
+ import type { CompletionItem } from "vscode-languageserver/node";
5
5
  export declare function buildModifierCompletions(eventName: string, usedModifiers: string[], modifierPrefix: string): CompletionItem[];
6
6
  //# sourceMappingURL=modifiers.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modifiers.d.ts","sourceRoot":"","sources":["../../src/completion/modifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAGpE,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE,EACvB,cAAc,EAAE,MAAM,GACrB,cAAc,EAAE,CAWlB"}
1
+ {"version":3,"file":"modifiers.d.ts","sourceRoot":"","sources":["../../src/completion/modifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAGjE,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EAAE,EACvB,cAAc,EAAE,MAAM,GACrB,cAAc,EAAE,CAWlB"}
@@ -4,7 +4,7 @@
4
4
  import { getModifierSuggestions } from "../modifiers/suggestions.js";
5
5
  import { MODIFIER_HELP } from "../modifiers/constants.js";
6
6
  import { isKeyEventName } from "../modifiers/analyzer.js";
7
- import { CompletionItemKind } from "vscode-languageserver/node.js";
7
+ import { CompletionItemKind } from "vscode-languageserver/node";
8
8
  export function buildModifierCompletions(eventName, usedModifiers, modifierPrefix) {
9
9
  const suggestions = getModifierSuggestions(eventName, usedModifiers, modifierPrefix);
10
10
  const isKey = isKeyEventName(eventName);
@@ -1 +1 @@
1
- {"version":3,"file":"modifiers.js","sourceRoot":"","sources":["../../src/completion/modifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,MAAM,UAAU,wBAAwB,CACtC,SAAiB,EACjB,aAAuB,EACvB,cAAsB;IAEtB,MAAM,WAAW,GAAG,sBAAsB,CAAC,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAExC,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACpC,KAAK,EAAE,IAAI,QAAQ,EAAE;QACrB,IAAI,EAAE,kBAAkB,CAAC,UAAU;QACnC,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,qBAAqB;QACjE,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,IAAI,qBAAqB;KAChE,CAAC,CAAC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"modifiers.js","sourceRoot":"","sources":["../../src/completion/modifiers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,MAAM,UAAU,wBAAwB,CACtC,SAAiB,EACjB,aAAuB,EACvB,cAAsB;IAEtB,MAAM,WAAW,GAAG,sBAAsB,CAAC,SAAS,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC;IACrF,MAAM,KAAK,GAAG,cAAc,CAAC,SAAS,CAAC,CAAC;IAExC,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACpC,KAAK,EAAE,IAAI,QAAQ,EAAE;QACrB,IAAI,EAAE,kBAAkB,CAAC,UAAU;QACnC,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,qBAAqB;QACjE,aAAa,EAAE,aAAa,CAAC,QAAQ,CAAC,IAAI,qBAAqB;KAChE,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * provider.ts — Completion provider for the LSP server.
3
3
  */
4
- import type { Connection, TextDocuments } from "vscode-languageserver/node.js";
4
+ import type { Connection, TextDocuments } from "vscode-languageserver/node";
5
5
  import type { TextDocument } from "vscode-languageserver-textdocument";
6
6
  export declare function registerCompletion(connection: Connection, documents: TextDocuments<TextDocument>): void;
7
7
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/completion/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAYvE,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CA4CN"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/completion/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAavE,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CAiDN"}
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * provider.ts — Completion provider for the LSP server.
3
3
  */
4
- import { Position } from "vscode-languageserver/node.js";
4
+ import { Position } from "vscode-languageserver/node";
5
5
  import { parseEventContextFromPrefix } from "../modifiers/parser.js";
6
6
  import { isInsideTaggedTemplate } from "../template/detector.js";
7
+ import { getConfig } from "../utils/config.js";
7
8
  import { buildEventCompletions } from "./events.js";
8
9
  import { buildModifierCompletions } from "./modifiers.js";
9
10
  import { buildDirectiveCompletions } from "./directives.js";
@@ -16,9 +17,12 @@ export function registerCompletion(connection, documents) {
16
17
  if (!document || !SUPPORTED_LANGUAGES.has(document.languageId)) {
17
18
  return null;
18
19
  }
20
+ const config = getConfig();
21
+ if (!config.enableCompletions)
22
+ return null;
19
23
  const text = document.getText();
20
24
  const offset = document.offsetAt(params.position);
21
- if (!isInsideTaggedTemplate(text, offset)) {
25
+ if (!isInsideTaggedTemplate(text, offset, config.templateTags)) {
22
26
  return null;
23
27
  }
24
28
  const linePrefix = document.getText({
@@ -27,6 +31,8 @@ export function registerCompletion(connection, documents) {
27
31
  });
28
32
  const eventContext = parseEventContextFromPrefix(linePrefix);
29
33
  if (eventContext?.mode === "modifier") {
34
+ if (!config.enableModifierSuggestions)
35
+ return null;
30
36
  const items = buildModifierCompletions(eventContext.eventName || "", eventContext.usedModifiers || [], eventContext.modifierPrefix || "");
31
37
  return { items, isIncomplete: false };
32
38
  }
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/completion/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAkC,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AACzF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,kBAAkB,CAChC,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC;YAClC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/C,GAAG,EAAE,MAAM,CAAC,QAAQ;SACrB,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;QAE7D,IAAI,YAAY,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YACtC,MAAM,KAAK,GAAG,wBAAwB,CACpC,YAAY,CAAC,SAAS,IAAI,EAAE,EAC5B,YAAY,CAAC,aAAa,IAAI,EAAE,EAChC,YAAY,CAAC,cAAc,IAAI,EAAE,CAClC,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;QAC1D,CAAC;QAED,IAAI,YAAY,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,qBAAqB,CAAC,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACpE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;QAC1D,CAAC;QAED,qCAAqC;QACrC,MAAM,KAAK,GAAqB;YAC9B,GAAG,qBAAqB,CAAC,EAAE,CAAC;YAC5B,GAAG,yBAAyB,EAAE;SAC/B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/completion/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAkC,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtF,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAE5D,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,kBAAkB,CAChC,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;QACjC,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,IAAI,CAAC,MAAM,CAAC,iBAAiB;YAAE,OAAO,IAAI,CAAC;QAE3C,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,OAAO,CAAC;YAClC,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;YAC/C,GAAG,EAAE,MAAM,CAAC,QAAQ;SACrB,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,2BAA2B,CAAC,UAAU,CAAC,CAAC;QAE7D,IAAI,YAAY,EAAE,IAAI,KAAK,UAAU,EAAE,CAAC;YACtC,IAAI,CAAC,MAAM,CAAC,yBAAyB;gBAAE,OAAO,IAAI,CAAC;YACnD,MAAM,KAAK,GAAG,wBAAwB,CACpC,YAAY,CAAC,SAAS,IAAI,EAAE,EAC5B,YAAY,CAAC,aAAa,IAAI,EAAE,EAChC,YAAY,CAAC,cAAc,IAAI,EAAE,CAClC,CAAC;YACF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;QAC1D,CAAC;QAED,IAAI,YAAY,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;YACnC,MAAM,KAAK,GAAG,qBAAqB,CAAC,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;YACpE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;QAC1D,CAAC;QAED,qCAAqC;QACrC,MAAM,KAAK,GAAqB;YAC9B,GAAG,qBAAqB,CAAC,EAAE,CAAC;YAC5B,GAAG,yBAAyB,EAAE;SAC/B,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAoB,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,UAAU,CAAC,mBAAmB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AACjD,CAAC"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * provider.ts — Diagnostics provider for the LSP server.
3
3
  */
4
- import type { Connection, TextDocuments } from "vscode-languageserver/node.js";
4
+ import type { Connection, TextDocuments } from "vscode-languageserver/node";
5
5
  import type { TextDocument } from "vscode-languageserver-textdocument";
6
- export declare function registerDiagnostics(connection: Connection, documents: TextDocuments<TextDocument>): void;
6
+ export declare function registerDiagnostics(connection: Connection, documents: TextDocuments<TextDocument>): () => void;
7
7
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/diagnostics/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAQvE,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CA2CN"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/diagnostics/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AASvE,wBAAgB,mBAAmB,CACjC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,MAAM,IAAI,CAuDZ"}
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * provider.ts — Diagnostics provider for the LSP server.
3
3
  */
4
- import { DiagnosticSeverity } from "vscode-languageserver/node.js";
4
+ import { DiagnosticSeverity } from "vscode-languageserver/node";
5
5
  import { scanDiagnostics } from "./rules.js";
6
+ import { getConfig } from "../utils/config.js";
6
7
  const SUPPORTED_LANGUAGES = new Set([
7
8
  "javascript", "typescript", "javascriptreact", "typescriptreact",
8
9
  ]);
@@ -15,13 +16,17 @@ export function registerDiagnostics(connection, documents) {
15
16
  : "other";
16
17
  if (scheme !== "file" && scheme !== "untitled")
17
18
  return;
19
+ const config = getConfig();
20
+ if (!config.enableDiagnostics) {
21
+ connection.sendDiagnostics({ uri: document.uri, diagnostics: [] });
22
+ return;
23
+ }
18
24
  const text = document.getText();
19
25
  if (!text.includes("@")) {
20
26
  connection.sendDiagnostics({ uri: document.uri, diagnostics: [] });
21
27
  return;
22
28
  }
23
- const enableStyleHints = true; // TODO: read from client config
24
- const rawDiags = scanDiagnostics(text, enableStyleHints);
29
+ const rawDiags = scanDiagnostics(text, config.enableStyleHints);
25
30
  const diagnostics = rawDiags.map((d) => {
26
31
  const severity = d.severity === "information"
27
32
  ? DiagnosticSeverity.Information
@@ -45,5 +50,10 @@ export function registerDiagnostics(connection, documents) {
45
50
  documents.onDidClose((e) => {
46
51
  connection.sendDiagnostics({ uri: e.document.uri, diagnostics: [] });
47
52
  });
53
+ // Return a revalidation function for the server to call when
54
+ // configuration changes (e.g. enableDiagnostics toggled).
55
+ return () => {
56
+ documents.all().forEach(validate);
57
+ };
48
58
  }
49
59
  //# sourceMappingURL=provider.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/diagnostics/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAc,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAuB,MAAM,YAAY,CAAC;AAElE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,mBAAmB,CACjC,UAAsB,EACtB,SAAsC;IAEtC,SAAS,QAAQ,CAAC,QAAsB;QACtC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO;QAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;YACtD,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU;gBACjD,CAAC,CAAC,OAAO,CAAC;QACd,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO;QAEvD,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,gCAAgC;QAC/D,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAiB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAiB,EAAE,EAAE;YACnE,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,KAAK,aAAa;gBAC3C,CAAC,CAAC,kBAAkB,CAAC,WAAW;gBAChC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAE/B,OAAO;gBACL,QAAQ;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE;oBACL,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;oBACzC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;iBACtC;gBACD,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE;QACzB,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/diagnostics/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAc,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAuB,MAAM,YAAY,CAAC;AAClE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,mBAAmB,CACjC,UAAsB,EACtB,SAAsC;IAEtC,SAAS,QAAQ,CAAC,QAAsB;QACtC,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC;YAAE,OAAO;QAC1D,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,MAAM;YACtD,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,UAAU;gBACjD,CAAC,CAAC,OAAO,CAAC;QACd,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,UAAU;YAAE,OAAO;QAEvD,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAE3B,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;YAC9B,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;YACnE,OAAO;QACT,CAAC;QAED,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEhE,MAAM,WAAW,GAAiB,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAiB,EAAE,EAAE;YACnE,MAAM,QAAQ,GAAG,CAAC,CAAC,QAAQ,KAAK,aAAa;gBAC3C,CAAC,CAAC,kBAAkB,CAAC,WAAW;gBAChC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAE/B,OAAO;gBACL,QAAQ;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE;oBACL,KAAK,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC;oBACzC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC;iBACtC;gBACD,IAAI,EAAE,CAAC,CAAC,IAAI;aACb,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IACjD,SAAS,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC1D,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE;QACzB,UAAU,CAAC,eAAe,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IACvE,CAAC,CAAC,CAAC;IAEH,6DAA6D;IAC7D,0DAA0D;IAC1D,OAAO,GAAG,EAAE;QACV,SAAS,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC"}
@@ -3,7 +3,7 @@
3
3
  *
4
4
  * Ported from elur-vscode/extension.js validateDocument().
5
5
  */
6
- export interface DiagnosticData {
6
+ interface DiagnosticData {
7
7
  code: string;
8
8
  eventName: string;
9
9
  modifiers: string[];
@@ -26,4 +26,5 @@ export interface TextDiagnostic {
26
26
  * Scans text for @event.modifier chains and returns diagnostics for all issues.
27
27
  */
28
28
  export declare function scanDiagnostics(text: string, enableStyleHints: boolean): TextDiagnostic[];
29
+ export {};
29
30
  //# sourceMappingURL=rules.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/diagnostics/rules.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,IAAI,EAAE,cAAc,CAAC;CACtB;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,OAAO,GACxB,cAAc,EAAE,CAqClB"}
1
+ {"version":3,"file":"rules.d.ts","sourceRoot":"","sources":["../../src/diagnostics/rules.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;CACvC;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,SAAS,GAAG,aAAa,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IACtC,IAAI,EAAE,cAAc,CAAC;CACtB;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,MAAM,EACZ,gBAAgB,EAAE,OAAO,GACxB,cAAc,EAAE,CAqClB"}
@@ -4,7 +4,7 @@
4
4
  * Formats html`` tagged template regions in JS/TS documents.
5
5
  * Uses a tree-based formatter that produces JSX/Lit-style output.
6
6
  */
7
- import type { Connection, TextDocuments } from "vscode-languageserver/node.js";
7
+ import type { Connection, TextDocuments } from "vscode-languageserver/node";
8
8
  import type { TextDocument } from "vscode-languageserver-textdocument";
9
9
  export declare function registerFormatting(connection: Connection, documents: TextDocuments<TextDocument>): void;
10
10
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/formatting/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAkBvE,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CA8EN"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/formatting/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAkBvE,wBAAgB,kBAAkB,CAChC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CAoFN"}
@@ -5,8 +5,9 @@
5
5
  * Uses a tree-based formatter that produces JSX/Lit-style output.
6
6
  */
7
7
  import { findTemplateRegions } from "../template/detector.js";
8
+ import { getConfig } from "../utils/config.js";
8
9
  import { formatTemplateInner } from "./printer.js";
9
- function formatTemplateRegion(region, indentChar, tabSize) {
10
+ function formatTemplateRegion(region, indentChar) {
10
11
  const { inner, baseIndent } = region;
11
12
  if (inner.trim() === "")
12
13
  return null;
@@ -20,11 +21,14 @@ export function registerFormatting(connection, documents) {
20
21
  const document = documents.get(params.textDocument.uri);
21
22
  if (!document)
22
23
  return null;
24
+ const config = getConfig();
25
+ if (!config.enableFormatting)
26
+ return null;
23
27
  const text = document.getText();
24
28
  const tabSize = params.options.tabSize ?? 2;
25
29
  const insertSpaces = params.options.insertSpaces ?? true;
26
30
  const indentChar = insertSpaces ? " ".repeat(tabSize) : "\t";
27
- const regions = findTemplateRegions(text, tabSize);
31
+ const regions = findTemplateRegions(text, tabSize, config.templateTags);
28
32
  const edits = [];
29
33
  for (const region of regions) {
30
34
  const isContained = regions.some((other) => other !== region &&
@@ -32,7 +36,7 @@ export function registerFormatting(connection, documents) {
32
36
  region.innerEnd <= other.innerEnd);
33
37
  if (isContained)
34
38
  continue;
35
- const formatted = formatTemplateRegion(region, indentChar, tabSize);
39
+ const formatted = formatTemplateRegion(region, indentChar);
36
40
  if (formatted !== null) {
37
41
  edits.push({
38
42
  range: {
@@ -49,13 +53,16 @@ export function registerFormatting(connection, documents) {
49
53
  const document = documents.get(params.textDocument.uri);
50
54
  if (!document)
51
55
  return null;
56
+ const config = getConfig();
57
+ if (!config.enableFormatting)
58
+ return null;
52
59
  const text = document.getText();
53
60
  const tabSize = params.options.tabSize ?? 2;
54
61
  const insertSpaces = params.options.insertSpaces ?? true;
55
62
  const indentChar = insertSpaces ? " ".repeat(tabSize) : "\t";
56
63
  const rangeStart = document.offsetAt(params.range.start);
57
64
  const rangeEnd = document.offsetAt(params.range.end);
58
- const regions = findTemplateRegions(text, tabSize);
65
+ const regions = findTemplateRegions(text, tabSize, config.templateTags);
59
66
  const edits = [];
60
67
  for (const region of regions) {
61
68
  if (region.innerEnd < rangeStart || region.innerStart > rangeEnd)
@@ -65,7 +72,7 @@ export function registerFormatting(connection, documents) {
65
72
  region.innerEnd <= other.innerEnd);
66
73
  if (isContained)
67
74
  continue;
68
- const formatted = formatTemplateRegion(region, indentChar, tabSize);
75
+ const formatted = formatTemplateRegion(region, indentChar);
69
76
  if (formatted !== null) {
70
77
  edits.push({
71
78
  range: {
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/formatting/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/formatting/provider.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/formatting/renderer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"renderer.js","sourceRoot":"","sources":["../../src/formatting/renderer.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * provider.ts — Hover provider for modifier help.
3
3
  */
4
- import type { Connection, TextDocuments } from "vscode-languageserver/node.js";
4
+ import type { Connection, TextDocuments } from "vscode-languageserver/node";
5
5
  import type { TextDocument } from "vscode-languageserver-textdocument";
6
6
  export declare function registerHover(connection: Connection, documents: TextDocuments<TextDocument>): void;
7
7
  //# sourceMappingURL=provider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/hover/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AASvE,wBAAgB,aAAa,CAC3B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CAyCN"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/hover/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAC5E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAUvE,wBAAgB,aAAa,CAC3B,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,aAAa,CAAC,YAAY,CAAC,GACrC,IAAI,CAyCN"}
@@ -1,9 +1,10 @@
1
1
  /**
2
2
  * provider.ts — Hover provider for modifier help.
3
3
  */
4
- import { MarkupKind } from "vscode-languageserver/node.js";
4
+ import { MarkupKind } from "vscode-languageserver/node";
5
5
  import { MODIFIER_HELP } from "../modifiers/constants.js";
6
6
  import { isInsideTaggedTemplate } from "../template/detector.js";
7
+ import { getConfig } from "../utils/config.js";
7
8
  const SUPPORTED_LANGUAGES = new Set([
8
9
  "javascript", "typescript", "javascriptreact", "typescriptreact",
9
10
  ]);
@@ -15,7 +16,7 @@ export function registerHover(connection, documents) {
15
16
  }
16
17
  const text = document.getText();
17
18
  const offset = document.offsetAt(params.position);
18
- if (!isInsideTaggedTemplate(text, offset)) {
19
+ if (!isInsideTaggedTemplate(text, offset, getConfig().templateTags)) {
19
20
  return null;
20
21
  }
21
22
  const line = document.getText({
@@ -1 +1 @@
1
- {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/hover/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAS,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAClE,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAC3B,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE;YACnD,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAE;SACxE,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChG,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC;QAEjC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,QAAQ,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAElC,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,OAAO;YACL,QAAQ,EAAE;gBACR,IAAI,EAAE,UAAU,CAAC,QAAQ;gBACzB,KAAK,EAAE,MAAM,QAAQ,SAAS,IAAI,EAAE;aACrC;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE;gBAC3D,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;aAC1E;SACO,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/hover/provider.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,OAAO,EAAS,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,MAAM,mBAAmB,GAAG,IAAI,GAAG,CAAC;IAClC,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,iBAAiB;CACjE,CAAC,CAAC;AAEH,MAAM,UAAU,aAAa,CAC3B,UAAsB,EACtB,SAAsC;IAEtC,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;QAC5B,MAAM,QAAQ,GAAG,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxD,IAAI,CAAC,QAAQ,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC/D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;QAChC,MAAM,MAAM,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAElD,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,OAAO,CAAC;YAC5B,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE;YACnD,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,gBAAgB,EAAE;SACxE,CAAC,CAAC;QAEH,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC;QAChG,IAAI,CAAC,cAAc;YAAE,OAAO,IAAI,CAAC;QAEjC,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,SAAS,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;QACvE,MAAM,QAAQ,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1D,IAAI,QAAQ,KAAK,GAAG;YAAE,OAAO,IAAI,CAAC;QAElC,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QAEvB,OAAO;YACL,QAAQ,EAAE;gBACR,IAAI,EAAE,UAAU,CAAC,QAAQ;gBACzB,KAAK,EAAE,MAAM,QAAQ,SAAS,IAAI,EAAE;aACrC;YACD,KAAK,EAAE;gBACL,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE;gBAC3D,GAAG,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE;aAC1E;SACO,CAAC;IACb,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/modifiers/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,eAAe,oEAElB,CAAC;AAEX,eAAO,MAAM,aAAa,oGAIhB,CAAC;AAEX,eAAO,MAAM,UAAU,2CAA4C,CAAC;AAEpE,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH,eAAO,MAAM,cAAc,wfAejB,CAAC;AAEX,eAAO,MAAM,oBAAoB,kCAAmC,CAAC;AAErE,eAAO,MAAM,aAAa,0BAA2B,CAAC;AAEtD,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB1D,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEvD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAErD,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/modifiers/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,eAAe,YAC1B,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,CAC/C,CAAC;AAEX,eAAO,MAAM,aAAa,YACxB,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EACjC,QAAQ,EAAE,WAAW,EACrB,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CACrB,CAAC;AAEX,eAAO,MAAM,UAAU,YAAI,SAAS,EAAE,OAAO,EAAE,UAAU,CAAU,CAAC;AAEpE,eAAO,MAAM,eAAe,aAG1B,CAAC;AAEH,eAAO,MAAM,cAAc,YACzB,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,QAAQ,EACpC,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EACnC,YAAY,EAAE,YAAY,EAC1B,WAAW,EAAE,SAAS,EACtB,YAAY,EAAE,UAAU,EACxB,UAAU,EAAE,aAAa,EACzB,UAAU,EAAE,QAAQ,EAAE,OAAO,EAC7B,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,EAC5E,WAAW,EAAE,aAAa,EAC1B,aAAa,EAAE,WAAW,EAAE,aAAa,EACzC,gBAAgB,EAAE,cAAc,EAAE,oBAAoB,EACtD,iBAAiB,EAAE,eAAe,EAClC,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,KAAK,EAAE,OAAO,CACd,CAAC;AAEX,eAAO,MAAM,oBAAoB,YAAI,KAAK,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAErE,eAAO,MAAM,aAAa,YAAI,MAAM,EAAE,KAAK,CAAU,CAAC;AAEtD,eAAO,MAAM,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAiB1D,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAEvD,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAErD,CAAC"}
package/dist/server.d.ts CHANGED
@@ -2,7 +2,9 @@
2
2
  * server.ts — LSP server entry point.
3
3
  *
4
4
  * Wires up all providers: completion, diagnostics, hover, code actions, formatting.
5
+ * Reads client configuration on init and on every `workspace/didChangeConfiguration`
6
+ * notification, then re-validates all open documents.
5
7
  */
6
- declare const connection: import("vscode-languageserver/node.js")._Connection<import("vscode-languageserver/node.js")._, import("vscode-languageserver/node.js")._, import("vscode-languageserver/node.js")._, import("vscode-languageserver/node.js")._, import("vscode-languageserver/node.js")._, import("vscode-languageserver/node.js")._, import("vscode-languageserver/lib/common/inlineCompletion.proposed.js").InlineCompletionFeatureShape, import("vscode-languageserver/node.js")._>;
8
+ declare const connection: import("vscode-languageserver/node")._Connection<import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._, import("vscode-languageserver/node")._>;
7
9
  export { connection as startServer };
8
10
  //# sourceMappingURL=server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH,QAAA,MAAM,UAAU,wcAAyC,CAAC;AAkB1D,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAiBH,QAAA,MAAM,UAAU,kXAAyC,CAAC;AA2B1D,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
package/dist/server.js CHANGED
@@ -2,10 +2,13 @@
2
2
  * server.ts — LSP server entry point.
3
3
  *
4
4
  * Wires up all providers: completion, diagnostics, hover, code actions, formatting.
5
+ * Reads client configuration on init and on every `workspace/didChangeConfiguration`
6
+ * notification, then re-validates all open documents.
5
7
  */
6
- import { createConnection, TextDocuments, ProposedFeatures, } from "vscode-languageserver/node.js";
8
+ import { createConnection, TextDocuments, ProposedFeatures, } from "vscode-languageserver/node";
7
9
  import { TextDocument } from "vscode-languageserver-textdocument";
8
10
  import { getCapabilities } from "./capabilities.js";
11
+ import { refreshConfig } from "./utils/config.js";
9
12
  import { registerCompletion } from "./completion/provider.js";
10
13
  import { registerDiagnostics } from "./diagnostics/provider.js";
11
14
  import { registerHover } from "./hover/provider.js";
@@ -16,13 +19,19 @@ const documents = new TextDocuments(TextDocument);
16
19
  connection.onInitialize((_params) => {
17
20
  return getCapabilities();
18
21
  });
19
- connection.onInitialized(() => {
22
+ let revalidateAll = null;
23
+ connection.onInitialized(async () => {
24
+ await refreshConfig(connection);
20
25
  registerCompletion(connection, documents);
21
- registerDiagnostics(connection, documents);
26
+ revalidateAll = registerDiagnostics(connection, documents);
22
27
  registerHover(connection, documents);
23
28
  registerCodeActions(connection, documents);
24
29
  registerFormatting(connection, documents);
25
30
  });
31
+ connection.onDidChangeConfiguration(async () => {
32
+ await refreshConfig(connection);
33
+ revalidateAll?.();
34
+ });
26
35
  documents.listen(connection);
27
36
  connection.listen();
28
37
  export { connection as startServer };
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GAEjB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,MAAM,UAAU,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;AAC1D,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC;AAElD,UAAU,CAAC,YAAY,CAAC,CAAC,OAAyB,EAAE,EAAE;IACpD,OAAO,eAAe,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,aAAa,CAAC,GAAG,EAAE;IAC5B,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC1C,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC3C,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACrC,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC3C,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC7B,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EACL,gBAAgB,EAChB,aAAa,EACb,gBAAgB,GAEjB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AAClE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,MAAM,UAAU,GAAG,gBAAgB,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;AAC1D,MAAM,SAAS,GAAG,IAAI,aAAa,CAAC,YAAY,CAAC,CAAC;AAElD,UAAU,CAAC,YAAY,CAAC,CAAC,OAAyB,EAAE,EAAE;IACpD,OAAO,eAAe,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC;AAEH,IAAI,aAAa,GAAwB,IAAI,CAAC;AAE9C,UAAU,CAAC,aAAa,CAAC,KAAK,IAAI,EAAE;IAClC,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;IAEhC,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC1C,aAAa,GAAG,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC3D,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACrC,mBAAmB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IAC3C,kBAAkB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AAC5C,CAAC,CAAC,CAAC;AAEH,UAAU,CAAC,wBAAwB,CAAC,KAAK,IAAI,EAAE;IAC7C,MAAM,aAAa,CAAC,UAAU,CAAC,CAAC;IAChC,aAAa,EAAE,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AAEH,SAAS,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AAC7B,UAAU,CAAC,MAAM,EAAE,CAAC;AAEpB,OAAO,EAAE,UAAU,IAAI,WAAW,EAAE,CAAC"}
@@ -16,11 +16,6 @@ export interface TemplateRegion {
16
16
  /** Base indentation depth (in indent units) of the tag line. */
17
17
  baseIndent: number;
18
18
  }
19
- /**
20
- * Extracts the template tag name immediately before a backtick.
21
- * Returns null if no valid tag is found.
22
- */
23
- export declare function extractTemplateTagBeforeBacktick(textBeforeCursor: string): string | null;
24
19
  /**
25
20
  * Returns true if the cursor at `cursorOffset` is inside a html`` or raw(``)
26
21
  * template region.
@@ -29,12 +24,6 @@ export declare function extractTemplateTagBeforeBacktick(textBeforeCursor: strin
29
24
  * (e.g. `html\`<div>${() => \`inner\`}</div>\``).
30
25
  */
31
26
  export declare function isInsideTaggedTemplate(documentText: string, cursorOffset: number, allowedTags?: readonly string[]): boolean;
32
- /**
33
- * Finds the closing backtick of a template starting at `from` (position after
34
- * the opening backtick). Handles nested ${...} and nested template literals.
35
- * Returns -1 if not found.
36
- */
37
- export declare function findTemplateClose(text: string, from: number): number;
38
27
  /**
39
28
  * Scans the document text and returns all html`` and raw(``) template regions.
40
29
  * Regions are returned in order of appearance. Nested templates are included.
@@ -1 +1 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/template/detector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;GAGG;AACH,wBAAgB,gCAAgC,CAAC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAcxF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,GAAE,SAAS,MAAM,EAAuB,GAClD,OAAO,CAKT;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAiCpE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,SAAI,EACX,WAAW,GAAE,SAAS,MAAM,EAAuB,GAClD,cAAc,EAAE,CAKlB"}
1
+ {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../src/template/detector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,WAAW,cAAc;IAC7B,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,+CAA+C;IAC/C,QAAQ,EAAE,MAAM,CAAC;IACjB,gCAAgC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,GAAE,SAAS,MAAM,EAAuB,GAClD,OAAO,CAKT;AA0CD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,OAAO,SAAI,EACX,WAAW,GAAE,SAAS,MAAM,EAAuB,GAClD,cAAc,EAAE,CAKlB"}
@@ -7,24 +7,6 @@
7
7
  * Ported from elur-vscode/template-tags.js.
8
8
  */
9
9
  const TEMPLATE_TAGS = new Set(["html", "raw"]);
10
- /**
11
- * Extracts the template tag name immediately before a backtick.
12
- * Returns null if no valid tag is found.
13
- */
14
- export function extractTemplateTagBeforeBacktick(textBeforeCursor) {
15
- const lastBacktick = textBeforeCursor.lastIndexOf("`");
16
- if (lastBacktick < 0)
17
- return null;
18
- const beforeBacktick = textBeforeCursor.slice(0, lastBacktick);
19
- let i = beforeBacktick.length - 1;
20
- while (i >= 0 && /\s/.test(beforeBacktick[i]))
21
- i--;
22
- const end = i;
23
- while (i >= 0 && /[\w$]/.test(beforeBacktick[i]))
24
- i--;
25
- const tagName = beforeBacktick.slice(i + 1, end + 1).toLowerCase();
26
- return tagName || null;
27
- }
28
10
  /**
29
11
  * Returns true if the cursor at `cursorOffset` is inside a html`` or raw(``)
30
12
  * template region.
@@ -41,7 +23,7 @@ export function isInsideTaggedTemplate(documentText, cursorOffset, allowedTags =
41
23
  * the opening backtick). Handles nested ${...} and nested template literals.
42
24
  * Returns -1 if not found.
43
25
  */
44
- export function findTemplateClose(text, from) {
26
+ function findTemplateClose(text, from) {
45
27
  let i = from;
46
28
  const len = text.length;
47
29
  while (i < len) {
@@ -1 +1 @@
1
- {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/template/detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../src/template/detector.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;AAa/C;;;;;;GAMG;AACH,MAAM,UAAU,sBAAsB,CACpC,YAAoB,EACpB,YAAoB,EACpB,WAAW,GAAsB,CAAC,GAAG,aAAa,CAAC;IAEnD,MAAM,OAAO,GAAG,mBAAmB,CAAC,YAAY,EAAE,CAAC,EAAE,WAAW,CAAC,CAAC;IAClE,OAAO,OAAO,CAAC,IAAI,CACjB,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,IAAI,CAAC,CAAC,UAAU,IAAI,YAAY,IAAI,CAAC,CAAC,QAAQ,CAClE,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,IAAY,EAAE,IAAY;IACnD,IAAI,CAAC,GAAG,IAAI,CAAC;IACb,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IAExB,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;QACf,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;YAAE,OAAO,CAAC,CAAC;QAE9B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3C,CAAC,IAAI,CAAC,CAAC;YACP,IAAI,KAAK,GAAG,CAAC,CAAC;YACd,OAAO,CAAC,GAAG,GAAG,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC5B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;oBAAE,KAAK,EAAE,CAAC;qBACxB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;oBAAE,KAAK,EAAE,CAAC;qBAC7B,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBACzB,CAAC,EAAE,CAAC;oBACJ,MAAM,WAAW,GAAG,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC/C,IAAI,WAAW,KAAK,CAAC,CAAC;wBAAE,OAAO,CAAC,CAAC,CAAC;oBAClC,CAAC,GAAG,WAAW,CAAC;gBAClB,CAAC;qBAAM,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC9C,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;oBAClB,CAAC,EAAE,CAAC;oBACJ,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;wBAChC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI;4BAAE,CAAC,EAAE,CAAC;wBAC1B,CAAC,EAAE,CAAC;oBACN,CAAC;gBACH,CAAC;gBACD,CAAC,EAAE,CAAC;YACN,CAAC;YACD,SAAS;QACX,CAAC;QACD,CAAC,EAAE,CAAC;IACN,CAAC;IACD,OAAO,CAAC,CAAC,CAAC;AACZ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,OAAO,GAAG,CAAC,EACX,WAAW,GAAsB,CAAC,GAAG,aAAa,CAAC;IAEnD,MAAM,OAAO,GAAqB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAChE,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;IAC/C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,WAAW,CAClB,IAAY,EACZ,UAAkB,EAClB,OAAyB,EACzB,OAAe,EACf,MAAmB;IAEnB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC;IACxB,IAAI,CAAC,GAAG,CAAC,CAAC;IAEV,OAAO,CAAC,GAAG,GAAG,EAAE,CAAC;QACf,qBAAqB;QACrB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3C,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI;gBAAE,CAAC,EAAE,CAAC;YACxC,SAAS;QACX,CAAC;QACD,sBAAsB;QACtB,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YAC3C,CAAC,IAAI,CAAC,CAAC;YACP,OAAO,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,GAAG,CAAC;gBAAE,CAAC,EAAE,CAAC;YACrE,CAAC,IAAI,CAAC,CAAC;YACP,SAAS;QACX,CAAC;QACD,eAAe;QACf,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;YACvC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC,EAAE,CAAC;YACJ,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBAChC,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI;oBAAE,CAAC,EAAE,CAAC;gBAC1B,CAAC,EAAE,CAAC;YACN,CAAC;YACD,CAAC,EAAE,CAAC;YACJ,SAAS;QACX,CAAC;QAED,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC;YACnB,OAAO,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAAE,CAAC,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;YAElD,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACpB,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;oBAAE,CAAC,EAAE,CAAC;gBAE7D,0DAA0D;gBAC1D,kDAAkD;gBAClD,IAAI,iBAAiB,GAAG,KAAK,CAAC;gBAC9B,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC/B,iBAAiB,GAAG,IAAI,CAAC;oBACzB,CAAC,EAAE,CAAC;oBACJ,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;wBAAE,CAAC,EAAE,CAAC;gBAC5C,CAAC;gBAED,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;oBAC/B,MAAM,YAAY,GAAG,CAAC,CAAC;oBACvB,MAAM,UAAU,GAAG,YAAY,GAAG,CAAC,CAAC;oBAEpC,sBAAsB;oBACtB,IAAI,SAAS,GAAG,QAAQ,CAAC;oBACzB,OAAO,SAAS,GAAG,CAAC,IAAI,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,KAAK,IAAI;wBAAE,SAAS,EAAE,CAAC;oBAElE,IAAI,UAAU,GAAG,CAAC,CAAC;oBACnB,IAAI,CAAC,GAAG,SAAS,CAAC;oBAClB,OAAO,CAAC,GAAG,QAAQ,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;wBAC7D,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC7C,CAAC,EAAE,CAAC;oBACN,CAAC;oBACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,OAAO,CAAC,CAAC;oBAEpD,MAAM,aAAa,GAAG,iBAAiB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBAC1D,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;wBACzB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACV,SAAS;oBACX,CAAC;oBAED,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;oBACpD,MAAM,aAAa,GAAG,UAAU,GAAG,UAAU,CAAC;oBAC9C,MAAM,WAAW,GAAG,UAAU,GAAG,aAAa,CAAC;oBAE/C,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;oBAE5D,OAAO,CAAC,IAAI,CAAC;wBACX,UAAU,EAAE,aAAa;wBACzB,QAAQ,EAAE,WAAW;wBACrB,KAAK;wBACL,UAAU;qBACX,CAAC,CAAC;oBAEH,2DAA2D;oBAC3D,CAAC,GAAG,aAAa,GAAG,CAAC,CAAC;oBACtB,IAAI,iBAAiB,EAAE,CAAC;wBACtB,OAAO,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;4BAAE,CAAC,EAAE,CAAC;wBAC1C,IAAI,CAAC,GAAG,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG;4BAAE,CAAC,EAAE,CAAC;oBACtC,CAAC;oBACD,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QACD,CAAC,EAAE,CAAC;IACN,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/template/parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,KAAK;;;;;;;;CAQR,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAE3D,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,aAGxB,CAAC;AAEH,eAAO,MAAM,eAAe,aAK1B,CAAC;AAEH,eAAO,MAAM,YAAY,aAAkD,CAAC;AAE5E;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAsE9C;AAwDD;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAgD1D;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMhD;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
1
+ {"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../src/template/parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,KAAK;aAChB,QAAQ,EAAE,UAAU;aACpB,SAAS,EAAE,WAAW;aACtB,UAAU,EAAE,YAAY;aACxB,IAAI,EAAE,MAAM;aACZ,IAAI,EAAE,MAAM;aACZ,OAAO,EAAE,SAAS;aAClB,OAAO,EAAE,SAAS;CACV,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,KAAK,CAAC,CAAC,MAAM,OAAO,KAAK,CAAC,CAAC;AAE3D,MAAM,WAAW,KAAK;IACpB,IAAI,EAAE,SAAS,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,eAAO,MAAM,aAAa,aAGxB,CAAC;AAEH,eAAO,MAAM,eAAe,aAK1B,CAAC;AAEH,eAAO,MAAM,YAAY,aAAkD,CAAC;AAE5E;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,EAAE,CAsE9C;AAwDD;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAgD1D;AAED,iBAAS,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAMhD;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
@@ -1,6 +1,15 @@
1
1
  /**
2
2
  * config.ts — Read settings from the LSP client.
3
+ *
4
+ * The VS Code extension declares settings under the "elur" namespace
5
+ * (see elur-vscode/package.json `contributes.configuration`). The client
6
+ * syncs them via `configurationSection: "elur"`.
7
+ *
8
+ * On init and on every `workspace/didChangeConfiguration` notification the
9
+ * server calls `refreshConfig(connection)` to update the module-level
10
+ * config. Providers read it via `getConfig()`.
3
11
  */
12
+ import type { Connection } from "vscode-languageserver/node";
4
13
  export interface ElurLspConfig {
5
14
  enableDiagnostics: boolean;
6
15
  enableStyleHints: boolean;
@@ -11,4 +20,10 @@ export interface ElurLspConfig {
11
20
  templateTags: string[];
12
21
  }
13
22
  export declare const DEFAULT_CONFIG: ElurLspConfig;
23
+ /** Returns the current config (updated by `refreshConfig`). */
24
+ export declare function getConfig(): ElurLspConfig;
25
+ /** Reads the "elur" configuration section from the LSP client. */
26
+ export declare function readConfig(connection: Connection): Promise<ElurLspConfig>;
27
+ /** Reads config from the client and updates the module-level state. */
28
+ export declare function refreshConfig(connection: Connection): Promise<ElurLspConfig>;
14
29
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,yBAAyB,EAAE,OAAO,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,eAAO,MAAM,cAAc,EAAE,aAQ5B,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,yBAAyB,EAAE,OAAO,CAAC;IACnC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAED,eAAO,MAAM,cAAc,EAAE,aAQ5B,CAAC;AAqBF,+DAA+D;AAC/D,wBAAgB,SAAS,IAAI,aAAa,CAEzC;AAED,kEAAkE;AAClE,wBAAsB,UAAU,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAiB/E;AAED,uEAAuE;AACvE,wBAAsB,aAAa,CAAC,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,CAGlF"}
@@ -1,5 +1,13 @@
1
1
  /**
2
2
  * config.ts — Read settings from the LSP client.
3
+ *
4
+ * The VS Code extension declares settings under the "elur" namespace
5
+ * (see elur-vscode/package.json `contributes.configuration`). The client
6
+ * syncs them via `configurationSection: "elur"`.
7
+ *
8
+ * On init and on every `workspace/didChangeConfiguration` notification the
9
+ * server calls `refreshConfig(connection)` to update the module-level
10
+ * config. Providers read it via `getConfig()`.
3
11
  */
4
12
  export const DEFAULT_CONFIG = {
5
13
  enableDiagnostics: true,
@@ -10,4 +18,34 @@ export const DEFAULT_CONFIG = {
10
18
  formatOnSave: true,
11
19
  templateTags: ["html", "raw"],
12
20
  };
21
+ let currentConfig = DEFAULT_CONFIG;
22
+ /** Returns the current config (updated by `refreshConfig`). */
23
+ export function getConfig() {
24
+ return currentConfig;
25
+ }
26
+ /** Reads the "elur" configuration section from the LSP client. */
27
+ export async function readConfig(connection) {
28
+ try {
29
+ const raw = (await connection.workspace.getConfiguration("elur"));
30
+ if (!raw)
31
+ return DEFAULT_CONFIG;
32
+ return {
33
+ enableDiagnostics: raw.diagnostics?.enable ?? DEFAULT_CONFIG.enableDiagnostics,
34
+ enableStyleHints: raw.diagnostics?.enableStyleHints ?? DEFAULT_CONFIG.enableStyleHints,
35
+ enableCompletions: raw.completions?.enableEventBindings ?? DEFAULT_CONFIG.enableCompletions,
36
+ enableModifierSuggestions: raw.completions?.enableModifierSuggestions ?? DEFAULT_CONFIG.enableModifierSuggestions,
37
+ enableFormatting: raw.format?.enable ?? DEFAULT_CONFIG.enableFormatting,
38
+ formatOnSave: raw.format?.formatOnSave ?? DEFAULT_CONFIG.formatOnSave,
39
+ templateTags: raw.tags ?? DEFAULT_CONFIG.templateTags,
40
+ };
41
+ }
42
+ catch {
43
+ return DEFAULT_CONFIG;
44
+ }
45
+ }
46
+ /** Reads config from the client and updates the module-level state. */
47
+ export async function refreshConfig(connection) {
48
+ currentConfig = await readConfig(connection);
49
+ return currentConfig;
50
+ }
13
51
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAYH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,yBAAyB,EAAE,IAAI;IAC/B,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;CAC9B,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAcH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,iBAAiB,EAAE,IAAI;IACvB,gBAAgB,EAAE,IAAI;IACtB,iBAAiB,EAAE,IAAI;IACvB,yBAAyB,EAAE,IAAI;IAC/B,gBAAgB,EAAE,IAAI;IACtB,YAAY,EAAE,IAAI;IAClB,YAAY,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC;CAC9B,CAAC;AAmBF,IAAI,aAAa,GAAkB,cAAc,CAAC;AAElD,+DAA+D;AAC/D,MAAM,UAAU,SAAS;IACvB,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,kEAAkE;AAClE,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAsB;IACrD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAyB,CAAC;QAC1F,IAAI,CAAC,GAAG;YAAE,OAAO,cAAc,CAAC;QAEhC,OAAO;YACL,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,MAAM,IAAI,cAAc,CAAC,iBAAiB;YAC9E,gBAAgB,EAAE,GAAG,CAAC,WAAW,EAAE,gBAAgB,IAAI,cAAc,CAAC,gBAAgB;YACtF,iBAAiB,EAAE,GAAG,CAAC,WAAW,EAAE,mBAAmB,IAAI,cAAc,CAAC,iBAAiB;YAC3F,yBAAyB,EAAE,GAAG,CAAC,WAAW,EAAE,yBAAyB,IAAI,cAAc,CAAC,yBAAyB;YACjH,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,IAAI,cAAc,CAAC,gBAAgB;YACvE,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,IAAI,cAAc,CAAC,YAAY;YACrE,YAAY,EAAE,GAAG,CAAC,IAAI,IAAI,cAAc,CAAC,YAAY;SACtD,CAAC;IACJ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,cAAc,CAAC;IACxB,CAAC;AACH,CAAC;AAED,uEAAuE;AACvE,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAAsB;IACxD,aAAa,GAAG,MAAM,UAAU,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,aAAa,CAAC;AACvB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@elurjs/language-server",
3
- "version": "1.1.0",
3
+ "version": "1.2.0",
4
4
  "description": "LSP server for Elur html`` tagged templates",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -38,9 +38,8 @@
38
38
  "lint": "eslint src/"
39
39
  },
40
40
  "dependencies": {
41
- "vscode-languageserver": "^9.0.1",
42
- "vscode-languageserver-textdocument": "^1.0.11",
43
- "vscode-uri": "^3.0.8"
41
+ "vscode-languageserver": "^10.1.1",
42
+ "vscode-languageserver-textdocument": "^1.0.14"
44
43
  },
45
44
  "peerDependencies": {
46
45
  "@elurjs/core": "^3.0.0"
@@ -51,11 +50,15 @@
51
50
  }
52
51
  },
53
52
  "devDependencies": {
54
- "@types/node": "^20.0.0",
55
- "typescript": "~5.9.3",
56
- "vitest": "^4.0.18"
53
+ "@eslint/js": "^10.0.1",
54
+ "@types/node": "^26.5.0",
55
+ "@typescript/native": "npm:typescript@~7.0.2",
56
+ "eslint": "^10.10.0",
57
+ "typescript": "npm:@typescript/typescript6@^6.0.2",
58
+ "typescript-eslint": "^8.70.0",
59
+ "vitest": "^5.0.0"
57
60
  },
58
61
  "engines": {
59
- "node": ">=18.0.0"
62
+ "node": ">=20.19.0"
60
63
  }
61
64
  }
@@ -1,18 +0,0 @@
1
- /**
2
- * scope.ts — Template scope analysis utilities.
3
- *
4
- * Helpers for determining what kind of construct the cursor is in.
5
- */
6
- export type CursorContext = "event-name" | "modifier" | "attribute-name" | "attribute-value" | "text" | "outside-template";
7
- export interface ScopeInfo {
8
- context: CursorContext;
9
- /** The @event.modifier prefix before the cursor, if applicable. */
10
- eventPrefix?: string;
11
- /** The modifier prefix before the cursor, if applicable. */
12
- modifierPrefix?: string;
13
- }
14
- /**
15
- * Determines the cursor context within a html`` template.
16
- */
17
- export declare function getCursorContext(documentText: string, cursorOffset: number, allowedTags?: readonly string[]): ScopeInfo;
18
- //# sourceMappingURL=scope.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scope.d.ts","sourceRoot":"","sources":["../../src/template/scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,MAAM,aAAa,GACrB,YAAY,GACZ,UAAU,GACV,gBAAgB,GAChB,iBAAiB,GACjB,MAAM,GACN,kBAAkB,CAAC;AAEvB,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,aAAa,CAAC;IACvB,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,WAAW,GAAE,SAAS,MAAM,EAAoB,GAC/C,SAAS,CAqCX"}
@@ -1,44 +0,0 @@
1
- /**
2
- * scope.ts — Template scope analysis utilities.
3
- *
4
- * Helpers for determining what kind of construct the cursor is in.
5
- */
6
- import { isInsideTaggedTemplate } from "./detector.js";
7
- /**
8
- * Determines the cursor context within a html`` template.
9
- */
10
- export function getCursorContext(documentText, cursorOffset, allowedTags = ["html", "raw"]) {
11
- if (!isInsideTaggedTemplate(documentText, cursorOffset, allowedTags)) {
12
- return { context: "outside-template" };
13
- }
14
- // Get the line prefix up to the cursor
15
- const before = documentText.slice(0, cursorOffset);
16
- const lastNewline = before.lastIndexOf("\n");
17
- const linePrefix = lastNewline >= 0 ? before.slice(lastNewline + 1) : before;
18
- // Check for @event.modifier context
19
- const tokenMatch = linePrefix.match(/@[a-zA-Z0-9.:-]*$/);
20
- if (tokenMatch) {
21
- const token = tokenMatch[0];
22
- if (token === "@") {
23
- return { context: "event-name", eventPrefix: "" };
24
- }
25
- const withoutAt = token.slice(1);
26
- if (!withoutAt.includes(".")) {
27
- return { context: "event-name", eventPrefix: withoutAt.toLowerCase() };
28
- }
29
- const parts = withoutAt.split(".");
30
- const eventName = (parts[0] || "").toLowerCase();
31
- const trailingDot = token.endsWith(".");
32
- const modifierPrefix = trailingDot
33
- ? ""
34
- : (parts[parts.length - 1] || "").toLowerCase();
35
- return { context: "modifier", eventPrefix: eventName, modifierPrefix };
36
- }
37
- // Check for attribute name context
38
- const attrMatch = linePrefix.match(/[@a-zA-Z][a-zA-Z0-9.:-]*$/);
39
- if (attrMatch) {
40
- return { context: "attribute-name" };
41
- }
42
- return { context: "text" };
43
- }
44
- //# sourceMappingURL=scope.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"scope.js","sourceRoot":"","sources":["../../src/template/scope.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AAkBvD;;GAEG;AACH,MAAM,UAAU,gBAAgB,CAC9B,YAAoB,EACpB,YAAoB,EACpB,cAAiC,CAAC,MAAM,EAAE,KAAK,CAAC;IAEhD,IAAI,CAAC,sBAAsB,CAAC,YAAY,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE,CAAC;QACrE,OAAO,EAAE,OAAO,EAAE,kBAAkB,EAAE,CAAC;IACzC,CAAC;IAED,uCAAuC;IACvC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,CAAC;IACnD,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC7C,MAAM,UAAU,GAAG,WAAW,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAE7E,oCAAoC;IACpC,MAAM,UAAU,GAAG,UAAU,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACzD,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,KAAK,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,KAAK,KAAK,GAAG,EAAE,CAAC;YAClB,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC;QACpD,CAAC;QACD,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7B,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,CAAC,WAAW,EAAE,EAAE,CAAC;QACzE,CAAC;QACD,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACnC,MAAM,SAAS,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,cAAc,GAAG,WAAW;YAChC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;IACzE,CAAC;IAED,mCAAmC;IACnC,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC;IAChE,IAAI,SAAS,EAAE,CAAC;QACd,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC;IACvC,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;AAC7B,CAAC"}