@reqlan/analytical 0.8.2 → 0.9.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.
Files changed (50) hide show
  1. package/README.md +14 -0
  2. package/out/analysis/contextual-search.d.ts +26 -0
  3. package/out/analysis/contextual-search.js +94 -0
  4. package/out/analysis/contextual-search.js.map +1 -0
  5. package/out/analysis/fuzzy-search.d.ts +24 -0
  6. package/out/analysis/fuzzy-search.js +254 -0
  7. package/out/analysis/fuzzy-search.js.map +1 -1
  8. package/out/analysis/git-dates-analyser.d.ts +3 -0
  9. package/out/analysis/git-dates-analyser.js +32 -13
  10. package/out/analysis/git-dates-analyser.js.map +1 -1
  11. package/out/analysis-api.d.ts +5 -1
  12. package/out/analysis-api.js +12 -3
  13. package/out/analysis-api.js.map +1 -1
  14. package/out/core/base-discovery.js +10 -3
  15. package/out/core/base-discovery.js.map +1 -1
  16. package/out/core/context-signals.d.ts +5 -0
  17. package/out/core/context-signals.js +13 -4
  18. package/out/core/context-signals.js.map +1 -1
  19. package/out/core/file-reference-resolve.js +6 -2
  20. package/out/core/file-reference-resolve.js.map +1 -1
  21. package/out/core/types.d.ts +8 -0
  22. package/out/core/types.js.map +1 -1
  23. package/out/core/workspace-paths.d.ts +1 -0
  24. package/out/core/workspace-paths.js +9 -5
  25. package/out/core/workspace-paths.js.map +1 -1
  26. package/out/export/html-export-assets.d.ts +1 -1
  27. package/out/export/html-export-assets.js +388 -20
  28. package/out/export/html-export-assets.js.map +1 -1
  29. package/out/export/html-export-template.js +15 -0
  30. package/out/export/html-export-template.js.map +1 -1
  31. package/out/index-store/file-treatment.d.ts +40 -0
  32. package/out/index-store/file-treatment.js +144 -0
  33. package/out/index-store/file-treatment.js.map +1 -0
  34. package/out/index-store/schema.d.ts +1 -1
  35. package/out/index-store/schema.js +6 -2
  36. package/out/index-store/schema.js.map +1 -1
  37. package/out/index-store/sqlite-store.d.ts +4 -2
  38. package/out/index-store/sqlite-store.js +39 -21
  39. package/out/index-store/sqlite-store.js.map +1 -1
  40. package/out/index-store/webview-graph-queries.d.ts +2 -0
  41. package/out/index-store/webview-graph-queries.js.map +1 -1
  42. package/out/index-store/webview-table-queries.d.ts +1 -1
  43. package/out/index-store/webview-table-queries.js +9 -0
  44. package/out/index-store/webview-table-queries.js.map +1 -1
  45. package/out/index-store/workspace-index-file.js +2 -6
  46. package/out/index-store/workspace-index-file.js.map +1 -1
  47. package/out/index.d.ts +8 -4
  48. package/out/index.js +4 -2
  49. package/out/index.js.map +1 -1
  50. package/package.json +10 -2
@@ -2,6 +2,7 @@ import { exportHtml } from './export/export-html.js';
2
2
  import { exportMarkdown } from './export/export-markdown.js';
3
3
  import { exportJson } from './export/export-json.js';
4
4
  import { exportCsv } from './export/export-csv.js';
