@codeyam/codeyam-cli 0.1.0-staging.323686 → 0.1.0-staging.4813bf3

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 (444) hide show
  1. package/analyzer-template/.build-info.json +7 -7
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +5 -5
  4. package/analyzer-template/packages/ai/index.ts +7 -1
  5. package/analyzer-template/packages/ai/package.json +2 -2
  6. package/analyzer-template/packages/ai/src/lib/analyzeScope.ts +62 -18
  7. package/analyzer-template/packages/ai/src/lib/astScopes/astScopeAnalyzer.ts +67 -9
  8. package/analyzer-template/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.ts +10 -17
  9. package/analyzer-template/packages/ai/src/lib/astScopes/processExpression.ts +409 -50
  10. package/analyzer-template/packages/ai/src/lib/astScopes/sharedPatterns.ts +28 -0
  11. package/analyzer-template/packages/ai/src/lib/astScopes/types.ts +21 -6
  12. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +992 -249
  13. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.ts +5 -1
  14. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.ts +16 -3
  15. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.ts +6 -4
  16. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +31 -3
  17. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.ts +37 -15
  18. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.ts +70 -0
  19. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.ts +126 -11
  20. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.ts +179 -0
  21. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.ts +40 -30
  22. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.ts +367 -96
  23. package/analyzer-template/packages/ai/src/lib/dataStructureChunking.ts +33 -15
  24. package/analyzer-template/packages/ai/src/lib/generateEntityDataStructure.ts +58 -3
  25. package/analyzer-template/packages/ai/src/lib/generateEntityScenarioData.ts +315 -6
  26. package/analyzer-template/packages/ai/src/lib/generateEntityScenarios.ts +9 -5
  27. package/analyzer-template/packages/ai/src/lib/generateExecutionFlows.ts +49 -5
  28. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionalEffects.ts +1 -1
  29. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromConditionals.ts +649 -142
  30. package/analyzer-template/packages/ai/src/lib/generateExecutionFlowsFromJsxUsages.ts +1 -1
  31. package/analyzer-template/packages/ai/src/lib/isolateScopes.ts +51 -3
  32. package/analyzer-template/packages/ai/src/lib/mergeJsonTypeDefinitions.ts +5 -0
  33. package/analyzer-template/packages/ai/src/lib/mergeStatements.ts +90 -96
  34. package/analyzer-template/packages/ai/src/lib/promptGenerators/collapseNullableObjects.ts +118 -0
  35. package/analyzer-template/packages/ai/src/lib/promptGenerators/gatherAttributesMap.ts +10 -7
  36. package/analyzer-template/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.ts +24 -4
  37. package/analyzer-template/packages/ai/src/lib/resolvePathToControllable.ts +25 -13
  38. package/analyzer-template/packages/ai/src/lib/worker/SerializableDataStructure.ts +4 -3
  39. package/analyzer-template/packages/analyze/index.ts +2 -0
  40. package/analyzer-template/packages/analyze/src/lib/FileAnalyzer.ts +65 -59
  41. package/analyzer-template/packages/analyze/src/lib/ProjectAnalyzer.ts +113 -26
  42. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.ts +19 -0
  43. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.ts +19 -0
  44. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getAllExports.ts +11 -0
  45. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.ts +8 -0
  46. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.ts +49 -1
  47. package/analyzer-template/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.ts +2 -1
  48. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +89 -9
  49. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +19 -4
  50. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +4 -2
  51. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +0 -3
  52. package/analyzer-template/packages/analyze/src/lib/files/analyzeRemixRoute.ts +4 -5
  53. package/analyzer-template/packages/analyze/src/lib/files/getImportedExports.ts +14 -12
  54. package/analyzer-template/packages/analyze/src/lib/files/scenarios/TransformationTracer.ts +1315 -0
  55. package/analyzer-template/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.ts +61 -13
  56. package/analyzer-template/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.ts +37 -0
  57. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +229 -19
  58. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.ts +117 -9
  59. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +459 -39
  60. package/analyzer-template/packages/analyze/src/lib/files/scenarios/propagateArrayItemSchemas.ts +474 -0
  61. package/analyzer-template/packages/analyze/src/lib/files/setImportedExports.ts +2 -1
  62. package/analyzer-template/packages/analyze/src/lib/index.ts +1 -0
  63. package/analyzer-template/packages/analyze/src/lib/utils/getFileByPath.ts +19 -0
  64. package/analyzer-template/packages/aws/package.json +1 -1
  65. package/analyzer-template/packages/database/package.json +1 -1
  66. package/analyzer-template/packages/database/src/lib/analysisBranchToDb.ts +1 -1
  67. package/analyzer-template/packages/database/src/lib/analysisToDb.ts +1 -1
  68. package/analyzer-template/packages/database/src/lib/branchToDb.ts +1 -1
  69. package/analyzer-template/packages/database/src/lib/commitBranchToDb.ts +1 -1
  70. package/analyzer-template/packages/database/src/lib/commitToDb.ts +1 -1
  71. package/analyzer-template/packages/database/src/lib/fileToDb.ts +1 -1
  72. package/analyzer-template/packages/database/src/lib/kysely/db.ts +6 -0
  73. package/analyzer-template/packages/database/src/lib/kysely/tables/debugReportsTable.ts +1 -1
  74. package/analyzer-template/packages/database/src/lib/kysely/tables/labsRequestsTable.ts +52 -0
  75. package/analyzer-template/packages/database/src/lib/projectToDb.ts +1 -1
  76. package/analyzer-template/packages/database/src/lib/saveFiles.ts +1 -1
  77. package/analyzer-template/packages/database/src/lib/scenarioToDb.ts +1 -1
  78. package/analyzer-template/packages/database/src/lib/userScenarioToDb.ts +1 -1
  79. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js +1 -1
  80. package/analyzer-template/packages/github/dist/database/src/lib/analysisBranchToDb.js.map +1 -1
  81. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js +1 -1
  82. package/analyzer-template/packages/github/dist/database/src/lib/analysisToDb.js.map +1 -1
  83. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js +1 -1
  84. package/analyzer-template/packages/github/dist/database/src/lib/branchToDb.js.map +1 -1
  85. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js +1 -1
  86. package/analyzer-template/packages/github/dist/database/src/lib/commitBranchToDb.js.map +1 -1
  87. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js +1 -1
  88. package/analyzer-template/packages/github/dist/database/src/lib/commitToDb.js.map +1 -1
  89. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js +1 -1
  90. package/analyzer-template/packages/github/dist/database/src/lib/fileToDb.js.map +1 -1
  91. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts +2 -0
  92. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.d.ts.map +1 -1
  93. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js +3 -0
  94. package/analyzer-template/packages/github/dist/database/src/lib/kysely/db.js.map +1 -1
  95. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/debugReportsTable.d.ts +1 -1
  96. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts +23 -0
  97. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.d.ts.map +1 -0
  98. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  99. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  100. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js +1 -1
  101. package/analyzer-template/packages/github/dist/database/src/lib/projectToDb.js.map +1 -1
  102. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js +1 -1
  103. package/analyzer-template/packages/github/dist/database/src/lib/saveFiles.js.map +1 -1
  104. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js +1 -1
  105. package/analyzer-template/packages/github/dist/database/src/lib/scenarioToDb.js.map +1 -1
  106. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  107. package/analyzer-template/packages/github/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  108. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  109. package/analyzer-template/packages/github/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  110. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  111. package/analyzer-template/packages/github/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  112. package/analyzer-template/packages/github/package.json +1 -1
  113. package/analyzer-template/packages/types/src/types/ProjectMetadata.ts +7 -0
  114. package/analyzer-template/packages/types/src/types/ScenariosDataStructure.ts +6 -5
  115. package/analyzer-template/packages/types/src/types/ScopeAnalysis.ts +6 -1
  116. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts +7 -0
  117. package/analyzer-template/packages/utils/dist/types/src/types/ProjectMetadata.d.ts.map +1 -1
  118. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts +5 -5
  119. package/analyzer-template/packages/utils/dist/types/src/types/ScenariosDataStructure.d.ts.map +1 -1
  120. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts +6 -1
  121. package/analyzer-template/packages/utils/dist/types/src/types/ScopeAnalysis.d.ts.map +1 -1
  122. package/analyzer-template/project/constructMockCode.ts +90 -10
  123. package/analyzer-template/project/writeMockDataTsx.ts +181 -8
  124. package/analyzer-template/project/writeScenarioComponents.ts +60 -12
  125. package/analyzer-template/project/writeSimpleRoot.ts +21 -11
  126. package/background/src/lib/local/createLocalAnalyzer.js +1 -1
  127. package/background/src/lib/local/createLocalAnalyzer.js.map +1 -1
  128. package/background/src/lib/virtualized/project/constructMockCode.js +75 -4
  129. package/background/src/lib/virtualized/project/constructMockCode.js.map +1 -1
  130. package/background/src/lib/virtualized/project/writeMockDataTsx.js +162 -4
  131. package/background/src/lib/virtualized/project/writeMockDataTsx.js.map +1 -1
  132. package/background/src/lib/virtualized/project/writeScenarioComponents.js +60 -15
  133. package/background/src/lib/virtualized/project/writeScenarioComponents.js.map +1 -1
  134. package/background/src/lib/virtualized/project/writeSimpleRoot.js +21 -11
  135. package/background/src/lib/virtualized/project/writeSimpleRoot.js.map +1 -1
  136. package/codeyam-cli/scripts/apply-setup.js +180 -0
  137. package/codeyam-cli/scripts/apply-setup.js.map +1 -1
  138. package/codeyam-cli/src/cli.js +2 -0
  139. package/codeyam-cli/src/cli.js.map +1 -1
  140. package/codeyam-cli/src/codeyam-cli.js +18 -2
  141. package/codeyam-cli/src/codeyam-cli.js.map +1 -1
  142. package/codeyam-cli/src/commands/analyze.js +4 -2
  143. package/codeyam-cli/src/commands/analyze.js.map +1 -1
  144. package/codeyam-cli/src/commands/baseline.js +2 -0
  145. package/codeyam-cli/src/commands/baseline.js.map +1 -1
  146. package/codeyam-cli/src/commands/debug.js +9 -5
  147. package/codeyam-cli/src/commands/debug.js.map +1 -1
  148. package/codeyam-cli/src/commands/default.js +31 -20
  149. package/codeyam-cli/src/commands/default.js.map +1 -1
  150. package/codeyam-cli/src/commands/detect-universal-mocks.js +2 -0
  151. package/codeyam-cli/src/commands/detect-universal-mocks.js.map +1 -1
  152. package/codeyam-cli/src/commands/init.js +49 -257
  153. package/codeyam-cli/src/commands/init.js.map +1 -1
  154. package/codeyam-cli/src/commands/memory.js +17 -26
  155. package/codeyam-cli/src/commands/memory.js.map +1 -1
  156. package/codeyam-cli/src/commands/recapture.js +2 -0
  157. package/codeyam-cli/src/commands/recapture.js.map +1 -1
  158. package/codeyam-cli/src/commands/setup-sandbox.js +2 -0
  159. package/codeyam-cli/src/commands/setup-sandbox.js.map +1 -1
  160. package/codeyam-cli/src/commands/setup-simulations.js +284 -0
  161. package/codeyam-cli/src/commands/setup-simulations.js.map +1 -0
  162. package/codeyam-cli/src/commands/test-startup.js +2 -0
  163. package/codeyam-cli/src/commands/test-startup.js.map +1 -1
  164. package/codeyam-cli/src/commands/verify.js +14 -2
  165. package/codeyam-cli/src/commands/verify.js.map +1 -1
  166. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js +128 -86
  167. package/codeyam-cli/src/utils/__tests__/setupClaudeCodeSettings.test.js.map +1 -1
  168. package/codeyam-cli/src/utils/analyzer.js +7 -0
  169. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  170. package/codeyam-cli/src/utils/backgroundServer.js +5 -0
  171. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  172. package/codeyam-cli/src/utils/generateReport.js +2 -2
  173. package/codeyam-cli/src/utils/install-skills.js +70 -45
  174. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  175. package/codeyam-cli/src/utils/labsAutoCheck.js +19 -0
  176. package/codeyam-cli/src/utils/labsAutoCheck.js.map +1 -0
  177. package/codeyam-cli/src/utils/progress.js +7 -0
  178. package/codeyam-cli/src/utils/progress.js.map +1 -1
  179. package/codeyam-cli/src/utils/queue/job.js +4 -0
  180. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  181. package/codeyam-cli/src/utils/requireSimulations.js +10 -0
  182. package/codeyam-cli/src/utils/requireSimulations.js.map +1 -0
  183. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js +82 -0
  184. package/codeyam-cli/src/utils/ruleReflection/__tests__/confusionDetector.test.js.map +1 -0
  185. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js +230 -0
  186. package/codeyam-cli/src/utils/ruleReflection/__tests__/contextBuilder.test.js.map +1 -0
  187. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js +67 -0
  188. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/assertRules.js.map +1 -0
  189. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js +105 -0
  190. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/captureFixture.js.map +1 -0
  191. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js +34 -0
  192. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/loadCapturedFixture.js.map +1 -0
  193. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js +162 -0
  194. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/runClaude.js.map +1 -0
  195. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js +75 -0
  196. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/helpers/setupTempProject.js.map +1 -0
  197. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js +378 -0
  198. package/codeyam-cli/src/utils/ruleReflection/__tests__/integration/ruleReflectionE2E.test.js.map +1 -0
  199. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js +115 -0
  200. package/codeyam-cli/src/utils/ruleReflection/__tests__/promptBuilder.test.js.map +1 -0
  201. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js +127 -0
  202. package/codeyam-cli/src/utils/ruleReflection/__tests__/transcriptParser.test.js.map +1 -0
  203. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js +50 -0
  204. package/codeyam-cli/src/utils/ruleReflection/confusionDetector.js.map +1 -0
  205. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js +116 -0
  206. package/codeyam-cli/src/utils/ruleReflection/contextBuilder.js.map +1 -0
  207. package/codeyam-cli/src/utils/ruleReflection/index.js +5 -0
  208. package/codeyam-cli/src/utils/ruleReflection/index.js.map +1 -0
  209. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js +44 -0
  210. package/codeyam-cli/src/utils/ruleReflection/promptBuilder.js.map +1 -0
  211. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js +85 -0
  212. package/codeyam-cli/src/utils/ruleReflection/transcriptParser.js.map +1 -0
  213. package/codeyam-cli/src/utils/ruleReflection/types.js +5 -0
  214. package/codeyam-cli/src/utils/ruleReflection/types.js.map +1 -0
  215. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js +293 -0
  216. package/codeyam-cli/src/utils/rules/__tests__/ruleState.test.js.map +1 -0
  217. package/codeyam-cli/src/utils/rules/index.js +1 -0
  218. package/codeyam-cli/src/utils/rules/index.js.map +1 -1
  219. package/codeyam-cli/src/utils/rules/parser.js +2 -25
  220. package/codeyam-cli/src/utils/rules/parser.js.map +1 -1
  221. package/codeyam-cli/src/utils/rules/ruleState.js +150 -0
  222. package/codeyam-cli/src/utils/rules/ruleState.js.map +1 -0
  223. package/codeyam-cli/src/utils/rules/staleness.js +16 -11
  224. package/codeyam-cli/src/utils/rules/staleness.js.map +1 -1
  225. package/codeyam-cli/src/utils/serverState.js +37 -10
  226. package/codeyam-cli/src/utils/serverState.js.map +1 -1
  227. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js +21 -44
  228. package/codeyam-cli/src/utils/setupClaudeCodeSettings.js.map +1 -1
  229. package/codeyam-cli/src/webserver/app/lib/database.js +15 -3
  230. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  231. package/codeyam-cli/src/webserver/backgroundServer.js +24 -0
  232. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  233. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-CA3JxPb7.js +1 -0
  234. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-DsN1wKrm.js → EntityItem-B86KKU7e.js} +1 -1
  235. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeBadge-DLqD3qNt.js → EntityTypeBadge-B5ctlSYt.js} +1 -1
  236. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-Ba2JVPzP.js → EntityTypeIcon-BqY8gDAW.js} +1 -1
  237. package/codeyam-cli/src/webserver/build/client/assets/{InlineSpinner-C8lyxW9k.js → InlineSpinner-ClaLpuOo.js} +1 -1
  238. package/codeyam-cli/src/webserver/build/client/assets/{InteractivePreview-aht4aafF.js → InteractivePreview-BDhPilK7.js} +2 -2
  239. package/codeyam-cli/src/webserver/build/client/assets/{LibraryFunctionPreview-CVtiBnY5.js → LibraryFunctionPreview-VeqEBv9v.js} +1 -1
  240. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-B0GLXMsr.js → LoadingDots-Bs7Nn1Jr.js} +1 -1
  241. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-xgeCVgSM.js → LogViewer-Bm3PmcCz.js} +1 -1
  242. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-OApQuNyq.js → ReportIssueModal-CgMEzchJ.js} +3 -8
  243. package/codeyam-cli/src/webserver/build/client/assets/{SafeScreenshot-DuDvi0jm.js → SafeScreenshot-Gq3Ocjo6.js} +1 -1
  244. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-DzccYyI8.js → ScenarioViewer-CBui0id_.js} +2 -2
  245. package/codeyam-cli/src/webserver/build/client/assets/{TruncatedFilePath-DyFZkK0l.js → TruncatedFilePath-CiwXDxLh.js} +1 -1
  246. package/codeyam-cli/src/webserver/build/client/assets/{_index-BwqWJOgH.js → _index-B3TDXxnk.js} +1 -1
  247. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BwavGCpm.js → activity.(_tab)-BtBFH820.js} +6 -11
  248. package/codeyam-cli/src/webserver/build/client/assets/agent-transcripts-CN61MOMa.js +11 -0
  249. package/codeyam-cli/src/webserver/build/client/assets/api.agent-transcripts-l0sNRNKZ.js +1 -0
  250. package/codeyam-cli/src/webserver/build/client/assets/api.labs-unlock-l0sNRNKZ.js +1 -0
  251. package/codeyam-cli/src/webserver/build/client/assets/api.save-fixture-l0sNRNKZ.js +1 -0
  252. package/codeyam-cli/src/webserver/build/client/assets/book-open-PttOB2SF.js +6 -0
  253. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-Cx24_aWc.js → chevron-down-TJp6ofnp.js} +1 -1
  254. package/codeyam-cli/src/webserver/build/client/assets/{chunk-EPOLDU6W-CXRTFQ3F.js → chunk-JZWAC4HX-JE9ZIoBl.js} +12 -12
  255. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-BOARzkeR.js → circle-check-CXhHQYrI.js} +1 -1
  256. package/codeyam-cli/src/webserver/build/client/assets/copy-6y9ALfGT.js +11 -0
  257. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-BdhJEx6B.js → createLucideIcon-Ca9fAY46.js} +1 -1
  258. package/codeyam-cli/src/webserver/build/client/assets/{dev.empty-BBnGWYga.js → dev.empty-C0epRiVn.js} +1 -1
  259. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-BJUiQqZF.js → entity._sha._-BVnB8a9L.js} +10 -10
  260. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha.scenarios._scenarioId.fullscreen-DavjRmOY.js → entity._sha.scenarios._scenarioId.fullscreen-CBoafmVs.js} +1 -1
  261. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.create-scenario-D1T4TGjf.js → entity._sha_.create-scenario-DGgZjdFg.js} +1 -1
  262. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-CTBG2mmz.js → entity._sha_.edit._scenarioId-38yPijoD.js} +1 -1
  263. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-CS2cb_eZ.js → entry.client-BSHEfydn.js} +1 -1
  264. package/codeyam-cli/src/webserver/build/client/assets/{fileTableUtils-DMJ7zii9.js → fileTableUtils-DCPhhSMo.js} +1 -1
  265. package/codeyam-cli/src/webserver/build/client/assets/{files-CJ6lTdTA.js → files-0N0YJQv7.js} +1 -1
  266. package/codeyam-cli/src/webserver/build/client/assets/{git-CPTZZ-JZ.js → git-DXnyr8uP.js} +1 -1
  267. package/codeyam-cli/src/webserver/build/client/assets/globals-CKT08Djd.css +1 -0
  268. package/codeyam-cli/src/webserver/build/client/assets/{index-lzqtyFU8.js → index-CcsFv748.js} +1 -1
  269. package/codeyam-cli/src/webserver/build/client/assets/{index-B1h680n5.js → index-ChN9-fAY.js} +1 -1
  270. package/codeyam-cli/src/webserver/build/client/assets/labs-BLJ7HxOC.js +1 -0
  271. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-B7B9V-bu.js → loader-circle-CTqLEAGU.js} +1 -1
  272. package/codeyam-cli/src/webserver/build/client/assets/manifest-b171b9d3.js +1 -0
  273. package/codeyam-cli/src/webserver/build/client/assets/memory-CCQd4aZA.js +78 -0
  274. package/codeyam-cli/src/webserver/build/client/assets/pause-D6vreykR.js +11 -0
  275. package/codeyam-cli/src/webserver/build/client/assets/root-CHhiHoo_.js +62 -0
  276. package/codeyam-cli/src/webserver/build/client/assets/{search-CxXUmBSd.js → search-B8VUL8nl.js} +1 -1
  277. package/codeyam-cli/src/webserver/build/client/assets/settings-BejnUJ6R.js +1 -0
  278. package/codeyam-cli/src/webserver/build/client/assets/{simulations-DwFIBT09.js → simulations-CPoAg7Zo.js} +1 -1
  279. package/codeyam-cli/src/webserver/build/client/assets/terminal-BrCP7uQo.js +11 -0
  280. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-B6LgvRJg.js → triangle-alert-BZz2NjYa.js} +1 -1
  281. package/codeyam-cli/src/webserver/build/client/assets/{useCustomSizes-C1v1PQzo.js → useCustomSizes-DNwUduNu.js} +1 -1
  282. package/codeyam-cli/src/webserver/build/client/assets/{useLastLogLine-aSv48UbS.js → useLastLogLine-COky1GVF.js} +1 -1
  283. package/codeyam-cli/src/webserver/build/client/assets/{useReportContext-DYxHZQuP.js → useReportContext-CpZgwliL.js} +1 -1
  284. package/codeyam-cli/src/webserver/build/client/assets/{useToast-mBRpZPiu.js → useToast-Bv9JFvUO.js} +1 -1
  285. package/codeyam-cli/src/webserver/build/server/assets/{index-DVzYx8PN.js → index-8Fv-lH1-.js} +1 -1
  286. package/codeyam-cli/src/webserver/build/server/assets/server-build-Akn3iYFP.js +257 -0
  287. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  288. package/codeyam-cli/src/webserver/build-info.json +5 -5
  289. package/codeyam-cli/templates/{codeyam:debug.md → codeyam-debug.md} +1 -1
  290. package/codeyam-cli/templates/codeyam-diagnose.md +481 -0
  291. package/codeyam-cli/templates/codeyam-memory-hook.sh +19 -20
  292. package/codeyam-cli/templates/codeyam-memory.md +392 -0
  293. package/codeyam-cli/templates/codeyam-new-rule.md +13 -0
  294. package/codeyam-cli/templates/{codeyam:setup.md → codeyam-setup.md} +13 -1
  295. package/codeyam-cli/templates/{codeyam:sim.md → codeyam-sim.md} +1 -1
  296. package/codeyam-cli/templates/{codeyam:test.md → codeyam-test.md} +1 -1
  297. package/codeyam-cli/templates/{codeyam:verify.md → codeyam-verify.md} +1 -1
  298. package/codeyam-cli/templates/rule-notification-hook.py +56 -0
  299. package/codeyam-cli/templates/rule-reflection-hook.py +627 -0
  300. package/codeyam-cli/templates/rules-instructions.md +132 -0
  301. package/package.json +2 -2
  302. package/packages/ai/index.js +3 -2
  303. package/packages/ai/index.js.map +1 -1
  304. package/packages/ai/src/lib/analyzeScope.js +50 -13
  305. package/packages/ai/src/lib/analyzeScope.js.map +1 -1
  306. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js +54 -8
  307. package/packages/ai/src/lib/astScopes/astScopeAnalyzer.js.map +1 -1
  308. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js +10 -14
  309. package/packages/ai/src/lib/astScopes/patterns/forInStatementHandler.js.map +1 -1
  310. package/packages/ai/src/lib/astScopes/processExpression.js +317 -44
  311. package/packages/ai/src/lib/astScopes/processExpression.js.map +1 -1
  312. package/packages/ai/src/lib/astScopes/sharedPatterns.js +25 -0
  313. package/packages/ai/src/lib/astScopes/sharedPatterns.js.map +1 -1
  314. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +763 -171
  315. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  316. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js +5 -1
  317. package/packages/ai/src/lib/dataStructure/equivalencyManagers/frameworks/JavascriptFrameworkManager.js.map +1 -1
  318. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js +13 -3
  319. package/packages/ai/src/lib/dataStructure/helpers/BatchSchemaProcessor.js.map +1 -1
  320. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js +6 -4
  321. package/packages/ai/src/lib/dataStructure/helpers/ScopeTreeManager.js.map +1 -1
  322. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +33 -3
  323. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  324. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js +36 -11
  325. package/packages/ai/src/lib/dataStructure/helpers/cleanNonObjectFunctions.js.map +1 -1
  326. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js +63 -0
  327. package/packages/ai/src/lib/dataStructure/helpers/coerceObjectsToPrimitivesBySchema.js.map +1 -0
  328. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js +113 -11
  329. package/packages/ai/src/lib/dataStructure/helpers/convertDotNotation.js.map +1 -1
  330. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js +173 -0
  331. package/packages/ai/src/lib/dataStructure/helpers/convertTypeAnnotationsToValues.js.map +1 -0
  332. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js +37 -20
  333. package/packages/ai/src/lib/dataStructure/helpers/deduplicateFunctionSchemas.js.map +1 -1
  334. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js +309 -84
  335. package/packages/ai/src/lib/dataStructure/helpers/fillInSchemaGapsAndUnknowns.js.map +1 -1
  336. package/packages/ai/src/lib/dataStructureChunking.js +26 -11
  337. package/packages/ai/src/lib/dataStructureChunking.js.map +1 -1
  338. package/packages/ai/src/lib/generateEntityDataStructure.js +46 -2
  339. package/packages/ai/src/lib/generateEntityDataStructure.js.map +1 -1
  340. package/packages/ai/src/lib/generateEntityScenarioData.js +227 -4
  341. package/packages/ai/src/lib/generateEntityScenarioData.js.map +1 -1
  342. package/packages/ai/src/lib/generateEntityScenarios.js +7 -1
  343. package/packages/ai/src/lib/generateEntityScenarios.js.map +1 -1
  344. package/packages/ai/src/lib/generateExecutionFlows.js +26 -4
  345. package/packages/ai/src/lib/generateExecutionFlows.js.map +1 -1
  346. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js +447 -80
  347. package/packages/ai/src/lib/generateExecutionFlowsFromConditionals.js.map +1 -1
  348. package/packages/ai/src/lib/isolateScopes.js +39 -3
  349. package/packages/ai/src/lib/isolateScopes.js.map +1 -1
  350. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js +5 -0
  351. package/packages/ai/src/lib/mergeJsonTypeDefinitions.js.map +1 -1
  352. package/packages/ai/src/lib/mergeStatements.js +70 -51
  353. package/packages/ai/src/lib/mergeStatements.js.map +1 -1
  354. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js +97 -0
  355. package/packages/ai/src/lib/promptGenerators/collapseNullableObjects.js.map +1 -0
  356. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js +10 -4
  357. package/packages/ai/src/lib/promptGenerators/gatherAttributesMap.js.map +1 -1
  358. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js +17 -2
  359. package/packages/ai/src/lib/promptGenerators/generateEntityScenarioDataGenerator.js.map +1 -1
  360. package/packages/ai/src/lib/resolvePathToControllable.js +24 -14
  361. package/packages/ai/src/lib/resolvePathToControllable.js.map +1 -1
  362. package/packages/ai/src/lib/worker/SerializableDataStructure.js.map +1 -1
  363. package/packages/analyze/index.js +1 -0
  364. package/packages/analyze/index.js.map +1 -1
  365. package/packages/analyze/src/lib/FileAnalyzer.js +60 -36
  366. package/packages/analyze/src/lib/FileAnalyzer.js.map +1 -1
  367. package/packages/analyze/src/lib/ProjectAnalyzer.js +96 -26
  368. package/packages/analyze/src/lib/ProjectAnalyzer.js.map +1 -1
  369. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js +14 -0
  370. package/packages/analyze/src/lib/asts/sourceFiles/getAllDeclaredEntityNodes.js.map +1 -1
  371. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js +14 -0
  372. package/packages/analyze/src/lib/asts/sourceFiles/getAllEntityNodes.js.map +1 -1
  373. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js +6 -0
  374. package/packages/analyze/src/lib/asts/sourceFiles/getAllExports.js.map +1 -1
  375. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js +6 -0
  376. package/packages/analyze/src/lib/asts/sourceFiles/getImportsAnalysis.js.map +1 -1
  377. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js +39 -1
  378. package/packages/analyze/src/lib/asts/sourceFiles/getResolvedModule.js.map +1 -1
  379. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js +2 -1
  380. package/packages/analyze/src/lib/asts/sourceFiles/getSourceFilesForAllImports.js.map +1 -1
  381. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +65 -7
  382. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  383. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +17 -4
  384. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  385. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +2 -1
  386. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  387. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +0 -3
  388. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  389. package/packages/analyze/src/lib/files/analyzeRemixRoute.js +3 -2
  390. package/packages/analyze/src/lib/files/analyzeRemixRoute.js.map +1 -1
  391. package/packages/analyze/src/lib/files/getImportedExports.js +11 -7
  392. package/packages/analyze/src/lib/files/getImportedExports.js.map +1 -1
  393. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js +880 -0
  394. package/packages/analyze/src/lib/files/scenarios/TransformationTracer.js.map +1 -0
  395. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js +56 -10
  396. package/packages/analyze/src/lib/files/scenarios/enrichArrayTypesFromChildSignatures.js.map +1 -1
  397. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js +33 -8
  398. package/packages/analyze/src/lib/files/scenarios/gatherDataForMocks.js.map +1 -1
  399. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +150 -17
  400. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  401. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js +56 -8
  402. package/packages/analyze/src/lib/files/scenarios/generateExecutionFlows.js.map +1 -1
  403. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +399 -31
  404. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  405. package/packages/analyze/src/lib/files/setImportedExports.js +2 -1
  406. package/packages/analyze/src/lib/files/setImportedExports.js.map +1 -1
  407. package/packages/analyze/src/lib/index.js +1 -0
  408. package/packages/analyze/src/lib/index.js.map +1 -1
  409. package/packages/analyze/src/lib/utils/getFileByPath.js +12 -0
  410. package/packages/analyze/src/lib/utils/getFileByPath.js.map +1 -0
  411. package/packages/database/src/lib/analysisBranchToDb.js +1 -1
  412. package/packages/database/src/lib/analysisBranchToDb.js.map +1 -1
  413. package/packages/database/src/lib/analysisToDb.js +1 -1
  414. package/packages/database/src/lib/analysisToDb.js.map +1 -1
  415. package/packages/database/src/lib/branchToDb.js +1 -1
  416. package/packages/database/src/lib/branchToDb.js.map +1 -1
  417. package/packages/database/src/lib/commitBranchToDb.js +1 -1
  418. package/packages/database/src/lib/commitBranchToDb.js.map +1 -1
  419. package/packages/database/src/lib/commitToDb.js +1 -1
  420. package/packages/database/src/lib/commitToDb.js.map +1 -1
  421. package/packages/database/src/lib/fileToDb.js +1 -1
  422. package/packages/database/src/lib/fileToDb.js.map +1 -1
  423. package/packages/database/src/lib/kysely/db.js +3 -0
  424. package/packages/database/src/lib/kysely/db.js.map +1 -1
  425. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js +35 -0
  426. package/packages/database/src/lib/kysely/tables/labsRequestsTable.js.map +1 -0
  427. package/packages/database/src/lib/projectToDb.js +1 -1
  428. package/packages/database/src/lib/projectToDb.js.map +1 -1
  429. package/packages/database/src/lib/saveFiles.js +1 -1
  430. package/packages/database/src/lib/saveFiles.js.map +1 -1
  431. package/packages/database/src/lib/scenarioToDb.js +1 -1
  432. package/packages/database/src/lib/scenarioToDb.js.map +1 -1
  433. package/scripts/finalize-analyzer.cjs +8 -76
  434. package/codeyam-cli/src/webserver/build/client/assets/copy-Bb-80kDT.js +0 -6
  435. package/codeyam-cli/src/webserver/build/client/assets/file-code-Dhef1kWN.js +0 -6
  436. package/codeyam-cli/src/webserver/build/client/assets/globals-D3yhhV8x.css +0 -1
  437. package/codeyam-cli/src/webserver/build/client/assets/manifest-7522edd4.js +0 -1
  438. package/codeyam-cli/src/webserver/build/client/assets/memory-yxFcrxBX.js +0 -92
  439. package/codeyam-cli/src/webserver/build/client/assets/root-eVAaavTS.js +0 -62
  440. package/codeyam-cli/src/webserver/build/client/assets/settings-CS5f3WzT.js +0 -1
  441. package/codeyam-cli/src/webserver/build/server/assets/server-build-4Cr0uToj.js +0 -257
  442. package/codeyam-cli/templates/codeyam:diagnose.md +0 -803
  443. package/codeyam-cli/templates/codeyam:memory.md +0 -462
  444. package/codeyam-cli/templates/codeyam:new-rule.md +0 -13
