@colbymchenry/codegraph 0.7.3 → 0.7.6

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 (176) hide show
  1. package/README.md +57 -0
  2. package/dist/bin/codegraph.js +39 -4
  3. package/dist/bin/codegraph.js.map +1 -1
  4. package/dist/bin/node-version-check.d.ts +17 -0
  5. package/dist/bin/node-version-check.d.ts.map +1 -0
  6. package/dist/bin/node-version-check.js +39 -0
  7. package/dist/bin/node-version-check.js.map +1 -0
  8. package/dist/db/index.d.ts +9 -2
  9. package/dist/db/index.d.ts.map +1 -1
  10. package/dist/db/index.js +17 -7
  11. package/dist/db/index.js.map +1 -1
  12. package/dist/db/migrations.d.ts +1 -1
  13. package/dist/db/migrations.d.ts.map +1 -1
  14. package/dist/db/migrations.js +11 -1
  15. package/dist/db/migrations.js.map +1 -1
  16. package/dist/db/queries.d.ts +16 -0
  17. package/dist/db/queries.d.ts.map +1 -1
  18. package/dist/db/queries.js +144 -7
  19. package/dist/db/queries.js.map +1 -1
  20. package/dist/db/schema.sql +6 -3
  21. package/dist/db/sqlite-adapter.d.ts +23 -4
  22. package/dist/db/sqlite-adapter.d.ts.map +1 -1
  23. package/dist/db/sqlite-adapter.js +51 -11
  24. package/dist/db/sqlite-adapter.js.map +1 -1
  25. package/dist/extraction/grammars.d.ts +1 -1
  26. package/dist/extraction/grammars.d.ts.map +1 -1
  27. package/dist/extraction/grammars.js +12 -4
  28. package/dist/extraction/grammars.js.map +1 -1
  29. package/dist/extraction/index.d.ts +20 -0
  30. package/dist/extraction/index.d.ts.map +1 -1
  31. package/dist/extraction/index.js +111 -7
  32. package/dist/extraction/index.js.map +1 -1
  33. package/dist/extraction/languages/index.d.ts.map +1 -1
  34. package/dist/extraction/languages/index.js +2 -0
  35. package/dist/extraction/languages/index.js.map +1 -1
  36. package/dist/extraction/languages/scala.d.ts +3 -0
  37. package/dist/extraction/languages/scala.d.ts.map +1 -0
  38. package/dist/extraction/languages/scala.js +139 -0
  39. package/dist/extraction/languages/scala.js.map +1 -0
  40. package/dist/extraction/parse-worker.js +39 -2
  41. package/dist/extraction/parse-worker.js.map +1 -1
  42. package/dist/extraction/tree-sitter.d.ts +32 -16
  43. package/dist/extraction/tree-sitter.d.ts.map +1 -1
  44. package/dist/extraction/tree-sitter.js +266 -67
  45. package/dist/extraction/tree-sitter.js.map +1 -1
  46. package/dist/extraction/vue-extractor.d.ts +36 -0
  47. package/dist/extraction/vue-extractor.d.ts.map +1 -0
  48. package/dist/extraction/vue-extractor.js +163 -0
  49. package/dist/extraction/vue-extractor.js.map +1 -0
  50. package/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  51. package/dist/index.d.ts +7 -0
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +9 -0
  54. package/dist/index.js.map +1 -1
  55. package/dist/mcp/index.d.ts.map +1 -1
  56. package/dist/mcp/index.js +6 -1
  57. package/dist/mcp/index.js.map +1 -1
  58. package/dist/mcp/server-instructions.d.ts +19 -0
  59. package/dist/mcp/server-instructions.d.ts.map +1 -0
  60. package/dist/mcp/server-instructions.js +59 -0
  61. package/dist/mcp/server-instructions.js.map +1 -0
  62. package/dist/mcp/tools.d.ts.map +1 -1
  63. package/dist/mcp/tools.js +13 -2
  64. package/dist/mcp/tools.js.map +1 -1
  65. package/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
  66. package/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
  67. package/dist/resolution/frameworks/cargo-workspace.js +225 -0
  68. package/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
  69. package/dist/resolution/frameworks/csharp.d.ts.map +1 -1
  70. package/dist/resolution/frameworks/csharp.js +72 -78
  71. package/dist/resolution/frameworks/csharp.js.map +1 -1
  72. package/dist/resolution/frameworks/express.d.ts.map +1 -1
  73. package/dist/resolution/frameworks/express.js +47 -26
  74. package/dist/resolution/frameworks/express.js.map +1 -1
  75. package/dist/resolution/frameworks/go.d.ts.map +1 -1
  76. package/dist/resolution/frameworks/go.js +41 -72
  77. package/dist/resolution/frameworks/go.js.map +1 -1
  78. package/dist/resolution/frameworks/index.d.ts +7 -0
  79. package/dist/resolution/frameworks/index.d.ts.map +1 -1
  80. package/dist/resolution/frameworks/index.js +13 -1
  81. package/dist/resolution/frameworks/index.js.map +1 -1
  82. package/dist/resolution/frameworks/java.d.ts.map +1 -1
  83. package/dist/resolution/frameworks/java.js +36 -40
  84. package/dist/resolution/frameworks/java.js.map +1 -1
  85. package/dist/resolution/frameworks/laravel.d.ts.map +1 -1
  86. package/dist/resolution/frameworks/laravel.js +94 -44
  87. package/dist/resolution/frameworks/laravel.js.map +1 -1
  88. package/dist/resolution/frameworks/python.d.ts.map +1 -1
  89. package/dist/resolution/frameworks/python.js +163 -151
  90. package/dist/resolution/frameworks/python.js.map +1 -1
  91. package/dist/resolution/frameworks/react.d.ts.map +1 -1
  92. package/dist/resolution/frameworks/react.js +3 -2
  93. package/dist/resolution/frameworks/react.js.map +1 -1
  94. package/dist/resolution/frameworks/ruby.d.ts.map +1 -1
  95. package/dist/resolution/frameworks/ruby.js +39 -91
  96. package/dist/resolution/frameworks/ruby.js.map +1 -1
  97. package/dist/resolution/frameworks/rust.d.ts.map +1 -1
  98. package/dist/resolution/frameworks/rust.js +85 -60
  99. package/dist/resolution/frameworks/rust.js.map +1 -1
  100. package/dist/resolution/frameworks/svelte.d.ts.map +1 -1
  101. package/dist/resolution/frameworks/svelte.js +3 -2
  102. package/dist/resolution/frameworks/svelte.js.map +1 -1
  103. package/dist/resolution/frameworks/swift.d.ts.map +1 -1
  104. package/dist/resolution/frameworks/swift.js +54 -46
  105. package/dist/resolution/frameworks/swift.js.map +1 -1
  106. package/dist/resolution/frameworks/vue.d.ts +9 -0
  107. package/dist/resolution/frameworks/vue.d.ts.map +1 -0
  108. package/dist/resolution/frameworks/vue.js +306 -0
  109. package/dist/resolution/frameworks/vue.js.map +1 -0
  110. package/dist/resolution/import-resolver.d.ts +17 -1
  111. package/dist/resolution/import-resolver.d.ts.map +1 -1
  112. package/dist/resolution/import-resolver.js +256 -46
  113. package/dist/resolution/import-resolver.js.map +1 -1
  114. package/dist/resolution/index.d.ts +8 -0
  115. package/dist/resolution/index.d.ts.map +1 -1
  116. package/dist/resolution/index.js +78 -1
  117. package/dist/resolution/index.js.map +1 -1
  118. package/dist/resolution/name-matcher.d.ts.map +1 -1
  119. package/dist/resolution/name-matcher.js +21 -0
  120. package/dist/resolution/name-matcher.js.map +1 -1
  121. package/dist/resolution/path-aliases.d.ts +68 -0
  122. package/dist/resolution/path-aliases.d.ts.map +1 -0
  123. package/dist/resolution/path-aliases.js +238 -0
  124. package/dist/resolution/path-aliases.js.map +1 -0
  125. package/dist/resolution/strip-comments.d.ts +27 -0
  126. package/dist/resolution/strip-comments.d.ts.map +1 -0
  127. package/dist/resolution/strip-comments.js +441 -0
  128. package/dist/resolution/strip-comments.js.map +1 -0
  129. package/dist/resolution/types.d.ts +63 -3
  130. package/dist/resolution/types.d.ts.map +1 -1
  131. package/dist/search/query-parser.d.ts +57 -0
  132. package/dist/search/query-parser.d.ts.map +1 -0
  133. package/dist/search/query-parser.js +177 -0
  134. package/dist/search/query-parser.js.map +1 -0
  135. package/dist/types.d.ts +11 -4
  136. package/dist/types.d.ts.map +1 -1
  137. package/dist/types.js +68 -1
  138. package/dist/types.js.map +1 -1
  139. package/package.json +6 -3
  140. package/dist/installer/banner.d.ts +0 -40
  141. package/dist/installer/banner.d.ts.map +0 -1
  142. package/dist/installer/banner.js +0 -165
  143. package/dist/installer/banner.js.map +0 -1
  144. package/dist/installer/prompts.d.ts +0 -18
  145. package/dist/installer/prompts.d.ts.map +0 -1
  146. package/dist/installer/prompts.js +0 -113
  147. package/dist/installer/prompts.js.map +0 -1
  148. package/dist/sentry.d.ts +0 -24
  149. package/dist/sentry.d.ts.map +0 -1
  150. package/dist/sentry.js +0 -166
  151. package/dist/sentry.js.map +0 -1
  152. package/dist/sync/git-hooks.d.ts +0 -66
  153. package/dist/sync/git-hooks.d.ts.map +0 -1
  154. package/dist/sync/git-hooks.js +0 -281
  155. package/dist/sync/git-hooks.js.map +0 -1
  156. package/dist/vectors/embedder.d.ts +0 -140
  157. package/dist/vectors/embedder.d.ts.map +0 -1
  158. package/dist/vectors/embedder.js +0 -338
  159. package/dist/vectors/embedder.js.map +0 -1
  160. package/dist/vectors/index.d.ts +0 -9
  161. package/dist/vectors/index.d.ts.map +0 -1
  162. package/dist/vectors/index.js +0 -20
  163. package/dist/vectors/index.js.map +0 -1
  164. package/dist/vectors/manager.d.ts +0 -119
  165. package/dist/vectors/manager.d.ts.map +0 -1
  166. package/dist/vectors/manager.js +0 -274
  167. package/dist/vectors/manager.js.map +0 -1
  168. package/dist/vectors/search.d.ts +0 -134
  169. package/dist/vectors/search.d.ts.map +0 -1
  170. package/dist/vectors/search.js +0 -411
  171. package/dist/vectors/search.js.map +0 -1
  172. package/dist/visualizer/public/index.html +0 -1994
  173. package/dist/visualizer/server.d.ts +0 -46
  174. package/dist/visualizer/server.d.ts.map +0 -1
  175. package/dist/visualizer/server.js +0 -491
  176. package/dist/visualizer/server.js.map +0 -1
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.scalaExtractor = void 0;
4
+ const tree_sitter_helpers_1 = require("../tree-sitter-helpers");
5
+ function getValVarName(node, source) {
6
+ const patternNode = node.childForFieldName('pattern');
7
+ if (!patternNode)
8
+ return null;
9
+ if (patternNode.type === 'identifier')
10
+ return (0, tree_sitter_helpers_1.getNodeText)(patternNode, source);
11
+ const identChild = patternNode.namedChildren.find((c) => c.type === 'identifier');
12
+ return identChild ? (0, tree_sitter_helpers_1.getNodeText)(identChild, source) : null;
13
+ }
14
+ function extractVisibility(node) {
15
+ for (let i = 0; i < node.namedChildCount; i++) {
16
+ const child = node.namedChild(i);
17
+ if (!child)
18
+ continue;
19
+ if (child.type === 'modifiers' || child.type === 'access_modifier') {
20
+ const text = child.text;
21
+ if (text.includes('private'))
22
+ return 'private';
23
+ if (text.includes('protected'))
24
+ return 'protected';
25
+ }
26
+ }
27
+ return 'public';
28
+ }
29
+ exports.scalaExtractor = {
30
+ // top-level function_definition is handled via methodTypes (same pattern as Kotlin)
31
+ functionTypes: [],
32
+ classTypes: ['class_definition', 'object_definition', 'trait_definition'],
33
+ methodTypes: ['function_definition', 'function_declaration'],
34
+ interfaceTypes: [],
35
+ structTypes: [],
36
+ enumTypes: ['enum_definition'],
37
+ enumMemberTypes: [], // handled in visitNode — enum_case_definitions wraps the cases
38
+ typeAliasTypes: ['type_definition'],
39
+ importTypes: ['import_declaration'],
40
+ callTypes: ['call_expression'],
41
+ variableTypes: [], // val/var handled in visitNode (use `pattern` field, not `name`)
42
+ fieldTypes: [],
43
+ extraClassNodeTypes: [],
44
+ nameField: 'name',
45
+ bodyField: 'body',
46
+ paramsField: 'parameters',
47
+ returnField: 'return_type',
48
+ interfaceKind: 'trait',
49
+ classifyClassNode: (node) => {
50
+ if (node.type === 'trait_definition')
51
+ return 'trait';
52
+ return 'class';
53
+ },
54
+ getSignature: (node, source) => {
55
+ const params = node.childForFieldName('parameters');
56
+ const returnType = node.childForFieldName('return_type');
57
+ if (!params && !returnType)
58
+ return undefined;
59
+ let sig = params ? (0, tree_sitter_helpers_1.getNodeText)(params, source) : '';
60
+ if (returnType)
61
+ sig += ': ' + (0, tree_sitter_helpers_1.getNodeText)(returnType, source);
62
+ return sig || undefined;
63
+ },
64
+ getVisibility: (node) => extractVisibility(node),
65
+ isAsync: () => false,
66
+ isStatic: (node) => {
67
+ for (let i = 0; i < node.namedChildCount; i++) {
68
+ const child = node.namedChild(i);
69
+ if (child?.type === 'modifiers' && child.text.includes('static'))
70
+ return true;
71
+ }
72
+ return false;
73
+ },
74
+ visitNode: (node, ctx) => {
75
+ const t = node.type;
76
+ // val/var: name is in `pattern` field (identifier), not `name`
77
+ if (t === 'val_definition' || t === 'var_definition') {
78
+ const name = getValVarName(node, ctx.source);
79
+ if (!name)
80
+ return false;
81
+ const isInClass = ctx.nodeStack.length > 0 &&
82
+ (() => {
83
+ const parentId = ctx.nodeStack[ctx.nodeStack.length - 1];
84
+ const parentNode = ctx.nodes.find((n) => n.id === parentId);
85
+ return parentNode != null && (parentNode.kind === 'class' || parentNode.kind === 'trait' ||
86
+ parentNode.kind === 'interface' || parentNode.kind === 'struct' ||
87
+ parentNode.kind === 'enum' || parentNode.kind === 'module');
88
+ })();
89
+ const kind = isInClass ? 'field' : (t === 'val_definition' ? 'constant' : 'variable');
90
+ const typeNode = node.childForFieldName('type');
91
+ const sig = typeNode
92
+ ? `${t === 'val_definition' ? 'val' : 'var'} ${name}: ${(0, tree_sitter_helpers_1.getNodeText)(typeNode, ctx.source)}`
93
+ : undefined;
94
+ ctx.createNode(kind, name, node, { signature: sig, visibility: extractVisibility(node) });
95
+ return true;
96
+ }
97
+ // enum_case_definitions wraps simple_enum_case / full_enum_case children
98
+ if (t === 'enum_case_definitions') {
99
+ for (let i = 0; i < node.namedChildCount; i++) {
100
+ const child = node.namedChild(i);
101
+ if (!child)
102
+ continue;
103
+ if (child.type === 'simple_enum_case' || child.type === 'full_enum_case') {
104
+ const nameNode = child.childForFieldName('name');
105
+ if (nameNode)
106
+ ctx.createNode('enum_member', (0, tree_sitter_helpers_1.getNodeText)(nameNode, ctx.source), child);
107
+ }
108
+ }
109
+ return true;
110
+ }
111
+ // extension_definition: visit body children directly, no container node
112
+ if (t === 'extension_definition') {
113
+ const body = node.childForFieldName('body');
114
+ if (body) {
115
+ for (let i = 0; i < body.namedChildCount; i++) {
116
+ const child = body.namedChild(i);
117
+ if (child)
118
+ ctx.visitNode(child);
119
+ }
120
+ }
121
+ return true;
122
+ }
123
+ return false;
124
+ },
125
+ extractImport: (node, source) => {
126
+ const importText = (0, tree_sitter_helpers_1.getNodeText)(node, source).trim();
127
+ const pathNode = node.childForFieldName('path');
128
+ if (pathNode)
129
+ return { moduleName: (0, tree_sitter_helpers_1.getNodeText)(pathNode, source), signature: importText };
130
+ for (let i = 0; i < node.namedChildCount; i++) {
131
+ const child = node.namedChild(i);
132
+ if (child?.type === 'identifier' || child?.type === 'stable_identifier') {
133
+ return { moduleName: (0, tree_sitter_helpers_1.getNodeText)(child, source), signature: importText };
134
+ }
135
+ }
136
+ return null;
137
+ },
138
+ };
139
+ //# sourceMappingURL=scala.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scala.js","sourceRoot":"","sources":["../../../src/extraction/languages/scala.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,43 @@ Object.defineProperty(exports, "__esModule", { value: true });
9
9
  const worker_threads_1 = require("worker_threads");
