agent-ide 0.13.6 → 0.13.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 (450) hide show
  1. package/README.md +14 -7
  2. package/dist/core/call-hierarchy/call-hierarchy-analyzer.d.ts +11 -2
  3. package/dist/core/call-hierarchy/call-hierarchy-analyzer.d.ts.map +1 -1
  4. package/dist/core/call-hierarchy/call-hierarchy-analyzer.js +233 -25
  5. package/dist/core/call-hierarchy/call-hierarchy-analyzer.js.map +1 -1
  6. package/dist/core/change-signature/call-site-updater.d.ts +0 -1
  7. package/dist/core/change-signature/call-site-updater.d.ts.map +1 -1
  8. package/dist/core/change-signature/call-site-updater.js +0 -2
  9. package/dist/core/change-signature/call-site-updater.js.map +1 -1
  10. package/dist/core/change-signature/change-signature-engine.d.ts +9 -1
  11. package/dist/core/change-signature/change-signature-engine.d.ts.map +1 -1
  12. package/dist/core/change-signature/change-signature-engine.js +190 -5
  13. package/dist/core/change-signature/change-signature-engine.js.map +1 -1
  14. package/dist/core/change-signature/signature-parser.d.ts +0 -5
  15. package/dist/core/change-signature/signature-parser.d.ts.map +1 -1
  16. package/dist/core/change-signature/signature-parser.js +6 -34
  17. package/dist/core/change-signature/signature-parser.js.map +1 -1
  18. package/dist/core/deadcode/file-operations.d.ts.map +1 -1
  19. package/dist/core/deadcode/file-operations.js +3 -1
  20. package/dist/core/deadcode/file-operations.js.map +1 -1
  21. package/dist/core/deadcode/import-cleaner.d.ts.map +1 -1
  22. package/dist/core/deadcode/import-cleaner.js +3 -1
  23. package/dist/core/deadcode/import-cleaner.js.map +1 -1
  24. package/dist/core/deadcode/range-expander.d.ts +9 -1
  25. package/dist/core/deadcode/range-expander.d.ts.map +1 -1
  26. package/dist/core/deadcode/range-expander.js +115 -41
  27. package/dist/core/deadcode/range-expander.js.map +1 -1
  28. package/dist/core/foundations/file-utils.d.ts.map +1 -1
  29. package/dist/core/foundations/file-utils.js +6 -3
  30. package/dist/core/foundations/file-utils.js.map +1 -1
  31. package/dist/core/foundations/indexing/file-index.d.ts +5 -2
  32. package/dist/core/foundations/indexing/file-index.d.ts.map +1 -1
  33. package/dist/core/foundations/indexing/file-index.js +11 -3
  34. package/dist/core/foundations/indexing/file-index.js.map +1 -1
  35. package/dist/core/foundations/indexing/index-cache-serializer.d.ts +133 -0
  36. package/dist/core/foundations/indexing/index-cache-serializer.d.ts.map +1 -0
  37. package/dist/core/foundations/indexing/index-cache-serializer.js +217 -0
  38. package/dist/core/foundations/indexing/index-cache-serializer.js.map +1 -0
  39. package/dist/core/foundations/indexing/index-engine.d.ts +11 -5
  40. package/dist/core/foundations/indexing/index-engine.d.ts.map +1 -1
  41. package/dist/core/foundations/indexing/index-engine.js +31 -22
  42. package/dist/core/foundations/indexing/index-engine.js.map +1 -1
  43. package/dist/core/foundations/indexing/index.d.ts +4 -1
  44. package/dist/core/foundations/indexing/index.d.ts.map +1 -1
  45. package/dist/core/foundations/indexing/index.js +2 -1
  46. package/dist/core/foundations/indexing/index.js.map +1 -1
  47. package/dist/core/foundations/indexing/symbol-index.d.ts +7 -1
  48. package/dist/core/foundations/indexing/symbol-index.d.ts.map +1 -1
  49. package/dist/core/foundations/indexing/symbol-index.js +54 -3
  50. package/dist/core/foundations/indexing/symbol-index.js.map +1 -1
  51. package/dist/core/foundations/indexing/types.d.ts +3 -2
  52. package/dist/core/foundations/indexing/types.d.ts.map +1 -1
  53. package/dist/core/foundations/indexing/types.js +8 -6
  54. package/dist/core/foundations/indexing/types.js.map +1 -1
  55. package/dist/core/foundations/symbol-finder/call-site-parser.d.ts.map +1 -1
  56. package/dist/core/foundations/symbol-finder/call-site-parser.js +3 -1
  57. package/dist/core/foundations/symbol-finder/call-site-parser.js.map +1 -1
  58. package/dist/core/foundations/symbol-finder/symbol-finder.d.ts +0 -2
  59. package/dist/core/foundations/symbol-finder/symbol-finder.d.ts.map +1 -1
  60. package/dist/core/foundations/symbol-finder/symbol-finder.js +15 -11
  61. package/dist/core/foundations/symbol-finder/symbol-finder.js.map +1 -1
  62. package/dist/core/impact/dependency-extractor.d.ts +11 -3
  63. package/dist/core/impact/dependency-extractor.d.ts.map +1 -1
  64. package/dist/core/impact/dependency-extractor.js +149 -34
  65. package/dist/core/impact/dependency-extractor.js.map +1 -1
  66. package/dist/core/impact/file-scanner.d.ts.map +1 -1
  67. package/dist/core/impact/file-scanner.js +3 -2
  68. package/dist/core/impact/file-scanner.js.map +1 -1
  69. package/dist/core/impact/impact-analyzer.d.ts +8 -1
  70. package/dist/core/impact/impact-analyzer.d.ts.map +1 -1
  71. package/dist/core/impact/impact-analyzer.js +27 -8
  72. package/dist/core/impact/impact-analyzer.js.map +1 -1
  73. package/dist/core/impact/path-resolver.d.ts.map +1 -1
  74. package/dist/core/impact/path-resolver.js +11 -10
  75. package/dist/core/impact/path-resolver.js.map +1 -1
  76. package/dist/core/impact/types.d.ts.map +1 -1
  77. package/dist/core/impact/types.js +2 -1
  78. package/dist/core/impact/types.js.map +1 -1
  79. package/dist/core/move/file-scanner.d.ts +12 -0
  80. package/dist/core/move/file-scanner.d.ts.map +1 -1
  81. package/dist/core/move/file-scanner.js +58 -30
  82. package/dist/core/move/file-scanner.js.map +1 -1
  83. package/dist/core/move/glob-move-planner.d.ts +29 -0
  84. package/dist/core/move/glob-move-planner.d.ts.map +1 -0
  85. package/dist/core/move/glob-move-planner.js +48 -0
  86. package/dist/core/move/glob-move-planner.js.map +1 -0
  87. package/dist/core/move/index.d.ts +2 -0
  88. package/dist/core/move/index.d.ts.map +1 -1
  89. package/dist/core/move/index.js +1 -0
  90. package/dist/core/move/index.js.map +1 -1
  91. package/dist/core/move/move-engine.js +2 -2
  92. package/dist/core/move/move-engine.js.map +1 -1
  93. package/dist/core/move/path-calculator.d.ts +2 -0
  94. package/dist/core/move/path-calculator.d.ts.map +1 -1
  95. package/dist/core/move/path-calculator.js +36 -16
  96. package/dist/core/move/path-calculator.js.map +1 -1
  97. package/dist/core/move/path-utils.d.ts +2 -1
  98. package/dist/core/move/path-utils.d.ts.map +1 -1
  99. package/dist/core/move/path-utils.js +18 -28
  100. package/dist/core/move/path-utils.js.map +1 -1
  101. package/dist/core/move-member/change-applier.d.ts.map +1 -1
  102. package/dist/core/move-member/change-applier.js +3 -1
  103. package/dist/core/move-member/change-applier.js.map +1 -1
  104. package/dist/core/move-member/extractors/typescript-extractor.d.ts.map +1 -1
  105. package/dist/core/move-member/extractors/typescript-extractor.js +32 -28
  106. package/dist/core/move-member/extractors/typescript-extractor.js.map +1 -1
  107. package/dist/core/move-member/file-change-preparer.d.ts +5 -0
  108. package/dist/core/move-member/file-change-preparer.d.ts.map +1 -1
  109. package/dist/core/move-member/file-change-preparer.js +51 -11
  110. package/dist/core/move-member/file-change-preparer.js.map +1 -1
  111. package/dist/core/move-member/member-extractor.d.ts +0 -2
  112. package/dist/core/move-member/member-extractor.d.ts.map +1 -1
  113. package/dist/core/move-member/member-extractor.js +13 -22
  114. package/dist/core/move-member/member-extractor.js.map +1 -1
  115. package/dist/core/move-member/move-member-engine.d.ts +0 -1
  116. package/dist/core/move-member/move-member-engine.d.ts.map +1 -1
  117. package/dist/core/move-member/move-member-engine.js +0 -2
  118. package/dist/core/move-member/move-member-engine.js.map +1 -1
  119. package/dist/core/move-member/reference-updater.d.ts.map +1 -1
  120. package/dist/core/move-member/reference-updater.js +7 -10
  121. package/dist/core/move-member/reference-updater.js.map +1 -1
  122. package/dist/core/rename/reference-updater.d.ts +1 -0
  123. package/dist/core/rename/reference-updater.d.ts.map +1 -1
  124. package/dist/core/rename/reference-updater.js +48 -46
  125. package/dist/core/rename/reference-updater.js.map +1 -1
  126. package/dist/core/rename/rename-engine.d.ts +0 -1
  127. package/dist/core/rename/rename-engine.d.ts.map +1 -1
  128. package/dist/core/rename/rename-engine.js +9 -22
  129. package/dist/core/rename/rename-engine.js.map +1 -1
  130. package/dist/infrastructure/cache/cache-manager.d.ts.map +1 -1
  131. package/dist/infrastructure/cache/cache-manager.js +4 -5
  132. package/dist/infrastructure/cache/cache-manager.js.map +1 -1
  133. package/dist/infrastructure/cache/index-disk-cache.d.ts +46 -0
  134. package/dist/infrastructure/cache/index-disk-cache.d.ts.map +1 -0
  135. package/dist/infrastructure/cache/index-disk-cache.js +150 -0
  136. package/dist/infrastructure/cache/index-disk-cache.js.map +1 -0
  137. package/dist/infrastructure/cache/index.d.ts.map +1 -1
  138. package/dist/infrastructure/cache/index.js +1 -0
  139. package/dist/infrastructure/cache/index.js.map +1 -1
  140. package/dist/infrastructure/cache/memory-cache.d.ts.map +1 -1
  141. package/dist/infrastructure/cache/memory-cache.js +3 -1
  142. package/dist/infrastructure/cache/memory-cache.js.map +1 -1
  143. package/dist/infrastructure/formatters/index.d.ts +1 -2
  144. package/dist/infrastructure/formatters/index.d.ts.map +1 -1
  145. package/dist/infrastructure/formatters/index.js +1 -2
  146. package/dist/infrastructure/formatters/index.js.map +1 -1
  147. package/dist/infrastructure/formatters/query-formatter.d.ts.map +1 -1
  148. package/dist/infrastructure/formatters/query-formatter.js +9 -18
  149. package/dist/infrastructure/formatters/query-formatter.js.map +1 -1
  150. package/dist/infrastructure/formatters/query-types.d.ts +15 -145
  151. package/dist/infrastructure/formatters/query-types.d.ts.map +1 -1
  152. package/dist/infrastructure/formatters/query-types.js +3 -18
  153. package/dist/infrastructure/formatters/query-types.js.map +1 -1
  154. package/dist/infrastructure/formatters/strategies/base-formatter.d.ts +1 -20
  155. package/dist/infrastructure/formatters/strategies/base-formatter.d.ts.map +1 -1
  156. package/dist/infrastructure/formatters/strategies/base-formatter.js +0 -8
  157. package/dist/infrastructure/formatters/strategies/base-formatter.js.map +1 -1
  158. package/dist/infrastructure/formatters/strategies/call-hierarchy-formatter.d.ts.map +1 -1
  159. package/dist/infrastructure/formatters/strategies/call-hierarchy-formatter.js +7 -0
  160. package/dist/infrastructure/formatters/strategies/call-hierarchy-formatter.js.map +1 -1
  161. package/dist/infrastructure/formatters/strategies/cycles-formatter.d.ts +15 -0
  162. package/dist/infrastructure/formatters/strategies/cycles-formatter.d.ts.map +1 -0
  163. package/dist/infrastructure/formatters/strategies/cycles-formatter.js +29 -0
  164. package/dist/infrastructure/formatters/strategies/cycles-formatter.js.map +1 -0
  165. package/dist/infrastructure/formatters/strategies/impact-formatter.d.ts +15 -0
  166. package/dist/infrastructure/formatters/strategies/impact-formatter.d.ts.map +1 -0
  167. package/dist/infrastructure/formatters/strategies/impact-formatter.js +31 -0
  168. package/dist/infrastructure/formatters/strategies/impact-formatter.js.map +1 -0
  169. package/dist/infrastructure/formatters/strategies/index.d.ts +3 -4
  170. package/dist/infrastructure/formatters/strategies/index.d.ts.map +1 -1
  171. package/dist/infrastructure/formatters/strategies/index.js +3 -4
  172. package/dist/infrastructure/formatters/strategies/index.js.map +1 -1
  173. package/dist/infrastructure/logging/index.d.ts +2 -0
  174. package/dist/infrastructure/logging/index.d.ts.map +1 -0
  175. package/dist/infrastructure/logging/index.js +2 -0
  176. package/dist/infrastructure/logging/index.js.map +1 -0
  177. package/dist/infrastructure/logging/logger.d.ts +25 -0
  178. package/dist/infrastructure/logging/logger.d.ts.map +1 -0
  179. package/dist/infrastructure/logging/logger.js +54 -0
  180. package/dist/infrastructure/logging/logger.js.map +1 -0
  181. package/dist/infrastructure/parser/analysis-types.d.ts.map +1 -1
  182. package/dist/infrastructure/parser/base.d.ts +1 -6
  183. package/dist/infrastructure/parser/base.d.ts.map +1 -1
  184. package/dist/infrastructure/parser/base.js +4 -16
  185. package/dist/infrastructure/parser/base.js.map +1 -1
  186. package/dist/infrastructure/parser/index.d.ts +2 -2
  187. package/dist/infrastructure/parser/index.d.ts.map +1 -1
  188. package/dist/infrastructure/parser/index.js +1 -1
  189. package/dist/infrastructure/parser/index.js.map +1 -1
  190. package/dist/infrastructure/parser/interface.d.ts +0 -7
  191. package/dist/infrastructure/parser/interface.d.ts.map +1 -1
  192. package/dist/infrastructure/parser/interface.js +0 -1
  193. package/dist/infrastructure/parser/interface.js.map +1 -1
  194. package/dist/infrastructure/parser/registry.d.ts.map +1 -1
  195. package/dist/infrastructure/parser/registry.js +2 -1
  196. package/dist/infrastructure/parser/registry.js.map +1 -1
  197. package/dist/infrastructure/parser/types.d.ts +12 -3
  198. package/dist/infrastructure/parser/types.d.ts.map +1 -1
  199. package/dist/infrastructure/parser/types.js +7 -2
  200. package/dist/infrastructure/parser/types.js.map +1 -1
  201. package/dist/infrastructure/storage/file-system.d.ts.map +1 -1
  202. package/dist/infrastructure/storage/file-system.js +5 -1
  203. package/dist/infrastructure/storage/file-system.js.map +1 -1
  204. package/dist/interfaces/cli/cached-index-engine.d.ts +25 -0
  205. package/dist/interfaces/cli/cached-index-engine.d.ts.map +1 -0
  206. package/dist/interfaces/cli/cached-index-engine.js +59 -0
  207. package/dist/interfaces/cli/cached-index-engine.js.map +1 -0
  208. package/dist/interfaces/cli/cli.d.ts +1 -0
  209. package/dist/interfaces/cli/cli.d.ts.map +1 -1
  210. package/dist/interfaces/cli/cli.js +33 -19
  211. package/dist/interfaces/cli/cli.js.map +1 -1
  212. package/dist/interfaces/cli/command-utils.d.ts +17 -1
  213. package/dist/interfaces/cli/command-utils.d.ts.map +1 -1
  214. package/dist/interfaces/cli/command-utils.js +53 -3
  215. package/dist/interfaces/cli/command-utils.js.map +1 -1
  216. package/dist/interfaces/cli/commands/call-hierarchy.command.d.ts.map +1 -1
  217. package/dist/interfaces/cli/commands/call-hierarchy.command.js +57 -17
  218. package/dist/interfaces/cli/commands/call-hierarchy.command.js.map +1 -1
  219. package/dist/interfaces/cli/commands/change-signature.command.d.ts +12 -0
  220. package/dist/interfaces/cli/commands/change-signature.command.d.ts.map +1 -1
  221. package/dist/interfaces/cli/commands/change-signature.command.js +131 -12
  222. package/dist/interfaces/cli/commands/change-signature.command.js.map +1 -1
  223. package/dist/interfaces/cli/commands/cycles.command.d.ts +1 -1
  224. package/dist/interfaces/cli/commands/cycles.command.d.ts.map +1 -1
  225. package/dist/interfaces/cli/commands/cycles.command.js +13 -11
  226. package/dist/interfaces/cli/commands/cycles.command.js.map +1 -1
  227. package/dist/interfaces/cli/commands/deadcode.command.d.ts.map +1 -1
  228. package/dist/interfaces/cli/commands/deadcode.command.js +18 -19
  229. package/dist/interfaces/cli/commands/deadcode.command.js.map +1 -1
  230. package/dist/interfaces/cli/commands/find-references.command.d.ts.map +1 -1
  231. package/dist/interfaces/cli/commands/find-references.command.js +35 -11
  232. package/dist/interfaces/cli/commands/find-references.command.js.map +1 -1
  233. package/dist/interfaces/cli/commands/impact.command.d.ts +1 -1
  234. package/dist/interfaces/cli/commands/impact.command.js +6 -13
  235. package/dist/interfaces/cli/commands/impact.command.js.map +1 -1
  236. package/dist/interfaces/cli/commands/index.d.ts +1 -1
  237. package/dist/interfaces/cli/commands/index.d.ts.map +1 -1
  238. package/dist/interfaces/cli/commands/index.js +1 -1
  239. package/dist/interfaces/cli/commands/index.js.map +1 -1
  240. package/dist/interfaces/cli/commands/move-command-options.d.ts +14 -0
  241. package/dist/interfaces/cli/commands/move-command-options.d.ts.map +1 -0
  242. package/dist/interfaces/cli/commands/move-command-options.js +2 -0
  243. package/dist/interfaces/cli/commands/move-command-options.js.map +1 -0
  244. package/dist/interfaces/cli/commands/move-glob-command-handler.d.ts +8 -0
  245. package/dist/interfaces/cli/commands/move-glob-command-handler.d.ts.map +1 -0
  246. package/dist/interfaces/cli/commands/move-glob-command-handler.js +186 -0
  247. package/dist/interfaces/cli/commands/move-glob-command-handler.js.map +1 -0
  248. package/dist/interfaces/cli/commands/move.command.d.ts.map +1 -1
  249. package/dist/interfaces/cli/commands/move.command.js +62 -241
  250. package/dist/interfaces/cli/commands/move.command.js.map +1 -1
  251. package/dist/interfaces/cli/commands/rename.command.d.ts.map +1 -1
  252. package/dist/interfaces/cli/commands/rename.command.js +40 -26
  253. package/dist/interfaces/cli/commands/rename.command.js.map +1 -1
  254. package/dist/interfaces/cli/commands/search.command.d.ts +11 -0
  255. package/dist/interfaces/cli/commands/search.command.d.ts.map +1 -0
  256. package/dist/interfaces/cli/commands/search.command.js +110 -0
  257. package/dist/interfaces/cli/commands/search.command.js.map +1 -0
  258. package/dist/interfaces/cli/unified-output-handler.d.ts +5 -0
  259. package/dist/interfaces/cli/unified-output-handler.d.ts.map +1 -1
  260. package/dist/interfaces/cli/unified-output-handler.js +8 -1
  261. package/dist/interfaces/cli/unified-output-handler.js.map +1 -1
  262. package/dist/plugins/javascript/declaration-analyzer.d.ts.map +1 -1
  263. package/dist/plugins/javascript/declaration-analyzer.js +5 -2
  264. package/dist/plugins/javascript/declaration-analyzer.js.map +1 -1
  265. package/dist/plugins/javascript/parser.d.ts +6 -4
  266. package/dist/plugins/javascript/parser.d.ts.map +1 -1
  267. package/dist/plugins/javascript/parser.js +97 -15
  268. package/dist/plugins/javascript/parser.js.map +1 -1
  269. package/dist/plugins/javascript/reference-finder.d.ts.map +1 -1
  270. package/dist/plugins/javascript/reference-finder.js +3 -1
  271. package/dist/plugins/javascript/reference-finder.js.map +1 -1
  272. package/dist/plugins/javascript/types.js +10 -10
  273. package/dist/plugins/javascript/types.js.map +1 -1
  274. package/dist/plugins/shared/constants.d.ts +1 -1
  275. package/dist/plugins/shared/constants.d.ts.map +1 -1
  276. package/dist/plugins/shared/constants.js +7 -1
  277. package/dist/plugins/shared/constants.js.map +1 -1
  278. package/dist/plugins/shared/parser-helpers.d.ts.map +1 -1
  279. package/dist/plugins/shared/parser-helpers.js +1 -0
  280. package/dist/plugins/shared/parser-helpers.js.map +1 -1
  281. package/dist/plugins/shared/utils/memory-monitor.d.ts.map +1 -1
  282. package/dist/plugins/shared/utils/memory-monitor.js +3 -2
  283. package/dist/plugins/shared/utils/memory-monitor.js.map +1 -1
  284. package/dist/plugins/shared/utils/object.d.ts.map +1 -1
  285. package/dist/plugins/shared/utils/object.js +8 -12
  286. package/dist/plugins/shared/utils/object.js.map +1 -1
  287. package/dist/plugins/typescript/declaration-analyzer.d.ts.map +1 -1
  288. package/dist/plugins/typescript/declaration-analyzer.js +9 -4
  289. package/dist/plugins/typescript/declaration-analyzer.js.map +1 -1
  290. package/dist/plugins/typescript/language-service.js +1 -1
  291. package/dist/plugins/typescript/language-service.js.map +1 -1
  292. package/dist/plugins/typescript/parser.d.ts +1 -6
  293. package/dist/plugins/typescript/parser.d.ts.map +1 -1
  294. package/dist/plugins/typescript/parser.js +7 -33
  295. package/dist/plugins/typescript/parser.js.map +1 -1
  296. package/dist/plugins/typescript/pattern-analyzer.d.ts.map +1 -1
  297. package/dist/plugins/typescript/pattern-analyzer.js +3 -1
  298. package/dist/plugins/typescript/pattern-analyzer.js.map +1 -1
  299. package/dist/plugins/typescript/reference-finder.d.ts.map +1 -1
  300. package/dist/plugins/typescript/reference-finder.js +3 -1
  301. package/dist/plugins/typescript/reference-finder.js.map +1 -1
  302. package/dist/plugins/typescript/tsconfig-loader.d.ts.map +1 -1
  303. package/dist/plugins/typescript/tsconfig-loader.js +162 -24
  304. package/dist/plugins/typescript/tsconfig-loader.js.map +1 -1
  305. package/dist/plugins/typescript/types.js +3 -3
  306. package/dist/plugins/typescript/types.js.map +1 -1
  307. package/dist/shared/errors/diagnostic-collector.d.ts +47 -0
  308. package/dist/shared/errors/diagnostic-collector.d.ts.map +1 -0
  309. package/dist/shared/errors/diagnostic-collector.js +89 -0
  310. package/dist/shared/errors/diagnostic-collector.js.map +1 -0
  311. package/dist/shared/errors/index.d.ts +3 -0
  312. package/dist/shared/errors/index.d.ts.map +1 -1
  313. package/dist/shared/errors/index.js +5 -1
  314. package/dist/shared/errors/index.js.map +1 -1
  315. package/dist/shared/types/index.d.ts +1 -0
  316. package/dist/shared/types/index.d.ts.map +1 -1
  317. package/dist/shared/types/index.js +2 -0
  318. package/dist/shared/types/index.js.map +1 -1
  319. package/dist/shared/types/source-file-extensions.d.ts +14 -0
  320. package/dist/shared/types/source-file-extensions.d.ts.map +1 -0
  321. package/dist/shared/types/source-file-extensions.js +42 -0
  322. package/dist/shared/types/source-file-extensions.js.map +1 -0
  323. package/dist/shared/types/symbol.d.ts +1 -0
  324. package/dist/shared/types/symbol.d.ts.map +1 -1
  325. package/dist/shared/types/symbol.js.map +1 -1
  326. package/package.json +18 -12
  327. package/dist/application/events/event-bus.d.ts +0 -107
  328. package/dist/application/events/event-bus.d.ts.map +0 -1
  329. package/dist/application/events/event-bus.js +0 -369
  330. package/dist/application/events/event-bus.js.map +0 -1
  331. package/dist/application/events/event-types.d.ts +0 -195
  332. package/dist/application/events/event-types.d.ts.map +0 -1
  333. package/dist/application/events/event-types.js +0 -36
  334. package/dist/application/events/event-types.js.map +0 -1
  335. package/dist/application/events/index.d.ts +0 -6
  336. package/dist/application/events/index.d.ts.map +0 -1
  337. package/dist/application/events/index.js +0 -6
  338. package/dist/application/events/index.js.map +0 -1
  339. package/dist/application/index.d.ts +0 -76
  340. package/dist/application/index.d.ts.map +0 -1
  341. package/dist/application/index.js +0 -127
  342. package/dist/application/index.js.map +0 -1
  343. package/dist/application/services/cache-coordinator.service.d.ts +0 -69
  344. package/dist/application/services/cache-coordinator.service.d.ts.map +0 -1
  345. package/dist/application/services/cache-coordinator.service.js +0 -251
  346. package/dist/application/services/cache-coordinator.service.js.map +0 -1
  347. package/dist/application/services/error-handler.service.d.ts +0 -56
  348. package/dist/application/services/error-handler.service.d.ts.map +0 -1
  349. package/dist/application/services/error-handler.service.js +0 -273
  350. package/dist/application/services/error-handler.service.js.map +0 -1
  351. package/dist/application/services/index.d.ts +0 -8
  352. package/dist/application/services/index.d.ts.map +0 -1
  353. package/dist/application/services/index.js +0 -8
  354. package/dist/application/services/index.js.map +0 -1
  355. package/dist/application/services/module-coordinator.service.d.ts +0 -55
  356. package/dist/application/services/module-coordinator.service.d.ts.map +0 -1
  357. package/dist/application/services/module-coordinator.service.js +0 -185
  358. package/dist/application/services/module-coordinator.service.js.map +0 -1
  359. package/dist/application/services/session-manager.service.d.ts +0 -86
  360. package/dist/application/services/session-manager.service.d.ts.map +0 -1
  361. package/dist/application/services/session-manager.service.js +0 -321
  362. package/dist/application/services/session-manager.service.js.map +0 -1
  363. package/dist/application/state/application-state.d.ts +0 -164
  364. package/dist/application/state/application-state.d.ts.map +0 -1
  365. package/dist/application/state/application-state.js +0 -290
  366. package/dist/application/state/application-state.js.map +0 -1
  367. package/dist/application/state/index.d.ts +0 -15
  368. package/dist/application/state/index.d.ts.map +0 -1
  369. package/dist/application/state/index.js +0 -15
  370. package/dist/application/state/index.js.map +0 -1
  371. package/dist/application/state/session-state.d.ts +0 -114
  372. package/dist/application/state/session-state.d.ts.map +0 -1
  373. package/dist/application/state/session-state.js +0 -188
  374. package/dist/application/state/session-state.js.map +0 -1
  375. package/dist/application/state/state-manager.d.ts +0 -122
  376. package/dist/application/state/state-manager.d.ts.map +0 -1
  377. package/dist/application/state/state-manager.js +0 -234
  378. package/dist/application/state/state-manager.js.map +0 -1
  379. package/dist/application/types.d.ts +0 -217
  380. package/dist/application/types.d.ts.map +0 -1
  381. package/dist/application/types.js +0 -5
  382. package/dist/application/types.js.map +0 -1
  383. package/dist/core/find-references/index.d.ts +0 -12
  384. package/dist/core/find-references/index.d.ts.map +0 -1
  385. package/dist/core/find-references/index.js +0 -14
  386. package/dist/core/find-references/index.js.map +0 -1
  387. package/dist/core/find-references/reference-finder-engine.d.ts +0 -75
  388. package/dist/core/find-references/reference-finder-engine.d.ts.map +0 -1
  389. package/dist/core/find-references/reference-finder-engine.js +0 -87
  390. package/dist/core/find-references/reference-finder-engine.js.map +0 -1
  391. package/dist/core/find-references/types.d.ts +0 -6
  392. package/dist/core/find-references/types.d.ts.map +0 -1
  393. package/dist/core/find-references/types.js +0 -7
  394. package/dist/core/find-references/types.js.map +0 -1
  395. package/dist/core/snapshot/index.d.ts +0 -9
  396. package/dist/core/snapshot/index.d.ts.map +0 -1
  397. package/dist/core/snapshot/index.js +0 -7
  398. package/dist/core/snapshot/index.js.map +0 -1
  399. package/dist/core/snapshot/snapshot-cache.d.ts +0 -103
  400. package/dist/core/snapshot/snapshot-cache.d.ts.map +0 -1
  401. package/dist/core/snapshot/snapshot-cache.js +0 -249
  402. package/dist/core/snapshot/snapshot-cache.js.map +0 -1
  403. package/dist/core/snapshot/snapshot-generator.d.ts +0 -79
  404. package/dist/core/snapshot/snapshot-generator.d.ts.map +0 -1
  405. package/dist/core/snapshot/snapshot-generator.js +0 -381
  406. package/dist/core/snapshot/snapshot-generator.js.map +0 -1
  407. package/dist/core/snapshot/types.d.ts +0 -67
  408. package/dist/core/snapshot/types.d.ts.map +0 -1
  409. package/dist/core/snapshot/types.js +0 -25
  410. package/dist/core/snapshot/types.js.map +0 -1
  411. package/dist/core/snapshot/utils/bracket-balancer.d.ts +0 -27
  412. package/dist/core/snapshot/utils/bracket-balancer.d.ts.map +0 -1
  413. package/dist/core/snapshot/utils/bracket-balancer.js +0 -70
  414. package/dist/core/snapshot/utils/bracket-balancer.js.map +0 -1
  415. package/dist/core/snapshot/utils/factory-pattern-detector.d.ts +0 -22
  416. package/dist/core/snapshot/utils/factory-pattern-detector.d.ts.map +0 -1
  417. package/dist/core/snapshot/utils/factory-pattern-detector.js +0 -70
  418. package/dist/core/snapshot/utils/factory-pattern-detector.js.map +0 -1
  419. package/dist/core/snapshot/utils/index.d.ts +0 -7
  420. package/dist/core/snapshot/utils/index.d.ts.map +0 -1
  421. package/dist/core/snapshot/utils/index.js +0 -7
  422. package/dist/core/snapshot/utils/index.js.map +0 -1
  423. package/dist/core/snapshot/utils/symbol-formatter.d.ts +0 -37
  424. package/dist/core/snapshot/utils/symbol-formatter.d.ts.map +0 -1
  425. package/dist/core/snapshot/utils/symbol-formatter.js +0 -89
  426. package/dist/core/snapshot/utils/symbol-formatter.js.map +0 -1
  427. package/dist/infrastructure/formatters/diff-utils.d.ts +0 -24
  428. package/dist/infrastructure/formatters/diff-utils.d.ts.map +0 -1
  429. package/dist/infrastructure/formatters/diff-utils.js +0 -104
  430. package/dist/infrastructure/formatters/diff-utils.js.map +0 -1
  431. package/dist/infrastructure/formatters/preview-converter.d.ts +0 -148
  432. package/dist/infrastructure/formatters/preview-converter.d.ts.map +0 -1
  433. package/dist/infrastructure/formatters/preview-converter.js +0 -329
  434. package/dist/infrastructure/formatters/preview-converter.js.map +0 -1
  435. package/dist/infrastructure/formatters/strategies/analyze-formatter.d.ts +0 -24
  436. package/dist/infrastructure/formatters/strategies/analyze-formatter.d.ts.map +0 -1
  437. package/dist/infrastructure/formatters/strategies/analyze-formatter.js +0 -102
  438. package/dist/infrastructure/formatters/strategies/analyze-formatter.js.map +0 -1
  439. package/dist/infrastructure/formatters/strategies/deps-formatter.d.ts +0 -15
  440. package/dist/infrastructure/formatters/strategies/deps-formatter.d.ts.map +0 -1
  441. package/dist/infrastructure/formatters/strategies/deps-formatter.js +0 -47
  442. package/dist/infrastructure/formatters/strategies/deps-formatter.js.map +0 -1
  443. package/dist/infrastructure/formatters/strategies/snapshot-formatter.d.ts +0 -20
  444. package/dist/infrastructure/formatters/strategies/snapshot-formatter.d.ts.map +0 -1
  445. package/dist/infrastructure/formatters/strategies/snapshot-formatter.js +0 -101
  446. package/dist/infrastructure/formatters/strategies/snapshot-formatter.js.map +0 -1
  447. package/dist/interfaces/cli/commands/snapshot.command.d.ts +0 -11
  448. package/dist/interfaces/cli/commands/snapshot.command.d.ts.map +0 -1
  449. package/dist/interfaces/cli/commands/snapshot.command.js +0 -86
  450. package/dist/interfaces/cli/commands/snapshot.command.js.map +0 -1