@@ -3,6 +3,7 @@ import * as lib from "./index.js";
3
3
  import { getAllExports, } from "./asts/sourceFiles/getAllExports.js";
4
4
  import getEntityType from "./files/getEntityType.js";
5
5
  import getEntityCode from "./files/getEntityCode.js";
6
+ import { getFileByPathSafe } from "./utils/getFileByPath.js";
6
7
  export class FileAnalyzer {
7
8
  constructor({ projectAnalyzer, file, }) {
8
9
  this.projectAnalyzer = projectAnalyzer;
@@ -33,16 +34,21 @@ export class FileAnalyzer {
33
34
  getAllEntityNodesOnlyAliases() {
34
35
  if (!this.sourceFile)
35
36
  return {};
37
+ if (this.allEntityNodesOnlyAliasesCache) {
38
+ return this.allEntityNodesOnlyAliasesCache;
39
+ }
36
40
  try {
37
41
  const allEntityNodes = lib.asts.sourceFiles.getAllEntityNodes({
38
42
  sourceFile: this.sourceFile,
39
43
  });
40
- if (allEntityNodes.default) {
41
- const namedDefault = Object.entries(allEntityNodes).find(([otherEntityName, node]) => otherEntityName !== 'default' && node === allEntityNodes.default);
44
+ const aliasesOnly = { ...allEntityNodes };
45
+ if (aliasesOnly.default) {
46
+ const namedDefault = Object.entries(aliasesOnly).find(([otherEntityName, node]) => otherEntityName !== 'default' && node === aliasesOnly.default);
42
47
  if (namedDefault)
43
- delete allEntityNodes.default;
48
+ delete aliasesOnly.default;
44
49
  }
45
- return allEntityNodes;
50
+ this.allEntityNodesOnlyAliasesCache = aliasesOnly;
51
+ return aliasesOnly;
46
52
  }
47
53
  catch (error) {
48
54
  console.log('CodeYam ERROR: getAllEntityNodesOnlyAliases failed:', {
@@ -166,17 +172,19 @@ export class FileAnalyzer {
166
172
  const resolvedPath = this.projectAnalyzer.getRelativePath(resolvedModule.resolvedFileName);
167
173
  // Handle dist -> src mapping for workspace packages
168
174
  let targetPath = resolvedPath;
169
- let targetFile = this.projectAnalyzer.project.files.find((f) => f.path === targetPath);
175
+ let targetFile = getFileByPathSafe(this.projectAnalyzer, targetPath);
170
176
  if (!targetFile && targetPath.includes('/dist/')) {
171
177
  const srcPath = targetPath.replace('/dist/', '/src/');
172
- targetFile = this.projectAnalyzer.project.files.find((f) => f.path === srcPath);
178
+ targetFile = getFileByPathSafe(this.projectAnalyzer, srcPath);
173
179
  if (targetFile) {
174
180
  targetPath = srcPath;
175
181
  }
176
182
  // Try with different extensions if still not found
177
183
  if (!targetFile) {
178
184
  const basePath = srcPath.replace(/\.d\.ts$/, '').replace(/\.js$/, '');
179
- targetFile = this.projectAnalyzer.project.files.find((f) => f.path === basePath + '.ts' || f.path === basePath + '.tsx');
185
+ targetFile =
186
+ getFileByPathSafe(this.projectAnalyzer, basePath + '.ts') ??
187
+ getFileByPathSafe(this.projectAnalyzer, basePath + '.tsx');
180
188
  if (targetFile) {
181
189
  targetPath = targetFile.path;
182
190
  }
@@ -225,19 +233,21 @@ export class FileAnalyzer {
225
233
  getLocalEntitiesUsedInFunction(functionName) {
226
234
  if (!this.sourceFile)
227
235
  return [];
228
- const entityNodes = lib.asts.sourceFiles.getAllEntityNodes({
229
- sourceFile: this.sourceFile,
230
- });
236
+ const entityNodes = this.getAllEntityNodes();
231
237
  // Defensive check: ensure the function exists in entityNodes
232
- if (!entityNodes[functionName]) {
238
+ const functionNode = entityNodes[functionName];
239
+ if (!functionNode) {
233
240
  return [];
234
241
  }
235
242
  try {
236
- const identifiers = this.getIdentifiersInNode(entityNodes[functionName]);
243
+ const identifiers = this.getIdentifiersInNode(functionNode);
237
244
  return identifiers
238
- .filter((identifier, index, self) => entityNodes[identifier] !== entityNodes[functionName] &&
239
- Object.keys(entityNodes).includes(identifier) &&
240
- self.indexOf(identifier) === index)
245
+ .filter((identifier) => {
246
+ const node = entityNodes[identifier];
247
+ return (!!node &&
248
+ node !== functionNode &&
249
+ typeof node.kind === 'number');
250
+ })
241
251
  .map((identifier) => ({
242
252
  name: identifier,
243
253
  node: entityNodes[identifier],
@@ -263,10 +273,11 @@ export class FileAnalyzer {
263
273
  sourceFile: this.sourceFile,
264
274
  });
265
275
  const identifiersInRelevantNode = this.getIdentifiersInNode(relevantNode);
276
+ const identifiersSet = new Set(identifiersInRelevantNode);
266
277
  const entries = Object.entries(importsAnalysis)
267
278
  .map(([importedFilePath, importedExpressions]) => {
268
279
  const relevantExpressions = importedExpressions.filter((importedExpression) => {
269
- return identifiersInRelevantNode.includes(importedExpression.importAlias);
280
+ return identifiersSet.has(importedExpression.importAlias);
270
281
  });
271
282
  // Remove duplicate 'default' if present
272
283
  const uniqueRelevantExpressions = [...new Set(relevantExpressions)];
@@ -327,13 +338,13 @@ export class FileAnalyzer {
327
338
  }
328
339
  const relativePath = this.projectAnalyzer.getRelativePath(importPath);
329
340
  let projectPath = this.projectAnalyzer.getRelativePath(resolvedImport.resolvedFileName);
330
- let importedFile = this.projectAnalyzer.project.files.find((f) => f.path === projectPath);
341
+ let importedFile = getFileByPathSafe(this.projectAnalyzer, projectPath);
331
342
  // Workspace packages often resolve to dist/ paths (from package.json "types" or "main"),
332
343
  // but our project.files contains source files in src/. Try mapping dist -> src.
333
344
  if (!importedFile && projectPath.includes('/dist/')) {
334
345
  const srcPath = projectPath.replace('/dist/', '/src/');
335
346
  // Try exact match first (e.g., dist/index.d.ts -> src/index.ts)
336
- importedFile = this.projectAnalyzer.project.files.find((f) => f.path === srcPath);
347
+ importedFile = getFileByPathSafe(this.projectAnalyzer, srcPath);
337
348
  if (importedFile) {
338
349
  projectPath = srcPath;
339
350
  }
@@ -342,7 +353,9 @@ export class FileAnalyzer {
342
353
  const basePath = srcPath
343
354
  .replace(/\.d\.ts$/, '')
344
355
  .replace(/\.js$/, '');
345
- importedFile = this.projectAnalyzer.project.files.find((f) => f.path === basePath + '.ts' || f.path === basePath + '.tsx');
356
+ importedFile =
357
+ getFileByPathSafe(this.projectAnalyzer, basePath + '.ts') ??
358
+ getFileByPathSafe(this.projectAnalyzer, basePath + '.tsx');
346
359
  if (importedFile) {
347
360
  projectPath = importedFile.path;
348
361
  }
@@ -439,19 +452,33 @@ export class FileAnalyzer {
439
452
  }
440
453
  getNamespaceIdentifiersInNode(node, namespaceIdentifier) {
441
454
  const identifiers = [];
455
+ const seen = new Set();
442
456
  const identifierVisitor = (child) => {
443
457
  if (ts.isPropertyAccessExpression(child)) {
444
458
  if (child.expression.getText() === namespaceIdentifier) {
445
- identifiers.push(child.name.getText());
459
+ const name = child.name.getText();
460
+ if (!seen.has(name)) {
461
+ seen.add(name);
462
+ identifiers.push(name);
463
+ }
446
464
  }
447
465
  }
448
466
  ts.forEachChild(child, identifierVisitor);
449
467
  };
450
468
  ts.forEachChild(node, identifierVisitor);
451
- return identifiers.filter((identifier, index, self) => self.indexOf(identifier) === index);
469
+ return identifiers;
452
470
  }
453
471
  getIdentifiersInNode(node) {
454
472
  const identifiers = [];
473
+ const seen = new Set();
474
+ const addIdentifier = (text, allowDefault = false) => {
475
+ if (!allowDefault && text === 'default')
476
+ return;
477
+ if (seen.has(text))
478
+ return;
479
+ seen.add(text);
480
+ identifiers.push(text);
481
+ };
455
482
  // Helper to safely get text from an identifier or string literal
456
483
  const getNodeText = (node) => {
457
484
  try {
@@ -479,65 +506,62 @@ export class FileAnalyzer {
479
506
  }
480
507
  };
481
508
  if (ts.isIdentifier(node)) {
482
- identifiers.push(getNodeText(node));
509
+ addIdentifier(getNodeText(node));
483
510
  }
484
511
  const identifierVisitor = (child) => {
485
512
  if (ts.isIdentifier(child)) {
486
- const text = getNodeText(child);
487
- if (text === 'default')
488
- return;
489
- identifiers.push(text);
513
+ addIdentifier(getNodeText(child));
490
514
  }
491
515
  else if (ts.isExportDeclaration(child)) {
492
516
  if (child.exportClause && ts.isNamedExports(child.exportClause)) {
493
517
  child.exportClause.elements.forEach((element) => {
494
- identifiers.push(getNodeText(element.name));
518
+ addIdentifier(getNodeText(element.name), true);
495
519
  });
496
520
  }
497
521
  else if (child.exportClause &&
498
522
  ts.isNamespaceExport(child.exportClause)) {
499
- identifiers.push(getNodeText(child.exportClause.name));
523
+ addIdentifier(getNodeText(child.exportClause.name));
500
524
  }
501
525
  }
502
526
  else if (ts.isExportAssignment(child)) {
503
527
  if (ts.isIdentifier(child.expression)) {
504
- identifiers.push(getNodeText(child.expression));
528
+ addIdentifier(getNodeText(child.expression));
505
529
  }
506
530
  }
507
531
  else if (ts.isExportSpecifier(child)) {
508
- identifiers.push(getNodeText(child.name));
532
+ addIdentifier(getNodeText(child.name), true);
509
533
  return;
510
534
  }
511
535
  else if (ts.isFunctionDeclaration(child) && child.name) {
512
- identifiers.push(getNodeText(child.name));
536
+ addIdentifier(getNodeText(child.name));
513
537
  }
514
538
  else if (ts.isVariableStatement(child)) {
515
539
  child.declarationList.declarations.forEach((declaration) => {
516
540
  if (ts.isIdentifier(declaration.name)) {
517
- identifiers.push(getNodeText(declaration.name));
541
+ addIdentifier(getNodeText(declaration.name));
518
542
  }
519
543
  });
520
544
  }
521
545
  else if (ts.isImportDeclaration(child)) {
522
546
  if (child.importClause && child.importClause.namedBindings) {
523
547
  if (ts.isNamespaceImport(child.importClause.namedBindings)) {
524
- identifiers.push(getNodeText(child.importClause.namedBindings.name));
548
+ addIdentifier(getNodeText(child.importClause.namedBindings.name));
525
549
  }
526
550
  else if (ts.isNamedImports(child.importClause.namedBindings)) {
527
551
  child.importClause.namedBindings.elements.forEach((element) => {
528
- identifiers.push(getNodeText(element.name));
552
+ addIdentifier(getNodeText(element.name));
529
553
  });
530
554
  }
531
555
  }
532
556
  }
533
557
  else if (ts.isImportSpecifier(child)) {
534
- identifiers.push(getNodeText(child.name));
558
+ addIdentifier(getNodeText(child.name), true);
535
559
  return;
536
560
  }
537
561
  ts.forEachChild(child, identifierVisitor);
538
562
  };
539
563
  ts.forEachChild(node, identifierVisitor);
540
- return identifiers.filter((identifier, index, self) => self.indexOf(identifier) === index);
564
+ return identifiers;
541
565
  }
542
566
  resolveNamespaceImport(entityNode, namespaceIdentifier, importedFilePath) {
543
567
  const exportInfos = [];
@@ -1 +1 @@
1
- {"version":3,"file":"FileAnalyzer.js","sourceRoot":"","sources":["../../../../../../packages/analyze/src/lib/FileAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileAnalyzer.js","sourceRoot":"","sources":["../../../../../../packages/analyze/src/lib/FileAnalyzer.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,10 @@ export class ProjectAnalyzer {
18
18
  // Primary program is the first one (usually root) for backward compatibility
19
19
  this.program = this.programs[0];
20
20
  this.typeChecker = this.program.getTypeChecker();
21
+ // Build source file and type checker indexes for fast lookups
22
+ this.sourceFileByPath = new Map();
23
+ this.typeCheckerByPath = new Map();
24
+ this.buildSourceFileIndex();
21
25
  }
22
26
  static from({ project, dirPath, }) {
23
27
  const tsConfigPaths = lib.projects.getTsConfigPaths(project, dirPath);
@@ -34,32 +38,7 @@ export class ProjectAnalyzer {
34
38
  });
35
39
  }
36
40
  getFileAnalyzerByPath(filePath) {
37
- if (this.project.files?.length !== this.filesByPath.size) {
38
- // Rebuild the cache if project.files has changed
39
- this.filesByPath.clear();
40
- for (const file of this.project.files) {
41
- this.filesByPath.set(file.path, file);
42
- }
43
- }
44
- // Convert absolute path to relative if needed
45
- let relativePath = filePath;
46
- if (filePath.startsWith(this.dirPath + '/')) {
47
- relativePath = this.getRelativePath(filePath);
48
- }
49
- else if (filePath.startsWith('/')) {
50
- // Might be an absolute path with a different prefix (e.g., symlink)
51
- // Try to normalize it to match our dirPath
52
- try {
53
- const normalizedPath = realpathSync(filePath);
54
- if (normalizedPath.startsWith(this.dirPath + '/')) {
55
- relativePath = normalizedPath.replace(this.dirPath + '/', '');
56
- }
57
- }
58
- catch (error) {
59
- // If normalization fails, keep the original path
60
- }
61
- }
62
- const file = this.filesByPath.get(relativePath);
41
+ const file = this.getFileByPath(filePath);
63
42
  if (!file) {
64
43
  // Technically FileAnalyzer was built to accept null file, but most of
65
44
  // the code we've written since assumes fileAnalyzer.sourceFile exists,
@@ -69,6 +48,29 @@ export class ProjectAnalyzer {
69
48
  }
70
49
  return new lib.FileAnalyzer({ projectAnalyzer: this, file });
71
50
  }
51
+ getFileByPath(filePath) {
52
+ this.ensureFileCache();
53
+ const candidates = new Set();
54
+ if (filePath) {
55
+ candidates.add(filePath);
56
+ }
57
+ if (!filePath.startsWith('/')) {
58
+ candidates.add(filePath);
59
+ }
60
+ else if (filePath.startsWith(this.dirPath + '/')) {
61
+ candidates.add(filePath.slice(this.dirPath.length + 1));
62
+ }
63
+ const relativePath = this.toProjectRelativePath(filePath);
64
+ if (relativePath) {
65
+ candidates.add(relativePath);
66
+ }
67
+ for (const candidate of candidates) {
68
+ const file = this.filesByPath.get(candidate);
69
+ if (file)
70
+ return file;
71
+ }
72
+ return undefined;
73
+ }
72
74
  getFileAnalyzer(file) {
73
75
  this.filesByPath.set(file.path, file);
74
76
  return new lib.FileAnalyzer({ projectAnalyzer: this, file });
@@ -97,6 +99,15 @@ export class ProjectAnalyzer {
97
99
  }
98
100
  getSourceFile(filePath) {
99
101
  const absolutePath = this.getAbsolutePath(filePath);
102
+ const relativePath = filePath.startsWith('/')
103
+ ? this.toProjectRelativePath(filePath)
104
+ : filePath;
105
+ if (relativePath) {
106
+ const cached = this.sourceFileByPath.get(relativePath);
107
+ if (cached) {
108
+ return cached;
109
+ }
110
+ }
100
111
  // Search across all programs
101
112
  for (const program of this.programs) {
102
113
  // Try direct lookup first
@@ -181,6 +192,15 @@ export class ProjectAnalyzer {
181
192
  */
182
193
  getTypeCheckerForFile(filePath) {
183
194
  const absolutePath = this.getAbsolutePath(filePath);
195
+ const relativePath = filePath.startsWith('/')
196
+ ? this.toProjectRelativePath(filePath)
197
+ : filePath;
198
+ if (relativePath) {
199
+ const cachedChecker = this.typeCheckerByPath.get(relativePath);
200
+ if (cachedChecker) {
201
+ return cachedChecker;
202
+ }
203
+ }
184
204
  // Search for the file in each program and return that program's typeChecker
185
205
  for (const program of this.programs) {
186
206
  const sourceFile = program.getSourceFile(absolutePath);
@@ -241,6 +261,56 @@ export class ProjectAnalyzer {
241
261
  // Update primary program for backward compatibility
242
262
  this.program = this.programs[0];
243
263
  this.typeChecker = this.program.getTypeChecker();
264
+ this.buildSourceFileIndex();
265
+ }
266
+ ensureFileCache() {
267
+ if (this.project.files?.length !== this.filesByPath.size) {
268
+ // Rebuild the cache if project.files has changed
269
+ this.filesByPath.clear();
270
+ for (const file of this.project.files) {
271
+ this.filesByPath.set(file.path, file);
272
+ }
273
+ }
274
+ }
275
+ toProjectRelativePath(filePath) {
276
+ if (!filePath)
277
+ return null;
278
+ if (filePath.startsWith(this.dirPath + '/')) {
279
+ return filePath.replace(this.dirPath + '/', '');
280
+ }
281
+ if (!filePath.startsWith('/')) {
282
+ return null;
283
+ }
284
+ try {
285
+ const normalizedPath = realpathSync(filePath);
286
+ if (normalizedPath.startsWith(this.dirPath + '/')) {
287
+ return normalizedPath.replace(this.dirPath + '/', '');
288
+ }
289
+ }
290
+ catch (error) {
291
+ // If normalization fails, return null
292
+ }
293
+ return null;
294
+ }
295
+ buildSourceFileIndex() {
296
+ this.sourceFileByPath.clear();
297
+ this.typeCheckerByPath.clear();
298
+ for (const program of this.programs) {
299
+ const checker = program.getTypeChecker();
300
+ for (const sf of program.getSourceFiles()) {
301
+ // Skip node_modules files to keep the index small
302
+ if (sf.fileName.includes('node_modules')) {
303
+ continue;
304
+ }
305
+ const relativePath = this.toProjectRelativePath(sf.fileName);
306
+ if (!relativePath)
307
+ continue;
308
+ if (!this.sourceFileByPath.has(relativePath)) {
309
+ this.sourceFileByPath.set(relativePath, sf);
310
+ this.typeCheckerByPath.set(relativePath, checker);
311
+ }
312
+ }
313
+ }
244
314
  }
245
315
  }
246
316
  //# sourceMappingURL=ProjectAnalyzer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectAnalyzer.js","sourceRoot":"","sources":["../../../../../../packages/analyze/src/lib/ProjectAnalyzer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ProjectAnalyzer.js","sourceRoot":"","sources":["../../../../../../packages/analyze/src/lib/ProjectAnalyzer.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAElC,OAAO,KAAK,GAAG,MAAM,SAAS,CAAC;AAE/B,MAAM,OAAO,eAAe;IAY1B,YAAoB,EAClB,OAAO,EACP,OAAO,EACP,YAAY,EACZ,aAAa,GAMd;QACC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,0FAA0F;QAC1F,qFAAqF;QACrF,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,CAAC,YAAY,CAAC,CAAC;QAErD,gEAAgE;QAChE,IAAI,CAAC,WAAW,GAAG,IAAI,GAAG,EAAE,CAAC;QAE7B,sFAAsF;QACtF,MAAM,eAAe,GACnB,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAE3D,gDAAgD;QAChD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACpD,GAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,UAAU,EAAE,eAAe,CAAC,CACpE,CAAC;QAEF,6EAA6E;QAC7E,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjD,8DAA8D;QAC9D,IAAI,CAAC,gBAAgB,GAAG,IAAI,GAAG,EAAE,CAAC;QAClC,IAAI,CAAC,iBAAiB,GAAG,IAAI,GAAG,EAAE,CAAC;QACnC,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,EACV,OAAO,EACP,OAAO,GAIR;QACC,MAAM,aAAa,GAAG,GAAG,CAAC,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACtE,MAAM,YAAY,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,4CAA4C;QAEnF,0EAA0E;QAC1E,uEAAuE;QACvE,uDAAuD;QACvD,yDAAyD;QAEzD,OAAO,IAAI,eAAe,CAAC;YACzB,OAAO;YACP,OAAO;YACP,YAAY;YACZ,aAAa;SACd,CAAC,CAAC;IACL,CAAC;IAED,qBAAqB,CAAC,QAAgB;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,sEAAsE;YACtE,uEAAuE;YACvE,uDAAuD;YACvD,OAAO,CAAC,IAAI,CAAC,uCAAuC,QAAQ,EAAE,CAAC,CAAC;YAChE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,OAAO,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,IAAI,CAAC,eAAe,EAAE,CAAC;QAEvB,MAAM,UAAU,GAAG,IAAI,GAAG,EAAU,CAAC;QACrC,IAAI,QAAQ,EAAE,CAAC;YACb,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;YACnD,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;QAC1D,IAAI,YAAY,EAAE,CAAC;YACjB,UAAU,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC/B,CAAC;QAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACnC,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAC7C,IAAI,IAAI;gBAAE,OAAO,IAAI,CAAC;QACxB,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,eAAe,CAAC,IAAU;QACxB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,OAAO,IAAI,GAAG,CAAC,YAAY,CAAC,EAAE,eAAe,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,eAAe,CAAC,QAAgB;QAC9B,qDAAqD;QACrD,sFAAsF;QACtF,IAAI,kBAAkB,GAAG,QAAQ,CAAC;QAClC,IAAI,mBAAmB,GAAG,KAAK,CAAC;QAEhC,IAAI,CAAC;YACH,qDAAqD;YACrD,IAAI,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,kBAAkB,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,gEAAgE;YAChE,kBAAkB,GAAG,QAAQ,CAAC;YAC9B,mBAAmB,GAAG,IAAI,CAAC;QAC7B,CAAC;QAED,MAAM,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;QAExE,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,eAAe,CAAC,QAAgB;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;YACtC,CAAC,CAAC,QAAQ,CAAC;QAEb,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,6BAA6B;QAC7B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,0BAA0B;YAC1B,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,UAAU,CAAC;YACpB,CAAC;YAED,6EAA6E;YAC7E,2EAA2E;YAC3E,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,yEAAyE;gBACzE,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACnC,iEAAiE;oBACjE,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC/D,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;wBAC5B,OAAO,EAAE,CAAC;oBACZ,CAAC;oBAED,qEAAqE;oBACrE,IAAI,CAAC;wBACH,MAAM,gBAAgB,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;wBACnD,MAAM,kBAAkB,GAAG,gBAAgB,CAAC,OAAO,CACjD,IAAI,CAAC,OAAO,GAAG,GAAG,EAClB,EAAE,CACH,CAAC;wBACF,IAAI,kBAAkB,KAAK,QAAQ,EAAE,CAAC;4BACpC,OAAO,EAAE,CAAC;wBACZ,CAAC;oBACH,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,2CAA2C;oBAC7C,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iBAAiB;QACf,8DAA8D;QAC9D,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAG9B,CAAC;QAEJ,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,iEAAiE;gBACjE,0EAA0E;gBAC1E,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBACzC,SAAS;gBACX,CAAC;gBAED,IAAI,YAAY,GAAG,EAAE,CAAC,QAAQ,CAAC;gBAE/B,+BAA+B;gBAC/B,IAAI,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;oBAChD,YAAY,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC9D,CAAC;qBAAM,CAAC;oBACN,2EAA2E;oBAC3E,wEAAwE;oBACxE,IAAI,CAAC;wBACH,MAAM,kBAAkB,GAAG,YAAY,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;wBACrD,IAAI,kBAAkB,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;4BACtD,YAAY,GAAG,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;wBACpE,CAAC;oBACH,CAAC;oBAAC,MAAM,CAAC;wBACP,iEAAiE;oBACnE,CAAC;gBACH,CAAC;gBAED,+DAA+D;gBAC/D,IAAI,YAAY,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBAC1C,SAAS;gBACX,CAAC;gBAED,0DAA0D;gBAC1D,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;oBACzC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE;wBAClC,IAAI,EAAE,YAAY;wBAClB,YAAY,EAAE,EAAE,CAAC,QAAQ;wBACzB,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE;qBACtB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,CAAC,CAAC;IAChD,CAAC;IAED;;;;OAIG;IACH,qBAAqB,CAAC,QAAgB;QACpC,MAAM,YAAY,GAAG,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QACpD,MAAM,YAAY,GAAG,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC;YAC3C,CAAC,CAAC,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC;YACtC,CAAC,CAAC,QAAQ,CAAC;QAEb,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC/D,IAAI,aAAa,EAAE,CAAC;gBAClB,OAAO,aAAa,CAAC;YACvB,CAAC;QACH,CAAC;QAED,4EAA4E;QAC5E,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;YACvD,IAAI,UAAU,EAAE,CAAC;gBACf,OAAO,OAAO,CAAC,cAAc,EAAE,CAAC;YAClC,CAAC;YAED,sEAAsE;YACtE,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACnC,MAAM,UAAU,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;oBAC/D,IAAI,UAAU,KAAK,QAAQ,EAAE,CAAC;wBAC5B,OAAO,OAAO,CAAC,cAAc,EAAE,CAAC;oBAClC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,kCAAkC;QAClC,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,iBAAiB,CAAC,UAAkB,EAAE,UAAyB;QAC7D,+CAA+C;QAC/C,+CAA+C;QAC/C,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAE1D,OAAO,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,iBAAiB,CAC3C,UAAU,EACV,UAAU,EACV,cAAc,CACf,CAAC;IACJ,CAAC;IAED;;;OAGG;IACK,iBAAiB,CAAC,UAAyB;QACjD,4DAA4D;QAC5D,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,EAAE,KAAK,UAAU,EAAE,CAAC;gBACtB,OAAO,OAAO,CAAC;YACjB,CAAC;QACH,CAAC;QAED,2CAA2C;QAC3C,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,IAAU;QACxB,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACH,cAAc;QACZ,+CAA+C;QAC/C,MAAM,SAAS,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QAExC,2DAA2D;QAC3D,MAAM,eAAe,GACnB,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAEhE,uBAAuB;QACvB,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CACpD,GAAG,CAAC,IAAI,CAAC,6BAA6B,CAAC,UAAU,EAAE,eAAe,CAAC,CACpE,CAAC;QAEF,oDAAoD;QACpD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;QAEjD,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAC9B,CAAC;IAEO,eAAe;QACrB,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC;YACzD,iDAAiD;YACjD,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;YACzB,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBACtC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACxC,CAAC;QACH,CAAC;IACH,CAAC;IAEO,qBAAqB,CAAC,QAAgB;QAC5C,IAAI,CAAC,QAAQ;YAAE,OAAO,IAAI,CAAC;QAE3B,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC;gBAClD,OAAO,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,GAAG,GAAG,EAAE,EAAE,CAAC,CAAC;YACxD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,sCAAsC;QACxC,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAEO,oBAAoB;QAC1B,IAAI,CAAC,gBAAgB,CAAC,KAAK,EAAE,CAAC;QAC9B,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QAE/B,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;YACzC,KAAK,MAAM,EAAE,IAAI,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;gBAC1C,kDAAkD;gBAClD,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC;oBACzC,SAAS;gBACX,CAAC;gBAED,MAAM,YAAY,GAAG,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;gBAC7D,IAAI,CAAC,YAAY;oBAAE,SAAS;gBAE5B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC;oBAC7C,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;oBAC5C,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;gBACpD,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;CACF"}
@@ -1,4 +1,5 @@
1
1
  import ts from 'typescript';
2
+ const allDeclaredEntityNodesCache = new WeakMap();
2
3
  /**
3
4
  * Returns all declared entity nodes in a source file.
4
5
  *
@@ -11,6 +12,13 @@ import ts from 'typescript';
11
12
  */
12
13
  export function getAllDeclaredEntityNodes({ sourceFile, possibleIdentifierNode, entityNode, entities = {}, }) {
13
14
  try {
15
+ const isRootCall = !possibleIdentifierNode && !entityNode;
16
+ if (isRootCall) {
17
+ const cached = allDeclaredEntityNodesCache.get(sourceFile);
18
+ if (cached) {
19
+ return cached;
20
+ }
21
+ }
14
22
  if (!possibleIdentifierNode) {
15
23
  possibleIdentifierNode = sourceFile;
16
24
  }
@@ -20,6 +28,9 @@ export function getAllDeclaredEntityNodes({ sourceFile, possibleIdentifierNode,
20
28
  entities[possibleIdentifierNode.text] =
21
29
  entityNode ?? possibleIdentifierNode;
22
30
  }
31
+ if (isRootCall) {
32
+ allDeclaredEntityNodesCache.set(sourceFile, entities);
33
+ }
23
34
  return entities;
24
35
  }
25
36
  if (ts.isBindingElement(possibleIdentifierNode)) {
@@ -181,6 +192,9 @@ export function getAllDeclaredEntityNodes({ sourceFile, possibleIdentifierNode,
181
192
  throw e;
182
193
  }
183
194
  });
195
+ if (isRootCall) {
196
+ allDeclaredEntityNodesCache.set(sourceFile, entities);
197
+ }
184
198
  return entities;
185
199
  }
186
200
  catch (e) {