10
10
  const tree_sitter_1 = require("./tree-sitter");
11
11
  const grammars_1 = require("./grammars");
12
+ // Emscripten prints `Aborted()` (and a follow-up RuntimeError diag
13
+ // line) directly to stderr when WASM aborts — before the JS catch
14
+ // runs. Worker stderr is inherited by the parent, so each crash leaks
15
+ // a noise line to the user's terminal even though the JS layer
16
+ // already handles the failure cleanly. Filter these specific lines
17
+ // out at the source. Real diagnostic output (anything we log
18
+ // ourselves) goes through console.* / parentPort and is unaffected.
19
+ //
20
+ // Caveats deliberately accepted:
21
+ // - Per-call match: each `write()` call is matched in isolation.
22
+ // If Emscripten ever splits `Aborted(` across two write()s (it
23
+ // doesn't today — synchronous abort prints the whole line at
24
+ // once via libc puts) the first fragment would leak. Buffering
25
+ // across calls would add complexity for a hypothetical case.
26
+ // - Substring exactness: the prefix `Aborted(` is the literal
27
+ // Emscripten signature. Any user code that legitimately writes
28
+ // a stderr line starting with that prefix would also be filtered;
29
+ // in practice no real diagnostic does.
30
+ {
31
+ const realWrite = process.stderr.write.bind(process.stderr);
32
+ process.stderr.write = ((chunk, encoding, cb) => {
33
+ const s = typeof chunk === 'string' ? chunk : Buffer.from(chunk).toString('utf-8');
34
+ if (s.startsWith('Aborted(') ||
35
+ s.includes('Build with -sASSERTIONS for more info')) {
36
+ // Honour the Writable stream contract: callbacks must always
37
+ // fire even when the write is suppressed, or upstream code
38
+ // waiting on the drain signal would hang. Both overload forms
39
+ // are handled (`(chunk, cb)` and `(chunk, encoding, cb)`).
40
+ if (typeof encoding === 'function')
41
+ encoding();
42
+ else if (cb)
43
+ cb();
44
+ return true;
45
+ }
46
+ return realWrite(chunk, encoding, cb);
47
+ });
48
+ }
12
49
  const PARSER_RESET_INTERVAL = 5000;
