@codeyam/codeyam-cli 0.1.0-staging.8b51541 → 0.1.0-staging.8c89b23

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 (452) hide show
  1. package/analyzer-template/.build-info.json +8 -8
  2. package/analyzer-template/log.txt +3 -3
  3. package/analyzer-template/package.json +6 -6
  4. package/analyzer-template/packages/ai/package.json +1 -1
  5. package/analyzer-template/packages/ai/src/lib/astScopes/methodSemantics.ts +135 -0
  6. package/analyzer-template/packages/ai/src/lib/astScopes/nodeToSource.ts +19 -0
  7. package/analyzer-template/packages/ai/src/lib/astScopes/paths.ts +11 -4
  8. package/analyzer-template/packages/ai/src/lib/dataStructure/ScopeDataStructure.ts +36 -9
  9. package/analyzer-template/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.ts +10 -3
  10. package/analyzer-template/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.ts +16 -6
  11. package/analyzer-template/packages/analyze/index.ts +4 -1
  12. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.ts +28 -2
  13. package/analyzer-template/packages/analyze/src/lib/files/analyze/analyzeEntities.ts +5 -36
  14. package/analyzer-template/packages/analyze/src/lib/files/analyze/findOrCreateEntity.ts +10 -6
  15. package/analyzer-template/packages/analyze/src/lib/files/analyze/gatherEntityMap.ts +9 -12
  16. package/analyzer-template/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.ts +21 -0
  17. package/analyzer-template/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.ts +82 -10
  18. package/analyzer-template/packages/analyze/src/lib/files/analyzeChange.ts +4 -0
  19. package/analyzer-template/packages/analyze/src/lib/files/analyzeInitial.ts +4 -0
  20. package/analyzer-template/packages/analyze/src/lib/files/analyzeNextRoute.ts +8 -3
  21. package/analyzer-template/packages/analyze/src/lib/files/scenarios/generateDataStructure.ts +239 -58
  22. package/analyzer-template/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.ts +1684 -1462
  23. package/analyzer-template/packages/aws/package.json +7 -7
  24. package/analyzer-template/packages/database/package.json +3 -3
  25. package/analyzer-template/packages/database/src/lib/kysely/tables/editorScenariosTable.ts +42 -16
  26. package/analyzer-template/packages/database/src/lib/loadAnalysis.ts +25 -15
  27. package/analyzer-template/packages/database/src/lib/loadEntity.ts +19 -8
  28. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts +3 -1
  29. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.d.ts.map +1 -1
  30. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js +44 -16
  31. package/analyzer-template/packages/github/dist/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
  32. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.d.ts.map +1 -1
  33. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js +7 -1
  34. package/analyzer-template/packages/github/dist/database/src/lib/loadAnalysis.js.map +1 -1
  35. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts +4 -1
  36. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.d.ts.map +1 -1
  37. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js +5 -5
  38. package/analyzer-template/packages/github/dist/database/src/lib/loadEntity.js.map +1 -1
  39. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts +3 -1
  40. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.d.ts.map +1 -1
  41. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js +22 -1
  42. package/analyzer-template/packages/utils/dist/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  43. package/analyzer-template/packages/utils/src/lib/fs/rsyncCopy.ts +27 -0
  44. package/analyzer-template/project/analyzeFileEntities.ts +26 -0
  45. package/analyzer-template/project/runMultiScenarioServer.ts +26 -3
  46. package/background/src/lib/virtualized/project/analyzeFileEntities.js +22 -0
  47. package/background/src/lib/virtualized/project/analyzeFileEntities.js.map +1 -1
  48. package/background/src/lib/virtualized/project/runMultiScenarioServer.js +23 -3
  49. package/background/src/lib/virtualized/project/runMultiScenarioServer.js.map +1 -1
  50. package/codeyam-cli/src/cli.js +24 -0
  51. package/codeyam-cli/src/cli.js.map +1 -1
  52. package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js +47 -0
  53. package/codeyam-cli/src/commands/__tests__/editor.analyzeImportsArgs.test.js.map +1 -0
  54. package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js +71 -0
  55. package/codeyam-cli/src/commands/__tests__/editor.auditNoAutoAnalysis.test.js.map +1 -0
  56. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js +30 -0
  57. package/codeyam-cli/src/commands/__tests__/editor.designSystem.test.js.map +1 -0
  58. package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js +51 -0
  59. package/codeyam-cli/src/commands/__tests__/editor.isolateArgs.test.js.map +1 -0
  60. package/codeyam-cli/src/commands/__tests__/editor.statePersistence.test.js +55 -0
  61. package/codeyam-cli/src/commands/__tests__/editor.statePersistence.test.js.map +1 -0
  62. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js +20 -9
  63. package/codeyam-cli/src/commands/__tests__/editor.stepDispatch.test.js.map +1 -1
  64. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js +39 -3
  65. package/codeyam-cli/src/commands/__tests__/init.gitignore.test.js.map +1 -1
  66. package/codeyam-cli/src/commands/editor.js +3489 -553
  67. package/codeyam-cli/src/commands/editor.js.map +1 -1
  68. package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js +23 -0
  69. package/codeyam-cli/src/commands/editorAnalyzeImportsArgs.js.map +1 -0
  70. package/codeyam-cli/src/commands/editorIsolateArgs.js +25 -0
  71. package/codeyam-cli/src/commands/editorIsolateArgs.js.map +1 -0
  72. package/codeyam-cli/src/commands/init.js +21 -0
  73. package/codeyam-cli/src/commands/init.js.map +1 -1
  74. package/codeyam-cli/src/commands/telemetry.js +37 -0
  75. package/codeyam-cli/src/commands/telemetry.js.map +1 -0
  76. package/codeyam-cli/src/data/designSystems.js +27 -0
  77. package/codeyam-cli/src/data/designSystems.js.map +1 -0
  78. package/codeyam-cli/src/data/techStacks.js +1 -1
  79. package/codeyam-cli/src/utils/__tests__/editorApi.test.js +44 -0
  80. package/codeyam-cli/src/utils/__tests__/editorApi.test.js.map +1 -1
  81. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js +3174 -1
  82. package/codeyam-cli/src/utils/__tests__/editorAudit.test.js.map +1 -1
  83. package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js +76 -0
  84. package/codeyam-cli/src/utils/__tests__/editorBroadcastViewport.test.js.map +1 -0
  85. package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js +137 -0
  86. package/codeyam-cli/src/utils/__tests__/editorCaptureScenarioSeeding.test.js.map +1 -0
  87. package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js +100 -0
  88. package/codeyam-cli/src/utils/__tests__/editorDeleteScenario.test.js.map +1 -0
  89. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js +76 -3
  90. package/codeyam-cli/src/utils/__tests__/editorEntityChangeStatus.test.js.map +1 -1
  91. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js +381 -0
  92. package/codeyam-cli/src/utils/__tests__/editorEntityHelpers.test.js.map +1 -0
  93. package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js +67 -0
  94. package/codeyam-cli/src/utils/__tests__/editorGuardMiddleware.test.js.map +1 -0
  95. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js +75 -1
  96. package/codeyam-cli/src/utils/__tests__/editorLoaderHelpers.test.js.map +1 -1
  97. package/codeyam-cli/src/utils/__tests__/editorMigration.test.js +435 -0
  98. package/codeyam-cli/src/utils/__tests__/editorMigration.test.js.map +1 -0
  99. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js +11 -3
  100. package/codeyam-cli/src/utils/__tests__/editorPreview.test.js.map +1 -1
  101. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js +98 -1
  102. package/codeyam-cli/src/utils/__tests__/editorProxySession.test.js.map +1 -1
  103. package/codeyam-cli/src/utils/__tests__/editorRoadmap.test.js +941 -0
  104. package/codeyam-cli/src/utils/__tests__/editorRoadmap.test.js.map +1 -0
  105. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js +190 -0
  106. package/codeyam-cli/src/utils/__tests__/editorScenarioSwitch.test.js.map +1 -1
  107. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js +726 -17
  108. package/codeyam-cli/src/utils/__tests__/editorScenarios.test.js.map +1 -1
  109. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js +201 -1
  110. package/codeyam-cli/src/utils/__tests__/editorSeedAdapter.test.js.map +1 -1
  111. package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js +143 -0
  112. package/codeyam-cli/src/utils/__tests__/editorSeedAdapterPrismaValidation.test.js.map +1 -0
  113. package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js +66 -0
  114. package/codeyam-cli/src/utils/__tests__/editorSessionFilter.test.js.map +1 -0
  115. package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js +53 -0
  116. package/codeyam-cli/src/utils/__tests__/editorShouldRevalidate.test.js.map +1 -0
  117. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js +333 -11
  118. package/codeyam-cli/src/utils/__tests__/entityChangeStatus.test.js.map +1 -1
  119. package/codeyam-cli/src/utils/__tests__/envFile.test.js +125 -0
  120. package/codeyam-cli/src/utils/__tests__/envFile.test.js.map +1 -0
  121. package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js +177 -0
  122. package/codeyam-cli/src/utils/__tests__/glossaryAdd.test.js.map +1 -0
  123. package/codeyam-cli/src/utils/__tests__/handoffContext.test.js +500 -0
  124. package/codeyam-cli/src/utils/__tests__/handoffContext.test.js.map +1 -0
  125. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js +16 -1
  126. package/codeyam-cli/src/utils/__tests__/journalCaptureStabilization.test.js.map +1 -1
  127. package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js +302 -0
  128. package/codeyam-cli/src/utils/__tests__/manualEntityAnalysis.test.js.map +1 -0
  129. package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js +127 -0
  130. package/codeyam-cli/src/utils/__tests__/registerScenarioResult.test.js.map +1 -0
  131. package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js +118 -0
  132. package/codeyam-cli/src/utils/__tests__/routePatternMatching.test.js.map +1 -0
  133. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js +57 -0
  134. package/codeyam-cli/src/utils/__tests__/scenarioCoverage.test.js.map +1 -1
  135. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js +220 -2
  136. package/codeyam-cli/src/utils/__tests__/scenariosManifest.test.js.map +1 -1
  137. package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js +84 -0
  138. package/codeyam-cli/src/utils/__tests__/screenshotHash.test.js.map +1 -0
  139. package/codeyam-cli/src/utils/__tests__/telemetry.test.js +159 -0
  140. package/codeyam-cli/src/utils/__tests__/telemetry.test.js.map +1 -0
  141. package/codeyam-cli/src/utils/__tests__/testRunner.test.js +216 -0
  142. package/codeyam-cli/src/utils/__tests__/testRunner.test.js.map +1 -0
  143. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js +6 -0
  144. package/codeyam-cli/src/utils/__tests__/webappDetection.test.js.map +1 -1
  145. package/codeyam-cli/src/utils/analysisRunner.js +39 -8
  146. package/codeyam-cli/src/utils/analysisRunner.js.map +1 -1
  147. package/codeyam-cli/src/utils/analyzer.js +11 -1
  148. package/codeyam-cli/src/utils/analyzer.js.map +1 -1
  149. package/codeyam-cli/src/utils/backgroundServer.js +1 -1
  150. package/codeyam-cli/src/utils/backgroundServer.js.map +1 -1
  151. package/codeyam-cli/src/utils/designSystemShowcase.js +810 -0
  152. package/codeyam-cli/src/utils/designSystemShowcase.js.map +1 -0
  153. package/codeyam-cli/src/utils/editorApi.js +16 -0
  154. package/codeyam-cli/src/utils/editorApi.js.map +1 -1
  155. package/codeyam-cli/src/utils/editorAudit.js +649 -10
  156. package/codeyam-cli/src/utils/editorAudit.js.map +1 -1
  157. package/codeyam-cli/src/utils/editorBroadcastViewport.js +26 -0
  158. package/codeyam-cli/src/utils/editorBroadcastViewport.js.map +1 -0
  159. package/codeyam-cli/src/utils/editorDeleteScenario.js +67 -0
  160. package/codeyam-cli/src/utils/editorDeleteScenario.js.map +1 -0
  161. package/codeyam-cli/src/utils/editorEntityChangeStatus.js +13 -7
  162. package/codeyam-cli/src/utils/editorEntityChangeStatus.js.map +1 -1
  163. package/codeyam-cli/src/utils/editorEntityHelpers.js +144 -0
  164. package/codeyam-cli/src/utils/editorEntityHelpers.js.map +1 -0
  165. package/codeyam-cli/src/utils/editorGuard.js +36 -0
  166. package/codeyam-cli/src/utils/editorGuard.js.map +1 -0
  167. package/codeyam-cli/src/utils/editorLoaderHelpers.js +40 -1
  168. package/codeyam-cli/src/utils/editorLoaderHelpers.js.map +1 -1
  169. package/codeyam-cli/src/utils/editorMigration.js +224 -0
  170. package/codeyam-cli/src/utils/editorMigration.js.map +1 -0
  171. package/codeyam-cli/src/utils/editorPreview.js +5 -3
  172. package/codeyam-cli/src/utils/editorPreview.js.map +1 -1
  173. package/codeyam-cli/src/utils/editorRecapture.js +109 -0
  174. package/codeyam-cli/src/utils/editorRecapture.js.map +1 -0
  175. package/codeyam-cli/src/utils/editorRoadmap.js +530 -0
  176. package/codeyam-cli/src/utils/editorRoadmap.js.map +1 -0
  177. package/codeyam-cli/src/utils/editorScenarioSwitch.js +39 -2
  178. package/codeyam-cli/src/utils/editorScenarioSwitch.js.map +1 -1
  179. package/codeyam-cli/src/utils/editorScenarios.js +307 -7
  180. package/codeyam-cli/src/utils/editorScenarios.js.map +1 -1
  181. package/codeyam-cli/src/utils/editorSeedAdapter.js +308 -6
  182. package/codeyam-cli/src/utils/editorSeedAdapter.js.map +1 -1
  183. package/codeyam-cli/src/utils/editorShouldRevalidate.js +21 -0
  184. package/codeyam-cli/src/utils/editorShouldRevalidate.js.map +1 -0
  185. package/codeyam-cli/src/utils/entityChangeStatus.js +50 -5
  186. package/codeyam-cli/src/utils/entityChangeStatus.js.map +1 -1
  187. package/codeyam-cli/src/utils/entityChangeStatus.server.js +38 -3
  188. package/codeyam-cli/src/utils/entityChangeStatus.server.js.map +1 -1
  189. package/codeyam-cli/src/utils/envFile.js +90 -0
  190. package/codeyam-cli/src/utils/envFile.js.map +1 -0
  191. package/codeyam-cli/src/utils/fileWatcher.js +38 -0
  192. package/codeyam-cli/src/utils/fileWatcher.js.map +1 -1
  193. package/codeyam-cli/src/utils/glossaryAdd.js +74 -0
  194. package/codeyam-cli/src/utils/glossaryAdd.js.map +1 -0
  195. package/codeyam-cli/src/utils/handoffContext.js +257 -0
  196. package/codeyam-cli/src/utils/handoffContext.js.map +1 -0
  197. package/codeyam-cli/src/utils/install-skills.js +50 -6
  198. package/codeyam-cli/src/utils/install-skills.js.map +1 -1
  199. package/codeyam-cli/src/utils/manualEntityAnalysis.js +196 -0
  200. package/codeyam-cli/src/utils/manualEntityAnalysis.js.map +1 -0
  201. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js +159 -0
  202. package/codeyam-cli/src/utils/queue/__tests__/job.interactiveStart.test.js.map +1 -0
  203. package/codeyam-cli/src/utils/queue/job.js +35 -6
  204. package/codeyam-cli/src/utils/queue/job.js.map +1 -1
  205. package/codeyam-cli/src/utils/registerScenarioResult.js +52 -0
  206. package/codeyam-cli/src/utils/registerScenarioResult.js.map +1 -0
  207. package/codeyam-cli/src/utils/routePatternMatching.js +129 -0
  208. package/codeyam-cli/src/utils/routePatternMatching.js.map +1 -0
  209. package/codeyam-cli/src/utils/scenarioCoverage.js +12 -10
  210. package/codeyam-cli/src/utils/scenarioCoverage.js.map +1 -1
  211. package/codeyam-cli/src/utils/scenariosManifest.js +84 -12
  212. package/codeyam-cli/src/utils/scenariosManifest.js.map +1 -1
  213. package/codeyam-cli/src/utils/screenshotHash.js +26 -0
  214. package/codeyam-cli/src/utils/screenshotHash.js.map +1 -0
  215. package/codeyam-cli/src/utils/simulationGateMiddleware.js +9 -0
  216. package/codeyam-cli/src/utils/simulationGateMiddleware.js.map +1 -1
  217. package/codeyam-cli/src/utils/telemetry.js +106 -0
  218. package/codeyam-cli/src/utils/telemetry.js.map +1 -0
  219. package/codeyam-cli/src/utils/telemetryMiddleware.js +22 -0
  220. package/codeyam-cli/src/utils/telemetryMiddleware.js.map +1 -0
  221. package/codeyam-cli/src/utils/testResultCache.js +53 -0
  222. package/codeyam-cli/src/utils/testResultCache.js.map +1 -0
  223. package/codeyam-cli/src/utils/testResultCache.server.js +81 -0
  224. package/codeyam-cli/src/utils/testResultCache.server.js.map +1 -0
  225. package/codeyam-cli/src/utils/testResultCache.server.test.js +187 -0
  226. package/codeyam-cli/src/utils/testResultCache.server.test.js.map +1 -0
  227. package/codeyam-cli/src/utils/testResultCache.test.js +230 -0
  228. package/codeyam-cli/src/utils/testResultCache.test.js.map +1 -0
  229. package/codeyam-cli/src/utils/testRunner.js +193 -1
  230. package/codeyam-cli/src/utils/testRunner.js.map +1 -1
  231. package/codeyam-cli/src/utils/webappDetection.js +4 -2
  232. package/codeyam-cli/src/utils/webappDetection.js.map +1 -1
  233. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js +99 -0
  234. package/codeyam-cli/src/webserver/__tests__/api.interactive-switch-scenario.test.js.map +1 -0
  235. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js +35 -0
  236. package/codeyam-cli/src/webserver/__tests__/buildPtyEnv.test.js.map +1 -0
  237. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js +68 -1
  238. package/codeyam-cli/src/webserver/__tests__/clientErrors.test.js.map +1 -1
  239. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js +203 -8
  240. package/codeyam-cli/src/webserver/__tests__/editorProxy.test.js.map +1 -1
  241. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js +190 -21
  242. package/codeyam-cli/src/webserver/__tests__/idleDetector.test.js.map +1 -1
  243. package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js +135 -0
  244. package/codeyam-cli/src/webserver/__tests__/stripClaudeCommand.test.js.map +1 -0
  245. package/codeyam-cli/src/webserver/app/lib/clientErrors.js +22 -1
  246. package/codeyam-cli/src/webserver/app/lib/clientErrors.js.map +1 -1
  247. package/codeyam-cli/src/webserver/app/lib/database.js.map +1 -1
  248. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js +34 -0
  249. package/codeyam-cli/src/webserver/app/routes/api.interactive-switch-scenario.js.map +1 -0
  250. package/codeyam-cli/src/webserver/app/types/editor.js +8 -0
  251. package/codeyam-cli/src/webserver/app/types/editor.js.map +1 -0
  252. package/codeyam-cli/src/webserver/backgroundServer.js +60 -61
  253. package/codeyam-cli/src/webserver/backgroundServer.js.map +1 -1
  254. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-DTBZZfSk.js +1 -0
  255. package/codeyam-cli/src/webserver/build/client/assets/{EntityItem-BcgbViKV.js → EntityItem-BxclONWq.js} +3 -3
  256. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-CQgyEGV-.js +1 -0
  257. package/codeyam-cli/src/webserver/build/client/assets/{EntityTypeIcon-CQIG2qda.js → EntityTypeIcon-BsnEOJZ_.js} +1 -1
  258. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-ByaELMbv.js +1 -0
  259. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-6WjVfhxX.js +25 -0
  260. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-ChX-Hp7W.js +3 -0
  261. package/codeyam-cli/src/webserver/build/client/assets/{LoadingDots-BU_OAEMP.js → LoadingDots-By5zI316.js} +1 -1
  262. package/codeyam-cli/src/webserver/build/client/assets/{LogViewer-ceAyBX-H.js → LogViewer-C-9zQdXg.js} +3 -3
  263. package/codeyam-cli/src/webserver/build/client/assets/MiniClaudeChat-Bs2_Oua4.js +36 -0
  264. package/codeyam-cli/src/webserver/build/client/assets/{ReportIssueModal-BzHcG7SE.js → ReportIssueModal-DQsceHVv.js} +2 -2
  265. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-DThcm_9M.js +1 -0
  266. package/codeyam-cli/src/webserver/build/client/assets/{ScenarioViewer-TSD3C211.js → ScenarioViewer-Cl4oOA3A.js} +3 -3
  267. package/codeyam-cli/src/webserver/build/client/assets/Spinner-CIil5-gb.js +34 -0
  268. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-CK7-NaPZ.js +1 -0
  269. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-BqkA9zyZ.js +1 -0
  270. package/codeyam-cli/src/webserver/build/client/assets/{_index-DLxKhri3.js → _index-DnOgyseQ.js} +2 -2
  271. package/codeyam-cli/src/webserver/build/client/assets/{activity.(_tab)-BcY3q6nt.js → activity.(_tab)-DqM9hbNE.js} +3 -3
  272. package/codeyam-cli/src/webserver/build/client/assets/{addon-web-links-Duc5hnl7.js → addon-web-links-C58dYPwR.js} +1 -1
  273. package/codeyam-cli/src/webserver/build/client/assets/{agent-transcripts-Bni3iiUj.js → agent-transcripts-B8NCeOrm.js} +3 -3
  274. package/codeyam-cli/src/webserver/build/client/assets/api.editor-github-verify-l0sNRNKZ.js +1 -0
  275. package/codeyam-cli/src/webserver/build/client/assets/api.editor-handoff-l0sNRNKZ.js +1 -0
  276. package/codeyam-cli/src/webserver/build/client/assets/api.editor-hosting-verify-l0sNRNKZ.js +1 -0
  277. package/codeyam-cli/src/webserver/build/client/assets/api.editor-recapture-stale-l0sNRNKZ.js +1 -0
  278. package/codeyam-cli/src/webserver/build/client/assets/api.editor-rename-scenario-l0sNRNKZ.js +1 -0
  279. package/codeyam-cli/src/webserver/build/client/assets/api.editor-roadmap-l0sNRNKZ.js +1 -0
  280. package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-scenario-data-l0sNRNKZ.js +1 -0
  281. package/codeyam-cli/src/webserver/build/client/assets/api.editor-save-seed-state-l0sNRNKZ.js +1 -0
  282. package/codeyam-cli/src/webserver/build/client/assets/api.editor-scenario-prompt-l0sNRNKZ.js +1 -0
  283. package/codeyam-cli/src/webserver/build/client/assets/api.editor-schema-l0sNRNKZ.js +1 -0
  284. package/codeyam-cli/src/webserver/build/client/assets/api.editor-verify-routes-l0sNRNKZ.js +1 -0
  285. package/codeyam-cli/src/webserver/build/client/assets/api.interactive-switch-scenario-l0sNRNKZ.js +1 -0
  286. package/codeyam-cli/src/webserver/build/client/assets/{book-open-BYOypzCa.js → book-open-BFSIqZgO.js} +1 -1
  287. package/codeyam-cli/src/webserver/build/client/assets/{chevron-down-C_Pmso5S.js → chevron-down-B9fDzFVh.js} +1 -1
  288. package/codeyam-cli/src/webserver/build/client/assets/chunk-UVKPFVEO-Bmq2apuh.js +43 -0
  289. package/codeyam-cli/src/webserver/build/client/assets/{circle-check-BVMi9VA5.js → circle-check-DLPObLUx.js} +1 -1
  290. package/codeyam-cli/src/webserver/build/client/assets/{copy-n2FB0_Sw.js → copy-DXEmO0TD.js} +1 -1
  291. package/codeyam-cli/src/webserver/build/client/assets/{createLucideIcon-CC6AbExI.js → createLucideIcon-BwyFiRot.js} +1 -1
  292. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-Coe5NhbS.js +1 -0
  293. package/codeyam-cli/src/webserver/build/client/assets/{cy-logo-cli-CCKUIm0S.svg → cy-logo-cli-DoA97ML3.svg} +2 -2
  294. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-iRhRIFlp.js +1 -0
  295. package/codeyam-cli/src/webserver/build/client/assets/editor._tab-BZPBzV73.js +1 -0
  296. package/codeyam-cli/src/webserver/build/client/assets/editor.entity.(_sha)-D4cIaQC3.js +161 -0
  297. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-C6fEYHrh.js +41 -0
  298. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha._-DwCV5__E.js → entity._sha._-pc-vc6wO.js} +13 -12
  299. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-C8AyYgYT.js +6 -0
  300. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-DziaVQX1.js +6 -0
  301. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-BTcpgIpC.js +6 -0
  302. package/codeyam-cli/src/webserver/build/client/assets/{entity._sha_.edit._scenarioId-BMvVHNXU.js → entity._sha_.edit._scenarioId-D_O_ajfZ.js} +2 -2
  303. package/codeyam-cli/src/webserver/build/client/assets/{entry.client-DTvKq3TY.js → entry.client-j1Vi0bco.js} +6 -6
  304. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-Daa96Fr1.js +1 -0
  305. package/codeyam-cli/src/webserver/build/client/assets/files-kuny2Q_s.js +1 -0
  306. package/codeyam-cli/src/webserver/build/client/assets/git-DgCZPMie.js +1 -0
  307. package/codeyam-cli/src/webserver/build/client/assets/globals-D4iGjX2m.css +1 -0
  308. package/codeyam-cli/src/webserver/build/client/assets/{index-BcvgDzbZ.js → index-BliGSSpl.js} +1 -1
  309. package/codeyam-cli/src/webserver/build/client/assets/{index-yHOVb4rc.js → index-SqjQKTdH.js} +1 -1
  310. package/codeyam-cli/src/webserver/build/client/assets/{index-10oVnAAH.js → index-vyrZD2g4.js} +1 -1
  311. package/codeyam-cli/src/webserver/build/client/assets/jsx-runtime-D_zvdyIk.js +9 -0
  312. package/codeyam-cli/src/webserver/build/client/assets/labs-c3yLxSEp.js +1 -0
  313. package/codeyam-cli/src/webserver/build/client/assets/{loader-circle-DaAZ_H2w.js → loader-circle-D-q28GLF.js} +1 -1
  314. package/codeyam-cli/src/webserver/build/client/assets/manifest-985e63d6.js +1 -0
  315. package/codeyam-cli/src/webserver/build/client/assets/{memory-9gnxSZlb.js → memory-CEWIUC4t.js} +2 -2
  316. package/codeyam-cli/src/webserver/build/client/assets/{pause-f5-1lKBt.js → pause-BP6fitdh.js} +1 -1
  317. package/codeyam-cli/src/webserver/build/client/assets/root-BRyJWJBA.js +80 -0
  318. package/codeyam-cli/src/webserver/build/client/assets/{search-Di64LWVb.js → search-BooqacKS.js} +1 -1
  319. package/codeyam-cli/src/webserver/build/client/assets/settings-BM0nbryO.js +1 -0
  320. package/codeyam-cli/src/webserver/build/client/assets/simulations-ovy6FjRY.js +1 -0
  321. package/codeyam-cli/src/webserver/build/client/assets/{terminal-Br7MOqts.js → terminal-DHemCJIs.js} +1 -1
  322. package/codeyam-cli/src/webserver/build/client/assets/{triangle-alert-BLdiCuG-.js → triangle-alert-D87ekDl8.js} +1 -1
  323. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-Dk0Tciqg.js +1 -0
  324. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C8QvIe05.js +2 -0
  325. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-jkCytuYz.js +1 -0
  326. package/codeyam-cli/src/webserver/build/client/assets/useToast-BgqkixU9.js +1 -0
  327. package/codeyam-cli/src/webserver/build/server/assets/analysisRunner-RX_oAulJ.js +16 -0
  328. package/codeyam-cli/src/webserver/build/server/assets/{index-DsZjKspK.js → index-DRb-tJ77.js} +1 -1
  329. package/codeyam-cli/src/webserver/build/server/assets/init-CzFOE1qs.js +14 -0
  330. package/codeyam-cli/src/webserver/build/server/assets/progress-CHTtrxFG.js +1 -0
  331. package/codeyam-cli/src/webserver/build/server/assets/server-build-CPKq4t0v.js +765 -0
  332. package/codeyam-cli/src/webserver/build/server/index.js +1 -1
  333. package/codeyam-cli/src/webserver/build-info.json +5 -5
  334. package/codeyam-cli/src/webserver/editorProxy.js +244 -20
  335. package/codeyam-cli/src/webserver/editorProxy.js.map +1 -1
  336. package/codeyam-cli/src/webserver/idleDetector.js +65 -8
  337. package/codeyam-cli/src/webserver/idleDetector.js.map +1 -1
  338. package/codeyam-cli/src/webserver/mockStateEvents.js +28 -0
  339. package/codeyam-cli/src/webserver/mockStateEvents.js.map +1 -0
  340. package/codeyam-cli/src/webserver/scripts/journalCapture.ts +53 -0
  341. package/codeyam-cli/src/webserver/server.js +160 -14
  342. package/codeyam-cli/src/webserver/server.js.map +1 -1
  343. package/codeyam-cli/src/webserver/terminalServer.js +248 -28
  344. package/codeyam-cli/src/webserver/terminalServer.js.map +1 -1
  345. package/codeyam-cli/templates/__tests__/editor-step-hook.prompt-capture.test.ts +118 -0
  346. package/codeyam-cli/templates/codeyam-editor-claude.md +2 -0
  347. package/codeyam-cli/templates/codeyam-editor-codex.md +61 -0
  348. package/codeyam-cli/templates/codeyam-editor-gemini.md +59 -0
  349. package/codeyam-cli/templates/codeyam-editor-reference.md +216 -0
  350. package/codeyam-cli/templates/design-systems/clean-dashboard-design-system.md +255 -0
  351. package/codeyam-cli/templates/design-systems/editorial-design-system.md +267 -0
  352. package/codeyam-cli/templates/design-systems/mono-brutalist-design-system.md +256 -0
  353. package/codeyam-cli/templates/design-systems/neo-brutalist-design-system.md +294 -0
  354. package/codeyam-cli/templates/editor-step-hook.py +191 -60
  355. package/codeyam-cli/templates/expo-react-native/MOBILE_SETUP.md +204 -5
  356. package/codeyam-cli/templates/expo-react-native/__tests__/.gitkeep +0 -0
  357. package/codeyam-cli/templates/expo-react-native/app/_layout.tsx +6 -3
  358. package/codeyam-cli/templates/expo-react-native/app/index.tsx +36 -0
  359. package/codeyam-cli/templates/expo-react-native/app.json +11 -0
  360. package/codeyam-cli/templates/expo-react-native/babel.config.js +1 -0
  361. package/codeyam-cli/templates/expo-react-native/gitignore +2 -0
  362. package/codeyam-cli/templates/expo-react-native/global.css +7 -0
  363. package/codeyam-cli/templates/expo-react-native/lib/theme.ts +73 -0
  364. package/codeyam-cli/templates/expo-react-native/package.json +32 -16
  365. package/codeyam-cli/templates/expo-react-native/patches/expo-modules-autolinking+3.0.24.patch +29 -0
  366. package/codeyam-cli/templates/isolation-route/expo-router.tsx.template +54 -0
  367. package/codeyam-cli/templates/nextjs-prisma-sqlite/gitignore +1 -0
  368. package/codeyam-cli/templates/nextjs-prisma-sqlite/package.json +1 -1
  369. package/codeyam-cli/templates/nextjs-prisma-sqlite/seed-adapter.ts +88 -40
  370. package/codeyam-cli/templates/nextjs-prisma-supabase/package.json +1 -1
  371. package/codeyam-cli/templates/seed-adapters/supabase.ts +363 -0
  372. package/codeyam-cli/templates/skills/codeyam-editor/SKILL.md +96 -1
  373. package/package.json +2 -1
  374. package/packages/ai/src/lib/astScopes/methodSemantics.js +99 -0
  375. package/packages/ai/src/lib/astScopes/methodSemantics.js.map +1 -1
  376. package/packages/ai/src/lib/astScopes/nodeToSource.js +16 -0
  377. package/packages/ai/src/lib/astScopes/nodeToSource.js.map +1 -1
  378. package/packages/ai/src/lib/astScopes/paths.js +12 -3
  379. package/packages/ai/src/lib/astScopes/paths.js.map +1 -1
  380. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js +27 -10
  381. package/packages/ai/src/lib/dataStructure/ScopeDataStructure.js.map +1 -1
  382. package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js +9 -2
  383. package/packages/ai/src/lib/dataStructure/equivalencyManagers/ParentScopeManager.js.map +1 -1
  384. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js +14 -4
  385. package/packages/ai/src/lib/dataStructure/helpers/cleanKnownObjectFunctions.js.map +1 -1
  386. package/packages/analyze/index.js +1 -1
  387. package/packages/analyze/index.js.map +1 -1
  388. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js +16 -2
  389. package/packages/analyze/src/lib/files/analyze/analyzeEntities/prepareDataStructures.js.map +1 -1
  390. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js +6 -26
  391. package/packages/analyze/src/lib/files/analyze/analyzeEntities.js.map +1 -1
  392. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js +3 -2
  393. package/packages/analyze/src/lib/files/analyze/findOrCreateEntity.js.map +1 -1
  394. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js +9 -7
  395. package/packages/analyze/src/lib/files/analyze/gatherEntityMap.js.map +1 -1
  396. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js +14 -0
  397. package/packages/analyze/src/lib/files/analyze/trackEntityCircularDependencies.js.map +1 -1
  398. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js +44 -11
  399. package/packages/analyze/src/lib/files/analyze/validateDependencyAnalyses.js.map +1 -1
  400. package/packages/analyze/src/lib/files/analyzeChange.js +1 -0
  401. package/packages/analyze/src/lib/files/analyzeChange.js.map +1 -1
  402. package/packages/analyze/src/lib/files/analyzeInitial.js +1 -0
  403. package/packages/analyze/src/lib/files/analyzeInitial.js.map +1 -1
  404. package/packages/analyze/src/lib/files/analyzeNextRoute.js +5 -1
  405. package/packages/analyze/src/lib/files/analyzeNextRoute.js.map +1 -1
  406. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js +120 -28
  407. package/packages/analyze/src/lib/files/scenarios/generateDataStructure.js.map +1 -1
  408. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js +1368 -1193
  409. package/packages/analyze/src/lib/files/scenarios/mergeInDependentDataStructure.js.map +1 -1
  410. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js +44 -16
  411. package/packages/database/src/lib/kysely/tables/editorScenariosTable.js.map +1 -1
  412. package/packages/database/src/lib/loadAnalysis.js +7 -1
  413. package/packages/database/src/lib/loadAnalysis.js.map +1 -1
  414. package/packages/database/src/lib/loadEntity.js +5 -5
  415. package/packages/database/src/lib/loadEntity.js.map +1 -1
  416. package/packages/utils/src/lib/fs/rsyncCopy.js +22 -1
  417. package/packages/utils/src/lib/fs/rsyncCopy.js.map +1 -1
  418. package/codeyam-cli/src/webserver/build/client/assets/CopyButton-BPXZwM4t.js +0 -1
  419. package/codeyam-cli/src/webserver/build/client/assets/EntityTypeBadge-g3saevPb.js +0 -1
  420. package/codeyam-cli/src/webserver/build/client/assets/InlineSpinner-Bu6c6aDe.js +0 -1
  421. package/codeyam-cli/src/webserver/build/client/assets/InteractivePreview-DYFW3lDD.js +0 -25
  422. package/codeyam-cli/src/webserver/build/client/assets/LibraryFunctionPreview-DLeucoVX.js +0 -3
  423. package/codeyam-cli/src/webserver/build/client/assets/SafeScreenshot-BED4B6sP.js +0 -1
  424. package/codeyam-cli/src/webserver/build/client/assets/Spinner-Bb5uFQ5V.js +0 -34
  425. package/codeyam-cli/src/webserver/build/client/assets/TruncatedFilePath-C8OKAR5x.js +0 -1
  426. package/codeyam-cli/src/webserver/build/client/assets/ViewportInspectBar-oAf2Kqsf.js +0 -1
  427. package/codeyam-cli/src/webserver/build/client/assets/chunk-JZWAC4HX-C4pqxYJB.js +0 -51
  428. package/codeyam-cli/src/webserver/build/client/assets/cy-logo-cli-DcX-ZS3p.js +0 -1
  429. package/codeyam-cli/src/webserver/build/client/assets/dev.empty-Ii3inc0_.js +0 -1
  430. package/codeyam-cli/src/webserver/build/client/assets/editor-16o0AIFV.js +0 -15
  431. package/codeyam-cli/src/webserver/build/client/assets/editorPreview-7Uga8I59.js +0 -41
  432. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.dev-BwKcai0j.js +0 -6
  433. package/codeyam-cli/src/webserver/build/client/assets/entity._sha.scenarios._scenarioId.fullscreen-CHMiAog3.js +0 -6
  434. package/codeyam-cli/src/webserver/build/client/assets/entity._sha_.create-scenario-p9hhkjJM.js +0 -6
  435. package/codeyam-cli/src/webserver/build/client/assets/fileTableUtils-cPo8LiG3.js +0 -1
  436. package/codeyam-cli/src/webserver/build/client/assets/files-BZrlFE1F.js +0 -1
  437. package/codeyam-cli/src/webserver/build/client/assets/git-DdZcvjGh.js +0 -1
  438. package/codeyam-cli/src/webserver/build/client/assets/globals-CQPR0pFR.css +0 -1
  439. package/codeyam-cli/src/webserver/build/client/assets/labs-Zk7ryIM1.js +0 -1
  440. package/codeyam-cli/src/webserver/build/client/assets/manifest-76e7b62c.js +0 -1
  441. package/codeyam-cli/src/webserver/build/client/assets/root-DBjt6o04.js +0 -67
  442. package/codeyam-cli/src/webserver/build/client/assets/settings-0OrEMU6J.js +0 -1
  443. package/codeyam-cli/src/webserver/build/client/assets/simulations-DWT-CvLy.js +0 -1
  444. package/codeyam-cli/src/webserver/build/client/assets/useCustomSizes-C-_hOl_g.js +0 -1
  445. package/codeyam-cli/src/webserver/build/client/assets/useLastLogLine-C14nCb1q.js +0 -2
  446. package/codeyam-cli/src/webserver/build/client/assets/useReportContext-O-jkvSPx.js +0 -1
  447. package/codeyam-cli/src/webserver/build/client/assets/useToast-9FIWuYfK.js +0 -1
  448. package/codeyam-cli/src/webserver/build/server/assets/init-DdqKD2p4.js +0 -10
  449. package/codeyam-cli/src/webserver/build/server/assets/server-build-CKKeWtVK.js +0 -444
  450. package/codeyam-cli/templates/expo-react-native/app/(tabs)/_layout.tsx +0 -33
  451. package/codeyam-cli/templates/expo-react-native/app/(tabs)/index.tsx +0 -12
  452. package/codeyam-cli/templates/expo-react-native/app/(tabs)/settings.tsx +0 -12
