@grafema/core 0.2.5-beta → 0.2.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.
Files changed (769) hide show
  1. package/README.md +61 -23
  2. package/dist/DiscoveryManager.d.ts +59 -0
  3. package/dist/DiscoveryManager.d.ts.map +1 -0
  4. package/dist/DiscoveryManager.js +249 -0
  5. package/dist/DiscoveryManager.js.map +1 -0
  6. package/dist/GraphInitializer.d.ts +44 -0
  7. package/dist/GraphInitializer.d.ts.map +1 -0
  8. package/dist/GraphInitializer.js +121 -0
  9. package/dist/GraphInitializer.js.map +1 -0
  10. package/dist/GuaranteeChecker.d.ts +35 -0
  11. package/dist/GuaranteeChecker.d.ts.map +1 -0
  12. package/dist/GuaranteeChecker.js +81 -0
  13. package/dist/GuaranteeChecker.js.map +1 -0
  14. package/dist/Orchestrator.d.ts +34 -151
  15. package/dist/Orchestrator.d.ts.map +1 -1
  16. package/dist/Orchestrator.js +173 -741
  17. package/dist/Orchestrator.js.map +1 -1
  18. package/dist/OrchestratorTypes.d.ts +115 -0
  19. package/dist/OrchestratorTypes.d.ts.map +1 -0
  20. package/dist/OrchestratorTypes.js +6 -0
  21. package/dist/OrchestratorTypes.js.map +1 -0
  22. package/dist/ParallelAnalysisRunner.d.ts +43 -0
  23. package/dist/ParallelAnalysisRunner.d.ts.map +1 -0
  24. package/dist/ParallelAnalysisRunner.js +161 -0
  25. package/dist/ParallelAnalysisRunner.js.map +1 -0
  26. package/dist/PhaseRunner.d.ts +94 -0
  27. package/dist/PhaseRunner.d.ts.map +1 -0
  28. package/dist/PhaseRunner.js +332 -0
  29. package/dist/PhaseRunner.js.map +1 -0
  30. package/dist/config/ConfigLoader.d.ts +51 -1
  31. package/dist/config/ConfigLoader.d.ts.map +1 -1
  32. package/dist/config/ConfigLoader.js +121 -1
  33. package/dist/config/ConfigLoader.js.map +1 -1
  34. package/dist/config/index.d.ts +1 -1
  35. package/dist/config/index.d.ts.map +1 -1
  36. package/dist/config/index.js +1 -1
  37. package/dist/config/index.js.map +1 -1
  38. package/dist/core/ASTWorker.d.ts +2 -0
  39. package/dist/core/ASTWorker.d.ts.map +1 -1
  40. package/dist/core/ASTWorker.js +6 -2
  41. package/dist/core/ASTWorker.js.map +1 -1
  42. package/dist/core/FileOverview.d.ts +124 -0
  43. package/dist/core/FileOverview.d.ts.map +1 -0
  44. package/dist/core/FileOverview.js +257 -0
  45. package/dist/core/FileOverview.js.map +1 -0
  46. package/dist/core/GraphFreshnessChecker.d.ts +1 -1
  47. package/dist/core/GraphFreshnessChecker.d.ts.map +1 -1
  48. package/dist/core/GraphFreshnessChecker.js +7 -5
  49. package/dist/core/GraphFreshnessChecker.js.map +1 -1
  50. package/dist/core/GuaranteeManager.d.ts +13 -0
  51. package/dist/core/GuaranteeManager.d.ts.map +1 -1
  52. package/dist/core/GuaranteeManager.js +63 -2
  53. package/dist/core/GuaranteeManager.js.map +1 -1
  54. package/dist/core/IncrementalReanalyzer.d.ts.map +1 -1
  55. package/dist/core/IncrementalReanalyzer.js +6 -3
  56. package/dist/core/IncrementalReanalyzer.js.map +1 -1
  57. package/dist/core/NodeFactory.d.ts +81 -415
  58. package/dist/core/NodeFactory.d.ts.map +1 -1
  59. package/dist/core/NodeFactory.js +139 -336
  60. package/dist/core/NodeFactory.js.map +1 -1
  61. package/dist/core/ResourceRegistry.d.ts +17 -0
  62. package/dist/core/ResourceRegistry.d.ts.map +1 -0
  63. package/dist/core/ResourceRegistry.js +32 -0
  64. package/dist/core/ResourceRegistry.js.map +1 -0
  65. package/dist/core/ScopeTracker.d.ts +12 -0
  66. package/dist/core/ScopeTracker.d.ts.map +1 -1
  67. package/dist/core/ScopeTracker.js +24 -0
  68. package/dist/core/ScopeTracker.js.map +1 -1
  69. package/dist/core/SemanticId.d.ts +69 -0
  70. package/dist/core/SemanticId.d.ts.map +1 -1
  71. package/dist/core/SemanticId.js +134 -0
  72. package/dist/core/SemanticId.js.map +1 -1
  73. package/dist/core/brandNodeInternal.d.ts +14 -0
  74. package/dist/core/brandNodeInternal.d.ts.map +1 -0
  75. package/dist/core/brandNodeInternal.js +4 -0
  76. package/dist/core/brandNodeInternal.js.map +1 -0
  77. package/dist/core/buildDependencyGraph.d.ts +36 -0
  78. package/dist/core/buildDependencyGraph.d.ts.map +1 -0
  79. package/dist/core/buildDependencyGraph.js +78 -0
  80. package/dist/core/buildDependencyGraph.js.map +1 -0
  81. package/dist/core/factories/CoreFactory.d.ts +223 -0
  82. package/dist/core/factories/CoreFactory.d.ts.map +1 -0
  83. package/dist/core/factories/CoreFactory.js +127 -0
  84. package/dist/core/factories/CoreFactory.js.map +1 -0
  85. package/dist/core/factories/DatabaseFactory.d.ts +29 -0
  86. package/dist/core/factories/DatabaseFactory.d.ts.map +1 -0
  87. package/dist/core/factories/DatabaseFactory.js +25 -0
  88. package/dist/core/factories/DatabaseFactory.js.map +1 -0
  89. package/dist/core/factories/ExternalFactory.d.ts +11 -0
  90. package/dist/core/factories/ExternalFactory.d.ts.map +1 -0
  91. package/dist/core/factories/ExternalFactory.js +16 -0
  92. package/dist/core/factories/ExternalFactory.js.map +1 -0
  93. package/dist/core/factories/HttpFactory.d.ts +22 -0
  94. package/dist/core/factories/HttpFactory.d.ts.map +1 -0
  95. package/dist/core/factories/HttpFactory.js +32 -0
  96. package/dist/core/factories/HttpFactory.js.map +1 -0
  97. package/dist/core/factories/ReactFactory.d.ts +14 -0
  98. package/dist/core/factories/ReactFactory.d.ts.map +1 -0
  99. package/dist/core/factories/ReactFactory.js +13 -0
  100. package/dist/core/factories/ReactFactory.js.map +1 -0
  101. package/dist/core/factories/RustFactory.d.ts +62 -0
  102. package/dist/core/factories/RustFactory.d.ts.map +1 -0
  103. package/dist/core/factories/RustFactory.js +32 -0
  104. package/dist/core/factories/RustFactory.js.map +1 -0
  105. package/dist/core/factories/ServiceFactory.d.ts +12 -0
  106. package/dist/core/factories/ServiceFactory.d.ts.map +1 -0
  107. package/dist/core/factories/ServiceFactory.js +22 -0
  108. package/dist/core/factories/ServiceFactory.js.map +1 -0
  109. package/dist/core/factories/SocketFactory.d.ts +31 -0
  110. package/dist/core/factories/SocketFactory.d.ts.map +1 -0
  111. package/dist/core/factories/SocketFactory.js +35 -0
  112. package/dist/core/factories/SocketFactory.js.map +1 -0
  113. package/dist/core/nodes/DatabaseNode.d.ts +85 -0
  114. package/dist/core/nodes/DatabaseNode.d.ts.map +1 -0
  115. package/dist/core/nodes/DatabaseNode.js +118 -0
  116. package/dist/core/nodes/DatabaseNode.js.map +1 -0
  117. package/dist/core/nodes/ExpressMiddlewareNode.d.ts +47 -0
  118. package/dist/core/nodes/ExpressMiddlewareNode.d.ts.map +1 -0
  119. package/dist/core/nodes/ExpressMiddlewareNode.js +63 -0
  120. package/dist/core/nodes/ExpressMiddlewareNode.js.map +1 -0
  121. package/dist/core/nodes/ExpressMountNode.d.ts +44 -0
  122. package/dist/core/nodes/ExpressMountNode.d.ts.map +1 -0
  123. package/dist/core/nodes/ExpressMountNode.js +61 -0
  124. package/dist/core/nodes/ExpressMountNode.js.map +1 -0
  125. package/dist/core/nodes/ExternalApiNode.d.ts +29 -0
  126. package/dist/core/nodes/ExternalApiNode.d.ts.map +1 -0
  127. package/dist/core/nodes/ExternalApiNode.js +41 -0
  128. package/dist/core/nodes/ExternalApiNode.js.map +1 -0
  129. package/dist/core/nodes/ExternalFunctionNode.d.ts +40 -0
  130. package/dist/core/nodes/ExternalFunctionNode.d.ts.map +1 -0
  131. package/dist/core/nodes/ExternalFunctionNode.js +54 -0
  132. package/dist/core/nodes/ExternalFunctionNode.js.map +1 -0
  133. package/dist/core/nodes/FetchRequestNode.d.ts +54 -0
  134. package/dist/core/nodes/FetchRequestNode.d.ts.map +1 -0
  135. package/dist/core/nodes/FetchRequestNode.js +67 -0
  136. package/dist/core/nodes/FetchRequestNode.js.map +1 -0
  137. package/dist/core/nodes/HttpRouteNode.d.ts +58 -0
  138. package/dist/core/nodes/HttpRouteNode.d.ts.map +1 -0
  139. package/dist/core/nodes/HttpRouteNode.js +72 -0
  140. package/dist/core/nodes/HttpRouteNode.js.map +1 -0
  141. package/dist/core/nodes/NodeKind.d.ts +1 -0
  142. package/dist/core/nodes/NodeKind.d.ts.map +1 -1
  143. package/dist/core/nodes/NodeKind.js +1 -0
  144. package/dist/core/nodes/NodeKind.js.map +1 -1
  145. package/dist/core/nodes/ReactNode.d.ts +53 -0
  146. package/dist/core/nodes/ReactNode.d.ts.map +1 -0
  147. package/dist/core/nodes/ReactNode.js +70 -0
  148. package/dist/core/nodes/ReactNode.js.map +1 -0
  149. package/dist/core/nodes/RustCallNode.d.ts +46 -0
  150. package/dist/core/nodes/RustCallNode.d.ts.map +1 -0
  151. package/dist/core/nodes/RustCallNode.js +62 -0
  152. package/dist/core/nodes/RustCallNode.js.map +1 -0
  153. package/dist/core/nodes/RustFunctionNode.d.ts +58 -0
  154. package/dist/core/nodes/RustFunctionNode.d.ts.map +1 -0
  155. package/dist/core/nodes/RustFunctionNode.js +67 -0
  156. package/dist/core/nodes/RustFunctionNode.js.map +1 -0
  157. package/dist/core/nodes/RustImplNode.d.ts +35 -0
  158. package/dist/core/nodes/RustImplNode.d.ts.map +1 -0
  159. package/dist/core/nodes/RustImplNode.js +55 -0
  160. package/dist/core/nodes/RustImplNode.js.map +1 -0
  161. package/dist/core/nodes/RustMethodNode.d.ts +64 -0
  162. package/dist/core/nodes/RustMethodNode.d.ts.map +1 -0
  163. package/dist/core/nodes/RustMethodNode.js +76 -0
  164. package/dist/core/nodes/RustMethodNode.js.map +1 -0
  165. package/dist/core/nodes/RustModuleNode.d.ts +40 -0
  166. package/dist/core/nodes/RustModuleNode.d.ts.map +1 -0
  167. package/dist/core/nodes/RustModuleNode.js +57 -0
  168. package/dist/core/nodes/RustModuleNode.js.map +1 -0
  169. package/dist/core/nodes/RustStructNode.d.ts +38 -0
  170. package/dist/core/nodes/RustStructNode.d.ts.map +1 -0
  171. package/dist/core/nodes/RustStructNode.js +54 -0
  172. package/dist/core/nodes/RustStructNode.js.map +1 -0
  173. package/dist/core/nodes/RustTraitNode.d.ts +40 -0
  174. package/dist/core/nodes/RustTraitNode.d.ts.map +1 -0
  175. package/dist/core/nodes/RustTraitNode.js +52 -0
  176. package/dist/core/nodes/RustTraitNode.js.map +1 -0
  177. package/dist/core/nodes/ServiceLayerNode.d.ts +85 -0
  178. package/dist/core/nodes/ServiceLayerNode.d.ts.map +1 -0
  179. package/dist/core/nodes/ServiceLayerNode.js +122 -0
  180. package/dist/core/nodes/ServiceLayerNode.js.map +1 -0
  181. package/dist/core/nodes/SocketIONode.d.ts +71 -0
  182. package/dist/core/nodes/SocketIONode.d.ts.map +1 -0
  183. package/dist/core/nodes/SocketIONode.js +111 -0
  184. package/dist/core/nodes/SocketIONode.js.map +1 -0
  185. package/dist/core/nodes/SocketNode.d.ts +87 -0
  186. package/dist/core/nodes/SocketNode.d.ts.map +1 -0
  187. package/dist/core/nodes/SocketNode.js +124 -0
  188. package/dist/core/nodes/SocketNode.js.map +1 -0
  189. package/dist/core/nodes/TypeNode.d.ts +26 -1
  190. package/dist/core/nodes/TypeNode.d.ts.map +1 -1
  191. package/dist/core/nodes/TypeNode.js +21 -3
  192. package/dist/core/nodes/TypeNode.js.map +1 -1
  193. package/dist/core/nodes/TypeParameterNode.d.ts +44 -0
  194. package/dist/core/nodes/TypeParameterNode.d.ts.map +1 -0
  195. package/dist/core/nodes/TypeParameterNode.js +64 -0
  196. package/dist/core/nodes/TypeParameterNode.js.map +1 -0
  197. package/dist/core/nodes/index.d.ts +19 -0
  198. package/dist/core/nodes/index.d.ts.map +1 -1
  199. package/dist/core/nodes/index.js +26 -0
  200. package/dist/core/nodes/index.js.map +1 -1
  201. package/dist/index.d.ts +33 -6
  202. package/dist/index.d.ts.map +1 -1
  203. package/dist/index.js +30 -3
  204. package/dist/index.js.map +1 -1
  205. package/dist/plugins/InfraAnalyzer.d.ts +110 -0
  206. package/dist/plugins/InfraAnalyzer.d.ts.map +1 -0
  207. package/dist/plugins/InfraAnalyzer.js +170 -0
  208. package/dist/plugins/InfraAnalyzer.js.map +1 -0
  209. package/dist/plugins/analysis/DatabaseAnalyzer.d.ts.map +1 -1
  210. package/dist/plugins/analysis/DatabaseAnalyzer.js +18 -15
  211. package/dist/plugins/analysis/DatabaseAnalyzer.js.map +1 -1
  212. package/dist/plugins/analysis/ExpressAnalyzer.d.ts.map +1 -1
  213. package/dist/plugins/analysis/ExpressAnalyzer.js +27 -26
  214. package/dist/plugins/analysis/ExpressAnalyzer.js.map +1 -1
  215. package/dist/plugins/analysis/ExpressResponseAnalyzer.d.ts.map +1 -1
  216. package/dist/plugins/analysis/ExpressResponseAnalyzer.js +5 -3
  217. package/dist/plugins/analysis/ExpressResponseAnalyzer.js.map +1 -1
  218. package/dist/plugins/analysis/ExpressRouteAnalyzer.d.ts.map +1 -1
  219. package/dist/plugins/analysis/ExpressRouteAnalyzer.js +36 -39
  220. package/dist/plugins/analysis/ExpressRouteAnalyzer.js.map +1 -1
  221. package/dist/plugins/analysis/FetchAnalyzer.d.ts.map +1 -1
  222. package/dist/plugins/analysis/FetchAnalyzer.js +23 -39
  223. package/dist/plugins/analysis/FetchAnalyzer.js.map +1 -1
  224. package/dist/plugins/analysis/IncrementalAnalysisPlugin.d.ts.map +1 -1
  225. package/dist/plugins/analysis/IncrementalAnalysisPlugin.js +3 -2
  226. package/dist/plugins/analysis/IncrementalAnalysisPlugin.js.map +1 -1
  227. package/dist/plugins/analysis/JSASTAnalyzer.d.ts +23 -85
  228. package/dist/plugins/analysis/JSASTAnalyzer.d.ts.map +1 -1
  229. package/dist/plugins/analysis/JSASTAnalyzer.js +351 -1887
  230. package/dist/plugins/analysis/JSASTAnalyzer.js.map +1 -1
  231. package/dist/plugins/analysis/NestJSRouteAnalyzer.d.ts +28 -0
  232. package/dist/plugins/analysis/NestJSRouteAnalyzer.d.ts.map +1 -0
  233. package/dist/plugins/analysis/NestJSRouteAnalyzer.js +196 -0
  234. package/dist/plugins/analysis/NestJSRouteAnalyzer.js.map +1 -0
  235. package/dist/plugins/analysis/ReactAnalyzer.d.ts +1 -61
  236. package/dist/plugins/analysis/ReactAnalyzer.d.ts.map +1 -1
  237. package/dist/plugins/analysis/ReactAnalyzer.js +24 -915
  238. package/dist/plugins/analysis/ReactAnalyzer.js.map +1 -1
  239. package/dist/plugins/analysis/RustAnalyzer.d.ts.map +1 -1
  240. package/dist/plugins/analysis/RustAnalyzer.js +31 -66
  241. package/dist/plugins/analysis/RustAnalyzer.js.map +1 -1
  242. package/dist/plugins/analysis/SQLiteAnalyzer.d.ts.map +1 -1
  243. package/dist/plugins/analysis/SQLiteAnalyzer.js +13 -6
  244. package/dist/plugins/analysis/SQLiteAnalyzer.js.map +1 -1
  245. package/dist/plugins/analysis/ServiceLayerAnalyzer.d.ts.map +1 -1
  246. package/dist/plugins/analysis/ServiceLayerAnalyzer.js +10 -7
  247. package/dist/plugins/analysis/ServiceLayerAnalyzer.js.map +1 -1
  248. package/dist/plugins/analysis/SocketAnalyzer.d.ts +81 -0
  249. package/dist/plugins/analysis/SocketAnalyzer.d.ts.map +1 -0
  250. package/dist/plugins/analysis/SocketAnalyzer.js +475 -0
  251. package/dist/plugins/analysis/SocketAnalyzer.js.map +1 -0
  252. package/dist/plugins/analysis/SocketIOAnalyzer.d.ts.map +1 -1
  253. package/dist/plugins/analysis/SocketIOAnalyzer.js +13 -18
  254. package/dist/plugins/analysis/SocketIOAnalyzer.js.map +1 -1
  255. package/dist/plugins/analysis/SystemDbAnalyzer.d.ts.map +1 -1
  256. package/dist/plugins/analysis/SystemDbAnalyzer.js +8 -5
  257. package/dist/plugins/analysis/SystemDbAnalyzer.js.map +1 -1
  258. package/dist/plugins/analysis/ast/CollisionResolver.d.ts +65 -0
  259. package/dist/plugins/analysis/ast/CollisionResolver.d.ts.map +1 -0
  260. package/dist/plugins/analysis/ast/CollisionResolver.js +106 -0
  261. package/dist/plugins/analysis/ast/CollisionResolver.js.map +1 -0
  262. package/dist/plugins/analysis/ast/FunctionBodyContext.d.ts +124 -0
  263. package/dist/plugins/analysis/ast/FunctionBodyContext.d.ts.map +1 -0
  264. package/dist/plugins/analysis/ast/FunctionBodyContext.js +151 -0
  265. package/dist/plugins/analysis/ast/FunctionBodyContext.js.map +1 -0
  266. package/dist/plugins/analysis/ast/GraphBuilder.d.ts +26 -261
  267. package/dist/plugins/analysis/ast/GraphBuilder.d.ts.map +1 -1
  268. package/dist/plugins/analysis/ast/GraphBuilder.js +251 -2494
  269. package/dist/plugins/analysis/ast/GraphBuilder.js.map +1 -1
  270. package/dist/plugins/analysis/ast/IdGenerator.d.ts +42 -0
  271. package/dist/plugins/analysis/ast/IdGenerator.d.ts.map +1 -1
  272. package/dist/plugins/analysis/ast/IdGenerator.js +61 -1
  273. package/dist/plugins/analysis/ast/IdGenerator.js.map +1 -1
  274. package/dist/plugins/analysis/ast/builders/AssignmentBuilder.d.ts +15 -0
  275. package/dist/plugins/analysis/ast/builders/AssignmentBuilder.d.ts.map +1 -0
  276. package/dist/plugins/analysis/ast/builders/AssignmentBuilder.js +274 -0
  277. package/dist/plugins/analysis/ast/builders/AssignmentBuilder.js.map +1 -0
  278. package/dist/plugins/analysis/ast/builders/CallFlowBuilder.d.ts +22 -0
  279. package/dist/plugins/analysis/ast/builders/CallFlowBuilder.d.ts.map +1 -0
  280. package/dist/plugins/analysis/ast/builders/CallFlowBuilder.js +178 -0
  281. package/dist/plugins/analysis/ast/builders/CallFlowBuilder.js.map +1 -0
  282. package/dist/plugins/analysis/ast/builders/ControlFlowBuilder.d.ts +76 -0
  283. package/dist/plugins/analysis/ast/builders/ControlFlowBuilder.d.ts.map +1 -0
  284. package/dist/plugins/analysis/ast/builders/ControlFlowBuilder.js +387 -0
  285. package/dist/plugins/analysis/ast/builders/ControlFlowBuilder.js.map +1 -0
  286. package/dist/plugins/analysis/ast/builders/CoreBuilder.d.ts +38 -0
  287. package/dist/plugins/analysis/ast/builders/CoreBuilder.d.ts.map +1 -0
  288. package/dist/plugins/analysis/ast/builders/CoreBuilder.js +240 -0
  289. package/dist/plugins/analysis/ast/builders/CoreBuilder.js.map +1 -0
  290. package/dist/plugins/analysis/ast/builders/ModuleRuntimeBuilder.d.ts +53 -0
  291. package/dist/plugins/analysis/ast/builders/ModuleRuntimeBuilder.d.ts.map +1 -0
  292. package/dist/plugins/analysis/ast/builders/ModuleRuntimeBuilder.js +355 -0
  293. package/dist/plugins/analysis/ast/builders/ModuleRuntimeBuilder.js.map +1 -0
  294. package/dist/plugins/analysis/ast/builders/MutationBuilder.d.ts +46 -0
  295. package/dist/plugins/analysis/ast/builders/MutationBuilder.d.ts.map +1 -0
  296. package/dist/plugins/analysis/ast/builders/MutationBuilder.js +264 -0
  297. package/dist/plugins/analysis/ast/builders/MutationBuilder.js.map +1 -0
  298. package/dist/plugins/analysis/ast/builders/ReturnBuilder.d.ts +23 -0
  299. package/dist/plugins/analysis/ast/builders/ReturnBuilder.d.ts.map +1 -0
  300. package/dist/plugins/analysis/ast/builders/ReturnBuilder.js +206 -0
  301. package/dist/plugins/analysis/ast/builders/ReturnBuilder.js.map +1 -0
  302. package/dist/plugins/analysis/ast/builders/TypeSystemBuilder.d.ts +64 -0
  303. package/dist/plugins/analysis/ast/builders/TypeSystemBuilder.d.ts.map +1 -0
  304. package/dist/plugins/analysis/ast/builders/TypeSystemBuilder.js +370 -0
  305. package/dist/plugins/analysis/ast/builders/TypeSystemBuilder.js.map +1 -0
  306. package/dist/plugins/analysis/ast/builders/UpdateExpressionBuilder.d.ts +46 -0
  307. package/dist/plugins/analysis/ast/builders/UpdateExpressionBuilder.d.ts.map +1 -0
  308. package/dist/plugins/analysis/ast/builders/UpdateExpressionBuilder.js +191 -0
  309. package/dist/plugins/analysis/ast/builders/UpdateExpressionBuilder.js.map +1 -0
  310. package/dist/plugins/analysis/ast/builders/YieldBuilder.d.ts +30 -0
  311. package/dist/plugins/analysis/ast/builders/YieldBuilder.d.ts.map +1 -0
  312. package/dist/plugins/analysis/ast/builders/YieldBuilder.js +214 -0
  313. package/dist/plugins/analysis/ast/builders/YieldBuilder.js.map +1 -0
  314. package/dist/plugins/analysis/ast/builders/index.d.ts +12 -0
  315. package/dist/plugins/analysis/ast/builders/index.d.ts.map +1 -0
  316. package/dist/plugins/analysis/ast/builders/index.js +11 -0
  317. package/dist/plugins/analysis/ast/builders/index.js.map +1 -0
  318. package/dist/plugins/analysis/ast/builders/types.d.ts +30 -0
  319. package/dist/plugins/analysis/ast/builders/types.d.ts.map +1 -0
  320. package/dist/plugins/analysis/ast/builders/types.js +8 -0
  321. package/dist/plugins/analysis/ast/builders/types.js.map +1 -0
  322. package/dist/plugins/analysis/ast/handlers/AnalyzerDelegate.d.ts +50 -0
  323. package/dist/plugins/analysis/ast/handlers/AnalyzerDelegate.d.ts.map +1 -0
  324. package/dist/plugins/analysis/ast/handlers/AnalyzerDelegate.js +2 -0
  325. package/dist/plugins/analysis/ast/handlers/AnalyzerDelegate.js.map +1 -0
  326. package/dist/plugins/analysis/ast/handlers/BranchHandler.d.ts +18 -0
  327. package/dist/plugins/analysis/ast/handlers/BranchHandler.d.ts.map +1 -0
  328. package/dist/plugins/analysis/ast/handlers/BranchHandler.js +244 -0
  329. package/dist/plugins/analysis/ast/handlers/BranchHandler.js.map +1 -0
  330. package/dist/plugins/analysis/ast/handlers/CallExpressionHandler.d.ts +7 -0
  331. package/dist/plugins/analysis/ast/handlers/CallExpressionHandler.d.ts.map +1 -0
  332. package/dist/plugins/analysis/ast/handlers/CallExpressionHandler.js +295 -0
  333. package/dist/plugins/analysis/ast/handlers/CallExpressionHandler.js.map +1 -0
  334. package/dist/plugins/analysis/ast/handlers/FunctionBodyHandler.d.ts +22 -0
  335. package/dist/plugins/analysis/ast/handlers/FunctionBodyHandler.d.ts.map +1 -0
  336. package/dist/plugins/analysis/ast/handlers/FunctionBodyHandler.js +9 -0
  337. package/dist/plugins/analysis/ast/handlers/FunctionBodyHandler.js.map +1 -0
  338. package/dist/plugins/analysis/ast/handlers/LoopHandler.d.ts +13 -0
  339. package/dist/plugins/analysis/ast/handlers/LoopHandler.d.ts.map +1 -0
  340. package/dist/plugins/analysis/ast/handlers/LoopHandler.js +207 -0
  341. package/dist/plugins/analysis/ast/handlers/LoopHandler.js.map +1 -0
  342. package/dist/plugins/analysis/ast/handlers/NestedFunctionHandler.d.ts +13 -0
  343. package/dist/plugins/analysis/ast/handlers/NestedFunctionHandler.d.ts.map +1 -0
  344. package/dist/plugins/analysis/ast/handlers/NestedFunctionHandler.js +174 -0
  345. package/dist/plugins/analysis/ast/handlers/NestedFunctionHandler.js.map +1 -0
  346. package/dist/plugins/analysis/ast/handlers/NewExpressionHandler.d.ts +12 -0
  347. package/dist/plugins/analysis/ast/handlers/NewExpressionHandler.d.ts.map +1 -0
  348. package/dist/plugins/analysis/ast/handlers/NewExpressionHandler.js +135 -0
  349. package/dist/plugins/analysis/ast/handlers/NewExpressionHandler.js.map +1 -0
  350. package/dist/plugins/analysis/ast/handlers/PropertyAccessHandler.d.ts +13 -0
  351. package/dist/plugins/analysis/ast/handlers/PropertyAccessHandler.d.ts.map +1 -0
  352. package/dist/plugins/analysis/ast/handlers/PropertyAccessHandler.js +71 -0
  353. package/dist/plugins/analysis/ast/handlers/PropertyAccessHandler.js.map +1 -0
  354. package/dist/plugins/analysis/ast/handlers/ReturnYieldHandler.d.ts +12 -0
  355. package/dist/plugins/analysis/ast/handlers/ReturnYieldHandler.d.ts.map +1 -0
  356. package/dist/plugins/analysis/ast/handlers/ReturnYieldHandler.js +135 -0
  357. package/dist/plugins/analysis/ast/handlers/ReturnYieldHandler.js.map +1 -0
  358. package/dist/plugins/analysis/ast/handlers/ThrowHandler.d.ts +12 -0
  359. package/dist/plugins/analysis/ast/handlers/ThrowHandler.d.ts.map +1 -0
  360. package/dist/plugins/analysis/ast/handlers/ThrowHandler.js +82 -0
  361. package/dist/plugins/analysis/ast/handlers/ThrowHandler.js.map +1 -0
  362. package/dist/plugins/analysis/ast/handlers/TryCatchHandler.d.ts +14 -0
  363. package/dist/plugins/analysis/ast/handlers/TryCatchHandler.d.ts.map +1 -0
  364. package/dist/plugins/analysis/ast/handlers/TryCatchHandler.js +220 -0
  365. package/dist/plugins/analysis/ast/handlers/TryCatchHandler.js.map +1 -0
  366. package/dist/plugins/analysis/ast/handlers/VariableHandler.d.ts +12 -0
  367. package/dist/plugins/analysis/ast/handlers/VariableHandler.d.ts.map +1 -0
  368. package/dist/plugins/analysis/ast/handlers/VariableHandler.js +57 -0
  369. package/dist/plugins/analysis/ast/handlers/VariableHandler.js.map +1 -0
  370. package/dist/plugins/analysis/ast/handlers/index.d.ts +13 -0
  371. package/dist/plugins/analysis/ast/handlers/index.d.ts.map +1 -0
  372. package/dist/plugins/analysis/ast/handlers/index.js +12 -0
  373. package/dist/plugins/analysis/ast/handlers/index.js.map +1 -0
  374. package/dist/plugins/analysis/ast/types.d.ts +57 -6
  375. package/dist/plugins/analysis/ast/types.d.ts.map +1 -1
  376. package/dist/plugins/analysis/ast/utils/createParameterNodes.d.ts +5 -4
  377. package/dist/plugins/analysis/ast/utils/createParameterNodes.d.ts.map +1 -1
  378. package/dist/plugins/analysis/ast/utils/createParameterNodes.js +94 -13
  379. package/dist/plugins/analysis/ast/utils/createParameterNodes.js.map +1 -1
  380. package/dist/plugins/analysis/ast/utils/extractNamesFromPattern.d.ts +81 -0
  381. package/dist/plugins/analysis/ast/utils/extractNamesFromPattern.d.ts.map +1 -0
  382. package/dist/plugins/analysis/ast/utils/extractNamesFromPattern.js +140 -0
  383. package/dist/plugins/analysis/ast/utils/extractNamesFromPattern.js.map +1 -0
  384. package/dist/plugins/analysis/ast/utils/getExpressionValue.d.ts +22 -0
  385. package/dist/plugins/analysis/ast/utils/getExpressionValue.d.ts.map +1 -0
  386. package/dist/plugins/analysis/ast/utils/getExpressionValue.js +35 -0
  387. package/dist/plugins/analysis/ast/utils/getExpressionValue.js.map +1 -0
  388. package/dist/plugins/analysis/ast/utils/getMemberExpressionName.d.ts +25 -0
  389. package/dist/plugins/analysis/ast/utils/getMemberExpressionName.d.ts.map +1 -0
  390. package/dist/plugins/analysis/ast/utils/getMemberExpressionName.js +21 -0
  391. package/dist/plugins/analysis/ast/utils/getMemberExpressionName.js.map +1 -0
  392. package/dist/plugins/analysis/ast/utils/index.d.ts +2 -0
  393. package/dist/plugins/analysis/ast/utils/index.d.ts.map +1 -1
  394. package/dist/plugins/analysis/ast/utils/index.js +2 -0
  395. package/dist/plugins/analysis/ast/utils/index.js.map +1 -1
  396. package/dist/plugins/analysis/ast/visitors/ArgumentExtractor.d.ts +23 -0
  397. package/dist/plugins/analysis/ast/visitors/ArgumentExtractor.d.ts.map +1 -0
  398. package/dist/plugins/analysis/ast/visitors/ArgumentExtractor.js +241 -0
  399. package/dist/plugins/analysis/ast/visitors/ArgumentExtractor.js.map +1 -0
  400. package/dist/plugins/analysis/ast/visitors/ArrayElementExtractor.d.ts +20 -0
  401. package/dist/plugins/analysis/ast/visitors/ArrayElementExtractor.d.ts.map +1 -0
  402. package/dist/plugins/analysis/ast/visitors/ArrayElementExtractor.js +110 -0
  403. package/dist/plugins/analysis/ast/visitors/ArrayElementExtractor.js.map +1 -0
  404. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.d.ts +15 -142
  405. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.d.ts.map +1 -1
  406. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.js +304 -937
  407. package/dist/plugins/analysis/ast/visitors/CallExpressionVisitor.js.map +1 -1
  408. package/dist/plugins/analysis/ast/visitors/ClassVisitor.d.ts.map +1 -1
  409. package/dist/plugins/analysis/ast/visitors/ClassVisitor.js +26 -11
  410. package/dist/plugins/analysis/ast/visitors/ClassVisitor.js.map +1 -1
  411. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.d.ts.map +1 -1
  412. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.js +21 -6
  413. package/dist/plugins/analysis/ast/visitors/FunctionVisitor.js.map +1 -1
  414. package/dist/plugins/analysis/ast/visitors/MutationDetector.d.ts +25 -0
  415. package/dist/plugins/analysis/ast/visitors/MutationDetector.d.ts.map +1 -0
  416. package/dist/plugins/analysis/ast/visitors/MutationDetector.js +181 -0
  417. package/dist/plugins/analysis/ast/visitors/MutationDetector.js.map +1 -0
  418. package/dist/plugins/analysis/ast/visitors/ObjectPropertyExtractor.d.ts +20 -0
  419. package/dist/plugins/analysis/ast/visitors/ObjectPropertyExtractor.d.ts.map +1 -0
  420. package/dist/plugins/analysis/ast/visitors/ObjectPropertyExtractor.js +155 -0
  421. package/dist/plugins/analysis/ast/visitors/ObjectPropertyExtractor.js.map +1 -0
  422. package/dist/plugins/analysis/ast/visitors/PropertyAccessVisitor.d.ts +9 -1
  423. package/dist/plugins/analysis/ast/visitors/PropertyAccessVisitor.d.ts.map +1 -1
  424. package/dist/plugins/analysis/ast/visitors/PropertyAccessVisitor.js +51 -3
  425. package/dist/plugins/analysis/ast/visitors/PropertyAccessVisitor.js.map +1 -1
  426. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.d.ts +20 -0
  427. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.d.ts.map +1 -1
  428. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.js +188 -12
  429. package/dist/plugins/analysis/ast/visitors/TypeScriptVisitor.js.map +1 -1
  430. package/dist/plugins/analysis/ast/visitors/VariableVisitor.d.ts.map +1 -1
  431. package/dist/plugins/analysis/ast/visitors/VariableVisitor.js +6 -4
  432. package/dist/plugins/analysis/ast/visitors/VariableVisitor.js.map +1 -1
  433. package/dist/plugins/analysis/ast/visitors/call-expression-helpers.d.ts +19 -0
  434. package/dist/plugins/analysis/ast/visitors/call-expression-helpers.d.ts.map +1 -0
  435. package/dist/plugins/analysis/ast/visitors/call-expression-helpers.js +57 -0
  436. package/dist/plugins/analysis/ast/visitors/call-expression-helpers.js.map +1 -0
  437. package/dist/plugins/analysis/ast/visitors/call-expression-types.d.ts +168 -0
  438. package/dist/plugins/analysis/ast/visitors/call-expression-types.d.ts.map +1 -0
  439. package/dist/plugins/analysis/ast/visitors/call-expression-types.js +7 -0
  440. package/dist/plugins/analysis/ast/visitors/call-expression-types.js.map +1 -0
  441. package/dist/plugins/analysis/react-internal/browser-api.d.ts +20 -0
  442. package/dist/plugins/analysis/react-internal/browser-api.d.ts.map +1 -0
  443. package/dist/plugins/analysis/react-internal/browser-api.js +140 -0
  444. package/dist/plugins/analysis/react-internal/browser-api.js.map +1 -0
  445. package/dist/plugins/analysis/react-internal/hooks.d.ts +31 -0
  446. package/dist/plugins/analysis/react-internal/hooks.d.ts.map +1 -0
  447. package/dist/plugins/analysis/react-internal/hooks.js +465 -0
  448. package/dist/plugins/analysis/react-internal/hooks.js.map +1 -0
  449. package/dist/plugins/analysis/react-internal/jsx.d.ts +43 -0
  450. package/dist/plugins/analysis/react-internal/jsx.d.ts.map +1 -0
  451. package/dist/plugins/analysis/react-internal/jsx.js +231 -0
  452. package/dist/plugins/analysis/react-internal/jsx.js.map +1 -0
  453. package/dist/plugins/analysis/react-internal/types.d.ts +116 -0
  454. package/dist/plugins/analysis/react-internal/types.d.ts.map +1 -0
  455. package/dist/plugins/analysis/react-internal/types.js +83 -0
  456. package/dist/plugins/analysis/react-internal/types.js.map +1 -0
  457. package/dist/plugins/discovery/MonorepoServiceDiscovery.d.ts.map +1 -1
  458. package/dist/plugins/discovery/MonorepoServiceDiscovery.js +6 -13
  459. package/dist/plugins/discovery/MonorepoServiceDiscovery.js.map +1 -1
  460. package/dist/plugins/enrichment/AliasTracker.d.ts.map +1 -1
  461. package/dist/plugins/enrichment/AliasTracker.js +3 -1
  462. package/dist/plugins/enrichment/AliasTracker.js.map +1 -1
  463. package/dist/plugins/enrichment/ArgumentParameterLinker.d.ts.map +1 -1
  464. package/dist/plugins/enrichment/ArgumentParameterLinker.js +3 -1
  465. package/dist/plugins/enrichment/ArgumentParameterLinker.js.map +1 -1
  466. package/dist/plugins/enrichment/CallbackCallResolver.d.ts +42 -0
  467. package/dist/plugins/enrichment/CallbackCallResolver.d.ts.map +1 -0
  468. package/dist/plugins/enrichment/CallbackCallResolver.js +311 -0
  469. package/dist/plugins/enrichment/CallbackCallResolver.js.map +1 -0
  470. package/dist/plugins/enrichment/ClosureCaptureEnricher.d.ts.map +1 -1
  471. package/dist/plugins/enrichment/ClosureCaptureEnricher.js +3 -1
  472. package/dist/plugins/enrichment/ClosureCaptureEnricher.js.map +1 -1
  473. package/dist/plugins/enrichment/ConfigRoutingMapBuilder.d.ts +17 -0
  474. package/dist/plugins/enrichment/ConfigRoutingMapBuilder.d.ts.map +1 -0
  475. package/dist/plugins/enrichment/ConfigRoutingMapBuilder.js +55 -0
  476. package/dist/plugins/enrichment/ConfigRoutingMapBuilder.js.map +1 -0
  477. package/dist/plugins/enrichment/ExpressHandlerLinker.d.ts.map +1 -1
  478. package/dist/plugins/enrichment/ExpressHandlerLinker.js +3 -1
  479. package/dist/plugins/enrichment/ExpressHandlerLinker.js.map +1 -1
  480. package/dist/plugins/enrichment/ExternalCallResolver.d.ts.map +1 -1
  481. package/dist/plugins/enrichment/ExternalCallResolver.js +5 -8
  482. package/dist/plugins/enrichment/ExternalCallResolver.js.map +1 -1
  483. package/dist/plugins/enrichment/FunctionCallResolver.d.ts.map +1 -1
  484. package/dist/plugins/enrichment/FunctionCallResolver.js +6 -9
  485. package/dist/plugins/enrichment/FunctionCallResolver.js.map +1 -1
  486. package/dist/plugins/enrichment/HTTPConnectionEnricher.d.ts.map +1 -1
  487. package/dist/plugins/enrichment/HTTPConnectionEnricher.js +3 -1
  488. package/dist/plugins/enrichment/HTTPConnectionEnricher.js.map +1 -1
  489. package/dist/plugins/enrichment/ImportExportLinker.d.ts.map +1 -1
  490. package/dist/plugins/enrichment/ImportExportLinker.js +5 -3
  491. package/dist/plugins/enrichment/ImportExportLinker.js.map +1 -1
  492. package/dist/plugins/enrichment/InstanceOfResolver.d.ts.map +1 -1
  493. package/dist/plugins/enrichment/InstanceOfResolver.js +3 -1
  494. package/dist/plugins/enrichment/InstanceOfResolver.js.map +1 -1
  495. package/dist/plugins/enrichment/MethodCallResolver.d.ts +17 -68
  496. package/dist/plugins/enrichment/MethodCallResolver.d.ts.map +1 -1
  497. package/dist/plugins/enrichment/MethodCallResolver.js +42 -517
  498. package/dist/plugins/enrichment/MethodCallResolver.js.map +1 -1
  499. package/dist/plugins/enrichment/MountPointResolver.d.ts.map +1 -1
  500. package/dist/plugins/enrichment/MountPointResolver.js +9 -2
  501. package/dist/plugins/enrichment/MountPointResolver.js.map +1 -1
  502. package/dist/plugins/enrichment/NodejsBuiltinsResolver.d.ts.map +1 -1
  503. package/dist/plugins/enrichment/NodejsBuiltinsResolver.js +7 -16
  504. package/dist/plugins/enrichment/NodejsBuiltinsResolver.js.map +1 -1
  505. package/dist/plugins/enrichment/PrefixEvaluator.d.ts.map +1 -1
  506. package/dist/plugins/enrichment/PrefixEvaluator.js +6 -2
  507. package/dist/plugins/enrichment/PrefixEvaluator.js.map +1 -1
  508. package/dist/plugins/enrichment/RejectionPropagationEnricher.d.ts.map +1 -1
  509. package/dist/plugins/enrichment/RejectionPropagationEnricher.js +3 -1
  510. package/dist/plugins/enrichment/RejectionPropagationEnricher.js.map +1 -1
  511. package/dist/plugins/enrichment/RustFFIEnricher.d.ts.map +1 -1
  512. package/dist/plugins/enrichment/RustFFIEnricher.js +3 -1
  513. package/dist/plugins/enrichment/RustFFIEnricher.js.map +1 -1
  514. package/dist/plugins/enrichment/ServiceConnectionEnricher.d.ts +76 -0
  515. package/dist/plugins/enrichment/ServiceConnectionEnricher.d.ts.map +1 -0
  516. package/dist/plugins/enrichment/ServiceConnectionEnricher.js +355 -0
  517. package/dist/plugins/enrichment/ServiceConnectionEnricher.js.map +1 -0
  518. package/dist/plugins/enrichment/SocketConnectionEnricher.d.ts +42 -0
  519. package/dist/plugins/enrichment/SocketConnectionEnricher.d.ts.map +1 -0
  520. package/dist/plugins/enrichment/SocketConnectionEnricher.js +166 -0
  521. package/dist/plugins/enrichment/SocketConnectionEnricher.js.map +1 -0
  522. package/dist/plugins/enrichment/ValueDomainAnalyzer.d.ts.map +1 -1
  523. package/dist/plugins/enrichment/ValueDomainAnalyzer.js +3 -1
  524. package/dist/plugins/enrichment/ValueDomainAnalyzer.js.map +1 -1
  525. package/dist/plugins/enrichment/method-call/MethodCallData.d.ts +68 -0
  526. package/dist/plugins/enrichment/method-call/MethodCallData.d.ts.map +1 -0
  527. package/dist/plugins/enrichment/method-call/MethodCallData.js +227 -0
  528. package/dist/plugins/enrichment/method-call/MethodCallData.js.map +1 -0
  529. package/dist/plugins/enrichment/method-call/MethodCallDetectors.d.ts +21 -0
  530. package/dist/plugins/enrichment/method-call/MethodCallDetectors.d.ts.map +1 -0
  531. package/dist/plugins/enrichment/method-call/MethodCallDetectors.js +52 -0
  532. package/dist/plugins/enrichment/method-call/MethodCallDetectors.js.map +1 -0
  533. package/dist/plugins/enrichment/method-call/MethodCallErrorAnalysis.d.ts +22 -0
  534. package/dist/plugins/enrichment/method-call/MethodCallErrorAnalysis.d.ts.map +1 -0
  535. package/dist/plugins/enrichment/method-call/MethodCallErrorAnalysis.js +105 -0
  536. package/dist/plugins/enrichment/method-call/MethodCallErrorAnalysis.js.map +1 -0
  537. package/dist/plugins/enrichment/method-call/MethodCallIndexers.d.ts +19 -0
  538. package/dist/plugins/enrichment/method-call/MethodCallIndexers.d.ts.map +1 -0
  539. package/dist/plugins/enrichment/method-call/MethodCallIndexers.js +63 -0
  540. package/dist/plugins/enrichment/method-call/MethodCallIndexers.js.map +1 -0
  541. package/dist/plugins/enrichment/method-call/MethodCallResolution.d.ts +30 -0
  542. package/dist/plugins/enrichment/method-call/MethodCallResolution.d.ts.map +1 -0
  543. package/dist/plugins/enrichment/method-call/MethodCallResolution.js +138 -0
  544. package/dist/plugins/enrichment/method-call/MethodCallResolution.js.map +1 -0
  545. package/dist/plugins/indexing/IncrementalModuleIndexer.d.ts.map +1 -1
  546. package/dist/plugins/indexing/IncrementalModuleIndexer.js +2 -8
  547. package/dist/plugins/indexing/IncrementalModuleIndexer.js.map +1 -1
  548. package/dist/plugins/indexing/JSModuleIndexer.d.ts.map +1 -1
  549. package/dist/plugins/indexing/JSModuleIndexer.js +13 -20
  550. package/dist/plugins/indexing/JSModuleIndexer.js.map +1 -1
  551. package/dist/plugins/indexing/RustModuleIndexer.d.ts.map +1 -1
  552. package/dist/plugins/indexing/RustModuleIndexer.js +4 -8
  553. package/dist/plugins/indexing/RustModuleIndexer.js.map +1 -1
  554. package/dist/plugins/validation/AwaitInLoopValidator.d.ts +24 -0
  555. package/dist/plugins/validation/AwaitInLoopValidator.d.ts.map +1 -0
  556. package/dist/plugins/validation/AwaitInLoopValidator.js +69 -0
  557. package/dist/plugins/validation/AwaitInLoopValidator.js.map +1 -0
  558. package/dist/plugins/validation/PackageCoverageValidator.d.ts +33 -0
  559. package/dist/plugins/validation/PackageCoverageValidator.d.ts.map +1 -0
  560. package/dist/plugins/validation/PackageCoverageValidator.js +149 -0
  561. package/dist/plugins/validation/PackageCoverageValidator.js.map +1 -0
  562. package/dist/plugins/validation/UnconnectedRouteValidator.d.ts +18 -0
  563. package/dist/plugins/validation/UnconnectedRouteValidator.d.ts.map +1 -0
  564. package/dist/plugins/validation/UnconnectedRouteValidator.js +68 -0
  565. package/dist/plugins/validation/UnconnectedRouteValidator.js.map +1 -0
  566. package/dist/queries/NodeContext.d.ts +81 -0
  567. package/dist/queries/NodeContext.d.ts.map +1 -0
  568. package/dist/queries/NodeContext.js +193 -0
  569. package/dist/queries/NodeContext.js.map +1 -0
  570. package/dist/queries/findCallsInFunction.d.ts.map +1 -1
  571. package/dist/queries/findCallsInFunction.js +10 -2
  572. package/dist/queries/findCallsInFunction.js.map +1 -1
  573. package/dist/queries/findContainingFunction.d.ts +3 -2
  574. package/dist/queries/findContainingFunction.d.ts.map +1 -1
  575. package/dist/queries/findContainingFunction.js +13 -3
  576. package/dist/queries/findContainingFunction.js.map +1 -1
  577. package/dist/queries/index.d.ts +2 -0
  578. package/dist/queries/index.d.ts.map +1 -1
  579. package/dist/queries/index.js +1 -0
  580. package/dist/queries/index.js.map +1 -1
  581. package/dist/resources/InfraResourceMapImpl.d.ts +31 -0
  582. package/dist/resources/InfraResourceMapImpl.d.ts.map +1 -0
  583. package/dist/resources/InfraResourceMapImpl.js +110 -0
  584. package/dist/resources/InfraResourceMapImpl.js.map +1 -0
  585. package/dist/resources/RoutingMapImpl.d.ts +33 -0
  586. package/dist/resources/RoutingMapImpl.d.ts.map +1 -0
  587. package/dist/resources/RoutingMapImpl.js +115 -0
  588. package/dist/resources/RoutingMapImpl.js.map +1 -0
  589. package/dist/storage/backends/RFDBServerBackend.d.ts +35 -6
  590. package/dist/storage/backends/RFDBServerBackend.d.ts.map +1 -1
  591. package/dist/storage/backends/RFDBServerBackend.js +102 -70
  592. package/dist/storage/backends/RFDBServerBackend.js.map +1 -1
  593. package/dist/utils/findRfdbBinary.d.ts +3 -2
  594. package/dist/utils/findRfdbBinary.d.ts.map +1 -1
  595. package/dist/utils/findRfdbBinary.js +22 -7
  596. package/dist/utils/findRfdbBinary.js.map +1 -1
  597. package/dist/utils/moduleResolution.d.ts.map +1 -1
  598. package/dist/utils/moduleResolution.js +26 -1
  599. package/dist/utils/moduleResolution.js.map +1 -1
  600. package/dist/utils/resolveNodeFile.d.ts +13 -0
  601. package/dist/utils/resolveNodeFile.d.ts.map +1 -0
  602. package/dist/utils/resolveNodeFile.js +18 -0
  603. package/dist/utils/resolveNodeFile.js.map +1 -0
  604. package/dist/version.d.ts +11 -0
  605. package/dist/version.d.ts.map +1 -0
  606. package/dist/version.js +26 -0
  607. package/dist/version.js.map +1 -0
  608. package/package.json +3 -3
  609. package/src/DiscoveryManager.ts +279 -0
  610. package/src/GraphInitializer.ts +131 -0
  611. package/src/GuaranteeChecker.ts +90 -0
  612. package/src/Orchestrator.ts +222 -963
  613. package/src/OrchestratorTypes.ts +122 -0
  614. package/src/ParallelAnalysisRunner.ts +188 -0
  615. package/src/PhaseRunner.ts +450 -0
  616. package/src/config/ConfigLoader.ts +176 -2
  617. package/src/config/index.ts +2 -0
  618. package/src/core/ASTWorker.ts +9 -2
  619. package/src/core/FileOverview.ts +374 -0
  620. package/src/core/GraphFreshnessChecker.ts +7 -5
  621. package/src/core/GuaranteeManager.ts +70 -2
  622. package/src/core/IncrementalReanalyzer.ts +6 -3
  623. package/src/core/NodeFactory.ts +173 -652
  624. package/src/core/ResourceRegistry.ts +39 -0
  625. package/src/core/ScopeTracker.ts +23 -0
  626. package/src/core/SemanticId.ts +183 -0
  627. package/src/core/brandNodeInternal.ts +16 -0
  628. package/src/core/buildDependencyGraph.ts +98 -0
  629. package/src/core/factories/CoreFactory.ts +489 -0
  630. package/src/core/factories/DatabaseFactory.ts +63 -0
  631. package/src/core/factories/ExternalFactory.ts +23 -0
  632. package/src/core/factories/HttpFactory.ts +57 -0
  633. package/src/core/factories/ReactFactory.ts +15 -0
  634. package/src/core/factories/RustFactory.ts +128 -0
  635. package/src/core/factories/ServiceFactory.ts +27 -0
  636. package/src/core/factories/SocketFactory.ts +94 -0
  637. package/src/core/nodes/DatabaseNode.ts +175 -0
  638. package/src/core/nodes/ExpressMiddlewareNode.ts +98 -0
  639. package/src/core/nodes/ExpressMountNode.ts +94 -0
  640. package/src/core/nodes/ExternalApiNode.ts +53 -0
  641. package/src/core/nodes/ExternalFunctionNode.ts +77 -0
  642. package/src/core/nodes/FetchRequestNode.ts +105 -0
  643. package/src/core/nodes/HttpRouteNode.ts +113 -0
  644. package/src/core/nodes/NodeKind.ts +1 -0
  645. package/src/core/nodes/ReactNode.ts +78 -0
  646. package/src/core/nodes/RustCallNode.ts +96 -0
  647. package/src/core/nodes/RustFunctionNode.ts +112 -0
  648. package/src/core/nodes/RustImplNode.ts +78 -0
  649. package/src/core/nodes/RustMethodNode.ts +125 -0
  650. package/src/core/nodes/RustModuleNode.ts +84 -0
  651. package/src/core/nodes/RustStructNode.ts +80 -0
  652. package/src/core/nodes/RustTraitNode.ts +82 -0
  653. package/src/core/nodes/ServiceLayerNode.ts +183 -0
  654. package/src/core/nodes/SocketIONode.ts +177 -0
  655. package/src/core/nodes/SocketNode.ts +206 -0
  656. package/src/core/nodes/TypeNode.ts +46 -3
  657. package/src/core/nodes/TypeParameterNode.ts +91 -0
  658. package/src/core/nodes/index.ts +57 -0
  659. package/src/index.ts +60 -4
  660. package/src/plugins/InfraAnalyzer.ts +208 -0
  661. package/src/plugins/analysis/DatabaseAnalyzer.ts +27 -17
  662. package/src/plugins/analysis/ExpressAnalyzer.ts +51 -38
  663. package/src/plugins/analysis/ExpressResponseAnalyzer.ts +15 -12
  664. package/src/plugins/analysis/ExpressRouteAnalyzer.ts +56 -56
  665. package/src/plugins/analysis/FetchAnalyzer.ts +42 -52
  666. package/src/plugins/analysis/IncrementalAnalysisPlugin.ts +3 -2
  667. package/src/plugins/analysis/JSASTAnalyzer.ts +391 -2304
  668. package/src/plugins/analysis/NestJSRouteAnalyzer.ts +241 -0
  669. package/src/plugins/analysis/ReactAnalyzer.ts +33 -1085
  670. package/src/plugins/analysis/RustAnalyzer.ts +112 -116
  671. package/src/plugins/analysis/SQLiteAnalyzer.ts +23 -9
  672. package/src/plugins/analysis/ServiceLayerAnalyzer.ts +32 -10
  673. package/src/plugins/analysis/SocketAnalyzer.ts +601 -0
  674. package/src/plugins/analysis/SocketIOAnalyzer.ts +25 -34
  675. package/src/plugins/analysis/SystemDbAnalyzer.ts +15 -12
  676. package/src/plugins/analysis/ast/CollisionResolver.ts +137 -0
  677. package/src/plugins/analysis/ast/FunctionBodyContext.ts +291 -0
  678. package/src/plugins/analysis/ast/GraphBuilder.ts +274 -3180
  679. package/src/plugins/analysis/ast/IdGenerator.ts +81 -1
  680. package/src/plugins/analysis/ast/builders/AssignmentBuilder.ts +407 -0
  681. package/src/plugins/analysis/ast/builders/CallFlowBuilder.ts +255 -0
  682. package/src/plugins/analysis/ast/builders/ControlFlowBuilder.ts +470 -0
  683. package/src/plugins/analysis/ast/builders/CoreBuilder.ts +306 -0
  684. package/src/plugins/analysis/ast/builders/ModuleRuntimeBuilder.ts +452 -0
  685. package/src/plugins/analysis/ast/builders/MutationBuilder.ts +372 -0
  686. package/src/plugins/analysis/ast/builders/ReturnBuilder.ts +279 -0
  687. package/src/plugins/analysis/ast/builders/TypeSystemBuilder.ts +475 -0
  688. package/src/plugins/analysis/ast/builders/UpdateExpressionBuilder.ts +262 -0
  689. package/src/plugins/analysis/ast/builders/YieldBuilder.ts +287 -0
  690. package/src/plugins/analysis/ast/builders/index.ts +11 -0
  691. package/src/plugins/analysis/ast/builders/types.ts +65 -0
  692. package/src/plugins/analysis/ast/handlers/AnalyzerDelegate.ts +183 -0
  693. package/src/plugins/analysis/ast/handlers/BranchHandler.ts +313 -0
  694. package/src/plugins/analysis/ast/handlers/CallExpressionHandler.ts +347 -0
  695. package/src/plugins/analysis/ast/handlers/FunctionBodyHandler.ts +24 -0
  696. package/src/plugins/analysis/ast/handlers/LoopHandler.ts +240 -0
  697. package/src/plugins/analysis/ast/handlers/NestedFunctionHandler.ts +201 -0
  698. package/src/plugins/analysis/ast/handlers/NewExpressionHandler.ts +159 -0
  699. package/src/plugins/analysis/ast/handlers/PropertyAccessHandler.ts +112 -0
  700. package/src/plugins/analysis/ast/handlers/ReturnYieldHandler.ts +166 -0
  701. package/src/plugins/analysis/ast/handlers/ThrowHandler.ts +101 -0
  702. package/src/plugins/analysis/ast/handlers/TryCatchHandler.ts +262 -0
  703. package/src/plugins/analysis/ast/handlers/VariableHandler.ts +93 -0
  704. package/src/plugins/analysis/ast/handlers/index.ts +12 -0
  705. package/src/plugins/analysis/ast/types.ts +68 -9
  706. package/src/plugins/analysis/ast/utils/createParameterNodes.ts +118 -13
  707. package/src/plugins/analysis/ast/utils/extractNamesFromPattern.ts +166 -0
  708. package/src/plugins/analysis/ast/utils/getExpressionValue.ts +34 -0
  709. package/src/plugins/analysis/ast/utils/getMemberExpressionName.ts +33 -0
  710. package/src/plugins/analysis/ast/utils/index.ts +2 -0
  711. package/src/plugins/analysis/ast/visitors/ArgumentExtractor.ts +307 -0
  712. package/src/plugins/analysis/ast/visitors/ArrayElementExtractor.ts +172 -0
  713. package/src/plugins/analysis/ast/visitors/CallExpressionVisitor.ts +425 -1374
  714. package/src/plugins/analysis/ast/visitors/ClassVisitor.ts +43 -12
  715. package/src/plugins/analysis/ast/visitors/FunctionVisitor.ts +39 -8
  716. package/src/plugins/analysis/ast/visitors/MutationDetector.ts +211 -0
  717. package/src/plugins/analysis/ast/visitors/ObjectPropertyExtractor.ts +217 -0
  718. package/src/plugins/analysis/ast/visitors/PropertyAccessVisitor.ts +69 -4
  719. package/src/plugins/analysis/ast/visitors/TypeScriptVisitor.ts +232 -13
  720. package/src/plugins/analysis/ast/visitors/VariableVisitor.ts +8 -11
  721. package/src/plugins/analysis/ast/visitors/call-expression-helpers.ts +65 -0
  722. package/src/plugins/analysis/ast/visitors/call-expression-types.ts +179 -0
  723. package/src/plugins/analysis/react-internal/browser-api.ts +168 -0
  724. package/src/plugins/analysis/react-internal/hooks.ts +517 -0
  725. package/src/plugins/analysis/react-internal/jsx.ts +279 -0
  726. package/src/plugins/analysis/react-internal/types.ts +183 -0
  727. package/src/plugins/discovery/MonorepoServiceDiscovery.ts +6 -14
  728. package/src/plugins/enrichment/AliasTracker.ts +3 -1
  729. package/src/plugins/enrichment/ArgumentParameterLinker.ts +3 -1
  730. package/src/plugins/enrichment/CallbackCallResolver.ts +398 -0
  731. package/src/plugins/enrichment/ClosureCaptureEnricher.ts +3 -1
  732. package/src/plugins/enrichment/ConfigRoutingMapBuilder.ts +67 -0
  733. package/src/plugins/enrichment/ExpressHandlerLinker.ts +3 -1
  734. package/src/plugins/enrichment/ExternalCallResolver.ts +5 -8
  735. package/src/plugins/enrichment/FunctionCallResolver.ts +6 -9
  736. package/src/plugins/enrichment/HTTPConnectionEnricher.ts +3 -1
  737. package/src/plugins/enrichment/ImportExportLinker.ts +5 -3
  738. package/src/plugins/enrichment/InstanceOfResolver.ts +3 -1
  739. package/src/plugins/enrichment/MethodCallResolver.ts +48 -659
  740. package/src/plugins/enrichment/MountPointResolver.ts +9 -2
  741. package/src/plugins/enrichment/NodejsBuiltinsResolver.ts +13 -18
  742. package/src/plugins/enrichment/PrefixEvaluator.ts +6 -2
  743. package/src/plugins/enrichment/RejectionPropagationEnricher.ts +3 -1
  744. package/src/plugins/enrichment/RustFFIEnricher.ts +3 -1
  745. package/src/plugins/enrichment/ServiceConnectionEnricher.ts +472 -0
  746. package/src/plugins/enrichment/SocketConnectionEnricher.ts +228 -0
  747. package/src/plugins/enrichment/ValueDomainAnalyzer.ts +3 -1
  748. package/src/plugins/enrichment/method-call/MethodCallData.ts +299 -0
  749. package/src/plugins/enrichment/method-call/MethodCallDetectors.ts +70 -0
  750. package/src/plugins/enrichment/method-call/MethodCallErrorAnalysis.ts +131 -0
  751. package/src/plugins/enrichment/method-call/MethodCallIndexers.ts +83 -0
  752. package/src/plugins/enrichment/method-call/MethodCallResolution.ts +181 -0
  753. package/src/plugins/indexing/IncrementalModuleIndexer.ts +5 -10
  754. package/src/plugins/indexing/JSModuleIndexer.ts +17 -21
  755. package/src/plugins/indexing/RustModuleIndexer.ts +14 -13
  756. package/src/plugins/validation/AwaitInLoopValidator.ts +91 -0
  757. package/src/plugins/validation/PackageCoverageValidator.ts +181 -0
  758. package/src/plugins/validation/UnconnectedRouteValidator.ts +93 -0
  759. package/src/queries/NodeContext.ts +277 -0
  760. package/src/queries/findCallsInFunction.ts +11 -2
  761. package/src/queries/findContainingFunction.ts +14 -3
  762. package/src/queries/index.ts +13 -0
  763. package/src/resources/InfraResourceMapImpl.ts +119 -0
  764. package/src/resources/RoutingMapImpl.ts +133 -0
  765. package/src/storage/backends/RFDBServerBackend.ts +106 -77
  766. package/src/utils/findRfdbBinary.ts +22 -7
  767. package/src/utils/moduleResolution.ts +28 -1
  768. package/src/utils/resolveNodeFile.ts +18 -0
  769. package/src/version.ts +28 -0