5
+ import { rerankMatchesWithContext, resolveSearchContextRefs } from './analysis/contextual-search.js';
5
6
  export class AnalysisApi {
6
7
  constructor(runtime) {
7
8
  this.runtime = runtime;
@@ -12,10 +13,18 @@ export class AnalysisApi {
12
13
  }
13
14
  await this.runtime.index.syncWorkspace();
14
15
  }
15
- async searchRequirements(query, limit = 8) {
16
+ async searchRequirements(query, limit = 8, options) {
16
17
  await this.ensureReady();
17
- const matches = await this.runtime.analysers.run(this.runtime.makeContext(), 'semantic_analysis', { query, limit });
18
- return matches.map(match => ({
18
+ const contextRefs = options?.context?.filter(Boolean) ?? [];
19
+ const contextIdeaIds = contextRefs.length > 0
20
+ ? await resolveSearchContextRefs(this.runtime.index, this.runtime.index.indexStore, contextRefs)
21
+ : [];
22
+ const fetchLimit = contextIdeaIds.length > 0 ? Math.max(limit * 3, 24) : limit;
23
+ const matches = await this.runtime.analysers.run(this.runtime.makeContext(), 'semantic_analysis', { query, limit: fetchLimit });
24
+ const ranked = contextIdeaIds.length > 0
25
+ ? await rerankMatchesWithContext(this.runtime.index.indexStore, matches, contextIdeaIds)
26
+ : matches;
27
+ return ranked.slice(0, limit).map(match => ({
19
28
  idea: match.idea,
20
29
  score: match.score,
21
30
  reasons: match.reasons
@@ -1 +1 @@
1
- {"version":3,"file":"analysis-api.js","sourceRoot":"","sources":["../src/analysis-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"analysis-api.js","sourceRoot":"","sources":["../src/analysis-api.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,7 @@ import { existsSync, readdirSync, statSync } from 'node:fs';
12
12
  import { basename, join, relative, resolve, sep } from 'node:path';
13
13
  import { APPLICATION_MEMORY_DIR } from './application-memory.js';
14
14
  import { isIgnoredPath, loadRqIgnore } from './rqignore.js';
15
+ import { relativeWindowsDrivePath } from './workspace-paths.js';
15
16
  function normalizeRoot(path) {
16
17
  return resolve(path).replace(/\\/g, '/');
17
18
  }
@@ -111,13 +112,19 @@ export function baseForPath(bases, absPath) {
111
112
  }
112
113
  /** True if `filePath` is under `dir` (or equal). */
113
114
  export function isPathInsideOrEqual(filePath, dir) {
115
+ const driveRelative = relativeWindowsDrivePath(filePath, dir);
116
+ if (driveRelative !== undefined) {
117
+ return !driveRelative.startsWith('..');
118
+ }
114
119
  const absFile = resolve(filePath);
115
120
  const absDir = resolve(dir);
116
- if (absFile === absDir) {
121
+ const fileCmp = process.platform === 'win32' ? absFile.toLowerCase() : absFile;
122
+ const dirCmp = process.platform === 'win32' ? absDir.toLowerCase() : absDir;
123
+ if (fileCmp === dirCmp) {
117
124
  return true;
118
125
  }
119
- const prefix = absDir.endsWith(sep) ? absDir : absDir + sep;
120
- return absFile.startsWith(prefix);
126
+ const prefix = dirCmp.endsWith(sep) ? dirCmp : dirCmp + sep;
127
+ return fileCmp.startsWith(prefix);
121
128
  }
122
129
  /**
123
130
  * Child bases of `parent` (strict descendants that are themselves bases).
@@ -1 +1 @@
1
- {"version":3,"file":"base-discovery.js","sourceRoot":"","sources":["../../src/core/base-discovery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-discovery.js","sourceRoot":"","sources":["../../src/core/base-discovery.ts"],"names":[],"mappings":"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"}
@@ -129,6 +129,11 @@ export declare function hotspotBorderWidth(band?: ContextHotspotBand): number;
129
129
  export declare function hotspotBorderColor(band?: ContextHotspotBand): string;
130
130
  /** Opacity for impact-radius fade: selected = 1, 1 hop = 0.75, 2 hops = 0.45, farther = 0.2. */
131
131
  export declare function impactOpacityForHopDistance(distance: number | undefined): number;
132
+ /** BFS hop distances from one or more centers over undirected edges (min distance). */
133
+ export declare function hopDistancesFromCenters(centerIds: readonly string[], edges: {
134
+ sourceId: string;
135
+ targetId: string;
136
+ }[]): Map<string, number>;
132
137
  /** BFS hop distances from a center over undirected edges. */
133
138
  export declare function hopDistancesFromCenter(centerId: string, edges: {
134
139
  sourceId: string;
@@ -324,8 +324,8 @@ export function impactOpacityForHopDistance(distance) {
324
324
  }
325
325
  return 0.2;
326
326
  }
327
- /** BFS hop distances from a center over undirected edges. */
328
- export function hopDistancesFromCenter(centerId, edges) {
327
+ /** BFS hop distances from one or more centers over undirected edges (min distance). */
328
+ export function hopDistancesFromCenters(centerIds, edges) {
329
329
  const adjacency = new Map();
330
330
  for (const edge of edges) {
331
331
  if (!adjacency.has(edge.sourceId)) {
@@ -338,8 +338,13 @@ export function hopDistancesFromCenter(centerId, edges) {
338
338
  adjacency.get(edge.targetId).add(edge.sourceId);
339
339
  }
340
340
  const distances = new Map();
341
- const queue = [centerId];
342
- distances.set(centerId, 0);
341
+ const queue = [];
342
+ for (const centerId of centerIds) {
343
+ if (!distances.has(centerId)) {
344
+ distances.set(centerId, 0);
345
+ queue.push(centerId);
346
+ }
347
+ }
343
348
  while (queue.length > 0) {
344
349
  const current = queue.shift();
345
350
  const nextDist = (distances.get(current) ?? 0) + 1;
@@ -352,6 +357,10 @@ export function hopDistancesFromCenter(centerId, edges) {
352
357
  }
353
358
  return distances;
354
359
  }
360
+ /** BFS hop distances from a center over undirected edges. */
361
+ export function hopDistancesFromCenter(centerId, edges) {
362
+ return hopDistancesFromCenters([centerId], edges);
363
+ }
355
364
  /** Thin requirement-card cue from ref counts (Ideas Summary rows). */
356
365
  export function requirementCardCue(inboundCount, outboundCount) {
357
366
  const fanout = inboundCount + outboundCount;
@@ -1 +1 @@
1
- {"version":3,"file":"context-signals.js","sourceRoot":"","sources":["../../src/core/context-signals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-signals.js","sourceRoot":"","sources":["../../src/core/context-signals.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  * Resolve authored file-reference paths against the defining idea's file.
3
3
  * Shared by graph slices and reference-list rows so open actions match the editor.
4
4
  */
5
+ import { isWindowsAbsolutePath } from '@reqlan/language';
5
6
  import { posix } from 'node:path';
6
7
  function definingFilePath(sourceId) {
7
8
  const separator = sourceId.lastIndexOf('#');
@@ -16,11 +17,14 @@ function definingFilePath(sourceId) {
16
17
  */
17
18
  export function resolveReferencedFilePath(targetFile, sourceId) {
18
19
  const target = targetFile.replace(/\\/g, '/');
19
- if (target.includes('://') || posix.isAbsolute(target)) {
20
+ if (target.includes('://') || posix.isAbsolute(target) || isWindowsAbsolutePath(targetFile) || isWindowsAbsolutePath(target)) {
20
21
  return targetFile;
21
22
  }
22
23
  const definingFile = definingFilePath(sourceId).replace(/\\/g, '/');
23
- if (!definingFile || definingFile.includes('://') || posix.isAbsolute(definingFile)) {
24
+ if (!definingFile
25
+ || definingFile.includes('://')
26
+ || posix.isAbsolute(definingFile)
27
+ || isWindowsAbsolutePath(definingFile)) {
24
28
  return targetFile;
25
29
  }
26
30
  return posix.join(posix.dirname(definingFile), target);
@@ -1 +1 @@
1
- {"version":3,"file":"file-reference-resolve.js","sourceRoot":"","sources":["../../src/core/file-reference-resolve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,SAAS,gBAAgB,CAAC,QAAgB;IACtC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB,EAAE,QAAgB;IAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;QACrD,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpE,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAClF,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC"}
1
+ {"version":3,"file":"file-reference-resolve.js","sourceRoot":"","sources":["../../src/core/file-reference-resolve.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,WAAW,CAAC;AAElC,SAAS,gBAAgB,CAAC,QAAgB;IACtC,MAAM,SAAS,GAAG,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAC5C,OAAO,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CAAC,UAAkB,EAAE,QAAgB;IAC1E,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC9C,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,qBAAqB,CAAC,UAAU,CAAC,IAAI,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3H,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,MAAM,YAAY,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IACpE,IACI,CAAC,YAAY;WACV,YAAY,CAAC,QAAQ,CAAC,KAAK,CAAC;WAC5B,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC;WAC9B,qBAAqB,CAAC,YAAY,CAAC,EACxC,CAAC;QACC,OAAO,UAAU,CAAC;IACtB,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC,CAAC;AAC3D,CAAC"}
@@ -15,6 +15,7 @@ export interface IdeaRecord {
15
15
  contentHash: string;
16
16
  gitCreatedAt?: string;
17
17
  gitModifiedAt?: string;
18
+ gitChangeCount?: number;
18
19
  }
19
20
  export interface EdgeRecord {
20
21
  id: string;
@@ -57,6 +58,7 @@ export interface IdeaSummary {
57
58
  tagsKeys: string[];
58
59
  gitCreatedAt?: string;
59
60
  gitModifiedAt?: string;
61
+ gitChangeCount?: number;
60
62
  }
61
63
  export interface IdeaWithRange extends IdeaSummary {
62
64
  lineEnd: number;
@@ -155,6 +157,12 @@ export interface IdeaTableRow {
155
157
  inboundReferences: IdeaReferenceChip[];
156
158
  fileUri: string;
157
159
  lineStart: number;
160
+ /** Indexed git first-commit ISO timestamp; empty until background analyser fills. */
161
+ gitCreatedAt?: string;
162
+ /** Indexed git last-modified ISO timestamp; empty until background analyser fills. */
163
+ gitModifiedAt?: string;
164
+ /** Indexed git change count for the idea range / file; empty until analyser fills. */
165
+ gitChangeCount?: number;
158
166
  stabilityCue?: number;
159
167
  stabilityLabel?: string;
160
168
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA2GH,OAAO,EACH,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC7B,MAAM,oBAAoB,CAAC;AAqB5B,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACrC,SAAS;IACT,MAAM;IACN,MAAM;IACN,SAAS;IACT,MAAM;IACN,aAAa;CAChB,CAAC,CAAC;AAoHH,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,IAAY;IAChD,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,QAAgB,EAAE,IAAc,EAAE,MAAc;IACnE,OAAO,GAAG,QAAQ,KAAK,IAAI,IAAI,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IACxC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,UAA4B;IACjD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,UAA4B;IACnD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,UAA4B;IACrD,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,CAAC;AAChF,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AA6GH,OAAO,EACH,wBAAwB,EACxB,yBAAyB,EACzB,0BAA0B,EAC7B,MAAM,oBAAoB,CAAC;AAqB5B,MAAM,CAAC,MAAM,sBAAsB,GAAG,EAAE,CAAC;AACzC,MAAM,CAAC,MAAM,uBAAuB,GAAG,EAAE,CAAC;AAE1C,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,CAAC;IACrC,SAAS;IACT,MAAM;IACN,MAAM;IACN,SAAS;IACT,MAAM;IACN,aAAa;CAChB,CAAC,CAAC;AA0HH,MAAM,UAAU,MAAM,CAAC,OAAe,EAAE,IAAY;IAChD,OAAO,GAAG,OAAO,IAAI,IAAI,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,QAAgB,EAAE,IAAc,EAAE,MAAc;IACnE,OAAO,GAAG,QAAQ,KAAK,IAAI,IAAI,MAAM,EAAE,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY;IACxC,IAAI,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAqB,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,EAAE,CAAC;IACd,CAAC;AACL,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,UAA4B;IACjD,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC;IAC7B,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,EAAE,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,UAA4B;IACnD,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;IACjC,OAAO,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3D,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,UAA4B;IACrD,IAAI,UAAU,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,OAAO,QAAQ,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,YAAY,CAAC,CAAC;AAChF,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { type IndexedDocument } from './types.js';
2
+ export declare function relativeWindowsDrivePath(filePath: string, workspaceRoot: string): string | undefined;
2
3
  export declare function toWorkspaceRelativePath(fileUri: string, workspaceRoot: string): string;
3
4
  export declare function resolveWorkspaceFileUri(relativeOrAbsolute: string, workspaceRoot?: string): string;
4
5
  export declare function normalizeIndexedDocument(document: IndexedDocument, workspaceRoot: string): IndexedDocument;
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * Normalize file paths and idea ids relative to the workspace root.
3
3
  */
4
+ import { fileUriFromFsPath, isWindowsAbsolutePath } from '@reqlan/language';
4
5
  import { URI } from 'langium';
5
6
  import { isAbsolute, relative, resolve } from 'node:path';
6
7
  import { edgeId, ideaId } from './types.js';
7
8
  function normalizeSlashes(filePath) {
8
9
  return filePath.replace(/\\/g, '/');
9
10
  }
10
- function relativeWindowsDrivePath(filePath, workspaceRoot) {
11
+ export function relativeWindowsDrivePath(filePath, workspaceRoot) {
11
12
  const normalizedFile = normalizeSlashes(filePath);
12
13
  const normalizedRoot = normalizeSlashes(workspaceRoot).replace(/\/+$/, '');
13
14
  const fileMatch = normalizedFile.match(/^([A-Za-z]:)(\/.*)?$/);
@@ -17,11 +18,11 @@ function relativeWindowsDrivePath(filePath, workspaceRoot) {
17
18
  }
18
19
  const fileRest = (fileMatch[2] ?? '').replace(/^\/+/, '');
19
20
  const rootRest = (rootMatch[2] ?? '').replace(/^\/+/, '');
20
- if (fileRest === rootRest) {
21
+ if (fileRest.toLowerCase() === rootRest.toLowerCase()) {
21
22
  return '';
22
23
  }
23
24
  const rootPrefix = rootRest ? `${rootRest}/` : '';
24
- if (!rootRest || fileRest.startsWith(rootPrefix)) {
25
+ if (!rootRest || fileRest.toLowerCase().startsWith(rootPrefix.toLowerCase())) {
25
26
  return rootRest ? fileRest.slice(rootPrefix.length) : fileRest;
26
27
  }
27
28
  return undefined;
@@ -48,12 +49,15 @@ export function resolveWorkspaceFileUri(relativeOrAbsolute, workspaceRoot) {
48
49
  if (relativeOrAbsolute.startsWith('file://')) {
49
50
  return relativeOrAbsolute;
50
51
  }
52
+ if (isWindowsAbsolutePath(relativeOrAbsolute)) {
53
+ return fileUriFromFsPath(relativeOrAbsolute).toString();
54
+ }
51
55
  if (workspaceRoot) {
52
56
  const absolute = resolve(workspaceRoot, relativeOrAbsolute);
53
- return URI.file(absolute).toString();
57
+ return fileUriFromFsPath(absolute).toString();
54
58
  }
55
59
  if (relativeOrAbsolute.startsWith('/')) {
56
- return URI.file(relativeOrAbsolute).toString();
60
+ return fileUriFromFsPath(relativeOrAbsolute).toString();
57
61
  }
58
62
  return relativeOrAbsolute;
59
63
  }
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-paths.js","sourceRoot":"","sources":["../../src/core/workspace-paths.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workspace-paths.js","sourceRoot":"","sources":["../../src/core/workspace-paths.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- export declare const SHARED_STYLES = "\n:root {\n color-scheme: dark;\n --bg: #14100e;\n --bg-elev: #1f1815;\n --bg-soft: #1f1815;\n --bg-raised: #2a211d;\n --fg: #ebe4de;\n --muted: #a89488;\n --faint: #6e5f56;\n --line: #3d2f28;\n --accent: #07a0e5;\n --accent-strong: #0bbefb;\n --accent-dim: #0371c1;\n --rust: #b85c38;\n --rust-muted: #8a4530;\n --good: #4ade80;\n --warn: #fbbf24;\n --bad: #fb7185;\n font-family: Inter, system-ui, sans-serif;\n}\n* { box-sizing: border-box; }\nhtml {\n /* Keep fragment targets below the sticky .topbar (nav + padding \u2248 4.5\u20135rem). */\n scroll-padding-top: 5.5rem;\n}\nbody {\n margin: 0;\n background: var(--bg);\n color: var(--fg);\n line-height: 1.55;\n}\na { color: var(--accent-strong); text-decoration: none; }\na:hover { color: var(--accent); }\nmain.layout {\n max-width: 1360px; margin: 0 auto; padding: 1.5rem;\n display: flex; flex-direction: column; gap: 1.5rem;\n}\n.topbar {\n position: sticky; top: 0; z-index: 10;\n background: var(--bg-elev); border-bottom: 1px solid var(--line); margin: 0 -1.5rem;\n padding: 0.9rem 1.5rem;\n}\n.topbar-inner, .hero, .split, .grid, .detail-grid { display: grid; gap: 1.5rem; }\n.topbar-inner { grid-template-columns: 1.3fr auto; align-items: center; }\n.nav { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }\n.nav a {\n padding: 0.45rem 0.75rem; border-radius: 8px;\n background: var(--bg-raised); color: var(--muted); border: 1px solid var(--line);\n}\n.nav a:hover { color: var(--fg); border-color: color-mix(in srgb, var(--accent) 35%, var(--line)); }\n.nav a.active {\n background: color-mix(in srgb, var(--rust) 28%, var(--bg-raised));\n color: var(--fg); border-color: var(--rust);\n}\n.nav a.brand-link {\n background: transparent;\n border-color: transparent;\n color: var(--fg);\n font-weight: 650;\n letter-spacing: 0.02em;\n padding-left: 0.15rem;\n padding-right: 0.9rem;\n}\n.nav a.brand-link:hover {\n color: var(--accent);\n border-color: transparent;\n background: transparent;\n}\n.hero { grid-template-columns: 2fr 1fr; }\n.grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));\n gap: 1.5rem;\n row-gap: 1.5rem;\n column-gap: 1.5rem;\n}\n.split, .detail-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));\n gap: 1.5rem;\n}\n.panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result {\n background: var(--bg-raised);\n border: 1px solid var(--line);\n border-radius: 10px;\n}\n.panel, .card, .table-shell, .graph-shell, .print-card, .search-result { padding: 1rem 1.1rem; }\n.metric { padding: 0; overflow: hidden; }\n.metric-link, .metric > span, .metric > strong {\n display: flex; flex-direction: column; gap: 0.35rem; padding: 1rem; color: inherit;\n}\n.metric-link:hover { background: color-mix(in srgb, var(--accent) 10%, var(--bg-raised)); }\n.metric-label, .subtle, .eyebrow, .breadcrumbs { color: var(--muted); }\n.metric-value { font-size: 1.75rem; color: var(--accent-strong); }\n.eyebrow { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.75rem; color: var(--rust); }\n.page-header { display: grid; gap: 0.55rem; }\n.page-header h1 { margin: 0; }\n.page-header .eyebrow { margin: 0; }\n.page-header .subtle { margin: 0; }\n.toolbar {\n display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; justify-content: space-between;\n margin-bottom: 0.9rem;\n}\n.toolbar .actions, .pill-row, .breadcrumbs { display: flex; gap: 0.75rem; row-gap: 0.85rem; flex-wrap: wrap; align-items: center; }\n.chip, .pill {\n display: inline-flex; align-items: center; gap: 0.35rem;\n padding: 0.28rem 0.6rem; border-radius: 8px;\n border: 1px solid var(--line); background: var(--bg); color: var(--muted);\n}\na.pill:hover { color: var(--accent-strong); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.graph-controls-bar {\n display: flex;\n flex-wrap: wrap;\n gap: 0.65rem;\n align-items: center;\n margin-bottom: 0.9rem;\n padding: 0.8rem;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg);\n}\n.graph-shell > .pill-row { margin-bottom: 0.9rem; }\n.graph-filter {\n flex: 1 1 180px;\n min-width: 160px;\n}\n.scd {\n position: relative;\n flex: 1 1 180px;\n min-width: 160px;\n}\n.scd-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.55rem;\n width: 100%;\n min-height: 2.35rem;\n padding: 0.4rem 0.75rem;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: var(--bg-soft);\n color: var(--fg);\n font: inherit;\n cursor: pointer;\n text-align: left;\n}\n.scd.is-open .scd-trigger,\n.scd-trigger:hover {\n border-color: var(--accent-dim);\n}\n.scd.has-selection .scd-trigger {\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n}\n.scd.is-searching .scd-trigger {\n border-color: var(--line);\n}\n.scd.is-loading .scd-trigger {\n opacity: 0.72;\n}\n.scd-trigger-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.scd-chevron {\n width: 0;\n height: 0;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 5px solid currentColor;\n opacity: 0.7;\n flex: 0 0 auto;\n}\n.scd.is-open .scd-chevron { transform: rotate(180deg); }\n.scd-panel {\n position: absolute;\n z-index: 50;\n top: calc(100% + 0.35rem);\n left: 0;\n right: auto;\n width: max(100%, 15rem);\n max-width: min(20rem, 80vw);\n max-height: 18rem;\n display: flex;\n flex-direction: column;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg-elev);\n box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);\n overflow: hidden;\n}\n/* Author display:flex overrides the UA [hidden] rule; keep closed panels invisible. */\n.scd-panel[hidden] {\n display: none;\n}\n.scd-search-row {\n display: flex;\n gap: 0.45rem;\n padding: 0.65rem;\n border-bottom: 1px solid var(--line);\n opacity: 0.72;\n}\n.scd-search-row.is-active { opacity: 1; }\n.scd-search {\n flex: 1;\n min-width: 0;\n padding: 0.4rem 0.55rem;\n border: 1px solid transparent;\n border-radius: 6px;\n background: color-mix(in srgb, var(--bg) 88%, transparent);\n color: var(--muted);\n font: inherit;\n}\n.scd.is-searching .scd-search,\n.scd-search:focus {\n border-color: var(--accent-dim);\n background: var(--bg);\n color: var(--fg);\n outline: none;\n}\n.scd-clear {\n border: none;\n background: transparent;\n color: var(--accent-strong);\n font: inherit;\n cursor: pointer;\n}\n.scd-list {\n overflow: auto;\n padding: 0.25rem 0 0.55rem;\n}\n.scd-group-label {\n padding: 0.55rem 0.85rem 0.25rem;\n font-size: 0.72rem;\n letter-spacing: 0.06em;\n text-transform: uppercase;\n color: var(--muted);\n}\n.scd-option {\n display: flex;\n align-items: center;\n gap: 0.55rem;\n padding: 0.45rem 0.85rem;\n cursor: pointer;\n color: var(--fg);\n}\n.scd-option:hover { background: color-mix(in srgb, var(--accent) 10%, transparent); }\n.scd-option input { margin: 0; }\n.scd-option-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.scd-option-count {\n flex: 0 0 auto;\n font-variant-numeric: tabular-nums;\n font-size: 0.85em;\n color: var(--muted);\n opacity: 0.65;\n}\n.scd-option.is-special .scd-option-label { font-style: italic; }\n.scd-option.is-not-present .scd-option-label { color: var(--faint); }\n.scd-option.is-empty .scd-option-label { color: var(--accent-strong); }\n.scd-option.is-unspecified .scd-option-label { color: var(--rust-muted); }\n.scd-empty {\n margin: 0;\n padding: 0.85rem;\n color: var(--muted);\n font-size: 0.9rem;\n}\n.rollup-list .rollup-special dt {\n font-style: italic;\n}\n.rollup-list .rollup-not-present dt {\n color: var(--faint);\n}\n.rollup-list .rollup-empty dt {\n color: var(--accent-strong);\n}\n.rollup-list .rollup-unspecified dt {\n color: var(--rust-muted);\n}\n.graph-action {\n border: 1px solid var(--line);\n background: var(--bg-soft);\n color: var(--fg);\n border-radius: 8px;\n padding: 0.7rem 0.9rem;\n cursor: pointer;\n}\n.graph-action:hover { border-color: var(--accent-dim); color: var(--accent-strong); }\n.graph-action.is-active {\n background: color-mix(in srgb, var(--rust) 28%, var(--bg-soft));\n border-color: var(--rust);\n color: var(--fg);\n}\n.graph-status {\n color: var(--muted);\n font-size: 0.92rem;\n margin-left: auto;\n}\n.searchbar, select, input[type=\"search\"] {\n width: min(100%, 440px); background: var(--bg); color: var(--fg);\n border: 1px solid var(--line); border-radius: 8px; padding: 0.75rem 0.9rem;\n}\n.searchbar:focus, select:focus, input[type=\"search\"]:focus {\n outline: none;\n border-color: var(--accent);\n box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);\n}\ntable { width: 100%; border-collapse: collapse; }\nth, td {\n padding: 0.75rem 0.65rem; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top;\n}\nth { color: var(--muted); font-size: 0.94rem; }\ntbody tr:hover { background: var(--bg-raised); }\n.table-shell { overflow-x: auto; }\n.scroll-window {\n --scroll-window-max: min(28rem, 50vh);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window {\n max-height: var(--scroll-window-max);\n overflow: auto;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: var(--bg);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window > table {\n margin: 0;\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window .entity-list,\nbody[data-runtime-mode=\"interactive\"] .scroll-window .rollup-list {\n padding: 0.75rem;\n}\n.sortable-th { padding: 0.45rem 0.4rem; }\n.sort-button {\n display: inline-flex; align-items: center; gap: 0.35rem;\n width: 100%; margin: 0; padding: 0.3rem 0.25rem;\n border: 0; background: transparent; color: inherit;\n font: inherit; text-align: left; cursor: pointer;\n}\n.sort-button:hover { color: var(--fg); }\n.sort-button.sort-active { color: var(--accent-strong); }\n.sort-indicator { color: var(--faint); font-size: 0.8em; min-width: 1em; }\n.sort-button.sort-active .sort-indicator { color: var(--accent-strong); }\n.table-filter-toggle {\n display: inline-flex; align-items: center; justify-content: center;\n width: 2.25rem; height: 2.25rem; padding: 0;\n border: 1px solid var(--line); border-radius: 8px;\n background: var(--bg-raised); color: var(--muted); cursor: pointer;\n}\n.table-filter-toggle:hover { color: var(--fg); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.table-filter-toggle.is-active {\n color: var(--fg);\n border-color: var(--accent);\n background: color-mix(in srgb, var(--accent) 18%, var(--bg-raised));\n}\n.table-filter-toggle.has-filters:not(.is-active) {\n color: var(--accent-strong);\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n}\n.table-filter-toggle svg { width: 1rem; height: 1rem; display: block; }\n.table-filter-actions {\n display: flex; justify-content: flex-end; gap: 0.55rem;\n margin-bottom: 0.65rem;\n}\n.column-filter-row { display: none; }\n.column-filter-row.is-open { display: table-row; }\n.column-filter-row th {\n padding: 0.35rem 0.4rem 0.75rem; border-bottom: 1px solid var(--line); font-weight: 400;\n}\n.column-filter {\n width: 100%; min-width: 4.5rem; background: var(--bg); color: var(--fg);\n border: 1px solid var(--line); border-radius: 6px; padding: 0.4rem 0.55rem; font-size: 0.85rem;\n}\n.column-filter:focus {\n outline: none;\n border-color: var(--accent);\n box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window thead tr:first-child th {\n position: sticky;\n top: 0;\n z-index: 2;\n background: var(--bg-raised);\n box-shadow: 0 1px 0 var(--line);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window thead .column-filter-row.is-open th {\n position: sticky;\n top: 2.65rem;\n z-index: 1;\n background: var(--bg-raised);\n box-shadow: 0 1px 0 var(--line);\n}\n.entity-list {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n gap: 1.5rem;\n}\n.entity-card {\n border: 1px solid var(--line); border-radius: 10px; padding: 0.9rem 1rem; background: var(--bg);\n color: inherit;\n min-width: 0;\n max-width: 100%;\n overflow-wrap: anywhere;\n word-break: break-word;\n}\n.entity-card:hover { border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.entity-card h3, .entity-card p { margin: 0; }\n.entity-card p + p, .entity-card strong + p, .entity-card h3 + p { margin-top: 0.35rem; }\n.print-card {\n min-width: 0;\n max-width: 100%;\n overflow-wrap: anywhere;\n word-break: break-word;\n scroll-margin-top: 5.5rem;\n}\n.print-card > h3 { overflow-wrap: anywhere; }\n.print-attrs {\n display: grid;\n gap: 0.45rem;\n margin: 0.75rem 0 0;\n}\n.print-attrs div {\n display: grid;\n grid-template-columns: minmax(0, 8rem) minmax(0, 1fr);\n gap: 0.65rem;\n border-bottom: 1px solid var(--line);\n padding-bottom: 0.35rem;\n}\n.print-attrs dt {\n margin: 0;\n color: var(--muted);\n font-weight: 600;\n overflow-wrap: anywhere;\n}\n.print-attrs dd {\n margin: 0;\n overflow-wrap: anywhere;\n word-break: break-word;\n}\n.print-button {\n appearance: none;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: color-mix(in srgb, var(--accent) 18%, var(--bg-raised));\n color: var(--fg);\n font: inherit;\n font-weight: 600;\n padding: 0.45rem 0.9rem;\n cursor: pointer;\n}\n.print-button:hover {\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n background: color-mix(in srgb, var(--accent) 28%, var(--bg-raised));\n}\n.panel > h2, .table-shell > h2, .graph-shell > h2, .print-card > h3 { margin-top: 0; margin-bottom: 0.75rem; }\n.toolbar h2 { margin: 0; }\n.rollup-list { display: grid; gap: 0.5rem; }\n.rollup-list div {\n display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--line); padding-bottom: 0.4rem;\n}\n.rollup-list dd { margin: 0; }\n.rollup-list a.rollup-link {\n color: inherit;\n text-decoration: none;\n}\n.rollup-list a.rollup-link:hover {\n color: var(--accent);\n text-decoration: underline;\n}\n.distribution-track {\n height: 0.7rem;\n min-width: 6rem;\n border-radius: 999px;\n background: var(--bg);\n border: 1px solid var(--line);\n overflow: hidden;\n}\n.distribution-fill {\n display: block;\n height: 100%;\n border-radius: inherit;\n background: linear-gradient(90deg, var(--accent-dim), var(--accent-strong));\n min-width: 0;\n}\n.graph-root {\n position: relative;\n min-height: 620px;\n}\n.graph-root.is-booting {\n display: grid;\n place-items: center;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg);\n}\n.graph-boot {\n display: grid;\n justify-items: center;\n gap: 0.75rem;\n padding: 1.5rem;\n text-align: center;\n color: var(--muted);\n}\n.graph-boot p { margin: 0; }\n.graph-boot-spinner {\n width: 1.35rem;\n height: 1.35rem;\n border: 2px solid color-mix(in srgb, var(--muted) 35%, transparent);\n border-top-color: var(--accent-strong);\n border-radius: 50%;\n animation: graph-boot-spin 0.7s linear infinite;\n}\n@keyframes graph-boot-spin {\n to { transform: rotate(360deg); }\n}\n.graph-root canvas {\n display: block;\n width: 100%;\n min-height: 620px;\n background: var(--bg);\n border-radius: 10px;\n border: 1px solid var(--line);\n touch-action: none;\n cursor: grab;\n}\n.graph-root canvas.is-panning { cursor: grabbing; }\n.graph-root canvas.is-dragging-node { cursor: pointer; }\n.search-results { display: grid; gap: 0.7rem; margin-top: 1rem; }\n.search-result:hover { border-color: var(--accent-dim); }\n.hidden { display: none !important; }\n.breadcrumbs a { color: var(--muted); }\n.breadcrumbs a:hover { color: var(--accent-strong); }\n.section-link { font-size: 0.92rem; }\n.prose p { line-height: 1.55; }\n.idea-summary { white-space: normal; }\n.idea-ref {\n display: inline;\n padding: 0.05em 0.35em;\n margin: 0 0.05em;\n border-radius: 0.3em;\n border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line));\n background: color-mix(in srgb, var(--accent) 14%, var(--bg-raised));\n color: var(--accent-strong);\n font-weight: 600;\n text-decoration: none;\n white-space: normal;\n overflow-wrap: anywhere;\n}\na.idea-ref:hover {\n color: var(--fg);\n border-color: var(--accent);\n background: color-mix(in srgb, var(--accent) 22%, var(--bg-raised));\n}\n.idea-ref--file {\n border-color: color-mix(in srgb, var(--rust) 40%, var(--line));\n background: color-mix(in srgb, var(--rust) 16%, var(--bg-raised));\n color: #e8a07a;\n}\na.idea-ref--file:hover {\n color: var(--fg);\n border-color: var(--rust);\n}\n.idea-ref--unresolved {\n border-style: dashed;\n border-color: color-mix(in srgb, var(--warn) 45%, var(--line));\n background: color-mix(in srgb, var(--warn) 10%, var(--bg-raised));\n color: var(--warn);\n font-weight: 500;\n}\npre.code-like {\n white-space: pre-wrap; padding: 0.9rem; border-radius: 8px;\n background: var(--bg); border: 1px solid var(--line);\n}\n@media (max-width: 900px) {\n .hero, .topbar-inner { grid-template-columns: 1fr; }\n}\n@media (max-width: 520px) {\n .print-attrs div { grid-template-columns: 1fr; }\n}\n@media print {\n :root { color-scheme: light; }\n body { background: white; color: black; }\n .topbar, .searchbar, .toolbar .actions, .graph-shell .toolbar, .column-filter-row, .table-filter-toggle, .table-filter-actions, .hide-on-print { display: none !important; }\n .sort-button { cursor: default; }\n .panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result, .entity-card {\n background: white; color: black; border-color: #cbd5e1; box-shadow: none;\n }\n .scroll-window {\n max-height: none !important;\n overflow: visible !important;\n border: none !important;\n background: transparent !important;\n }\n .scroll-window thead th {\n position: static !important;\n box-shadow: none !important;\n }\n a { color: black; text-decoration: underline; }\n .print-break-avoid { break-inside: avoid; }\n}\n";
1
+ export declare const SHARED_STYLES = "\n:root {\n color-scheme: dark;\n --bg: #14100e;\n --bg-elev: #1f1815;\n --bg-soft: #1f1815;\n --bg-raised: #2a211d;\n --fg: #ebe4de;\n --muted: #a89488;\n --faint: #6e5f56;\n --line: #3d2f28;\n --accent: #07a0e5;\n --accent-strong: #0bbefb;\n --accent-dim: #0371c1;\n --rust: #b85c38;\n --rust-muted: #8a4530;\n --good: #4ade80;\n --warn: #fbbf24;\n --bad: #fb7185;\n font-family: Inter, system-ui, sans-serif;\n}\n* { box-sizing: border-box; }\nhtml {\n /* Keep fragment targets below the sticky .topbar (nav + padding \u2248 4.5\u20135rem). */\n scroll-padding-top: 5.5rem;\n}\nbody {\n margin: 0;\n background: var(--bg);\n color: var(--fg);\n line-height: 1.55;\n}\na { color: var(--accent-strong); text-decoration: none; }\na:hover { color: var(--accent); }\nmain.layout {\n max-width: 1360px; margin: 0 auto; padding: 1.5rem;\n display: flex; flex-direction: column; gap: 1.5rem;\n}\n.topbar {\n position: sticky; top: 0; z-index: 10;\n background: var(--bg-elev); border-bottom: 1px solid var(--line); margin: 0 -1.5rem;\n padding: 0.9rem 1.5rem;\n}\n.topbar-inner, .hero, .split, .grid, .detail-grid { display: grid; gap: 1.5rem; }\n.topbar-inner { grid-template-columns: 1.3fr auto; align-items: center; }\n.nav { display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; }\n.nav a {\n padding: 0.45rem 0.75rem; border-radius: 8px;\n background: var(--bg-raised); color: var(--muted); border: 1px solid var(--line);\n}\n.nav a:hover { color: var(--fg); border-color: color-mix(in srgb, var(--accent) 35%, var(--line)); }\n.nav a.active {\n background: color-mix(in srgb, var(--rust) 28%, var(--bg-raised));\n color: var(--fg); border-color: var(--rust);\n}\n.nav a.brand-link {\n background: transparent;\n border-color: transparent;\n color: var(--fg);\n font-weight: 650;\n letter-spacing: 0.02em;\n padding-left: 0.15rem;\n padding-right: 0.9rem;\n}\n.nav a.brand-link:hover {\n color: var(--accent);\n border-color: transparent;\n background: transparent;\n}\n.hero { grid-template-columns: 2fr 1fr; }\n.grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(min(100%, 140px), 1fr));\n gap: 1.5rem;\n row-gap: 1.5rem;\n column-gap: 1.5rem;\n}\n.split, .detail-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));\n gap: 1.5rem;\n}\n.panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result {\n background: var(--bg-raised);\n border: 1px solid var(--line);\n border-radius: 10px;\n}\n.panel, .card, .table-shell, .graph-shell, .print-card, .search-result { padding: 1rem 1.1rem; }\n.metric { padding: 0; overflow: hidden; }\n.metric-link, .metric > span, .metric > strong {\n display: flex; flex-direction: column; gap: 0.35rem; padding: 1rem; color: inherit;\n}\n.metric-link:hover { background: color-mix(in srgb, var(--accent) 10%, var(--bg-raised)); }\n.metric-label, .subtle, .eyebrow, .breadcrumbs { color: var(--muted); }\n.metric-value { font-size: 1.75rem; color: var(--accent-strong); }\n.eyebrow { text-transform: uppercase; letter-spacing: 0.08em; font-size: 0.75rem; color: var(--rust); }\n.page-header { display: grid; gap: 0.55rem; }\n.page-header h1 { margin: 0; }\n.page-header .eyebrow { margin: 0; }\n.page-header .subtle { margin: 0; }\n.toolbar {\n display: flex; flex-wrap: wrap; gap: 0.75rem; align-items: center; justify-content: space-between;\n margin-bottom: 0.9rem;\n}\n.toolbar .actions, .pill-row, .breadcrumbs { display: flex; gap: 0.75rem; row-gap: 0.85rem; flex-wrap: wrap; align-items: center; }\n.chip, .pill {\n display: inline-flex; align-items: center; gap: 0.35rem;\n padding: 0.28rem 0.6rem; border-radius: 8px;\n border: 1px solid var(--line); background: var(--bg); color: var(--muted);\n}\na.pill:hover { color: var(--accent-strong); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.graph-controls-bar {\n display: flex;\n flex-wrap: wrap;\n gap: 0.65rem;\n align-items: center;\n margin-bottom: 0.9rem;\n padding: 0.8rem;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg);\n}\n.graph-shell > .pill-row { margin-bottom: 0.9rem; }\n.graph-filter {\n flex: 1 1 180px;\n min-width: 160px;\n}\n.scd {\n position: relative;\n flex: 1 1 180px;\n min-width: 160px;\n}\n.scd-trigger {\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: 0.55rem;\n width: 100%;\n min-height: 2.35rem;\n padding: 0.4rem 0.75rem;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: var(--bg-soft);\n color: var(--fg);\n font: inherit;\n cursor: pointer;\n text-align: left;\n}\n.scd.is-open .scd-trigger,\n.scd-trigger:hover {\n border-color: var(--accent-dim);\n}\n.scd.has-selection .scd-trigger {\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n}\n.scd.is-searching .scd-trigger {\n border-color: var(--line);\n}\n.scd.is-loading .scd-trigger {\n opacity: 0.72;\n}\n.scd-trigger-label {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.scd-chevron {\n width: 0;\n height: 0;\n border-left: 4px solid transparent;\n border-right: 4px solid transparent;\n border-top: 5px solid currentColor;\n opacity: 0.7;\n flex: 0 0 auto;\n}\n.scd.is-open .scd-chevron { transform: rotate(180deg); }\n.scd-panel {\n position: absolute;\n z-index: 50;\n top: calc(100% + 0.35rem);\n left: 0;\n right: auto;\n width: max(100%, 15rem);\n max-width: min(20rem, 80vw);\n max-height: 18rem;\n display: flex;\n flex-direction: column;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg-elev);\n box-shadow: 0 16px 40px rgba(0, 0, 0, 0.35);\n overflow: hidden;\n}\n/* Author display:flex overrides the UA [hidden] rule; keep closed panels invisible. */\n.scd-panel[hidden] {\n display: none;\n}\n.scd-search-row {\n display: flex;\n gap: 0.45rem;\n padding: 0.65rem;\n border-bottom: 1px solid var(--line);\n opacity: 0.72;\n}\n.scd-search-row.is-active { opacity: 1; }\n.scd-search {\n flex: 1;\n min-width: 0;\n padding: 0.4rem 0.55rem;\n border: 1px solid transparent;\n border-radius: 6px;\n background: color-mix(in srgb, var(--bg) 88%, transparent);\n color: var(--muted);\n font: inherit;\n}\n.scd.is-searching .scd-search,\n.scd-search:focus {\n border-color: var(--accent-dim);\n background: var(--bg);\n color: var(--fg);\n outline: none;\n}\n.scd-clear {\n border: none;\n background: transparent;\n color: var(--accent-strong);\n font: inherit;\n cursor: pointer;\n}\n.scd-list {\n overflow: auto;\n padding: 0.25rem 0 0.55rem;\n}\n.scd-group-label {\n padding: 0.55rem 0.85rem 0.25rem;\n font-size: 0.72rem;\n letter-spacing: 0.06em;\n text-transform: uppercase;\n color: var(--muted);\n}\n.scd-option {\n display: flex;\n align-items: center;\n gap: 0.55rem;\n padding: 0.45rem 0.85rem;\n cursor: pointer;\n color: var(--fg);\n}\n.scd-option:hover { background: color-mix(in srgb, var(--accent) 10%, transparent); }\n.scd-option input { margin: 0; }\n.scd-option-label {\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.scd-option-count {\n flex: 0 0 auto;\n font-variant-numeric: tabular-nums;\n font-size: 0.85em;\n color: var(--muted);\n opacity: 0.65;\n}\n.scd-option.is-special .scd-option-label { font-style: italic; }\n.scd-option.is-not-present .scd-option-label { color: var(--faint); }\n.scd-option.is-empty .scd-option-label { color: var(--accent-strong); }\n.scd-option.is-unspecified .scd-option-label { color: var(--rust-muted); }\n.scd-empty {\n margin: 0;\n padding: 0.85rem;\n color: var(--muted);\n font-size: 0.9rem;\n}\n.rollup-list .rollup-special dt {\n font-style: italic;\n}\n.rollup-list .rollup-not-present dt {\n color: var(--faint);\n}\n.rollup-list .rollup-empty dt {\n color: var(--accent-strong);\n}\n.rollup-list .rollup-unspecified dt {\n color: var(--rust-muted);\n}\n.graph-action {\n border: 1px solid var(--line);\n background: var(--bg-soft);\n color: var(--fg);\n border-radius: 8px;\n padding: 0.7rem 0.9rem;\n cursor: pointer;\n}\n.graph-action:hover { border-color: var(--accent-dim); color: var(--accent-strong); }\n.graph-action.is-active {\n background: color-mix(in srgb, var(--rust) 28%, var(--bg-soft));\n border-color: var(--rust);\n color: var(--fg);\n}\n.graph-file-treatment {\n display: inline-flex;\n align-items: center;\n}\n.graph-file-treatment .graph-select,\nselect.graph-action {\n border-radius: 8px;\n padding-right: 1.6rem;\n cursor: pointer;\n}\n.visually-hidden {\n position: absolute;\n width: 1px;\n height: 1px;\n padding: 0;\n margin: -1px;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n white-space: nowrap;\n border: 0;\n}\n.graph-status {\n color: var(--muted);\n font-size: 0.92rem;\n margin-left: auto;\n}\n.searchbar, select, input[type=\"search\"] {\n width: min(100%, 440px); background: var(--bg); color: var(--fg);\n border: 1px solid var(--line); border-radius: 8px; padding: 0.75rem 0.9rem;\n}\n.searchbar:focus, select:focus, input[type=\"search\"]:focus {\n outline: none;\n border-color: var(--accent);\n box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);\n}\ntable { width: 100%; border-collapse: collapse; }\nth, td {\n padding: 0.75rem 0.65rem; text-align: left; border-bottom: 1px solid var(--line); vertical-align: top;\n}\nth { color: var(--muted); font-size: 0.94rem; }\ntbody tr:hover { background: var(--bg-raised); }\n.table-shell { overflow-x: auto; }\n.scroll-window {\n --scroll-window-max: min(28rem, 50vh);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window {\n max-height: var(--scroll-window-max);\n overflow: auto;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: var(--bg);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window > table {\n margin: 0;\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window .entity-list,\nbody[data-runtime-mode=\"interactive\"] .scroll-window .rollup-list {\n padding: 0.75rem;\n}\n.sortable-th { padding: 0.45rem 0.4rem; }\n.sort-button {\n display: inline-flex; align-items: center; gap: 0.35rem;\n width: 100%; margin: 0; padding: 0.3rem 0.25rem;\n border: 0; background: transparent; color: inherit;\n font: inherit; text-align: left; cursor: pointer;\n}\n.sort-button:hover { color: var(--fg); }\n.sort-button.sort-active { color: var(--accent-strong); }\n.sort-indicator { color: var(--faint); font-size: 0.8em; min-width: 1em; }\n.sort-button.sort-active .sort-indicator { color: var(--accent-strong); }\n.table-filter-toggle {\n display: inline-flex; align-items: center; justify-content: center;\n width: 2.25rem; height: 2.25rem; padding: 0;\n border: 1px solid var(--line); border-radius: 8px;\n background: var(--bg-raised); color: var(--muted); cursor: pointer;\n}\n.table-filter-toggle:hover { color: var(--fg); border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.table-filter-toggle.is-active {\n color: var(--fg);\n border-color: var(--accent);\n background: color-mix(in srgb, var(--accent) 18%, var(--bg-raised));\n}\n.table-filter-toggle.has-filters:not(.is-active) {\n color: var(--accent-strong);\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n}\n.table-filter-toggle svg { width: 1rem; height: 1rem; display: block; }\n.table-filter-actions {\n display: flex; justify-content: flex-end; gap: 0.55rem;\n margin-bottom: 0.65rem;\n}\n.column-filter-row { display: none; }\n.column-filter-row.is-open { display: table-row; }\n.column-filter-row th {\n padding: 0.35rem 0.4rem 0.75rem; border-bottom: 1px solid var(--line); font-weight: 400;\n}\n.column-filter {\n width: 100%; min-width: 4.5rem; background: var(--bg); color: var(--fg);\n border: 1px solid var(--line); border-radius: 6px; padding: 0.4rem 0.55rem; font-size: 0.85rem;\n}\n.column-filter:focus {\n outline: none;\n border-color: var(--accent);\n box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--accent) 25%, transparent);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window thead tr:first-child th {\n position: sticky;\n top: 0;\n z-index: 2;\n background: var(--bg-raised);\n box-shadow: 0 1px 0 var(--line);\n}\nbody[data-runtime-mode=\"interactive\"] .scroll-window thead .column-filter-row.is-open th {\n position: sticky;\n top: 2.65rem;\n z-index: 1;\n background: var(--bg-raised);\n box-shadow: 0 1px 0 var(--line);\n}\n.entity-list {\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n gap: 1.5rem;\n}\n.entity-card {\n border: 1px solid var(--line); border-radius: 10px; padding: 0.9rem 1rem; background: var(--bg);\n color: inherit;\n min-width: 0;\n max-width: 100%;\n overflow-wrap: anywhere;\n word-break: break-word;\n}\n.entity-card:hover { border-color: color-mix(in srgb, var(--accent) 40%, var(--line)); }\n.entity-card h3, .entity-card p { margin: 0; }\n.entity-card p + p, .entity-card strong + p, .entity-card h3 + p { margin-top: 0.35rem; }\n.print-card {\n min-width: 0;\n max-width: 100%;\n overflow-wrap: anywhere;\n word-break: break-word;\n scroll-margin-top: 5.5rem;\n}\n.print-card > h3 { overflow-wrap: anywhere; }\n.print-attrs {\n display: grid;\n gap: 0.45rem;\n margin: 0.75rem 0 0;\n}\n.print-attrs div {\n display: grid;\n grid-template-columns: minmax(0, 8rem) minmax(0, 1fr);\n gap: 0.65rem;\n border-bottom: 1px solid var(--line);\n padding-bottom: 0.35rem;\n}\n.print-attrs dt {\n margin: 0;\n color: var(--muted);\n font-weight: 600;\n overflow-wrap: anywhere;\n}\n.print-attrs dd {\n margin: 0;\n overflow-wrap: anywhere;\n word-break: break-word;\n}\n.print-button {\n appearance: none;\n border: 1px solid var(--line);\n border-radius: 8px;\n background: color-mix(in srgb, var(--accent) 18%, var(--bg-raised));\n color: var(--fg);\n font: inherit;\n font-weight: 600;\n padding: 0.45rem 0.9rem;\n cursor: pointer;\n}\n.print-button:hover {\n border-color: color-mix(in srgb, var(--accent) 45%, var(--line));\n background: color-mix(in srgb, var(--accent) 28%, var(--bg-raised));\n}\n.panel > h2, .table-shell > h2, .graph-shell > h2, .print-card > h3 { margin-top: 0; margin-bottom: 0.75rem; }\n.toolbar h2 { margin: 0; }\n.rollup-list { display: grid; gap: 0.5rem; }\n.rollup-list div {\n display: flex; justify-content: space-between; gap: 1rem; border-bottom: 1px solid var(--line); padding-bottom: 0.4rem;\n}\n.rollup-list dd { margin: 0; }\n.rollup-list a.rollup-link {\n color: inherit;\n text-decoration: none;\n}\n.rollup-list a.rollup-link:hover {\n color: var(--accent);\n text-decoration: underline;\n}\n.distribution-track {\n height: 0.7rem;\n min-width: 6rem;\n border-radius: 999px;\n background: var(--bg);\n border: 1px solid var(--line);\n overflow: hidden;\n}\n.distribution-fill {\n display: block;\n height: 100%;\n border-radius: inherit;\n background: linear-gradient(90deg, var(--accent-dim), var(--accent-strong));\n min-width: 0;\n}\n.graph-root {\n position: relative;\n min-height: 620px;\n}\n.graph-root.is-booting {\n display: grid;\n place-items: center;\n border: 1px solid var(--line);\n border-radius: 10px;\n background: var(--bg);\n}\n.graph-boot {\n display: grid;\n justify-items: center;\n gap: 0.75rem;\n padding: 1.5rem;\n text-align: center;\n color: var(--muted);\n}\n.graph-boot p { margin: 0; }\n.graph-boot-spinner {\n width: 1.35rem;\n height: 1.35rem;\n border: 2px solid color-mix(in srgb, var(--muted) 35%, transparent);\n border-top-color: var(--accent-strong);\n border-radius: 50%;\n animation: graph-boot-spin 0.7s linear infinite;\n}\n@keyframes graph-boot-spin {\n to { transform: rotate(360deg); }\n}\n.graph-root canvas {\n display: block;\n width: 100%;\n min-height: 620px;\n background: var(--bg);\n border-radius: 10px;\n border: 1px solid var(--line);\n touch-action: none;\n cursor: grab;\n}\n.graph-root canvas.is-panning { cursor: grabbing; }\n.graph-root canvas.is-dragging-node { cursor: pointer; }\n.search-results { display: grid; gap: 0.7rem; margin-top: 1rem; }\n.search-result:hover { border-color: var(--accent-dim); }\n.hidden { display: none !important; }\n.breadcrumbs a { color: var(--muted); }\n.breadcrumbs a:hover { color: var(--accent-strong); }\n.section-link { font-size: 0.92rem; }\n.prose p { line-height: 1.55; }\n.idea-summary { white-space: normal; }\n.idea-ref {\n display: inline;\n padding: 0.05em 0.35em;\n margin: 0 0.05em;\n border-radius: 0.3em;\n border: 1px solid color-mix(in srgb, var(--accent) 35%, var(--line));\n background: color-mix(in srgb, var(--accent) 14%, var(--bg-raised));\n color: var(--accent-strong);\n font-weight: 600;\n text-decoration: none;\n white-space: normal;\n overflow-wrap: anywhere;\n}\na.idea-ref:hover {\n color: var(--fg);\n border-color: var(--accent);\n background: color-mix(in srgb, var(--accent) 22%, var(--bg-raised));\n}\n.idea-ref--file {\n border-color: color-mix(in srgb, var(--rust) 40%, var(--line));\n background: color-mix(in srgb, var(--rust) 16%, var(--bg-raised));\n color: #e8a07a;\n}\na.idea-ref--file:hover {\n color: var(--fg);\n border-color: var(--rust);\n}\n.idea-ref--unresolved {\n border-style: dashed;\n border-color: color-mix(in srgb, var(--warn) 45%, var(--line));\n background: color-mix(in srgb, var(--warn) 10%, var(--bg-raised));\n color: var(--warn);\n font-weight: 500;\n}\npre.code-like {\n white-space: pre-wrap; padding: 0.9rem; border-radius: 8px;\n background: var(--bg); border: 1px solid var(--line);\n}\n@media (max-width: 900px) {\n .hero, .topbar-inner { grid-template-columns: 1fr; }\n}\n@media (max-width: 520px) {\n .print-attrs div { grid-template-columns: 1fr; }\n}\n@media print {\n :root { color-scheme: light; }\n body { background: white; color: black; }\n .topbar, .searchbar, .toolbar .actions, .graph-shell .toolbar, .column-filter-row, .table-filter-toggle, .table-filter-actions, .hide-on-print { display: none !important; }\n .sort-button { cursor: default; }\n .panel, .metric, .card, .table-shell, .graph-shell, .print-card, .search-result, .entity-card {\n background: white; color: black; border-color: #cbd5e1; box-shadow: none;\n }\n .scroll-window {\n max-height: none !important;\n overflow: visible !important;\n border: none !important;\n background: transparent !important;\n }\n .scroll-window thead th {\n position: static !important;\n box-shadow: none !important;\n }\n a { color: black; text-decoration: underline; }\n .print-break-avoid { break-inside: avoid; }\n}\n";
2
2
  export declare const APP_JS: string;
3
3
  export declare function buildSearchIndexScript(documents: unknown): string;