@@ -1,38 +1,15 @@
1
1
  /**
2
2
  * 唯讀命令結果型別定義
3
- * 所有唯讀命令(search, analyze, deps)共用此結構
3
+ * 所有唯讀命令共用此結構
4
4
  */
5
5
  /** 唯讀命令類型 */
6
6
  export declare enum QueryCommand {
7
7
  Search = "search",
8
- Analyze = "analyze",
9
- Deps = "deps",
10
- Snapshot = "snapshot",
8
+ Cycles = "cycles",
9
+ Impact = "impact",
11
10
  FindReferences = "find-references",
12
11
  CallHierarchy = "call-hierarchy"
13
12
  }
14
- /** 問題嚴重度 */
15
- export declare enum IssueSeverity {
16
- Critical = "critical",
17
- High = "high",
18
- Medium = "medium",
19
- Low = "low"
20
- }
21
- /** 通用問題項目 */
22
- export interface QueryIssue {
23
- /** 問題類型 */
24
- type: string;
25
- /** 嚴重度 */
26
- severity?: IssueSeverity;
27
- /** 問題訊息 */
28
- message: string;
29
- /** 檔案路徑 */
30
- filePath?: string;
31
- /** 行號 */
32
- line?: number;
33
- /** 分數 */
34
- score?: number;
35
- }
36
13
  /** 通用統計摘要 */
