codesift-mcp 0.9.5 → 0.10.0

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 (1358) hide show
  1. package/README.md +62 -23
  2. package/dist/cli/commands.d.ts.map +1 -1
  3. package/dist/cli/commands.js +92 -2
  4. package/dist/cli/commands.js.map +1 -1
  5. package/dist/cli/help.d.ts +1 -1
  6. package/dist/cli/help.d.ts.map +1 -1
  7. package/dist/cli/help.js +18 -0
  8. package/dist/cli/help.js.map +1 -1
  9. package/dist/cli/hooks/input.d.ts +11 -0
  10. package/dist/cli/hooks/input.d.ts.map +1 -0
  11. package/dist/cli/hooks/input.js +111 -0
  12. package/dist/cli/hooks/input.js.map +1 -0
  13. package/dist/cli/hooks/post-tool-use.d.ts +2 -0
  14. package/dist/cli/hooks/post-tool-use.d.ts.map +1 -0
  15. package/dist/cli/hooks/post-tool-use.js +339 -0
  16. package/dist/cli/hooks/post-tool-use.js.map +1 -0
  17. package/dist/cli/hooks/pre-compact.d.ts +2 -0
  18. package/dist/cli/hooks/pre-compact.d.ts.map +1 -0
  19. package/dist/cli/hooks/pre-compact.js +41 -0
  20. package/dist/cli/hooks/pre-compact.js.map +1 -0
  21. package/dist/cli/hooks/pre-tool-use.d.ts +5 -0
  22. package/dist/cli/hooks/pre-tool-use.d.ts.map +1 -0
  23. package/dist/cli/hooks/pre-tool-use.js +215 -0
  24. package/dist/cli/hooks/pre-tool-use.js.map +1 -0
  25. package/dist/cli/hooks/session.d.ts +5 -0
  26. package/dist/cli/hooks/session.d.ts.map +1 -0
  27. package/dist/cli/hooks/session.js +188 -0
  28. package/dist/cli/hooks/session.js.map +1 -0
  29. package/dist/cli/hooks/shared.d.ts +6 -0
  30. package/dist/cli/hooks/shared.d.ts.map +1 -0
  31. package/dist/cli/hooks/shared.js +70 -0
  32. package/dist/cli/hooks/shared.js.map +1 -0
  33. package/dist/cli/hooks/wiki.d.ts +10 -0
  34. package/dist/cli/hooks/wiki.d.ts.map +1 -0
  35. package/dist/cli/hooks/wiki.js +202 -0
  36. package/dist/cli/hooks/wiki.js.map +1 -0
  37. package/dist/cli/hooks.d.ts +5 -16
  38. package/dist/cli/hooks.d.ts.map +1 -1
  39. package/dist/cli/hooks.js +5 -1132
  40. package/dist/cli/hooks.js.map +1 -1
  41. package/dist/cli/setup/claude.d.ts +4 -0
  42. package/dist/cli/setup/claude.d.ts.map +1 -0
  43. package/dist/cli/setup/claude.js +123 -0
  44. package/dist/cli/setup/claude.js.map +1 -0
  45. package/dist/cli/setup/codex.d.ts +12 -0
  46. package/dist/cli/setup/codex.d.ts.map +1 -0
  47. package/dist/cli/setup/codex.js +182 -0
  48. package/dist/cli/setup/codex.js.map +1 -0
  49. package/dist/cli/setup/cursor.d.ts +3 -0
  50. package/dist/cli/setup/cursor.d.ts.map +1 -0
  51. package/dist/cli/setup/cursor.js +6 -0
  52. package/dist/cli/setup/cursor.js.map +1 -0
  53. package/dist/cli/setup/fs.d.ts +6 -0
  54. package/dist/cli/setup/fs.d.ts.map +1 -0
  55. package/dist/cli/setup/fs.js +44 -0
  56. package/dist/cli/setup/fs.js.map +1 -0
  57. package/dist/cli/setup/gemini.d.ts +5 -0
  58. package/dist/cli/setup/gemini.d.ts.map +1 -0
  59. package/dist/cli/setup/gemini.js +46 -0
  60. package/dist/cli/setup/gemini.js.map +1 -0
  61. package/dist/cli/setup/hooks.d.ts +12 -0
  62. package/dist/cli/setup/hooks.d.ts.map +1 -0
  63. package/dist/cli/setup/hooks.js +29 -0
  64. package/dist/cli/setup/hooks.js.map +1 -0
  65. package/dist/cli/setup/mcp.d.ts +13 -0
  66. package/dist/cli/setup/mcp.d.ts.map +1 -0
  67. package/dist/cli/setup/mcp.js +104 -0
  68. package/dist/cli/setup/mcp.js.map +1 -0
  69. package/dist/cli/setup/rules.d.ts +4 -0
  70. package/dist/cli/setup/rules.d.ts.map +1 -0
  71. package/dist/cli/setup/rules.js +157 -0
  72. package/dist/cli/setup/rules.js.map +1 -0
  73. package/dist/cli/setup/types.d.ts +24 -0
  74. package/dist/cli/setup/types.d.ts.map +1 -0
  75. package/dist/cli/setup/types.js +2 -0
  76. package/dist/cli/setup/types.js.map +1 -0
  77. package/dist/cli/setup.d.ts +8 -48
  78. package/dist/cli/setup.d.ts.map +1 -1
  79. package/dist/cli/setup.js +49 -705
  80. package/dist/cli/setup.js.map +1 -1
  81. package/dist/cli/telemetry-commands.d.ts +2 -0
  82. package/dist/cli/telemetry-commands.d.ts.map +1 -0
  83. package/dist/cli/telemetry-commands.js +50 -0
  84. package/dist/cli/telemetry-commands.js.map +1 -0
  85. package/dist/config.d.ts +15 -0
  86. package/dist/config.d.ts.map +1 -1
  87. package/dist/config.js +56 -2
  88. package/dist/config.js.map +1 -1
  89. package/dist/formatter-dispatch.d.ts +53 -0
  90. package/dist/formatter-dispatch.d.ts.map +1 -0
  91. package/dist/formatter-dispatch.js +54 -0
  92. package/dist/formatter-dispatch.js.map +1 -0
  93. package/dist/formatters-analysis.d.ts +9 -0
  94. package/dist/formatters-analysis.d.ts.map +1 -0
  95. package/dist/formatters-analysis.js +166 -0
  96. package/dist/formatters-analysis.js.map +1 -0
  97. package/dist/formatters-core.d.ts +200 -0
  98. package/dist/formatters-core.d.ts.map +1 -0
  99. package/dist/formatters-core.js +206 -0
  100. package/dist/formatters-core.js.map +1 -0
  101. package/dist/formatters-graph.d.ts +124 -0
  102. package/dist/formatters-graph.d.ts.map +1 -0
  103. package/dist/formatters-graph.js +175 -0
  104. package/dist/formatters-graph.js.map +1 -0
  105. package/dist/formatters-nextjs.d.ts +22 -0
  106. package/dist/formatters-nextjs.d.ts.map +1 -0
  107. package/dist/formatters-nextjs.js +394 -0
  108. package/dist/formatters-nextjs.js.map +1 -0
  109. package/dist/formatters.d.ts +8 -349
  110. package/dist/formatters.d.ts.map +1 -1
  111. package/dist/formatters.js +10 -929
  112. package/dist/formatters.js.map +1 -1
  113. package/dist/parser/astro-template/preprocess.d.ts +12 -0
  114. package/dist/parser/astro-template/preprocess.d.ts.map +1 -0
  115. package/dist/parser/astro-template/preprocess.js +34 -0
  116. package/dist/parser/astro-template/preprocess.js.map +1 -0
  117. package/dist/parser/astro-template/resolution.d.ts +16 -0
  118. package/dist/parser/astro-template/resolution.d.ts.map +1 -0
  119. package/dist/parser/astro-template/resolution.js +58 -0
  120. package/dist/parser/astro-template/resolution.js.map +1 -0
  121. package/dist/parser/astro-template/scanner.d.ts +4 -0
  122. package/dist/parser/astro-template/scanner.d.ts.map +1 -0
  123. package/dist/parser/astro-template/scanner.js +71 -0
  124. package/dist/parser/astro-template/scanner.js.map +1 -0
  125. package/dist/parser/astro-template/state.d.ts +22 -0
  126. package/dist/parser/astro-template/state.d.ts.map +1 -0
  127. package/dist/parser/astro-template/state.js +48 -0
  128. package/dist/parser/astro-template/state.js.map +1 -0
  129. package/dist/parser/astro-template/tag-processor.d.ts +3 -0
  130. package/dist/parser/astro-template/tag-processor.d.ts.map +1 -0
  131. package/dist/parser/astro-template/tag-processor.js +63 -0
  132. package/dist/parser/astro-template/tag-processor.js.map +1 -0
  133. package/dist/parser/astro-template/types.d.ts +42 -0
  134. package/dist/parser/astro-template/types.d.ts.map +1 -0
  135. package/dist/parser/astro-template/types.js +2 -0
  136. package/dist/parser/astro-template/types.js.map +1 -0
  137. package/dist/parser/astro-template.d.ts +2 -45
  138. package/dist/parser/astro-template.d.ts.map +1 -1
  139. package/dist/parser/astro-template.js +7 -168
  140. package/dist/parser/astro-template.js.map +1 -1
  141. package/dist/parser/extractors/_shared.js +1 -1
  142. package/dist/parser/extractors/_shared.js.map +1 -1
  143. package/dist/parser/extractors/astro.js +1 -1
  144. package/dist/parser/extractors/astro.js.map +1 -1
  145. package/dist/parser/extractors/conversation.js +1 -1
  146. package/dist/parser/extractors/conversation.js.map +1 -1
  147. package/dist/parser/extractors/hono-app-discovery.d.ts +4 -0
  148. package/dist/parser/extractors/hono-app-discovery.d.ts.map +1 -0
  149. package/dist/parser/extractors/hono-app-discovery.js +169 -0
  150. package/dist/parser/extractors/hono-app-discovery.js.map +1 -0
  151. package/dist/parser/extractors/hono-ast-utils.d.ts +6 -0
  152. package/dist/parser/extractors/hono-ast-utils.d.ts.map +1 -0
  153. package/dist/parser/extractors/hono-ast-utils.js +77 -0
  154. package/dist/parser/extractors/hono-ast-utils.js.map +1 -0
  155. package/dist/parser/extractors/hono-context-extractor.d.ts +15 -0
  156. package/dist/parser/extractors/hono-context-extractor.d.ts.map +1 -0
  157. package/dist/parser/extractors/hono-context-extractor.js +191 -0
  158. package/dist/parser/extractors/hono-context-extractor.js.map +1 -0
  159. package/dist/parser/extractors/hono-middleware-extractor.d.ts +38 -0
  160. package/dist/parser/extractors/hono-middleware-extractor.d.ts.map +1 -0
  161. package/dist/parser/extractors/hono-middleware-extractor.js +480 -0
  162. package/dist/parser/extractors/hono-middleware-extractor.js.map +1 -0
  163. package/dist/parser/extractors/hono-openapi-extractor.d.ts +11 -0
  164. package/dist/parser/extractors/hono-openapi-extractor.d.ts.map +1 -0
  165. package/dist/parser/extractors/hono-openapi-extractor.js +119 -0
  166. package/dist/parser/extractors/hono-openapi-extractor.js.map +1 -0
  167. package/dist/parser/extractors/hono-route-extractor.d.ts +11 -0
  168. package/dist/parser/extractors/hono-route-extractor.d.ts.map +1 -0
  169. package/dist/parser/extractors/hono-route-extractor.js +128 -0
  170. package/dist/parser/extractors/hono-route-extractor.js.map +1 -0
  171. package/dist/parser/extractors/hono-route-utils.d.ts +11 -0
  172. package/dist/parser/extractors/hono-route-utils.d.ts.map +1 -0
  173. package/dist/parser/extractors/hono-route-utils.js +40 -0
  174. package/dist/parser/extractors/hono-route-utils.js.map +1 -0
  175. package/dist/parser/extractors/hono-runtime-extractor.d.ts +17 -0
  176. package/dist/parser/extractors/hono-runtime-extractor.d.ts.map +1 -0
  177. package/dist/parser/extractors/hono-runtime-extractor.js +141 -0
  178. package/dist/parser/extractors/hono-runtime-extractor.js.map +1 -0
  179. package/dist/parser/extractors/hono.d.ts +5 -79
  180. package/dist/parser/extractors/hono.d.ts.map +1 -1
  181. package/dist/parser/extractors/hono.js +32 -1159
  182. package/dist/parser/extractors/hono.js.map +1 -1
  183. package/dist/parser/extractors/kotlin-ast-helpers.d.ts +43 -0
  184. package/dist/parser/extractors/kotlin-ast-helpers.d.ts.map +1 -0
  185. package/dist/parser/extractors/kotlin-ast-helpers.js +187 -0
  186. package/dist/parser/extractors/kotlin-ast-helpers.js.map +1 -0
  187. package/dist/parser/extractors/kotlin-test-symbols.d.ts +21 -0
  188. package/dist/parser/extractors/kotlin-test-symbols.d.ts.map +1 -0
  189. package/dist/parser/extractors/kotlin-test-symbols.js +162 -0
  190. package/dist/parser/extractors/kotlin-test-symbols.js.map +1 -0
  191. package/dist/parser/extractors/kotlin.d.ts.map +1 -1
  192. package/dist/parser/extractors/kotlin.js +3 -334
  193. package/dist/parser/extractors/kotlin.js.map +1 -1
  194. package/dist/parser/extractors/markdown.js +1 -1
  195. package/dist/parser/extractors/markdown.js.map +1 -1
  196. package/dist/parser/extractors/prisma.js +1 -1
  197. package/dist/parser/extractors/prisma.js.map +1 -1
  198. package/dist/parser/extractors/sql-boundaries.d.ts +3 -0
  199. package/dist/parser/extractors/sql-boundaries.d.ts.map +1 -0
  200. package/dist/parser/extractors/sql-boundaries.js +19 -0
  201. package/dist/parser/extractors/sql-boundaries.js.map +1 -0
  202. package/dist/parser/extractors/sql-columns.d.ts +14 -0
  203. package/dist/parser/extractors/sql-columns.d.ts.map +1 -0
  204. package/dist/parser/extractors/sql-columns.js +59 -0
  205. package/dist/parser/extractors/sql-columns.js.map +1 -0
  206. package/dist/parser/extractors/sql-docstrings.d.ts +2 -0
  207. package/dist/parser/extractors/sql-docstrings.d.ts.map +1 -0
  208. package/dist/parser/extractors/sql-docstrings.js +45 -0
  209. package/dist/parser/extractors/sql-docstrings.js.map +1 -0
  210. package/dist/parser/extractors/sql-end-scanner.d.ts +5 -0
  211. package/dist/parser/extractors/sql-end-scanner.d.ts.map +1 -0
  212. package/dist/parser/extractors/sql-end-scanner.js +84 -0
  213. package/dist/parser/extractors/sql-end-scanner.js.map +1 -0
  214. package/dist/parser/extractors/sql-jinja.d.ts +2 -0
  215. package/dist/parser/extractors/sql-jinja.d.ts.map +1 -0
  216. package/dist/parser/extractors/sql-jinja.js +8 -0
  217. package/dist/parser/extractors/sql-jinja.js.map +1 -0
  218. package/dist/parser/extractors/sql-matcher-catalog.d.ts +9 -0
  219. package/dist/parser/extractors/sql-matcher-catalog.d.ts.map +1 -0
  220. package/dist/parser/extractors/sql-matcher-catalog.js +15 -0
  221. package/dist/parser/extractors/sql-matcher-catalog.js.map +1 -0
  222. package/dist/parser/extractors/sql-matchers.d.ts +9 -0
  223. package/dist/parser/extractors/sql-matchers.d.ts.map +1 -0
  224. package/dist/parser/extractors/sql-matchers.js +20 -0
  225. package/dist/parser/extractors/sql-matchers.js.map +1 -0
  226. package/dist/parser/extractors/sql-offsets.d.ts +2 -0
  227. package/dist/parser/extractors/sql-offsets.d.ts.map +1 -0
  228. package/dist/parser/extractors/sql-offsets.js +25 -0
  229. package/dist/parser/extractors/sql-offsets.js.map +1 -0
  230. package/dist/parser/extractors/sql-parens.d.ts +4 -0
  231. package/dist/parser/extractors/sql-parens.d.ts.map +1 -0
  232. package/dist/parser/extractors/sql-parens.js +70 -0
  233. package/dist/parser/extractors/sql-parens.js.map +1 -0
  234. package/dist/parser/extractors/sql-symbols.d.ts +11 -0
  235. package/dist/parser/extractors/sql-symbols.d.ts.map +1 -0
  236. package/dist/parser/extractors/sql-symbols.js +23 -0
  237. package/dist/parser/extractors/sql-symbols.js.map +1 -0
  238. package/dist/parser/extractors/sql.d.ts +2 -30
  239. package/dist/parser/extractors/sql.d.ts.map +1 -1
  240. package/dist/parser/extractors/sql.js +23 -496
  241. package/dist/parser/extractors/sql.js.map +1 -1
  242. package/dist/parser/extractors/typescript-cjs-nodes.d.ts +5 -0
  243. package/dist/parser/extractors/typescript-cjs-nodes.d.ts.map +1 -0
  244. package/dist/parser/extractors/typescript-cjs-nodes.js +148 -0
  245. package/dist/parser/extractors/typescript-cjs-nodes.js.map +1 -0
  246. package/dist/parser/extractors/typescript-class-nodes.d.ts +8 -0
  247. package/dist/parser/extractors/typescript-class-nodes.d.ts.map +1 -0
  248. package/dist/parser/extractors/typescript-class-nodes.js +183 -0
  249. package/dist/parser/extractors/typescript-class-nodes.js.map +1 -0
  250. package/dist/parser/extractors/typescript-declaration-nodes.d.ts +5 -0
  251. package/dist/parser/extractors/typescript-declaration-nodes.d.ts.map +1 -0
  252. package/dist/parser/extractors/typescript-declaration-nodes.js +105 -0
  253. package/dist/parser/extractors/typescript-declaration-nodes.js.map +1 -0
  254. package/dist/parser/extractors/typescript-module-nodes.d.ts +6 -0
  255. package/dist/parser/extractors/typescript-module-nodes.d.ts.map +1 -0
  256. package/dist/parser/extractors/typescript-module-nodes.js +151 -0
  257. package/dist/parser/extractors/typescript-module-nodes.js.map +1 -0
  258. package/dist/parser/extractors/typescript-react.d.ts +11 -0
  259. package/dist/parser/extractors/typescript-react.d.ts.map +1 -0
  260. package/dist/parser/extractors/typescript-react.js +101 -0
  261. package/dist/parser/extractors/typescript-react.js.map +1 -0
  262. package/dist/parser/extractors/typescript-shared.d.ts +26 -0
  263. package/dist/parser/extractors/typescript-shared.d.ts.map +1 -0
  264. package/dist/parser/extractors/typescript-shared.js +101 -0
  265. package/dist/parser/extractors/typescript-shared.js.map +1 -0
  266. package/dist/parser/extractors/typescript-test-nodes.d.ts +4 -0
  267. package/dist/parser/extractors/typescript-test-nodes.d.ts.map +1 -0
  268. package/dist/parser/extractors/typescript-test-nodes.js +112 -0
  269. package/dist/parser/extractors/typescript-test-nodes.js.map +1 -0
  270. package/dist/parser/extractors/typescript-type-nodes.d.ts +6 -0
  271. package/dist/parser/extractors/typescript-type-nodes.d.ts.map +1 -0
  272. package/dist/parser/extractors/typescript-type-nodes.js +48 -0
  273. package/dist/parser/extractors/typescript-type-nodes.js.map +1 -0
  274. package/dist/parser/extractors/typescript.d.ts.map +1 -1
  275. package/dist/parser/extractors/typescript.js +68 -1127
  276. package/dist/parser/extractors/typescript.js.map +1 -1
  277. package/dist/parser/parser-manager.d.ts.map +1 -1
  278. package/dist/parser/parser-manager.js +5 -0
  279. package/dist/parser/parser-manager.js.map +1 -1
  280. package/dist/parser/symbol-extractor.d.ts +1 -12
  281. package/dist/parser/symbol-extractor.d.ts.map +1 -1
  282. package/dist/parser/symbol-extractor.js +2 -24
  283. package/dist/parser/symbol-extractor.js.map +1 -1
  284. package/dist/parser/symbol-utils.d.ts +4 -0
  285. package/dist/parser/symbol-utils.d.ts.map +1 -0
  286. package/dist/parser/symbol-utils.js +20 -0
  287. package/dist/parser/symbol-utils.js.map +1 -0
  288. package/dist/register-tool-groups/analysis/cross-repo.d.ts +4 -0
  289. package/dist/register-tool-groups/analysis/cross-repo.d.ts.map +1 -0
  290. package/dist/register-tool-groups/analysis/cross-repo.js +108 -0
  291. package/dist/register-tool-groups/analysis/cross-repo.js.map +1 -0
  292. package/dist/register-tool-groups/analysis/review.d.ts +3 -0
  293. package/dist/register-tool-groups/analysis/review.d.ts.map +1 -0
  294. package/dist/register-tool-groups/analysis/review.js +96 -0
  295. package/dist/register-tool-groups/analysis/review.js.map +1 -0
  296. package/dist/register-tool-groups/analysis/workspace.d.ts +3 -0
  297. package/dist/register-tool-groups/analysis/workspace.d.ts.map +1 -0
  298. package/dist/register-tool-groups/analysis/workspace.js +82 -0
  299. package/dist/register-tool-groups/analysis/workspace.js.map +1 -0
  300. package/dist/register-tool-groups/analysis.d.ts +3 -0
  301. package/dist/register-tool-groups/analysis.d.ts.map +1 -0
  302. package/dist/register-tool-groups/analysis.js +541 -0
  303. package/dist/register-tool-groups/analysis.js.map +1 -0
  304. package/dist/register-tool-groups/astro.d.ts +3 -0
  305. package/dist/register-tool-groups/astro.d.ts.map +1 -0
  306. package/dist/register-tool-groups/astro.js +302 -0
  307. package/dist/register-tool-groups/astro.js.map +1 -0
  308. package/dist/register-tool-groups/core/index.d.ts +3 -0
  309. package/dist/register-tool-groups/core/index.d.ts.map +1 -0
  310. package/dist/register-tool-groups/core/index.js +96 -0
  311. package/dist/register-tool-groups/core/index.js.map +1 -0
  312. package/dist/register-tool-groups/core/meta.d.ts +3 -0
  313. package/dist/register-tool-groups/core/meta.d.ts.map +1 -0
  314. package/dist/register-tool-groups/core/meta.js +180 -0
  315. package/dist/register-tool-groups/core/meta.js.map +1 -0
  316. package/dist/register-tool-groups/core/schema.d.ts +3 -0
  317. package/dist/register-tool-groups/core/schema.d.ts.map +1 -0
  318. package/dist/register-tool-groups/core/schema.js +16 -0
  319. package/dist/register-tool-groups/core/schema.js.map +1 -0
  320. package/dist/register-tool-groups/core/search.d.ts +4 -0
  321. package/dist/register-tool-groups/core/search.d.ts.map +1 -0
  322. package/dist/register-tool-groups/core/search.js +262 -0
  323. package/dist/register-tool-groups/core/search.js.map +1 -0
  324. package/dist/register-tool-groups/core/symbols.d.ts +3 -0
  325. package/dist/register-tool-groups/core/symbols.d.ts.map +1 -0
  326. package/dist/register-tool-groups/core/symbols.js +338 -0
  327. package/dist/register-tool-groups/core/symbols.js.map +1 -0
  328. package/dist/register-tool-groups/core.d.ts +3 -0
  329. package/dist/register-tool-groups/core.d.ts.map +1 -0
  330. package/dist/register-tool-groups/core.js +12 -0
  331. package/dist/register-tool-groups/core.js.map +1 -0
  332. package/dist/register-tool-groups/deps.d.ts +10 -0
  333. package/dist/register-tool-groups/deps.d.ts.map +1 -0
  334. package/dist/register-tool-groups/deps.js +6 -0
  335. package/dist/register-tool-groups/deps.js.map +1 -0
  336. package/dist/register-tool-groups/handler-wrappers.d.ts +63 -0
  337. package/dist/register-tool-groups/handler-wrappers.d.ts.map +1 -0
  338. package/dist/register-tool-groups/handler-wrappers.js +106 -0
  339. package/dist/register-tool-groups/handler-wrappers.js.map +1 -0
  340. package/dist/register-tool-groups/hono.d.ts +3 -0
  341. package/dist/register-tool-groups/hono.d.ts.map +1 -0
  342. package/dist/register-tool-groups/hono.js +179 -0
  343. package/dist/register-tool-groups/hono.js.map +1 -0
  344. package/dist/register-tool-groups/index.d.ts +3 -0
  345. package/dist/register-tool-groups/index.d.ts.map +1 -0
  346. package/dist/register-tool-groups/index.js +28 -0
  347. package/dist/register-tool-groups/index.js.map +1 -0
  348. package/dist/register-tool-groups/kotlin.d.ts +3 -0
  349. package/dist/register-tool-groups/kotlin.d.ts.map +1 -0
  350. package/dist/register-tool-groups/kotlin.js +162 -0
  351. package/dist/register-tool-groups/kotlin.js.map +1 -0
  352. package/dist/register-tool-groups/meta.d.ts +3 -0
  353. package/dist/register-tool-groups/meta.d.ts.map +1 -0
  354. package/dist/register-tool-groups/meta.js +563 -0
  355. package/dist/register-tool-groups/meta.js.map +1 -0
  356. package/dist/register-tool-groups/nextjs.d.ts +3 -0
  357. package/dist/register-tool-groups/nextjs.d.ts.map +1 -0
  358. package/dist/register-tool-groups/nextjs.js +78 -0
  359. package/dist/register-tool-groups/nextjs.js.map +1 -0
  360. package/dist/register-tool-groups/php.d.ts +3 -0
  361. package/dist/register-tool-groups/php.d.ts.map +1 -0
  362. package/dist/register-tool-groups/php.js +312 -0
  363. package/dist/register-tool-groups/php.js.map +1 -0
  364. package/dist/register-tool-groups/python.d.ts +3 -0
  365. package/dist/register-tool-groups/python.d.ts.map +1 -0
  366. package/dist/register-tool-groups/python.js +366 -0
  367. package/dist/register-tool-groups/python.js.map +1 -0
  368. package/dist/register-tool-groups/react.d.ts +3 -0
  369. package/dist/register-tool-groups/react.d.ts.map +1 -0
  370. package/dist/register-tool-groups/react.js +119 -0
  371. package/dist/register-tool-groups/react.js.map +1 -0
  372. package/dist/register-tool-groups/shared.d.ts +156 -0
  373. package/dist/register-tool-groups/shared.d.ts.map +1 -0
  374. package/dist/register-tool-groups/shared.js +182 -0
  375. package/dist/register-tool-groups/shared.js.map +1 -0
  376. package/dist/register-tool-groups/sql.d.ts +3 -0
  377. package/dist/register-tool-groups/sql.d.ts.map +1 -0
  378. package/dist/register-tool-groups/sql.js +260 -0
  379. package/dist/register-tool-groups/sql.js.map +1 -0
  380. package/dist/register-tool-loaders.d.ts +22 -22
  381. package/dist/register-tool-loaders.d.ts.map +1 -1
  382. package/dist/register-tools/autoload.d.ts +8 -0
  383. package/dist/register-tools/autoload.d.ts.map +1 -0
  384. package/dist/register-tools/autoload.js +517 -0
  385. package/dist/register-tools/autoload.js.map +1 -0
  386. package/dist/register-tools/discovery.d.ts +55 -0
  387. package/dist/register-tools/discovery.d.ts.map +1 -0
  388. package/dist/register-tools/discovery.js +206 -0
  389. package/dist/register-tools/discovery.js.map +1 -0
  390. package/dist/register-tools/runtime.d.ts +89 -0
  391. package/dist/register-tools/runtime.d.ts.map +1 -0
  392. package/dist/register-tools/runtime.js +491 -0
  393. package/dist/register-tools/runtime.js.map +1 -0
  394. package/dist/register-tools.d.ts +5 -172
  395. package/dist/register-tools.d.ts.map +1 -1
  396. package/dist/register-tools.js +27 -4878
  397. package/dist/register-tools.js.map +1 -1
  398. package/dist/search/bm25.js +1 -1
  399. package/dist/search/bm25.js.map +1 -1
  400. package/dist/search/tool-embedding-cache.d.ts +4 -0
  401. package/dist/search/tool-embedding-cache.d.ts.map +1 -0
  402. package/dist/search/tool-embedding-cache.js +44 -0
  403. package/dist/search/tool-embedding-cache.js.map +1 -0
  404. package/dist/search/tool-embedding-storage.d.ts +8 -0
  405. package/dist/search/tool-embedding-storage.d.ts.map +1 -0
  406. package/dist/search/tool-embedding-storage.js +56 -0
  407. package/dist/search/tool-embedding-storage.js.map +1 -0
  408. package/dist/search/tool-ranker-bm25.d.ts +6 -0
  409. package/dist/search/tool-ranker-bm25.d.ts.map +1 -0
  410. package/dist/search/tool-ranker-bm25.js +40 -0
  411. package/dist/search/tool-ranker-bm25.js.map +1 -0
  412. package/dist/search/tool-ranker-orchestrator.d.ts +3 -0
  413. package/dist/search/tool-ranker-orchestrator.d.ts.map +1 -0
  414. package/dist/search/tool-ranker-orchestrator.js +49 -0
  415. package/dist/search/tool-ranker-orchestrator.js.map +1 -0
  416. package/dist/search/tool-ranker-reasoning.d.ts +4 -0
  417. package/dist/search/tool-ranker-reasoning.d.ts.map +1 -0
  418. package/dist/search/tool-ranker-reasoning.js +35 -0
  419. package/dist/search/tool-ranker-reasoning.js.map +1 -0
  420. package/dist/search/tool-ranker-signal-math.d.ts +6 -0
  421. package/dist/search/tool-ranker-signal-math.d.ts.map +1 -0
  422. package/dist/search/tool-ranker-signal-math.js +51 -0
  423. package/dist/search/tool-ranker-signal-math.js.map +1 -0
  424. package/dist/search/tool-ranker-signals.d.ts +20 -0
  425. package/dist/search/tool-ranker-signals.d.ts.map +1 -0
  426. package/dist/search/tool-ranker-signals.js +50 -0
  427. package/dist/search/tool-ranker-signals.js.map +1 -0
  428. package/dist/search/tool-ranker-types.d.ts +26 -0
  429. package/dist/search/tool-ranker-types.d.ts.map +1 -0
  430. package/dist/search/tool-ranker-types.js +2 -0
  431. package/dist/search/tool-ranker-types.js.map +1 -0
  432. package/dist/search/tool-ranker.d.ts +6 -89
  433. package/dist/search/tool-ranker.d.ts.map +1 -1
  434. package/dist/search/tool-ranker.js +5 -419
  435. package/dist/search/tool-ranker.js.map +1 -1
  436. package/dist/server-helpers/repo-resolution.d.ts +45 -0
  437. package/dist/server-helpers/repo-resolution.d.ts.map +1 -0
  438. package/dist/server-helpers/repo-resolution.js +113 -0
  439. package/dist/server-helpers/repo-resolution.js.map +1 -0
  440. package/dist/server-helpers/response-hints.d.ts +9 -0
  441. package/dist/server-helpers/response-hints.d.ts.map +1 -0
  442. package/dist/server-helpers/response-hints.js +225 -0
  443. package/dist/server-helpers/response-hints.js.map +1 -0
  444. package/dist/server-helpers.d.ts +14 -35
  445. package/dist/server-helpers.d.ts.map +1 -1
  446. package/dist/server-helpers.js +62 -322
  447. package/dist/server-helpers.js.map +1 -1
  448. package/dist/server.d.ts.map +1 -1
  449. package/dist/server.js +45 -0
  450. package/dist/server.js.map +1 -1
  451. package/dist/storage/_shared.d.ts +9 -0
  452. package/dist/storage/_shared.d.ts.map +1 -1
  453. package/dist/storage/_shared.js +24 -0
  454. package/dist/storage/_shared.js.map +1 -1
  455. package/dist/storage/telemetry/aggregator.d.ts +52 -0
  456. package/dist/storage/telemetry/aggregator.d.ts.map +1 -0
  457. package/dist/storage/telemetry/aggregator.js +188 -0
  458. package/dist/storage/telemetry/aggregator.js.map +1 -0
  459. package/dist/storage/telemetry/anon-id.d.ts +11 -0
  460. package/dist/storage/telemetry/anon-id.d.ts.map +1 -0
  461. package/dist/storage/telemetry/anon-id.js +62 -0
  462. package/dist/storage/telemetry/anon-id.js.map +1 -0
  463. package/dist/storage/telemetry/config.d.ts +37 -0
  464. package/dist/storage/telemetry/config.d.ts.map +1 -0
  465. package/dist/storage/telemetry/config.js +130 -0
  466. package/dist/storage/telemetry/config.js.map +1 -0
  467. package/dist/storage/telemetry/env-profile.d.ts +19 -0
  468. package/dist/storage/telemetry/env-profile.d.ts.map +1 -0
  469. package/dist/storage/telemetry/env-profile.js +67 -0
  470. package/dist/storage/telemetry/env-profile.js.map +1 -0
  471. package/dist/storage/telemetry/payload.d.ts +8 -0
  472. package/dist/storage/telemetry/payload.d.ts.map +1 -0
  473. package/dist/storage/telemetry/payload.js +22 -0
  474. package/dist/storage/telemetry/payload.js.map +1 -0
  475. package/dist/storage/telemetry/sanitizer.d.ts +48 -0
  476. package/dist/storage/telemetry/sanitizer.d.ts.map +1 -0
  477. package/dist/storage/telemetry/sanitizer.js +82 -0
  478. package/dist/storage/telemetry/sanitizer.js.map +1 -0
  479. package/dist/storage/telemetry/uploader.d.ts +11 -0
  480. package/dist/storage/telemetry/uploader.d.ts.map +1 -0
  481. package/dist/storage/telemetry/uploader.js +140 -0
  482. package/dist/storage/telemetry/uploader.js.map +1 -0
  483. package/dist/storage/usage-tracker.d.ts +13 -0
  484. package/dist/storage/usage-tracker.d.ts.map +1 -1
  485. package/dist/storage/usage-tracker.js +33 -0
  486. package/dist/storage/usage-tracker.js.map +1 -1
  487. package/dist/tools/astro-actions/ast.d.ts +14 -0
  488. package/dist/tools/astro-actions/ast.d.ts.map +1 -0
  489. package/dist/tools/astro-actions/ast.js +75 -0
  490. package/dist/tools/astro-actions/ast.js.map +1 -0
  491. package/dist/tools/astro-actions/audit.d.ts +5 -0
  492. package/dist/tools/astro-actions/audit.d.ts.map +1 -0
  493. package/dist/tools/astro-actions/audit.js +102 -0
  494. package/dist/tools/astro-actions/audit.js.map +1 -0
  495. package/dist/tools/astro-actions/callers.d.ts +9 -0
  496. package/dist/tools/astro-actions/callers.d.ts.map +1 -0
  497. package/dist/tools/astro-actions/callers.js +84 -0
  498. package/dist/tools/astro-actions/callers.js.map +1 -0
  499. package/dist/tools/astro-actions/parser.d.ts +3 -0
  500. package/dist/tools/astro-actions/parser.d.ts.map +1 -0
  501. package/dist/tools/astro-actions/parser.js +156 -0
  502. package/dist/tools/astro-actions/parser.js.map +1 -0
  503. package/dist/tools/astro-actions/types.d.ts +58 -0
  504. package/dist/tools/astro-actions/types.d.ts.map +1 -0
  505. package/dist/tools/astro-actions/types.js +2 -0
  506. package/dist/tools/astro-actions/types.js.map +1 -0
  507. package/dist/tools/astro-actions/zod-ast.d.ts +7 -0
  508. package/dist/tools/astro-actions/zod-ast.d.ts.map +1 -0
  509. package/dist/tools/astro-actions/zod-ast.js +51 -0
  510. package/dist/tools/astro-actions/zod-ast.js.map +1 -0
  511. package/dist/tools/astro-actions.d.ts +6 -46
  512. package/dist/tools/astro-actions.d.ts.map +1 -1
  513. package/dist/tools/astro-actions.js +6 -545
  514. package/dist/tools/astro-actions.js.map +1 -1
  515. package/dist/tools/astro-content-collections/diagnostics.d.ts +3 -0
  516. package/dist/tools/astro-content-collections/diagnostics.d.ts.map +1 -0
  517. package/dist/tools/astro-content-collections/diagnostics.js +277 -0
  518. package/dist/tools/astro-content-collections/diagnostics.js.map +1 -0
  519. package/dist/tools/astro-content-collections/discovery.d.ts +6 -0
  520. package/dist/tools/astro-content-collections/discovery.d.ts.map +1 -0
  521. package/dist/tools/astro-content-collections/discovery.js +152 -0
  522. package/dist/tools/astro-content-collections/discovery.js.map +1 -0
  523. package/dist/tools/astro-content-collections/schema.d.ts +15 -0
  524. package/dist/tools/astro-content-collections/schema.d.ts.map +1 -0
  525. package/dist/tools/astro-content-collections/schema.js +119 -0
  526. package/dist/tools/astro-content-collections/schema.js.map +1 -0
  527. package/dist/tools/astro-content-collections/types.d.ts +61 -0
  528. package/dist/tools/astro-content-collections/types.d.ts.map +1 -0
  529. package/dist/tools/astro-content-collections/types.js +2 -0
  530. package/dist/tools/astro-content-collections/types.js.map +1 -0
  531. package/dist/tools/astro-content-collections.d.ts +5 -40
  532. package/dist/tools/astro-content-collections.d.ts.map +1 -1
  533. package/dist/tools/astro-content-collections.js +42 -449
  534. package/dist/tools/astro-content-collections.js.map +1 -1
  535. package/dist/tools/astro-routes.js +1 -1
  536. package/dist/tools/astro-routes.js.map +1 -1
  537. package/dist/tools/complexity-tools.d.ts +6 -0
  538. package/dist/tools/complexity-tools.d.ts.map +1 -1
  539. package/dist/tools/complexity-tools.js +26 -0
  540. package/dist/tools/complexity-tools.js.map +1 -1
  541. package/dist/tools/context-levels/l0.d.ts +4 -0
  542. package/dist/tools/context-levels/l0.d.ts.map +1 -0
  543. package/dist/tools/context-levels/l0.js +17 -0
  544. package/dist/tools/context-levels/l0.js.map +1 -0
  545. package/dist/tools/context-levels/l1.d.ts +4 -0
  546. package/dist/tools/context-levels/l1.d.ts.map +1 -0
  547. package/dist/tools/context-levels/l1.js +26 -0
  548. package/dist/tools/context-levels/l1.js.map +1 -0
  549. package/dist/tools/context-levels/l2.d.ts +4 -0
  550. package/dist/tools/context-levels/l2.d.ts.map +1 -0
  551. package/dist/tools/context-levels/l2.js +36 -0
  552. package/dist/tools/context-levels/l2.js.map +1 -0
  553. package/dist/tools/context-levels/l3.d.ts +4 -0
  554. package/dist/tools/context-levels/l3.d.ts.map +1 -0
  555. package/dist/tools/context-levels/l3.js +30 -0
  556. package/dist/tools/context-levels/l3.js.map +1 -0
  557. package/dist/tools/context-levels/shared.d.ts +2 -0
  558. package/dist/tools/context-levels/shared.d.ts.map +1 -0
  559. package/dist/tools/context-levels/shared.js +4 -0
  560. package/dist/tools/context-levels/shared.js.map +1 -0
  561. package/dist/tools/context-levels/types.d.ts +34 -0
  562. package/dist/tools/context-levels/types.d.ts.map +1 -0
  563. package/dist/tools/context-levels/types.js +2 -0
  564. package/dist/tools/context-levels/types.js.map +1 -0
  565. package/dist/tools/context-tools.d.ts +2 -34
  566. package/dist/tools/context-tools.d.ts.map +1 -1
  567. package/dist/tools/context-tools.js +11 -127
  568. package/dist/tools/context-tools.js.map +1 -1
  569. package/dist/tools/conversation-cache.d.ts +6 -0
  570. package/dist/tools/conversation-cache.d.ts.map +1 -0
  571. package/dist/tools/conversation-cache.js +29 -0
  572. package/dist/tools/conversation-cache.js.map +1 -0
  573. package/dist/tools/conversation-index-tools.d.ts +39 -0
  574. package/dist/tools/conversation-index-tools.d.ts.map +1 -0
  575. package/dist/tools/conversation-index-tools.js +136 -0
  576. package/dist/tools/conversation-index-tools.js.map +1 -0
  577. package/dist/tools/conversation-paths.d.ts +4 -0
  578. package/dist/tools/conversation-paths.d.ts.map +1 -0
  579. package/dist/tools/conversation-paths.js +15 -0
  580. package/dist/tools/conversation-paths.js.map +1 -0
  581. package/dist/tools/conversation-search-tools.d.ts +52 -0
  582. package/dist/tools/conversation-search-tools.d.ts.map +1 -0
  583. package/dist/tools/conversation-search-tools.js +229 -0
  584. package/dist/tools/conversation-search-tools.js.map +1 -0
  585. package/dist/tools/conversation-tools.d.ts +6 -112
  586. package/dist/tools/conversation-tools.d.ts.map +1 -1
  587. package/dist/tools/conversation-tools.js +4 -425
  588. package/dist/tools/conversation-tools.js.map +1 -1
  589. package/dist/tools/cross-repo-outbound-lexer/call-detectors.d.ts +5 -0
  590. package/dist/tools/cross-repo-outbound-lexer/call-detectors.d.ts.map +1 -0
  591. package/dist/tools/cross-repo-outbound-lexer/call-detectors.js +76 -0
  592. package/dist/tools/cross-repo-outbound-lexer/call-detectors.js.map +1 -0
  593. package/dist/tools/cross-repo-outbound-lexer/context.d.ts +18 -0
  594. package/dist/tools/cross-repo-outbound-lexer/context.d.ts.map +1 -0
  595. package/dist/tools/cross-repo-outbound-lexer/context.js +33 -0
  596. package/dist/tools/cross-repo-outbound-lexer/context.js.map +1 -0
  597. package/dist/tools/cross-repo-outbound-lexer/literal-readers.d.ts +6 -0
  598. package/dist/tools/cross-repo-outbound-lexer/literal-readers.d.ts.map +1 -0
  599. package/dist/tools/cross-repo-outbound-lexer/literal-readers.js +65 -0
  600. package/dist/tools/cross-repo-outbound-lexer/literal-readers.js.map +1 -0
  601. package/dist/tools/cross-repo-outbound-lexer/non-code-states.d.ts +3 -0
  602. package/dist/tools/cross-repo-outbound-lexer/non-code-states.d.ts.map +1 -0
  603. package/dist/tools/cross-repo-outbound-lexer/non-code-states.js +103 -0
  604. package/dist/tools/cross-repo-outbound-lexer/non-code-states.js.map +1 -0
  605. package/dist/tools/cross-repo-outbound-lexer/template-reader.d.ts +3 -0
  606. package/dist/tools/cross-repo-outbound-lexer/template-reader.d.ts.map +1 -0
  607. package/dist/tools/cross-repo-outbound-lexer/template-reader.js +82 -0
  608. package/dist/tools/cross-repo-outbound-lexer/template-reader.js.map +1 -0
  609. package/dist/tools/cross-repo-outbound-lexer/types.d.ts +18 -0
  610. package/dist/tools/cross-repo-outbound-lexer/types.d.ts.map +1 -0
  611. package/dist/tools/cross-repo-outbound-lexer/types.js +2 -0
  612. package/dist/tools/cross-repo-outbound-lexer/types.js.map +1 -0
  613. package/dist/tools/cross-repo-outbound-lexer.d.ts +5 -31
  614. package/dist/tools/cross-repo-outbound-lexer.d.ts.map +1 -1
  615. package/dist/tools/cross-repo-outbound-lexer.js +75 -575
  616. package/dist/tools/cross-repo-outbound-lexer.js.map +1 -1
  617. package/dist/tools/dependency-audit-freshness-tools.d.ts +3 -0
  618. package/dist/tools/dependency-audit-freshness-tools.d.ts.map +1 -0
  619. package/dist/tools/dependency-audit-freshness-tools.js +62 -0
  620. package/dist/tools/dependency-audit-freshness-tools.js.map +1 -0
  621. package/dist/tools/dependency-audit-license-tools.d.ts +5 -0
  622. package/dist/tools/dependency-audit-license-tools.d.ts.map +1 -0
  623. package/dist/tools/dependency-audit-license-tools.js +75 -0
  624. package/dist/tools/dependency-audit-license-tools.js.map +1 -0
  625. package/dist/tools/dependency-audit-lockfile-tools.d.ts +3 -0
  626. package/dist/tools/dependency-audit-lockfile-tools.d.ts.map +1 -0
  627. package/dist/tools/dependency-audit-lockfile-tools.js +147 -0
  628. package/dist/tools/dependency-audit-lockfile-tools.js.map +1 -0
  629. package/dist/tools/dependency-audit-tools.d.ts +2 -54
  630. package/dist/tools/dependency-audit-tools.d.ts.map +1 -1
  631. package/dist/tools/dependency-audit-tools.js +69 -484
  632. package/dist/tools/dependency-audit-tools.js.map +1 -1
  633. package/dist/tools/dependency-audit-types.d.ts +65 -0
  634. package/dist/tools/dependency-audit-types.d.ts.map +1 -0
  635. package/dist/tools/dependency-audit-types.js +19 -0
  636. package/dist/tools/dependency-audit-types.js.map +1 -0
  637. package/dist/tools/dependency-audit-vulnerability-tools.d.ts +4 -0
  638. package/dist/tools/dependency-audit-vulnerability-tools.d.ts.map +1 -0
  639. package/dist/tools/dependency-audit-vulnerability-tools.js +103 -0
  640. package/dist/tools/dependency-audit-vulnerability-tools.js.map +1 -0
  641. package/dist/tools/diff-tools.d.ts.map +1 -1
  642. package/dist/tools/diff-tools.js +5 -7
  643. package/dist/tools/diff-tools.js.map +1 -1
  644. package/dist/tools/impact-tools.d.ts.map +1 -1
  645. package/dist/tools/impact-tools.js +5 -4
  646. package/dist/tools/impact-tools.js.map +1 -1
  647. package/dist/tools/index-shared.d.ts +17 -0
  648. package/dist/tools/index-shared.d.ts.map +1 -0
  649. package/dist/tools/index-shared.js +18 -0
  650. package/dist/tools/index-shared.js.map +1 -0
  651. package/dist/tools/index-tools/file-indexer.d.ts +27 -0
  652. package/dist/tools/index-tools/file-indexer.d.ts.map +1 -0
  653. package/dist/tools/index-tools/file-indexer.js +223 -0
  654. package/dist/tools/index-tools/file-indexer.js.map +1 -0
  655. package/dist/tools/index-tools/folder-indexer.d.ts +21 -0
  656. package/dist/tools/index-tools/folder-indexer.d.ts.map +1 -0
  657. package/dist/tools/index-tools/folder-indexer.js +399 -0
  658. package/dist/tools/index-tools/folder-indexer.js.map +1 -0
  659. package/dist/tools/index-tools/folder-merge.d.ts +23 -0
  660. package/dist/tools/index-tools/folder-merge.d.ts.map +1 -0
  661. package/dist/tools/index-tools/folder-merge.js +205 -0
  662. package/dist/tools/index-tools/folder-merge.js.map +1 -0
  663. package/dist/tools/index-tools/parse.d.ts +35 -0
  664. package/dist/tools/index-tools/parse.d.ts.map +1 -0
  665. package/dist/tools/index-tools/parse.js +262 -0
  666. package/dist/tools/index-tools/parse.js.map +1 -0
  667. package/dist/tools/index-tools/registry.d.ts +40 -0
  668. package/dist/tools/index-tools/registry.d.ts.map +1 -0
  669. package/dist/tools/index-tools/registry.js +258 -0
  670. package/dist/tools/index-tools/registry.js.map +1 -0
  671. package/dist/tools/index-tools/snapshots.d.ts +51 -0
  672. package/dist/tools/index-tools/snapshots.d.ts.map +1 -0
  673. package/dist/tools/index-tools/snapshots.js +223 -0
  674. package/dist/tools/index-tools/snapshots.js.map +1 -0
  675. package/dist/tools/index-tools/state.d.ts +8 -0
  676. package/dist/tools/index-tools/state.d.ts.map +1 -0
  677. package/dist/tools/index-tools/state.js +6 -0
  678. package/dist/tools/index-tools/state.js.map +1 -0
  679. package/dist/tools/index-tools/types.d.ts +20 -0
  680. package/dist/tools/index-tools/types.d.ts.map +1 -0
  681. package/dist/tools/index-tools/types.js +2 -0
  682. package/dist/tools/index-tools/types.js.map +1 -0
  683. package/dist/tools/index-tools/watcher.d.ts +10 -0
  684. package/dist/tools/index-tools/watcher.d.ts.map +1 -0
  685. package/dist/tools/index-tools/watcher.js +130 -0
  686. package/dist/tools/index-tools/watcher.js.map +1 -0
  687. package/dist/tools/index-tools.d.ts +16 -152
  688. package/dist/tools/index-tools.d.ts.map +1 -1
  689. package/dist/tools/index-tools.js +12 -1674
  690. package/dist/tools/index-tools.js.map +1 -1
  691. package/dist/tools/kotlin-extension-tools.d.ts +16 -0
  692. package/dist/tools/kotlin-extension-tools.d.ts.map +1 -0
  693. package/dist/tools/kotlin-extension-tools.js +31 -0
  694. package/dist/tools/kotlin-extension-tools.js.map +1 -0
  695. package/dist/tools/kotlin-flow-tools.d.ts +12 -0
  696. package/dist/tools/kotlin-flow-tools.d.ts.map +1 -0
  697. package/dist/tools/kotlin-flow-tools.js +72 -0
  698. package/dist/tools/kotlin-flow-tools.js.map +1 -0
  699. package/dist/tools/kotlin-kmp-tools.d.ts +29 -0
  700. package/dist/tools/kotlin-kmp-tools.d.ts.map +1 -0
  701. package/dist/tools/kotlin-kmp-tools.js +87 -0
  702. package/dist/tools/kotlin-kmp-tools.js.map +1 -0
  703. package/dist/tools/kotlin-sealed-tools.d.ts +27 -0
  704. package/dist/tools/kotlin-sealed-tools.d.ts.map +1 -0
  705. package/dist/tools/kotlin-sealed-tools.js +130 -0
  706. package/dist/tools/kotlin-sealed-tools.js.map +1 -0
  707. package/dist/tools/kotlin-suspend-tools.d.ts +24 -0
  708. package/dist/tools/kotlin-suspend-tools.d.ts.map +1 -0
  709. package/dist/tools/kotlin-suspend-tools.js +161 -0
  710. package/dist/tools/kotlin-suspend-tools.js.map +1 -0
  711. package/dist/tools/kotlin-tools.d.ts +6 -141
  712. package/dist/tools/kotlin-tools.d.ts.map +1 -1
  713. package/dist/tools/kotlin-tools.js +6 -571
  714. package/dist/tools/kotlin-tools.js.map +1 -1
  715. package/dist/tools/nest-audit-tools.d.ts +43 -0
  716. package/dist/tools/nest-audit-tools.d.ts.map +1 -0
  717. package/dist/tools/nest-audit-tools.js +232 -0
  718. package/dist/tools/nest-audit-tools.js.map +1 -0
  719. package/dist/tools/nest-di-tools.d.ts +32 -0
  720. package/dist/tools/nest-di-tools.d.ts.map +1 -0
  721. package/dist/tools/nest-di-tools.js +161 -0
  722. package/dist/tools/nest-di-tools.js.map +1 -0
  723. package/dist/tools/nest-guard-tools.d.ts +34 -0
  724. package/dist/tools/nest-guard-tools.d.ts.map +1 -0
  725. package/dist/tools/nest-guard-tools.js +240 -0
  726. package/dist/tools/nest-guard-tools.js.map +1 -0
  727. package/dist/tools/nest-lifecycle-tools.d.ts +16 -0
  728. package/dist/tools/nest-lifecycle-tools.d.ts.map +1 -0
  729. package/dist/tools/nest-lifecycle-tools.js +54 -0
  730. package/dist/tools/nest-lifecycle-tools.js.map +1 -0
  731. package/dist/tools/nest-module-tools.d.ts +28 -0
  732. package/dist/tools/nest-module-tools.d.ts.map +1 -0
  733. package/dist/tools/nest-module-tools.js +86 -0
  734. package/dist/tools/nest-module-tools.js.map +1 -0
  735. package/dist/tools/nest-pipeline-tools.d.ts +32 -0
  736. package/dist/tools/nest-pipeline-tools.d.ts.map +1 -0
  737. package/dist/tools/nest-pipeline-tools.js +122 -0
  738. package/dist/tools/nest-pipeline-tools.js.map +1 -0
  739. package/dist/tools/nest-route-tools.d.ts +43 -0
  740. package/dist/tools/nest-route-tools.d.ts.map +1 -0
  741. package/dist/tools/nest-route-tools.js +261 -0
  742. package/dist/tools/nest-route-tools.js.map +1 -0
  743. package/dist/tools/nest-shared-tools.d.ts +13 -0
  744. package/dist/tools/nest-shared-tools.d.ts.map +1 -0
  745. package/dist/tools/nest-shared-tools.js +36 -0
  746. package/dist/tools/nest-shared-tools.js.map +1 -0
  747. package/dist/tools/nest-tools.d.ts +18 -195
  748. package/dist/tools/nest-tools.d.ts.map +1 -1
  749. package/dist/tools/nest-tools.js +11 -1140
  750. package/dist/tools/nest-tools.js.map +1 -1
  751. package/dist/tools/pattern-registry.d.ts +4 -0
  752. package/dist/tools/pattern-registry.d.ts.map +1 -0
  753. package/dist/tools/pattern-registry.js +3 -0
  754. package/dist/tools/pattern-registry.js.map +1 -0
  755. package/dist/tools/pattern-tools.d.ts +5 -46
  756. package/dist/tools/pattern-tools.d.ts.map +1 -1
  757. package/dist/tools/pattern-tools.js +4 -1102
  758. package/dist/tools/pattern-tools.js.map +1 -1
  759. package/dist/tools/patterns/adapters/astro.d.ts +3 -0
  760. package/dist/tools/patterns/adapters/astro.d.ts.map +1 -0
  761. package/dist/tools/patterns/adapters/astro.js +56 -0
  762. package/dist/tools/patterns/adapters/astro.js.map +1 -0
  763. package/dist/tools/patterns/adapters/common.d.ts +3 -0
  764. package/dist/tools/patterns/adapters/common.d.ts.map +1 -0
  765. package/dist/tools/patterns/adapters/common.js +38 -0
  766. package/dist/tools/patterns/adapters/common.js.map +1 -0
  767. package/dist/tools/patterns/adapters/database.d.ts +3 -0
  768. package/dist/tools/patterns/adapters/database.d.ts.map +1 -0
  769. package/dist/tools/patterns/adapters/database.js +32 -0
  770. package/dist/tools/patterns/adapters/database.js.map +1 -0
  771. package/dist/tools/patterns/adapters/hono.d.ts +3 -0
  772. package/dist/tools/patterns/adapters/hono.d.ts.map +1 -0
  773. package/dist/tools/patterns/adapters/hono.js +32 -0
  774. package/dist/tools/patterns/adapters/hono.js.map +1 -0
  775. package/dist/tools/patterns/adapters/kotlin.d.ts +3 -0
  776. package/dist/tools/patterns/adapters/kotlin.d.ts.map +1 -0
  777. package/dist/tools/patterns/adapters/kotlin.js +50 -0
  778. package/dist/tools/patterns/adapters/kotlin.js.map +1 -0
  779. package/dist/tools/patterns/adapters/nest.d.ts +3 -0
  780. package/dist/tools/patterns/adapters/nest.d.ts.map +1 -0
  781. package/dist/tools/patterns/adapters/nest.js +122 -0
  782. package/dist/tools/patterns/adapters/nest.js.map +1 -0
  783. package/dist/tools/patterns/adapters/nextjs.d.ts +4 -0
  784. package/dist/tools/patterns/adapters/nextjs.d.ts.map +1 -0
  785. package/dist/tools/patterns/adapters/nextjs.js +59 -0
  786. package/dist/tools/patterns/adapters/nextjs.js.map +1 -0
  787. package/dist/tools/patterns/adapters/php.d.ts +3 -0
  788. package/dist/tools/patterns/adapters/php.d.ts.map +1 -0
  789. package/dist/tools/patterns/adapters/php.js +157 -0
  790. package/dist/tools/patterns/adapters/php.js.map +1 -0
  791. package/dist/tools/patterns/adapters/python.d.ts +3 -0
  792. package/dist/tools/patterns/adapters/python.d.ts.map +1 -0
  793. package/dist/tools/patterns/adapters/python.js +72 -0
  794. package/dist/tools/patterns/adapters/python.js.map +1 -0
  795. package/dist/tools/patterns/adapters/react.d.ts +4 -0
  796. package/dist/tools/patterns/adapters/react.d.ts.map +1 -0
  797. package/dist/tools/patterns/adapters/react.js +345 -0
  798. package/dist/tools/patterns/adapters/react.js.map +1 -0
  799. package/dist/tools/patterns/catalog.d.ts +8 -0
  800. package/dist/tools/patterns/catalog.d.ts.map +1 -0
  801. package/dist/tools/patterns/catalog.js +30 -0
  802. package/dist/tools/patterns/catalog.js.map +1 -0
  803. package/dist/tools/patterns/execution.d.ts +38 -0
  804. package/dist/tools/patterns/execution.d.ts.map +1 -0
  805. package/dist/tools/patterns/execution.js +298 -0
  806. package/dist/tools/patterns/execution.js.map +1 -0
  807. package/dist/tools/patterns/types.d.ts +13 -0
  808. package/dist/tools/patterns/types.d.ts.map +1 -0
  809. package/dist/tools/patterns/types.js +2 -0
  810. package/dist/tools/patterns/types.js.map +1 -0
  811. package/dist/tools/pg-drift-compare.d.ts +3 -0
  812. package/dist/tools/pg-drift-compare.d.ts.map +1 -0
  813. package/dist/tools/pg-drift-compare.js +30 -0
  814. package/dist/tools/pg-drift-compare.js.map +1 -0
  815. package/dist/tools/pg-drift-schema.d.ts +5 -0
  816. package/dist/tools/pg-drift-schema.d.ts.map +1 -0
  817. package/dist/tools/pg-drift-schema.js +28 -0
  818. package/dist/tools/pg-drift-schema.js.map +1 -0
  819. package/dist/tools/pg-drift-types.d.ts +25 -0
  820. package/dist/tools/pg-drift-types.d.ts.map +1 -0
  821. package/dist/tools/pg-drift-types.js +2 -0
  822. package/dist/tools/pg-drift-types.js.map +1 -0
  823. package/dist/tools/pg-drift.d.ts +5 -0
  824. package/dist/tools/pg-drift.d.ts.map +1 -0
  825. package/dist/tools/pg-drift.js +30 -0
  826. package/dist/tools/pg-drift.js.map +1 -0
  827. package/dist/tools/pg-introspect-formatters.d.ts +7 -0
  828. package/dist/tools/pg-introspect-formatters.d.ts.map +1 -0
  829. package/dist/tools/pg-introspect-formatters.js +66 -0
  830. package/dist/tools/pg-introspect-formatters.js.map +1 -0
  831. package/dist/tools/pg-introspect-tools.d.ts +5 -146
  832. package/dist/tools/pg-introspect-tools.d.ts.map +1 -1
  833. package/dist/tools/pg-introspect-tools.js +3 -395
  834. package/dist/tools/pg-introspect-tools.js.map +1 -1
  835. package/dist/tools/pg-introspection.d.ts +90 -0
  836. package/dist/tools/pg-introspection.d.ts.map +1 -0
  837. package/dist/tools/pg-introspection.js +288 -0
  838. package/dist/tools/pg-introspection.js.map +1 -0
  839. package/dist/tools/php-active-record-tools.d.ts +22 -0
  840. package/dist/tools/php-active-record-tools.d.ts.map +1 -0
  841. package/dist/tools/php-active-record-tools.js +165 -0
  842. package/dist/tools/php-active-record-tools.js.map +1 -0
  843. package/dist/tools/php-event-tools.d.ts +21 -0
  844. package/dist/tools/php-event-tools.d.ts.map +1 -0
  845. package/dist/tools/php-event-tools.js +205 -0
  846. package/dist/tools/php-event-tools.js.map +1 -0
  847. package/dist/tools/php-god-model-tools.d.ts +34 -0
  848. package/dist/tools/php-god-model-tools.d.ts.map +1 -0
  849. package/dist/tools/php-god-model-tools.js +88 -0
  850. package/dist/tools/php-god-model-tools.js.map +1 -0
  851. package/dist/tools/php-import-utils.d.ts +10 -0
  852. package/dist/tools/php-import-utils.d.ts.map +1 -0
  853. package/dist/tools/php-import-utils.js +71 -0
  854. package/dist/tools/php-import-utils.js.map +1 -0
  855. package/dist/tools/php-namespace-tools.d.ts +10 -0
  856. package/dist/tools/php-namespace-tools.d.ts.map +1 -0
  857. package/dist/tools/php-namespace-tools.js +98 -0
  858. package/dist/tools/php-namespace-tools.js.map +1 -0
  859. package/dist/tools/php-nplus1-tools.d.ts +27 -0
  860. package/dist/tools/php-nplus1-tools.d.ts.map +1 -0
  861. package/dist/tools/php-nplus1-tools.js +191 -0
  862. package/dist/tools/php-nplus1-tools.js.map +1 -0
  863. package/dist/tools/php-project-audit-tools.d.ts +31 -0
  864. package/dist/tools/php-project-audit-tools.d.ts.map +1 -0
  865. package/dist/tools/php-project-audit-tools.js +173 -0
  866. package/dist/tools/php-project-audit-tools.js.map +1 -0
  867. package/dist/tools/php-security-tools.d.ts +24 -0
  868. package/dist/tools/php-security-tools.d.ts.map +1 -0
  869. package/dist/tools/php-security-tools.js +172 -0
  870. package/dist/tools/php-security-tools.js.map +1 -0
  871. package/dist/tools/php-service-tools.d.ts +25 -0
  872. package/dist/tools/php-service-tools.d.ts.map +1 -0
  873. package/dist/tools/php-service-tools.js +326 -0
  874. package/dist/tools/php-service-tools.js.map +1 -0
  875. package/dist/tools/php-tools.d.ts +21 -255
  876. package/dist/tools/php-tools.d.ts.map +1 -1
  877. package/dist/tools/php-tools.js +12 -1423
  878. package/dist/tools/php-tools.js.map +1 -1
  879. package/dist/tools/php-view-tools.d.ts +76 -0
  880. package/dist/tools/php-view-tools.d.ts.map +1 -0
  881. package/dist/tools/php-view-tools.js +413 -0
  882. package/dist/tools/php-view-tools.js.map +1 -0
  883. package/dist/tools/plan-turn/formatter.d.ts +3 -0
  884. package/dist/tools/plan-turn/formatter.d.ts.map +1 -0
  885. package/dist/tools/plan-turn/formatter.js +88 -0
  886. package/dist/tools/plan-turn/formatter.js.map +1 -0
  887. package/dist/tools/plan-turn/framework-context.d.ts +5 -0
  888. package/dist/tools/plan-turn/framework-context.d.ts.map +1 -0
  889. package/dist/tools/plan-turn/framework-context.js +68 -0
  890. package/dist/tools/plan-turn/framework-context.js.map +1 -0
  891. package/dist/tools/plan-turn/framework-data.d.ts +5 -0
  892. package/dist/tools/plan-turn/framework-data.d.ts.map +1 -0
  893. package/dist/tools/plan-turn/framework-data.js +48 -0
  894. package/dist/tools/plan-turn/framework-data.js.map +1 -0
  895. package/dist/tools/plan-turn/orchestrator.d.ts +4 -0
  896. package/dist/tools/plan-turn/orchestrator.d.ts.map +1 -0
  897. package/dist/tools/plan-turn/orchestrator.js +262 -0
  898. package/dist/tools/plan-turn/orchestrator.js.map +1 -0
  899. package/dist/tools/plan-turn/query-parser.d.ts +6 -0
  900. package/dist/tools/plan-turn/query-parser.d.ts.map +1 -0
  901. package/dist/tools/plan-turn/query-parser.js +60 -0
  902. package/dist/tools/plan-turn/query-parser.js.map +1 -0
  903. package/dist/tools/plan-turn/recommendations.d.ts +11 -0
  904. package/dist/tools/plan-turn/recommendations.d.ts.map +1 -0
  905. package/dist/tools/plan-turn/recommendations.js +93 -0
  906. package/dist/tools/plan-turn/recommendations.js.map +1 -0
  907. package/dist/tools/plan-turn/stale-index.d.ts +4 -0
  908. package/dist/tools/plan-turn/stale-index.d.ts.map +1 -0
  909. package/dist/tools/plan-turn/stale-index.js +17 -0
  910. package/dist/tools/plan-turn/stale-index.js.map +1 -0
  911. package/dist/tools/plan-turn/types.d.ts +61 -0
  912. package/dist/tools/plan-turn/types.d.ts.map +1 -0
  913. package/dist/tools/plan-turn/types.js +2 -0
  914. package/dist/tools/plan-turn/types.js.map +1 -0
  915. package/dist/tools/plan-turn-tools.d.ts +8 -111
  916. package/dist/tools/plan-turn-tools.d.ts.map +1 -1
  917. package/dist/tools/plan-turn-tools.js +6 -696
  918. package/dist/tools/plan-turn-tools.js.map +1 -1
  919. package/dist/tools/project-profile-express.d.ts +3 -0
  920. package/dist/tools/project-profile-express.d.ts.map +1 -0
  921. package/dist/tools/project-profile-express.js +46 -0
  922. package/dist/tools/project-profile-express.js.map +1 -0
  923. package/dist/tools/project-profile-extractors.d.ts +9 -0
  924. package/dist/tools/project-profile-extractors.d.ts.map +1 -0
  925. package/dist/tools/project-profile-extractors.js +312 -0
  926. package/dist/tools/project-profile-extractors.js.map +1 -0
  927. package/dist/tools/project-profile-fs.d.ts +3 -0
  928. package/dist/tools/project-profile-fs.d.ts.map +1 -0
  929. package/dist/tools/project-profile-fs.js +19 -0
  930. package/dist/tools/project-profile-fs.js.map +1 -0
  931. package/dist/tools/project-profile-hono.d.ts +13 -0
  932. package/dist/tools/project-profile-hono.d.ts.map +1 -0
  933. package/dist/tools/project-profile-hono.js +110 -0
  934. package/dist/tools/project-profile-hono.js.map +1 -0
  935. package/dist/tools/project-profile-imports.d.ts +6 -0
  936. package/dist/tools/project-profile-imports.d.ts.map +1 -0
  937. package/dist/tools/project-profile-imports.js +95 -0
  938. package/dist/tools/project-profile-imports.js.map +1 -0
  939. package/dist/tools/project-profile-nest.d.ts +8 -0
  940. package/dist/tools/project-profile-nest.d.ts.map +1 -0
  941. package/dist/tools/project-profile-nest.js +352 -0
  942. package/dist/tools/project-profile-nest.js.map +1 -0
  943. package/dist/tools/project-profile-next.d.ts +5 -0
  944. package/dist/tools/project-profile-next.d.ts.map +1 -0
  945. package/dist/tools/project-profile-next.js +92 -0
  946. package/dist/tools/project-profile-next.js.map +1 -0
  947. package/dist/tools/project-profile-persistence.d.ts +3 -0
  948. package/dist/tools/project-profile-persistence.d.ts.map +1 -0
  949. package/dist/tools/project-profile-persistence.js +19 -0
  950. package/dist/tools/project-profile-persistence.js.map +1 -0
  951. package/dist/tools/project-profile-php.d.ts +8 -0
  952. package/dist/tools/project-profile-php.d.ts.map +1 -0
  953. package/dist/tools/project-profile-php.js +76 -0
  954. package/dist/tools/project-profile-php.js.map +1 -0
  955. package/dist/tools/project-profile-python.d.ts +5 -0
  956. package/dist/tools/project-profile-python.d.ts.map +1 -0
  957. package/dist/tools/project-profile-python.js +51 -0
  958. package/dist/tools/project-profile-python.js.map +1 -0
  959. package/dist/tools/project-profile-react.d.ts +6 -0
  960. package/dist/tools/project-profile-react.d.ts.map +1 -0
  961. package/dist/tools/project-profile-react.js +106 -0
  962. package/dist/tools/project-profile-react.js.map +1 -0
  963. package/dist/tools/project-profile-stack.d.ts +3 -0
  964. package/dist/tools/project-profile-stack.d.ts.map +1 -0
  965. package/dist/tools/project-profile-stack.js +354 -0
  966. package/dist/tools/project-profile-stack.js.map +1 -0
  967. package/dist/tools/project-profile-summary.d.ts +30 -0
  968. package/dist/tools/project-profile-summary.d.ts.map +1 -0
  969. package/dist/tools/project-profile-summary.js +112 -0
  970. package/dist/tools/project-profile-summary.js.map +1 -0
  971. package/dist/tools/project-profile-types.d.ts +315 -0
  972. package/dist/tools/project-profile-types.d.ts.map +1 -0
  973. package/dist/tools/project-profile-types.js +2 -0
  974. package/dist/tools/project-profile-types.js.map +1 -0
  975. package/dist/tools/project-tools.d.ts +20 -383
  976. package/dist/tools/project-tools.d.ts.map +1 -1
  977. package/dist/tools/project-tools.js +37 -1621
  978. package/dist/tools/project-tools.js.map +1 -1
  979. package/dist/tools/python-audit/aggregate.d.ts +3 -0
  980. package/dist/tools/python-audit/aggregate.d.ts.map +1 -0
  981. package/dist/tools/python-audit/aggregate.js +103 -0
  982. package/dist/tools/python-audit/aggregate.js.map +1 -0
  983. package/dist/tools/python-audit/checks/anti-patterns.d.ts +6 -0
  984. package/dist/tools/python-audit/checks/anti-patterns.d.ts.map +1 -0
  985. package/dist/tools/python-audit/checks/anti-patterns.js +14 -0
  986. package/dist/tools/python-audit/checks/anti-patterns.js.map +1 -0
  987. package/dist/tools/python-audit/checks/celery.d.ts +2 -0
  988. package/dist/tools/python-audit/checks/celery.d.ts.map +1 -0
  989. package/dist/tools/python-audit/checks/celery.js +5 -0
  990. package/dist/tools/python-audit/checks/celery.js.map +1 -0
  991. package/dist/tools/python-audit/checks/circular-imports.d.ts +2 -0
  992. package/dist/tools/python-audit/checks/circular-imports.d.ts.map +1 -0
  993. package/dist/tools/python-audit/checks/circular-imports.js +5 -0
  994. package/dist/tools/python-audit/checks/circular-imports.js.map +1 -0
  995. package/dist/tools/python-audit/checks/dead-code.d.ts +2 -0
  996. package/dist/tools/python-audit/checks/dead-code.d.ts.map +1 -0
  997. package/dist/tools/python-audit/checks/dead-code.js +5 -0
  998. package/dist/tools/python-audit/checks/dead-code.js.map +1 -0
  999. package/dist/tools/python-audit/checks/dependencies.d.ts +2 -0
  1000. package/dist/tools/python-audit/checks/dependencies.d.ts.map +1 -0
  1001. package/dist/tools/python-audit/checks/dependencies.js +5 -0
  1002. package/dist/tools/python-audit/checks/dependencies.js.map +1 -0
  1003. package/dist/tools/python-audit/checks/django-settings.d.ts +2 -0
  1004. package/dist/tools/python-audit/checks/django-settings.d.ts.map +1 -0
  1005. package/dist/tools/python-audit/checks/django-settings.js +5 -0
  1006. package/dist/tools/python-audit/checks/django-settings.js.map +1 -0
  1007. package/dist/tools/python-audit/checks/framework-wiring.d.ts +2 -0
  1008. package/dist/tools/python-audit/checks/framework-wiring.d.ts.map +1 -0
  1009. package/dist/tools/python-audit/checks/framework-wiring.js +5 -0
  1010. package/dist/tools/python-audit/checks/framework-wiring.js.map +1 -0
  1011. package/dist/tools/python-audit/checks/pytest-fixtures.d.ts +2 -0
  1012. package/dist/tools/python-audit/checks/pytest-fixtures.d.ts.map +1 -0
  1013. package/dist/tools/python-audit/checks/pytest-fixtures.js +5 -0
  1014. package/dist/tools/python-audit/checks/pytest-fixtures.js.map +1 -0
  1015. package/dist/tools/python-audit/runner.d.ts +5 -0
  1016. package/dist/tools/python-audit/runner.d.ts.map +1 -0
  1017. package/dist/tools/python-audit/runner.js +18 -0
  1018. package/dist/tools/python-audit/runner.js.map +1 -0
  1019. package/dist/tools/python-audit/types.d.ts +43 -0
  1020. package/dist/tools/python-audit/types.d.ts.map +1 -0
  1021. package/dist/tools/python-audit/types.js +2 -0
  1022. package/dist/tools/python-audit/types.js.map +1 -0
  1023. package/dist/tools/python-audit.d.ts +3 -39
  1024. package/dist/tools/python-audit.d.ts.map +1 -1
  1025. package/dist/tools/python-audit.js +34 -233
  1026. package/dist/tools/python-audit.js.map +1 -1
  1027. package/dist/tools/react-compiler-tools.d.ts +37 -0
  1028. package/dist/tools/react-compiler-tools.d.ts.map +1 -0
  1029. package/dist/tools/react-compiler-tools.js +104 -0
  1030. package/dist/tools/react-compiler-tools.js.map +1 -0
  1031. package/dist/tools/react-component-tree-tools.d.ts +58 -0
  1032. package/dist/tools/react-component-tree-tools.d.ts.map +1 -0
  1033. package/dist/tools/react-component-tree-tools.js +292 -0
  1034. package/dist/tools/react-component-tree-tools.js.map +1 -0
  1035. package/dist/tools/react-context-tools.d.ts +41 -0
  1036. package/dist/tools/react-context-tools.d.ts.map +1 -0
  1037. package/dist/tools/react-context-tools.js +76 -0
  1038. package/dist/tools/react-context-tools.js.map +1 -0
  1039. package/dist/tools/react-hooks-tools.d.ts +58 -0
  1040. package/dist/tools/react-hooks-tools.d.ts.map +1 -0
  1041. package/dist/tools/react-hooks-tools.js +144 -0
  1042. package/dist/tools/react-hooks-tools.js.map +1 -0
  1043. package/dist/tools/react-quickstart-tools.d.ts +59 -0
  1044. package/dist/tools/react-quickstart-tools.d.ts.map +1 -0
  1045. package/dist/tools/react-quickstart-tools.js +164 -0
  1046. package/dist/tools/react-quickstart-tools.js.map +1 -0
  1047. package/dist/tools/react-render-tools.d.ts +75 -0
  1048. package/dist/tools/react-render-tools.d.ts.map +1 -0
  1049. package/dist/tools/react-render-tools.js +234 -0
  1050. package/dist/tools/react-render-tools.js.map +1 -0
  1051. package/dist/tools/react-shared-tools.d.ts +5 -0
  1052. package/dist/tools/react-shared-tools.d.ts.map +1 -0
  1053. package/dist/tools/react-shared-tools.js +12 -0
  1054. package/dist/tools/react-shared-tools.js.map +1 -0
  1055. package/dist/tools/react-suspense-tools.d.ts +29 -0
  1056. package/dist/tools/react-suspense-tools.d.ts.map +1 -0
  1057. package/dist/tools/react-suspense-tools.js +269 -0
  1058. package/dist/tools/react-suspense-tools.js.map +1 -0
  1059. package/dist/tools/react-tools.d.ts +19 -340
  1060. package/dist/tools/react-tools.d.ts.map +1 -1
  1061. package/dist/tools/react-tools.js +10 -1263
  1062. package/dist/tools/react-tools.js.map +1 -1
  1063. package/dist/tools/review-diff/check-runner.d.ts +5 -0
  1064. package/dist/tools/review-diff/check-runner.d.ts.map +1 -0
  1065. package/dist/tools/review-diff/check-runner.js +26 -0
  1066. package/dist/tools/review-diff/check-runner.js.map +1 -0
  1067. package/dist/tools/review-diff/checks/astro-hydration.d.ts +8 -0
  1068. package/dist/tools/review-diff/checks/astro-hydration.d.ts.map +1 -0
  1069. package/dist/tools/review-diff/checks/astro-hydration.js +54 -0
  1070. package/dist/tools/review-diff/checks/astro-hydration.js.map +1 -0
  1071. package/dist/tools/review-diff/checks/blast-radius.d.ts +7 -0
  1072. package/dist/tools/review-diff/checks/blast-radius.d.ts.map +1 -0
  1073. package/dist/tools/review-diff/checks/blast-radius.js +39 -0
  1074. package/dist/tools/review-diff/checks/blast-radius.js.map +1 -0
  1075. package/dist/tools/review-diff/checks/breaking.d.ts +13 -0
  1076. package/dist/tools/review-diff/checks/breaking.d.ts.map +1 -0
  1077. package/dist/tools/review-diff/checks/breaking.js +115 -0
  1078. package/dist/tools/review-diff/checks/breaking.js.map +1 -0
  1079. package/dist/tools/review-diff/checks/bug-patterns.d.ts +8 -0
  1080. package/dist/tools/review-diff/checks/bug-patterns.d.ts.map +1 -0
  1081. package/dist/tools/review-diff/checks/bug-patterns.js +130 -0
  1082. package/dist/tools/review-diff/checks/bug-patterns.js.map +1 -0
  1083. package/dist/tools/review-diff/checks/complexity.d.ts +8 -0
  1084. package/dist/tools/review-diff/checks/complexity.d.ts.map +1 -0
  1085. package/dist/tools/review-diff/checks/complexity.js +41 -0
  1086. package/dist/tools/review-diff/checks/complexity.js.map +1 -0
  1087. package/dist/tools/review-diff/checks/coupling.d.ts +7 -0
  1088. package/dist/tools/review-diff/checks/coupling.d.ts.map +1 -0
  1089. package/dist/tools/review-diff/checks/coupling.js +52 -0
  1090. package/dist/tools/review-diff/checks/coupling.js.map +1 -0
  1091. package/dist/tools/review-diff/checks/dead-code.d.ts +7 -0
  1092. package/dist/tools/review-diff/checks/dead-code.d.ts.map +1 -0
  1093. package/dist/tools/review-diff/checks/dead-code.js +39 -0
  1094. package/dist/tools/review-diff/checks/dead-code.js.map +1 -0
  1095. package/dist/tools/review-diff/checks/hotspots.d.ts +8 -0
  1096. package/dist/tools/review-diff/checks/hotspots.d.ts.map +1 -0
  1097. package/dist/tools/review-diff/checks/hotspots.js +39 -0
  1098. package/dist/tools/review-diff/checks/hotspots.js.map +1 -0
  1099. package/dist/tools/review-diff/checks/secrets.d.ts +7 -0
  1100. package/dist/tools/review-diff/checks/secrets.d.ts.map +1 -0
  1101. package/dist/tools/review-diff/checks/secrets.js +38 -0
  1102. package/dist/tools/review-diff/checks/secrets.js.map +1 -0
  1103. package/dist/tools/review-diff/checks/test-gaps.d.ts +16 -0
  1104. package/dist/tools/review-diff/checks/test-gaps.d.ts.map +1 -0
  1105. package/dist/tools/review-diff/checks/test-gaps.js +77 -0
  1106. package/dist/tools/review-diff/checks/test-gaps.js.map +1 -0
  1107. package/dist/tools/review-diff/constants.d.ts +6 -0
  1108. package/dist/tools/review-diff/constants.d.ts.map +1 -0
  1109. package/dist/tools/review-diff/constants.js +16 -0
  1110. package/dist/tools/review-diff/constants.js.map +1 -0
  1111. package/dist/tools/review-diff/file-pattern.d.ts +2 -0
  1112. package/dist/tools/review-diff/file-pattern.d.ts.map +1 -0
  1113. package/dist/tools/review-diff/file-pattern.js +9 -0
  1114. package/dist/tools/review-diff/file-pattern.js.map +1 -0
  1115. package/dist/tools/review-diff/orchestrator.d.ts +3 -0
  1116. package/dist/tools/review-diff/orchestrator.d.ts.map +1 -0
  1117. package/dist/tools/review-diff/orchestrator.js +173 -0
  1118. package/dist/tools/review-diff/orchestrator.js.map +1 -0
  1119. package/dist/tools/review-diff/scoring.d.ts +31 -0
  1120. package/dist/tools/review-diff/scoring.d.ts.map +1 -0
  1121. package/dist/tools/review-diff/scoring.js +82 -0
  1122. package/dist/tools/review-diff/scoring.js.map +1 -0
  1123. package/dist/tools/review-diff/timeout.d.ts +5 -0
  1124. package/dist/tools/review-diff/timeout.d.ts.map +1 -0
  1125. package/dist/tools/review-diff/timeout.js +14 -0
  1126. package/dist/tools/review-diff/timeout.js.map +1 -0
  1127. package/dist/tools/review-diff/types.d.ts +56 -0
  1128. package/dist/tools/review-diff/types.d.ts.map +1 -0
  1129. package/dist/tools/review-diff/types.js +2 -0
  1130. package/dist/tools/review-diff/types.js.map +1 -0
  1131. package/dist/tools/review-diff-tools.d.ts +19 -147
  1132. package/dist/tools/review-diff-tools.d.ts.map +1 -1
  1133. package/dist/tools/review-diff-tools.js +18 -941
  1134. package/dist/tools/review-diff-tools.js.map +1 -1
  1135. package/dist/tools/route-shared.d.ts +6 -0
  1136. package/dist/tools/route-shared.d.ts.map +1 -0
  1137. package/dist/tools/route-shared.js +37 -0
  1138. package/dist/tools/route-shared.js.map +1 -0
  1139. package/dist/tools/route-tools.d.ts +1 -7
  1140. package/dist/tools/route-tools.d.ts.map +1 -1
  1141. package/dist/tools/route-tools.js +2 -22
  1142. package/dist/tools/route-tools.js.map +1 -1
  1143. package/dist/tools/search-tools/constants.d.ts +33 -0
  1144. package/dist/tools/search-tools/constants.d.ts.map +1 -0
  1145. package/dist/tools/search-tools/constants.js +54 -0
  1146. package/dist/tools/search-tools/constants.js.map +1 -0
  1147. package/dist/tools/search-tools/ripgrep.d.ts +13 -0
  1148. package/dist/tools/search-tools/ripgrep.d.ts.map +1 -0
  1149. package/dist/tools/search-tools/ripgrep.js +138 -0
  1150. package/dist/tools/search-tools/ripgrep.js.map +1 -0
  1151. package/dist/tools/search-tools/semantic-search.d.ts +9 -0
  1152. package/dist/tools/search-tools/semantic-search.d.ts.map +1 -0
  1153. package/dist/tools/search-tools/semantic-search.js +19 -0
  1154. package/dist/tools/search-tools/semantic-search.js.map +1 -0
  1155. package/dist/tools/search-tools/symbol-search.d.ts +4 -0
  1156. package/dist/tools/search-tools/symbol-search.d.ts.map +1 -0
  1157. package/dist/tools/search-tools/symbol-search.js +146 -0
  1158. package/dist/tools/search-tools/symbol-search.js.map +1 -0
  1159. package/dist/tools/search-tools/text-search.d.ts +10 -0
  1160. package/dist/tools/search-tools/text-search.d.ts.map +1 -0
  1161. package/dist/tools/search-tools/text-search.js +260 -0
  1162. package/dist/tools/search-tools/text-search.js.map +1 -0
  1163. package/dist/tools/search-tools/types.d.ts +28 -0
  1164. package/dist/tools/search-tools/types.d.ts.map +1 -0
  1165. package/dist/tools/search-tools/types.js +2 -0
  1166. package/dist/tools/search-tools/types.js.map +1 -0
  1167. package/dist/tools/search-tools/zero-hit.d.ts +3 -0
  1168. package/dist/tools/search-tools/zero-hit.d.ts.map +1 -0
  1169. package/dist/tools/search-tools/zero-hit.js +92 -0
  1170. package/dist/tools/search-tools/zero-hit.js.map +1 -0
  1171. package/dist/tools/search-tools.d.ts +5 -64
  1172. package/dist/tools/search-tools.d.ts.map +1 -1
  1173. package/dist/tools/search-tools.js +4 -770
  1174. package/dist/tools/search-tools.js.map +1 -1
  1175. package/dist/tools/secret-detectors.d.ts +12 -0
  1176. package/dist/tools/secret-detectors.d.ts.map +1 -0
  1177. package/dist/tools/secret-detectors.js +86 -0
  1178. package/dist/tools/secret-detectors.js.map +1 -0
  1179. package/dist/tools/secret-file-scanner.d.ts +7 -0
  1180. package/dist/tools/secret-file-scanner.d.ts.map +1 -0
  1181. package/dist/tools/secret-file-scanner.js +52 -0
  1182. package/dist/tools/secret-file-scanner.js.map +1 -0
  1183. package/dist/tools/secret-scan-cache.d.ts +6 -0
  1184. package/dist/tools/secret-scan-cache.d.ts.map +1 -0
  1185. package/dist/tools/secret-scan-cache.js +14 -0
  1186. package/dist/tools/secret-scan-cache.js.map +1 -0
  1187. package/dist/tools/secret-scan-shared.d.ts +5 -0
  1188. package/dist/tools/secret-scan-shared.d.ts.map +1 -0
  1189. package/dist/tools/secret-scan-shared.js +4 -0
  1190. package/dist/tools/secret-scan-shared.js.map +1 -0
  1191. package/dist/tools/secret-scan-types.d.ts +21 -0
  1192. package/dist/tools/secret-scan-types.d.ts.map +1 -0
  1193. package/dist/tools/secret-scan-types.js +2 -0
  1194. package/dist/tools/secret-scan-types.js.map +1 -0
  1195. package/dist/tools/secret-tools.d.ts +3 -75
  1196. package/dist/tools/secret-tools.d.ts.map +1 -1
  1197. package/dist/tools/secret-tools.js +4 -316
  1198. package/dist/tools/secret-tools.js.map +1 -1
  1199. package/dist/tools/sql-audit-tools.d.ts +42 -0
  1200. package/dist/tools/sql-audit-tools.d.ts.map +1 -0
  1201. package/dist/tools/sql-audit-tools.js +130 -0
  1202. package/dist/tools/sql-audit-tools.js.map +1 -0
  1203. package/dist/tools/sql-column-tools.d.ts +28 -0
  1204. package/dist/tools/sql-column-tools.d.ts.map +1 -0
  1205. package/dist/tools/sql-column-tools.js +58 -0
  1206. package/dist/tools/sql-column-tools.js.map +1 -0
  1207. package/dist/tools/sql-complexity-tools.d.ts +22 -0
  1208. package/dist/tools/sql-complexity-tools.d.ts.map +1 -0
  1209. package/dist/tools/sql-complexity-tools.js +60 -0
  1210. package/dist/tools/sql-complexity-tools.js.map +1 -0
  1211. package/dist/tools/sql-dml-safety-tools.d.ts +26 -0
  1212. package/dist/tools/sql-dml-safety-tools.d.ts.map +1 -0
  1213. package/dist/tools/sql-dml-safety-tools.js +104 -0
  1214. package/dist/tools/sql-dml-safety-tools.js.map +1 -0
  1215. package/dist/tools/sql-drift-tools.d.ts +39 -0
  1216. package/dist/tools/sql-drift-tools.d.ts.map +1 -0
  1217. package/dist/tools/sql-drift-tools.js +238 -0
  1218. package/dist/tools/sql-drift-tools.js.map +1 -0
  1219. package/dist/tools/sql-lint-schema-tools.d.ts +28 -0
  1220. package/dist/tools/sql-lint-schema-tools.d.ts.map +1 -0
  1221. package/dist/tools/sql-lint-schema-tools.js +96 -0
  1222. package/dist/tools/sql-lint-schema-tools.js.map +1 -0
  1223. package/dist/tools/sql-migration-diff-tools.d.ts +24 -0
  1224. package/dist/tools/sql-migration-diff-tools.d.ts.map +1 -0
  1225. package/dist/tools/sql-migration-diff-tools.js +120 -0
  1226. package/dist/tools/sql-migration-diff-tools.js.map +1 -0
  1227. package/dist/tools/sql-orphan-table-tools.d.ts +20 -0
  1228. package/dist/tools/sql-orphan-table-tools.d.ts.map +1 -0
  1229. package/dist/tools/sql-orphan-table-tools.js +70 -0
  1230. package/dist/tools/sql-orphan-table-tools.js.map +1 -0
  1231. package/dist/tools/sql-query-tools.d.ts +32 -0
  1232. package/dist/tools/sql-query-tools.d.ts.map +1 -0
  1233. package/dist/tools/sql-query-tools.js +130 -0
  1234. package/dist/tools/sql-query-tools.js.map +1 -0
  1235. package/dist/tools/sql-schema-tools.d.ts +47 -0
  1236. package/dist/tools/sql-schema-tools.d.ts.map +1 -0
  1237. package/dist/tools/sql-schema-tools.js +202 -0
  1238. package/dist/tools/sql-schema-tools.js.map +1 -0
  1239. package/dist/tools/sql-shared-tools.d.ts +6 -0
  1240. package/dist/tools/sql-shared-tools.d.ts.map +1 -0
  1241. package/dist/tools/sql-shared-tools.js +59 -0
  1242. package/dist/tools/sql-shared-tools.js.map +1 -0
  1243. package/dist/tools/sql-tools.d.ts +25 -296
  1244. package/dist/tools/sql-tools.d.ts.map +1 -1
  1245. package/dist/tools/sql-tools.js +15 -1232
  1246. package/dist/tools/sql-tools.js.map +1 -1
  1247. package/dist/tools/status-tools.js +1 -1
  1248. package/dist/tools/status-tools.js.map +1 -1
  1249. package/dist/tools/workspace-tools.d.ts +1 -1
  1250. package/dist/tools/yii3-migration-categories-application.d.ts +4 -0
  1251. package/dist/tools/yii3-migration-categories-application.d.ts.map +1 -0
  1252. package/dist/tools/yii3-migration-categories-application.js +56 -0
  1253. package/dist/tools/yii3-migration-categories-application.js.map +1 -0
  1254. package/dist/tools/yii3-migration-categories-infrastructure.d.ts +4 -0
  1255. package/dist/tools/yii3-migration-categories-infrastructure.d.ts.map +1 -0
  1256. package/dist/tools/yii3-migration-categories-infrastructure.js +67 -0
  1257. package/dist/tools/yii3-migration-categories-infrastructure.js.map +1 -0
  1258. package/dist/tools/yii3-migration-categories-model-view.d.ts +4 -0
  1259. package/dist/tools/yii3-migration-categories-model-view.d.ts.map +1 -0
  1260. package/dist/tools/yii3-migration-categories-model-view.js +59 -0
  1261. package/dist/tools/yii3-migration-categories-model-view.js.map +1 -0
  1262. package/dist/tools/yii3-migration-categories-runtime.d.ts +4 -0
  1263. package/dist/tools/yii3-migration-categories-runtime.d.ts.map +1 -0
  1264. package/dist/tools/yii3-migration-categories-runtime.js +49 -0
  1265. package/dist/tools/yii3-migration-categories-runtime.js.map +1 -0
  1266. package/dist/tools/yii3-migration-categories.d.ts +5 -0
  1267. package/dist/tools/yii3-migration-categories.d.ts.map +1 -0
  1268. package/dist/tools/yii3-migration-categories.js +18 -0
  1269. package/dist/tools/yii3-migration-categories.js.map +1 -0
  1270. package/dist/tools/yii3-migration-report.d.ts +4 -0
  1271. package/dist/tools/yii3-migration-report.d.ts.map +1 -0
  1272. package/dist/tools/yii3-migration-report.js +88 -0
  1273. package/dist/tools/yii3-migration-report.js.map +1 -0
  1274. package/dist/tools/yii3-migration-scanner.d.ts +28 -0
  1275. package/dist/tools/yii3-migration-scanner.d.ts.map +1 -0
  1276. package/dist/tools/yii3-migration-scanner.js +87 -0
  1277. package/dist/tools/yii3-migration-scanner.js.map +1 -0
  1278. package/dist/tools/yii3-migration-tools.d.ts +4 -73
  1279. package/dist/tools/yii3-migration-tools.d.ts.map +1 -1
  1280. package/dist/tools/yii3-migration-tools.js +5 -433
  1281. package/dist/tools/yii3-migration-tools.js.map +1 -1
  1282. package/dist/tools/yii3-migration-types.d.ts +50 -0
  1283. package/dist/tools/yii3-migration-types.d.ts.map +1 -0
  1284. package/dist/tools/yii3-migration-types.js +3 -0
  1285. package/dist/tools/yii3-migration-types.js.map +1 -0
  1286. package/dist/utils/edge-provenance.d.ts +55 -0
  1287. package/dist/utils/edge-provenance.d.ts.map +1 -0
  1288. package/dist/utils/edge-provenance.js +53 -0
  1289. package/dist/utils/edge-provenance.js.map +1 -0
  1290. package/dist/utils/git-validation.d.ts +24 -0
  1291. package/dist/utils/git-validation.d.ts.map +1 -1
  1292. package/dist/utils/git-validation.js +30 -0
  1293. package/dist/utils/git-validation.js.map +1 -1
  1294. package/dist/utils/overlay-cache.d.ts +38 -0
  1295. package/dist/utils/overlay-cache.d.ts.map +1 -0
  1296. package/dist/utils/overlay-cache.js +73 -0
  1297. package/dist/utils/overlay-cache.js.map +1 -0
  1298. package/dist/utils/source-stripper/code-handler.d.ts +3 -0
  1299. package/dist/utils/source-stripper/code-handler.d.ts.map +1 -0
  1300. package/dist/utils/source-stripper/code-handler.js +79 -0
  1301. package/dist/utils/source-stripper/code-handler.js.map +1 -0
  1302. package/dist/utils/source-stripper/comment-handler.d.ts +4 -0
  1303. package/dist/utils/source-stripper/comment-handler.d.ts.map +1 -0
  1304. package/dist/utils/source-stripper/comment-handler.js +24 -0
  1305. package/dist/utils/source-stripper/comment-handler.js.map +1 -0
  1306. package/dist/utils/source-stripper/machine.d.ts +2 -0
  1307. package/dist/utils/source-stripper/machine.d.ts.map +1 -0
  1308. package/dist/utils/source-stripper/machine.js +34 -0
  1309. package/dist/utils/source-stripper/machine.js.map +1 -0
  1310. package/dist/utils/source-stripper/regex-handler.d.ts +3 -0
  1311. package/dist/utils/source-stripper/regex-handler.d.ts.map +1 -0
  1312. package/dist/utils/source-stripper/regex-handler.js +44 -0
  1313. package/dist/utils/source-stripper/regex-handler.js.map +1 -0
  1314. package/dist/utils/source-stripper/state.d.ts +4 -0
  1315. package/dist/utils/source-stripper/state.d.ts.map +1 -0
  1316. package/dist/utils/source-stripper/state.js +20 -0
  1317. package/dist/utils/source-stripper/state.js.map +1 -0
  1318. package/dist/utils/source-stripper/string-handler.d.ts +3 -0
  1319. package/dist/utils/source-stripper/string-handler.d.ts.map +1 -0
  1320. package/dist/utils/source-stripper/string-handler.js +19 -0
  1321. package/dist/utils/source-stripper/string-handler.js.map +1 -0
  1322. package/dist/utils/source-stripper/template-handler.d.ts +4 -0
  1323. package/dist/utils/source-stripper/template-handler.d.ts.map +1 -0
  1324. package/dist/utils/source-stripper/template-handler.js +40 -0
  1325. package/dist/utils/source-stripper/template-handler.js.map +1 -0
  1326. package/dist/utils/source-stripper/types.d.ts +17 -0
  1327. package/dist/utils/source-stripper/types.d.ts.map +1 -0
  1328. package/dist/utils/source-stripper/types.js +4 -0
  1329. package/dist/utils/source-stripper/types.js.map +1 -0
  1330. package/dist/utils/source-stripper.d.ts +0 -21
  1331. package/dist/utils/source-stripper.d.ts.map +1 -1
  1332. package/dist/utils/source-stripper.js +6 -234
  1333. package/dist/utils/source-stripper.js.map +1 -1
  1334. package/dist/utils/walk/errors.d.ts +4 -0
  1335. package/dist/utils/walk/errors.d.ts.map +1 -0
  1336. package/dist/utils/walk/errors.js +18 -0
  1337. package/dist/utils/walk/errors.js.map +1 -0
  1338. package/dist/utils/walk/filters.d.ts +11 -0
  1339. package/dist/utils/walk/filters.d.ts.map +1 -0
  1340. package/dist/utils/walk/filters.js +53 -0
  1341. package/dist/utils/walk/filters.js.map +1 -0
  1342. package/dist/utils/walk/limits.d.ts +10 -0
  1343. package/dist/utils/walk/limits.d.ts.map +1 -0
  1344. package/dist/utils/walk/limits.js +22 -0
  1345. package/dist/utils/walk/limits.js.map +1 -0
  1346. package/dist/utils/walk/traversal.d.ts +9 -0
  1347. package/dist/utils/walk/traversal.d.ts.map +1 -0
  1348. package/dist/utils/walk/traversal.js +38 -0
  1349. package/dist/utils/walk/traversal.js.map +1 -0
  1350. package/dist/utils/walk/types.d.ts +18 -0
  1351. package/dist/utils/walk/types.d.ts.map +1 -0
  1352. package/dist/utils/walk/types.js +2 -0
  1353. package/dist/utils/walk/types.js.map +1 -0
  1354. package/dist/utils/walk.d.ts +4 -65
  1355. package/dist/utils/walk.d.ts.map +1 -1
  1356. package/dist/utils/walk.js +23 -151
  1357. package/dist/utils/walk.js.map +1 -1
  1358. package/package.json +6 -5