@@ -1 +1 @@
1
- import{aw as Z,ax as _,am as $,an as rr,au as tr,ao as or,aq as ir,ar as pr,at as mr,as as ar,av as sr,ap as er}from"./assets/server-build-CKKeWtVK.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"child_process";import"url";import"util";import"dotenv";import"events";import"uuid";import"http";import"net";import"ws";import"node-pty";import"openai";import"p-queue";import"p-retry";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"v8";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"minimatch";import"react-markdown";import"remark-gfm";import"react-diff-viewer-continued";export{Z as allowedActionOrigins,_ as assets,$ as assetsBuildDirectory,rr as basename,tr as entry,or as future,ir as isSpaMode,pr as prerender,mr as publicPath,ar as routeDiscovery,sr as routes,er as ssr};
1
+ import{aG as Z,aH as _,aw as $,ax as rr,aE as tr,ay as or,aA as ir,aB as pr,aD as mr,aC as ar,aF as sr,az as er}from"./assets/server-build-CPKq4t0v.js";import"react/jsx-runtime";import"node:stream";import"@react-router/node";import"react-router";import"isbot";import"react-dom/server";import"react";import"lucide-react";import"fetch-retry";import"better-sqlite3";import"pg";import"fs";import"path";import"kysely";import"kysely/helpers/sqlite";import"kysely/helpers/postgres";import"typescript";import"fs/promises";import"os";import"prompts";import"chalk";import"crypto";import"child_process";import"url";import"util";import"dotenv";import"events";import"uuid";import"http";import"net";import"ws";import"node-pty";import"openai";import"p-queue";import"p-retry";import"@aws-sdk/client-dynamodb";import"lru-cache";import"pluralize";import"piscina";import"json5";import"@aws-sdk/util-dynamodb";import"v8";import"react-syntax-highlighter";import"react-syntax-highlighter/dist/cjs/styles/prism/index.js";import"node:crypto";import"minimatch";import"react-markdown";import"remark-gfm";import"react-diff-viewer-continued";export{Z as allowedActionOrigins,_ as assets,$ as assetsBuildDirectory,rr as basename,tr as entry,or as future,ir as isSpaMode,pr as prerender,mr as publicPath,ar as routeDiscovery,sr as routes,er as ssr};
@@ -1,7 +1,7 @@
1
1
  {
2
- "buildTimestamp": "2026-03-13T21:26:52.434Z",
3
- "buildTime": 1773437212434,
4
- "buildNumber": 1011,
5
- "semanticVersion": "0.1.1011",
6
- "version": "0.1.1011 (2026-03-13T21:26)"
2
+ "buildTimestamp": "2026-04-02T19:45:23.999Z",
3
+ "buildTime": 1775159123999,
4
+ "buildNumber": 1367,
5
+ "semanticVersion": "0.1.1367",
6
+ "version": "0.1.1367 (2026-04-02T19:45)"
7
7
  }