@@ -7,7 +7,7 @@
7
7
  * - TSEnumDeclaration
8
8
  */
9
9
  import { ASTVisitor } from './ASTVisitor.js';
10
- import { computeSemanticId } from '../../../../core/SemanticId.js';
10
+ import { computeSemanticIdV2 } from '../../../../core/SemanticId.js';
11
11
  import { getLine, getColumn } from '../utils/location.js';
12
12
  /**
13
13
  * Extracts a string representation of a TypeScript type node
@@ -41,12 +41,16 @@ export function typeNodeToString(node) {
41
41
  return 'symbol';
42
42
  case 'TSBigIntKeyword':
43
43
  return 'bigint';
44
- case 'TSTypeReference':
44
+ case 'TSTypeReference': {
45
45
  const typeName = typeNode.typeName;
46
- if (typeName?.type === 'Identifier') {
47
- return typeName.name || 'unknown';
46
+ const baseName = typeName?.type === 'Identifier' ? (typeName.name || 'unknown') : 'unknown';
47
+ const typeParams = typeNode.typeParameters;
48
+ if (typeParams?.params?.length) {
49
+ const paramStrs = typeParams.params.map(p => typeNodeToString(p));
50
+ return `${baseName}<${paramStrs.join(', ')}>`;
48
51
  }
49
- return 'unknown';
52
+ return baseName;
53
+ }
50
54
  case 'TSArrayType':
51
55
  return `${typeNodeToString(typeNode.elementType)}[]`;
52
56
  case 'TSUnionType':
@@ -74,10 +78,133 @@ export function typeNodeToString(node) {
74
78
  return `[${tupleTypes.map(t => typeNodeToString(t)).join(', ')}]`;
75
79
  case 'TSTypeLiteral':
76
80
  return 'object';
81
+ case 'TSTypeOperator': {
82
+ const operator = typeNode.operator;
83
+ const operand = typeNodeToString(typeNode.typeAnnotation);
84
+ return `${operator} ${operand}`;
85
+ }
86
+ case 'TSIndexedAccessType': {
87
+ const object = typeNodeToString(typeNode.objectType);
88
+ const index = typeNodeToString(typeNode.indexType);
89
+ return `${object}[${index}]`;
90
+ }
91
+ case 'TSMappedType': {
92
+ const tp = typeNode.typeParameter;
93
+ const keyName = tp?.name || 'K';
94
+ const constraint = tp?.constraint ? typeNodeToString(tp.constraint) : '';
95
+ const valType = typeNode.typeAnnotation ? typeNodeToString(typeNode.typeAnnotation) : 'unknown';
96
+ const readonlyMod = typeNode.readonly === '-' ? '-readonly ' : typeNode.readonly ? 'readonly ' : '';
97
+ const optionalMod = typeNode.optional === '-' ? '-?' : typeNode.optional ? '?' : '';
98
+ const asClause = typeNode.nameType ? ` as ${typeNodeToString(typeNode.nameType)}` : '';
99
+ return `{ ${readonlyMod}[${keyName} in ${constraint}${asClause}]${optionalMod}: ${valType} }`;
100
+ }
101
+ case 'TSConditionalType': {
102
+ const check = typeNodeToString(typeNode.checkType);
103
+ const ext = typeNodeToString(typeNode.extendsType);
104
+ const trueType = typeNodeToString(typeNode.trueType);
105
+ const falseType = typeNodeToString(typeNode.falseType);
106
+ return `${check} extends ${ext} ? ${trueType} : ${falseType}`;
107
+ }
108
+ case 'TSTypeQuery': {
109
+ const exprName = typeNode.exprName;
110
+ return exprName?.type === 'Identifier' ? `typeof ${exprName.name}` : 'typeof unknown';
111
+ }
112
+ case 'TSParenthesizedType':
113
+ return `(${typeNodeToString(typeNode.typeAnnotation)})`;
114
+ case 'TSInferType': {
115
+ const param = typeNode.typeParameter;
116
+ return `infer ${param?.name || 'U'}`;
117
+ }
118
+ case 'TSTemplateLiteralType': {
119
+ const quasis = typeNode.quasis;
120
+ const typeTypes = typeNode.types;
121
+ let result = '`';
122
+ for (let i = 0; i < quasis.length; i++) {
123
+ result += quasis[i]?.value?.raw || '';
124
+ if (i < (typeTypes?.length || 0)) {
125
+ result += `\${${typeNodeToString(typeTypes[i])}}`;
126
+ }
127
+ }
128
+ result += '`';
129
+ return result;
130
+ }
131
+ case 'TSRestType':
132
+ return `...${typeNodeToString(typeNode.typeAnnotation)}`;
133
+ case 'TSOptionalType':
134
+ return `${typeNodeToString(typeNode.typeAnnotation)}?`;
135
+ case 'TSNamedTupleMember': {
136
+ const label = typeNode.label?.name || '';
137
+ const elemType = typeNodeToString(typeNode.elementType);
138
+ return typeNode.optional ? `${label}?: ${elemType}` : `${label}: ${elemType}`;
139
+ }
77
140
  default:
78
141
  return 'unknown';
79
142
  }
80
143
  }
144
+ /**
145
+ * Extracts type parameter info from a TSTypeParameterDeclaration node.
146
+ *
147
+ * Handles:
148
+ * - Simple: <T>
149
+ * - Constrained: <T extends Serializable>
150
+ * - Defaulted: <T = string>
151
+ * - Variance: <in T>, <out T>, <in out T>
152
+ * - Intersection constraints: <T extends A & B>
153
+ *
154
+ * @param typeParameters - Babel TSTypeParameterDeclaration node (or undefined)
155
+ * @param parentId - ID of the owning declaration
156
+ * @param parentType - 'FUNCTION' | 'CLASS' | 'INTERFACE' | 'TYPE'
157
+ * @param file - File path
158
+ * @param line - Line of the declaration
159
+ * @param column - Column of the declaration
160
+ * @returns Array of TypeParameterInfo (empty if no type params)
161
+ */
162
+ export function extractTypeParameters(typeParameters, parentId, parentType, file, line, column) {
163
+ if (!typeParameters || typeof typeParameters !== 'object')
164
+ return [];
165
+ const tpDecl = typeParameters;
166
+ if (tpDecl.type !== 'TSTypeParameterDeclaration' || !Array.isArray(tpDecl.params))
167
+ return [];
168
+ const result = [];
169
+ for (const param of tpDecl.params) {
170
+ const tsParam = param;
171
+ if (tsParam.type !== 'TSTypeParameter')
172
+ continue;
173
+ const paramName = tsParam.name;
174
+ if (!paramName)
175
+ continue;
176
+ // Extract constraint via typeNodeToString
177
+ const constraintType = tsParam.constraint ? typeNodeToString(tsParam.constraint) : undefined;
178
+ // Extract default via typeNodeToString
179
+ const defaultType = tsParam.default ? typeNodeToString(tsParam.default) : undefined;
180
+ // Extract variance
181
+ let variance;
182
+ if (tsParam.in && tsParam.out) {
183
+ variance = 'in out';
184
+ }
185
+ else if (tsParam.in) {
186
+ variance = 'in';
187
+ }
188
+ else if (tsParam.out) {
189
+ variance = 'out';
190
+ }
191
+ // Use param's own location if available, otherwise fall back to declaration location
192
+ const paramLine = tsParam.loc?.start?.line ?? line;
193
+ const paramColumn = tsParam.loc?.start?.column ?? column;
194
+ result.push({
195
+ name: paramName,
196
+ constraintType: constraintType !== 'unknown' ? constraintType : undefined,
197
+ defaultType: defaultType !== 'unknown' ? defaultType : undefined,
198
+ variance,
199
+ parentId,
200
+ parentType,
201
+ file,
202
+ line: paramLine,
203
+ column: paramColumn,
204
+ });
205
+ }
206
+ return result;
207
+ }
81
208
  export class TypeScriptVisitor extends ASTVisitor {
82
209
  scopeTracker;
83
210
  /**
@@ -91,7 +218,7 @@ export class TypeScriptVisitor extends ASTVisitor {
91
218
  }
92
219
  getHandlers() {
93
220
  const { module } = this;
94
- const { interfaces, typeAliases, enums } = this.collections;
221
+ const { interfaces, typeAliases, enums, typeParameters } = this.collections;
95
222
  const scopeTracker = this.scopeTracker;
96
223
  return {
97
224
  TSInterfaceDeclaration: (path) => {
@@ -102,7 +229,7 @@ export class TypeScriptVisitor extends ASTVisitor {
102
229
  // Generate semantic ID if scopeTracker available
103
230
  let interfaceSemanticId;
104
231
  if (scopeTracker) {
105
- interfaceSemanticId = computeSemanticId('INTERFACE', interfaceName, scopeTracker.getContext());
232
+ interfaceSemanticId = computeSemanticIdV2('INTERFACE', interfaceName, module.file, scopeTracker.getNamedParent());
106
233
  }
107
234
  // Extract extends
108
235
  const extendsNames = [];
@@ -141,6 +268,14 @@ export class TypeScriptVisitor extends ASTVisitor {
141
268
  }
142
269
  }
143
270
  }
271
+ // Extract type parameters (REG-303)
272
+ if (typeParameters && node.typeParameters) {
273
+ const interfaceId = `${module.file}:INTERFACE:${interfaceName}:${getLine(node)}`;
274
+ const typeParamInfos = extractTypeParameters(node.typeParameters, interfaceId, 'INTERFACE', module.file, getLine(node), getColumn(node));
275
+ for (const tp of typeParamInfos) {
276
+ typeParameters.push(tp);
277
+ }
278
+ }
144
279
  interfaces.push({
145
280
  semanticId: interfaceSemanticId,
146
281
  type: 'INTERFACE',
@@ -160,19 +295,60 @@ export class TypeScriptVisitor extends ASTVisitor {
160
295
  // Generate semantic ID if scopeTracker available
161
296
  let typeSemanticId;
162
297
  if (scopeTracker) {
163
- typeSemanticId = computeSemanticId('TYPE', typeName, scopeTracker.getContext());
298
+ typeSemanticId = computeSemanticIdV2('TYPE', typeName, module.file, scopeTracker.getNamedParent());
164
299
  }
165
300
  // Extract the type being aliased
166
301
  const aliasOf = typeNodeToString(node.typeAnnotation);
167
- typeAliases.push({
302
+ // Extract type parameters (REG-303)
303
+ if (typeParameters && node.typeParameters) {
304
+ const typeId = `${module.file}:TYPE:${typeName}:${getLine(node)}`;
305
+ const typeParamInfos = extractTypeParameters(node.typeParameters, typeId, 'TYPE', module.file, getLine(node), getColumn(node));
306
+ for (const tp of typeParamInfos) {
307
+ typeParameters.push(tp);
308
+ }
309
+ }
310
+ // REG-304: Detect conditional type and extract branch metadata
311
+ const typeAnnotation = node.typeAnnotation;
312
+ const isConditional = typeAnnotation?.type === 'TSConditionalType';
313
+ const typeInfo = {
168
314
  semanticId: typeSemanticId,
169
315
  type: 'TYPE',
170
316
  name: typeName,
171
317
  file: module.file,
172
318
  line: getLine(node),
173
319
  column: getColumn(node),
174
- aliasOf
175
- });
320
+ aliasOf,
321
+ ...(isConditional && {
322
+ conditionalType: true,
323
+ checkType: typeNodeToString(typeAnnotation.checkType),
324
+ extendsType: typeNodeToString(typeAnnotation.extendsType),
325
+ trueType: typeNodeToString(typeAnnotation.trueType),
326
+ falseType: typeNodeToString(typeAnnotation.falseType),
327
+ }),
328
+ };
329
+ // Detect mapped types: { [K in keyof T]: T[K] }
330
+ const annotation = node.typeAnnotation;
331
+ if (annotation?.type === 'TSMappedType') {
332
+ typeInfo.mappedType = true;
333
+ const tp = annotation.typeParameter;
334
+ if (tp?.name)
335
+ typeInfo.keyName = tp.name;
336
+ if (tp?.constraint)
337
+ typeInfo.keyConstraint = typeNodeToString(tp.constraint);
338
+ if (annotation.typeAnnotation) {
339
+ typeInfo.valueType = typeNodeToString(annotation.typeAnnotation);
340
+ }
341
+ if (annotation.readonly !== undefined && annotation.readonly !== null) {
342
+ typeInfo.mappedReadonly = annotation.readonly;
343
+ }
344
+ if (annotation.optional !== undefined && annotation.optional !== null) {
345
+ typeInfo.mappedOptional = annotation.optional;
346
+ }
347
+ if (annotation.nameType) {
348
+ typeInfo.nameType = typeNodeToString(annotation.nameType);
349
+ }
350
+ }
351
+ typeAliases.push(typeInfo);
176
352
  },
177
353
  TSEnumDeclaration: (path) => {
178
354
  const node = path.node;
@@ -182,7 +358,7 @@ export class TypeScriptVisitor extends ASTVisitor {
182
358
  // Generate semantic ID if scopeTracker available
183
359
  let enumSemanticId;
184
360
  if (scopeTracker) {
185
- enumSemanticId = computeSemanticId('ENUM', enumName, scopeTracker.getContext());
361
+ enumSemanticId = computeSemanticIdV2('ENUM', enumName, module.file, scopeTracker.getNamedParent());
186
362
  }
187
363
  // Extract members
188
364
  const members = [];
@@ -1 +1 @@
1
- {"version":3,"file":"TypeScriptVisitor.js","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/TypeScriptVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TypeScriptVisitor.js","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/TypeScriptVisitor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"VariableVisitor.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/VariableVisitor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAKV,IAAI,EACL,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEjI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAGrE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACjD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG,CAC5C,QAAQ,EAAE,IAAI,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,mBAAmB,EAAE,OAAO,EAAE,EAC9B,iBAAiB,EAAE,UAAU,EAC7B,cAAc,EAAE,OAAO,EAAE,EACzB,gBAAgB,EAAE,OAAO,EAAE,EAC3B,uBAAuB,EAAE,UAAU,KAChC,IAAI,CAAC;AAqCV,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,OAAO,CAAC,+BAA+B,CAA+B;IACtE,OAAO,CAAC,uBAAuB,CAAkC;IACjE,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAsCvB;;;;;;OAMG;gBAED,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,kBAAkB,EAC/B,+BAA+B,EAAE,4BAA4B,EAC7D,uBAAuB,EAAE,+BAA+B,EACxD,YAAY,CAAC,EAAE,YAAY;IAQ7B,WAAW,IAAI,eAAe;CAsT/B"}
1
+ {"version":3,"file":"VariableVisitor.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/VariableVisitor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAKV,IAAI,EACL,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,UAAU,EAAE,KAAK,aAAa,EAAE,KAAK,kBAAkB,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEjI,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAGrE;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE;QAAE,KAAK,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;IACjD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,MAAM,4BAA4B,GAAG,CAAC,OAAO,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;AAE7E;;GAEG;AACH,MAAM,MAAM,+BAA+B,GAAG,CAC5C,QAAQ,EAAE,IAAI,EACd,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,mBAAmB,EAAE,OAAO,EAAE,EAC9B,iBAAiB,EAAE,UAAU,EAC7B,cAAc,EAAE,OAAO,EAAE,EACzB,gBAAgB,EAAE,OAAO,EAAE,EAC3B,uBAAuB,EAAE,UAAU,KAChC,IAAI,CAAC;AAsCV,qBAAa,eAAgB,SAAQ,UAAU;IAC7C,OAAO,CAAC,+BAA+B,CAA+B;IACtE,OAAO,CAAC,uBAAuB,CAAkC;IACjE,OAAO,CAAC,YAAY,CAAC,CAAe;IAEpC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAO7B;;OAEG;IACH,OAAO,CAAC,uBAAuB;IAK/B;;;OAGG;IACH,OAAO,CAAC,eAAe;IAsCvB;;;;;;OAMG;gBAED,MAAM,EAAE,aAAa,EACrB,WAAW,EAAE,kBAAkB,EAC/B,+BAA+B,EAAE,4BAA4B,EAC7D,uBAAuB,EAAE,+BAA+B,EACxD,YAAY,CAAC,EAAE,YAAY;IAQ7B,WAAW,IAAI,eAAe;CAkT/B"}
@@ -88,7 +88,6 @@ export class VariableVisitor extends ASTVisitor {
88
88
  const literals = (this.collections.literals ?? []);
89
89
  const variableAssignments = this.collections.variableAssignments ?? [];
90
90
  const scopes = (this.collections.scopes ?? []);
91
- const varDeclCounterRef = (this.collections.varDeclCounterRef ?? { value: 0 });
92
91
  const literalCounterRef = (this.collections.literalCounterRef ?? { value: 0 });
93
92
  const scopeCounterRef = (this.collections.scopeCounterRef ?? { value: 0 });
94
93
  // Object literal tracking collections (REG-328)
@@ -149,7 +148,8 @@ export class VariableVisitor extends ASTVisitor {
149
148
  const nodeType = shouldBeConstant ? 'CONSTANT' : 'VARIABLE';
150
149
  // Generate ID using centralized IdGenerator
151
150
  const idGenerator = new IdGenerator(scopeTracker);
152
- const varId = idGenerator.generate(nodeType, varInfo.name, module.file, varInfo.loc.start.line, varInfo.loc.start.column, varDeclCounterRef);
151
+ const varId = idGenerator.generateV2Simple(nodeType, varInfo.name, module.file);
152
+ const currentScopePath = scopeTracker?.getContext().scopePath ?? [];
153
153
  if (shouldBeConstant) {
154
154
  // CONSTANT node
155
155
  const constantData = {
@@ -158,7 +158,8 @@ export class VariableVisitor extends ASTVisitor {
158
158
  name: varInfo.name,
159
159
  file: module.file,
160
160
  line: varInfo.loc.start.line,
161
- parentScopeId: module.id
161
+ parentScopeId: module.id,
162
+ scopePath: currentScopePath
162
163
  };
163
164
  if (isLiteral) {
164
165
  constantData.value = literalValue;
@@ -186,7 +187,8 @@ export class VariableVisitor extends ASTVisitor {
186
187
  name: varInfo.name,
187
188
  file: module.file,
188
189
  line: varInfo.loc.start.line,
189
- parentScopeId: module.id
190
+ parentScopeId: module.id,
191
+ scopePath: currentScopePath
190
192
  });
191
193
  }
192
194
  // Track assignment for data flow analysis
@@ -1 +1 @@
1
- {"version":3,"file":"VariableVisitor.js","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/VariableVisitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VariableVisitor.js","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/VariableVisitor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Helper functions for CallExpressionVisitor — grafema-ignore annotation detection.
3
+ *
4
+ * Extracted from CallExpressionVisitor.ts (REG-424) to reduce file size.
5
+ */
6
+ import type { NodePath } from '@babel/traverse';
7
+ import type { GrafemaIgnoreAnnotation } from '../types.js';
8
+ /**
9
+ * Check if a call has a grafema-ignore comment for suppressing strict mode errors.
10
+ * Babel attaches leading comments to statements (VariableDeclaration, ExpressionStatement),
11
+ * not to nested CallExpression nodes. So we check:
12
+ * 1. The call node itself (rare, but possible for standalone calls)
13
+ * 2. The parent statement (VariableDeclaration, ExpressionStatement, etc.)
14
+ *
15
+ * @param path - Babel NodePath for the CallExpression
16
+ * @returns GrafemaIgnoreAnnotation if found, null otherwise
17
+ */
18
+ export declare function getGrafemaIgnore(path: NodePath): GrafemaIgnoreAnnotation | null;
19
+ //# sourceMappingURL=call-expression-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-expression-helpers.d.ts","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/call-expression-helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAkC3D;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,QAAQ,GAAG,uBAAuB,GAAG,IAAI,CAY/E"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Helper functions for CallExpressionVisitor — grafema-ignore annotation detection.
3
+ *
4
+ * Extracted from CallExpressionVisitor.ts (REG-424) to reduce file size.
5
+ */
6
+ /**
7
+ * Pattern for grafema-ignore comments (REG-332)
8
+ * Matches:
9
+ * // grafema-ignore STRICT_UNRESOLVED_METHOD
10
+ * // grafema-ignore STRICT_UNRESOLVED_METHOD - known library call
11
+ * block comments with same pattern
12
+ */
13
+ const GRAFEMA_IGNORE_PATTERN = /grafema-ignore(?:-next-line)?\s+([\w_]+)(?:\s+-\s+(.+))?/;
14
+ /**
15
+ * Check node's leadingComments for grafema-ignore annotation.
16
+ */
17
+ function checkNodeComments(node) {
18
+ const comments = node.leadingComments;
19
+ if (!comments || comments.length === 0)
20
+ return null;
21
+ // Check comments from last to first (closest to node wins)
22
+ for (let i = comments.length - 1; i >= 0; i--) {
23
+ const comment = comments[i];
24
+ const text = comment.value.trim();
25
+ const match = text.match(GRAFEMA_IGNORE_PATTERN);
26
+ if (match) {
27
+ return {
28
+ code: match[1],
29
+ reason: match[2]?.trim(),
30
+ };
31
+ }
32
+ }
33
+ return null;
34
+ }
35
+ /**
36
+ * Check if a call has a grafema-ignore comment for suppressing strict mode errors.
37
+ * Babel attaches leading comments to statements (VariableDeclaration, ExpressionStatement),
38
+ * not to nested CallExpression nodes. So we check:
39
+ * 1. The call node itself (rare, but possible for standalone calls)
40
+ * 2. The parent statement (VariableDeclaration, ExpressionStatement, etc.)
41
+ *
42
+ * @param path - Babel NodePath for the CallExpression
43
+ * @returns GrafemaIgnoreAnnotation if found, null otherwise
44
+ */
45
+ export function getGrafemaIgnore(path) {
46
+ // First check the call node itself
47
+ const callResult = checkNodeComments(path.node);
48
+ if (callResult)
49
+ return callResult;
50
+ // Then check parent statement (where Babel typically attaches comments)
51
+ const statementPath = path.getStatementParent();
52
+ if (statementPath) {
53
+ return checkNodeComments(statementPath.node);
54
+ }
55
+ return null;
56
+ }
57
+ //# sourceMappingURL=call-expression-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"call-expression-helpers.js","sourceRoot":"","sources":["../../../../../src/plugins/analysis/ast/visitors/call-expression-helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH;;;;;;GAMG;AACH,MAAM,sBAAsB,GAAG,0DAA0D,CAAC;AAE1F;;GAEG;AACH,SAAS,iBAAiB,CAAC,IAAU;IACnC,MAAM,QAAQ,GAAI,IAAwC,CAAC,eAAe,CAAC;IAC3E,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEpD,2DAA2D;IAC3D,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAClC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACjD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO;gBACL,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC;gBACd,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE;aACzB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAc;IAC7C,mCAAmC;IACnC,MAAM,UAAU,GAAG,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,UAAU;QAAE,OAAO,UAAU,CAAC;IAElC,wEAAwE;IACxE,MAAM,aAAa,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;IAChD,IAAI,aAAa,EAAE,CAAC;QAClB,OAAO,iBAAiB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC"}