@egentica/codemap 0.1.5

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 (527) hide show
  1. package/LICENSE.md +165 -0
  2. package/README.md +479 -0
  3. package/dist/adapters/EgenticaMcpAdapter.d.ts +128 -0
  4. package/dist/adapters/EgenticaMcpAdapter.d.ts.map +1 -0
  5. package/dist/adapters/EgenticaMcpAdapter.js +218 -0
  6. package/dist/adapters/EgenticaMcpAdapter.js.map +1 -0
  7. package/dist/assist/AssistEngine.d.ts +107 -0
  8. package/dist/assist/AssistEngine.d.ts.map +1 -0
  9. package/dist/assist/AssistEngine.js +188 -0
  10. package/dist/assist/AssistEngine.js.map +1 -0
  11. package/dist/assist/AssistScorer.d.ts +91 -0
  12. package/dist/assist/AssistScorer.d.ts.map +1 -0
  13. package/dist/assist/AssistScorer.js +254 -0
  14. package/dist/assist/AssistScorer.js.map +1 -0
  15. package/dist/assist/PatternAggregator.d.ts +116 -0
  16. package/dist/assist/PatternAggregator.d.ts.map +1 -0
  17. package/dist/assist/PatternAggregator.js +311 -0
  18. package/dist/assist/PatternAggregator.js.map +1 -0
  19. package/dist/assist/RelevanceScorer.d.ts +104 -0
  20. package/dist/assist/RelevanceScorer.d.ts.map +1 -0
  21. package/dist/assist/RelevanceScorer.js +240 -0
  22. package/dist/assist/RelevanceScorer.js.map +1 -0
  23. package/dist/assist/index.d.ts +6 -0
  24. package/dist/assist/index.d.ts.map +1 -0
  25. package/dist/assist/index.js +9 -0
  26. package/dist/assist/index.js.map +1 -0
  27. package/dist/core/AnnotationStore.d.ts +101 -0
  28. package/dist/core/AnnotationStore.d.ts.map +1 -0
  29. package/dist/core/AnnotationStore.js +236 -0
  30. package/dist/core/AnnotationStore.js.map +1 -0
  31. package/dist/core/BackupManager.d.ts +92 -0
  32. package/dist/core/BackupManager.d.ts.map +1 -0
  33. package/dist/core/BackupManager.js +311 -0
  34. package/dist/core/BackupManager.js.map +1 -0
  35. package/dist/core/ChecklistStore.d.ts +66 -0
  36. package/dist/core/ChecklistStore.d.ts.map +1 -0
  37. package/dist/core/ChecklistStore.js +199 -0
  38. package/dist/core/ChecklistStore.js.map +1 -0
  39. package/dist/core/CodeMap.d.ts +614 -0
  40. package/dist/core/CodeMap.d.ts.map +1 -0
  41. package/dist/core/CodeMap.js +880 -0
  42. package/dist/core/CodeMap.js.map +1 -0
  43. package/dist/core/DisplayFilter.d.ts +83 -0
  44. package/dist/core/DisplayFilter.d.ts.map +1 -0
  45. package/dist/core/DisplayFilter.js +228 -0
  46. package/dist/core/DisplayFilter.js.map +1 -0
  47. package/dist/core/EventBus.d.ts +114 -0
  48. package/dist/core/EventBus.d.ts.map +1 -0
  49. package/dist/core/EventBus.js +192 -0
  50. package/dist/core/EventBus.js.map +1 -0
  51. package/dist/core/ExperienceStore.d.ts +170 -0
  52. package/dist/core/ExperienceStore.d.ts.map +1 -0
  53. package/dist/core/ExperienceStore.js +292 -0
  54. package/dist/core/ExperienceStore.js.map +1 -0
  55. package/dist/core/ExperienceTracker.d.ts +110 -0
  56. package/dist/core/ExperienceTracker.d.ts.map +1 -0
  57. package/dist/core/ExperienceTracker.js +291 -0
  58. package/dist/core/ExperienceTracker.js.map +1 -0
  59. package/dist/core/FileSystemGraph.d.ts +157 -0
  60. package/dist/core/FileSystemGraph.d.ts.map +1 -0
  61. package/dist/core/FileSystemGraph.js +316 -0
  62. package/dist/core/FileSystemGraph.js.map +1 -0
  63. package/dist/core/FileSystemIO.d.ts +222 -0
  64. package/dist/core/FileSystemIO.d.ts.map +1 -0
  65. package/dist/core/FileSystemIO.js +403 -0
  66. package/dist/core/FileSystemIO.js.map +1 -0
  67. package/dist/core/FuzzyMatcher.d.ts +51 -0
  68. package/dist/core/FuzzyMatcher.d.ts.map +1 -0
  69. package/dist/core/FuzzyMatcher.js +280 -0
  70. package/dist/core/FuzzyMatcher.js.map +1 -0
  71. package/dist/core/GroupStore.d.ts +114 -0
  72. package/dist/core/GroupStore.d.ts.map +1 -0
  73. package/dist/core/GroupStore.js +246 -0
  74. package/dist/core/GroupStore.js.map +1 -0
  75. package/dist/core/HelpRegistry.d.ts +116 -0
  76. package/dist/core/HelpRegistry.d.ts.map +1 -0
  77. package/dist/core/HelpRegistry.js +160 -0
  78. package/dist/core/HelpRegistry.js.map +1 -0
  79. package/dist/core/HintRegistry.d.ts +49 -0
  80. package/dist/core/HintRegistry.d.ts.map +1 -0
  81. package/dist/core/HintRegistry.js +81 -0
  82. package/dist/core/HintRegistry.js.map +1 -0
  83. package/dist/core/LabelStore.d.ts +88 -0
  84. package/dist/core/LabelStore.d.ts.map +1 -0
  85. package/dist/core/LabelStore.js +520 -0
  86. package/dist/core/LabelStore.js.map +1 -0
  87. package/dist/core/LineRangeWriter.d.ts +63 -0
  88. package/dist/core/LineRangeWriter.d.ts.map +1 -0
  89. package/dist/core/LineRangeWriter.js +179 -0
  90. package/dist/core/LineRangeWriter.js.map +1 -0
  91. package/dist/core/ParserRegistry.d.ts +70 -0
  92. package/dist/core/ParserRegistry.d.ts.map +1 -0
  93. package/dist/core/ParserRegistry.js +109 -0
  94. package/dist/core/ParserRegistry.js.map +1 -0
  95. package/dist/core/PluginRegistry.d.ts +120 -0
  96. package/dist/core/PluginRegistry.d.ts.map +1 -0
  97. package/dist/core/PluginRegistry.js +230 -0
  98. package/dist/core/PluginRegistry.js.map +1 -0
  99. package/dist/core/QueryEngine.d.ts +134 -0
  100. package/dist/core/QueryEngine.d.ts.map +1 -0
  101. package/dist/core/QueryEngine.js +211 -0
  102. package/dist/core/QueryEngine.js.map +1 -0
  103. package/dist/core/Scanner.d.ts +84 -0
  104. package/dist/core/Scanner.d.ts.map +1 -0
  105. package/dist/core/Scanner.js +184 -0
  106. package/dist/core/Scanner.js.map +1 -0
  107. package/dist/core/SessionTransactionLog.d.ts +138 -0
  108. package/dist/core/SessionTransactionLog.d.ts.map +1 -0
  109. package/dist/core/SessionTransactionLog.js +397 -0
  110. package/dist/core/SessionTransactionLog.js.map +1 -0
  111. package/dist/core/TargetParser.d.ts +85 -0
  112. package/dist/core/TargetParser.d.ts.map +1 -0
  113. package/dist/core/TargetParser.js +167 -0
  114. package/dist/core/TargetParser.js.map +1 -0
  115. package/dist/core/TargetResolver.d.ts +115 -0
  116. package/dist/core/TargetResolver.d.ts.map +1 -0
  117. package/dist/core/TargetResolver.js +237 -0
  118. package/dist/core/TargetResolver.js.map +1 -0
  119. package/dist/core/WriteSafetyGuard.d.ts +101 -0
  120. package/dist/core/WriteSafetyGuard.d.ts.map +1 -0
  121. package/dist/core/WriteSafetyGuard.js +265 -0
  122. package/dist/core/WriteSafetyGuard.js.map +1 -0
  123. package/dist/core/index.d.ts +38 -0
  124. package/dist/core/index.d.ts.map +1 -0
  125. package/dist/core/index.js +51 -0
  126. package/dist/core/index.js.map +1 -0
  127. package/dist/core/query/DependencyTraversal.d.ts +23 -0
  128. package/dist/core/query/DependencyTraversal.d.ts.map +1 -0
  129. package/dist/core/query/DependencyTraversal.js +55 -0
  130. package/dist/core/query/DependencyTraversal.js.map +1 -0
  131. package/dist/core/query/ResultProcessor.d.ts +20 -0
  132. package/dist/core/query/ResultProcessor.d.ts.map +1 -0
  133. package/dist/core/query/ResultProcessor.js +99 -0
  134. package/dist/core/query/ResultProcessor.js.map +1 -0
  135. package/dist/core/query/SymbolSearchEngine.d.ts +20 -0
  136. package/dist/core/query/SymbolSearchEngine.d.ts.map +1 -0
  137. package/dist/core/query/SymbolSearchEngine.js +109 -0
  138. package/dist/core/query/SymbolSearchEngine.js.map +1 -0
  139. package/dist/core/query/TextSearchEngine.d.ts +23 -0
  140. package/dist/core/query/TextSearchEngine.d.ts.map +1 -0
  141. package/dist/core/query/TextSearchEngine.js +69 -0
  142. package/dist/core/query/TextSearchEngine.js.map +1 -0
  143. package/dist/core/query/index.d.ts +11 -0
  144. package/dist/core/query/index.d.ts.map +1 -0
  145. package/dist/core/query/index.js +18 -0
  146. package/dist/core/query/index.js.map +1 -0
  147. package/dist/core/scan/DependencyResolver.d.ts +26 -0
  148. package/dist/core/scan/DependencyResolver.d.ts.map +1 -0
  149. package/dist/core/scan/DependencyResolver.js +81 -0
  150. package/dist/core/scan/DependencyResolver.js.map +1 -0
  151. package/dist/core/scan/DirectoryWalker.d.ts +39 -0
  152. package/dist/core/scan/DirectoryWalker.d.ts.map +1 -0
  153. package/dist/core/scan/DirectoryWalker.js +136 -0
  154. package/dist/core/scan/DirectoryWalker.js.map +1 -0
  155. package/dist/core/scan/IgnorePatternMatcher.d.ts +32 -0
  156. package/dist/core/scan/IgnorePatternMatcher.d.ts.map +1 -0
  157. package/dist/core/scan/IgnorePatternMatcher.js +120 -0
  158. package/dist/core/scan/IgnorePatternMatcher.js.map +1 -0
  159. package/dist/core/scan/index.d.ts +10 -0
  160. package/dist/core/scan/index.d.ts.map +1 -0
  161. package/dist/core/scan/index.js +16 -0
  162. package/dist/core/scan/index.js.map +1 -0
  163. package/dist/core/utils/packageDiscovery.d.ts +24 -0
  164. package/dist/core/utils/packageDiscovery.d.ts.map +1 -0
  165. package/dist/core/utils/packageDiscovery.js +37 -0
  166. package/dist/core/utils/packageDiscovery.js.map +1 -0
  167. package/dist/index.d.ts +18 -0
  168. package/dist/index.d.ts.map +1 -0
  169. package/dist/index.js +37 -0
  170. package/dist/index.js.map +1 -0
  171. package/dist/mcp/operations/annotations.d.ts +9 -0
  172. package/dist/mcp/operations/annotations.d.ts.map +1 -0
  173. package/dist/mcp/operations/annotations.js +66 -0
  174. package/dist/mcp/operations/annotations.js.map +1 -0
  175. package/dist/mcp/operations/files.d.ts +13 -0
  176. package/dist/mcp/operations/files.d.ts.map +1 -0
  177. package/dist/mcp/operations/files.js +173 -0
  178. package/dist/mcp/operations/files.js.map +1 -0
  179. package/dist/mcp/operations/graph.d.ts +10 -0
  180. package/dist/mcp/operations/graph.d.ts.map +1 -0
  181. package/dist/mcp/operations/graph.js +69 -0
  182. package/dist/mcp/operations/graph.js.map +1 -0
  183. package/dist/mcp/operations/groups.d.ts +55 -0
  184. package/dist/mcp/operations/groups.d.ts.map +1 -0
  185. package/dist/mcp/operations/groups.js +233 -0
  186. package/dist/mcp/operations/groups.js.map +1 -0
  187. package/dist/mcp/operations/help.d.ts +36 -0
  188. package/dist/mcp/operations/help.d.ts.map +1 -0
  189. package/dist/mcp/operations/help.js +322 -0
  190. package/dist/mcp/operations/help.js.map +1 -0
  191. package/dist/mcp/operations/session.d.ts +13 -0
  192. package/dist/mcp/operations/session.d.ts.map +1 -0
  193. package/dist/mcp/operations/session.js +169 -0
  194. package/dist/mcp/operations/session.js.map +1 -0
  195. package/dist/mcp/operations/writes.d.ts +14 -0
  196. package/dist/mcp/operations/writes.d.ts.map +1 -0
  197. package/dist/mcp/operations/writes.js +287 -0
  198. package/dist/mcp/operations/writes.js.map +1 -0
  199. package/dist/mcp/registry/ToolRegistry.d.ts +54 -0
  200. package/dist/mcp/registry/ToolRegistry.d.ts.map +1 -0
  201. package/dist/mcp/registry/ToolRegistry.js +219 -0
  202. package/dist/mcp/registry/ToolRegistry.js.map +1 -0
  203. package/dist/mcp/registry/context-guard.d.ts +13 -0
  204. package/dist/mcp/registry/context-guard.d.ts.map +1 -0
  205. package/dist/mcp/registry/context-guard.js +19 -0
  206. package/dist/mcp/registry/context-guard.js.map +1 -0
  207. package/dist/mcp/registry/schemas.d.ts +221 -0
  208. package/dist/mcp/registry/schemas.d.ts.map +1 -0
  209. package/dist/mcp/registry/schemas.js +217 -0
  210. package/dist/mcp/registry/schemas.js.map +1 -0
  211. package/dist/mcp/registry/types.d.ts +50 -0
  212. package/dist/mcp/registry/types.d.ts.map +1 -0
  213. package/dist/mcp/registry/types.js +5 -0
  214. package/dist/mcp/registry/types.js.map +1 -0
  215. package/dist/mcp/server.d.ts +35 -0
  216. package/dist/mcp/server.d.ts.map +1 -0
  217. package/dist/mcp/server.js +264 -0
  218. package/dist/mcp/server.js.map +1 -0
  219. package/dist/mcp/tools/annotations/add.tool.d.ts +10 -0
  220. package/dist/mcp/tools/annotations/add.tool.d.ts.map +1 -0
  221. package/dist/mcp/tools/annotations/add.tool.js +88 -0
  222. package/dist/mcp/tools/annotations/add.tool.js.map +1 -0
  223. package/dist/mcp/tools/annotations/edit.tool.d.ts +10 -0
  224. package/dist/mcp/tools/annotations/edit.tool.d.ts.map +1 -0
  225. package/dist/mcp/tools/annotations/edit.tool.js +92 -0
  226. package/dist/mcp/tools/annotations/edit.tool.js.map +1 -0
  227. package/dist/mcp/tools/annotations/remove.tool.d.ts +9 -0
  228. package/dist/mcp/tools/annotations/remove.tool.d.ts.map +1 -0
  229. package/dist/mcp/tools/annotations/remove.tool.js +87 -0
  230. package/dist/mcp/tools/annotations/remove.tool.js.map +1 -0
  231. package/dist/mcp/tools/annotations/search-annotations.tool.d.ts +11 -0
  232. package/dist/mcp/tools/annotations/search-annotations.tool.d.ts.map +1 -0
  233. package/dist/mcp/tools/annotations/search-annotations.tool.js +91 -0
  234. package/dist/mcp/tools/annotations/search-annotations.tool.js.map +1 -0
  235. package/dist/mcp/tools/backup/list.tool.d.ts +16 -0
  236. package/dist/mcp/tools/backup/list.tool.d.ts.map +1 -0
  237. package/dist/mcp/tools/backup/list.tool.js +48 -0
  238. package/dist/mcp/tools/backup/list.tool.js.map +1 -0
  239. package/dist/mcp/tools/backup/restore.tool.d.ts +15 -0
  240. package/dist/mcp/tools/backup/restore.tool.d.ts.map +1 -0
  241. package/dist/mcp/tools/backup/restore.tool.js +138 -0
  242. package/dist/mcp/tools/backup/restore.tool.js.map +1 -0
  243. package/dist/mcp/tools/checklist/add.tool.d.ts +17 -0
  244. package/dist/mcp/tools/checklist/add.tool.d.ts.map +1 -0
  245. package/dist/mcp/tools/checklist/add.tool.js +53 -0
  246. package/dist/mcp/tools/checklist/add.tool.js.map +1 -0
  247. package/dist/mcp/tools/checklist/list.tool.d.ts +11 -0
  248. package/dist/mcp/tools/checklist/list.tool.d.ts.map +1 -0
  249. package/dist/mcp/tools/checklist/list.tool.js +53 -0
  250. package/dist/mcp/tools/checklist/list.tool.js.map +1 -0
  251. package/dist/mcp/tools/checklist/remove.tool.d.ts +9 -0
  252. package/dist/mcp/tools/checklist/remove.tool.d.ts.map +1 -0
  253. package/dist/mcp/tools/checklist/remove.tool.js +63 -0
  254. package/dist/mcp/tools/checklist/remove.tool.js.map +1 -0
  255. package/dist/mcp/tools/graph/get-dependencies.tool.d.ts +8 -0
  256. package/dist/mcp/tools/graph/get-dependencies.tool.d.ts.map +1 -0
  257. package/dist/mcp/tools/graph/get-dependencies.tool.js +58 -0
  258. package/dist/mcp/tools/graph/get-dependencies.tool.js.map +1 -0
  259. package/dist/mcp/tools/graph/get-related.tool.d.ts +9 -0
  260. package/dist/mcp/tools/graph/get-related.tool.d.ts.map +1 -0
  261. package/dist/mcp/tools/graph/get-related.tool.js +63 -0
  262. package/dist/mcp/tools/graph/get-related.tool.js.map +1 -0
  263. package/dist/mcp/tools/graph/impact-analysis.tool.d.ts +9 -0
  264. package/dist/mcp/tools/graph/impact-analysis.tool.d.ts.map +1 -0
  265. package/dist/mcp/tools/graph/impact-analysis.tool.js +61 -0
  266. package/dist/mcp/tools/graph/impact-analysis.tool.js.map +1 -0
  267. package/dist/mcp/tools/graph/traverse.tool.d.ts +13 -0
  268. package/dist/mcp/tools/graph/traverse.tool.d.ts.map +1 -0
  269. package/dist/mcp/tools/graph/traverse.tool.js +59 -0
  270. package/dist/mcp/tools/graph/traverse.tool.js.map +1 -0
  271. package/dist/mcp/tools/groups/add.tool.d.ts +10 -0
  272. package/dist/mcp/tools/groups/add.tool.d.ts.map +1 -0
  273. package/dist/mcp/tools/groups/add.tool.js +85 -0
  274. package/dist/mcp/tools/groups/add.tool.js.map +1 -0
  275. package/dist/mcp/tools/groups/notate.tool.d.ts +11 -0
  276. package/dist/mcp/tools/groups/notate.tool.d.ts.map +1 -0
  277. package/dist/mcp/tools/groups/notate.tool.js +86 -0
  278. package/dist/mcp/tools/groups/notate.tool.js.map +1 -0
  279. package/dist/mcp/tools/groups/search.tool.d.ts +8 -0
  280. package/dist/mcp/tools/groups/search.tool.d.ts.map +1 -0
  281. package/dist/mcp/tools/groups/search.tool.js +81 -0
  282. package/dist/mcp/tools/groups/search.tool.js.map +1 -0
  283. package/dist/mcp/tools/io/append.tool.d.ts +10 -0
  284. package/dist/mcp/tools/io/append.tool.d.ts.map +1 -0
  285. package/dist/mcp/tools/io/append.tool.js +103 -0
  286. package/dist/mcp/tools/io/append.tool.js.map +1 -0
  287. package/dist/mcp/tools/io/create.tool.d.ts +11 -0
  288. package/dist/mcp/tools/io/create.tool.d.ts.map +1 -0
  289. package/dist/mcp/tools/io/create.tool.js +119 -0
  290. package/dist/mcp/tools/io/create.tool.js.map +1 -0
  291. package/dist/mcp/tools/io/delete.tool.d.ts +9 -0
  292. package/dist/mcp/tools/io/delete.tool.d.ts.map +1 -0
  293. package/dist/mcp/tools/io/delete.tool.js +129 -0
  294. package/dist/mcp/tools/io/delete.tool.js.map +1 -0
  295. package/dist/mcp/tools/io/get-annotations.tool.d.ts +10 -0
  296. package/dist/mcp/tools/io/get-annotations.tool.d.ts.map +1 -0
  297. package/dist/mcp/tools/io/get-annotations.tool.js +97 -0
  298. package/dist/mcp/tools/io/get-annotations.tool.js.map +1 -0
  299. package/dist/mcp/tools/io/get-symbols.tool.d.ts +9 -0
  300. package/dist/mcp/tools/io/get-symbols.tool.d.ts.map +1 -0
  301. package/dist/mcp/tools/io/get-symbols.tool.js +63 -0
  302. package/dist/mcp/tools/io/get-symbols.tool.js.map +1 -0
  303. package/dist/mcp/tools/io/list.tool.d.ts +8 -0
  304. package/dist/mcp/tools/io/list.tool.d.ts.map +1 -0
  305. package/dist/mcp/tools/io/list.tool.js +68 -0
  306. package/dist/mcp/tools/io/list.tool.js.map +1 -0
  307. package/dist/mcp/tools/io/peek.tool.d.ts +11 -0
  308. package/dist/mcp/tools/io/peek.tool.d.ts.map +1 -0
  309. package/dist/mcp/tools/io/peek.tool.js +74 -0
  310. package/dist/mcp/tools/io/peek.tool.js.map +1 -0
  311. package/dist/mcp/tools/io/read-multiple.tool.d.ts +9 -0
  312. package/dist/mcp/tools/io/read-multiple.tool.d.ts.map +1 -0
  313. package/dist/mcp/tools/io/read-multiple.tool.js +72 -0
  314. package/dist/mcp/tools/io/read-multiple.tool.js.map +1 -0
  315. package/dist/mcp/tools/io/read.tool.d.ts +13 -0
  316. package/dist/mcp/tools/io/read.tool.d.ts.map +1 -0
  317. package/dist/mcp/tools/io/read.tool.js +132 -0
  318. package/dist/mcp/tools/io/read.tool.js.map +1 -0
  319. package/dist/mcp/tools/io/rename.tool.d.ts +9 -0
  320. package/dist/mcp/tools/io/rename.tool.d.ts.map +1 -0
  321. package/dist/mcp/tools/io/rename.tool.js +101 -0
  322. package/dist/mcp/tools/io/rename.tool.js.map +1 -0
  323. package/dist/mcp/tools/io/replace-many.tool.d.ts +10 -0
  324. package/dist/mcp/tools/io/replace-many.tool.d.ts.map +1 -0
  325. package/dist/mcp/tools/io/replace-many.tool.js +114 -0
  326. package/dist/mcp/tools/io/replace-many.tool.js.map +1 -0
  327. package/dist/mcp/tools/io/replace-text.tool.d.ts +12 -0
  328. package/dist/mcp/tools/io/replace-text.tool.d.ts.map +1 -0
  329. package/dist/mcp/tools/io/replace-text.tool.js +213 -0
  330. package/dist/mcp/tools/io/replace-text.tool.js.map +1 -0
  331. package/dist/mcp/tools/io/write.tool.d.ts +10 -0
  332. package/dist/mcp/tools/io/write.tool.d.ts.map +1 -0
  333. package/dist/mcp/tools/io/write.tool.js +103 -0
  334. package/dist/mcp/tools/io/write.tool.js.map +1 -0
  335. package/dist/mcp/tools/labels/assign.tool.d.ts +16 -0
  336. package/dist/mcp/tools/labels/assign.tool.d.ts.map +1 -0
  337. package/dist/mcp/tools/labels/assign.tool.js +52 -0
  338. package/dist/mcp/tools/labels/assign.tool.js.map +1 -0
  339. package/dist/mcp/tools/labels/create.tool.d.ts +12 -0
  340. package/dist/mcp/tools/labels/create.tool.d.ts.map +1 -0
  341. package/dist/mcp/tools/labels/create.tool.js +51 -0
  342. package/dist/mcp/tools/labels/create.tool.js.map +1 -0
  343. package/dist/mcp/tools/labels/delete.tool.d.ts +9 -0
  344. package/dist/mcp/tools/labels/delete.tool.d.ts.map +1 -0
  345. package/dist/mcp/tools/labels/delete.tool.js +48 -0
  346. package/dist/mcp/tools/labels/delete.tool.js.map +1 -0
  347. package/dist/mcp/tools/labels/edit.tool.d.ts +13 -0
  348. package/dist/mcp/tools/labels/edit.tool.d.ts.map +1 -0
  349. package/dist/mcp/tools/labels/edit.tool.js +58 -0
  350. package/dist/mcp/tools/labels/edit.tool.js.map +1 -0
  351. package/dist/mcp/tools/labels/list.tool.d.ts +11 -0
  352. package/dist/mcp/tools/labels/list.tool.d.ts.map +1 -0
  353. package/dist/mcp/tools/labels/list.tool.js +47 -0
  354. package/dist/mcp/tools/labels/list.tool.js.map +1 -0
  355. package/dist/mcp/tools/labels/migrate.tool.d.ts +10 -0
  356. package/dist/mcp/tools/labels/migrate.tool.d.ts.map +1 -0
  357. package/dist/mcp/tools/labels/migrate.tool.js +50 -0
  358. package/dist/mcp/tools/labels/migrate.tool.js.map +1 -0
  359. package/dist/mcp/tools/labels/search.tool.d.ts +16 -0
  360. package/dist/mcp/tools/labels/search.tool.d.ts.map +1 -0
  361. package/dist/mcp/tools/labels/search.tool.js +55 -0
  362. package/dist/mcp/tools/labels/search.tool.js.map +1 -0
  363. package/dist/mcp/tools/labels/unassign.tool.d.ts +9 -0
  364. package/dist/mcp/tools/labels/unassign.tool.d.ts.map +1 -0
  365. package/dist/mcp/tools/labels/unassign.tool.js +49 -0
  366. package/dist/mcp/tools/labels/unassign.tool.js.map +1 -0
  367. package/dist/mcp/tools/search/find-by-name.tool.d.ts +8 -0
  368. package/dist/mcp/tools/search/find-by-name.tool.d.ts.map +1 -0
  369. package/dist/mcp/tools/search/find-by-name.tool.js +57 -0
  370. package/dist/mcp/tools/search/find-by-name.tool.js.map +1 -0
  371. package/dist/mcp/tools/search/find-relevant.tool.d.ts +9 -0
  372. package/dist/mcp/tools/search/find-relevant.tool.d.ts.map +1 -0
  373. package/dist/mcp/tools/search/find-relevant.tool.js +71 -0
  374. package/dist/mcp/tools/search/find-relevant.tool.js.map +1 -0
  375. package/dist/mcp/tools/search/scan.tool.d.ts +8 -0
  376. package/dist/mcp/tools/search/scan.tool.d.ts.map +1 -0
  377. package/dist/mcp/tools/search/scan.tool.js +103 -0
  378. package/dist/mcp/tools/search/scan.tool.js.map +1 -0
  379. package/dist/mcp/tools/search/search-elements.tool.d.ts +11 -0
  380. package/dist/mcp/tools/search/search-elements.tool.d.ts.map +1 -0
  381. package/dist/mcp/tools/search/search-elements.tool.js +71 -0
  382. package/dist/mcp/tools/search/search-elements.tool.js.map +1 -0
  383. package/dist/mcp/tools/search/search-in-files.tool.d.ts +14 -0
  384. package/dist/mcp/tools/search/search-in-files.tool.d.ts.map +1 -0
  385. package/dist/mcp/tools/search/search-in-files.tool.js +204 -0
  386. package/dist/mcp/tools/search/search-in-files.tool.js.map +1 -0
  387. package/dist/mcp/tools/search/search.tool.d.ts +25 -0
  388. package/dist/mcp/tools/search/search.tool.d.ts.map +1 -0
  389. package/dist/mcp/tools/search/search.tool.js +109 -0
  390. package/dist/mcp/tools/search/search.tool.js.map +1 -0
  391. package/dist/mcp/tools/session/audit.tool.d.ts +6 -0
  392. package/dist/mcp/tools/session/audit.tool.d.ts.map +1 -0
  393. package/dist/mcp/tools/session/audit.tool.js +64 -0
  394. package/dist/mcp/tools/session/audit.tool.js.map +1 -0
  395. package/dist/mcp/tools/session/close.tool.d.ts +11 -0
  396. package/dist/mcp/tools/session/close.tool.d.ts.map +1 -0
  397. package/dist/mcp/tools/session/close.tool.js +79 -0
  398. package/dist/mcp/tools/session/close.tool.js.map +1 -0
  399. package/dist/mcp/tools/session/execute-shell.tool.d.ts +11 -0
  400. package/dist/mcp/tools/session/execute-shell.tool.d.ts.map +1 -0
  401. package/dist/mcp/tools/session/execute-shell.tool.js +87 -0
  402. package/dist/mcp/tools/session/execute-shell.tool.js.map +1 -0
  403. package/dist/mcp/tools/session/help.tool.d.ts +8 -0
  404. package/dist/mcp/tools/session/help.tool.d.ts.map +1 -0
  405. package/dist/mcp/tools/session/help.tool.js +84 -0
  406. package/dist/mcp/tools/session/help.tool.js.map +1 -0
  407. package/dist/mcp/tools/session/list.tool.d.ts +9 -0
  408. package/dist/mcp/tools/session/list.tool.d.ts.map +1 -0
  409. package/dist/mcp/tools/session/list.tool.js +49 -0
  410. package/dist/mcp/tools/session/list.tool.js.map +1 -0
  411. package/dist/mcp/tools/session/next-session.tool.d.ts +8 -0
  412. package/dist/mcp/tools/session/next-session.tool.d.ts.map +1 -0
  413. package/dist/mcp/tools/session/next-session.tool.js +87 -0
  414. package/dist/mcp/tools/session/next-session.tool.js.map +1 -0
  415. package/dist/mcp/tools/session/orient.tool.d.ts +11 -0
  416. package/dist/mcp/tools/session/orient.tool.d.ts.map +1 -0
  417. package/dist/mcp/tools/session/orient.tool.js +239 -0
  418. package/dist/mcp/tools/session/orient.tool.js.map +1 -0
  419. package/dist/mcp/tools/session/read.tool.d.ts +8 -0
  420. package/dist/mcp/tools/session/read.tool.d.ts.map +1 -0
  421. package/dist/mcp/tools/session/read.tool.js +63 -0
  422. package/dist/mcp/tools/session/read.tool.js.map +1 -0
  423. package/dist/mcp/tools/session/reindex.tool.d.ts +6 -0
  424. package/dist/mcp/tools/session/reindex.tool.d.ts.map +1 -0
  425. package/dist/mcp/tools/session/reindex.tool.js +59 -0
  426. package/dist/mcp/tools/session/reindex.tool.js.map +1 -0
  427. package/dist/mcp/tools/session/start.tool.d.ts +8 -0
  428. package/dist/mcp/tools/session/start.tool.d.ts.map +1 -0
  429. package/dist/mcp/tools/session/start.tool.js +170 -0
  430. package/dist/mcp/tools/session/start.tool.js.map +1 -0
  431. package/dist/mcp/tools/session/stats.tool.d.ts +6 -0
  432. package/dist/mcp/tools/session/stats.tool.d.ts.map +1 -0
  433. package/dist/mcp/tools/session/stats.tool.js +46 -0
  434. package/dist/mcp/tools/session/stats.tool.js.map +1 -0
  435. package/dist/plugins/parser-typescript/index.d.ts +80 -0
  436. package/dist/plugins/parser-typescript/index.d.ts.map +1 -0
  437. package/dist/plugins/parser-typescript/index.js +467 -0
  438. package/dist/plugins/parser-typescript/index.js.map +1 -0
  439. package/dist/plugins/parser-vue/index.d.ts +20 -0
  440. package/dist/plugins/parser-vue/index.d.ts.map +1 -0
  441. package/dist/plugins/parser-vue/index.js +88 -0
  442. package/dist/plugins/parser-vue/index.js.map +1 -0
  443. package/dist/plugins/parser-vue/script-parser.d.ts +18 -0
  444. package/dist/plugins/parser-vue/script-parser.d.ts.map +1 -0
  445. package/dist/plugins/parser-vue/script-parser.js +100 -0
  446. package/dist/plugins/parser-vue/script-parser.js.map +1 -0
  447. package/dist/plugins/parser-vue/template-parser.d.ts +14 -0
  448. package/dist/plugins/parser-vue/template-parser.d.ts.map +1 -0
  449. package/dist/plugins/parser-vue/template-parser.js +95 -0
  450. package/dist/plugins/parser-vue/template-parser.js.map +1 -0
  451. package/dist/query/SymbolSearch.d.ts +56 -0
  452. package/dist/query/SymbolSearch.d.ts.map +1 -0
  453. package/dist/query/SymbolSearch.js +132 -0
  454. package/dist/query/SymbolSearch.js.map +1 -0
  455. package/dist/query/TextSearch.d.ts +47 -0
  456. package/dist/query/TextSearch.d.ts.map +1 -0
  457. package/dist/query/TextSearch.js +110 -0
  458. package/dist/query/TextSearch.js.map +1 -0
  459. package/dist/storage/NodeFsProvider.d.ts +148 -0
  460. package/dist/storage/NodeFsProvider.d.ts.map +1 -0
  461. package/dist/storage/NodeFsProvider.js +264 -0
  462. package/dist/storage/NodeFsProvider.js.map +1 -0
  463. package/dist/types/annotation.d.ts +79 -0
  464. package/dist/types/annotation.d.ts.map +1 -0
  465. package/dist/types/annotation.js +10 -0
  466. package/dist/types/annotation.js.map +1 -0
  467. package/dist/types/assist.d.ts +147 -0
  468. package/dist/types/assist.d.ts.map +1 -0
  469. package/dist/types/assist.js +12 -0
  470. package/dist/types/assist.js.map +1 -0
  471. package/dist/types/contracts/FileSystemProvider.d.ts +24 -0
  472. package/dist/types/contracts/FileSystemProvider.d.ts.map +1 -0
  473. package/dist/types/contracts/FileSystemProvider.js +9 -0
  474. package/dist/types/contracts/FileSystemProvider.js.map +1 -0
  475. package/dist/types/contracts/LanguageParser.d.ts +146 -0
  476. package/dist/types/contracts/LanguageParser.d.ts.map +1 -0
  477. package/dist/types/contracts/LanguageParser.js +43 -0
  478. package/dist/types/contracts/LanguageParser.js.map +1 -0
  479. package/dist/types/contracts/Plugin.d.ts +226 -0
  480. package/dist/types/contracts/Plugin.d.ts.map +1 -0
  481. package/dist/types/contracts/Plugin.js +21 -0
  482. package/dist/types/contracts/Plugin.js.map +1 -0
  483. package/dist/types/contracts/index.d.ts +10 -0
  484. package/dist/types/contracts/index.d.ts.map +1 -0
  485. package/dist/types/contracts/index.js +26 -0
  486. package/dist/types/contracts/index.js.map +1 -0
  487. package/dist/types/core.d.ts +170 -0
  488. package/dist/types/core.d.ts.map +1 -0
  489. package/dist/types/core.js +10 -0
  490. package/dist/types/core.js.map +1 -0
  491. package/dist/types/events.d.ts +29 -0
  492. package/dist/types/events.d.ts.map +1 -0
  493. package/dist/types/events.js +18 -0
  494. package/dist/types/events.js.map +1 -0
  495. package/dist/types/experience.d.ts +153 -0
  496. package/dist/types/experience.d.ts.map +1 -0
  497. package/dist/types/experience.js +9 -0
  498. package/dist/types/experience.js.map +1 -0
  499. package/dist/types/graph.d.ts +35 -0
  500. package/dist/types/graph.d.ts.map +1 -0
  501. package/dist/types/graph.js +8 -0
  502. package/dist/types/graph.js.map +1 -0
  503. package/dist/types/index.d.ts +17 -0
  504. package/dist/types/index.d.ts.map +1 -0
  505. package/dist/types/index.js +33 -0
  506. package/dist/types/index.js.map +1 -0
  507. package/dist/types/label.d.ts +150 -0
  508. package/dist/types/label.d.ts.map +1 -0
  509. package/dist/types/label.js +9 -0
  510. package/dist/types/label.js.map +1 -0
  511. package/dist/types/query.d.ts +104 -0
  512. package/dist/types/query.d.ts.map +1 -0
  513. package/dist/types/query.js +11 -0
  514. package/dist/types/query.js.map +1 -0
  515. package/dist/types/response.d.ts +133 -0
  516. package/dist/types/response.d.ts.map +1 -0
  517. package/dist/types/response.js +60 -0
  518. package/dist/types/response.js.map +1 -0
  519. package/dist/types/target.d.ts +68 -0
  520. package/dist/types/target.d.ts.map +1 -0
  521. package/dist/types/target.js +11 -0
  522. package/dist/types/target.js.map +1 -0
  523. package/dist/utils/version.d.ts +9 -0
  524. package/dist/utils/version.d.ts.map +1 -0
  525. package/dist/utils/version.js +30 -0
  526. package/dist/utils/version.js.map +1 -0
  527. package/package.json +53 -0
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.handler = exports.metadata = exports.inputSchema = void 0;
4
+ // tools/session/stats.tool.ts
5
+ const zod_1 = require("zod");
6
+ // ── Input Schema ─────────────────────────────────────────────────────────────
7
+ exports.inputSchema = zod_1.z.object({});
8
+ // ── Metadata ─────────────────────────────────────────────────────────────────
9
+ exports.metadata = {
10
+ name: 'codemap_stats',
11
+ description: 'Get code graph statistics (file count, symbol count, dependency count).',
12
+ category: 'session',
13
+ tags: ['session', 'stats', 'info']
14
+ };
15
+ // ── Handler ──────────────────────────────────────────────────────────────────
16
+ const handler = async (_args, ctx) => {
17
+ try {
18
+ const stats = ctx.codemap.getStats();
19
+ return {
20
+ content: [{
21
+ type: 'text',
22
+ text: JSON.stringify({
23
+ success: true,
24
+ ...stats
25
+ }, null, 2)
26
+ }]
27
+ };
28
+ }
29
+ catch (err) {
30
+ return {
31
+ content: [{
32
+ type: 'text',
33
+ text: JSON.stringify({
34
+ success: false,
35
+ error: {
36
+ code: 'STATS_ERROR',
37
+ message: err instanceof Error ? err.message : String(err)
38
+ }
39
+ }, null, 2)
40
+ }],
41
+ isError: true
42
+ };
43
+ }
44
+ };
45
+ exports.handler = handler;
46
+ //# sourceMappingURL=stats.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stats.tool.js","sourceRoot":"","sources":["../../../../src/mcp/tools/session/stats.tool.ts"],"names":[],"mappings":";;;AAAA,8BAA8B;AAC9B,6BAAwB;AAGxB,gFAAgF;AACnE,QAAA,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAExC,gFAAgF;AACnE,QAAA,QAAQ,GAAmB;IACtC,IAAI,EAAE,eAAe;IACrB,WAAW,EAAE,yEAAyE;IACtF,QAAQ,EAAE,SAAS;IACnB,IAAI,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC;CACnC,CAAC;AAEF,gFAAgF;AACzE,MAAM,OAAO,GAAoC,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;IAC3E,IAAI,CAAC;QACH,MAAM,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QAErC,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,OAAO,EAAE,IAAI;wBACb,GAAG,KAAK;qBACT,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;SACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO;YACL,OAAO,EAAE,CAAC;oBACR,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;wBACnB,OAAO,EAAE,KAAK;wBACd,KAAK,EAAE;4BACL,IAAI,EAAE,aAAa;4BACnB,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;yBAC1D;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC;iBACZ,CAAC;YACF,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;AACH,CAAC,CAAC;AA5BW,QAAA,OAAO,WA4BlB"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * TypeScript/JavaScript parser (bundled).
3
+ *
4
+ * Extracts symbols and imports from .ts, .tsx, .js, .jsx files.
5
+ * Uses TypeScript's compiler API for accurate AST parsing.
6
+ */
7
+ import type { LanguageParser, CodeMapHost, ParseResult } from '../../types/index.js';
8
+ /**
9
+ * TypeScript/JavaScript parser.
10
+ *
11
+ * Extracts:
12
+ * - Functions (function declarations, arrow functions, methods)
13
+ * - Classes
14
+ * - Interfaces
15
+ * - Types
16
+ * - Enums
17
+ * - Constants
18
+ * - Imports
19
+ */
20
+ export declare class TypeScriptParser implements LanguageParser {
21
+ readonly name = "@egentica/codemap-parser-typescript";
22
+ readonly version = "0.1.0";
23
+ readonly fileExtensions: string[];
24
+ /**
25
+ * Check if this parser can handle a file.
26
+ */
27
+ canParse(filePath: string): boolean;
28
+ /**
29
+ * Parse a TypeScript/JavaScript file using AST.
30
+ */
31
+ parse(filePath: string, content: string): Promise<ParseResult>;
32
+ /**
33
+ * Validate TypeScript/JavaScript syntax before write.
34
+ *
35
+ * Prevents corrupted files by checking syntax in memory.
36
+ * Uses TypeScript's parser to detect errors with line/column precision.
37
+ *
38
+ * @param content - File content to validate
39
+ * @param filePath - File path (for context in error messages)
40
+ * @returns Validation result with specific errors if invalid
41
+ */
42
+ validateSyntax(content: string, filePath: string): Promise<{
43
+ valid: boolean;
44
+ errors?: Array<{
45
+ line: number;
46
+ column: number;
47
+ message: string;
48
+ suggestion?: string;
49
+ }>;
50
+ }>;
51
+ /**
52
+ * Extract symbols from TypeScript AST.
53
+ */
54
+ private extractSymbolsFromAST;
55
+ /**
56
+ * Extract imports from TypeScript AST.
57
+ */
58
+ private extractImportsFromAST;
59
+ /**
60
+ * Register with CodeMap.
61
+ * Hooks into scan:file event to parse TypeScript/JavaScript files.
62
+ */
63
+ register(codemap: CodeMapHost): void;
64
+ /**
65
+ * Extract export names.
66
+ */
67
+ private extractExports;
68
+ /**
69
+ * Extract @codemap.* annotations from JSDoc comments.
70
+ * Returns both simple annotations and categorized annotations.
71
+ */
72
+ private extractAnnotations;
73
+ /**
74
+ * Build domain metadata object from categorized annotations.
75
+ * Populates file.domain if domain annotations are present.
76
+ */
77
+ private buildDomainMetadata;
78
+ }
79
+ export default TypeScriptParser;
80
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/parser-typescript/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,WAAW,EAEZ,MAAM,sBAAsB,CAAC;AAE9B;;;;;;;;;;;GAWG;AACH,qBAAa,gBAAiB,YAAW,cAAc;IACrD,QAAQ,CAAC,IAAI,yCAAyC;IACtD,QAAQ,CAAC,OAAO,WAAW;IAC3B,QAAQ,CAAC,cAAc,WAAkC;IAEzD;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAInC;;OAEG;IACG,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAsCpE;;;;;;;;;OASG;IACG,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAC/D,KAAK,EAAE,OAAO,CAAC;QACf,MAAM,CAAC,EAAE,KAAK,CAAC;YACb,IAAI,EAAE,MAAM,CAAC;YACb,MAAM,EAAE,MAAM,CAAC;YACf,OAAO,EAAE,MAAM,CAAC;YAChB,UAAU,CAAC,EAAE,MAAM,CAAC;SACrB,CAAC,CAAC;KACJ,CAAC;IA4EF;;OAEG;IACH,OAAO,CAAC,qBAAqB;IA6J7B;;OAEG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;;OAGG;IACH,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAiCpC;;OAEG;IACH,OAAO,CAAC,cAAc;IAqBtB;;;OAGG;IACH,OAAO,CAAC,kBAAkB;IAiE1B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;CA6B5B;AAGD,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,467 @@
1
+ "use strict";
2
+ /**
3
+ * TypeScript/JavaScript parser (bundled).
4
+ *
5
+ * Extracts symbols and imports from .ts, .tsx, .js, .jsx files.
6
+ * Uses TypeScript's compiler API for accurate AST parsing.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.TypeScriptParser = void 0;
43
+ const ts = __importStar(require("typescript"));
44
+ /**
45
+ * TypeScript/JavaScript parser.
46
+ *
47
+ * Extracts:
48
+ * - Functions (function declarations, arrow functions, methods)
49
+ * - Classes
50
+ * - Interfaces
51
+ * - Types
52
+ * - Enums
53
+ * - Constants
54
+ * - Imports
55
+ */
56
+ class TypeScriptParser {
57
+ name = '@egentica/codemap-parser-typescript';
58
+ version = '0.1.0';
59
+ fileExtensions = ['.ts', '.tsx', '.js', '.jsx'];
60
+ /**
61
+ * Check if this parser can handle a file.
62
+ */
63
+ canParse(filePath) {
64
+ return this.fileExtensions.some(ext => filePath.endsWith(ext));
65
+ }
66
+ /**
67
+ * Parse a TypeScript/JavaScript file using AST.
68
+ */
69
+ async parse(filePath, content) {
70
+ const symbols = [];
71
+ const dependencies = [];
72
+ const exports = [];
73
+ const annotations = [];
74
+ const categorizedAnnotations = [];
75
+ // Parse into AST
76
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true // setParentNodes
77
+ );
78
+ // Extract symbols using AST
79
+ symbols.push(...this.extractSymbolsFromAST(sourceFile));
80
+ // Extract imports using AST
81
+ dependencies.push(...this.extractImportsFromAST(sourceFile));
82
+ // Extract exports (keep regex-based for now)
83
+ exports.push(...this.extractExports(content));
84
+ // Extract annotations (keep regex-based)
85
+ const annotationResults = this.extractAnnotations(content);
86
+ annotations.push(...annotationResults.simple);
87
+ categorizedAnnotations.push(...annotationResults.categorized);
88
+ return {
89
+ symbols,
90
+ dependencies,
91
+ exports,
92
+ annotations,
93
+ categorizedAnnotations
94
+ };
95
+ }
96
+ /**
97
+ * Validate TypeScript/JavaScript syntax before write.
98
+ *
99
+ * Prevents corrupted files by checking syntax in memory.
100
+ * Uses TypeScript's parser to detect errors with line/column precision.
101
+ *
102
+ * @param content - File content to validate
103
+ * @param filePath - File path (for context in error messages)
104
+ * @returns Validation result with specific errors if invalid
105
+ */
106
+ async validateSyntax(content, filePath) {
107
+ try {
108
+ // Parse into AST with error checking enabled
109
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true // setParentNodes
110
+ );
111
+ // Get parse diagnostics (syntax errors)
112
+ const diagnostics = sourceFile.parseDiagnostics || [];
113
+ if (diagnostics.length === 0) {
114
+ return { valid: true };
115
+ }
116
+ // Convert TypeScript diagnostics to our error format
117
+ const errors = diagnostics.map((diag) => {
118
+ const { line, character } = sourceFile.getLineAndCharacterOfPosition(diag.start || 0);
119
+ const message = ts.flattenDiagnosticMessageText(diag.messageText, '\n');
120
+ // Generate helpful suggestions based on common error codes
121
+ let suggestion;
122
+ switch (diag.code) {
123
+ case 1005: // ';' expected
124
+ suggestion = 'Add a semicolon at the end of the statement';
125
+ break;
126
+ case 1002: // Unterminated string literal
127
+ suggestion = 'Close the string with a matching quote';
128
+ break;
129
+ case 1003: // Identifier expected
130
+ suggestion = 'Provide a valid identifier (variable/function/class name)';
131
+ break;
132
+ case 1109: // Expression expected
133
+ suggestion = 'Complete the expression with a valid value';
134
+ break;
135
+ case 1128: // Declaration or statement expected
136
+ suggestion = 'Check for missing braces or incomplete statements';
137
+ break;
138
+ case 1161: // Unterminated template literal
139
+ suggestion = 'Close the template literal with a backtick (`)';
140
+ break;
141
+ case 2304: // Cannot find name
142
+ suggestion = 'Check if the identifier is declared or imported';
143
+ break;
144
+ }
145
+ return {
146
+ line: line + 1, // Convert to 1-based
147
+ column: character,
148
+ message,
149
+ suggestion
150
+ };
151
+ });
152
+ return {
153
+ valid: false,
154
+ errors
155
+ };
156
+ }
157
+ catch (error) {
158
+ // If parsing throws (extremely malformed), treat as validation failure
159
+ return {
160
+ valid: false,
161
+ errors: [{
162
+ line: 1,
163
+ column: 0,
164
+ message: `Critical syntax error: ${error.message}`,
165
+ suggestion: 'Review file structure and syntax'
166
+ }]
167
+ };
168
+ }
169
+ }
170
+ /**
171
+ * Extract symbols from TypeScript AST.
172
+ */
173
+ extractSymbolsFromAST(sourceFile) {
174
+ const symbols = [];
175
+ const visit = (node) => {
176
+ // Function declarations
177
+ if (ts.isFunctionDeclaration(node) && node.name) {
178
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
179
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
180
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
181
+ symbols.push({
182
+ kind: 'function',
183
+ name: node.name.text,
184
+ startLine: start.line + 1,
185
+ startCol: start.character,
186
+ endLine: end.line + 1,
187
+ endCol: end.character,
188
+ exported: !!hasExport,
189
+ line: start.line + 1,
190
+ bodyEnd: end.line + 1
191
+ });
192
+ }
193
+ // Arrow functions and const declarations
194
+ else if (ts.isVariableStatement(node)) {
195
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
196
+ for (const decl of node.declarationList.declarations) {
197
+ if (ts.isIdentifier(decl.name)) {
198
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
199
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
200
+ // Check if it's a function (arrow function or function expression)
201
+ const isFunction = decl.initializer && (ts.isArrowFunction(decl.initializer) ||
202
+ ts.isFunctionExpression(decl.initializer));
203
+ symbols.push({
204
+ kind: isFunction ? 'function' : 'constant',
205
+ name: decl.name.text,
206
+ startLine: start.line + 1,
207
+ startCol: start.character,
208
+ endLine: end.line + 1,
209
+ endCol: end.character,
210
+ exported: !!hasExport,
211
+ line: start.line + 1,
212
+ bodyEnd: end.line + 1
213
+ });
214
+ }
215
+ }
216
+ }
217
+ // Class declarations
218
+ else if (ts.isClassDeclaration(node) && node.name) {
219
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
220
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
221
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
222
+ symbols.push({
223
+ kind: 'class',
224
+ name: node.name.text,
225
+ startLine: start.line + 1,
226
+ startCol: start.character,
227
+ endLine: end.line + 1,
228
+ endCol: end.character,
229
+ exported: !!hasExport,
230
+ line: start.line + 1,
231
+ bodyEnd: end.line + 1
232
+ });
233
+ // Extract methods from class
234
+ for (const member of node.members) {
235
+ if (ts.isMethodDeclaration(member) && ts.isIdentifier(member.name)) {
236
+ const methodStart = sourceFile.getLineAndCharacterOfPosition(member.getStart(sourceFile));
237
+ const methodEnd = sourceFile.getLineAndCharacterOfPosition(member.getEnd());
238
+ symbols.push({
239
+ kind: 'method',
240
+ name: member.name.text,
241
+ startLine: methodStart.line + 1,
242
+ startCol: methodStart.character,
243
+ endLine: methodEnd.line + 1,
244
+ endCol: methodEnd.character,
245
+ exported: false,
246
+ line: methodStart.line + 1,
247
+ bodyEnd: methodEnd.line + 1
248
+ });
249
+ }
250
+ }
251
+ }
252
+ // Interface declarations
253
+ else if (ts.isInterfaceDeclaration(node)) {
254
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
255
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
256
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
257
+ symbols.push({
258
+ kind: 'interface',
259
+ name: node.name.text,
260
+ startLine: start.line + 1,
261
+ startCol: start.character,
262
+ endLine: end.line + 1,
263
+ endCol: end.character,
264
+ exported: !!hasExport,
265
+ line: start.line + 1,
266
+ bodyEnd: end.line + 1
267
+ });
268
+ }
269
+ // Type alias declarations
270
+ else if (ts.isTypeAliasDeclaration(node)) {
271
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
272
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
273
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
274
+ symbols.push({
275
+ kind: 'type',
276
+ name: node.name.text,
277
+ startLine: start.line + 1,
278
+ startCol: start.character,
279
+ endLine: end.line + 1,
280
+ endCol: end.character,
281
+ exported: !!hasExport,
282
+ line: start.line + 1,
283
+ bodyEnd: end.line + 1
284
+ });
285
+ }
286
+ // Enum declarations
287
+ else if (ts.isEnumDeclaration(node)) {
288
+ const start = sourceFile.getLineAndCharacterOfPosition(node.getStart(sourceFile));
289
+ const end = sourceFile.getLineAndCharacterOfPosition(node.getEnd());
290
+ const hasExport = node.modifiers?.some(m => m.kind === ts.SyntaxKind.ExportKeyword);
291
+ symbols.push({
292
+ kind: 'enum',
293
+ name: node.name.text,
294
+ startLine: start.line + 1,
295
+ startCol: start.character,
296
+ endLine: end.line + 1,
297
+ endCol: end.character,
298
+ exported: !!hasExport,
299
+ line: start.line + 1,
300
+ bodyEnd: end.line + 1
301
+ });
302
+ }
303
+ // Recursively visit children
304
+ ts.forEachChild(node, visit);
305
+ };
306
+ visit(sourceFile);
307
+ return symbols;
308
+ }
309
+ /**
310
+ * Extract imports from TypeScript AST.
311
+ */
312
+ extractImportsFromAST(sourceFile) {
313
+ const imports = [];
314
+ const visit = (node) => {
315
+ if (ts.isImportDeclaration(node) && ts.isStringLiteral(node.moduleSpecifier)) {
316
+ imports.push(node.moduleSpecifier.text);
317
+ }
318
+ ts.forEachChild(node, visit);
319
+ };
320
+ visit(sourceFile);
321
+ return imports;
322
+ }
323
+ /**
324
+ * Register with CodeMap.
325
+ * Hooks into scan:file event to parse TypeScript/JavaScript files.
326
+ */
327
+ register(codemap) {
328
+ codemap.on('scan:file', async (payload) => {
329
+ const { file, content } = payload;
330
+ // Only parse files this parser handles
331
+ if (!this.canParse(file.relativePath))
332
+ return;
333
+ // Parse file
334
+ const result = await this.parse(file.relativePath, content);
335
+ // Store symbols in file entry
336
+ file.symbols = result.symbols;
337
+ // Store dependencies (imports) in file entry
338
+ if (result.dependencies && result.dependencies.length > 0) {
339
+ file.references = result.dependencies;
340
+ }
341
+ // Store annotations
342
+ if (result.annotations && result.annotations.length > 0) {
343
+ file.annotations = result.annotations;
344
+ }
345
+ // Store categorized annotations
346
+ if (result.categorizedAnnotations && result.categorizedAnnotations.length > 0) {
347
+ file.categorizedAnnotations = result.categorizedAnnotations;
348
+ }
349
+ // Build domain object from categorized annotations
350
+ this.buildDomainMetadata(file);
351
+ });
352
+ }
353
+ /**
354
+ * Extract export names.
355
+ */
356
+ extractExports(content) {
357
+ const exports = [];
358
+ // Export declarations: export function name, export class name, etc.
359
+ const exportDeclPattern = /export\s+(?:async\s+)?(?:function|class|interface|type|enum|const|let|var)\s+(\w+)/g;
360
+ let match;
361
+ while ((match = exportDeclPattern.exec(content)) !== null) {
362
+ exports.push(match[1]);
363
+ }
364
+ // Named exports: export { name1, name2 }
365
+ const namedExportPattern = /export\s*{\s*([^}]+)\s*}/g;
366
+ while ((match = namedExportPattern.exec(content)) !== null) {
367
+ const names = match[1].split(',').map(n => n.trim().split(/\s+as\s+/)[0]);
368
+ exports.push(...names);
369
+ }
370
+ return exports;
371
+ }
372
+ /**
373
+ * Extract @codemap.* annotations from JSDoc comments.
374
+ * Returns both simple annotations and categorized annotations.
375
+ */
376
+ extractAnnotations(content) {
377
+ const simple = [];
378
+ const categorized = [];
379
+ const lines = content.split('\n');
380
+ // Simple annotation pattern: @codemap.type message
381
+ const simplePattern = /^\s*\*\s*@codemap\.(systempolicy|policy|warning|note|gate|contract|usage|tags)\s+(.+)$/;
382
+ // Categorized annotation pattern: @codemap.category.path value
383
+ const categorizedPattern = /^\s*\*\s*@codemap\.(\w+)\.([^\s]+)\s+(.+)$/;
384
+ for (let i = 0; i < lines.length; i++) {
385
+ const line = lines[i];
386
+ const lineNum = i + 1;
387
+ // Try simple annotation
388
+ const simpleMatch = line.match(simplePattern);
389
+ if (simpleMatch) {
390
+ const type = simpleMatch[1];
391
+ const message = simpleMatch[2].trim();
392
+ // Special handling for tags - parse comma-separated values
393
+ if (type === 'tags') {
394
+ const tags = message.split(',').map(t => t.trim());
395
+ simple.push({
396
+ line: lineNum,
397
+ type,
398
+ severity: 'info',
399
+ message,
400
+ tags
401
+ });
402
+ }
403
+ else {
404
+ simple.push({
405
+ line: lineNum,
406
+ type,
407
+ severity: type === 'warning' ? 'warning' : type === 'policy' ? 'error' : 'info',
408
+ message
409
+ });
410
+ }
411
+ continue;
412
+ }
413
+ // Try categorized annotation
414
+ const catMatch = line.match(categorizedPattern);
415
+ if (catMatch) {
416
+ const category = catMatch[1];
417
+ const path = catMatch[2];
418
+ const value = catMatch[3].trim();
419
+ categorized.push({
420
+ line: lineNum,
421
+ category,
422
+ path,
423
+ value,
424
+ raw: `@codemap.${category}.${path} ${value}`
425
+ });
426
+ }
427
+ }
428
+ return { simple, categorized };
429
+ }
430
+ /**
431
+ * Build domain metadata object from categorized annotations.
432
+ * Populates file.domain if domain annotations are present.
433
+ */
434
+ buildDomainMetadata(file) {
435
+ if (!file.categorizedAnnotations || file.categorizedAnnotations.length === 0) {
436
+ return;
437
+ }
438
+ const domainAnnotations = file.categorizedAnnotations.filter((a) => a.category === 'domain');
439
+ if (domainAnnotations.length === 0)
440
+ return;
441
+ const domain = {
442
+ searchable: true // Default
443
+ };
444
+ for (const ann of domainAnnotations) {
445
+ if (ann.path === 'name') {
446
+ domain.name = ann.value;
447
+ }
448
+ else if (ann.path === 'relevance') {
449
+ domain.relevance = parseFloat(ann.value);
450
+ }
451
+ else if (ann.path === 'message') {
452
+ domain.message = ann.value;
453
+ }
454
+ else if (ann.path === 'assist.searchable') {
455
+ domain.searchable = ann.value === 'true';
456
+ }
457
+ }
458
+ // Only set domain if we have at least a name
459
+ if (domain.name) {
460
+ file.domain = domain;
461
+ }
462
+ }
463
+ }
464
+ exports.TypeScriptParser = TypeScriptParser;
465
+ // Default export
466
+ exports.default = TypeScriptParser;
467
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/plugins/parser-typescript/index.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,+CAAiC;AAQjC;;;;;;;;;;;GAWG;AACH,MAAa,gBAAgB;IAClB,IAAI,GAAG,qCAAqC,CAAC;IAC7C,OAAO,GAAG,OAAO,CAAC;IAClB,cAAc,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAEzD;;OAEG;IACH,QAAQ,CAAC,QAAgB;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,QAAgB,EAAE,OAAe;QAC3C,MAAM,OAAO,GAAkB,EAAE,CAAC;QAClC,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,OAAO,GAAa,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAU,EAAE,CAAC;QAC9B,MAAM,sBAAsB,GAAU,EAAE,CAAC;QAEzC,iBAAiB;QACjB,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,OAAO,EACP,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CAAC,iBAAiB;SACvB,CAAC;QAEF,4BAA4B;QAC5B,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;QAExD,4BAA4B;QAC5B,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,qBAAqB,CAAC,UAAU,CAAC,CAAC,CAAC;QAE7D,6CAA6C;QAC7C,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC;QAE9C,yCAAyC;QACzC,MAAM,iBAAiB,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QAC3D,WAAW,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAC9C,sBAAsB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAE9D,OAAO;YACL,OAAO;YACP,YAAY;YACZ,OAAO;YACP,WAAW;YACX,sBAAsB;SACvB,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,cAAc,CAAC,OAAe,EAAE,QAAgB;QASpD,IAAI,CAAC;YACH,6CAA6C;YAC7C,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,QAAQ,EACR,OAAO,EACP,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CAAC,iBAAiB;aACvB,CAAC;YAEF,wCAAwC;YACxC,MAAM,WAAW,GAAI,UAAkB,CAAC,gBAAgB,IAAI,EAAE,CAAC;YAE/D,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;YACzB,CAAC;YAED,qDAAqD;YACrD,MAAM,MAAM,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAmB,EAAE,EAAE;gBACrD,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;gBACtF,MAAM,OAAO,GAAG,EAAE,CAAC,4BAA4B,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;gBAExE,2DAA2D;gBAC3D,IAAI,UAA8B,CAAC;gBAEnC,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClB,KAAK,IAAI,EAAE,eAAe;wBACxB,UAAU,GAAG,6CAA6C,CAAC;wBAC3D,MAAM;oBACR,KAAK,IAAI,EAAE,8BAA8B;wBACvC,UAAU,GAAG,wCAAwC,CAAC;wBACtD,MAAM;oBACR,KAAK,IAAI,EAAE,sBAAsB;wBAC/B,UAAU,GAAG,2DAA2D,CAAC;wBACzE,MAAM;oBACR,KAAK,IAAI,EAAE,sBAAsB;wBAC/B,UAAU,GAAG,4CAA4C,CAAC;wBAC1D,MAAM;oBACR,KAAK,IAAI,EAAE,oCAAoC;wBAC7C,UAAU,GAAG,mDAAmD,CAAC;wBACjE,MAAM;oBACR,KAAK,IAAI,EAAE,gCAAgC;wBACzC,UAAU,GAAG,gDAAgD,CAAC;wBAC9D,MAAM;oBACR,KAAK,IAAI,EAAE,mBAAmB;wBAC5B,UAAU,GAAG,iDAAiD,CAAC;wBAC/D,MAAM;gBACV,CAAC;gBAED,OAAO;oBACL,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,qBAAqB;oBACrC,MAAM,EAAE,SAAS;oBACjB,OAAO;oBACP,UAAU;iBACX,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM;aACP,CAAC;QAEJ,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,uEAAuE;YACvE,OAAO;gBACL,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,CAAC;wBACP,IAAI,EAAE,CAAC;wBACP,MAAM,EAAE,CAAC;wBACT,OAAO,EAAE,0BAA0B,KAAK,CAAC,OAAO,EAAE;wBAClD,UAAU,EAAE,kCAAkC;qBAC/C,CAAC;aACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,UAAyB;QACrD,MAAM,OAAO,GAAkB,EAAE,CAAC;QAElC,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,EAAE;YAC9B,wBAAwB;YACxB,IAAI,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAChD,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,UAAU;oBAChB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;oBACrB,MAAM,EAAE,GAAG,CAAC,SAAS;oBACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,yCAAyC;iBACpC,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;oBACrD,IAAI,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;wBAC/B,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;wBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;wBAEpE,mEAAmE;wBACnE,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,IAAI,CACrC,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC;4BACpC,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAC1C,CAAC;wBAEF,OAAO,CAAC,IAAI,CAAC;4BACX,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;4BAC1C,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;4BACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;4BACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;4BACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;4BACrB,MAAM,EAAE,GAAG,CAAC,SAAS;4BACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;4BACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;4BACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;yBACtB,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qBAAqB;iBAChB,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAClD,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;oBACrB,MAAM,EAAE,GAAG,CAAC,SAAS;oBACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;iBACtB,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClC,IAAI,EAAE,CAAC,mBAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC;wBACnE,MAAM,WAAW,GAAG,UAAU,CAAC,6BAA6B,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;wBAC1F,MAAM,SAAS,GAAG,UAAU,CAAC,6BAA6B,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;wBAE5E,OAAO,CAAC,IAAI,CAAC;4BACX,IAAI,EAAE,QAAQ;4BACd,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;4BACtB,SAAS,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC;4BAC/B,QAAQ,EAAE,WAAW,CAAC,SAAS;4BAC/B,OAAO,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC;4BAC3B,MAAM,EAAE,SAAS,CAAC,SAAS;4BAC3B,QAAQ,EAAE,KAAK;4BACf,IAAI,EAAE,WAAW,CAAC,IAAI,GAAG,CAAC;4BAC1B,OAAO,EAAE,SAAS,CAAC,IAAI,GAAG,CAAC;yBAC5B,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;YAED,yBAAyB;iBACpB,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;oBACrB,MAAM,EAAE,GAAG,CAAC,SAAS;oBACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,0BAA0B;iBACrB,IAAI,EAAE,CAAC,sBAAsB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzC,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;oBACrB,MAAM,EAAE,GAAG,CAAC,SAAS;oBACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,oBAAoB;iBACf,IAAI,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACpC,MAAM,KAAK,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;gBAClF,MAAM,GAAG,GAAG,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACpE,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;gBAEpF,OAAO,CAAC,IAAI,CAAC;oBACX,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBACpB,SAAS,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACzB,QAAQ,EAAE,KAAK,CAAC,SAAS;oBACzB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;oBACrB,MAAM,EAAE,GAAG,CAAC,SAAS;oBACrB,QAAQ,EAAE,CAAC,CAAC,SAAS;oBACrB,IAAI,EAAE,KAAK,CAAC,IAAI,GAAG,CAAC;oBACpB,OAAO,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;iBACtB,CAAC,CAAC;YACL,CAAC;YAED,6BAA6B;YAC7B,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,qBAAqB,CAAC,UAAyB;QACrD,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,MAAM,KAAK,GAAG,CAAC,IAAa,EAAE,EAAE;YAC9B,IAAI,EAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;gBAC7E,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;YAC1C,CAAC;YAED,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF,KAAK,CAAC,UAAU,CAAC,CAAC;QAClB,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ,CAAC,OAAoB;QAC3B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,OAAY,EAAE,EAAE;YAC7C,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;YAElC,uCAAuC;YACvC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC;gBAAE,OAAO;YAE9C,aAAa;YACb,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAE5D,8BAA8B;YAC9B,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAE9B,6CAA6C;YAC7C,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1D,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,YAAY,CAAC;YACxC,CAAC;YAED,oBAAoB;YACpB,IAAI,MAAM,CAAC,WAAW,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACxC,CAAC;YAED,gCAAgC;YAChC,IAAI,MAAM,CAAC,sBAAsB,IAAI,MAAM,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9E,IAAI,CAAC,sBAAsB,GAAG,MAAM,CAAC,sBAAsB,CAAC;YAC9D,CAAC;YAED,mDAAmD;YACnD,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,cAAc,CAAC,OAAe;QACpC,MAAM,OAAO,GAAa,EAAE,CAAC;QAE7B,qEAAqE;QACrE,MAAM,iBAAiB,GAAG,qFAAqF,CAAC;QAEhH,IAAI,KAAK,CAAC;QACV,OAAO,CAAC,KAAK,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1D,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QACzB,CAAC;QAED,yCAAyC;QACzC,MAAM,kBAAkB,GAAG,2BAA2B,CAAC;QACvD,OAAO,CAAC,KAAK,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1E,OAAO,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC;QACzB,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;;OAGG;IACK,kBAAkB,CAAC,OAAe;QAIxC,MAAM,MAAM,GAAU,EAAE,CAAC;QACzB,MAAM,WAAW,GAAU,EAAE,CAAC;QAC9B,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAElC,mDAAmD;QACnD,MAAM,aAAa,GAAG,wFAAwF,CAAC;QAE/G,+DAA+D;QAC/D,MAAM,kBAAkB,GAAG,4CAA4C,CAAC;QAExE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;YAEtB,wBAAwB;YACxB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YAC9C,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;gBAC5B,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAEtC,2DAA2D;gBAC3D,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;oBACnD,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,OAAO;wBACb,IAAI;wBACJ,QAAQ,EAAE,MAAM;wBAChB,OAAO;wBACP,IAAI;qBACL,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,IAAI,CAAC;wBACV,IAAI,EAAE,OAAO;wBACb,IAAI;wBACJ,QAAQ,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM;wBAC/E,OAAO;qBACR,CAAC,CAAC;gBACL,CAAC;gBACD,SAAS;YACX,CAAC;YAED,6BAA6B;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAChD,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC7B,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBACzB,MAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBAEjC,WAAW,CAAC,IAAI,CAAC;oBACf,IAAI,EAAE,OAAO;oBACb,QAAQ;oBACR,IAAI;oBACJ,KAAK;oBACL,GAAG,EAAE,YAAY,QAAQ,IAAI,IAAI,IAAI,KAAK,EAAE;iBAC7C,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC;IACjC,CAAC;IAED;;;OAGG;IACK,mBAAmB,CAAC,IAAS;QACnC,IAAI,CAAC,IAAI,CAAC,sBAAsB,IAAI,IAAI,CAAC,sBAAsB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7E,OAAO;QACT,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAClG,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO;QAE3C,MAAM,MAAM,GAAQ;YAClB,UAAU,EAAE,IAAI,CAAE,UAAU;SAC7B,CAAC;QAEF,KAAK,MAAM,GAAG,IAAI,iBAAiB,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC;YAC1B,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;gBACpC,MAAM,CAAC,SAAS,GAAG,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAC3C,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;gBAClC,MAAM,CAAC,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC;YAC7B,CAAC;iBAAM,IAAI,GAAG,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBAC5C,MAAM,CAAC,UAAU,GAAG,GAAG,CAAC,KAAK,KAAK,MAAM,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,CAAC;IACH,CAAC;CACF;AAxeD,4CAweC;AAED,iBAAiB;AACjB,kBAAe,gBAAgB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Vue SFC parser with DOM element extraction (bundled).
3
+ */
4
+ import type { LanguageParser, CodeMapHost, ParseResult } from '../../types/index.js';
5
+ /**
6
+ * Vue SFC parser with DOM element extraction.
7
+ */
8
+ export declare class VueParser implements LanguageParser {
9
+ readonly name = "@egentica/codemap-parser-vue";
10
+ readonly version = "0.1.0";
11
+ readonly fileExtensions: string[];
12
+ canParse(filePath: string): boolean;
13
+ parse(filePath: string, content: string): Promise<ParseResult>;
14
+ register(codemap: CodeMapHost): void;
15
+ private extractTemplateSection;
16
+ private extractScriptSection;
17
+ private getComponentName;
18
+ }
19
+ export default VueParser;
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/plugins/parser-vue/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EACV,cAAc,EACd,WAAW,EACX,WAAW,EAGZ,MAAM,sBAAsB,CAAC;AAI9B;;GAEG;AACH,qBAAa,SAAU,YAAW,cAAc;IAC9C,QAAQ,CAAC,IAAI,kCAAkC;IAC/C,QAAQ,CAAC,OAAO,WAAW;IAC3B,QAAQ,CAAC,cAAc,WAAY;IAEnC,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAI7B,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAwCpE,QAAQ,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAoBpC,OAAO,CAAC,sBAAsB;IAU9B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,gBAAgB;CAKzB;AAED,eAAe,SAAS,CAAC"}