css-variable-lsp 1.0.12 → 1.0.14

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.
@@ -0,0 +1,5 @@
1
+ :root {
2
+ --primary: #ff0000;
3
+ --x: var(--primary);
4
+ --secondary-color: #00ff00;
5
+ }
@@ -0,0 +1,17 @@
1
+ <template>
2
+ <div class="container" style="color: var(--vue-color); background: var(--vue-bg);">
3
+ Vue example
4
+ </div>
5
+ </template>
6
+
7
+ <style>
8
+ :root {
9
+ --vue-color: #e11d48;
10
+ --vue-bg: #ffe4e6;
11
+ }
12
+
13
+ .container {
14
+ padding: 1rem;
15
+ border: 1px solid var(--vue-color);
16
+ }
17
+ </style>
@@ -15,7 +15,7 @@ function collectDocumentColors(document, cssVariableManager, options) {
15
15
  if (!options.onlyVariables) {
16
16
  const definitions = cssVariableManager.getDocumentDefinitions(document.uri);
17
17
  for (const def of definitions) {
18
- const color = (0, colorService_1.parseColor)(def.value);
18
+ const color = (0, colorService_1.parseColor)(def.value, { allowNamedColors: true });
19
19
  if (color) {
20
20
  // Use the stored valueRange if available (accurate from csstree parsing)
21
21
  if (def.valueRange) {
@@ -50,7 +50,7 @@ function collectDocumentColors(document, cssVariableManager, options) {
50
50
  }
51
51
  // 2. Check variable usages: var(--my-color)
52
52
  // Always show color boxes on var() usages (resolved CSS variable color)
53
- const regex = /var\((--[\w-]+)\)/g;
53
+ const regex = /var\(\s*(--[\w-]+)\s*(?:,\s*[^)]+)?\s*\)/g;
54
54
  let match;
55
55
  while ((match = regex.exec(text)) !== null) {
56
56
  const varName = match[1];
@@ -64,7 +64,42 @@ function collectDocumentColors(document, cssVariableManager, options) {
64
64
  });
65
65
  }
66
66
  }
67
- return colors;
67
+ // 3. Deduplicate overlapping same-color ranges to avoid double boxes.
68
+ const uniqueColors = [];
69
+ const uniqueOffsets = [];
70
+ for (const colorInfo of colors) {
71
+ const start = document.offsetAt(colorInfo.range.start);
72
+ const end = document.offsetAt(colorInfo.range.end);
73
+ let isDuplicate = false;
74
+ for (let i = 0; i < uniqueOffsets.length; i++) {
75
+ const existing = uniqueOffsets[i];
76
+ if (colorsEqual(existing.color, colorInfo.color) &&
77
+ rangesOverlap(existing.start, existing.end, start, end)) {
78
+ const existingLen = existing.end - existing.start;
79
+ const currentLen = end - start;
80
+ if (currentLen < existingLen) {
81
+ uniqueOffsets[i] = { start, end, color: colorInfo.color };
82
+ uniqueColors[i] = colorInfo;
83
+ }
84
+ isDuplicate = true;
85
+ break;
86
+ }
87
+ }
88
+ if (!isDuplicate) {
89
+ uniqueOffsets.push({ start, end, color: colorInfo.color });
90
+ uniqueColors.push(colorInfo);
91
+ }
92
+ }
93
+ return uniqueColors;
94
+ }
95
+ function colorsEqual(a, b) {
96
+ return (a.red === b.red &&
97
+ a.green === b.green &&
98
+ a.blue === b.blue &&
99
+ a.alpha === b.alpha);
100
+ }
101
+ function rangesOverlap(aStart, aEnd, bStart, bEnd) {
102
+ return aStart < bEnd && bStart < aEnd;
68
103
  }
69
104
  function collectColorPresentations(range, color, enabled) {
70
105
  if (!enabled) {
@@ -1 +1 @@
1
- {"version":3,"file":"colorProvider.js","sourceRoot":"","sources":["../src/colorProvider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"colorProvider.js","sourceRoot":"","sources":["../src/colorProvider.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,9 @@ exports.formatColorAsRgb = formatColorAsRgb;
7
7
  exports.formatColorAsHsl = formatColorAsHsl;
8
8
  /**
9
9
  * Parse a CSS color string into an LSP Color object.
10
- * Supports hex, rgb, rgba, hsl, hsla, and named colors.
10
+ * Supports hex, rgb, rgba, hsl, hsla. Named colors are optional.
11
11
  */
12
- function parseColor(value) {
12
+ function parseColor(value, options = {}) {
13
13
  value = value.trim().toLowerCase();
14
14
  // Hex
15
15
  if (value.startsWith("#")) {
@@ -23,8 +23,11 @@ function parseColor(value) {
23
23
  if (value.startsWith("hsl")) {
24
24
  return parseHsl(value);
25
25
  }
26
- // Named colors
27
- return parseNamedColor(value);
26
+ // Named colors (optional)
27
+ if (options.allowNamedColors) {
28
+ return parseNamedColor(value);
29
+ }
30
+ return null;
28
31
  }
29
32
  /**
30
33
  * Format an LSP Color object back into a CSS string.
@@ -1 +1 @@
1
- {"version":3,"file":"colorService.js","sourceRoot":"","sources":["../src/colorService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"colorService.js","sourceRoot":"","sources":["../src/colorService.ts"],"names":[],"mappings":"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"}
@@ -40,6 +40,14 @@ const EXTENSION_LANGUAGE_MAP = new Map([
40
40
  [".astro", "html"],
41
41
  [".ripple", "html"],
42
42
  ]);
43
+ const HTML_LIKE_LANGUAGE_IDS = new Set([
44
+ "html",
45
+ "vue",
46
+ "svelte",
47
+ "astro",
48
+ "ripple",
49
+ ]);
50
+ const CSS_LANGUAGE_IDS = new Set(["css", "scss", "sass", "less"]);
43
51
  function normalizeGlobPattern(pattern) {
44
52
  return pattern.replace(/\\/g, "/").trim();
45
53
  }
@@ -63,6 +71,14 @@ function extractExtensions(pattern) {
63
71
  const ext = path.extname(pattern);
64
72
  return ext ? [ext] : [];
65
73
  }
74
+ function normalizeUri(uri) {
75
+ try {
76
+ return vscode_uri_1.URI.parse(uri).toString().toLowerCase();
77
+ }
78
+ catch (e) {
79
+ return uri.toLowerCase();
80
+ }
81
+ }
66
82
  class CssVariableManager {
67
83
  variables = new Map();
68
84
  usages = new Map();
@@ -113,6 +129,16 @@ class CssVariableManager {
113
129
  }
114
130
  return this.lookupExtensions.get(ext) ?? null;
115
131
  }
132
+ resolveDocumentLanguageId(languageId, uri) {
133
+ if (HTML_LIKE_LANGUAGE_IDS.has(languageId)) {
134
+ return "html";
135
+ }
136
+ if (CSS_LANGUAGE_IDS.has(languageId)) {
137
+ return languageId;
138
+ }
139
+ const filePath = vscode_uri_1.URI.parse(uri).fsPath;
140
+ return this.resolveLanguageId(filePath) ?? languageId;
141
+ }
116
142
  /**
117
143
  * Scan all CSS and HTML files in the workspace
118
144
  * @param workspaceFolders Array of workspace folder URIs
@@ -162,9 +188,10 @@ class CssVariableManager {
162
188
  this.parseContent(document.getText(), document.uri, document.languageId);
163
189
  }
164
190
  parseContent(text, uri, languageId) {
165
- // Clear existing variables and usages for this document
166
- this.removeFile(uri);
167
- if (languageId === "html") {
191
+ const normalizedUri = normalizeUri(uri);
192
+ this.removeFile(normalizedUri);
193
+ const resolvedLanguageId = this.resolveDocumentLanguageId(languageId, normalizedUri);
194
+ if (resolvedLanguageId === "html") {
168
195
  // Build DOM tree for HTML documents
169
196
  try {
170
197
  const domTree = new domTree_1.DOMTree(text);
@@ -184,7 +211,7 @@ class CssVariableManager {
184
211
  style: true, // Keep style as block text so we can extract content
185
212
  },
186
213
  });
187
- const document = vscode_languageserver_textdocument_1.TextDocument.create(uri, languageId, 1, text);
214
+ const document = vscode_languageserver_textdocument_1.TextDocument.create(uri, resolvedLanguageId, 1, text);
188
215
  // Parse <style> blocks
189
216
  const styleElements = root.querySelectorAll("style");
190
217
  for (const styleEl of styleElements) {
@@ -225,7 +252,7 @@ class CssVariableManager {
225
252
  }
226
253
  else {
227
254
  // CSS, SCSS, SASS, LESS
228
- const document = vscode_languageserver_textdocument_1.TextDocument.create(uri, languageId, 1, text);
255
+ const document = vscode_languageserver_textdocument_1.TextDocument.create(uri, resolvedLanguageId, 1, text);
229
256
  this.parseCssText(text, uri, document, 0);
230
257
  }
231
258
  }
@@ -485,28 +512,31 @@ class CssVariableManager {
485
512
  }
486
513
  }
487
514
  removeFile(uri) {
488
- this.clearDocumentVariables(uri);
489
- this.clearDocumentUsages(uri);
490
- this.clearDocumentDOMTree(uri);
515
+ const normalizedUri = normalizeUri(uri);
516
+ this.clearDocumentVariables(normalizedUri);
517
+ this.clearDocumentUsages(normalizedUri);
518
+ this.clearDocumentDOMTree(normalizedUri);
491
519
  }
492
520
  clearDocumentVariables(uri) {
521
+ const normalizedUri = normalizeUri(uri);
493
522
  for (const [name, vars] of this.variables.entries()) {
494
- const filtered = vars.filter((v) => v.uri !== uri);
523
+ const filtered = vars.filter((v) => normalizeUri(v.uri) !== normalizedUri);
495
524
  if (filtered.length === 0) {
496
525
  this.variables.delete(name);
497
526
  }
498
- else {
527
+ else if (filtered.length !== vars.length) {
499
528
  this.variables.set(name, filtered);
500
529
  }
501
530
  }
502
531
  }
503
532
  clearDocumentUsages(uri) {
533
+ const normalizedUri = normalizeUri(uri);
504
534
  for (const [name, usgs] of this.usages.entries()) {
505
- const filtered = usgs.filter((u) => u.uri !== uri);
535
+ const filtered = usgs.filter((u) => normalizeUri(u.uri) !== normalizedUri);
506
536
  if (filtered.length === 0) {
507
537
  this.usages.delete(name);
508
538
  }
509
- else {
539
+ else if (filtered.length !== usgs.length) {
510
540
  this.usages.set(name, filtered);
511
541
  }
512
542
  }
@@ -519,6 +549,7 @@ class CssVariableManager {
519
549
  for (const vars of this.variables.values()) {
520
550
  allVars.push(...vars);
521
551
  }
552
+ // this.logger.log(`[css-lsp] getAllVariables: returning ${allVars.length} variables`);
522
553
  return allVars;
523
554
  }
524
555
  getVariables(name) {
@@ -545,8 +576,9 @@ class CssVariableManager {
545
576
  * Get all variable definitions in a specific document (for document symbols)
546
577
  */
547
578
  getDocumentDefinitions(uri) {
579
+ const normalizedUri = normalizeUri(uri);
548
580
  const allVars = this.getAllVariables();
549
- return allVars.filter((v) => v.uri === uri);
581
+ return allVars.filter((v) => normalizeUri(v.uri) === normalizedUri);
550
582
  }
551
583
  /**
552
584
  * Get the DOM tree for a document (if it's HTML)
@@ -595,11 +627,11 @@ class CssVariableManager {
595
627
  const variable = sortedVars[0];
596
628
  let value = variable.value;
597
629
  // Check if it's a reference to another variable
598
- const match = value.match(/^var\((--[\w-]+)\)$/);
599
- if (match) {
600
- return this.resolveVariableColor(match[1], context, seen);
630
+ const recursiveMatch = value.match(/var\(\s*(--[\w-]+)\s*(?:,\s*[^)]+)?\s*\)/);
631
+ if (recursiveMatch) {
632
+ return this.resolveVariableColor(recursiveMatch[1], context, seen);
601
633
  }
602
- return (0, colorService_1.parseColor)(value);
634
+ return (0, colorService_1.parseColor)(value, { allowNamedColors: true });
603
635
  }
604
636
  }
605
637
  exports.CssVariableManager = CssVariableManager;
@@ -1 +1 @@
1
- {"version":3,"file":"cssVariableManager.js","sourceRoot":"","sources":["../src/cssVariableManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cssVariableManager.js","sourceRoot":"","sources":["../src/cssVariableManager.ts"],"names":[],"mappings":";;;AAAA,qDAAmD;AACnD,2FAAkE;AAClE,2CAAiC;AACjC,+BAA4B;AAC5B,yBAAyB;AACzB,oCAAoC;AACpC,uCAAiD;AACjD,uDAAyC;AAEzC,iDAA4C;AAC5C,+CAAyE;AACzE,6BAA6B;AA6B7B,MAAM,oBAAoB,GAAG;IAC3B,UAAU;IACV,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;IACX,UAAU;IACV,aAAa;IACb,YAAY;IACZ,aAAa;CACd,CAAC;AAEF,MAAM,oBAAoB,GAAG;IAC3B,oBAAoB;IACpB,YAAY;IACZ,WAAW;IACX,YAAY;CACb,CAAC;AAEF,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAiB;IACrD,CAAC,MAAM,EAAE,KAAK,CAAC;IACf,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,OAAO,EAAE,MAAM,CAAC;IACjB,CAAC,MAAM,EAAE,MAAM,CAAC;IAChB,CAAC,SAAS,EAAE,MAAM,CAAC;IACnB,CAAC,QAAQ,EAAE,MAAM,CAAC;IAClB,CAAC,SAAS,EAAE,MAAM,CAAC;CACpB,CAAC,CAAC;AAEH,MAAM,sBAAsB,GAAG,IAAI,GAAG,CAAC;IACrC,MAAM;IACN,KAAK;IACL,QAAQ;IACR,OAAO;IACP,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAElE,SAAS,oBAAoB,CAAC,OAAe;IAC3C,OAAO,OAAO,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AAC5C,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAgB;IACzC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,KAAK;SACT,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;SACzC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvC,CAAC;AAED,SAAS,iBAAiB,CAAC,OAAe;IACxC,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IAChD,IAAI,UAAU,EAAE,CAAC;QACf,OAAO,UAAU,CAAC,CAAC,CAAC;aACjB,KAAK,CAAC,GAAG,CAAC;aACV,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;aACxB,MAAM,CAAC,OAAO,CAAC;aACf,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;IAC3D,CAAC;IAED,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,YAAY,CAAC,GAAW;IAC/B,IAAI,CAAC;QACH,OAAO,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,CAAC;IACjD,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;IAC3B,CAAC;AACH,CAAC;AAED,MAAa,kBAAkB;IACrB,SAAS,GAA+B,IAAI,GAAG,EAAE,CAAC;IAClD,MAAM,GAAoC,IAAI,GAAG,EAAE,CAAC;IACpD,QAAQ,GAAyB,IAAI,GAAG,EAAE,CAAC,CAAC,kBAAkB;IAC9D,MAAM,CAAS;IACf,WAAW,CAAW;IACtB,WAAW,CAAW;IACtB,gBAAgB,CAAsB;IAE9C,YAAY,MAAe,EAAE,WAAsB,EAAE,WAAsB;QACzE,IAAI,CAAC,MAAM,GAAG,MAAM,IAAI;YACtB,GAAG,EAAE,CAAC,OAAe,EAAE,EAAE;gBACvB,oCAAoC;gBACpC,IAAI,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;oBAC9B,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACvB,CAAC;YACH,CAAC;YACD,KAAK,EAAE,CAAC,OAAe,EAAE,EAAE;gBACzB,oBAAoB;gBACpB,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;SACF,CAAC;QACF,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAC7D,MAAM,qBAAqB,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAE7D,IAAI,CAAC,WAAW;YACd,qBAAqB,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC;gBACvD,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,oBAAoB,CAAC;QAC3B,IAAI,CAAC,WAAW;YACd,qBAAqB,IAAI,qBAAqB,CAAC,MAAM,GAAG,CAAC;gBACvD,CAAC,CAAC,qBAAqB;gBACvB,CAAC,CAAC,oBAAoB,CAAC;QAC3B,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACvE,CAAC;IAEO,qBAAqB,CAAC,WAAqB;QACjD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAC;QAC7C,KAAK,MAAM,OAAO,IAAI,WAAW,EAAE,CAAC;YAClC,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC7C,MAAM,UAAU,GAAG,sBAAsB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC;gBAC5D,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,iBAAiB,CAAC,QAAgB;QACxC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACnC,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;IAChD,CAAC;IAEO,yBAAyB,CAAC,UAAkB,EAAE,GAAW;QAC/D,IAAI,sBAAsB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,IAAI,gBAAgB,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YACrC,OAAO,UAAU,CAAC;QACpB,CAAC;QAED,MAAM,QAAQ,GAAG,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QACvC,OAAO,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,UAAU,CAAC;IACxD,CAAC;IAED;;;;OAIG;IACI,KAAK,CAAC,aAAa,CACxB,gBAA0B,EAC1B,UAAqD;QAErD,4CAA4C;QAC5C,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,KAAK,MAAM,MAAM,IAAI,gBAAgB,EAAE,CAAC;YACtC,MAAM,SAAS,GAAG,gBAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,UAAU,GAAG,SAAS,CAAC,MAAM,CAAC;YAEpC,yDAAyD;YACzD,MAAM,KAAK,GAAG,MAAM,IAAA,WAAI,EAAC,IAAI,CAAC,WAAW,EAAE;gBACzC,GAAG,EAAE,UAAU;gBACf,MAAM,EAAE,IAAI,CAAC,WAAW;gBACxB,QAAQ,EAAE,IAAI;aACf,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,qBAAqB,MAAM,WAAW,KAAK,CAAC,MAAM,QAAQ,CAC3D,CAAC;YACF,QAAQ,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QAC1B,CAAC;QAED,MAAM,UAAU,GAAG,QAAQ,CAAC,MAAM,CAAC;QACnC,IAAI,cAAc,GAAG,CAAC,CAAC;QAEvB,0CAA0C;QAC1C,KAAK,MAAM,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACnD,MAAM,OAAO,GAAG,gBAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC;gBAE9C,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;gBACpD,IAAI,CAAC,UAAU,EAAE,CAAC;oBAChB,SAAS;gBACX,CAAC;gBAED,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;YAClD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,iCAAiC,QAAQ,KAAK,KAAK,EAAE,CACtD,CAAC;YACJ,CAAC;YAED,cAAc,EAAE,CAAC;YAEjB,+CAA+C;YAC/C,IACE,UAAU;gBACV,CAAC,cAAc,GAAG,EAAE,KAAK,CAAC,IAAI,cAAc,KAAK,UAAU,CAAC,EAC5D,CAAC;gBACD,UAAU,CAAC,cAAc,EAAE,UAAU,CAAC,CAAC;YACzC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,gDAAgD,UAAU,SAAS,CACpE,CAAC;IACJ,CAAC;IAEM,aAAa,CAAC,QAAsB;QACzC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC3E,CAAC;IAEM,YAAY,CAAC,IAAY,EAAE,GAAW,EAAE,UAAkB;QAC/D,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;QAE/B,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CACvD,UAAU,EACV,aAAa,CACd,CAAC;QAEF,IAAI,kBAAkB,KAAK,MAAM,EAAE,CAAC;YAClC,oCAAoC;YACpC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,IAAI,iBAAO,CAAC,IAAI,CAAC,CAAC;gBAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,0BAA0B,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;YAC/D,CAAC;YAED,iEAAiE;YACjE,IAAI,CAAC;gBACH,MAAM,IAAI,GAAG,IAAA,wBAAK,EAAC,IAAI,EAAE;oBACvB,gBAAgB,EAAE,IAAI;oBACtB,OAAO,EAAE,KAAK,EAAE,iCAAiC;oBACjD,iBAAiB,EAAE;wBACjB,MAAM,EAAE,IAAI;wBACZ,QAAQ,EAAE,IAAI;wBACd,KAAK,EAAE,IAAI,EAAE,qDAAqD;qBACnE;iBACF,CAAC,CAAC;gBAEH,MAAM,QAAQ,GAAG,iDAAY,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;gBAEvE,uBAAuB;gBACvB,MAAM,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;gBACrD,KAAK,MAAM,OAAO,IAAI,aAAa,EAAE,CAAC;oBACpC,MAAM,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;oBACzC,IAAI,YAAY,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;wBAClC,oDAAoD;wBACpD,uEAAuE;wBACvE,mEAAmE;wBACnE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAChC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAChB,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CACjB,CAAC;wBACF,MAAM,aAAa,GAAG,WAAW,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBACnD,MAAM,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC;wBAE1D,IAAI,CAAC,YAAY,CAAC,YAAY,EAAE,GAAG,EAAE,QAAQ,EAAE,gBAAgB,CAAC,CAAC;oBACnE,CAAC;gBACH,CAAC;gBAED,gCAAgC;gBAChC,MAAM,iBAAiB,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAC3D,KAAK,MAAM,EAAE,IAAI,iBAAiB,EAAE,CAAC;oBACnC,MAAM,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;oBAC3C,IAAI,SAAS,IAAI,EAAE,CAAC,KAAK,EAAE,CAAC;wBAC1B,sEAAsE;wBACtE,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;wBAC7D,MAAM,cAAc,GAAG,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;wBACpD,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;4BAC1B,kEAAkE;4BAClE,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;4BAClE,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;gCACtB,MAAM,gBAAgB,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC;gCAClD,MAAM,eAAe,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,cAAc,CAAC;gCACrD,IAAI,CAAC,gBAAgB,CACnB,SAAS,EACT,GAAG,EACH,QAAQ,EACR,gBAAgB,EAChB,eAAe,CAChB,CAAC;4BACJ,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;aAAM,CAAC;YACN,wBAAwB;YACxB,MAAM,QAAQ,GAAG,iDAAY,CAAC,MAAM,CAAC,GAAG,EAAE,kBAAkB,EAAE,CAAC,EAAE,IAAI,CAAC,CAAC;YACvE,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAEO,YAAY,CAClB,IAAY,EACZ,GAAW,EACX,QAAsB,EACtB,MAAc;QAEd,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC9B,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;oBACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,gCAAgC,GAAG,KAAK,KAAK,CAAC,OAAO,EAAE,CACxD,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;YAEH,MAAM,aAAa,GAAa,EAAE,CAAC;YAEnC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChB,KAAK,EAAE,CAAC,IAAqB,EAAE,EAAE;oBAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACzB,IAAI,QAAQ,GAAG,EAAE,CAAC;wBAClB,IAAI,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;4BAChD,qDAAqD;4BACrD,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;wBAChC,CAAC;6BAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;4BACxB,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;wBAC5C,CAAC;wBACD,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBAC/B,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;wBAClD,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,CAAC;wBAC5D,MAAM,QAAQ,GACZ,aAAa,CAAC,MAAM,GAAG,CAAC;4BACtB,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;4BACzC,CAAC,CAAC,OAAO,CAAC;wBAEd,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;4BACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAClC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAC/B,CAAC;4BACF,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAEjE,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CACpC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CACpB,CAAC;4BACF,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;4BAChD,MAAM,iBAAiB,GACrB,UAAU,IAAI,CAAC;gCACb,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC;gCACtC,CAAC,CAAC,eAAe,CAAC;4BACtB,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;4BACtD,IAAI,SAA4B,CAAC;4BACjC,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gCAC/C,MAAM,eAAe,GACnB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC;gCACnD,MAAM,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gCAC5D,SAAS,GAAG,YAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CACnC,CAAC;4BACJ,CAAC;4BAED,8CAA8C;4BAC9C,IAAI,UAA6B,CAAC;4BAClC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gCACjC,uCAAuC;gCACvC,MAAM,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;gCAC9D,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;gCAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CACjC,gBAAgB,EAChB,cAAc,CACf,CAAC;gCAEF,oEAAoE;gCACpE,MAAM,iBAAiB,GACrB,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;gCACxD,MAAM,kBAAkB,GACtB,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;gCAEtD,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CACvC,gBAAgB,GAAG,iBAAiB,CACrC,CAAC;gCACF,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CACrC,cAAc,GAAG,kBAAkB,CACpC,CAAC;gCACF,UAAU,GAAG,YAAK,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;4BACxD,CAAC;4BAED,MAAM,QAAQ,GAAgB;gCAC5B,IAAI;gCACJ,KAAK;gCACL,GAAG;gCACH,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACrC,SAAS;gCACT,UAAU;gCACV,QAAQ;gCACR,SAAS;gCACT,MAAM,EAAE,KAAK;gCACb,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;6BAC/C,CAAC;4BAEF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BAC/B,CAAC;4BACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC3C,CAAC;oBACH,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;wBACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAC/B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;4BAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC;4BAClC,8CAA8C;4BAC9C,sCAAsC;4BACtC,IACE,UAAU,CAAC,IAAI,KAAK,YAAY;gCAChC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAChC,CAAC;gCACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;gCAC7B,MAAM,YAAY,GAChB,aAAa,CAAC,MAAM,GAAG,CAAC;oCACtB,CAAC,CAAC,aAAa,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC;oCACzC,CAAC,CAAC,EAAE,CAAC;gCAET,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oCACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAClC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAC/B,CAAC;oCACF,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAChC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAC7B,CAAC;oCACF,IAAI,SAA4B,CAAC;oCACjC,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;wCACnB,MAAM,eAAe,GACnB,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;wCACvC,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;wCACzD,SAAS,GAAG,YAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CACnC,CAAC;oCACJ,CAAC;oCAED,MAAM,KAAK,GAAqB;wCAC9B,IAAI;wCACJ,GAAG;wCACH,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;wCACrC,SAAS;wCACT,YAAY;qCACb,CAAC;oCAEF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wCAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oCAC5B,CAAC;oCACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gCACrC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,KAAK,EAAE,CAAC,IAAqB,EAAE,EAAE;oBAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;wBACzB,aAAa,CAAC,GAAG,EAAE,CAAC;oBACtB,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,wBAAwB,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,gBAAgB,CACtB,IAAY,EACZ,GAAW,EACX,QAAsB,EACtB,MAAc,EACd,eAAuB;QAEvB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE;gBAC9B,OAAO,EAAE,iBAAiB;gBAC1B,SAAS,EAAE,IAAI;gBACf,YAAY,EAAE,CAAC,KAAK,EAAE,EAAE;oBACtB,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,yCAAyC,GAAG,KAAK,KAAK,CAAC,OAAO,EAAE,CACjE,CAAC;gBACJ,CAAC;aACF,CAAC,CAAC;YAEH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChB,KAAK,EAAE,CAAC,IAAqB,EAAE,EAAE;oBAC/B,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;wBAClE,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAC3B,MAAM,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;wBAClD,MAAM,SAAS,GACb,IAAI,CAAC,SAAS,KAAK,IAAI,IAAI,IAAI,CAAC,SAAS,KAAK,WAAW,CAAC;wBAE5D,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;4BACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAClC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAC/B,CAAC;4BACF,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;4BAEjE,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,CACpC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EACrB,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CACpB,CAAC;4BACF,MAAM,UAAU,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;4BAChD,MAAM,iBAAiB,GACrB,UAAU,IAAI,CAAC;gCACb,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC;gCACtC,CAAC,CAAC,eAAe,CAAC;4BACtB,MAAM,SAAS,GAAG,iBAAiB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;4BACtD,IAAI,SAA4B,CAAC;4BACjC,IAAI,SAAS,IAAI,SAAS,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gCAC/C,MAAM,eAAe,GACnB,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC;gCACnD,MAAM,aAAa,GAAG,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;gCAC5D,SAAS,GAAG,YAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CACnC,CAAC;4BACJ,CAAC;4BAED,IAAI,UAA6B,CAAC;4BAClC,IAAI,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gCACjC,MAAM,gBAAgB,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;gCAC9D,MAAM,cAAc,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;gCAC1D,MAAM,YAAY,GAAG,IAAI,CAAC,SAAS,CACjC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAC3B,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAC1B,CAAC;gCACF,MAAM,iBAAiB,GACrB,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAC,MAAM,CAAC;gCACxD,MAAM,kBAAkB,GACtB,YAAY,CAAC,MAAM,GAAG,YAAY,CAAC,OAAO,EAAE,CAAC,MAAM,CAAC;gCACtD,MAAM,aAAa,GAAG,QAAQ,CAAC,UAAU,CACvC,gBAAgB,GAAG,iBAAiB,CACrC,CAAC;gCACF,MAAM,WAAW,GAAG,QAAQ,CAAC,UAAU,CACrC,cAAc,GAAG,kBAAkB,CACpC,CAAC;gCACF,UAAU,GAAG,YAAK,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;4BACxD,CAAC;4BAED,MAAM,QAAQ,GAAgB;gCAC5B,IAAI;gCACJ,KAAK;gCACL,GAAG;gCACH,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;gCACrC,SAAS;gCACT,UAAU;gCACV,QAAQ,EAAE,cAAc;gCACxB,SAAS;gCACT,MAAM,EAAE,IAAI;gCACZ,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM;6BAC/C,CAAC;4BAEF,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gCAC9B,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;4BAC/B,CAAC;4BACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC3C,CAAC;oBACH,CAAC;oBAED,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;wBACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;wBAC/B,IAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;4BAC/B,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC;4BAClC,IACE,UAAU,CAAC,IAAI,KAAK,YAAY;gCAChC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAChC,CAAC;gCACD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;gCAE7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oCACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAClC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAC/B,CAAC;oCACF,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,CAChC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAC7B,CAAC;oCACF,IAAI,SAA4B,CAAC;oCACjC,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;wCACnB,MAAM,eAAe,GACnB,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;wCACvC,MAAM,aAAa,GAAG,MAAM,GAAG,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC;wCACzD,SAAS,GAAG,YAAK,CAAC,MAAM,CACtB,QAAQ,CAAC,UAAU,CAAC,eAAe,CAAC,EACpC,QAAQ,CAAC,UAAU,CAAC,aAAa,CAAC,CACnC,CAAC;oCACJ,CAAC;oCAED,iDAAiD;oCACjD,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;oCACvC,+EAA+E;oCAC/E,MAAM,OAAO,GAAG,OAAO,EAAE,kBAAkB,CAAC,eAAe,CAAC,CAAC;oCAE7D,MAAM,KAAK,GAAqB;wCAC9B,IAAI;wCACJ,GAAG;wCACH,KAAK,EAAE,YAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC;wCACrC,SAAS;wCACT,YAAY,EAAE,cAAc;wCAC5B,OAAO,EAAE,OAAO;qCACjB,CAAC;oCAEF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;wCAC3B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;oCAC5B,CAAC;oCACD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;gCACrC,CAAC;4BACH,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,KAAK,CAAC,EAAE,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,UAAU,CAAC,GAAW;QACjC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,gBAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;YACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC7B,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,kBAAkB,GAAG,iDAAiD,CACvE,CAAC;gBACF,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;gBACrB,OAAO;YACT,CAAC;YAED,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,CAAC;gBACnB,OAAO;YACT,CAAC;YAED,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,8BAA8B;gBAC9B,OAAO;YACT,CAAC;YAED,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,0BAA0B,GAAG,aAAa,CAAC,CAAC;QAC9D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,iCAAiC,GAAG,KAAK,KAAK,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEM,UAAU,CAAC,GAAW;QAC3B,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAC;QAC3C,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,CAAC;QACxC,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAEM,sBAAsB,CAAC,GAAW;QACvC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,CAAC;YACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,aAAa,CAC7C,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC9B,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC3C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACrC,CAAC;QACH,CAAC;IACH,CAAC;IAEM,mBAAmB,CAAC,GAAW;QACpC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAC1B,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,aAAa,CAC7C,CAAC;YACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAC3B,CAAC;iBAAM,IAAI,QAAQ,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;gBAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;IACH,CAAC;IAEM,oBAAoB,CAAC,GAAW;QACrC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC5B,CAAC;IAEM,eAAe;QACpB,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QACxB,CAAC;QACD,uFAAuF;QACvF,OAAO,OAAO,CAAC;IACjB,CAAC;IAEM,YAAY,CAAC,IAAY;QAC9B,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACxC,CAAC;IAEM,iBAAiB,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,aAAa,CAAC,IAAY;QAC/B,MAAM,WAAW,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC5C,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,MAAM,CAAC,CAAC;IACrC,CAAC;IAED;;OAEG;IACI,iBAAiB;QACtB,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;IAChC,CAAC;IAED;;OAEG;IACI,sBAAsB,CAAC,GAAW;QACvC,MAAM,aAAa,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,aAAa,CAAC,CAAC;IACtE,CAAC;IAED;;OAEG;IACI,UAAU,CAAC,GAAW;QAC3B,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;;;OAIG;IACI,oBAAoB,CACzB,IAAY,EACZ,OAAgB,EAChB,OAAO,IAAI,GAAG,EAAU;QAExB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,CAAC,iBAAiB;QAChC,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAEf,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,yDAAyD;QACzD,iEAAiE;QACjE,MAAM,UAAU,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC9C,sDAAsD;YACtD,IAAI,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;gBAChC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC;YAED,2CAA2C;YAC3C,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;YAClC,MAAM,OAAO,GAAG,CAAC,CAAC,MAAM,IAAI,KAAK,CAAC;YAClC,IAAI,OAAO,KAAK,OAAO,EAAE,CAAC;gBACxB,OAAO,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1B,CAAC;YAED,sCAAsC;YACtC,MAAM,KAAK,GAAG,IAAA,kCAAoB,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,KAAK,GAAG,IAAA,kCAAoB,EAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/C,MAAM,WAAW,GAAG,IAAA,gCAAkB,EAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAErD,IAAI,WAAW,KAAK,CAAC,EAAE,CAAC;gBACtB,OAAO,CAAC,WAAW,CAAC,CAAC,gCAAgC;YACvD,CAAC;YAED,2CAA2C;YAC3C,OAAO,CAAC,CAAC,cAAc,GAAG,CAAC,CAAC,cAAc,CAAC;QAC7C,CAAC,CAAC,CAAC;QAEH,gDAAgD;QAChD,MAAM,QAAQ,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAE3B,gDAAgD;QAChD,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAChC,0CAA0C,CAC3C,CAAC;QACF,IAAI,cAAc,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAA,yBAAU,EAAC,KAAK,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE,CAAC,CAAC;IACvD,CAAC;CACF;AA/tBD,gDA+tBC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "css-variable-lsp",
3
- "version": "1.0.12",
3
+ "version": "1.0.14",
4
4
  "description": "A CSS Language Server for CSS Variables",
5
5
  "license": "GPL-3.0",
6
6
  "bin": {
@@ -9,6 +9,7 @@
9
9
  "scripts": {
10
10
  "compile": "tsc -b",
11
11
  "prepack": "npm run compile",
12
+ "perf": "CSS_LSP_PERF=1 TS_NODE_PROJECT=tsconfig.test.json node --test --require ts-node/register tests/perf.test.ts",
12
13
  "watch": "tsc -b -w",
13
14
  "test": "TS_NODE_PROJECT=tsconfig.test.json node --test --require ts-node/register tests/*.test.ts"
14
15
  },
@@ -28,5 +29,6 @@
28
29
  },
29
30
  "engines": {
30
31
  "node": "*"
31
- }
32
+ },
33
+ "packageManager": "pnpm@10.24.0+sha512.01ff8ae71b4419903b65c60fb2dc9d34cf8bb6e06d03bde112ef38f7a34d6904c424ba66bea5cdcf12890230bf39f9580473140ed9c946fef328b6e5238a345a"
32
34
  }
@@ -1,125 +0,0 @@
1
- # Critical Fixes Summary - Jan 5, 2026
2
-
3
- ## Issue Discovered
4
-
5
- **User reported error:**
6
- ```
7
- Error: Cannot find module './colorProvider'
8
- Require stack:
9
- - .../node_modules/css-variable-lsp/out/server.js
10
- ```
11
-
12
- ## Root Cause
13
-
14
- The `colorProvider.js` file was missing from npm packages `css-variable-lsp@1.0.8` and `1.0.9` because:
15
-
16
- 1. The `out/` directory is in `.gitignore`
17
- 2. Most compiled files were force-added to git (e.g., `server.js`, `colorService.js`)
18
- 3. **`colorProvider.js` was never force-added** - it was created later and overlooked
19
- 4. npm packages files from git, so the missing file wasn't included
20
-
21
- ## Solution Implemented
22
-
23
- ### Fix: Relied on prepack script
24
- - The `prepack` script already existed in package.json: `"prepack": "npm run compile"`
25
- - It automatically compiles TypeScript before packaging
26
- - Verified that `npm pack` includes colorProvider.js
27
- - Bumped version to 1.0.10
28
- - Committed and pushed
29
-
30
- ## Files Fixed in css-variable-lsp
31
-
32
- **Package:** css-variable-lsp@1.0.10
33
- **Status:** ✅ Ready to publish (awaiting your 2FA code)
34
- **Includes:** All compiled files including colorProvider.js
35
-
36
- **Command to publish:**
37
- ```bash
38
- cd /Users/applesucks/dev/css-lsp
39
- npm publish --otp=YOUR_2FA_CODE
40
- ```
41
-
42
- ## What Was Done
43
-
44
- ### In css-variable-lsp repo:
45
- 1. ✅ Added colorProvider.js and map to git
46
- 2. ✅ Bumped version to 1.0.10 in package.json
47
- 3. ✅ Committed: "fix: include colorProvider.js in npm package"
48
- 4. ✅ Pushed to GitHub
49
- 5. ✅ Verified prepack script works
50
- 6. ✅ Created PREPACK_MIGRATION.md documentation
51
- 7. ⏳ **Awaiting: npm publish with your 2FA code**
52
-
53
- ### In zed-css-variables repo (this workspace):
54
- 1. ✅ Comprehensive review completed
55
- 2. ✅ All tests passing
56
- 3. ✅ WASM binary updated
57
- 4. ✅ Created documentation:
58
- - ALIGNMENT_REVIEW.md
59
- - SETTINGS_ANALYSIS.md
60
- - ALIGNMENT_ISSUES.md
61
- - REVIEW_SUMMARY.md
62
- 5. 🔴 **Found critical issue: Settings don't work**
63
- 6. 🔴 **References outdated LSP version 1.0.8**
64
-
65
- ## Next Steps
66
-
67
- ### Step 1: Publish css-variable-lsp@1.0.10 (YOU NEED TO DO THIS)
68
- ```bash
69
- # Get your 2FA code from authenticator app, then:
70
- cd /Users/applesucks/dev/css-lsp
71
- npm publish --otp=123456
72
- ```
73
-
74
- ### Step 2: Update Zed Extension
75
- After 1.0.10 is published:
76
- - Update README.md references from 1.0.8 to 1.0.10
77
- - Test clean install works
78
- - Rebuild extension if needed
79
-
80
- ### Step 3: Fix Settings Issue
81
- Choose one approach:
82
-
83
- **Option A: Document Limitations (30 min - Recommended for immediate release)**
84
- - Update README to remove false claims about configurable settings
85
- - Add "Known Limitations" section
86
- - Release as v0.0.5 with honest documentation
87
- - Plan proper fix for v0.0.6
88
-
89
- **Option B: Implement Working Settings (2-4 hours)**
90
- - Modify src/lib.rs to pass settings via CLI args
91
- - Add `--lookup-files` flag with user's custom globs
92
- - Test thoroughly
93
- - Release as v0.0.6 with working settings
94
-
95
- ## What's Working vs Broken
96
-
97
- ### ✅ Working
98
- - Core LSP features (completions, hover, goto definition, references)
99
- - Color preview and color-only-variables mode
100
- - Default file patterns and folder blacklist
101
- - Extension builds and tests pass
102
- - After publishing 1.0.10: Module loading works
103
-
104
- ### 🔴 Broken/Issues
105
- - User settings customization (sent but ignored by LSP)
106
- - Documentation claims settings work (they don't)
107
- - References broken npm version 1.0.8
108
-
109
- ## Recommendation
110
-
111
- **Today:**
112
- 1. Publish css-variable-lsp@1.0.10 (needs your 2FA)
113
- 2. Update Zed extension to reference 1.0.10
114
- 3. Choose Option A: Update docs to be honest
115
- 4. Release as v0.0.5 with known limitation documented
116
-
117
- **This Week:**
118
- 1. Implement Option B: Working settings
119
- 2. Release as v0.0.6 with full functionality
120
-
121
- **Future:**
122
- 1. Contribute proper workspace config to css-variable-lsp
123
- 2. Release as v0.1.0
124
-
125
- This gets a working, honest version published quickly while planning the proper fix.
@@ -1,93 +0,0 @@
1
- # Migration to Prepack Script
2
-
3
- ## Current Status
4
-
5
- The `prepack` script is already configured in package.json:
6
- ```json
7
- "scripts": {
8
- "prepack": "npm run compile"
9
- }
10
- ```
11
-
12
- This automatically compiles TypeScript before packaging, so the compiled files don't need to be committed to git.
13
-
14
- ## What Should Be Done (Optional Cleanup)
15
-
16
- The `out/` directory files are currently tracked in git. Since `prepack` handles compilation automatically, we can optionally remove them from git tracking:
17
-
18
- ```bash
19
- # Remove compiled files from git tracking (but keep them locally)
20
- git rm --cached out/*.js out/*.js.map
21
-
22
- # Commit the change
23
- git commit -m "chore: remove compiled files from git, rely on prepack script"
24
-
25
- # Push
26
- git push origin master
27
- ```
28
-
29
- ## Why This Works
30
-
31
- When you run `npm pack` or `npm publish`:
32
- 1. The `prepack` script runs automatically
33
- 2. It executes `npm run compile`
34
- 3. TypeScript compiles all `.ts` files to `out/`
35
- 4. npm packages the compiled files
36
- 5. The package includes all necessary `.js` files
37
-
38
- ## Testing
39
-
40
- You can verify this works:
41
- ```bash
42
- # Clean out directory
43
- rm -rf out/
44
-
45
- # Pack (will trigger prepack -> compile)
46
- npm pack
47
-
48
- # Check contents
49
- tar -tzf css-variable-lsp-*.tgz | grep colorProvider
50
- ```
51
-
52
- Expected output:
53
- ```
54
- package/out/colorProvider.js
55
- package/out/colorProvider.js.map
56
- package/out/colorProvider.test.js
57
- package/out/colorProvider.test.js.map
58
- ```
59
-
60
- ## Benefits of This Approach
61
-
62
- 1. **Cleaner git history** - No compiled files in commits
63
- 2. **Always fresh builds** - Package always has latest compiled code
64
- 3. **Automatic** - No manual compile step needed before publishing
65
- 4. **Prevents mistakes** - Can't accidentally publish stale compiled code
66
-
67
- ## Current Approach (What We Have Now)
68
-
69
- The compiled files ARE tracked in git, which works but:
70
- - Creates larger commits when source changes
71
- - Risk of forgetting to compile before committing
72
- - Git diffs show compiled JS changes
73
-
74
- However, the `prepack` script ALSO works, so you have double protection:
75
- - If you commit compiled files: those are used
76
- - If you forget to compile: prepack does it automatically
77
-
78
- ## Recommendation
79
-
80
- Since the `prepack` script is already working correctly and includes `colorProvider.js`, you can:
81
-
82
- **Option A: Keep current approach**
83
- - Leave compiled files in git
84
- - Benefit: Explicit tracking of what's published
85
- - Downside: Larger commits
86
-
87
- **Option B: Clean up git (recommended)**
88
- - Remove compiled files from git tracking
89
- - Let prepack handle everything
90
- - Benefit: Cleaner repository
91
- - Downside: Can't see compiled output in GitHub
92
-
93
- Either way works fine! The important thing is that `prepack` ensures the package always has all compiled files.
package/memory.md DELETED
@@ -1,27 +0,0 @@
1
- # Memory
2
-
3
- Useful notes for this repo:
4
-
5
- - The published npm package relies on `out/` only; `.npmignore` excludes `src/`.
6
- - `out/` is in `.gitignore`, but if it was previously committed it can still be tracked and published.
7
- - Missing or stale `out/` files cause runtime failures (example: `Cannot find module './colorProvider'` when `out/colorProvider.js` is absent).
8
- - Build command: `npm run compile` (TypeScript build to `out/`).
9
- - A `prepack` script was added in `package.json` to run the build before `npm pack/publish`.
10
- - Quick checks:
11
- - `git ls-files out/` shows whether `out/` is tracked.
12
- - `npm pack --dry-run` shows what will be published.
13
-
14
- Beads (from `bd list --json` on 2026-01-05):
15
-
16
- - Only issue currently listed:
17
- - id: `css-lsp-vs9`
18
- - title: Release beta for css-lsp
19
- - description: Bump css-variable-lsp version, publish beta, update extension to use it
20
- - status: in_progress
21
- - priority: 1
22
- - type: chore
23
- - created_at: 2026-01-03T20:14:02.713807+02:00
24
- - updated_at: 2026-01-03T20:14:07.879099+02:00
25
- - dependency_count: 0
26
- - dependent_count: 0
27
- - `bd ready --json` and `bd list --json` reported: “Daemon took too long to start (>5s). Running in direct mode.” (tip: `bd doctor` for diagnostics)
package/out/test.js DELETED
@@ -1,112 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const cssVariableManager_1 = require("../src/cssVariableManager");
4
- const vscode_languageserver_textdocument_1 = require("vscode-languageserver-textdocument");
5
- const assert = require("assert");
6
- const manager = new cssVariableManager_1.CssVariableManager();
7
- function createDoc(uri, content, languageId = 'css') {
8
- return vscode_languageserver_textdocument_1.TextDocument.create(uri, languageId, 1, content);
9
- }
10
- console.log('Running CssVariableManager tests...');
11
- // Test 1: Basic CSS Extraction
12
- {
13
- const doc = createDoc('file:///test.css', ':root { --main-color: red; }');
14
- manager.parseDocument(doc);
15
- const vars = manager.getAllVariables();
16
- assert.strictEqual(vars.length, 1, 'Should find 1 variable');
17
- assert.strictEqual(vars[0].name, '--main-color');
18
- assert.strictEqual(vars[0].value, 'red');
19
- console.log('Test 1 passed: Basic CSS Extraction');
20
- }
21
- // Test 2: HTML Style Extraction
22
- {
23
- const htmlContent = `
24
- <html>
25
- <style>
26
- :root { --html-color: blue; }
27
- </style>
28
- <body></body>
29
- </html>`;
30
- const doc = createDoc('file:///test.html', htmlContent, 'html');
31
- manager.parseDocument(doc);
32
- const vars = manager.getVariables('--html-color');
33
- assert.strictEqual(vars.length, 1, 'Should find HTML variable');
34
- assert.strictEqual(vars[0].value, 'blue');
35
- console.log('Test 2 passed: HTML Style Extraction');
36
- }
37
- // Test 3: Multiple Variables and Updates
38
- {
39
- const doc = createDoc('file:///test.css', ':root { --v1: 10px; --v2: 20px; }');
40
- manager.parseDocument(doc);
41
- assert.strictEqual(manager.getAllVariables().length, 3); // 1 from Test 1 + 2 here (Test 2 is different file)
42
- // Update file
43
- const docUpdated = createDoc('file:///test.css', ':root { --v1: 15px; }');
44
- manager.parseDocument(docUpdated);
45
- const v1 = manager.getVariables('--v1');
46
- assert.strictEqual(v1[0].value, '15px', 'Should update value');
47
- assert.strictEqual(manager.getVariables('--v2').length, 0, 'Should remove deleted variable');
48
- console.log('Test 3 passed: Updates');
49
- }
50
- // Test 4: Usage Tracking and References
51
- {
52
- const doc = createDoc('file:///test.css', ':root { --color: red; } .box { color: var(--color); }');
53
- manager.parseDocument(doc);
54
- const usages = manager.getVariableUsages('--color');
55
- assert.strictEqual(usages.length, 1, 'Should find 1 usage');
56
- const references = manager.getReferences('--color');
57
- assert.strictEqual(references.length, 2, 'Should find 2 references (1 def + 1 usage)');
58
- console.log('Test 4 passed: Usage Tracking');
59
- }
60
- // Test 5: Rename Support
61
- {
62
- const doc = createDoc('file:///test.css', ':root { --old: red; } .box { color: var(--old); }');
63
- manager.parseDocument(doc);
64
- const references = manager.getReferences('--old');
65
- assert.strictEqual(references.length, 2, 'Should find all references for rename');
66
- // Verify ranges are correct (simplified check)
67
- const def = references.find(r => 'value' in r);
68
- const usage = references.find(r => !('value' in r));
69
- assert.ok(def, 'Should have definition');
70
- assert.ok(usage, 'Should have usage');
71
- console.log('Test 5 passed: Rename Support');
72
- }
73
- // Test 6: CSS Variable Scoping/Override with Selector Tracking
74
- {
75
- const htmlContent = `
76
- <html>
77
- <style>
78
- :root { --primary-color: red; }
79
- div { --primary-color: blue; color: var(--primary-color); }
80
- </style>
81
- <body>
82
- <div>Test</div>
83
- </body>
84
- </html>`;
85
- const doc = createDoc('file:///test.html', htmlContent, 'html');
86
- manager.parseDocument(doc);
87
- // The LSP should find both definitions
88
- const definitions = manager.getVariables('--primary-color');
89
- assert.strictEqual(definitions.length, 2, 'Should find 2 definitions (root and div)');
90
- // Check the values and selectors
91
- const rootDef = definitions.find(d => d.value === 'red');
92
- const divDef = definitions.find(d => d.value === 'blue');
93
- assert.ok(rootDef, 'Should have definition with red');
94
- assert.ok(divDef, 'Should have definition with blue');
95
- // Verify selectors are tracked
96
- assert.strictEqual(rootDef?.selector, ':root', 'Root definition should have :root selector');
97
- assert.strictEqual(divDef?.selector, 'div', 'Div definition should have div selector');
98
- // Verify usage context is tracked
99
- const usages = manager.getVariableUsages('--primary-color');
100
- assert.strictEqual(usages.length, 1, 'Should find 1 usage');
101
- assert.strictEqual(usages[0].usageContext, 'div', 'Usage should be in div context');
102
- // Verify that the resolved color for the text "Test" (inside div) is blue
103
- // We match the usage context ('div') with the definition selector ('div')
104
- const activeDefinition = definitions.find(d => d.selector === usages[0].usageContext);
105
- assert.strictEqual(activeDefinition?.value, 'blue', 'Resolved color for text should be blue');
106
- console.log('Test 6 passed: CSS Variable Scoping with Selectors');
107
- console.log(` Root definition: ${rootDef?.selector} = ${rootDef?.value}`);
108
- console.log(` Div definition: ${divDef?.selector} = ${divDef?.value}`);
109
- console.log(` Usage context: ${usages[0].usageContext}`);
110
- }
111
- console.log('All tests passed!');
112
- //# sourceMappingURL=test.js.map
package/out/test.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}