pi-shazam 0.1.5 → 0.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/core/filter.d.ts +9 -0
- package/dist/core/filter.d.ts.map +1 -0
- package/dist/core/filter.js +28 -0
- package/dist/core/filter.js.map +1 -0
- package/dist/core/lsp-global.d.ts +17 -0
- package/dist/core/lsp-global.d.ts.map +1 -0
- package/dist/core/lsp-global.js +14 -0
- package/dist/core/lsp-global.js.map +1 -0
- package/dist/core/scanner.d.ts +9 -0
- package/dist/core/scanner.d.ts.map +1 -1
- package/dist/core/scanner.js +75 -1
- package/dist/core/scanner.js.map +1 -1
- package/dist/hooks/after-write.js +2 -2
- package/dist/hooks/after-write.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +7 -6
- package/dist/index.js.map +1 -1
- package/dist/lsp/setup.js +2 -2
- package/dist/lsp/setup.js.map +1 -1
- package/dist/tools/call_chain.d.ts +10 -0
- package/dist/tools/call_chain.d.ts.map +1 -1
- package/dist/tools/call_chain.js +94 -3
- package/dist/tools/call_chain.js.map +1 -1
- package/dist/tools/check.d.ts +5 -5
- package/dist/tools/check.d.ts.map +1 -1
- package/dist/tools/check.js +273 -18
- package/dist/tools/check.js.map +1 -1
- package/dist/tools/codesearch.d.ts +0 -3
- package/dist/tools/codesearch.d.ts.map +1 -1
- package/dist/tools/codesearch.js +149 -13
- package/dist/tools/codesearch.js.map +1 -1
- package/dist/tools/find_tests.d.ts +23 -0
- package/dist/tools/find_tests.d.ts.map +1 -0
- package/dist/tools/find_tests.js +190 -0
- package/dist/tools/find_tests.js.map +1 -0
- package/dist/tools/fix.js +1 -1
- package/dist/tools/fix.js.map +1 -1
- package/dist/tools/hotspots.d.ts +0 -2
- package/dist/tools/hotspots.d.ts.map +1 -1
- package/dist/tools/hotspots.js +2 -14
- package/dist/tools/hotspots.js.map +1 -1
- package/dist/tools/hover.d.ts +22 -0
- package/dist/tools/hover.d.ts.map +1 -0
- package/dist/tools/hover.js +161 -0
- package/dist/tools/hover.js.map +1 -0
- package/dist/tools/overview.d.ts +2 -2
- package/dist/tools/overview.d.ts.map +1 -1
- package/dist/tools/overview.js +34 -10
- package/dist/tools/overview.js.map +1 -1
- package/dist/tools/ready.js +2 -2
- package/dist/tools/ready.js.map +1 -1
- package/dist/tools/routes.js +6 -6
- package/dist/tools/routes.js.map +1 -1
- package/dist/tools/state_map.js +1 -1
- package/dist/tools/state_map.js.map +1 -1
- package/dist/tools/verify.d.ts.map +1 -1
- package/dist/tools/verify.js +47 -13
- package/dist/tools/verify.js.map +1 -1
- package/package.json +1 -1
- package/dist/tools/codequery.d.ts +0 -19
- package/dist/tools/codequery.d.ts.map +0 -1
- package/dist/tools/codequery.js +0 -129
- package/dist/tools/codequery.js.map +0 -1
- package/dist/tools/orphan.d.ts +0 -9
- package/dist/tools/orphan.d.ts.map +0 -1
- package/dist/tools/orphan.js +0 -134
- package/dist/tools/orphan.js.map +0 -1
- package/dist/tools/refs.d.ts +0 -9
- package/dist/tools/refs.d.ts.map +0 -1
- package/dist/tools/refs.js +0 -130
- package/dist/tools/refs.js.map +0 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam core/filter — Shared file filtering utilities.
|
|
3
|
+
*
|
|
4
|
+
* Centralises the "is this a source file?" logic used by hotspots, orphan,
|
|
5
|
+
* verify, overview, and check tools. Keeps filtering consistent across the
|
|
6
|
+
* codebase and avoids pattern duplication.
|
|
7
|
+
*/
|
|
8
|
+
export declare function isNonSourceFile(file: string): boolean;
|
|
9
|
+
//# sourceMappingURL=filter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.d.ts","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAoBH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAErD"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam core/filter — Shared file filtering utilities.
|
|
3
|
+
*
|
|
4
|
+
* Centralises the "is this a source file?" logic used by hotspots, orphan,
|
|
5
|
+
* verify, overview, and check tools. Keeps filtering consistent across the
|
|
6
|
+
* codebase and avoids pattern duplication.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Config files, generated files, and lockfiles — excluded from source-file
|
|
10
|
+
* analysis (hotspots, orphan detection, overview, check).
|
|
11
|
+
*
|
|
12
|
+
* The list is deliberately narrow: it covers *non-source* files that
|
|
13
|
+
* tree-sitter would still parse (JSON, lockfiles) and inflate symbol counts.
|
|
14
|
+
*
|
|
15
|
+
* @returns true if the file path matches a known non-source pattern.
|
|
16
|
+
*/
|
|
17
|
+
const NON_SOURCE_FILE_PATTERNS = [
|
|
18
|
+
"package-lock.json",
|
|
19
|
+
"package.json",
|
|
20
|
+
"tsconfig.json",
|
|
21
|
+
"node_modules/",
|
|
22
|
+
"dist/",
|
|
23
|
+
".json",
|
|
24
|
+
];
|
|
25
|
+
export function isNonSourceFile(file) {
|
|
26
|
+
return NON_SOURCE_FILE_PATTERNS.some((p) => file.includes(p));
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=filter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"filter.js","sourceRoot":"","sources":["../../core/filter.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;;;GAQG;AACH,MAAM,wBAAwB,GAAsB;IACnD,mBAAmB;IACnB,cAAc;IACd,eAAe;IACf,eAAe;IACf,OAAO;IACP,OAAO;CACP,CAAC;AAEF,MAAM,UAAU,eAAe,CAAC,IAAY;IAC3C,OAAO,wBAAwB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/D,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* pi-shazam core/lsp-global — Global LspManager reference for tool access.
|
|
3
|
+
*
|
|
4
|
+
* Tools (e.g., shazam_check) need access to the active LspManager to
|
|
5
|
+
* collect real-time LSP diagnostics. This module provides a global
|
|
6
|
+
* reference set during extension initialization.
|
|
7
|
+
*/
|
|
8
|
+
import { LspManager } from "../lsp/manager.js";
|
|
9
|
+
/**
|
|
10
|
+
* Set the active LspManager (called from index.ts during init).
|
|
11
|
+
*/
|
|
12
|
+
export declare function setLspManager(mgr: LspManager): void;
|
|
13
|
+
/**
|
|
14
|
+
* Get the active LspManager, or null if not initialized.
|
|
15
|
+
*/
|
|
16
|
+
export declare function getLspManager(): LspManager | null;
|
|
17
|
+
//# sourceMappingURL=lsp-global.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lsp-global.d.ts","sourceRoot":"","sources":["../../core/lsp-global.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAI/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,UAAU,GAAG,IAAI,CAEnD;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,UAAU,GAAG,IAAI,CAEjD"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
let _manager = null;
|
|
2
|
+
/**
|
|
3
|
+
* Set the active LspManager (called from index.ts during init).
|
|
4
|
+
*/
|
|
5
|
+
export function setLspManager(mgr) {
|
|
6
|
+
_manager = mgr;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Get the active LspManager, or null if not initialized.
|
|
10
|
+
*/
|
|
11
|
+
export function getLspManager() {
|
|
12
|
+
return _manager;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=lsp-global.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"lsp-global.js","sourceRoot":"","sources":["../../core/lsp-global.ts"],"names":[],"mappings":"AASA,IAAI,QAAQ,GAAsB,IAAI,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,GAAe;IAC5C,QAAQ,GAAG,GAAG,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC5B,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
package/dist/core/scanner.d.ts
CHANGED
|
@@ -7,10 +7,19 @@
|
|
|
7
7
|
* This is the main entry point that all tools compose from.
|
|
8
8
|
*/
|
|
9
9
|
import type { RepoGraph } from "./graph.js";
|
|
10
|
+
/**
|
|
11
|
+
* Get (or build) the project graph with caching.
|
|
12
|
+
* Returns a cached graph if no files have been modified since the last scan.
|
|
13
|
+
* The cache is per-process (not persisted to disk).
|
|
14
|
+
*/
|
|
15
|
+
export declare function getProjectGraph(projectRoot?: string, log?: (msg: string) => void): RepoGraph;
|
|
10
16
|
/**
|
|
11
17
|
* Scan a project directory, parse all source files, build the dependency graph,
|
|
12
18
|
* and compute PageRank scores.
|
|
13
19
|
*
|
|
20
|
+
* Uses an in-memory cache: subsequent calls within the same process return the
|
|
21
|
+
* cached graph unless file modification times have changed.
|
|
22
|
+
*
|
|
14
23
|
* @param projectPath - Absolute or relative path to the project root
|
|
15
24
|
* @param log - Optional logger
|
|
16
25
|
* @returns The fully built RepoGraph with PageRank scores set
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../core/scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"scanner.d.ts","sourceRoot":"","sources":["../../core/scanner.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,SAAS,EAAgB,MAAM,YAAY,CAAC;AA6E1D;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,WAAW,GAAE,MAAY,EAAE,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,SAAS,CAYjG;AAID;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAC1B,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GACzB,SAAS,CAkJX"}
|
package/dist/core/scanner.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*
|
|
7
7
|
* This is the main entry point that all tools compose from.
|
|
8
8
|
*/
|
|
9
|
-
import { readdirSync } from "node:fs";
|
|
9
|
+
import { readdirSync, statSync } from "node:fs";
|
|
10
10
|
import { join, relative, resolve } from "node:path";
|
|
11
11
|
import { TreeSitterAdapter, EXT_TO_LANG } from "./treesitter.js";
|
|
12
12
|
import { createRepoGraph, createEdge, } from "./graph.js";
|
|
@@ -34,11 +34,76 @@ const SKIP_DIRS = new Set([
|
|
|
34
34
|
const MAX_FILES = 20_000;
|
|
35
35
|
/** File extensions to scan */
|
|
36
36
|
const SOURCE_EXTS = new Set(Object.keys(EXT_TO_LANG));
|
|
37
|
+
// ── In-memory cache ─────────────────────────────────────────────────────────
|
|
38
|
+
let cachedGraph = null;
|
|
39
|
+
let cachedProjectPath = "";
|
|
40
|
+
let cachedMtime = 0;
|
|
41
|
+
/**
|
|
42
|
+
* Get the latest file modification time in the project (for cache invalidation).
|
|
43
|
+
* Walks project directories (same skip rules as collectSourceFiles) but only
|
|
44
|
+
* stats files instead of parsing them, so it's much cheaper than a full scan.
|
|
45
|
+
*/
|
|
46
|
+
function getLatestFileMtime(root) {
|
|
47
|
+
let latest = 0;
|
|
48
|
+
function walk(dir) {
|
|
49
|
+
let entries;
|
|
50
|
+
try {
|
|
51
|
+
entries = readdirSync(dir, { withFileTypes: true });
|
|
52
|
+
}
|
|
53
|
+
catch {
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
for (const entry of entries) {
|
|
57
|
+
const fullPath = join(dir, entry.name);
|
|
58
|
+
if (entry.isDirectory()) {
|
|
59
|
+
if (SKIP_DIRS.has(entry.name))
|
|
60
|
+
continue;
|
|
61
|
+
if (entry.name.startsWith("."))
|
|
62
|
+
continue;
|
|
63
|
+
walk(fullPath);
|
|
64
|
+
}
|
|
65
|
+
else if (entry.isFile()) {
|
|
66
|
+
const ext = entry.name.slice(entry.name.lastIndexOf(".")).toLowerCase();
|
|
67
|
+
if (SOURCE_EXTS.has(ext)) {
|
|
68
|
+
try {
|
|
69
|
+
const mtime = statSync(fullPath).mtimeMs;
|
|
70
|
+
if (mtime > latest)
|
|
71
|
+
latest = mtime;
|
|
72
|
+
}
|
|
73
|
+
catch {
|
|
74
|
+
// skip unstatable files
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
walk(resolve(root));
|
|
81
|
+
return latest;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get (or build) the project graph with caching.
|
|
85
|
+
* Returns a cached graph if no files have been modified since the last scan.
|
|
86
|
+
* The cache is per-process (not persisted to disk).
|
|
87
|
+
*/
|
|
88
|
+
export function getProjectGraph(projectRoot = ".", log) {
|
|
89
|
+
const root = resolve(projectRoot);
|
|
90
|
+
const currentMtime = getLatestFileMtime(root);
|
|
91
|
+
if (cachedGraph && cachedProjectPath === root && cachedMtime >= currentMtime) {
|
|
92
|
+
return cachedGraph;
|
|
93
|
+
}
|
|
94
|
+
cachedGraph = scanProject(root, log);
|
|
95
|
+
cachedProjectPath = root;
|
|
96
|
+
cachedMtime = currentMtime;
|
|
97
|
+
return cachedGraph;
|
|
98
|
+
}
|
|
37
99
|
// ── Scanner ──────────────────────────────────────────────────────────────────
|
|
38
100
|
/**
|
|
39
101
|
* Scan a project directory, parse all source files, build the dependency graph,
|
|
40
102
|
* and compute PageRank scores.
|
|
41
103
|
*
|
|
104
|
+
* Uses an in-memory cache: subsequent calls within the same process return the
|
|
105
|
+
* cached graph unless file modification times have changed.
|
|
106
|
+
*
|
|
42
107
|
* @param projectPath - Absolute or relative path to the project root
|
|
43
108
|
* @param log - Optional logger
|
|
44
109
|
* @returns The fully built RepoGraph with PageRank scores set
|
|
@@ -46,6 +111,11 @@ const SOURCE_EXTS = new Set(Object.keys(EXT_TO_LANG));
|
|
|
46
111
|
export function scanProject(projectPath, log) {
|
|
47
112
|
const root = resolve(projectPath);
|
|
48
113
|
const logger = log ?? (() => { });
|
|
114
|
+
// Check cache
|
|
115
|
+
const currentMtime = getLatestFileMtime(root);
|
|
116
|
+
if (cachedGraph && cachedProjectPath === root && cachedMtime >= currentMtime) {
|
|
117
|
+
return cachedGraph;
|
|
118
|
+
}
|
|
49
119
|
const adapter = new TreeSitterAdapter(logger);
|
|
50
120
|
const graph = createRepoGraph();
|
|
51
121
|
// Collect all source files
|
|
@@ -150,6 +220,10 @@ export function scanProject(projectPath, log) {
|
|
|
150
220
|
}
|
|
151
221
|
// Phase 3: Compute PageRank
|
|
152
222
|
calculatePageRank(graph);
|
|
223
|
+
// Update cache
|
|
224
|
+
cachedGraph = graph;
|
|
225
|
+
cachedProjectPath = root;
|
|
226
|
+
cachedMtime = currentMtime;
|
|
153
227
|
return graph;
|
|
154
228
|
}
|
|
155
229
|
// ── File collection ──────────────────────────────────────────────────────────
|
package/dist/core/scanner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../core/scanner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scanner.js","sourceRoot":"","sources":["../../core/scanner.ts"],"names":[],"mappings":"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"}
|
|
@@ -59,10 +59,10 @@ export function handleWriteResult(toolName, projectRoot) {
|
|
|
59
59
|
return !incoming || incoming.length === 0;
|
|
60
60
|
}).length;
|
|
61
61
|
if (orphanCount > 0) {
|
|
62
|
-
lines.push(`-
|
|
62
|
+
lines.push(`- [WARN] Found ${orphanCount} symbols with no incoming references (potential orphans)`);
|
|
63
63
|
}
|
|
64
64
|
else {
|
|
65
|
-
lines.push("-
|
|
65
|
+
lines.push("- [PASS] No orphan symbols detected");
|
|
66
66
|
}
|
|
67
67
|
// File relationship summary
|
|
68
68
|
const fileCount = graph.fileSymbols.size;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"after-write.js","sourceRoot":"","sources":["../../hooks/after-write.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,0CAA0C;AAC1C,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAClC,QAAgB,EAChB,OAAgB;IAEhB,OAAO,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;AAC9C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAChC,QAAgB,EAChB,WAAmB;IAEnB,IAAI,CAAC;QACJ,oCAAoC;QACpC,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAEjD,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,iCAAiC,QAAQ,GAAG,CAAC,CAAC;QACzD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,gBAAgB;QAChB,KAAK,CAAC,IAAI,CACT,iBAAiB,KAAK,CAAC,OAAO,CAAC,IAAI,mBAAmB,KAAK,CAAC,WAAW,CAAC,IAAI,QAAQ,CACpF,CAAC;QAEF,+BAA+B;QAC/B,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAC9C,IAAI,IAAI,EAAE,CAAC;YACV,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM,IAAI,CAAC,CAAC;YAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,EAAE,MAAM,IAAI,CAAC,CAAC;YACnD,MAAM,YAAY,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,CAAC;YAChD,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;gBACtB,KAAK,CAAC,IAAI,CACT,qBAAqB,KAAK,YAAY,OAAO,cAAc,QAAQ,WAAW,CAC9E,CAAC;YACH,CAAC;QACF,CAAC;QAED,4DAA4D;QAC5D,MAAM,WAAW,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE;YAC9D,4CAA4C;YAC5C,IAAI,GAAG,CAAC,UAAU,KAAK,UAAU,IAAI,GAAG,CAAC,QAAQ,GAAG,IAAI;gBAAE,OAAO,KAAK,CAAC;YACvE,IAAI,GAAG,CAAC,IAAI,KAAK,oBAAoB;gBAAE,OAAO,KAAK,CAAC;YACpD,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBAC7D,OAAO,KAAK,CAAC;YACd,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAC5C,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAC,MAAM,CAAC;QAEV,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CACT,
|
|
1
|
+
{"version":3,"file":"after-write.js","sourceRoot":"","sources":["../../hooks/after-write.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACX,YAAY,EAEZ,MAAM,yBAAyB,CAAC;AA0BjC,MAAM,CAAC,OAAO,WAAW,EAAE,EAAE,YAAY,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACX,YAAY,EAEZ,MAAM,yBAAyB,CAAC;AA0BjC,MAAM,CAAC,OAAO,WAAW,EAAE,EAAE,YAAY,GAAG,IAAI,CAwF/C"}
|
package/dist/index.js
CHANGED
|
@@ -10,26 +10,26 @@
|
|
|
10
10
|
*/
|
|
11
11
|
import { LspManager } from "./lsp/manager.js";
|
|
12
12
|
import { generateSetupReport } from "./lsp/setup.js";
|
|
13
|
+
import { setLspManager } from "./core/lsp-global.js";
|
|
13
14
|
// ── Hook registrations ───────────────────────────────────────────────────
|
|
14
15
|
import { registerBeforeStartHook } from "./hooks/before-start.js";
|
|
15
16
|
import { registerAfterWriteHook } from "./hooks/after-write.js";
|
|
16
17
|
// ── Tool registrations ────────────────────────────────────────────────────
|
|
17
18
|
import { registerOverview } from "./tools/overview.js";
|
|
18
19
|
import { registerImpact } from "./tools/impact.js";
|
|
19
|
-
import { registerCodequery } from "./tools/codequery.js";
|
|
20
20
|
import { registerCallChain } from "./tools/call_chain.js";
|
|
21
21
|
import { registerVerify } from "./tools/verify.js";
|
|
22
22
|
import { registerCheck } from "./tools/check.js";
|
|
23
23
|
import { registerFix } from "./tools/fix.js";
|
|
24
24
|
import { registerReady } from "./tools/ready.js";
|
|
25
|
-
import { registerRefs } from "./tools/refs.js";
|
|
26
25
|
import { registerRoutes } from "./tools/routes.js";
|
|
27
26
|
import { registerStateMap } from "./tools/state_map.js";
|
|
28
|
-
import { registerOrphan } from "./tools/orphan.js";
|
|
29
27
|
import { registerHotspots } from "./tools/hotspots.js";
|
|
30
28
|
import { registerCodesearch } from "./tools/codesearch.js";
|
|
31
29
|
import { registerFileDetail } from "./tools/file_detail.js";
|
|
32
30
|
import { registerSymbol } from "./tools/symbol.js";
|
|
31
|
+
import { registerHover } from "./tools/hover.js";
|
|
32
|
+
import { registerFindTests } from "./tools/find_tests.js";
|
|
33
33
|
export default function (pi) {
|
|
34
34
|
const projectRoot = process.cwd();
|
|
35
35
|
const log = (msg) => {
|
|
@@ -38,6 +38,8 @@ export default function (pi) {
|
|
|
38
38
|
};
|
|
39
39
|
// ── LSP manager ─────────────────────────────────────────────────────────
|
|
40
40
|
const lspManager = new LspManager(projectRoot, log);
|
|
41
|
+
// Share LspManager with tools via global reference
|
|
42
|
+
setLspManager(lspManager);
|
|
41
43
|
// Auto-initialize LSP on agent start
|
|
42
44
|
pi.on("before_agent_start", async (_event, _ctx) => {
|
|
43
45
|
try {
|
|
@@ -90,20 +92,19 @@ export default function (pi) {
|
|
|
90
92
|
// ── Tools (LLM-visible) ────────────────────────────────────────────────
|
|
91
93
|
registerOverview(pi);
|
|
92
94
|
registerImpact(pi);
|
|
93
|
-
registerCodequery(pi);
|
|
94
95
|
registerCallChain(pi);
|
|
95
96
|
registerVerify(pi);
|
|
96
97
|
registerCheck(pi);
|
|
97
98
|
registerFix(pi);
|
|
98
99
|
registerReady(pi);
|
|
99
|
-
registerRefs(pi);
|
|
100
100
|
registerRoutes(pi);
|
|
101
101
|
registerStateMap(pi);
|
|
102
|
-
registerOrphan(pi);
|
|
103
102
|
registerHotspots(pi);
|
|
104
103
|
registerCodesearch(pi);
|
|
105
104
|
registerFileDetail(pi);
|
|
106
105
|
registerSymbol(pi);
|
|
106
|
+
registerHover(pi);
|
|
107
|
+
registerFindTests(pi);
|
|
107
108
|
log("pi-shazam loaded");
|
|
108
109
|
}
|
|
109
110
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAMH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD,4EAA4E;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEhE,6EAA6E;AAC7E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
|
package/dist/lsp/setup.js
CHANGED
|
@@ -93,7 +93,7 @@ export function generateSetupReport(projectRoot, languages) {
|
|
|
93
93
|
lines.push("");
|
|
94
94
|
// Available servers
|
|
95
95
|
if (available.length > 0) {
|
|
96
|
-
lines.push("###
|
|
96
|
+
lines.push("### [PASS] Available LSP Servers");
|
|
97
97
|
lines.push("");
|
|
98
98
|
for (const d of available) {
|
|
99
99
|
lines.push(`- **${d.language}**: \`${d.serverName}\` (${d.source}: \`${d.command.join(" ")}\`)`);
|
|
@@ -102,7 +102,7 @@ export function generateSetupReport(projectRoot, languages) {
|
|
|
102
102
|
}
|
|
103
103
|
// Missing servers with install instructions
|
|
104
104
|
if (missing.length > 0) {
|
|
105
|
-
lines.push("###
|
|
105
|
+
lines.push("### [FAIL] Missing LSP Servers");
|
|
106
106
|
lines.push("");
|
|
107
107
|
for (const d of missing) {
|
|
108
108
|
const instruction = INSTALL_INSTRUCTIONS.find((i) => i.language === d.language &&
|
package/dist/lsp/setup.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../lsp/setup.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"setup.js","sourceRoot":"","sources":["../../lsp/setup.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,4 +6,14 @@ import type { RepoGraph } from "../core/graph.js";
|
|
|
6
6
|
export declare function registerCallChain(pi: ExtensionAPI): void;
|
|
7
7
|
export declare function executeCallChain(graph: RepoGraph, symbolName: string, depth?: number): string;
|
|
8
8
|
export declare function executeCallChainJson(graph: RepoGraph, symbolName: string, depth: number): string;
|
|
9
|
+
interface FlatReference {
|
|
10
|
+
symbol: string;
|
|
11
|
+
file: string;
|
|
12
|
+
line: number;
|
|
13
|
+
kind: string;
|
|
14
|
+
direction: string;
|
|
15
|
+
}
|
|
16
|
+
export declare function getFlatReferences(graph: RepoGraph, symbolName: string): FlatReference[];
|
|
17
|
+
export declare function formatFlatReferences(refs: FlatReference[], symbolName: string): string;
|
|
18
|
+
export {};
|
|
9
19
|
//# sourceMappingURL=call_chain.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call_chain.d.ts","sourceRoot":"","sources":["../../tools/call_chain.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,SAAS,EAAU,MAAM,kBAAkB,CAAC;AAG1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"call_chain.d.ts","sourceRoot":"","sources":["../../tools/call_chain.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,SAAS,EAAU,MAAM,kBAAkB,CAAC;AAG1D,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,YAAY,GAAG,IAAI,CAuDxD;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,MAAU,GACf,MAAM,CA0CR;AAED,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACX,MAAM,CAwBR;AAsED,UAAU,aAAa;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,SAAS,EAChB,UAAU,EAAE,MAAM,GAChB,aAAa,EAAE,CAgDjB;AAED,wBAAgB,oBAAoB,CACnC,IAAI,EAAE,aAAa,EAAE,EACrB,UAAU,EAAE,MAAM,GAChB,MAAM,CAkCR"}
|
package/dist/tools/call_chain.js
CHANGED
|
@@ -12,27 +12,42 @@ you miss is a bug you will ship.
|
|
|
12
12
|
|
|
13
13
|
Returns: incoming calls (who calls this), outgoing calls (what this
|
|
14
14
|
calls), and full reference list. Pass --depth to control traversal
|
|
15
|
-
depth (default 2).
|
|
15
|
+
depth (default 2). Pass --flat for a simple flat list of all references
|
|
16
|
+
(equivalent to shazam_refs, which is now removed).
|
|
16
17
|
|
|
17
18
|
Scenario: changing parameter order. Removing a function. Renaming an
|
|
18
19
|
exported symbol. Changing return type. Adding required parameters.`,
|
|
19
20
|
parameters: Type.Object({
|
|
20
21
|
symbol: Type.String(),
|
|
21
22
|
depth: Type.Optional(Type.Number()),
|
|
23
|
+
flat: Type.Optional(Type.Boolean()),
|
|
22
24
|
json: Type.Optional(Type.Boolean()),
|
|
23
25
|
}),
|
|
24
26
|
async execute(_toolCallId, params, _signal, _onUpdate, _ctx) {
|
|
25
27
|
const json = params.json ?? false;
|
|
28
|
+
const flat = params.flat ?? false;
|
|
26
29
|
const graph = scanProject(".");
|
|
27
30
|
const depth = params.depth ?? 2;
|
|
28
|
-
|
|
31
|
+
if (flat) {
|
|
32
|
+
const refs = getFlatReferences(graph, params.symbol);
|
|
33
|
+
return {
|
|
34
|
+
content: [
|
|
35
|
+
{
|
|
36
|
+
type: "text",
|
|
37
|
+
text: json
|
|
38
|
+
? JSON.stringify(refs, null, 2)
|
|
39
|
+
: formatFlatReferences(refs, params.symbol),
|
|
40
|
+
},
|
|
41
|
+
],
|
|
42
|
+
};
|
|
43
|
+
}
|
|
29
44
|
return {
|
|
30
45
|
content: [
|
|
31
46
|
{
|
|
32
47
|
type: "text",
|
|
33
48
|
text: json
|
|
34
49
|
? executeCallChainJson(graph, params.symbol, depth)
|
|
35
|
-
:
|
|
50
|
+
: executeCallChain(graph, params.symbol, depth),
|
|
36
51
|
},
|
|
37
52
|
],
|
|
38
53
|
};
|
|
@@ -149,4 +164,80 @@ function traceOutgoing(graph, startId, maxDepth) {
|
|
|
149
164
|
}
|
|
150
165
|
return result;
|
|
151
166
|
}
|
|
167
|
+
export function getFlatReferences(graph, symbolName) {
|
|
168
|
+
const targets = findSymbolsByName(graph, symbolName);
|
|
169
|
+
if (targets.length === 0)
|
|
170
|
+
return [];
|
|
171
|
+
const refs = [];
|
|
172
|
+
const seen = new Set();
|
|
173
|
+
for (const target of targets) {
|
|
174
|
+
// Incoming references (who calls this symbol)
|
|
175
|
+
const incoming = graph.incoming.get(target.id);
|
|
176
|
+
if (incoming) {
|
|
177
|
+
for (const edge of incoming) {
|
|
178
|
+
const src = graph.symbols.get(edge.source);
|
|
179
|
+
if (!src)
|
|
180
|
+
continue;
|
|
181
|
+
const key = `${src.name}:${src.file}:${src.line}`;
|
|
182
|
+
if (seen.has(key))
|
|
183
|
+
continue;
|
|
184
|
+
seen.add(key);
|
|
185
|
+
refs.push({
|
|
186
|
+
symbol: src.name,
|
|
187
|
+
file: src.file,
|
|
188
|
+
line: src.line,
|
|
189
|
+
kind: src.kind,
|
|
190
|
+
direction: "incoming",
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// Outgoing references (what this symbol calls)
|
|
195
|
+
const outgoing = graph.outgoing.get(target.id);
|
|
196
|
+
if (outgoing) {
|
|
197
|
+
for (const edge of outgoing) {
|
|
198
|
+
const tgt = graph.symbols.get(edge.target);
|
|
199
|
+
if (!tgt)
|
|
200
|
+
continue;
|
|
201
|
+
const key = `${tgt.name}:${tgt.file}:${tgt.line}`;
|
|
202
|
+
if (seen.has(key))
|
|
203
|
+
continue;
|
|
204
|
+
seen.add(key);
|
|
205
|
+
refs.push({
|
|
206
|
+
symbol: tgt.name,
|
|
207
|
+
file: tgt.file,
|
|
208
|
+
line: tgt.line,
|
|
209
|
+
kind: tgt.kind,
|
|
210
|
+
direction: "outgoing",
|
|
211
|
+
});
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
}
|
|
215
|
+
return refs;
|
|
216
|
+
}
|
|
217
|
+
export function formatFlatReferences(refs, symbolName) {
|
|
218
|
+
if (refs.length === 0) {
|
|
219
|
+
return `No references found for "${symbolName}".`;
|
|
220
|
+
}
|
|
221
|
+
const lines = [
|
|
222
|
+
`## Flat References for \`${symbolName}\` (${refs.length} total)`,
|
|
223
|
+
"",
|
|
224
|
+
];
|
|
225
|
+
const incoming = refs.filter((r) => r.direction === "incoming");
|
|
226
|
+
const outgoing = refs.filter((r) => r.direction === "outgoing");
|
|
227
|
+
if (incoming.length > 0) {
|
|
228
|
+
lines.push(`### Incoming (${incoming.length})`);
|
|
229
|
+
for (const r of incoming) {
|
|
230
|
+
lines.push(`- ${r.kind} \`${r.symbol}\` — ${r.file}:${r.line}`);
|
|
231
|
+
}
|
|
232
|
+
lines.push("");
|
|
233
|
+
}
|
|
234
|
+
if (outgoing.length > 0) {
|
|
235
|
+
lines.push(`### Outgoing (${outgoing.length})`);
|
|
236
|
+
for (const r of outgoing) {
|
|
237
|
+
lines.push(`- ${r.kind} \`${r.symbol}\` — ${r.file}:${r.line}`);
|
|
238
|
+
}
|
|
239
|
+
lines.push("");
|
|
240
|
+
}
|
|
241
|
+
return lines.join("\n");
|
|
242
|
+
}
|
|
152
243
|
//# sourceMappingURL=call_chain.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"call_chain.js","sourceRoot":"","sources":["../../tools/call_chain.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,iBAAiB,CAAC,EAAgB;IACjD,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE
|
|
1
|
+
{"version":3,"file":"call_chain.js","sourceRoot":"","sources":["../../tools/call_chain.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE/B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,MAAM,UAAU,iBAAiB,CAAC,EAAgB;IACjD,EAAE,CAAC,YAAY,CAAC;QACf,IAAI,EAAE,mBAAmB;QACzB,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE;;;;;;;;;;;;mEAYoD;QACjE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE;YACrB,KAAK,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;SACnC,CAAC;QACF,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI;YAC1D,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC;YAClC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,IAAI,KAAK,CAAC;YAClC,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC;YAEhC,IAAI,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACrD,OAAO;oBACN,OAAO,EAAE;wBACR;4BACC,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI;gCACT,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gCAC/B,CAAC,CAAC,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC;yBAC5C;qBACD;iBACD,CAAC;YACH,CAAC;YAED,OAAO;gBACN,OAAO,EAAE;oBACR;wBACC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,IAAI;4BACT,CAAC,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;4BACnD,CAAC,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC;qBAChD;iBACD;aACD,CAAC;QACH,CAAC;KACD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC/B,KAAgB,EAChB,UAAkB,EAClB,QAAgB,CAAC;IAEjB,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,qBAAqB,UAAU,EAAE,CAAC;IAC1C,CAAC;IAED,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,KAAK,CAAC,IAAI,CACT,qBAAqB,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,IAAI,OAAO,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,IAAI,GAAG,CACrF,CAAC;QACF,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,oCAAoC;QACpC,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,uBAAuB,aAAa,CAAC,MAAM,eAAe,KAAK,UAAU,CAAC,CAAC;YACtF,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,aAAa,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,KAAK,CAAC,IAAI,CACT,GAAG,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,CAC1F,CAAC;YACH,CAAC;QACF,CAAC;QAED,sCAAsC;QACtC,MAAM,aAAa,GAAG,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAC7D,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,KAAK,CAAC,IAAI,CAAC,uBAAuB,aAAa,CAAC,MAAM,eAAe,KAAK,UAAU,CAAC,CAAC;YACtF,KAAK,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,IAAI,aAAa,EAAE,CAAC;gBAChD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAClC,KAAK,CAAC,IAAI,CACT,GAAG,MAAM,IAAI,KAAK,KAAK,GAAG,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,QAAQ,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,GAAG,CAC1F,CAAC;YACH,CAAC;QACF,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAChC,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,KAAgB,EAChB,UAAkB,EAClB,KAAa;IAEb,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrD,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QACvC,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;QACrG,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7E,KAAK;YACL,MAAM,EAAE,GAAG,CAAC,IAAI;YAChB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;QACH,QAAQ,EAAE,aAAa,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,CAAC;YAC7E,KAAK;YACL,MAAM,EAAE,GAAG,CAAC,IAAI;YAChB,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,IAAI,EAAE,IAAI,CAAC,IAAI;SACf,CAAC,CAAC;KACH,CAAC,CAAC,CAAC;IAEJ,OAAO,IAAI,CAAC,SAAS,CAAC;QACrB,cAAc,EAAE,KAAK;QACrB,OAAO,EAAE,YAAY;QACrB,MAAM,EAAE,IAAI;QACZ,MAAM;KACN,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAgB,EAAE,IAAY;IACxD,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QAC1C,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,OAAO,CAAC;AAChB,CAAC;AAED,SAAS,aAAa,CACrB,KAAgB,EAChB,OAAe,EACf,QAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,MAAM,GAAyC,EAAE,CAAC;IACxD,MAAM,KAAK,GAAoC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QACrC,IAAI,KAAK,IAAI,QAAQ;YAAE,SAAS;QAEhC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,SAAS;QAExB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,SAAS;YAClD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CACrB,KAAgB,EAChB,OAAe,EACf,QAAgB;IAEhB,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,MAAM,MAAM,GAAyC,EAAE,CAAC;IACxD,MAAM,KAAK,GAAoC,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAErB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,EAAG,CAAC;QACrC,IAAI,KAAK,IAAI,QAAQ;YAAE,SAAS;QAEhC,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,QAAQ;YAAE,SAAS;QAExB,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;gBAAE,SAAS;YAClD,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzB,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;YACvC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,CAAC,CAAC;QACnD,CAAC;IACF,CAAC;IAED,OAAO,MAAM,CAAC;AACf,CAAC;AAYD,MAAM,UAAU,iBAAiB,CAChC,KAAgB,EAChB,UAAkB;IAElB,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;IACrD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAEpC,MAAM,IAAI,GAAoB,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE/B,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC9B,8CAA8C;QAC9C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACd,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3C,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBAClD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,GAAG,CAAC,IAAI;oBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,SAAS,EAAE,UAAU;iBACrB,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;QAED,+CAA+C;QAC/C,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/C,IAAI,QAAQ,EAAE,CAAC;YACd,KAAK,MAAM,IAAI,IAAI,QAAQ,EAAE,CAAC;gBAC7B,MAAM,GAAG,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAC3C,IAAI,CAAC,GAAG;oBAAE,SAAS;gBACnB,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBAClD,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;oBAAE,SAAS;gBAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACd,IAAI,CAAC,IAAI,CAAC;oBACT,MAAM,EAAE,GAAG,CAAC,IAAI;oBAChB,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,SAAS,EAAE,UAAU;iBACrB,CAAC,CAAC;YACJ,CAAC;QACF,CAAC;IACF,CAAC;IAED,OAAO,IAAI,CAAC;AACb,CAAC;AAED,MAAM,UAAU,oBAAoB,CACnC,IAAqB,EACrB,UAAkB;IAElB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,4BAA4B,UAAU,IAAI,CAAC;IACnD,CAAC;IAED,MAAM,KAAK,GAAa;QACvB,4BAA4B,UAAU,OAAO,IAAI,CAAC,MAAM,SAAS;QACjE,EAAE;KACF,CAAC;IAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC;IAChE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,UAAU,CAAC,CAAC;IAEhE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CACT,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CACnD,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,iBAAiB,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QAChD,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;YAC1B,KAAK,CAAC,IAAI,CACT,KAAK,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,MAAM,QAAQ,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CACnD,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC"}
|