@@ -0,0 +1,59 @@
1
+ export interface ReactQuickstartResult {
2
+ /** Repository overview */
3
+ overview: {
4
+ total_components: number;
5
+ total_custom_hooks: number;
6
+ likely_root_component: string | null;
7
+ stack: {
8
+ state_management: string | null;
9
+ routing: string | null;
10
+ ui_library: string | null;
11
+ form_library: string | null;
12
+ build_tool: string | null;
13
+ };
14
+ };
15
+ /**
16
+ * High-priority pattern hits for onboarding. Entries use `severity: "critical"` for
17
+ * XSS / Rule-of-Hooks / effect-loop issues. For **backward compatibility**, legacy
18
+ * scans that were pre–Tier 5 (`useEffect-missing-cleanup`, `rsc-non-serializable-prop`)
19
+ * remain in this array with `severity: "warning"` — do not assume the field name
20
+ * implies severity. Tier 5 warning-only patterns live in `warnings`; style bucket in `style_issues`.
21
+ */
22
+ critical_issues: Array<{
23
+ pattern: string;
24
+ count: number;
25
+ severity: "critical" | "warning";
26
+ }>;
27
+ /** Tier 5: warning-severity findings (derived-state, stale-closure, context value inline) */
28
+ warnings: Array<{
29
+ pattern: string;
30
+ count: number;
31
+ severity: "warning";
32
+ }>;
33
+ /** Tier 5: style-severity findings (button-no-type, jsx-no-target-blank) */
34
+ style_issues: Array<{
35
+ pattern: string;
36
+ count: number;
37
+ severity: "style";
38
+ }>;
39
+ /** Top 5 most-used hooks across components */
40
+ top_hooks: Array<{
41
+ name: string;
42
+ count: number;
43
+ }>;
44
+ /** Suggested next queries for the agent to run */
45
+ suggested_queries: string[];
46
+ }
47
+ /**
48
+ * Day-1 onboarding composite for React projects. Single call that runs:
49
+ * - Component/hook inventory
50
+ * - Stack detection (state mgmt, routing, UI lib, form lib, build tool)
51
+ * - Critical pattern scan (XSS, Rule of Hooks, memory leaks)
52
+ * - Top hook usage summary
53
+ * - Suggested follow-up queries
54
+ *
55
+ * Meant to be the first tool a React developer runs on an unfamiliar codebase.
56
+ * Replaces 5-6 manual tool calls with one structured report.
57
+ */
58
+ export declare function reactQuickstart(repo: string): Promise<ReactQuickstartResult>;
59
+ //# sourceMappingURL=react-quickstart-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-quickstart-tools.d.ts","sourceRoot":"","sources":["../../src/tools/react-quickstart-tools.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,qBAAqB;IACpC,0BAA0B;IAC1B,QAAQ,EAAE;QACR,gBAAgB,EAAE,MAAM,CAAC;QACzB,kBAAkB,EAAE,MAAM,CAAC;QAC3B,qBAAqB,EAAE,MAAM,GAAG,IAAI,CAAC;QACrC,KAAK,EAAE;YACL,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;YAChC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;YACvB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;YAC1B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;YAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;SAC3B,CAAC;KACH,CAAC;IACF;;;;;;OAMG;IACH,eAAe,EAAE,KAAK,CAAC;QACrB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,UAAU,GAAG,SAAS,CAAC;KAClC,CAAC,CAAC;IACH,6FAA6F;IAC7F,QAAQ,EAAE,KAAK,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,SAAS,CAAC;KACrB,CAAC,CAAC;IACH,4EAA4E;IAC5E,YAAY,EAAE,KAAK,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,QAAQ,EAAE,OAAO,CAAC;KACnB,CAAC,CAAC;IACH,8CAA8C;IAC9C,SAAS,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,kDAAkD;IAClD,iBAAiB,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,eAAe,CACnC,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,qBAAqB,CAAC,CAsJhC"}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * React day-1 onboarding composite.
3
+ */
4
+ import { getCodeIndex } from "./index-tools.js";
5
+ import { isTestFileStrict as isTestFile } from "../utils/test-file.js";
6
+ /**
7
+ * Day-1 onboarding composite for React projects. Single call that runs:
8
+ * - Component/hook inventory
9
+ * - Stack detection (state mgmt, routing, UI lib, form lib, build tool)
10
+ * - Critical pattern scan (XSS, Rule of Hooks, memory leaks)
11
+ * - Top hook usage summary
12
+ * - Suggested follow-up queries
13
+ *
14
+ * Meant to be the first tool a React developer runs on an unfamiliar codebase.
15
+ * Replaces 5-6 manual tool calls with one structured report.
16
+ */
17
+ export async function reactQuickstart(repo) {
18
+ const { searchPatterns } = await import("./pattern-tools.js");
19
+ const { analyzeProject } = await import("./project-tools.js");
20
+ const index = await getCodeIndex(repo);
21
+ if (!index)
22
+ throw new Error(`Repository not found: ${repo}`);
23
+ // Inventory
24
+ const components = index.symbols.filter((s) => s.kind === "component" && !isTestFile(s.file));
25
+ const hooks = index.symbols.filter((s) => s.kind === "hook" && !isTestFile(s.file));
26
+ // Find likely root component: prefer App > Root > Main > Layout > Page
27
+ const rootNames = ["App", "Root", "Main", "Layout", "Page"];
28
+ const likelyRoot = components.find((c) => rootNames.includes(c.name))?.name
29
+ ?? components[0]?.name
30
+ ?? null;
31
+ // Stack detection via analyze_project
32
+ let stack = {
33
+ state_management: null,
34
+ routing: null,
35
+ ui_library: null,
36
+ form_library: null,
37
+ build_tool: null,
38
+ };
39
+ try {
40
+ const proj = await analyzeProject(repo, { force: false });
41
+ const rc = proj?.conventions?.react_conventions;
42
+ const si = proj?.stack;
43
+ if (rc) {
44
+ stack = {
45
+ state_management: rc.state_management ?? null,
46
+ routing: rc.routing ?? null,
47
+ ui_library: rc.ui_library ?? null,
48
+ form_library: rc.form_library ?? null,
49
+ build_tool: si?.build_tool ?? null,
50
+ };
51
+ }
52
+ else if (si) {
53
+ stack.build_tool = si.build_tool ?? null;
54
+ }
55
+ }
56
+ catch {
57
+ // analyze_project may fail on non-React repos — fall through
58
+ }
59
+ // Critical pattern scans — run in parallel.
60
+ // Tier 5: scan list expanded with new patterns, results routed to severity-based buckets.
61
+ const scanList = [
62
+ { name: "dangerously-set-html", severity: "critical" },
63
+ { name: "hook-in-condition", severity: "critical" },
64
+ { name: "conditional-render-hook", severity: "critical" },
65
+ { name: "useEffect-missing-cleanup", severity: "warning" },
66
+ { name: "useEffect-setstate-loop", severity: "critical" },
67
+ { name: "rsc-non-serializable-prop", severity: "warning" },
68
+ // Tier 5 — warning bucket
69
+ { name: "derived-state", severity: "warning" },
70
+ { name: "stale-closure-setstate", severity: "warning" },
71
+ { name: "context-provider-value-inline", severity: "warning" },
72
+ // Tier 5 — warning (tabnabbing): surfaced in critical_issues with legacy warnings
73
+ { name: "jsx-no-target-blank", severity: "warning" },
74
+ { name: "button-no-type", severity: "style" },
75
+ // Tier 6 — extending Tier 5 coverage
76
+ { name: "derived-state-reducer", severity: "warning" },
77
+ { name: "derived-state-custom-setter", severity: "warning" },
78
+ { name: "stale-closure-toggle", severity: "warning" },
79
+ { name: "stale-closure-broken-functional", severity: "warning" },
80
+ { name: "context-provider-value-via-variable", severity: "warning" },
81
+ { name: "context-provider-value-inline-destructured", severity: "warning" },
82
+ { name: "react-lazy-no-suspense-same-file", severity: "style" },
83
+ { name: "rsc-non-serializable-prop-deep", severity: "critical" },
84
+ { name: "error-boundary-incomplete", severity: "warning" },
85
+ ];
86
+ const scanResults = await Promise.all(scanList.map(async ({ name, severity }) => {
87
+ try {
88
+ const result = await searchPatterns(repo, name, { max_results: 20 });
89
+ return { pattern: name, count: result.matches.length, severity };
90
+ }
91
+ catch {
92
+ return { pattern: name, count: 0, severity };
93
+ }
94
+ }));
95
+ // Severity-aware bucketing — cap each at 10 entries.
96
+ const hits = scanResults.filter((r) => r.count > 0);
97
+ const critical_issues = hits
98
+ .filter((r) => r.severity === "critical")
99
+ .slice(0, 10);
100
+ // Legacy: pre-Tier-5 patterns marked "warning" stay in critical_issues for backward compat;
101
+ // Tier 5 warnings (derived-state, stale-closure, context-provider) go to dedicated bucket.
102
+ const tier5WarningPatterns = new Set([
103
+ // Tier 5
104
+ "derived-state", "stale-closure-setstate", "context-provider-value-inline",
105
+ // Tier 6 — same warning bucket
106
+ "derived-state-reducer", "derived-state-custom-setter",
107
+ "stale-closure-toggle", "stale-closure-broken-functional",
108
+ "context-provider-value-via-variable", "context-provider-value-inline-destructured",
109
+ "error-boundary-incomplete",
110
+ ]);
111
+ for (const r of hits) {
112
+ if (r.severity === "warning" && !tier5WarningPatterns.has(r.pattern) && critical_issues.length < 10) {
113
+ critical_issues.push({ pattern: r.pattern, count: r.count, severity: "warning" });
114
+ }
115
+ }
116
+ const warnings = hits
117
+ .filter((r) => r.severity === "warning" && tier5WarningPatterns.has(r.pattern))
118
+ .slice(0, 10);
119
+ const style_issues = hits
120
+ .filter((r) => r.severity === "style")
121
+ .slice(0, 10);
122
+ // Top hooks used across components
123
+ const hookCounts = new Map();
124
+ for (const c of components) {
125
+ if (!c.source)
126
+ continue;
127
+ const matches = c.source.matchAll(/\b(use[A-Z]\w*)\s*\(/g);
128
+ for (const m of matches) {
129
+ const name = m[1];
130
+ hookCounts.set(name, (hookCounts.get(name) ?? 0) + 1);
131
+ }
132
+ }
133
+ const top_hooks = [...hookCounts.entries()]
134
+ .sort((a, b) => b[1] - a[1])
135
+ .slice(0, 5)
136
+ .map(([name, count]) => ({ name, count }));
137
+ // Suggested next queries
138
+ const suggested_queries = [];
139
+ if (likelyRoot) {
140
+ suggested_queries.push(`trace_component_tree("${likelyRoot}") // explore render hierarchy`);
141
+ }
142
+ suggested_queries.push(`analyze_renders() // find re-render risks`);
143
+ suggested_queries.push(`analyze_hooks() // Rule of Hooks + hook inventory`);
144
+ if (components.length >= 10) {
145
+ suggested_queries.push(`audit_compiler_readiness() // React Compiler adoption check`);
146
+ }
147
+ if (critical_issues.some((i) => i.severity === "critical")) {
148
+ suggested_queries.push(`search_patterns("dangerously-set-html") // investigate XSS risks`);
149
+ }
150
+ return {
151
+ overview: {
152
+ total_components: components.length,
153
+ total_custom_hooks: hooks.length,
154
+ likely_root_component: likelyRoot,
155
+ stack,
156
+ },
157
+ critical_issues,
158
+ warnings,
159
+ style_issues,
160
+ top_hooks,
161
+ suggested_queries,
162
+ };
163
+ }
164
+ //# sourceMappingURL=react-quickstart-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-quickstart-tools.js","sourceRoot":"","sources":["../../src/tools/react-quickstart-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,75 @@
1
+ export interface RenderRisk {
2
+ type: "inline-object" | "inline-array" | "inline-function" | "unstable-default" | "missing-memo";
3
+ line: number;
4
+ context: string;
5
+ suggestion: string;
6
+ }
7
+ export interface RenderAnalysisEntry {
8
+ name: string;
9
+ file: string;
10
+ start_line: number;
11
+ is_memoized: boolean;
12
+ risk_count: number;
13
+ risk_level: "low" | "medium" | "high";
14
+ risks: RenderRisk[];
15
+ /** Components rendered as children (from JSX), useful to see impact */
16
+ children_count: number;
17
+ /**
18
+ * JSX **render-tree** depth: longest path in edges from this component up to a
19
+ * root in the reverse adjacency. Same numeric value as `prop_chain_depth`;
20
+ * this name reflects semantics (not prop-drilling depth). `null` only when
21
+ * `metadata.skipped === "extractor-failure"`.
22
+ */
23
+ jsx_render_depth: number | null;
24
+ /**
25
+ * @deprecated Use `jsx_render_depth`. Same value — retained for backward compatibility.
26
+ * Render-tree depth, not prop-flow depth.
27
+ */
28
+ prop_chain_depth: number | null;
29
+ /** Suggestion text including "NOT prop-drilling depth" disclaimer when depth >= 3 */
30
+ suggestion?: string;
31
+ }
32
+ export interface AnalyzeRendersResult {
33
+ entries: RenderAnalysisEntry[];
34
+ total_components: number;
35
+ high_risk_count: number;
36
+ summary: {
37
+ inline_objects: number;
38
+ inline_arrays: number;
39
+ inline_functions: number;
40
+ unstable_defaults: number;
41
+ missing_memo: number;
42
+ };
43
+ /** Diagnostic metadata — see `analyzeRenders` implementation for when this is set. */
44
+ metadata?: {
45
+ skipped?: "extractor-failure";
46
+ };
47
+ }
48
+ /**
49
+ * Analyze a single component source for re-render risks.
50
+ */
51
+ declare function findRenderRisks(source: string): RenderRisk[];
52
+ /**
53
+ * Format an AnalyzeRendersResult as human-readable Markdown.
54
+ * Used by analyzeRenders when format="markdown" is requested.
55
+ */
56
+ export declare function formatRendersMarkdown(result: AnalyzeRendersResult): string;
57
+ /**
58
+ * Analyze re-render risk across React components in a repo.
59
+ *
60
+ * Detects:
61
+ * - Inline object/array/function props in JSX (new reference every render)
62
+ * - Unstable default parameter values ([] or {} in component params)
63
+ * - Components not wrapped in React.memo that render children (missing-memo)
64
+ *
65
+ * Returns per-component risk assessment with actionable suggestions.
66
+ */
67
+ export declare function analyzeRenders(repo: string, options?: {
68
+ component_name?: string | undefined;
69
+ file_pattern?: string | undefined;
70
+ include_tests?: boolean | undefined;
71
+ max_entries?: number | undefined;
72
+ format?: "json" | "markdown" | undefined;
73
+ }): Promise<AnalyzeRendersResult | string>;
74
+ export { findRenderRisks };
75
+ //# sourceMappingURL=react-render-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-render-tools.d.ts","sourceRoot":"","sources":["../../src/tools/react-render-tools.ts"],"names":[],"mappings":"AAWA,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,eAAe,GAAG,cAAc,GAAG,iBAAiB,GAAG,kBAAkB,GAAG,cAAc,CAAC;IACjG,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACtC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,uEAAuE;IACvE,cAAc,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC;;;OAGG;IACH,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,qFAAqF;IACrF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE,mBAAmB,EAAE,CAAC;IAC/B,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC;QACvB,aAAa,EAAE,MAAM,CAAC;QACtB,gBAAgB,EAAE,MAAM,CAAC;QACzB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,sFAAsF;IACtF,QAAQ,CAAC,EAAE;QAAE,OAAO,CAAC,EAAE,mBAAmB,CAAA;KAAE,CAAC;CAC9C;AAUD;;GAEG;AACH,iBAAS,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,EAAE,CA2DrD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,oBAAoB,GAAG,MAAM,CAwB1E;AAED;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;IACR,cAAc,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,MAAM,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;CAC1C,GACA,OAAO,CAAC,oBAAoB,GAAG,MAAM,CAAC,CAwIxC;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,234 @@
1
+ /**
2
+ * React static render-risk analysis.
3
+ */
4
+ import { getCodeIndex } from "./index-tools.js";
5
+ import { isTestFileStrict as isTestFile } from "../utils/test-file.js";
6
+ import { buildJsxAdjacency, buildReverseAdjacency, computePropChainDepth } from "./react-component-tree-tools.js";
7
+ /** Patterns for inline prop creation in JSX — each creates a new reference every render */
8
+ const INLINE_OBJECT_RE = /\b\w+\s*=\s*\{\s*\{/g; // prop={{ ... }}
9
+ const INLINE_ARRAY_RE = /\b\w+\s*=\s*\{\s*\[/g; // prop={[ ... ]}
10
+ const INLINE_FN_RE = /\bon[A-Z]\w*\s*=\s*\{\s*(?:\([^)]*\)|[a-z_$][\w$]*)\s*=>/g; // onX={() => ...}
11
+ /** Default prop values that create new references: = [] or = {} in params */
12
+ const UNSTABLE_DEFAULT_RE = /(?:[:,]\s*)(\w+)\s*=\s*(\[\s*\]|\{\s*\})/g;
13
+ /**
14
+ * Analyze a single component source for re-render risks.
15
+ */
16
+ function findRenderRisks(source) {
17
+ const risks = [];
18
+ const lines = source.split("\n");
19
+ for (let i = 0; i < lines.length && risks.length < 20; i++) {
20
+ const line = lines[i];
21
+ const lineNum = i + 1;
22
+ const trimmed = line.trim();
23
+ // Skip comments
24
+ if (trimmed.startsWith("//") || trimmed.startsWith("*"))
25
+ continue;
26
+ // Inline object prop: prop={{ key: val }}
27
+ if (INLINE_OBJECT_RE.test(line)) {
28
+ INLINE_OBJECT_RE.lastIndex = 0;
29
+ risks.push({
30
+ type: "inline-object",
31
+ line: lineNum,
32
+ context: trimmed.slice(0, 120),
33
+ suggestion: "Extract to a const or useMemo — object literal creates new reference every render",
34
+ });
35
+ }
36
+ // Inline array prop: prop={[1, 2, 3]}
37
+ if (INLINE_ARRAY_RE.test(line)) {
38
+ INLINE_ARRAY_RE.lastIndex = 0;
39
+ risks.push({
40
+ type: "inline-array",
41
+ line: lineNum,
42
+ context: trimmed.slice(0, 120),
43
+ suggestion: "Extract to a const or useMemo — array literal creates new reference every render",
44
+ });
45
+ }
46
+ // Inline function in event handler: onClick={() => ...}
47
+ if (INLINE_FN_RE.test(line)) {
48
+ INLINE_FN_RE.lastIndex = 0;
49
+ risks.push({
50
+ type: "inline-function",
51
+ line: lineNum,
52
+ context: trimmed.slice(0, 120),
53
+ suggestion: "Extract to useCallback or a named handler — arrow function creates new reference every render",
54
+ });
55
+ }
56
+ // Unstable default value: { items = [], config = {} }
57
+ UNSTABLE_DEFAULT_RE.lastIndex = 0;
58
+ let dm;
59
+ while ((dm = UNSTABLE_DEFAULT_RE.exec(line)) !== null && risks.length < 20) {
60
+ risks.push({
61
+ type: "unstable-default",
62
+ line: lineNum,
63
+ context: trimmed.slice(0, 120),
64
+ suggestion: `Default value \`${dm[1]} = ${dm[2]}\` creates new reference every render — hoist to module const`,
65
+ });
66
+ }
67
+ }
68
+ return risks;
69
+ }
70
+ /**
71
+ * Format an AnalyzeRendersResult as human-readable Markdown.
72
+ * Used by analyzeRenders when format="markdown" is requested.
73
+ */
74
+ export function formatRendersMarkdown(result) {
75
+ const lines = [];
76
+ lines.push("# Render Analysis");
77
+ lines.push("");
78
+ lines.push(`Total components: ${result.total_components} | High risk: ${result.high_risk_count}`);
79
+ lines.push("");
80
+ lines.push("## Summary");
81
+ lines.push(`- inline_objects: ${result.summary.inline_objects}`);
82
+ lines.push(`- inline_arrays: ${result.summary.inline_arrays}`);
83
+ lines.push(`- inline_functions: ${result.summary.inline_functions}`);
84
+ lines.push(`- unstable_defaults: ${result.summary.unstable_defaults}`);
85
+ lines.push(`- missing_memo: ${result.summary.missing_memo}`);
86
+ lines.push("");
87
+ lines.push("## Entries");
88
+ lines.push("");
89
+ lines.push("| Component | File | Risk | Issues | Children | Chain | Memo |");
90
+ lines.push("|-----------|------|------|--------|----------|-------|------|");
91
+ for (const e of result.entries) {
92
+ const file = e.file.length > 40 ? "…" + e.file.slice(-39) : e.file;
93
+ const chain = e.jsx_render_depth === null ? "—" : String(e.jsx_render_depth);
94
+ lines.push(`| ${e.name} | ${file}:${e.start_line} | ${e.risk_level} | ${e.risk_count} | ${e.children_count} | ${chain} | ${e.is_memoized ? "✓" : "✗"} |`);
95
+ }
96
+ return lines.join("\n");
97
+ }
98
+ /**
99
+ * Analyze re-render risk across React components in a repo.
100
+ *
101
+ * Detects:
102
+ * - Inline object/array/function props in JSX (new reference every render)
103
+ * - Unstable default parameter values ([] or {} in component params)
104
+ * - Components not wrapped in React.memo that render children (missing-memo)
105
+ *
106
+ * Returns per-component risk assessment with actionable suggestions.
107
+ */
108
+ export async function analyzeRenders(repo, options) {
109
+ const index = await getCodeIndex(repo);
110
+ if (!index) {
111
+ throw new Error(`Repository not found: ${repo}`);
112
+ }
113
+ const componentName = options?.component_name;
114
+ const filePattern = options?.file_pattern;
115
+ const includeTests = options?.include_tests ?? false;
116
+ const maxEntries = options?.max_entries ?? 100;
117
+ let components = index.symbols.filter((s) => s.kind === "component");
118
+ if (!includeTests)
119
+ components = components.filter((s) => !isTestFile(s.file));
120
+ if (componentName)
121
+ components = components.filter((s) => s.name === componentName);
122
+ if (filePattern)
123
+ components = components.filter((s) => s.file.includes(filePattern));
124
+ // Tier 5 — extractor-failure: only when we have indexed JSX files but zero
125
+ // component symbols while other symbols exist — likely classification/extractor
126
+ // issues. Pure `.ts`/non-JSX indexes are not flagged (avoids false positives on
127
+ // headless/util libraries).
128
+ const hasJsxIndexedFiles = index.files.some((f) => f.path.endsWith(".tsx") || f.path.endsWith(".jsx"));
129
+ const extractorFailure = components.length === 0 &&
130
+ index.symbols.length > 0 &&
131
+ hasJsxIndexedFiles;
132
+ // Tier 5 — sort components alphabetically by id ?? name BEFORE building adjacency
133
+ // for deterministic cycle handling.
134
+ const sortedComponents = [...components].sort((a, b) => (a.id ?? a.name).localeCompare(b.id ?? b.name));
135
+ // Build reverse adjacency once, share memo across all per-component calls (O(V+E) total).
136
+ const adjacency = buildJsxAdjacency(sortedComponents);
137
+ const reverseAdj = buildReverseAdjacency(adjacency);
138
+ const memo = new Map();
139
+ const inProgress = new Set();
140
+ const entries = [];
141
+ const summary = { inline_objects: 0, inline_arrays: 0, inline_functions: 0, unstable_defaults: 0, missing_memo: 0 };
142
+ let highRiskCount = 0;
143
+ for (const sym of sortedComponents) {
144
+ if (entries.length >= maxEntries)
145
+ break;
146
+ if (!sym.source)
147
+ continue;
148
+ const isMemoized = /\b(?:React\.)?memo\s*\(/.test(sym.source);
149
+ const risks = findRenderRisks(sym.source);
150
+ // Count children rendered (PascalCase JSX elements)
151
+ const childrenSet = new Set();
152
+ const jsxPattern = /<([A-Z][a-zA-Z0-9_$]*)\b/g;
153
+ let jm;
154
+ while ((jm = jsxPattern.exec(sym.source)) !== null) {
155
+ if (jm[1] !== sym.name)
156
+ childrenSet.add(jm[1]);
157
+ }
158
+ // Check missing-memo: component renders children and is not memoized
159
+ if (!isMemoized && childrenSet.size > 0 && risks.length > 0) {
160
+ risks.push({
161
+ type: "missing-memo",
162
+ line: 1,
163
+ context: `${sym.name} renders ${childrenSet.size} child component(s) and has ${risks.length} inline props`,
164
+ suggestion: "Wrap in React.memo() — parent re-renders will propagate to children via new prop references",
165
+ });
166
+ summary.missing_memo++;
167
+ }
168
+ // Aggregate summary counts
169
+ for (const r of risks) {
170
+ if (r.type === "inline-object")
171
+ summary.inline_objects++;
172
+ else if (r.type === "inline-array")
173
+ summary.inline_arrays++;
174
+ else if (r.type === "inline-function")
175
+ summary.inline_functions++;
176
+ else if (r.type === "unstable-default")
177
+ summary.unstable_defaults++;
178
+ }
179
+ // Risk level classification — factors children_count to amplify components
180
+ // that propagate prop instability to many children (Bug #4 fix).
181
+ const riskLevel = ((risks.length >= 3 && childrenSet.size >= 3) || risks.length >= 5) ? "high" :
182
+ (risks.length >= 2 || (risks.length >= 1 && childrenSet.size >= 1)) ? "medium" : "low";
183
+ if (riskLevel === "high")
184
+ highRiskCount++;
185
+ // Tier 5 — render-tree depth (longest acyclic path from this component up to a root).
186
+ // `reverseAdj` is keyed by `sym.id` exclusively (see line 130), so any fallback to
187
+ // sym.name would silently look up a non-existent key. CodeSymbol.id is required by
188
+ // the type contract — dropping the prior `?? sym.name` fallback that masked unset id.
189
+ const depth = computePropChainDepth(sym.id, reverseAdj, memo, inProgress);
190
+ // Tier 5 — suggestion text with explicit "NOT prop-drilling depth" disclaimer
191
+ // when depth >= 3 (AC 8: prevents the metric from being silently relabeled
192
+ // as semantic prop-flow depth, which is Tier 6 scope).
193
+ const suggestion = depth >= 3
194
+ ? `Component is rendered ${depth} edges deep in the JSX render tree. NOT prop-drilling depth — this metric measures render-tree depth only, without tracing which props are consumed vs passed through. Use as a hint to investigate; combine with manual review or trace_component_tree to confirm whether props are actually being drilled. Semantic prop-flow tracking is Tier 6 scope.`
195
+ : undefined;
196
+ // Only include components with risks or if specifically queried
197
+ if (risks.length > 0 || componentName) {
198
+ entries.push({
199
+ name: sym.name,
200
+ file: sym.file,
201
+ start_line: sym.start_line,
202
+ is_memoized: isMemoized,
203
+ risk_count: risks.length,
204
+ risk_level: riskLevel,
205
+ risks,
206
+ children_count: childrenSet.size,
207
+ jsx_render_depth: extractorFailure ? null : depth,
208
+ prop_chain_depth: extractorFailure ? null : depth,
209
+ ...(suggestion ? { suggestion } : {}),
210
+ });
211
+ }
212
+ }
213
+ // Sort: high risk first, then by risk_count descending
214
+ entries.sort((a, b) => {
215
+ const levelOrder = { high: 3, medium: 2, low: 1 };
216
+ const ld = levelOrder[b.risk_level] - levelOrder[a.risk_level];
217
+ if (ld !== 0)
218
+ return ld;
219
+ return b.risk_count - a.risk_count;
220
+ });
221
+ const jsonResult = {
222
+ entries,
223
+ total_components: components.length,
224
+ high_risk_count: highRiskCount,
225
+ summary,
226
+ ...(extractorFailure ? { metadata: { skipped: "extractor-failure" } } : {}),
227
+ };
228
+ if (options?.format === "markdown") {
229
+ return formatRendersMarkdown(jsonResult);
230
+ }
231
+ return jsonResult;
232
+ }
233
+ export { findRenderRisks };
234
+ //# sourceMappingURL=react-render-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-render-tools.js","sourceRoot":"","sources":["../../src/tools/react-render-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,IAAI,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AAsDlH,2FAA2F;AAC3F,MAAM,gBAAgB,GAAG,sBAAsB,CAAC,CAAO,iBAAiB;AACxE,MAAM,eAAe,GAAG,sBAAsB,CAAC,CAAS,iBAAiB;AACzE,MAAM,YAAY,GAAG,2DAA2D,CAAC,CAAC,kBAAkB;AAEpG,6EAA6E;AAC7E,MAAM,mBAAmB,GAAG,2CAA2C,CAAC;AAExE;;GAEG;AACH,SAAS,eAAe,CAAC,MAAc;IACrC,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAEjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAE5B,gBAAgB;QAChB,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAElE,0CAA0C;QAC1C,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAChC,gBAAgB,CAAC,SAAS,GAAG,CAAC,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,eAAe;gBACrB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC9B,UAAU,EAAE,mFAAmF;aAChG,CAAC,CAAC;QACL,CAAC;QAED,sCAAsC;QACtC,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC/B,eAAe,CAAC,SAAS,GAAG,CAAC,CAAC;YAC9B,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC9B,UAAU,EAAE,kFAAkF;aAC/F,CAAC,CAAC;QACL,CAAC;QAED,wDAAwD;QACxD,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,YAAY,CAAC,SAAS,GAAG,CAAC,CAAC;YAC3B,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,iBAAiB;gBACvB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC9B,UAAU,EAAE,+FAA+F;aAC5G,CAAC,CAAC;QACL,CAAC;QAED,sDAAsD;QACtD,mBAAmB,CAAC,SAAS,GAAG,CAAC,CAAC;QAClC,IAAI,EAA0B,CAAC;QAC/B,OAAO,CAAC,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,IAAI,IAAI,KAAK,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YAC3E,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,kBAAkB;gBACxB,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;gBAC9B,UAAU,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,+DAA+D;aAC/G,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAA4B;IAChE,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,gBAAgB,iBAAiB,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;IAClG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzB,KAAK,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;IACjE,KAAK,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;IAC/D,KAAK,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACrE,KAAK,CAAC,IAAI,CAAC,wBAAwB,MAAM,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC,CAAC;IACvE,KAAK,CAAC,IAAI,CAAC,mBAAmB,MAAM,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IACzB,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC7E,KAAK,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;IAC7E,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACnE,MAAM,KAAK,GACT,CAAC,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC;QACjE,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,MAAM,IAAI,IAAI,CAAC,CAAC,UAAU,MAAM,CAAC,CAAC,UAAU,MAAM,CAAC,CAAC,UAAU,MAAM,CAAC,CAAC,cAAc,MAAM,KAAK,MAAM,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IAC5J,CAAC;IACD,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,IAAY,EACZ,OAMC;IAED,MAAM,KAAK,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,CAAC;IACvC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,EAAE,cAAc,CAAC;IAC9C,MAAM,WAAW,GAAG,OAAO,EAAE,YAAY,CAAC;IAC1C,MAAM,YAAY,GAAG,OAAO,EAAE,aAAa,IAAI,KAAK,CAAC;IACrD,MAAM,UAAU,GAAG,OAAO,EAAE,WAAW,IAAI,GAAG,CAAC;IAE/C,IAAI,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,CAAC;IACrE,IAAI,CAAC,YAAY;QAAE,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9E,IAAI,aAAa;QAAE,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;IACnF,IAAI,WAAW;QAAE,UAAU,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC;IAErF,2EAA2E;IAC3E,gFAAgF;IAChF,gFAAgF;IAChF,4BAA4B;IAC5B,MAAM,kBAAkB,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CACzC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAC1D,CAAC;IACF,MAAM,gBAAgB,GACpB,UAAU,CAAC,MAAM,KAAK,CAAC;QACvB,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;QACxB,kBAAkB,CAAC;IAErB,kFAAkF;IAClF,oCAAoC;IACpC,MAAM,gBAAgB,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CACrD,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAC/C,CAAC;IACF,0FAA0F;IAC1F,MAAM,SAAS,GAAG,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,UAAU,GAAG,qBAAqB,CAAC,SAAS,CAAC,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAkB,CAAC;IACvC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;IAErC,MAAM,OAAO,GAA0B,EAAE,CAAC;IAC1C,MAAM,OAAO,GAAG,EAAE,cAAc,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,iBAAiB,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC;IACpH,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;QACnC,IAAI,OAAO,CAAC,MAAM,IAAI,UAAU;YAAE,MAAM;QACxC,IAAI,CAAC,GAAG,CAAC,MAAM;YAAE,SAAS;QAE1B,MAAM,UAAU,GAAG,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAE1C,oDAAoD;QACpD,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;QACtC,MAAM,UAAU,GAAG,2BAA2B,CAAC;QAC/C,IAAI,EAA0B,CAAC;QAC/B,OAAO,CAAC,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI;gBAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAE,CAAC,CAAC;QAClD,CAAC;QAED,qEAAqE;QACrE,IAAI,CAAC,UAAU,IAAI,WAAW,CAAC,IAAI,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC5D,KAAK,CAAC,IAAI,CAAC;gBACT,IAAI,EAAE,cAAc;gBACpB,IAAI,EAAE,CAAC;gBACP,OAAO,EAAE,GAAG,GAAG,CAAC,IAAI,YAAY,WAAW,CAAC,IAAI,+BAA+B,KAAK,CAAC,MAAM,eAAe;gBAC1G,UAAU,EAAE,6FAA6F;aAC1G,CAAC,CAAC;YACH,OAAO,CAAC,YAAY,EAAE,CAAC;QACzB,CAAC;QAED,2BAA2B;QAC3B,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;YACtB,IAAI,CAAC,CAAC,IAAI,KAAK,eAAe;gBAAE,OAAO,CAAC,cAAc,EAAE,CAAC;iBACpD,IAAI,CAAC,CAAC,IAAI,KAAK,cAAc;gBAAE,OAAO,CAAC,aAAa,EAAE,CAAC;iBACvD,IAAI,CAAC,CAAC,IAAI,KAAK,iBAAiB;gBAAE,OAAO,CAAC,gBAAgB,EAAE,CAAC;iBAC7D,IAAI,CAAC,CAAC,IAAI,KAAK,kBAAkB;gBAAE,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACtE,CAAC;QAED,2EAA2E;QAC3E,iEAAiE;QACjE,MAAM,SAAS,GACb,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;YAC9E,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,IAAI,WAAW,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC;QAEzF,IAAI,SAAS,KAAK,MAAM;YAAE,aAAa,EAAE,CAAC;QAE1C,sFAAsF;QACtF,mFAAmF;QACnF,mFAAmF;QACnF,sFAAsF;QACtF,MAAM,KAAK,GAAG,qBAAqB,CAAC,GAAG,CAAC,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;QAE1E,8EAA8E;QAC9E,2EAA2E;QAC3E,uDAAuD;QACvD,MAAM,UAAU,GAAG,KAAK,IAAI,CAAC;YAC3B,CAAC,CAAC,yBAAyB,KAAK,2VAA2V;YAC3X,CAAC,CAAC,SAAS,CAAC;QAEd,gEAAgE;QAChE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,aAAa,EAAE,CAAC;YACtC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,IAAI,EAAE,GAAG,CAAC,IAAI;gBACd,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,WAAW,EAAE,UAAU;gBACvB,UAAU,EAAE,KAAK,CAAC,MAAM;gBACxB,UAAU,EAAE,SAAS;gBACrB,KAAK;gBACL,cAAc,EAAE,WAAW,CAAC,IAAI;gBAChC,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACjD,gBAAgB,EAAE,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK;gBACjD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACtC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACpB,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;QAClD,MAAM,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,EAAE,KAAK,CAAC;YAAE,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC;IACrC,CAAC,CAAC,CAAC;IAEH,MAAM,UAAU,GAAyB;QACvC,OAAO;QACP,gBAAgB,EAAE,UAAU,CAAC,MAAM;QACnC,eAAe,EAAE,aAAa;QAC9B,OAAO;QACP,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,mBAA4B,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACrF,CAAC;IAEF,IAAI,OAAO,EAAE,MAAM,KAAK,UAAU,EAAE,CAAC;QACnC,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Shared React-specific constants used across React analysis tools.
3
+ */
4
+ export declare const REACT_STDLIB_HOOKS: Set<string>;
5
+ //# sourceMappingURL=react-shared-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-shared-tools.d.ts","sourceRoot":"","sources":["../../src/tools/react-shared-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,kBAAkB,aAM7B,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Shared React-specific constants used across React analysis tools.
3
+ */
4
+ // ── React stdlib hooks (used as denylist in tracing and inventory) ──
5
+ export const REACT_STDLIB_HOOKS = new Set([
6
+ "useState", "useEffect", "useCallback", "useMemo", "useRef",
7
+ "useContext", "useReducer", "useLayoutEffect", "useImperativeHandle",
8
+ "useDebugValue", "useDeferredValue", "useTransition", "useId",
9
+ "useSyncExternalStore", "useInsertionEffect", "useOptimistic",
10
+ "useFormState", "useFormStatus", "use",
11
+ ]);
12
+ //# sourceMappingURL=react-shared-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-shared-tools.js","sourceRoot":"","sources":["../../src/tools/react-shared-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,uEAAuE;AACvE,MAAM,CAAC,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACxC,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ;IAC3D,YAAY,EAAE,YAAY,EAAE,iBAAiB,EAAE,qBAAqB;IACpE,eAAe,EAAE,kBAAkB,EAAE,eAAe,EAAE,OAAO;IAC7D,sBAAsB,EAAE,oBAAoB,EAAE,eAAe;IAC7D,cAAc,EAAE,eAAe,EAAE,KAAK;CACvC,CAAC,CAAC"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * React Suspense and lazy component analysis helpers.
3
+ */
4
+ import type { CodeSymbol } from "../types.js";
5
+ /**
6
+ * Walk UP the JSX render tree from a component, looking for any ancestor whose
7
+ * source contains a Suspense boundary. Returns the first ancestor found, or
8
+ * null if no Suspense exists anywhere in the upward chain.
9
+ *
10
+ * Tier 7 — closes the cross-file FP in `react-lazy-no-suspense-same-file` regex
11
+ * (Tier 6 limitation). Reuses `buildReverseAdjacency` infrastructure from Tier 5.
12
+ * Cycle-safe via visited set (BFS on potentially cyclic graph).
13
+ */
14
+ export declare function findSuspenseAncestor(componentId: string, reverseAdjacency: Map<string, string[]>, symbolsById: Map<string, CodeSymbol>): {
15
+ name: string;
16
+ file: string;
17
+ } | null;
18
+ /**
19
+ * Find all React.lazy() / lazy() usages whose containing component lacks a
20
+ * Suspense boundary anywhere in its ancestor chain. Cross-file proper detection.
21
+ * Tier 7 — complements the single-file regex `react-lazy-no-suspense-same-file`.
22
+ */
23
+ export interface LazyWithoutSuspense {
24
+ name: string;
25
+ file: string;
26
+ start_line: number;
27
+ }
28
+ export declare function findLazyComponentsWithoutSuspense(symbols: CodeSymbol[]): LazyWithoutSuspense[];
29
+ //# sourceMappingURL=react-suspense-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"react-suspense-tools.d.ts","sourceRoot":"","sources":["../../src/tools/react-suspense-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAsH9C;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAClC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EACvC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,GACnC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAqBvC;AAED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,UAAU,EAAE,GACpB,mBAAmB,EAAE,CAmDvB"}