@@ -5,6 +5,7 @@ import path from 'path';
5
5
  import { getProjectRoot } from "../state.js";
6
6
  import { createMockStateManager, } from "../utils/editorMockState.js";
7
7
  import { computeEditorPorts } from "../utils/editorDevServer.js";
8
+ import { mockStateEventEmitter } from "./mockStateEvents.js";
8
9
  /**
9
10
  * Normalize a target URL by stripping trailing slashes for consistency.
10
11
  *
@@ -130,18 +131,58 @@ export const PREVIEW_HEALTH_SCRIPT = `<script data-codeyam-health>
130
131
  }).catch(function(){});
131
132
  }, 1000);
132
133
  });
134
+
135
+ // Network-idle detection: notify the parent editor when all initial
136
+ // fetch requests have completed, so it can show the preview after
137
+ // client-side data (API calls) has arrived — not just when the DOM loads.
138
+ var inflight = 0;
139
+ var settled = false;
140
+ var settleTimer = null;
141
+ var origFetch = window.fetch;
142
+ window.fetch = function() {
143
+ if (!settled) inflight++;
144
+ return origFetch.apply(this, arguments).then(function(resp) {
145
+ if (!settled) { inflight--; checkSettle(); }
146
+ return resp;
147
+ }, function(err) {
148
+ if (!settled) { inflight--; checkSettle(); }
149
+ throw err;
150
+ });
151
+ };
152
+ function checkSettle() {
153
+ if (inflight <= 0 && !settled) {
154
+ clearTimeout(settleTimer);
155
+ // Small delay to allow React to re-render with the fetched data
156
+ settleTimer = setTimeout(function() {
157
+ if (inflight <= 0) {
158
+ settled = true;
159
+ try {
160
+ window.parent.postMessage({ type: 'codeyam-preview-ready' }, '*');
161
+ } catch(e) {}
162
+ }
163
+ }, 100);
164
+ }
165
+ }
166
+ // Fallback: if no fetches happen (static page), settle after load
167
+ window.addEventListener('load', function() {
168
+ setTimeout(function() { checkSettle(); }, 200);
169
+ });
133
170
  })();
134
171
  </script>`;
135
172
  const CACHE_TTL_MS = 500;
136
173
  let scenarioCache = { data: null, timestamp: 0 };
137
174
  // Session config extracted from the active scenario — drives cookie injection
138
175
  let sessionConfig = undefined;
176
+ /** Session cookies from the seed adapter (e.g. Supabase auth tokens). */
177
+ let seedSessionCookies = undefined;
139
178
  // localStorage config extracted from the active scenario — drives HTML injection
