@canonical/terrazzo-lsp 0.2.0 → 0.3.1

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.
package/README.md CHANGED
@@ -22,7 +22,7 @@ Language server providing CSS custom property intelligence for design token work
22
22
  ```bash
23
23
  bun run build:all
24
24
  npm install -D @canonical/design-tokens
25
- npx terrazzo-lsp install vscode
25
+ npx @canonical/terrazzo-lsp install vscode
26
26
  ```
27
27
 
28
28
  The `terrazzo-lsp` command is re-exported by `@canonical/design-tokens`, so
@@ -60,13 +60,30 @@ npx terrazzo-lsp graph <file> # Show import graph from a file
60
60
 
61
61
  ## Diagnostics Reference
62
62
 
63
- The LSP emits 14 diagnostic codes across two categories: **CSS** (in-file analysis) and **DTCG** (artifact-level validation). The example below triggers every CSS diagnostic:
63
+ The LSP emits 14 diagnostic codes. CSS diagnostics run on every CSS/SCSS file in the workspace. DTCG diagnostics run once when loading `tokens.json` artifacts and validate conformance to the [DTCG 2025.10](https://tr.designtokens.org/format/) specification. Every diagnostic can be configured to `"error"`, `"warning"`, `"info"`, or `"off"` in `terrazzo-lsp.config.json`.
64
+
65
+ | Code | Config Key | Default | Description |
66
+ |------|------------|---------|-------------|
67
+ | `css/unknown-var` | `unknownProperties` | off | A `var()` reference does not match any known custom property. |
68
+ | `css/missing-fallback` | `missingFallback` | warning | A `var()` reference to a non-artifact property has no fallback value and no `@property` registration. Skipped for artifact tokens since they are guaranteed to be defined. |
69
+ | `css/stale-fallback` | `staleFallback` | warning | The fallback literal in a `var()` does not match the token's current resolved value. |
70
+ | `css/type-mismatch` | `typeMismatch` | error | A token's DTCG type is incompatible with the CSS property (e.g. colour token in `padding`). |
71
+ | `css/type-uncertain` | `typeUncertain` | info | A typed token appears in a shorthand or context where multiple value types are acceptable. |
72
+ | `css/unreachable-token` | `unreachableToken` | warning | The token's artifact output file is not reachable through the `@import` graph or global stylesheets. |
73
+ | `css/primitive-token` | `primitiveToken` | warning | Direct usage of a primitive-tier token where a semantic alias should be preferred. |
74
+ | `css/scoped-usage` | `scopedDeclaration` | warning | A token declared under a specific selector scope is used in a broader scope. |
75
+ | `css/no-color-scheme` | `lightDarkNoScheme` | info | A `light-dark()` value is used without a `color-scheme` declaration on the selector or an ancestor. |
76
+ | `dtcg/broken-alias` | `brokenAlias` | error | An alias reference in the artifact points to a token ID that does not exist. |
77
+ | `dtcg/schema-violation` | `schemaViolation` | error | A token's value is invalid for its declared `$type` (e.g. `$type: color` with a non-colour value). |
78
+ | `dtcg/circular-alias` | `circularAlias` | error | The alias chain forms a cycle — a token ID appears more than once in the resolution path. |
79
+ | `dtcg/missing-type` | `inferredType` | info | A token has no explicit `$type` and its type is ambiguous. |
80
+ | `dtcg/draft-syntax` | `draftFormat` | info | A token uses pre-standardisation draft field syntax (`value`/`type` without `$` prefix). |
81
+
82
+ ### CSS diagnostics example
83
+
84
+ The example below triggers every CSS diagnostic in one file:
64
85
 
65
86
  ```css
66
- /* ──────────────────────────────────────────────────────────
67
- Example: every terrazzo-lsp CSS diagnostic in one file
68
- ────────────────────────────────────────────────────────── */
69
-
70
87
  /* Assume the following tokens exist in the artifact:
71
88
  * --color-fg : oklch(17.2% 0 0) tier: semantic, type: color
72
89
  * --spacing-sm : 0.5rem tier: semantic, type: dimension
@@ -75,97 +92,73 @@ The LSP emits 14 diagnostic codes across two categories: **CSS** (in-file analys
75
92
  * --unreachable-token : 1rem (in a file not imported by this sheet)
76
93
  */
77
94
 
78
- /* css/unknown-var (off by default enable via config)
79
- * A var() reference that does not match any known custom property. */
80
- .unknown {
81
- margin: var(--does-not-exist);
82
- }
95
+ /* css/unknown-var off by default, enable via config */
96
+ .unknown { margin: var(--does-not-exist); }
83
97
 
84
- /* css/missing-fallback
85
- * A var() reference to a non-artifact property with no fallback value
86
- * and no @property registration. */
87
- .missing-fb {
88
- padding: var(--local-pad);
89
- }
98
+ /* css/missing-fallback — no fallback for a non-artifact property */
99
+ .missing { padding: var(--local-pad); }
90
100
 
91
- /* css/stale-fallback
92
- * The fallback literal no longer matches the token's resolved value. */
93
- .stale-fb {
94
- gap: var(--spacing-sm, 16px); /* actual resolved value is 0.5rem, not 16px */
95
- }
101
+ /* css/stale-fallback — resolved value is 0.5rem, not 16px */
102
+ .stale { gap: var(--spacing-sm, 16px); }
96
103
 
97
- /* css/type-mismatch
98
- * A token's DTCG type is incompatible with the CSS property's
99
- * expected value type (e.g. color token in a length context). */
100
- .type-err {
101
- width: var(--color-fg); /* color token used where <length> is expected */
102
- }
104
+ /* css/type-mismatch — colour token in a length context */
105
+ .type-err { width: var(--color-fg); }
103
106
 
104
- /* css/type-uncertain
105
- * A typed token appears in a shorthand or context where multiple
106
- * value types are acceptable — the LSP cannot confirm correctness. */
107
- .type-warn {
108
- background: var(--spacing-sm); /* dimension token in a shorthand that accepts many types */
109
- }
107
+ /* css/type-uncertain — dimension in a shorthand accepting many types */
108
+ .type-warn { background: var(--spacing-sm); }
110
109
 
111
- /* css/unreachable-token
112
- * The token's artifact output file is not reachable through this
113
- * file's @import graph. */
114
- .unreachable {
115
- margin: var(--unreachable-token);
116
- }
110
+ /* css/unreachable-token — output file not in @import graph */
111
+ .unreach { margin: var(--unreachable-token); }
117
112
 
118
- /* css/primitive-token
119
- * Direct use of a primitive-tier token. Prefer semantic aliases. */
120
- .primitive {
121
- color: var(--color-palette-blue);
122
- }
113
+ /* css/primitive-token — prefer semantic alias */
114
+ .primitive { color: var(--color-palette-blue); }
123
115
 
124
- /* css/scoped-usage
125
- * The token is declared under a specific selector scope (e.g. .button)
126
- * but is referenced outside that scope. */
127
- .card {
128
- padding: var(--button-pad); /* --button-pad is scoped to .button */
129
- }
116
+ /* css/scoped-usage — --button-pad is scoped to .button */
117
+ .card { padding: var(--button-pad); }
118
+
119
+ /* css/no-color-scheme — light-dark() without color-scheme */
120
+ .no-scheme { color: light-dark(black, white); }
121
+ ```
122
+
123
+ ### DTCG diagnostics example
124
+
125
+ DTCG diagnostics surface problems in the token definitions themselves. These appear on the `tokens.json` artifact entry, not in CSS files:
126
+
127
+ ```jsonc
128
+ {
129
+ // dtcg/broken-alias — alias target does not exist
130
+ "color.ghost": { "aliasChain": ["color.nonexistent"], "type": "color" },
131
+
132
+ // dtcg/schema-violation — "not-a-colour" is not a valid CSS colour
133
+ "color.invalid": { "valueLight": "not-a-colour", "type": "color" },
130
134
 
131
- /* ⑨ css/no-color-scheme
132
- * A light-dark() function is used without a color-scheme property
133
- * on the same selector or an ancestor. */
134
- .no-scheme {
135
- color: light-dark(black, white); /* no color-scheme declared */
135
+ // dtcg/circular-alias — loop-a → loop-b → loop-a
136
+ "color.loop-a": { "aliasChain": ["color.loop-b", "color.loop-a"], "type": "color" },
137
+
138
+ // dtcg/missing-type — no $type field, type is ambiguous
139
+ "spacing.bare": { "valueLight": "4px", "type": null },
140
+
141
+ // dtcg/draft-syntax — uses pre-standard value/type without $ prefix
142
+ "color.legacy": { "type": "color", "extensions": { "com.terrazzo.draft-syntax": true } }
136
143
  }
144
+ ```
145
+
146
+ ### Suppression syntax
137
147
 
138
- /* ──────────────────────────────────────────────────────────
139
- Suppression syntax
140
- ────────────────────────────────────────────────────────── */
148
+ Diagnostics can be suppressed inline with comments:
141
149
 
150
+ ```css
142
151
  /* Disable all checks for a region: */
143
152
  /* terrazzo-lsp-disable */
144
- .suppressed {
145
- width: var(--color-fg); /* no diagnostic — all checks disabled */
146
- }
153
+ .suppressed { width: var(--color-fg); }
147
154
  /* terrazzo-lsp-enable */
148
155
 
149
156
  /* Disable a specific code for the next line: */
150
157
  /* terrazzo-lsp-disable css/primitive-token */
151
- .selective {
152
- color: var(--color-palette-blue); /* no diagnostic — primitive check disabled */
153
- }
158
+ .selective { color: var(--color-palette-blue); }
154
159
  /* terrazzo-lsp-enable css/primitive-token */
155
160
  ```
156
161
 
157
- ### DTCG Diagnostics (artifact-level)
158
-
159
- These are emitted once when loading `tokens.json` artifacts, not per CSS file. They validate that the design token definitions conform to the [DTCG 2025.10](https://tr.designtokens.org/format/) specification.
160
-
161
- | Code | Default Severity | Trigger |
162
- |------|-----------------|---------|
163
- | `dtcg/broken-alias` | Error | An `{alias.path}` reference points to a token ID that does not exist in any loaded artifact. |
164
- | `dtcg/schema-violation` | Error | A token's value is invalid for its declared `$type` — e.g. `$type: color` with a value that is not a valid CSS colour, or `$type: dimension` with a value that cannot be resolved to a length/percentage. |
165
- | `dtcg/circular-alias` | Error | The alias chain for a token forms a cycle (a token ID appears more than once in the resolution path). |
166
- | `dtcg/missing-type` | Warning | Token has no `$type` field and cannot inherit one from a parent group. The resolved type is ambiguous. |
167
- | `dtcg/draft-syntax` | Info | Token uses pre-standardisation draft field syntax (`value`/`type` without the `$` prefix) or has an empty token ID, suggesting it was authored before the DTCG standard was finalised. |
168
-
169
162
  ## Configuration
170
163
 
171
164
  Create a `terrazzo-lsp.config.json` in your workspace root:
@@ -185,7 +178,67 @@ degraded startup, pass `--allow-degraded`.
185
178
  { "artifacts": ["@canonical/design-tokens/dist/tokens.json"] }
186
179
  ```
187
180
 
188
- See the root repository README for the full configuration reference.
181
+ ### Full configuration reference
182
+
183
+ ```json
184
+ {
185
+ "artifacts": [],
186
+ "distDir": "dist",
187
+ "scanGlobs": ["src/**/*.css", "src/**/*.scss"],
188
+ "globalStylesheets": null,
189
+ "diagnostics": {
190
+ "unknownProperties": "off",
191
+ "missingFallback": "warning",
192
+ "staleFallback": "warning",
193
+ "typeMismatch": "error",
194
+ "typeUncertain": "info",
195
+ "unreachableToken": "warning",
196
+ "primitiveToken": "warning",
197
+ "scopedDeclaration": "warning",
198
+ "lightDarkNoScheme": "info",
199
+ "brokenAlias": "error",
200
+ "schemaViolation": "error",
201
+ "circularAlias": "error",
202
+ "inferredType": "info",
203
+ "draftFormat": "info",
204
+ "ignoreGlobs": []
205
+ },
206
+ "hover": {
207
+ "showColourSwatches": true,
208
+ "showSelectorContext": true,
209
+ "showProvenanceBadge": true,
210
+ "showAliasChain": true,
211
+ "showSourceLocation": true,
212
+ "showNavigationTier": true,
213
+ "showSpecReferences": true
214
+ },
215
+ "inlayHints": {
216
+ "enabled": false,
217
+ "showColourSwatches": true
218
+ },
219
+ "logLevel": "info"
220
+ }
221
+ ```
222
+
223
+ | Key | Description |
224
+ |-----|-------------|
225
+ | `artifacts` | Paths to `tokens.json` build artifacts. Bare specifiers resolve through `node_modules/`. Relative paths must start with `./` or `../`. |
226
+ | `distDir` | Directory containing `*.css.map` files for source-mapping. |
227
+ | `scanGlobs` | Glob patterns for CSS/SCSS files to scan for diagnostics. |
228
+ | `globalStylesheets` | CSS files implicitly reachable from every document. `null` means auto-derive from the artifact. |
229
+ | `diagnostics` | Per-diagnostic severity overrides. Values: `"error"`, `"warning"`, `"info"`, `"off"`. |
230
+ | `diagnostics.ignoreGlobs` | Glob patterns for files excluded from diagnostics. |
231
+ | `hover` | Toggle individual sections of the hover popup. |
232
+ | `inlayHints` | Inlay hint display (disabled by default). |
233
+ | `logLevel` | Server log verbosity: `"off"`, `"error"`, `"warn"`, `"info"`, `"debug"`. |
234
+
235
+ ### VS Code extension settings
236
+
237
+ | Setting | Default | Description |
238
+ |---------|---------|-------------|
239
+ | `terrazzo-lsp.serverPath` | `""` | Path to `dist/esm/cli.js`. If empty, uses the bundled server. |
240
+ | `terrazzo-lsp.runtime` | `""` | Runtime override. Empty = auto-detect (`bun` preferred, `node >= 22` fallback). |
241
+ | `terrazzo-lsp.trace.server` | `"off"` | `"off"` shows startup summary only. `"verbose"` adds per-request traces to the output channel. |
189
242
 
190
243
  ## Development
191
244
 
@@ -5,6 +5,7 @@
5
5
  * then tail-calls `run()`.
6
6
  */
7
7
  import startLspServer from "../runtime/startLspServer.js";
8
+ import { VERSION } from "../version.js";
8
9
  import { printHelp } from "./printHelp.js";
9
10
  import { runCheck } from "./runCheck.js";
10
11
  import { runGraph } from "./runGraph.js";
@@ -52,7 +53,7 @@ async function run() {
52
53
  break;
53
54
  case "--version":
54
55
  case "-v":
55
- console.log("terrazzo-lsp 0.1.0");
56
+ console.log(`terrazzo-lsp ${VERSION}`);
56
57
  break;
57
58
  default:
58
59
  console.error(`Unknown command: ${command}`);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;AAC/E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAChE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B;;;;;GAKG;AACH,KAAK,UAAU,GAAG;IAChB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,OAAO;YACV,cAAc,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YAC3C,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,SAAS,EAAE,CAAC;YACZ,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAClC,MAAM;QACR;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,KAAK,GAAG,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,cAAc,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,kBAAkB,CAAC,CAAC;AAC/E,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;AAChE,MAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC;AACrC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;AAE9B;;;;;GAKG;AACH,KAAK,UAAU,GAAG;IAChB,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,SAAS,CAAC;QACf,KAAK,OAAO;YACV,cAAc,CAAC,OAAO,EAAE,EAAE,aAAa,EAAE,CAAC,CAAC;YAC3C,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACvC,MAAM;QACR,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;YACzB,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,OAAO;YACV,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACjC,MAAM;QACR,KAAK,SAAS;YACZ,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;YACnC,MAAM;QACR,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,SAAS,EAAE,CAAC;YACZ,MAAM;QACR,KAAK,WAAW,CAAC;QACjB,KAAK,IAAI;YACP,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,EAAE,CAAC,CAAC;YACvC,MAAM;QACR;YACE,OAAO,CAAC,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;YAC7C,SAAS,EAAE,CAAC;YACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAED,KAAK,GAAG,EAAE,CAAC"}
@@ -10,7 +10,8 @@ export default async function findBundledVsixPath(packageRoot) {
10
10
  const fileNames = await fs.readdir(extensionDir);
11
11
  const vsixName = [...fileNames]
12
12
  .filter((fileName) => /^terrazzo-lsp-.*\.vsix$/u.test(fileName))
13
- .sort()[0];
13
+ .sort()
14
+ .pop();
14
15
  return vsixName ? join(extensionDir, vsixName) : null;
15
16
  }
16
17
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"findBundledVsixPath.js","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sEAAsE;AACtE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,CAC/C,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;aAC5B,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/D,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAEb,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"findBundledVsixPath.js","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,sEAAsE;AACtE,MAAM,CAAC,OAAO,CAAC,KAAK,UAAU,mBAAmB,CAC/C,WAAmB;IAEnB,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,CAAC;aAC5B,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC/D,IAAI,EAAE;aACN,GAAG,EAAE,CAAC;QAET,OAAO,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IACxD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * @note impure — reads process.pid, accesses process.version, creates graph worker.
3
3
  */
4
+ import { VERSION } from "../../version.js";
4
5
  import createGraphWorker from "../createGraphWorker.js";
5
6
  import getServerCapabilities from "../getServerCapabilities.js";
6
7
  import handleWorkerResponse from "./handleWorkerResponse.js";
@@ -28,7 +29,7 @@ export default async function routeLspRequest(state, message, transport) {
28
29
  state.initialized = true;
29
30
  transport.sendResponse(id, {
30
31
  capabilities: getServerCapabilities(state.allowDegraded),
31
- serverInfo: { name: "terrazzo-lsp", version: "0.1.0" },
32
+ serverInfo: { name: "terrazzo-lsp", version: VERSION },
32
33
  });
33
34
  return;
34
35
  }
@@ -1 +1 @@
1
- {"version":3,"file":"routeLspRequest.js","sourceRoot":"","sources":["../../../../src/runtime/dispatch/routeLspRequest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routeLspRequest.js","sourceRoot":"","sources":["../../../../src/runtime/dispatch/routeLspRequest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import { createRequire } from "node:module";
2
+ const require = createRequire(import.meta.url);
3
+ const pkg = require("../package.json");
4
+ /** The version string from the package's own package.json. */
5
+ export const VERSION = pkg.version;
6
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE5C,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAwB,CAAC;AAE9D,8DAA8D;AAC9D,MAAM,CAAC,MAAM,OAAO,GAAW,GAAG,CAAC,OAAO,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"findBundledVsixPath.d.ts","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAMA,sEAAsE;AACtE,wBAA8B,mBAAmB,CAC/C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAaxB"}
1
+ {"version":3,"file":"findBundledVsixPath.d.ts","sourceRoot":"","sources":["../../../src/extension/findBundledVsixPath.ts"],"names":[],"mappings":"AAMA,sEAAsE;AACtE,wBAA8B,mBAAmB,CAC/C,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAcxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"routeLspRequest.d.ts","sourceRoot":"","sources":["../../../../src/runtime/dispatch/routeLspRequest.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EACd,YAAY,EAEb,MAAM,YAAY,CAAC;AAEpB,wBAA8B,eAAe,CAC3C,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC,CA6Mf"}
1
+ {"version":3,"file":"routeLspRequest.d.ts","sourceRoot":"","sources":["../../../../src/runtime/dispatch/routeLspRequest.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAEV,UAAU,EACV,cAAc,EACd,YAAY,EAEb,MAAM,YAAY,CAAC;AAEpB,wBAA8B,eAAe,CAC3C,KAAK,EAAE,cAAc,EACrB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,YAAY,GACtB,OAAO,CAAC,IAAI,CAAC,CA6Mf"}
@@ -0,0 +1,3 @@
1
+ /** The version string from the package's own package.json. */
2
+ export declare const VERSION: string;
3
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAKA,8DAA8D;AAC9D,eAAO,MAAM,OAAO,EAAE,MAAoB,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@canonical/terrazzo-lsp",
3
- "version": "0.2.0",
3
+ "version": "0.3.1",
4
4
  "description": "Language server providing CSS custom property intelligence for design token workflows. Includes completions, hover, diagnostics, go-to-definition, rename, document colours, and workspace symbols.",
5
5
  "type": "module",
6
6
  "license": "LGPL-3.0",
@@ -39,8 +39,8 @@
39
39
  "extension/terrazzo-lsp-*.vsix"
40
40
  ],
41
41
  "scripts": {
42
- "build": "bun run build:tsc",
43
- "build:all": "bun run build && bun run build:extension",
42
+ "build": "bun run build:tsc && bun run build:extension",
43
+ "build:all": "bun run build",
44
44
  "build:tsc": "tsc -p tsconfig.build.json",
45
45
  "build:extension": "cd extension && bun run package",
46
46
  "check": "bun run check:biome && bun run check:ts && bun run check:webarchitect",
@@ -54,7 +54,7 @@
54
54
  "test:coverage": "vitest run --coverage"
55
55
  },
56
56
  "dependencies": {
57
- "@canonical/token-types": "^0.2.0",
57
+ "@canonical/token-types": "^0.3.1",
58
58
  "@lezer/common": "^1.3.0",
59
59
  "@lezer/css": "^1.3.0",
60
60
  "colorjs.io": "^0.6.1"
Binary file