13
50
  const parseCounts = new Map();
14
51
  worker_threads_1.parentPort.on('message', async (msg) => {
@@ -17,10 +54,10 @@ worker_threads_1.parentPort.on('message', async (msg) => {
17
54
  worker_threads_1.parentPort.postMessage({ type: 'grammars-loaded' });
18
55
  }
19
56
  else if (msg.type === 'parse') {
20
- const { id, filePath, content } = msg;
57
+ const { id, filePath, content, frameworkNames } = msg;
21
58
  try {
22
59
  const language = (0, grammars_1.detectLanguage)(filePath, content);
23
- const result = (0, tree_sitter_1.extractFromSource)(filePath, content, language);
60
+ const result = (0, tree_sitter_1.extractFromSource)(filePath, content, language, frameworkNames);
24
61
  // Periodic parser reset to reclaim WASM heap memory
25
62
  const count = (parseCounts.get(language) ?? 0) + 1;
26
63
  parseCounts.set(language, count);
@@ -1 +1 @@
1
- {"version":3,"file":"parse-worker.js","sourceRoot":"","sources":["../../src/extraction/parse-worker.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;AAEH,mDAA4C;AAC5C,+CAAkD;AAClD,yCAAmF;AAGnF,MAAM,qBAAqB,GAAG,IAAI,CAAC;AACnC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAoB,CAAC;AAEhD,2BAAW,CAAC,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,GAA+F,EAAE,EAAE;IAClI,IAAI,GAAG,CAAC,IAAI,KAAK,eAAe,EAAE,CAAC;QACjC,MAAM,IAAA,mCAAwB,EAAC,GAAG,CAAC,SAAU,CAAC,CAAC;QAC/C,2BAAW,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACvD,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAChC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,IAAA,yBAAc,EAAC,QAAS,EAAE,OAAO,CAAC,CAAC;YACpD,MAAM,MAAM,GAAqB,IAAA,+BAAiB,EAAC,QAAS,EAAE,OAAQ,EAAE,QAAQ,CAAC,CAAC;YAElF,oDAAoD;YACpD,MAAM,KAAK,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;YACnD,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,IAAI,KAAK,GAAG,qBAAqB,KAAK,CAAC,EAAE,CAAC;gBACxC,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;YACxB,CAAC;YAED,2BAAW,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;QAChE,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAEjE,iEAAiE;YACjE,oEAAoE;YACpE,kEAAkE;YAClE,IAAI,OAAO,CAAC,QAAQ,CAAC,6BAA6B,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,2BAAW,CAAC,WAAW,CAAC;gBACtB,IAAI,EAAE,cAAc;gBACpB,EAAE;gBACF,MAAM,EAAE;oBACN,KAAK,EAAE,EAAE;oBACT,KAAK,EAAE,EAAE;oBACT,oBAAoB,EAAE,EAAE;oBACxB,MAAM,EAAE,CAAC,EAAE,OAAO,EAAE,uBAAuB,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;oBACpH,UAAU,EAAE,CAAC;iBACa;aAC7B,CAAC,CAAC;QACL,CAAC;IACH,CAAC;SAAM,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QACnC,2BAAW,CAAC,WAAW,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC,CAAC;IACpD,CAAC;AACH,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"parse-worker.js","sourceRoot":"","sources":["../../src/extraction/parse-worker.ts"],"names":[],"mappings":"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"}
@@ -104,20 +104,6 @@ export declare class TreeSitterExtractor {
104
104
  * Returns true if children should be skipped (struct/interface handled body visiting).
105
105
  */
106
106
  private extractTypeAlias;
107
- /**
108
- * Extract an exported variable declaration that isn't a function.
109
- * Handles patterns like:
110
- * export const X = create(...)
111
- * export const X = { ... }
112
- * export const X = [...]
113
- * export const X = "value"
114
- *
115
- * This is called for `export_statement` nodes that contain a
116
- * `lexical_declaration` with `variable_declarator` children whose
117
- * values are NOT already handled by functionTypes (arrow_function,
118
- * function_expression).
119
- */
120
- private extractExportedVariables;
121
107
  /**
122
108
  * Extract an import
123
109
  *
@@ -129,6 +115,32 @@ export declare class TreeSitterExtractor {
129
115
  * Extract a function call
130
116
  */
131
117
  private extractCall;
118
+ /**
119
+ * `new Foo(...)` / `Foo::new(...)` / object_creation_expression —
120
+ * emit an `instantiates` reference to the class name. The resolver
121
+ * then links it to the class node, producing the `instantiates`
122
+ * edge that powers "what creates instances of X" queries.
123
+ *
124
+ * Children are still walked so nested calls inside the constructor
125
+ * arguments (`new Foo(bar())`) get their own `calls` references.
126
+ */
127
+ private extractInstantiation;
128
+ /**
129
+ * Scan `declNode` and its preceding siblings (within the parent's
130
+ * named children) for decorator nodes, emitting a `decorates`
131
+ * reference from `decoratedId` to each decorator's function name.
132
+ *
133
+ * Why preceding siblings: in TypeScript, `@Foo class Bar {}` parses
134
+ * as an `export_statement` (or top-level wrapper) with the
135
+ * `decorator` as a child *before* the `class_declaration` — so the
136
+ * decorator isn't a child of the class itself. For methods/
137
+ * properties, the decorator IS a direct child of the declaration,
138
+ * so we also scan declNode.namedChildren.
139
+ *
140
+ * Idempotent across grammars: if neither location yields decorators
141
+ * (most non-decorator-using languages), the function is a no-op.
142
+ */
143
+ private extractDecoratorsFor;
132
144
  /**
133
145
  * Visit function body and extract calls (and structural nodes).
134
146
  *
@@ -211,7 +223,11 @@ export declare class TreeSitterExtractor {
211
223
  private visitPascalBlock;
212
224
  }
213
225
  /**
214
- * Extract nodes and edges from source code
226
+ * Extract nodes and edges from source code.
227
+ *
228
+ * If `frameworkNames` is provided, framework-specific extractors matching
229
+ * those names and the file's language are run after the tree-sitter pass.
230
+ * Their nodes/references/errors are merged into the returned result.
215
231
  */
216
- export declare function extractFromSource(filePath: string, source: string, language?: Language): ExtractionResult;
232
+ export declare function extractFromSource(filePath: string, source: string, language?: Language, frameworkNames?: string[]): ExtractionResult;
217
233
  //# sourceMappingURL=tree-sitter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tree-sitter.d.ts","sourceRoot":"","sources":["../../src/extraction/tree-sitter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,QAAQ,EAIR,gBAAgB,EAGjB,MAAM,UAAU,CAAC;AAUlB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAuEvD;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAqB;IACjC,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,KAAK,CAAc;IAC3B,OAAO,CAAC,oBAAoB,CAA6B;IACzD,OAAO,CAAC,MAAM,CAAyB;IACvC,OAAO,CAAC,SAAS,CAAkC;IACnD,OAAO,CAAC,SAAS,CAAgB;IACjC,OAAO,CAAC,WAAW,CAAoC;gBAE3C,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,QAAQ;IAOjE;;OAEG;IACH,OAAO,IAAI,gBAAgB;IAqG3B;;OAEG;IACH,OAAO,CAAC,SAAS;IA6HjB;;OAEG;IACH,OAAO,CAAC,UAAU;IA8ClB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAQxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAiB5B;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAgB7B;;OAEG;IACH,OAAO,CAAC,eAAe;IAsEvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAkCpB;;OAEG;IACH,OAAO,CAAC,aAAa;IAoFrB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgCxB;;OAEG;IACH,OAAO,CAAC,aAAa;IAiCrB;;OAEG;IACH,OAAO,CAAC,WAAW;IAwCnB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAwB1B;;;OAGG;IACH,OAAO,CAAC,eAAe;IA+BvB;;;OAGG;IACH,OAAO,CAAC,YAAY;IAyFpB;;;;;OAKG;IACH,OAAO,CAAC,eAAe;IAyIvB;;;;;OAKG;IACH,OAAO,CAAC,gBAAgB;IAuFxB;;;;;;;;;;;;OAYG;IACH,OAAO,CAAC,wBAAwB;IAyChC;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IA+HrB;;OAEG;IACH,OAAO,CAAC,WAAW;IAuFnB;;;;;;;;;OASG;IACH,OAAO,CAAC,iBAAiB;IA2DzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAgO1B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IA+C3B;;OAEG;IACH,OAAO,CAAC,cAAc;IAStB;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAEvC;IAEH;;OAEG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAW3B;IAEH;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAyB9B;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAYrC;;;OAGG;IACH,OAAO,CAAC,0BAA0B;IAwBlC;;;OAGG;IACH,OAAO,CAAC,eAAe;IAuIvB;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAuE7B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAW1B;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAiBhC;;;OAGG;IACH,OAAO,CAAC,oBAAoB;IA0D5B;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAyCzB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAmBzB;AAGD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,QAAQ,CAAC,EAAE,QAAQ,GAClB,gBAAgB,CA2BlB"}
1
+ {"version":3,"file":"tree-sitter.d.ts","sourceRoot":"","sources":["../../src/extraction/tree-sitter.ts"],"names":[],"mappings":"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"}