140
179
  let localStorageConfig = null;
141
180
  // Active scenario ID — used to gate localStorage seeding (only re-seed on switch)
142
181
  let activeScenarioId = null;
143
182
  // Prototype ID — used to gate a one-time localStorage.clear() when a new project is scaffolded
144
183
  let currentPrototypeId = null;
184
+ // Current scenario type — 'application'/'user' for seed-based, 'component' for mock-based
185
+ let currentScenarioType = null;
145
186
  // Max body size to buffer for mock matching (10MB)
146
187
  const MAX_BODY_SIZE = 10 * 1024 * 1024;
147
188
  function getProxyState() {
@@ -209,11 +250,14 @@ function readScenarioData() {
209
250
  const rawData = JSON.parse(fs.readFileSync(dataFilePath, 'utf-8'));
210
251
  // Extract session config for cookie injection
211
252
  sessionConfig = rawData.session || null;
253
+ // Extract seed adapter session cookies (e.g. Supabase auth)
254
+ seedSessionCookies = rawData.sessionCookies || undefined;
212
255
  // Extract localStorage config for HTML injection
213
256
  localStorageConfig = rawData.localStorage || null;
214
257
  activeScenarioId = scenarioId;
215
258
  // Type-aware: for seed-based scenarios, only serve externalApis via proxy
216
259
  const scenarioType = active.type || rawData.type || null;
260
+ currentScenarioType = scenarioType;
217
261
  let mockData;
218
262
  if ((scenarioType === 'application' || scenarioType === 'user') &&
219
263
  rawData.seed) {
@@ -290,6 +334,10 @@ function forwardBufferedRequest(req, res, targetUrl, bodyBuffer) {
290
334
  // Remove accept-encoding so the dev server returns uncompressed responses.
291
335
  // The proxy injects a health script into HTML — this fails on compressed bodies.
292
336
  delete headers['accept-encoding'];
337
+ // Inject session cookies into the request so the dev server sees auth
338
+ // on the first request after a scenario switch (before the browser has
339
+ // stored them from Set-Cookie responses).
340
+ injectRequestCookies(headers);
293
341
  // Update content-length if we have the body buffer
294
342
  if (bodyBuffer) {
295
343
  headers['content-length'] = String(bodyBuffer.length);
@@ -303,6 +351,9 @@ function forwardBufferedRequest(req, res, targetUrl, bodyBuffer) {
303
351
  };
304
352
  const proxyReq = http.request(options, (proxyRes) => {
305
353
  const status = proxyRes.statusCode || 200;
354
+ if (status >= 300 && status < 400) {
355
+ console.log(`[editorProxy] Target redirect ${status} for ${req.method} ${req.url} → ${proxyRes.headers.location}`);
356
+ }
306
357
  if (status >= 400) {
307
358
  console.warn(`[editorProxy] Target returned ${status} for ${req.method} ${req.url}`);
308
359
  }
@@ -357,18 +408,25 @@ function forwardRequest(req, res, targetUrl) {
357
408
  // Build headers, stripping accept-encoding so the dev server returns uncompressed
358
409
  // responses. The proxy injects a health script into HTML — this fails on compressed bodies.
359
410
  const { 'accept-encoding': _ae, ...forwardHeaders } = req.headers;
411
+ const reqHeaders = {
412
+ ...forwardHeaders,
413
+ host: `${target.hostname}:${target.port}`,
414
+ };
415
+ // Inject session cookies into the request so the dev server sees auth
416
+ // on the first request after a scenario switch.
417
+ injectRequestCookies(reqHeaders);
360
418
  const options = {
361
419
  hostname,
362
420
  port: target.port,
363
421
  path: req.url,
364
422
  method: req.method,
365
- headers: {
366
- ...forwardHeaders,
367
- host: `${target.hostname}:${target.port}`,
368
- },
423
+ headers: reqHeaders,
369
424
  };
370
425
  const proxyReq = http.request(options, (proxyRes) => {
371
426
  const status = proxyRes.statusCode || 200;
427
+ if (status >= 300 && status < 400) {
428
+ console.log(`[editorProxy] Target redirect ${status} for ${req.method} ${req.url} → ${proxyRes.headers.location}`);
429
+ }
372
430
  if (status >= 400) {
373
431
  console.warn(`[editorProxy] Target returned ${status} for ${req.method} ${req.url}`);
374
432
  }
@@ -417,25 +475,94 @@ function forwardRequest(req, res, targetUrl) {
417
475
  * When sessionConfig is undefined (no scenario loaded yet), does nothing.
418
476
  */
419
477
  function injectSessionCookie(headers) {
420
- if (sessionConfig === undefined)
421
- return;
422
- let cookie;
423
- if (sessionConfig?.cookieValue) {
424
- cookie = `session-token=${sessionConfig.cookieValue}; Path=/; SameSite=Lax`;
478
+ const cookies = [];
479
+ // Dev auth cookie (built-in session-token)
480
+ if (sessionConfig !== undefined) {
481
+ if (sessionConfig?.cookieValue) {
482
+ cookies.push(`session-token=${sessionConfig.cookieValue}; Path=/; SameSite=Lax`);
483
+ }
484
+ else {
485
+ cookies.push(`session-token=; Path=/; Max-Age=0`);
486
+ }
425
487
  }
426
- else {
427
- // No session config clear any existing session cookie
428
- cookie = `session-token=; Path=/; Max-Age=0`;
488
+ // Seed adapter session cookies (e.g. Supabase auth tokens)
489
+ if (seedSessionCookies && seedSessionCookies.length > 0) {
490
+ for (const sc of seedSessionCookies) {
491
+ const cookiePath = sc.path || '/';
492
+ const sameSite = sc.sameSite || 'Lax';
493
+ cookies.push(`${sc.name}=${sc.value}; Path=${cookiePath}; SameSite=${sameSite}`);
494
+ }
429
495
  }
496
+ if (cookies.length === 0)
497
+ return;
430
498
  const existing = headers['set-cookie'];
431
499
  if (existing) {
432
500
  headers['set-cookie'] = [
433
501
  ...(Array.isArray(existing) ? existing : [existing]),
434
- cookie,
502
+ ...cookies,
435
503
  ];
436
504
  }
437
505
  else {
438
- headers['set-cookie'] = [cookie];
506
+ headers['set-cookie'] = cookies;
507
+ }
508
+ }
509
+ /**
510
+ * Get session cookies that should be injected into requests forwarded to the
511
+ * dev server. Returns an array of {name, value} pairs, or null if no session
512
+ * cookies are configured.
513
+ *
514
+ * This is the counterpart to `injectSessionCookie()` (which adds Set-Cookie
515
+ * to responses). Without request-side injection, the first request after a
516
+ * scenario switch has no cookies — the dev server's auth middleware sees no
517
+ * session and redirects to the login page before the browser ever receives
518
+ * the Set-Cookie response.
519
+ */
520
+ export function getRequestCookieInjection() {
521
+ const cookies = [];
522
+ if (sessionConfig?.cookieValue) {
523
+ cookies.push({ name: 'session-token', value: sessionConfig.cookieValue });
524
+ }
525
+ if (seedSessionCookies && seedSessionCookies.length > 0) {
526
+ for (const sc of seedSessionCookies) {
527
+ cookies.push({ name: sc.name, value: sc.value });
528
+ }
529
+ }
530
+ return cookies.length > 0 ? cookies : null;
531
+ }
532
+ /**
533
+ * Inject session cookies into the request's Cookie header before forwarding
534
+ * to the dev server. This ensures the dev server sees auth cookies on the
535
+ * very first request after a scenario switch (before the browser has stored
536
+ * them from Set-Cookie responses).
537
+ */
538
+ function injectRequestCookies(headers) {
539
+ const injection = getRequestCookieInjection();
540
+ if (!injection)
541
+ return;
542
+ // Parse existing cookies from the request
543
+ const existing = typeof headers.cookie === 'string' ? headers.cookie : '';
544
+ const existingPairs = existing
545
+ ? existing.split(';').map((s) => s.trim())
546
+ : [];
547
+ // Build a map of existing cookies for deduplication
548
+ const cookieMap = new Map();
549
+ for (const pair of existingPairs) {
550
+ const eqIdx = pair.indexOf('=');
551
+ if (eqIdx !== -1) {
552
+ cookieMap.set(pair.slice(0, eqIdx), pair.slice(eqIdx + 1));
553
+ }
554
+ }
555
+ // Override with injected cookies
556
+ for (const { name, value } of injection) {
557
+ cookieMap.set(name, value);
558
+ }
559
+ // Reassemble
560
+ const parts = [];
561
+ for (const [k, v] of cookieMap) {
562
+ parts.push(`${k}=${v}`);
563
+ }
564
+ if (parts.length > 0) {
565
+ headers.cookie = parts.join('; ');
439
566
  }
440
567
  }
441
568
  /**
@@ -462,6 +589,17 @@ export function getActiveScenarioId() {
462
589
  export function getCurrentPrototypeId() {
463
590
  return currentPrototypeId;
464
591
  }
592
+ /**
593
+ * Simple djb2 hash — fast, deterministic, good enough for cache busting.
594
+ * Not cryptographic — just detects when localStorage config content changes.
595
+ */
596
+ function simpleHash(str) {
597
+ let hash = 5381;
598
+ for (let i = 0; i < str.length; i++) {
599
+ hash = ((hash << 5) + hash + str.charCodeAt(i)) | 0;
600
+ }
601
+ return (hash >>> 0).toString(36);
602
+ }
465
603
  /**
466
604
  * Build a script tag that seeds localStorage with scenario data on first load.
467
605
  * Gated by scenario ID — only seeds when the scenario changes, preserving
@@ -470,10 +608,13 @@ export function getCurrentPrototypeId() {
470
608
  * Returns empty string if no localStorage config is provided.
471
609
  */
472
610
  export function buildLocalStorageScript(localStorageConfig, scenarioId, prototypeId) {
473
- // null/undefined means no localStorage config at all — but if we have a
474
- // prototypeId, emit a one-time localStorage.clear() to flush stale data
475
- // from a previous prototype session.
611
+ // null/undefined means no localStorage config at all — clean up keys
612
+ // that were set by a previous scenario so stale filter/sort state
613
+ // doesn't bleed through and hide data in the new scenario.
476
614
  if (!localStorageConfig || typeof localStorageConfig !== 'object') {
615
+ // Always clean up previous scenario's keys, gated by scenarioId
616
+ // so it only runs once per switch (not on every HMR reload).
617
+ const guardValue = scenarioId ? `clear:${scenarioId}` : '';
477
618
  if (prototypeId) {
478
619
  return `<script data-codeyam-ls>
479
620
  (function() {
@@ -481,6 +622,19 @@ export function buildLocalStorageScript(localStorageConfig, scenarioId, prototyp
481
622
  localStorage.clear();
482
623
  localStorage.setItem('__codeyam_proto__', ${JSON.stringify(prototypeId)});
483
624
  })();
625
+ </script>`;
626
+ }
627
+ if (scenarioId) {
628
+ // No prototypeId but we do have a scenarioId — clean up keys
629
+ // from the previous scenario without doing a full clear.
630
+ return `<script data-codeyam-ls>
631
+ (function() {
632
+ if (localStorage.getItem('__codeyam_ls_sid__') === ${JSON.stringify(guardValue)}) return;
633
+ var prev = JSON.parse(localStorage.getItem('__codeyam_ls_keys__') || '[]');
634
+ for (var i = 0; i < prev.length; i++) localStorage.removeItem(prev[i]);
635
+ localStorage.removeItem('__codeyam_ls_keys__');
636
+ localStorage.setItem('__codeyam_ls_sid__', ${JSON.stringify(guardValue)});
637
+ })();
484
638
  </script>`;
485
639
  }
486
640
  return '';
@@ -496,14 +650,78 @@ export function buildLocalStorageScript(localStorageConfig, scenarioId, prototyp
496
650
  return `localStorage.setItem(${JSON.stringify(key)}, ${JSON.stringify(serialized)});`;
497
651
  })
498
652
  .join('\n');
499
- return `<script data-codeyam-ls>
653
+ // Guard value includes a content hash so re-registering a scenario with
654
+ // updated data (same ID, different content) busts the cache. Without this,
655
+ // the browser skips re-seeding because the scenario ID hasn't changed,
656
+ // causing stale data in the live preview while screenshots show fresh data.
657
+ const contentHash = simpleHash(JSON.stringify(localStorageConfig));
658
+ const guardValue = `${scenarioId}:${contentHash}`;
659
+ return (`<script data-codeyam-ls>
500
660
  (function() {
501
- if (localStorage.getItem('__codeyam_ls_sid__') === ${JSON.stringify(scenarioId)}) return;
661
+ if (localStorage.getItem('__codeyam_ls_sid__') === ${JSON.stringify(guardValue)}) return;
502
662
  var prev = JSON.parse(localStorage.getItem('__codeyam_ls_keys__') || '[]');
503
663
  for (var i = 0; i < prev.length; i++) localStorage.removeItem(prev[i]);
504
664
  ${setStatements}
505
665
  localStorage.setItem('__codeyam_ls_keys__', ${JSON.stringify(JSON.stringify(keys))});
506
- localStorage.setItem('__codeyam_ls_sid__', ${JSON.stringify(scenarioId)});
666
+ localStorage.setItem('__codeyam_ls_sid__', ${JSON.stringify(guardValue)});
667
+ })();
668
+ </script>` + buildLocalStorageWatcherScript());
669
+ }
670
+ /**
671
+ * Build a script that watches for localStorage mutations and notifies the parent
672
+ * frame via postMessage. Also responds to `codeyam-get-localstorage` requests so
673
+ * the editor can read the current localStorage state when saving.
674
+ */
675
+ function buildLocalStorageWatcherScript() {
676
+ return `<script data-codeyam-ls-watcher>
677
+ (function() {
678
+ if (window.__codeyam_ls_watcher_installed__) return;
679
+ window.__codeyam_ls_watcher_installed__ = true;
680
+
681
+ var origSet = localStorage.setItem.bind(localStorage);
682
+ var origRemove = localStorage.removeItem.bind(localStorage);
683
+ var origClear = localStorage.clear.bind(localStorage);
684
+ window.__codeyam_orig_setItem__ = origSet;
685
+ window.__codeyam_orig_removeItem__ = origRemove;
686
+ window.__codeyam_orig_clear__ = origClear;
687
+
688
+ function isInternal(key) {
689
+ return typeof key === 'string' && key.indexOf('__codeyam_') === 0;
690
+ }
691
+
692
+ localStorage.setItem = function(key, value) {
693
+ origSet(key, value);
694
+ if (!isInternal(key) && window.parent !== window) {
695
+ window.parent.postMessage({ type: 'codeyam-localstorage-changed', action: 'set', key: key }, '*');
696
+ }
697
+ };
698
+
699
+ localStorage.removeItem = function(key) {
700
+ origRemove(key);
701
+ if (!isInternal(key) && window.parent !== window) {
702
+ window.parent.postMessage({ type: 'codeyam-localstorage-changed', action: 'remove', key: key }, '*');
703
+ }
704
+ };
705
+
706
+ localStorage.clear = function() {
707
+ origClear();
708
+ if (window.parent !== window) {
709
+ window.parent.postMessage({ type: 'codeyam-localstorage-changed', action: 'clear' }, '*');
710
+ }
711
+ };
712
+
713
+ window.addEventListener('message', function(event) {
714
+ if (event.data && event.data.type === 'codeyam-get-localstorage') {
715
+ var data = {};
716
+ for (var i = 0; i < localStorage.length; i++) {
717
+ var k = localStorage.key(i);
718
+ if (k && !isInternal(k)) {
719
+ data[k] = localStorage.getItem(k);
720
+ }
721
+ }
722
+ event.source.postMessage({ type: 'codeyam-localstorage-state', data: data }, '*');
723
+ }
724
+ });
507
725
  })();
508
726
  </script>`;
509
727
  }
@@ -719,6 +937,11 @@ export async function startEditorProxy(options) {
719
937
  return;
720
938
  }
721
939
  // No mock match — forward with buffered body
940
+ if ((currentScenarioType === 'application' ||
941
+ currentScenarioType === 'user') &&
942
+ pathname.startsWith('/api/')) {
943
+ mockStateEventEmitter.emitDataMutationForwarded(method, pathname);
944
+ }
722
945
  forwardBufferedRequest(req, res, targetUrl, bodyBuffer);
723
946
  return;
724
947
  }
@@ -802,6 +1025,7 @@ export async function stopEditorProxy() {
802
1025
  export function invalidateScenarioCache() {
803
1026
  scenarioCache = { data: null, timestamp: 0 };
804
1027
  sessionConfig = undefined;
1028
+ seedSessionCookies = undefined;
805
1029
  localStorageConfig = null;
806
1030
  activeScenarioId = null;
807
1031
  currentPrototypeId = null;
@@ -1 +1 @@
1
- {"version":3,"file":"editorProxy.js","sourceRoot":"","sources":["../../../../src/webserver/editorProxy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"editorProxy.js","sourceRoot":"","sources":["../../../../src/webserver/editorProxy.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@
5
5
  *
6
6
  * Extracted from terminalServer.ts for testability.
7
7
  */
8
+ const MAX_LAST_LINE_LENGTH = 500;
8
9
  export class IdleDetector {
9
10
  constructor(callbacks, options) {
10
11
  this.idleTimer = null;
@@ -12,10 +13,13 @@ export class IdleDetector {
12
13
  this.idleSignaled = false;
13
14
  this.userIsTyping = false;
14
15
  this.outputBytesSinceIdle = 0;
16
+ this.lastLine = '';
17
+ this.patternSuppressionUsed = false;
15
18
  this.callbacks = callbacks;
16
19
  this.idleTimeoutMs = options?.idleTimeoutMs ?? 3000;
17
20
  this.typingCooldownMs = options?.typingCooldownMs ?? 2000;
18
21
  this.minOutputForReidle = options?.minOutputForReidle ?? 100;
22
+ this.activeOutputPattern = options?.activeOutputPattern ?? null;
19
23
  }
20
24
  /** Call when the user sends input (keystrokes) to the PTY. */
21
25
  onUserInput() {
@@ -31,9 +35,15 @@ export class IdleDetector {
31
35
  }, this.typingCooldownMs);
32
36
  }
33
37
  /** Call when PTY produces output. */
34
- onPtyOutput(byteCount) {
38
+ onPtyOutput(data) {
39
+ const byteCount = data.length;
40
+ // Update lastLine: content after the last \r or \n
41
+ this.updateLastLine(data);
35
42
  if (this.idleTimer)
36
43
  clearTimeout(this.idleTimer);
44
+ // Fresh output resets the pattern suppression flag — the status line
45
+ // is being actively updated, not stale from a previous prompt.
46
+ this.patternSuppressionUsed = false;
37
47
  if (this.userIsTyping)
38
48
  return;
39
49
  this.outputBytesSinceIdle += byteCount;
@@ -48,13 +58,7 @@ export class IdleDetector {
48
58
  this.outputBytesSinceIdle = 0;
49
59
  this.callbacks.onActive();
50
60
  }
51
- this.idleTimer = setTimeout(() => {
52
- if (!this.userIsTyping) {
53
- this.idleSignaled = true;
54
- this.outputBytesSinceIdle = 0;
55
- this.callbacks.onIdle();
56
- }
57
- }, this.idleTimeoutMs);
61
+ this.startIdleTimer();
58
62
  }
59
63
  /** Whether idle has been signaled and not yet reset by new output. */
60
64
  get isIdle() {
@@ -69,5 +73,58 @@ export class IdleDetector {
69
73
  this.idleTimer = null;
70
74
  this.typingCooldownTimer = null;
71
75
  }
76
+ /** Clean up timers and signal idle if not already signaled.
77
+ * Call this when the PTY exits to ensure the client gets a final claude-idle. */
78
+ disposeAndFlush() {
79
+ if (this.idleTimer)
80
+ clearTimeout(this.idleTimer);
81
+ if (this.typingCooldownTimer)
82
+ clearTimeout(this.typingCooldownTimer);
83
+ this.idleTimer = null;
84
+ this.typingCooldownTimer = null;
85
+ if (!this.idleSignaled) {
86
+ console.log('[IdleDetector] disposeAndFlush: sending final idle signal');
87
+ this.idleSignaled = true;
88
+ this.callbacks.onIdle();
89
+ }
90
+ }
91
+ updateLastLine(data) {
92
+ // Find the last \r or \n in data. If present, discard everything
93
+ // before it (including the buffer) — it's been overwritten.
94
+ const lastCr = data.lastIndexOf('\r');
95
+ const lastLf = data.lastIndexOf('\n');
96
+ const lastBreak = Math.max(lastCr, lastLf);
97
+ if (lastBreak >= 0) {
98
+ this.lastLine = data.slice(lastBreak + 1);
99
+ }
100
+ else {
101
+ this.lastLine += data;
102
+ }
103
+ // Cap to prevent unbounded growth
104
+ if (this.lastLine.length > MAX_LAST_LINE_LENGTH) {
105
+ this.lastLine = this.lastLine.slice(-MAX_LAST_LINE_LENGTH);
106
+ }
107
+ }
108
+ startIdleTimer() {
109
+ this.idleTimer = setTimeout(() => {
110
+ if (this.userIsTyping)
111
+ return;
112
+ // If the active output pattern matches the last line, Claude may
113
+ // still be working (e.g., status line with ✶ being actively updated).
114
+ // Restart the timer ONCE to give it another cycle. If the timer fires
115
+ // again without any new output, the pattern is stale (e.g., a waiting
116
+ // prompt like AskUserQuestion) and we should signal idle.
117
+ if (this.activeOutputPattern &&
118
+ this.activeOutputPattern.test(this.lastLine) &&
119
+ !this.patternSuppressionUsed) {
120
+ this.patternSuppressionUsed = true;
121
+ this.startIdleTimer();
122
+ return;
123
+ }
124
+ this.idleSignaled = true;
125
+ this.outputBytesSinceIdle = 0;
126
+ this.callbacks.onIdle();
127
+ }, this.idleTimeoutMs);
128
+ }
72
129
  }
73
130
  //# sourceMappingURL=idleDetector.js.map