37
14
  export interface QuerySummary {
38
15
  /** 掃描項目總數 */
@@ -53,10 +30,10 @@ export interface QueryResult {
53
30
  success: boolean;
54
31
  /** 統計摘要 */
55
32
  summary: QuerySummary;
56
- /** 問題列表 */
57
- issues?: QueryIssue[];
58
33
  /** 命令特定資料 */
59
34
  data?: unknown;
35
+ /** 主要錯誤訊息,供 JSON clients 使用 */
36
+ error?: string;
60
37
  /** 錯誤訊息 */
61
38
  errors?: string[];
62
39
  }
@@ -101,97 +78,21 @@ export interface ImpactInfo {
101
78
  /** 總影響數 */
102
79
  totalAffected: number;
103
80
  }
104
- /** Deps 結果 */
105
- export interface DepsResult extends QueryResult {
106
- command: QueryCommand.Deps;
81
+ /** Cycles 命令結果 */
82
+ export interface CyclesResult extends QueryResult {
83
+ command: QueryCommand.Cycles;
107
84
  /** 循環依賴 */
108
85
  cycles: CycleInfo[];
109
- /** 影響分析 */
110
- impact?: ImpactInfo;
111
86
  /** 專案根目錄路徑(用於計算相對路徑) */
112
87
  basePath?: string;
113
88
  }
114
- /** Analyze 分析類型 */
115
- export declare enum AnalyzeType {
116
- Complexity = "complexity",
117
- DeadCode = "dead-code"
118
- }
119
- /** Analyze 結果 */
120
- export interface AnalyzeResult extends QueryResult {
121
- command: QueryCommand.Analyze;
122
- /** 分析類型 */
123
- analyzeType: AnalyzeType;
124
- /** 分析指標 */
125
- metrics?: Record<string, unknown>;
126
- }
127
- /** 模組快照資料 */
128
- export interface ModuleSnapshotData {
129
- /** 模組名稱 */
130
- module: string;
131
- /** API(class 的 public 方法) */
132
- api: Record<string, Record<string, string>>;
133
- /** 工廠函數 */
134
- factories: Record<string, string>;
135
- /** 型別定義 */
136
- types: Record<string, string>;
137
- /** 私有資訊 */
138
- private: Record<string, {
139
- fields: string[];
140
- imports: string;
141
- }>;
142
- }
143
- /** 專案快照資料 */
144
- export interface ProjectSnapshotData {
145
- /** 專案名稱 */
146
- project: string;
147
- /** 模組快照 */
148
- modules: Record<string, ModuleSnapshotData>;
149
- }
150
- /** 增量快照差異符號 */
151
- export interface DeltaSymbolData {
152
- /** 所屬模組 */
153
- module: string;
154
- /** 符號名稱 */
155
- name: string;
156
- /** 簽章(新增/修改時) */
157
- signature?: string;
158
- /** 符號類型 */
159
- type: 'class' | 'function' | 'interface' | 'type' | 'factory';
160
- }
161
- /** 增量快照差異 */
162
- export interface SnapshotDeltaData {
163
- /** 新增的內容 */
164
- added: {
165
- modules: Record<string, ModuleSnapshotData>;
166
- symbols: DeltaSymbolData[];
167
- };
168
- /** 修改的內容 */
169
- modified: {
170
- modules: string[];
171
- symbols: DeltaSymbolData[];
172
- };
173
- /** 刪除的內容 */
174
- removed: {
175
- modules: string[];
176
- symbols: DeltaSymbolData[];
177
- };
178
- }
179
- /** 增量快照資料 */
180
- export interface IncrementalSnapshotData {
181
- /** 當前版本時間戳 */
182
- version: string;
183
- /** 基準版本時間戳(首次為空) */
184
- baseVersion: string;
185
- /** 變更內容 */
186
- delta: SnapshotDeltaData;
187
- }
188
- /** Snapshot 結果 */
189
- export interface SnapshotResult extends QueryResult {
190
- command: QueryCommand.Snapshot;
191
- /** 快照類型 */
192
- snapshotType: 'module' | 'project' | 'incremental';
193
- /** 快照資料 */
194
- snapshot: ModuleSnapshotData | ProjectSnapshotData | IncrementalSnapshotData;
89
+ /** Impact 命令結果 */
90
+ export interface ImpactResult extends QueryResult {
91
+ command: QueryCommand.Impact;
92
+ /** 影響分析 */
93
+ impact: ImpactInfo;
94
+ /** 專案根目錄路徑(用於計算相對路徑) */
95
+ basePath?: string;
195
96
  }
196
97
  /** 引用類型 */
197
98
  export type ReferenceType = 'definition' | 'usage' | 'import' | 'export';
@@ -288,35 +189,4 @@ export interface CallHierarchyResult extends QueryResult {
288
189
  /** 被呼叫者列表(此函數呼叫了誰) */
289
190
  outgoing: OutgoingCallItem[];
290
191
  }
291
- /** Dead Code 項目 */
292
- export interface DeadCodeResultItem {
293
- /** 符號名稱 */
294
- name: string;
295
- /** 符號類型 */
296
- type: string;
297
- /** 檔案路徑 */
298
- file: string;
299
- /** 行號 */
300
- line: number;
301
- /** 欄位 */
302
- column?: number;
303
- /** 原因說明 */
304
- reason: string;
305
- }
306
- /** DeadCode 結果 */
307
- export interface DeadCodeResult extends QueryResult {
308
- command: QueryCommand.Analyze;
309
- /** 分析類型 */
310
- analyzeType: AnalyzeType.DeadCode;
311
- /** Dead code 項目列表 */
312
- items: DeadCodeResultItem[];
313
- /** 按類型統計 */
314
- byType: Record<string, number>;
315
- /** 影響的檔案數 */
316
- filesAffected: number;
317
- /** 掃描耗時(毫秒) */
318
- scanTime: number;
319
- /** 跳過的檔案數(解析失敗) */
320
- skippedFiles: number;
321
- }
322
192
  //# sourceMappingURL=query-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-types.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"query-types.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-types.ts"],"names":[],"mappings":"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"}
@@ -1,29 +1,14 @@
1
1
  /**
2
2
  * 唯讀命令結果型別定義
3
- * 所有唯讀命令(search, analyze, deps)共用此結構
3
+ * 所有唯讀命令共用此結構
4
4
  */
5
5
  /** 唯讀命令類型 */
6
6
  export var QueryCommand;
7
7
  (function (QueryCommand) {
8
8
  QueryCommand["Search"] = "search";
9
- QueryCommand["Analyze"] = "analyze";
10
- QueryCommand["Deps"] = "deps";
11
- QueryCommand["Snapshot"] = "snapshot";
9
+ QueryCommand["Cycles"] = "cycles";
10
+ QueryCommand["Impact"] = "impact";
12
11
  QueryCommand["FindReferences"] = "find-references";
13
12
  QueryCommand["CallHierarchy"] = "call-hierarchy";
14
13
  })(QueryCommand || (QueryCommand = {}));
15
- /** 問題嚴重度 */
16
- export var IssueSeverity;
17
- (function (IssueSeverity) {
18
- IssueSeverity["Critical"] = "critical";
19
- IssueSeverity["High"] = "high";
20
- IssueSeverity["Medium"] = "medium";
21
- IssueSeverity["Low"] = "low";
22
- })(IssueSeverity || (IssueSeverity = {}));
23
- /** Analyze 分析類型 */
24
- export var AnalyzeType;
25
- (function (AnalyzeType) {
26
- AnalyzeType["Complexity"] = "complexity";
27
- AnalyzeType["DeadCode"] = "dead-code";
28
- })(AnalyzeType || (AnalyzeType = {}));
29
14
  //# sourceMappingURL=query-types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"query-types.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,aAAa;AACb,MAAM,CAAN,IAAY,YAOX;AAPD,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,mCAAmB,CAAA;IACnB,6BAAa,CAAA;IACb,qCAAqB,CAAA;IACrB,kDAAkC,CAAA;IAClC,gDAAgC,CAAA;AAClC,CAAC,EAPW,YAAY,KAAZ,YAAY,QAOvB;AAED,YAAY;AACZ,MAAM,CAAN,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,sCAAqB,CAAA;IACrB,8BAAa,CAAA;IACb,kCAAiB,CAAA;IACjB,4BAAW,CAAA;AACb,CAAC,EALW,aAAa,KAAb,aAAa,QAKxB;AAyGD,mBAAmB;AACnB,MAAM,CAAN,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,wCAAyB,CAAA;IACzB,qCAAsB,CAAA;AACxB,CAAC,EAHW,WAAW,KAAX,WAAW,QAGtB"}
1
+ {"version":3,"file":"query-types.js","sourceRoot":"","sources":["../../../src/infrastructure/formatters/query-types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,aAAa;AACb,MAAM,CAAN,IAAY,YAMX;AAND,WAAY,YAAY;IACtB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,iCAAiB,CAAA;IACjB,kDAAkC,CAAA;IAClC,gDAAgC,CAAA;AAClC,CAAC,EANW,YAAY,KAAZ,YAAY,QAMvB"}
@@ -2,7 +2,7 @@
2
2
  * 策略模式基底類別
3
3
  * 提供共用常數、方法和介面定義
4
4
  */
5
- import { type QueryResult } from '../query-types.js';
5
+ import type { QueryResult } from '../query-types.js';
6
6
  /** ANSI 顏色碼 */
7
7
  export declare const Colors: {
8
8
  readonly reset: "\u001B[0m";
@@ -13,25 +13,6 @@ export declare const Colors: {
13
13
  readonly dim: "\u001B[2m";
14
14
  readonly bold: "\u001B[1m";
15
15
  };
16
- /** 嚴重度對應的顏色和 emoji */
17
- export declare const SeverityStyle: {
18
- readonly critical: {
19
- readonly color: "\u001B[31m";
20
- readonly emoji: "🔴";
21
- };
22
- readonly high: {
23
- readonly color: "\u001B[31m";
24
- readonly emoji: "🟠";
25
- };
26
- readonly medium: {
27
- readonly color: "\u001B[33m";
28
- readonly emoji: "🟡";
29
- };
30
- readonly low: {
31
- readonly color: "\u001B[32m";
32
- readonly emoji: "🟢";
33
- };
34
- };
35
16
  /**
36
17
  * 查詢格式化策略介面
37
18
  */
@@ -1 +1 @@
1
- {"version":3,"file":"base-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/base-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEpE,eAAe;AACf,eAAO,MAAM,MAAM;;;;;;;;CAQT,CAAC;AAEX,sBAAsB;AACtB,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;CAKhB,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IACjE,sBAAsB;IACtB,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;CAClC;AAED;;;GAGG;AACH,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,YAAW,cAAc,CAAC,CAAC,CAAC;IACvF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO;gBAArB,YAAY,EAAE,OAAO;IAEpD,4BAA4B;IAC5B,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM;IAEzC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAOvD;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAUrE;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAc7C"}
1
+ {"version":3,"file":"base-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/base-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAErD,eAAe;AACf,eAAO,MAAM,MAAM;;;;;;;;CAQT,CAAC;AAEX;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW;IACjE,sBAAsB;IACtB,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC;CAClC;AAED;;;GAGG;AACH,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAAE,YAAW,cAAc,CAAC,CAAC,CAAC;IACvF,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,OAAO;gBAArB,YAAY,EAAE,OAAO;IAEpD,4BAA4B;IAC5B,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,GAAG,MAAM;IAEzC;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM;IAOvD;;;;;OAKG;IACH,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM;IAUrE;;OAEG;IACH,SAAS,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAc7C"}
@@ -3,7 +3,6 @@
3
3
  * 提供共用常數、方法和介面定義
4
4
  */
5
5
  import * as path from 'path';
6
- import { IssueSeverity } from '../query-types.js';
7
6
  /** ANSI 顏色碼 */
8
7
  export const Colors = {
9
8
  reset: '\x1b[0m',
@@ -14,13 +13,6 @@ export const Colors = {
14
13
  dim: '\x1b[2m',
15
14
  bold: '\x1b[1m'
16
15
  };
17
- /** 嚴重度對應的顏色和 emoji */
18
- export const SeverityStyle = {
19
- [IssueSeverity.Critical]: { color: Colors.red, emoji: '🔴' },
20
- [IssueSeverity.High]: { color: Colors.red, emoji: '🟠' },
21
- [IssueSeverity.Medium]: { color: Colors.yellow, emoji: '🟡' },
22
- [IssueSeverity.Low]: { color: Colors.green, emoji: '🟢' }
23
- };
24
16
  /**
25
17
  * 基底格式化器
26
18
  * 提供共用的格式化方法
@@ -1 +1 @@
1
- {"version":3,"file":"base-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/base-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAoB,MAAM,mBAAmB,CAAC;AAEpE,eAAe;AACf,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,SAAS;IAChB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,SAAS;CACP,CAAC;AAEX,sBAAsB;AACtB,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,CAAC,aAAa,CAAC,QAAQ,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;IAC5D,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE;IACxD,CAAC,aAAa,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IAC7D,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE;CACjD,CAAC;AAUX;;;GAGG;AACH,MAAM,OAAgB,aAAa;IACF;IAA/B,YAA+B,YAAqB;QAArB,iBAAY,GAAZ,YAAY,CAAS;IAAG,CAAC;IAKxD;;OAEG;IACO,QAAQ,CAAC,IAAY,EAAE,KAAa;QAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACO,cAAc,CAAC,QAAgB,EAAE,QAAiB;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACO,YAAY,CAAC,IAAY;QACjC,MAAM,MAAM,GAA2B;YACrC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC9B,CAAC;CACF"}
1
+ {"version":3,"file":"base-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/base-formatter.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAG7B,eAAe;AACf,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,SAAS;IAChB,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,GAAG,EAAE,SAAS;IACd,IAAI,EAAE,SAAS;CACP,CAAC;AAUX;;;GAGG;AACH,MAAM,OAAgB,aAAa;IACF;IAA/B,YAA+B,YAAqB;QAArB,iBAAY,GAAZ,YAAY,CAAS;IAAG,CAAC;IAKxD;;OAEG;IACO,QAAQ,CAAC,IAAY,EAAE,KAAa;QAC5C,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC;IAC1C,CAAC;IAED;;;;;OAKG;IACO,cAAc,CAAC,QAAgB,EAAE,QAAiB;QAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/B,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACO,YAAY,CAAC,IAAY;QACjC,MAAM,MAAM,GAA2B;YACrC,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;YACd,SAAS,EAAE,IAAI;YACf,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI;YACd,MAAM,EAAE,IAAI;YACZ,IAAI,EAAE,IAAI;YACV,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC;IAC9B,CAAC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"call-hierarchy-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/call-hierarchy-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,aAAa,EAAU,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAC5E;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM;CAuDnD"}
1
+ {"version":3,"file":"call-hierarchy-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/call-hierarchy-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,KAAK,mBAAmB,EAGzB,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EAAE,aAAa,EAAU,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,aAAa,CAAC,mBAAmB,CAAC;IAC5E;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,mBAAmB,GAAG,MAAM;CA+DnD"}
@@ -11,6 +11,13 @@ export class CallHierarchyFormatter extends BaseFormatter {
11
11
  * 格式化 CallHierarchy 摘要
12
12
  */
13
13
  formatSummary(result) {
14
+ // success:false → 只印錯誤訊息,不渲染空白 hierarchy 樣板
15
+ if (result.success === false) {
16
+ const message = result.error
17
+ ?? result.errors?.[0]
18
+ ?? `找不到函數 "${result.function}"`;
19
+ return this.colorize(`❌ ${message}`, Colors.red);
20
+ }
14
21
  const lines = [];
15
22
  // 標題與定義位置
16
23
  lines.push(`📞 函數呼叫層次: ${result.function}`);
@@ -1 +1 @@
1
- {"version":3,"file":"call-hierarchy-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/call-hierarchy-formatter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"call-hierarchy-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/call-hierarchy-formatter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Cycles query formatting strategy.
3
+ */
4
+ import { type CyclesResult } from '../query-types.js';
5
+ import { BaseFormatter } from './base-formatter.js';
6
+ /**
7
+ * Cycles 結果格式化器
8
+ */
9
+ export declare class CyclesFormatter extends BaseFormatter<CyclesResult> {
10
+ /**
11
+ * 格式化 cycles 摘要
12
+ */
13
+ formatSummary(result: CyclesResult): string;
14
+ }
15
+ //# sourceMappingURL=cycles-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cycles-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/cycles-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAU,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,qBAAa,eAAgB,SAAQ,aAAa,CAAC,YAAY,CAAC;IAC9D;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;CAiB5C"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Cycles query formatting strategy.
3
+ */
4
+ import { BaseFormatter, Colors } from './base-formatter.js';
5
+ /**
6
+ * Cycles 結果格式化器
7
+ */
8
+ export class CyclesFormatter extends BaseFormatter {
9
+ /**
10
+ * 格式化 cycles 摘要
11
+ */
12
+ formatSummary(result) {
13
+ const lines = [];
14
+ const basePath = result.basePath;
15
+ if (result.cycles.length > 0) {
16
+ lines.push(this.colorize(`發現 ${result.cycles.length} 個循環依賴`, Colors.red));
17
+ lines.push('');
18
+ result.cycles.forEach((cycle, index) => {
19
+ const formattedCycle = cycle.cycle.map(p => this.toRelativePath(p, basePath));
20
+ lines.push(`${index + 1}. ${formattedCycle.join(' → ')} → ${formattedCycle[0]}`);
21
+ });
22
+ }
23
+ else {
24
+ lines.push(this.colorize('未發現循環依賴', Colors.green));
25
+ }
26
+ return lines.join('\n');
27
+ }
28
+ }
29
+ //# sourceMappingURL=cycles-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cycles-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/cycles-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE5D;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,aAA2B;IAC9D;;OAEG;IACH,aAAa,CAAC,MAAoB;QAChC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QAEjC,IAAI,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YAC1E,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACf,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;gBACrC,MAAM,cAAc,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC;gBAC9E,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,KAAK,cAAc,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YACnF,CAAC,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrD,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Impact query formatting strategy.
3
+ */
4
+ import { type ImpactResult } from '../query-types.js';
5
+ import { BaseFormatter } from './base-formatter.js';
6
+ /**
7
+ * Impact 結果格式化器
8
+ */
9
+ export declare class ImpactFormatter extends BaseFormatter<ImpactResult> {
10
+ /**
11
+ * 格式化 impact 摘要
12
+ */
13
+ formatSummary(result: ImpactResult): string;
14
+ }
15
+ //# sourceMappingURL=impact-formatter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impact-formatter.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/impact-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;GAEG;AACH,qBAAa,eAAgB,SAAQ,aAAa,CAAC,YAAY,CAAC;IAC9D;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM;CAoB5C"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * Impact query formatting strategy.
3
+ */
4
+ import { BaseFormatter } from './base-formatter.js';
5
+ /**
6
+ * Impact 結果格式化器
7
+ */
8
+ export class ImpactFormatter extends BaseFormatter {
9
+ /**
10
+ * 格式化 impact 摘要
11
+ */
12
+ formatSummary(result) {
13
+ const lines = [];
14
+ const basePath = result.basePath;
15
+ const targetFile = this.toRelativePath(result.impact.targetFile, basePath);
16
+ lines.push(`📊 影響分析: ${targetFile}`);
17
+ lines.push(` 依賴此檔案: ${result.impact.dependents.length} 個`);
18
+ lines.push(` 被此檔案依賴: ${result.impact.dependencies.length} 個`);
19
+ if (result.impact.dependents.length > 0) {
20
+ lines.push(' 依賴者:');
21
+ result.impact.dependents.slice(0, 5).forEach(dep => {
22
+ lines.push(` - ${this.toRelativePath(dep, basePath)}`);
23
+ });
24
+ if (result.impact.dependents.length > 5) {
25
+ lines.push(` ... 還有 ${result.impact.dependents.length - 5} 個`);
26
+ }
27
+ }
28
+ return lines.join('\n');
29
+ }
30
+ }
31
+ //# sourceMappingURL=impact-formatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"impact-formatter.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/impact-formatter.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;GAEG;AACH,MAAM,OAAO,eAAgB,SAAQ,aAA2B;IAC9D;;OAEG;IACH,aAAa,CAAC,MAAoB;QAChC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;QACjC,MAAM,UAAU,GAAG,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAE3E,KAAK,CAAC,IAAI,CAAC,YAAY,UAAU,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,CAAC;QAC7D,KAAK,CAAC,IAAI,CAAC,cAAc,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,CAAC;QAChE,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtB,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;gBACjD,KAAK,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC7D,CAAC,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxC,KAAK,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF"}
@@ -1,11 +1,10 @@
1
1
  /**
2
2
  * Query 格式化策略模組
3
3
  */
4
- export { BaseFormatter, Colors, SeverityStyle, type IQueryStrategy } from './base-formatter.js';
4
+ export { BaseFormatter, Colors, type IQueryStrategy } from './base-formatter.js';
5
5
  export { SearchFormatter } from './search-formatter.js';
6
- export { DepsFormatter } from './deps-formatter.js';
7
- export { AnalyzeFormatter } from './analyze-formatter.js';
8
- export { SnapshotFormatter } from './snapshot-formatter.js';
6
+ export { CyclesFormatter } from './cycles-formatter.js';
7
+ export { ImpactFormatter } from './impact-formatter.js';
9
8
  export { FindReferencesFormatter } from './find-references-formatter.js';
10
9
  export { CallHierarchyFormatter } from './call-hierarchy-formatter.js';
11
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -1,11 +1,10 @@
1
1
  /**
2
2
  * Query 格式化策略模組
3
3
  */
4
- export { BaseFormatter, Colors, SeverityStyle } from './base-formatter.js';
4
+ export { BaseFormatter, Colors } from './base-formatter.js';
5
5
  export { SearchFormatter } from './search-formatter.js';
6
- export { DepsFormatter } from './deps-formatter.js';
7
- export { AnalyzeFormatter } from './analyze-formatter.js';
8
- export { SnapshotFormatter } from './snapshot-formatter.js';
6
+ export { CyclesFormatter } from './cycles-formatter.js';
7
+ export { ImpactFormatter } from './impact-formatter.js';
9
8
  export { FindReferencesFormatter } from './find-references-formatter.js';
10
9
  export { CallHierarchyFormatter } from './call-hierarchy-formatter.js';
11
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAuB,MAAM,qBAAqB,CAAC;AAChG,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/infrastructure/formatters/strategies/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,EAAuB,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Logger, LogLevel, logger } from './logger.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/logging/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Logger, LogLevel, logger } from './logger.js';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/infrastructure/logging/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Logger — 全域單例日誌模組
3
+ * verbose/debug 僅在 Verbose 模式下輸出;warn 永遠輸出
4
+ * 所有輸出走 process.stderr.write,不污染 stdout
5
+ */
6
+ export declare enum LogLevel {
7
+ Silent = 0,
8
+ Normal = 1,
9
+ Verbose = 2
10
+ }
11
+ export declare class Logger {
12
+ private static _instance;
13
+ private _level;
14
+ static getInstance(): Logger;
15
+ /** 測試隔離用:重置 log level(保留 singleton 參照,避免模組快取舊實例) */
16
+ static resetInstance(): void;
17
+ setLevel(level: LogLevel): void;
18
+ getLevel(): LogLevel;
19
+ isVerbose(): boolean;
20
+ verbose(module: string, message: string): void;
21
+ warn(module: string, message: string): void;
22
+ error(module: string, message: string): void;
23
+ }
24
+ export declare const logger: Logger;
25
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/infrastructure/logging/logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,oBAAY,QAAQ;IAClB,MAAM,IAAI;IACV,MAAM,IAAI;IACV,OAAO,IAAI;CACZ;AAED,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAC,SAAS,CAAS;IACjC,OAAO,CAAC,MAAM,CAA6B;IAE3C,MAAM,CAAC,WAAW,IAAI,MAAM;IAO5B,oDAAoD;IACpD,MAAM,CAAC,aAAa,IAAI,IAAI;IAI5B,QAAQ,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAI/B,QAAQ,IAAI,QAAQ;IAIpB,SAAS,IAAI,OAAO;IAIpB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAK9C,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAK3C,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;CAI7C;AAED,eAAO,MAAM,MAAM,QAAuB,CAAC"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Logger — 全域單例日誌模組
3
+ * verbose/debug 僅在 Verbose 模式下輸出;warn 永遠輸出
4
+ * 所有輸出走 process.stderr.write,不污染 stdout
5
+ */
6
+ export var LogLevel;
7
+ (function (LogLevel) {
8
+ LogLevel[LogLevel["Silent"] = 0] = "Silent";
9
+ LogLevel[LogLevel["Normal"] = 1] = "Normal";
10
+ LogLevel[LogLevel["Verbose"] = 2] = "Verbose";
11
+ })(LogLevel || (LogLevel = {}));
12
+ export class Logger {
13
+ static _instance;
14
+ _level = LogLevel.Normal;
15
+ static getInstance() {
16
+ if (!Logger._instance) {
17
+ Logger._instance = new Logger();
18
+ }
19
+ return Logger._instance;
20
+ }
21
+ /** 測試隔離用:重置 log level(保留 singleton 參照,避免模組快取舊實例) */
22
+ static resetInstance() {
23
+ Logger.getInstance().setLevel(LogLevel.Normal);
24
+ }
25
+ setLevel(level) {
26
+ this._level = level;
27
+ }
28
+ getLevel() {
29
+ return this._level;
30
+ }
31
+ isVerbose() {
32
+ return this._level >= LogLevel.Verbose;
33
+ }
34
+ verbose(module, message) {
35
+ if (this._level < LogLevel.Verbose) {
36
+ return;
37
+ }
38
+ process.stderr.write(`[${module}] ${message}\n`);
39
+ }
40
+ warn(module, message) {
41
+ if (this._level === LogLevel.Silent) {
42
+ return;
43
+ }
44
+ process.stderr.write(`[WARN][${module}] ${message}\n`);
45
+ }
46
+ error(module, message) {
47
+ if (this._level === LogLevel.Silent) {
48
+ return;
49
+ }
50
+ process.stderr.write(`[ERROR][${module}] ${message}\n`);
51
+ }
52
+ }
53
+ export const logger = Logger.getInstance();
54
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/infrastructure/logging/logger.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,MAAM,CAAN,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,2CAAU,CAAA;IACV,2CAAU,CAAA;IACV,6CAAW,CAAA;AACb,CAAC,EAJW,QAAQ,KAAR,QAAQ,QAInB;AAED,MAAM,OAAO,MAAM;IACT,MAAM,CAAC,SAAS,CAAS;IACzB,MAAM,GAAa,QAAQ,CAAC,MAAM,CAAC;IAE3C,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,CAAC,SAAS,GAAG,IAAI,MAAM,EAAE,CAAC;QAClC,CAAC;QACD,OAAO,MAAM,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,oDAAoD;IACpD,MAAM,CAAC,aAAa;QAClB,MAAM,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACjD,CAAC;IAED,QAAQ,CAAC,KAAe;QACtB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,IAAI,QAAQ,CAAC,OAAO,CAAC;IACzC,CAAC;IAED,OAAO,CAAC,MAAc,EAAE,OAAe;QACrC,IAAI,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,OAAO,EAAE,CAAC;YAAA,OAAO;QAAA,CAAC;QAC7C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,CAAC,MAAc,EAAE,OAAe;QAClC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAAA,OAAO;QAAA,CAAC;QAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC;IACzD,CAAC;IAED,KAAK,CAAC,MAAc,EAAE,OAAe;QACnC,IAAI,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,EAAE,CAAC;YAAA,OAAO;QAAA,CAAC;QAC9C,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,WAAW,MAAM,KAAK,OAAO,IAAI,CAAC,CAAC;IAC1D,CAAC;CACF;AAED,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC"}