@vscode/component-explorer-cli 0.2.1-17 → 0.2.1-171

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 (281) hide show
  1. package/README.md +130 -12
  2. package/dist/WorktreePool.d.ts +5 -4
  3. package/dist/WorktreePool.d.ts.map +1 -1
  4. package/dist/WorktreePool.js +3 -3
  5. package/dist/WorktreePool.js.map +1 -1
  6. package/dist/_virtual/_build-info.js +1 -1
  7. package/dist/browserPage.d.ts +55 -1
  8. package/dist/browserPage.d.ts.map +1 -1
  9. package/dist/browserPage.js +103 -7
  10. package/dist/browserPage.js.map +1 -1
  11. package/dist/browserPage.test.d.ts +2 -0
  12. package/dist/browserPage.test.d.ts.map +1 -0
  13. package/dist/commands/acceptCommand.d.ts +1 -1
  14. package/dist/commands/acceptCommand.d.ts.map +1 -1
  15. package/dist/commands/acceptCommand.js +21 -14
  16. package/dist/commands/acceptCommand.js.map +1 -1
  17. package/dist/commands/checkStabilityCommand.d.ts +2 -0
  18. package/dist/commands/checkStabilityCommand.d.ts.map +1 -1
  19. package/dist/commands/checkStabilityCommand.js +25 -8
  20. package/dist/commands/checkStabilityCommand.js.map +1 -1
  21. package/dist/commands/compareCommand.d.ts +1 -1
  22. package/dist/commands/compareCommand.d.ts.map +1 -1
  23. package/dist/commands/compareCommand.js +31 -22
  24. package/dist/commands/compareCommand.js.map +1 -1
  25. package/dist/commands/inputArg.d.ts +33 -0
  26. package/dist/commands/inputArg.d.ts.map +1 -0
  27. package/dist/commands/inputArg.js +103 -0
  28. package/dist/commands/inputArg.js.map +1 -0
  29. package/dist/commands/mcpCommand.d.ts.map +1 -1
  30. package/dist/commands/mcpCommand.js +18 -12
  31. package/dist/commands/mcpCommand.js.map +1 -1
  32. package/dist/commands/renderCommand.d.ts +10 -1
  33. package/dist/commands/renderCommand.d.ts.map +1 -1
  34. package/dist/commands/renderCommand.js +390 -61
  35. package/dist/commands/renderCommand.js.map +1 -1
  36. package/dist/commands/renderCommand.test.d.ts +2 -0
  37. package/dist/commands/renderCommand.test.d.ts.map +1 -0
  38. package/dist/commands/serveCommand.d.ts +4 -1
  39. package/dist/commands/serveCommand.d.ts.map +1 -1
  40. package/dist/commands/serveCommand.js +105 -36
  41. package/dist/commands/serveCommand.js.map +1 -1
  42. package/dist/commands/serviceDiffCommitsCommand.d.ts.map +1 -1
  43. package/dist/commands/serviceDiffCommitsCommand.js +10 -9
  44. package/dist/commands/serviceDiffCommitsCommand.js.map +1 -1
  45. package/dist/commands/watchCommand.d.ts +1 -0
  46. package/dist/commands/watchCommand.d.ts.map +1 -1
  47. package/dist/commands/watchCommand.js +31 -20
  48. package/dist/commands/watchCommand.js.map +1 -1
  49. package/dist/comparison.d.ts +4 -3
  50. package/dist/comparison.d.ts.map +1 -1
  51. package/dist/comparison.js +17 -14
  52. package/dist/comparison.js.map +1 -1
  53. package/dist/component-explorer-config.schema.json +55 -2
  54. package/dist/componentExplorer.d.ts +110 -12
  55. package/dist/componentExplorer.d.ts.map +1 -1
  56. package/dist/componentExplorer.js +177 -24
  57. package/dist/componentExplorer.js.map +1 -1
  58. package/dist/config.d.ts +33 -4
  59. package/dist/config.d.ts.map +1 -1
  60. package/dist/config.js +64 -27
  61. package/dist/config.js.map +1 -1
  62. package/dist/coverage.d.ts +64 -0
  63. package/dist/coverage.d.ts.map +1 -0
  64. package/dist/coverage.js +212 -0
  65. package/dist/coverage.js.map +1 -0
  66. package/dist/daemon/DaemonService.d.ts +5 -199
  67. package/dist/daemon/DaemonService.d.ts.map +1 -1
  68. package/dist/daemon/DaemonService.js +248 -300
  69. package/dist/daemon/DaemonService.js.map +1 -1
  70. package/dist/daemon/approvalStore.d.ts +2 -1
  71. package/dist/daemon/approvalStore.d.ts.map +1 -1
  72. package/dist/daemon/approvalStore.js +4 -3
  73. package/dist/daemon/approvalStore.js.map +1 -1
  74. package/dist/daemon/client.d.ts +76 -5
  75. package/dist/daemon/client.d.ts.map +1 -1
  76. package/dist/daemon/daemonRpc.test.d.ts +2 -0
  77. package/dist/daemon/daemonRpc.test.d.ts.map +1 -0
  78. package/dist/daemon/endpointServer.d.ts +4 -0
  79. package/dist/daemon/endpointServer.d.ts.map +1 -0
  80. package/dist/daemon/endpointServer.js +24 -0
  81. package/dist/daemon/endpointServer.js.map +1 -0
  82. package/dist/daemon/inProcessClient.d.ts +3 -9
  83. package/dist/daemon/inProcessClient.d.ts.map +1 -1
  84. package/dist/daemon/inProcessClient.js +29 -30
  85. package/dist/daemon/inProcessClient.js.map +1 -1
  86. package/dist/daemon/lifecycle.d.ts +5 -5
  87. package/dist/daemon/lifecycle.d.ts.map +1 -1
  88. package/dist/daemon/lifecycle.js +4 -3
  89. package/dist/daemon/lifecycle.js.map +1 -1
  90. package/dist/daemon/pipeClient.d.ts +2 -3
  91. package/dist/daemon/pipeClient.d.ts.map +1 -1
  92. package/dist/daemon/pipeClient.js +93 -194
  93. package/dist/daemon/pipeClient.js.map +1 -1
  94. package/dist/daemon/pipeName.d.ts +3 -3
  95. package/dist/daemon/pipeName.d.ts.map +1 -1
  96. package/dist/daemon/pipeName.js +6 -5
  97. package/dist/daemon/pipeName.js.map +1 -1
  98. package/dist/daemon/pipeServer.d.ts +2 -2
  99. package/dist/daemon/pipeServer.d.ts.map +1 -1
  100. package/dist/daemon/pipeServer.js +79 -70
  101. package/dist/daemon/pipeServer.js.map +1 -1
  102. package/dist/daemon/registerDaemonConnection.d.ts +7 -0
  103. package/dist/daemon/registerDaemonConnection.d.ts.map +1 -0
  104. package/dist/daemon/registerDaemonConnection.js +37 -0
  105. package/dist/daemon/registerDaemonConnection.js.map +1 -0
  106. package/dist/daemon/transports.test.d.ts +2 -0
  107. package/dist/daemon/transports.test.d.ts.map +1 -0
  108. package/dist/daemon/types.d.ts +1655 -8
  109. package/dist/daemon/types.d.ts.map +1 -1
  110. package/dist/daemon/types.js +4 -0
  111. package/dist/daemon/types.js.map +1 -0
  112. package/dist/daemon/version.d.ts +1 -5
  113. package/dist/daemon/version.d.ts.map +1 -1
  114. package/dist/daemon/version.js +3 -7
  115. package/dist/daemon/version.js.map +1 -1
  116. package/dist/dependencyInstaller.d.ts +2 -1
  117. package/dist/dependencyInstaller.d.ts.map +1 -1
  118. package/dist/dependencyInstaller.js +4 -4
  119. package/dist/dependencyInstaller.js.map +1 -1
  120. package/dist/explorerSession.d.ts +5 -1
  121. package/dist/explorerSession.d.ts.map +1 -1
  122. package/dist/explorerSession.js +24 -7
  123. package/dist/explorerSession.js.map +1 -1
  124. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/inspectionHost-BA6ZmC_P.js +2523 -0
  125. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/inspectionHost-BA6ZmC_P.js.map +1 -0
  126. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/src-DYVSK_tz.js +1871 -0
  127. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/src-DYVSK_tz.js.map +1 -0
  128. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/webSocketTransport-Ct4OIdG9.js +220 -0
  129. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/chunks/webSocketTransport-Ct4OIdG9.js.map +1 -0
  130. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/node.js +721 -0
  131. package/dist/external/linkrpc/typescript/packages/linkrpc/dist/node.js.map +1 -0
  132. package/dist/git/gitCommitResolver.d.ts +2 -1
  133. package/dist/git/gitCommitResolver.d.ts.map +1 -1
  134. package/dist/git/gitCommitResolver.js +8 -8
  135. package/dist/git/gitCommitResolver.js.map +1 -1
  136. package/dist/git/gitIndexResolver.d.ts +2 -1
  137. package/dist/git/gitIndexResolver.d.ts.map +1 -1
  138. package/dist/git/gitIndexResolver.js +7 -7
  139. package/dist/git/gitIndexResolver.js.map +1 -1
  140. package/dist/git/gitService.d.ts +5 -4
  141. package/dist/git/gitService.d.ts.map +1 -1
  142. package/dist/git/gitService.js.map +1 -1
  143. package/dist/git/gitUtils.d.ts +6 -5
  144. package/dist/git/gitUtils.d.ts.map +1 -1
  145. package/dist/git/gitUtils.js +5 -4
  146. package/dist/git/gitUtils.js.map +1 -1
  147. package/dist/git/gitWorktreeManager.d.ts +15 -14
  148. package/dist/git/gitWorktreeManager.d.ts.map +1 -1
  149. package/dist/git/gitWorktreeManager.js +10 -11
  150. package/dist/git/gitWorktreeManager.js.map +1 -1
  151. package/dist/git/testUtils.d.ts +2 -1
  152. package/dist/git/testUtils.d.ts.map +1 -1
  153. package/dist/index.d.ts +0 -2
  154. package/dist/index.js +10 -1
  155. package/dist/index.js.map +1 -1
  156. package/dist/js-component-explorer/packages/common/dist/daemonRpc.js +165 -0
  157. package/dist/js-component-explorer/packages/common/dist/daemonRpc.js.map +1 -0
  158. package/dist/js-component-explorer/packages/common/dist/explorerUrl.js +21 -0
  159. package/dist/js-component-explorer/packages/common/dist/explorerUrl.js.map +1 -0
  160. package/dist/js-component-explorer/packages/common/dist/renderManifest.js +68 -0
  161. package/dist/js-component-explorer/packages/common/dist/renderManifest.js.map +1 -0
  162. package/dist/js-component-explorer/packages/semver/dist/index.js.map +1 -0
  163. package/dist/manifest.schema.json +44 -16
  164. package/dist/mcp/DaemonAccessor.d.ts +2 -3
  165. package/dist/mcp/DaemonAccessor.d.ts.map +1 -1
  166. package/dist/mcp/McpServer.d.ts +1 -1
  167. package/dist/mcp/McpServer.d.ts.map +1 -1
  168. package/dist/mcp/McpServer.js +252 -159
  169. package/dist/mcp/McpServer.js.map +1 -1
  170. package/dist/path.d.ts +30 -0
  171. package/dist/path.d.ts.map +1 -0
  172. package/dist/path.js +78 -0
  173. package/dist/path.js.map +1 -0
  174. package/dist/processTree.d.ts +6 -1
  175. package/dist/processTree.d.ts.map +1 -1
  176. package/dist/processTree.js +48 -5
  177. package/dist/processTree.js.map +1 -1
  178. package/dist/renderManifest.d.ts +70 -5
  179. package/dist/renderManifest.js +1 -1
  180. package/dist/server/httpServer.d.ts +1 -1
  181. package/dist/server/httpServer.d.ts.map +1 -1
  182. package/dist/server/httpServer.js +4 -8
  183. package/dist/server/httpServer.js.map +1 -1
  184. package/dist/server/serverConfig.d.ts +23 -8
  185. package/dist/server/serverConfig.d.ts.map +1 -1
  186. package/dist/server/serverConfig.js +11 -18
  187. package/dist/server/serverConfig.js.map +1 -1
  188. package/dist/server/viteServer.d.ts +16 -3
  189. package/dist/server/viteServer.d.ts.map +1 -1
  190. package/dist/server/viteServer.js +86 -5
  191. package/dist/server/viteServer.js.map +1 -1
  192. package/dist/storage.d.ts +2 -1
  193. package/dist/storage.d.ts.map +1 -1
  194. package/dist/storage.js +1 -1
  195. package/dist/storage.js.map +1 -1
  196. package/dist/utils.d.ts +3 -30
  197. package/dist/utils.d.ts.map +1 -1
  198. package/dist/utils.js +4 -24
  199. package/dist/utils.js.map +1 -1
  200. package/dist/visualCache.d.ts +2 -1
  201. package/dist/visualCache.d.ts.map +1 -1
  202. package/dist/visualCache.js +4 -3
  203. package/dist/visualCache.js.map +1 -1
  204. package/dist/viteProjectRef.d.ts +4 -12
  205. package/dist/viteProjectRef.d.ts.map +1 -1
  206. package/dist/viteProjectRef.js +9 -17
  207. package/dist/viteProjectRef.js.map +1 -1
  208. package/dist/vscode-observables/observables/dist/disposables.js.map +1 -0
  209. package/dist/vscode-observables/observables/dist/observableInternal/base.js.map +1 -0
  210. package/dist/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +1 -0
  211. package/dist/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -0
  212. package/dist/vscode-observables/observables/dist/observableInternal/debugName.js.map +1 -0
  213. package/dist/vscode-observables/observables/dist/observableInternal/index.js.map +1 -0
  214. package/dist/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +1 -0
  215. package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/debugGetDependencyGraph.js +1 -1
  216. package/dist/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +1 -0
  217. package/dist/vscode-observables/observables/dist/observableInternal/logging/logging.js.map +1 -0
  218. package/dist/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +1 -0
  219. package/dist/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +1 -0
  220. package/dist/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +1 -0
  221. package/dist/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js.map +1 -0
  222. package/dist/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +1 -0
  223. package/dist/{external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js → vscode-observables/observables/dist/observableInternal/reactions/createEffect.js} +9 -5
  224. package/dist/vscode-observables/observables/dist/observableInternal/reactions/createEffect.js.map +1 -0
  225. package/dist/{external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js → vscode-observables/observables/dist/observableInternal/reactions/createEffectImpl.js} +1 -1
  226. package/dist/vscode-observables/observables/dist/observableInternal/reactions/createEffectImpl.js.map +1 -0
  227. package/dist/vscode-observables/observables/dist/observableInternal/transaction.js.map +1 -0
  228. package/dist/vscode-observables/observables/dist/observableInternal/utils/utils.js.map +1 -0
  229. package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/utils/utilsCancellation.js +2 -2
  230. package/dist/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +1 -0
  231. package/package.json +18 -15
  232. package/dist/commands/artifactCommand.d.ts +0 -14
  233. package/dist/commands/artifactCommand.d.ts.map +0 -1
  234. package/dist/external/vscode-observables/observables/dist/disposables.js.map +0 -1
  235. package/dist/external/vscode-observables/observables/dist/observableInternal/base.js.map +0 -1
  236. package/dist/external/vscode-observables/observables/dist/observableInternal/commonFacade/deps.js.map +0 -1
  237. package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +0 -1
  238. package/dist/external/vscode-observables/observables/dist/observableInternal/debugName.js.map +0 -1
  239. package/dist/external/vscode-observables/observables/dist/observableInternal/index.js.map +0 -1
  240. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/consoleObservableLogger.js.map +0 -1
  241. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/debugGetDependencyGraph.js.map +0 -1
  242. package/dist/external/vscode-observables/observables/dist/observableInternal/logging/logging.js.map +0 -1
  243. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/baseObservable.js.map +0 -1
  244. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derived.js.map +0 -1
  245. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/derivedImpl.js.map +0 -1
  246. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js.map +0 -1
  247. package/dist/external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js.map +0 -1
  248. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorun.js.map +0 -1
  249. package/dist/external/vscode-observables/observables/dist/observableInternal/reactions/autorunImpl.js.map +0 -1
  250. package/dist/external/vscode-observables/observables/dist/observableInternal/transaction.js.map +0 -1
  251. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utils.js.map +0 -1
  252. package/dist/external/vscode-observables/observables/dist/observableInternal/utils/utilsCancellation.js.map +0 -1
  253. package/dist/formatValue.js +0 -96
  254. package/dist/formatValue.js.map +0 -1
  255. package/dist/packages/common/dist/renderManifest.js +0 -46
  256. package/dist/packages/common/dist/renderManifest.js.map +0 -1
  257. package/dist/packages/semver/dist/index.js.map +0 -1
  258. package/dist/packages/simple-api/dist/chunk-FJ7AVNQE.js +0 -138
  259. package/dist/packages/simple-api/dist/chunk-FJ7AVNQE.js.map +0 -1
  260. package/dist/packages/simple-api/dist/chunk-TTRCY65Z.js +0 -27
  261. package/dist/packages/simple-api/dist/chunk-TTRCY65Z.js.map +0 -1
  262. package/dist/packages/simple-api/dist/chunk-WNXMRXWV.js +0 -28
  263. package/dist/packages/simple-api/dist/chunk-WNXMRXWV.js.map +0 -1
  264. package/dist/packages/simple-api/dist/express.js +0 -104
  265. package/dist/packages/simple-api/dist/express.js.map +0 -1
  266. /package/dist/{packages → js-component-explorer/packages}/semver/dist/index.js +0 -0
  267. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/disposables.js +0 -0
  268. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/base.js +0 -0
  269. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/commonFacade/deps.js +0 -0
  270. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/debugLocation.js +0 -0
  271. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/debugName.js +0 -0
  272. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/index.js +0 -0
  273. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/consoleObservableLogger.js +0 -0
  274. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/logging/logging.js +0 -0
  275. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/baseObservable.js +0 -0
  276. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/derived.js +0 -0
  277. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/derivedImpl.js +0 -0
  278. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/observableFromEvent.js +0 -0
  279. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/observables/observableValue.js +0 -0
  280. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/transaction.js +0 -0
  281. /package/dist/{external/vscode-observables → vscode-observables}/observables/dist/observableInternal/utils/utils.js +0 -0
@@ -8,6 +8,8 @@ export declare class CheckStabilityCommand extends Command {
8
8
  readonly labelPattern: string | undefined;
9
9
  readonly headed: boolean;
10
10
  readonly timeout: string;
11
+ readonly reloadBetweenFixtures: boolean;
12
+ readonly input: string | undefined;
11
13
  execute(): Promise<number>;
12
14
  }
13
15
  //# sourceMappingURL=checkStabilityCommand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"checkStabilityCommand.d.ts","sourceRoot":"","sources":["../../src/commands/checkStabilityCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAQ5C,qBAAa,qBAAsB,SAAQ,OAAO;IACjD,OAAgB,KAAK,aAAyB;IAE9C,OAAgB,KAAK,4BAMlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,YAAY,qBAA+I;IACpK,QAAQ,CAAC,MAAM,UAAwG;IACvH,QAAQ,CAAC,OAAO,SAA+G;IAEzH,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAyEhC"}
1
+ {"version":3,"file":"checkStabilityCommand.d.ts","sourceRoot":"","sources":["../../src/commands/checkStabilityCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAU5C,qBAAa,qBAAsB,SAAQ,OAAO;IACjD,OAAgB,KAAK,aAAyB;IAE9C,OAAgB,KAAK,4BAMlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,YAAY,qBAA+I;IACpK,QAAQ,CAAC,MAAM,UAAwG;IACvH,QAAQ,CAAC,OAAO,SAA+G;IAC/H,QAAQ,CAAC,qBAAqB,UAAkJ;IAChL,QAAQ,CAAC,KAAK,qBAAmO;IAE3O,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAsFhC"}
@@ -1,15 +1,17 @@
1
1
  import { Command, Option } from 'clipanion';
2
- import '../external/vscode-observables/observables/dist/observableInternal/index.js';
3
- import { DisposableStore } from '../external/vscode-observables/observables/dist/disposables.js';
4
- import '../external/vscode-observables/observables/dist/observableInternal/debugLocation.js';
5
- import '../external/vscode-observables/observables/dist/observableInternal/observables/derived.js';
6
- import '../external/vscode-observables/observables/dist/observableInternal/utils/utils.js';
7
- import '../external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
2
+ import '../vscode-observables/observables/dist/observableInternal/index.js';
3
+ import { DisposableStore } from '../vscode-observables/observables/dist/disposables.js';
4
+ import '../vscode-observables/observables/dist/observableInternal/debugLocation.js';
5
+ import '../vscode-observables/observables/dist/observableInternal/observables/derived.js';
6
+ import '../vscode-observables/observables/dist/observableInternal/utils/utils.js';
7
+ import '../vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
8
8
  import { PlaywrightBrowserPageFactory } from '../browserPage.js';
9
9
  import { ConsoleLogger, verbosityToLogLevel, createLogFileOptions, logBuildInfo } from '../logger.js';
10
10
  import { ResolvedConfig } from '../config.js';
11
+ import { AbsolutePath } from '../path.js';
11
12
  import { ExplorerSession } from '../explorerSession.js';
12
13
  import { contentHash } from '../screenshotCache.js';
14
+ import { parseInputJson } from './inputArg.js';
13
15
 
14
16
  class CheckStabilityCommand extends Command {
15
17
  static paths = [['check-stability']];
@@ -26,9 +28,19 @@ class CheckStabilityCommand extends Command {
26
28
  labelPattern = Option.String('--label-pattern', { required: false, description: 'RegExp to filter fixtures by label (matched against inherited labels)' });
27
29
  headed = Option.Boolean('--headed', false, { description: 'Show the browser window (useful for debugging)' });
28
30
  timeout = Option.String('--timeout', '30000', { description: 'Navigation timeout in milliseconds (default: 30000)' });
31
+ reloadBetweenFixtures = Option.Boolean('--reload-between-fixtures', false, { description: 'Reload the browser page between fixtures for cleaner isolation (slower)' });
32
+ input = Option.String('--input', { required: false, description: 'JSON object passed to every fixture as `RenderContext.input` (e.g. \'{"theme":"dark"}\'). Combine with `--input-<key> <value>` to override individual properties.' });
29
33
  async execute() {
30
34
  const logger = new ConsoleLogger('check-stability', this.context.stderr, verbosityToLogLevel(this.verbose), createLogFileOptions(this.logFile, this.verbose));
31
35
  logBuildInfo(logger);
36
+ let input;
37
+ try {
38
+ input = parseInputJson(this.input);
39
+ }
40
+ catch (e) {
41
+ this.context.stderr.write(`Error: ${e instanceof Error ? e.message : String(e)}\n`);
42
+ return 1;
43
+ }
32
44
  let labelRegex;
33
45
  if (this.labelPattern) {
34
46
  try {
@@ -40,7 +52,7 @@ class CheckStabilityCommand extends Command {
40
52
  }
41
53
  }
42
54
  const disposables = new DisposableStore();
43
- const config = await ResolvedConfig.fromProjectPath(this.project, disposables);
55
+ const config = await ResolvedConfig.fromProjectPath(AbsolutePath.resolve(this.project), disposables);
44
56
  const serverConfig = config.sessions[0].server;
45
57
  const browserFactory = new PlaywrightBrowserPageFactory(this.headed, Number(this.timeout));
46
58
  let session;
@@ -60,7 +72,12 @@ class CheckStabilityCommand extends Command {
60
72
  for (let i = 0; i < fixtures.length; i++) {
61
73
  const fixture = fixtures[i];
62
74
  this.context.stderr.write(`[${i + 1}/${fixtures.length}] Checking ${fixture.fixtureId}...`);
63
- const result = await session.explorer.screenshotFixtureStabilityCheck(fixture.fixtureId);
75
+ const result = await session.explorer.screenshotFixtureStabilityCheck(fixture.fixtureId, {
76
+ reloadOnError: true,
77
+ // Skip the reload before the first fixture — the page is already fresh.
78
+ reloadBeforeRender: this.reloadBetweenFixtures && i > 0,
79
+ input,
80
+ });
64
81
  const hashes = result.screenshots.map(s => contentHash(s.image));
65
82
  const isStable = hashes[0] === hashes[1] && hashes[1] === hashes[2];
66
83
  results.push({
@@ -1 +1 @@
1
- {"version":3,"file":"checkStabilityCommand.js","sources":["../../src/commands/checkStabilityCommand.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;;;;;;AAQM,MAAO,qBAAsB,SAAQ,OAAO,CAAA;IACjD,OAAgB,KAAK,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC;AAE7C,IAAA,OAAgB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AACrC,QAAA,WAAW,EAAE,sDAAsD;AACnE,QAAA,QAAQ,EAAE;YACT,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;YAC5C,CAAC,iBAAiB,EAAE,iDAAiD,CAAC;AACtE,SAAA;AACD,KAAA,CAAC;AAEO,IAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC;AAC5G,IAAA,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC;AACtG,IAAA,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,oEAAoE,EAAE,CAAC;AAC7I,IAAA,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,uEAAuE,EAAE,CAAC;AAC1J,IAAA,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,gDAAgD,EAAE,CAAC;AAC7G,IAAA,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,WAAW,EAAE,qDAAqD,EAAE,CAAC;AAE9H,IAAA,MAAM,OAAO,GAAA;AACZ,QAAA,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,iBAAiB,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,oBAAoB,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7J,YAAY,CAAC,MAAM,CAAC;AAEpB,QAAA,IAAI,UAA8B;AAClC,QAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACtB,YAAA,IAAI;gBACH,UAAU,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC;YAC3C;AAAE,YAAA,MAAM;AACP,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,8BAAA,EAAiC,IAAI,CAAC,YAAY,CAAA,EAAA,CAAI,CAAC;AACjF,gBAAA,OAAO,CAAC;YACT;QACD;AAEA,QAAA,MAAM,WAAW,GAAG,IAAI,eAAe,EAAE;AACzC,QAAA,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC;QAC9E,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM;AAE9C,QAAA,MAAM,cAAc,GAAG,IAAI,4BAA4B,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAE1F,QAAA,IAAI,OAAoC;AACxC,QAAA,IAAI;YACH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC;AACjD,YAAA,OAAO,GAAG,MAAM,eAAe,CAAC,MAAM,CAAC,iBAAiB,EAAE,YAAY,EAAE,cAAc,EAAE,EAAE,MAAM,EAAE,CAAC;AACnG,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,kBAAA,EAAqB,OAAO,CAAC,SAAS,CAAA,EAAA,CAAI,CAAC;YAErE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,YAAY,EAAE;AACxD,YAAA,IAAI,UAAU,CAAC,SAAS,EAAE;AACzB,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,gCAAA,EAAmC,UAAU,CAAC,SAAS,CAAA,EAAA,CAAI,CAAC;YACvF;YAEA,MAAM,QAAQ,GAAG;AAChB,kBAAE,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACxE,kBAAE,UAAU,CAAC,QAAQ;AAEtB,YAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,MAAA,EAAS,QAAQ,CAAC,MAAM,CAAA,WAAA,EAAc,UAAU,GAAG,CAAA,gBAAA,EAAmB,UAAU,CAAC,QAAQ,CAAC,MAAM,CAAA,CAAA,CAAG,GAAG,EAAE,CAAA,EAAA,CAAI,CAAC;YAEvI,MAAM,OAAO,GAAiG,EAAE;AAEhH,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;AACzC,gBAAA,MAAM,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC;gBAC3B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA,CAAA,EAAI,QAAQ,CAAC,MAAM,CAAA,WAAA,EAAc,OAAO,CAAC,SAAS,CAAA,GAAA,CAAK,CAAC;AAE3F,gBAAA,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAAC,OAAO,CAAC,SAAS,CAAC;AACxF,gBAAA,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAChE,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,MAAM,CAAC,CAAC,CAAC;gBAEnE,OAAO,CAAC,IAAI,CAAC;oBACZ,SAAS,EAAE,OAAO,CAAC,SAAS;oBAC5B,QAAQ;AACR,oBAAA,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;AACxF,iBAAA,CAAC;AAEF,gBAAA,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA,CAAA,EAAI,QAAQ,GAAG,QAAQ,GAAG,UAAU,CAAA,EAAA,CAAI,CAAC;YACpE;AAEA,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM;AACrD,YAAA,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM;AAExC,YAAA,MAAM,MAAM,GAAG;AACd,gBAAA,QAAQ,EAAE,OAAO;gBACjB,OAAO,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE;aACpD;YAED,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;YAEjE,OAAO,QAAQ,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QAC5B;gBAAU;AACT,YAAA,MAAM,OAAO,EAAE,OAAO,EAAE;AACxB,YAAA,MAAM,cAAc,CAAC,OAAO,EAAE;YAC9B,WAAW,CAAC,OAAO,EAAE;QACtB;IACD;;;;;"}
1
+ {"version":3,"file":"checkStabilityCommand.js","sources":["../../src/commands/checkStabilityCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare class CompareCommand extends Command {
4
4
  static usage: import("clipanion").Usage;
5
5
  readonly verbose: number;
6
6
  readonly logFile: string | undefined;
7
- readonly filter: string | undefined;
7
+ readonly fixtureIdRegex: string | undefined;
8
8
  readonly project: string;
9
9
  readonly baseline: string;
10
10
  readonly current: string;
@@ -1 +1 @@
1
- {"version":3,"file":"compareCommand.d.ts","sourceRoot":"","sources":["../../src/commands/compareCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAW5C,qBAAa,cAAe,SAAQ,OAAO;IAC1C,OAAgB,KAAK,aAAwB;IAE7C,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,MAAM,qBAAkG;IACjH,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,QAAQ,SAA2G;IAC5H,QAAQ,CAAC,OAAO,SAAwG;IACxH,QAAQ,CAAC,MAAM,qBAAkJ;IACjK,QAAQ,CAAC,YAAY,uBAAuI;IAEtJ,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CAwDhC"}
1
+ {"version":3,"file":"compareCommand.d.ts","sourceRoot":"","sources":["../../src/commands/compareCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,qBAAa,cAAe,SAAQ,OAAO;IAC1C,OAAgB,KAAK,aAAwB;IAE7C,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,cAAc,qBAAyJ;IAChL,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,QAAQ,SAAsI;IACvJ,QAAQ,CAAC,OAAO,SAAmI;IACnJ,QAAQ,CAAC,MAAM,qBAAoK;IACnL,QAAQ,CAAC,YAAY,uBAAuI;IAEtJ,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;CA+DhC"}
@@ -1,19 +1,20 @@
1
1
  import { Command, Option } from 'clipanion';
2
2
  import * as fs from 'node:fs/promises';
3
3
  import * as path from 'node:path';
4
- import '../external/vscode-observables/observables/dist/observableInternal/index.js';
5
- import { DisposableStore } from '../external/vscode-observables/observables/dist/disposables.js';
6
- import '../external/vscode-observables/observables/dist/observableInternal/debugLocation.js';
7
- import '../external/vscode-observables/observables/dist/observableInternal/observables/derived.js';
8
- import '../external/vscode-observables/observables/dist/observableInternal/utils/utils.js';
9
- import '../external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
4
+ import '../vscode-observables/observables/dist/observableInternal/index.js';
5
+ import { DisposableStore } from '../vscode-observables/observables/dist/disposables.js';
6
+ import '../vscode-observables/observables/dist/observableInternal/debugLocation.js';
7
+ import '../vscode-observables/observables/dist/observableInternal/observables/derived.js';
8
+ import '../vscode-observables/observables/dist/observableInternal/utils/utils.js';
9
+ import '../vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
10
10
  import { compareScreenshotsOnDisk, printComparisonToConsole, writeComparisonReport } from '../comparison.js';
11
11
  import { ConsoleLogger, verbosityToLogLevel, createLogFileOptions, logBuildInfo } from '../logger.js';
12
12
  import { FileSystemStorage } from '../storage.js';
13
13
  import { ResolvedConfig } from '../config.js';
14
- import { listPngFiles, matchGlob } from '../utils.js';
14
+ import { AbsolutePath } from '../path.js';
15
+ import { listPngFiles } from '../utils.js';
15
16
  import '../renderManifest.js';
16
- import { MANIFEST_FILENAME } from '../packages/common/dist/renderManifest.js';
17
+ import { MANIFEST_FILENAME } from '../js-component-explorer/packages/common/dist/renderManifest.js';
17
18
 
18
19
  class CompareCommand extends Command {
19
20
  static paths = [['render:compare']];
@@ -27,43 +28,51 @@ class CompareCommand extends Command {
27
28
  });
28
29
  verbose = Option.Counter('-v,--verbose', 0, { description: 'Increase log verbosity (-v debug, -vv trace)' });
29
30
  logFile = Option.String('--log-file', { description: 'Append logs to this file (works with -v/-vv)' });
30
- filter = Option.String('--filter', { required: false, description: 'Filter fixtures by glob pattern' });
31
+ fixtureIdRegex = Option.String('--fixture-id-regex', { required: false, description: 'Filter fixtures whose fixtureId matches this regular expression (unanchored)' });
31
32
  project = Option.String('-p,--project', process.cwd(), { description: 'Project: a directory, vite config file, or component-explorer.json' });
32
- baseline = Option.String('--baseline', '.screenshots/baseline', { description: 'Baseline screenshots directory' });
33
- current = Option.String('--current', '.screenshots/current', { description: 'Current screenshots directory' });
34
- report = Option.String('--report', { required: false, description: 'Output report folder (contains report.json, report.md, and changed screenshots)' });
33
+ baseline = Option.String('--baseline', '.screenshots/baseline', { description: 'Baseline screenshots directory, relative to project file.' });
34
+ current = Option.String('--current', '.screenshots/current', { description: 'Current screenshots directory, relative to project file.' });
35
+ report = Option.String('--report', { required: false, description: 'Output report folder (contains report.json, report.md, and changed screenshots), relative to cwd.' });
35
36
  failOnLabels = Option.Array('--fail-on-labels', { required: false, description: 'Only fail when fixtures with any of these labels have changes' });
36
37
  async execute() {
37
38
  const disposables = new DisposableStore();
38
- const config = await ResolvedConfig.fromProjectPath(this.project, disposables);
39
+ const config = await ResolvedConfig.fromProjectPath(AbsolutePath.resolve(this.project), disposables);
39
40
  const projectDir = config.configDir;
40
41
  disposables.dispose();
41
42
  const _logger = new ConsoleLogger('compare', this.context.stdout, verbosityToLogLevel(this.verbose), createLogFileOptions(this.logFile, this.verbose));
42
43
  logBuildInfo(_logger);
43
- const baselineDir = path.isAbsolute(this.baseline) ? this.baseline : path.join(projectDir, this.baseline);
44
- const currentDir = path.isAbsolute(this.current) ? this.current : path.join(projectDir, this.current);
44
+ const baselineDir = AbsolutePath.fromAbsoluteOrRelative(this.baseline, { base: projectDir });
45
+ const currentDir = AbsolutePath.fromAbsoluteOrRelative(this.current, { base: projectDir });
45
46
  const baselineStorage = new FileSystemStorage(baselineDir);
46
47
  const currentStorage = new FileSystemStorage(currentDir);
47
48
  // List all PNG files
48
49
  let baselineFiles = await listPngFiles(baselineDir);
49
50
  let currentFiles = await listPngFiles(currentDir);
50
51
  // Apply filter if specified
51
- if (this.filter) {
52
- const filterFn = (file) => matchGlob(file.replace(/\.png$/, ''), this.filter);
52
+ if (this.fixtureIdRegex) {
53
+ let regex;
54
+ try {
55
+ regex = new RegExp(this.fixtureIdRegex);
56
+ }
57
+ catch (e) {
58
+ this.context.stderr.write(`Error: Invalid --fixture-id-regex: ${e instanceof Error ? e.message : String(e)}\n`);
59
+ return 1;
60
+ }
61
+ const filterFn = (file) => regex.test(file.replace(/\.png$/, ''));
53
62
  baselineFiles = baselineFiles.filter(filterFn);
54
63
  currentFiles = currentFiles.filter(filterFn);
55
64
  }
56
- const currentMetadata = await readFixturesJson(currentDir);
57
- const baselineMetadata = await readFixturesJson(baselineDir);
65
+ const currentMetadata = await readFixturesJson(currentDir.value);
66
+ const baselineMetadata = await readFixturesJson(baselineDir.value);
58
67
  const result = await compareScreenshotsOnDisk({ list: async () => currentFiles, read: (id) => currentStorage.read(id), exists: (id) => currentStorage.exists(id) }, { list: async () => baselineFiles, read: (id) => baselineStorage.read(id), exists: (id) => baselineStorage.exists(id) }, currentFiles, baselineFiles, { currentMetadata, baselineMetadata });
59
68
  printComparisonToConsole(result, this.context.stdout);
60
69
  if (this.report) {
61
- const reportDir = path.isAbsolute(this.report) ? this.report : path.join(process.cwd(), this.report);
70
+ const reportDir = AbsolutePath.fromAbsoluteOrRelative(this.report, { base: AbsolutePath.resolve('.') });
62
71
  await writeComparisonReport({
63
72
  reportDir,
64
73
  result,
65
- baselinePath: this.baseline,
66
- currentPath: this.current,
74
+ baselinePath: baselineDir,
75
+ currentPath: currentDir,
67
76
  getBaselineData: (id) => baselineStorage.read(`${id}.png`),
68
77
  getCurrentData: (id) => currentStorage.read(`${id}.png`),
69
78
  });
@@ -1 +1 @@
1
- {"version":3,"file":"compareCommand.js","sources":["../../src/commands/compareCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compareCommand.js","sources":["../../src/commands/compareCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Helpers for the CLI `--input` family of flags.
3
+ *
4
+ * - `--input '<json>'`: a JSON object passed as `RenderContext.input` to every fixture in the run.
5
+ * - `--input-<key> <value>`: a single property override on the input object. Values are auto-cast:
6
+ * - matches `^-?\d+(\.\d+)?$` → number
7
+ * - matches `^(true|false)$` → boolean
8
+ * - otherwise kept as string
9
+ *
10
+ * Per-key overrides are merged on top of the base `--input` JSON (so `--input-X` wins).
11
+ *
12
+ * The argv preprocessing (`preprocessInputArgs`) runs in the CLI entry, before clipanion sees argv.
13
+ * It rewrites all `--input-<key> <value>` pairs into a single `--input '<merged-json>'` pair,
14
+ * so individual commands only need to declare a single `--input` String option.
15
+ */
16
+ /** Cast a CLI string value to number / boolean / string per the documented rules. */
17
+ export declare function castInputValue(raw: string): unknown;
18
+ /**
19
+ * Parse the resolved `--input` flag value as a JSON object (or undefined).
20
+ *
21
+ * @throws {Error} when the value isn't valid JSON or isn't a JSON object.
22
+ */
23
+ export declare function parseInputJson(raw: string | undefined): Record<string, unknown> | undefined;
24
+ /**
25
+ * Pre-scan argv, extract every `--input-<key> <value>` pair, merge them onto the existing
26
+ * `--input '<json>'` (if any), and return a rewritten argv with a single `--input '<merged>'` flag.
27
+ *
28
+ * If no `--input-<key>` flags are present, argv is returned unchanged.
29
+ *
30
+ * @throws {Error} when the base `--input` JSON is invalid or not an object.
31
+ */
32
+ export declare function preprocessInputArgs(args: readonly string[]): string[];
33
+ //# sourceMappingURL=inputArg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputArg.d.ts","sourceRoot":"","sources":["../../src/commands/inputArg.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,qFAAqF;AACrF,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAKnD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAY3F;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CA0CrE"}
@@ -0,0 +1,103 @@
1
+ /**
2
+ * Helpers for the CLI `--input` family of flags.
3
+ *
4
+ * - `--input '<json>'`: a JSON object passed as `RenderContext.input` to every fixture in the run.
5
+ * - `--input-<key> <value>`: a single property override on the input object. Values are auto-cast:
6
+ * - matches `^-?\d+(\.\d+)?$` → number
7
+ * - matches `^(true|false)$` → boolean
8
+ * - otherwise kept as string
9
+ *
10
+ * Per-key overrides are merged on top of the base `--input` JSON (so `--input-X` wins).
11
+ *
12
+ * The argv preprocessing (`preprocessInputArgs`) runs in the CLI entry, before clipanion sees argv.
13
+ * It rewrites all `--input-<key> <value>` pairs into a single `--input '<merged-json>'` pair,
14
+ * so individual commands only need to declare a single `--input` String option.
15
+ */
16
+ const NUMBER_RE = /^-?\d+(?:\.\d+)?$/;
17
+ /** Cast a CLI string value to number / boolean / string per the documented rules. */
18
+ function castInputValue(raw) {
19
+ if (NUMBER_RE.test(raw)) {
20
+ return Number(raw);
21
+ }
22
+ if (raw === 'true') {
23
+ return true;
24
+ }
25
+ if (raw === 'false') {
26
+ return false;
27
+ }
28
+ return raw;
29
+ }
30
+ /**
31
+ * Parse the resolved `--input` flag value as a JSON object (or undefined).
32
+ *
33
+ * @throws {Error} when the value isn't valid JSON or isn't a JSON object.
34
+ */
35
+ function parseInputJson(raw) {
36
+ if (raw === undefined) {
37
+ return undefined;
38
+ }
39
+ let parsed;
40
+ try {
41
+ parsed = JSON.parse(raw);
42
+ }
43
+ catch (e) {
44
+ throw new Error(`--input is not valid JSON: ${e instanceof Error ? e.message : String(e)}`);
45
+ }
46
+ if (typeof parsed !== 'object' || parsed === null || Array.isArray(parsed)) {
47
+ throw new Error('--input must be a JSON object (e.g. \'{"theme":"dark"}\')');
48
+ }
49
+ return parsed;
50
+ }
51
+ /**
52
+ * Pre-scan argv, extract every `--input-<key> <value>` pair, merge them onto the existing
53
+ * `--input '<json>'` (if any), and return a rewritten argv with a single `--input '<merged>'` flag.
54
+ *
55
+ * If no `--input-<key>` flags are present, argv is returned unchanged.
56
+ *
57
+ * @throws {Error} when the base `--input` JSON is invalid or not an object.
58
+ */
59
+ function preprocessInputArgs(args) {
60
+ const out = [];
61
+ const overrides = {};
62
+ let baseInputJson;
63
+ let baseInputJsonOutIdx;
64
+ for (let i = 0; i < args.length; i++) {
65
+ const a = args[i];
66
+ if (a === '--input' && i + 1 < args.length) {
67
+ baseInputJson = args[i + 1];
68
+ out.push(a);
69
+ baseInputJsonOutIdx = out.length;
70
+ out.push(args[i + 1]);
71
+ i++;
72
+ }
73
+ else if (a.startsWith('--input-') && a.length > '--input-'.length) {
74
+ const key = a.slice('--input-'.length);
75
+ // Reject obvious typos / no value supplied — leave for clipanion to surface.
76
+ if (i + 1 >= args.length || args[i + 1].startsWith('-')) {
77
+ out.push(a);
78
+ continue;
79
+ }
80
+ overrides[key] = castInputValue(args[i + 1]);
81
+ i++;
82
+ }
83
+ else {
84
+ out.push(a);
85
+ }
86
+ }
87
+ if (Object.keys(overrides).length === 0) {
88
+ return out;
89
+ }
90
+ const base = parseInputJson(baseInputJson) ?? {};
91
+ const merged = { ...base, ...overrides };
92
+ const mergedJson = JSON.stringify(merged);
93
+ if (baseInputJsonOutIdx !== undefined) {
94
+ out[baseInputJsonOutIdx] = mergedJson;
95
+ }
96
+ else {
97
+ out.push('--input', mergedJson);
98
+ }
99
+ return out;
100
+ }
101
+
102
+ export { castInputValue, parseInputJson, preprocessInputArgs };
103
+ //# sourceMappingURL=inputArg.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inputArg.js","sources":["../../src/commands/inputArg.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcpCommand.d.ts","sourceRoot":"","sources":["../../src/commands/mcpCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,qBAAa,UAAW,SAAQ,OAAO;IACtC,OAAgB,KAAK,aAAa;IAElC,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,OAAO,SAAwI;IACxJ,QAAQ,CAAC,SAAS,UAA6I;IAC/J,QAAQ,CAAC,WAAW,UAA4I;IAChK,QAAQ,CAAC,eAAe,qBAAsJ;IAC9K,QAAQ,CAAC,WAAW,qBAAyG;IAEvH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAyD9B"}
1
+ {"version":3,"file":"mcpCommand.d.ts","sourceRoot":"","sources":["../../src/commands/mcpCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAY5C,qBAAa,UAAW,SAAQ,OAAO;IACtC,OAAgB,KAAK,aAAa;IAElC,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,OAAO,SAAwI;IACxJ,QAAQ,CAAC,SAAS,UAA6I;IAC/J,QAAQ,CAAC,WAAW,UAA4I;IAChK,QAAQ,CAAC,eAAe,qBAAsJ;IAC9K,QAAQ,CAAC,WAAW,qBAAyG;IAEvH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA0D9B"}
@@ -1,16 +1,16 @@
1
1
  import { Command, Option } from 'clipanion';
2
- import * as path from 'node:path';
3
- import '../external/vscode-observables/observables/dist/observableInternal/index.js';
4
- import { DisposableStore } from '../external/vscode-observables/observables/dist/disposables.js';
5
- import { observableValue } from '../external/vscode-observables/observables/dist/observableInternal/observables/observableValue.js';
6
- import '../external/vscode-observables/observables/dist/observableInternal/debugLocation.js';
7
- import '../external/vscode-observables/observables/dist/observableInternal/observables/derived.js';
8
- import '../external/vscode-observables/observables/dist/observableInternal/utils/utils.js';
9
- import '../external/vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
2
+ import '../vscode-observables/observables/dist/observableInternal/index.js';
3
+ import { DisposableStore } from '../vscode-observables/observables/dist/disposables.js';
4
+ import { observableValue } from '../vscode-observables/observables/dist/observableInternal/observables/observableValue.js';
5
+ import '../vscode-observables/observables/dist/observableInternal/debugLocation.js';
6
+ import '../vscode-observables/observables/dist/observableInternal/observables/derived.js';
7
+ import '../vscode-observables/observables/dist/observableInternal/utils/utils.js';
8
+ import '../vscode-observables/observables/dist/observableInternal/observables/observableFromEvent.js';
10
9
  import { tryConnect, connectToExistingOrStartDaemon } from '../daemon/lifecycle.js';
11
10
  import { daemonPipeInfo } from '../daemon/pipeName.js';
12
11
  import { ComponentExplorerMcpServer } from '../mcp/McpServer.js';
13
12
  import { ResolvedConfig } from '../config.js';
13
+ import { AbsolutePath } from '../path.js';
14
14
  import { DaemonService } from '../daemon/DaemonService.js';
15
15
  import { createInProcessClient } from '../daemon/inProcessClient.js';
16
16
  import { ConsoleLogger, verbosityToLogLevel, createLogFileOptions, logBuildInfo } from '../logger.js';
@@ -39,8 +39,9 @@ class McpCommand extends Command {
39
39
  this.context.stderr.write('Error: --no-daemon-autostart requires --use-daemon.\n');
40
40
  return;
41
41
  }
42
+ const projectPath = AbsolutePath.resolve(this.project);
42
43
  const disposables = new DisposableStore();
43
- const config = await ResolvedConfig.fromProjectPath(this.project, disposables);
44
+ const config = await ResolvedConfig.fromProjectPath(projectPath, disposables);
44
45
  if (!config.isFullConfig) {
45
46
  this.context.stderr.write('Error: mcp requires a component-explorer.json config file.\n');
46
47
  disposables.dispose();
@@ -74,7 +75,7 @@ class McpCommand extends Command {
74
75
  process.exit(0);
75
76
  });
76
77
  const accessor = this.useDaemon
77
- ? new ExternalDaemonAccessor(this.project, logger, {
78
+ ? new ExternalDaemonAccessor(projectPath, logger, {
78
79
  noAutostart: this.noAutostart,
79
80
  noAutostartHint: this.noAutostartHint,
80
81
  verbose: this.verbose,
@@ -118,7 +119,8 @@ class InProcessDaemonAccessor {
118
119
  idleTimeoutMs: 0,
119
120
  });
120
121
  this._asyncCleanupFns.push(() => service.dispose());
121
- const client = createInProcessClient(service.api, { clientName: 'mcp-inproc' });
122
+ const client = createInProcessClient(service, { clientName: 'mcp-inproc' });
123
+ this._asyncCleanupFns.push(async () => client.dispose());
122
124
  this._connection.set(client, undefined);
123
125
  return client;
124
126
  }
@@ -142,7 +144,7 @@ class ExternalDaemonAccessor {
142
144
  constructor(projectPath, _logger, _options) {
143
145
  this._logger = _logger;
144
146
  this._options = _options;
145
- this._configPath = path.resolve(projectPath);
147
+ this._configPath = projectPath;
146
148
  const { pipeName, source: pipeSource } = daemonPipeInfo(this._configPath);
147
149
  this._pipeName = pipeName;
148
150
  this._clientName = `mcp-${new Date().toISOString().replace(/[-:]/g, '').replace(/\.\d+Z$/, '')}`;
@@ -152,6 +154,7 @@ class ExternalDaemonAccessor {
152
154
  get noDaemonHint() { return this._options.noAutostartHint; }
153
155
  _onConnectionError = () => {
154
156
  if (this._connection.get()) {
157
+ this._connection.get()?.dispose();
155
158
  this._connection.set(undefined, undefined);
156
159
  this._logger.debug('Daemon connection lost');
157
160
  }
@@ -170,6 +173,9 @@ class ExternalDaemonAccessor {
170
173
  this._logger.debug('Daemon connection established');
171
174
  this._connection.set(client, undefined);
172
175
  }
176
+ else {
177
+ client.dispose();
178
+ }
173
179
  return;
174
180
  }
175
181
  this._onConnectionError();
@@ -1 +1 @@
1
- {"version":3,"file":"mcpCommand.js","sources":["../../src/commands/mcpCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcpCommand.js","sources":["../../src/commands/mcpCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ export declare class RenderCommand extends Command {
4
4
  static usage: import("clipanion").Usage;
5
5
  readonly verbose: number;
6
6
  readonly logFile: string | undefined;
7
- readonly filter: string | undefined;
7
+ readonly fixtureIdRegex: string | undefined;
8
8
  readonly accept: boolean;
9
9
  readonly project: string;
10
10
  readonly target: string | undefined;
@@ -13,8 +13,17 @@ export declare class RenderCommand extends Command {
13
13
  readonly report: string | undefined;
14
14
  readonly headed: boolean;
15
15
  readonly timeout: string;
16
+ readonly workers: string | undefined;
16
17
  readonly useHashPaths: boolean;
18
+ readonly reloadBetweenFixtures: boolean;
19
+ readonly input: string | undefined;
20
+ readonly coverage: boolean;
21
+ readonly coverageMode: string | undefined;
22
+ readonly coverageJs: string | undefined;
23
+ readonly coverageCss: boolean;
24
+ readonly coverageOutput: string | undefined;
17
25
  execute(): Promise<number>;
26
+ private _resolveCoverage;
18
27
  private _runComparison;
19
28
  }
20
29
  //# sourceMappingURL=renderCommand.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"renderCommand.d.ts","sourceRoot":"","sources":["../../src/commands/renderCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAc5C,qBAAa,aAAc,SAAQ,OAAO;IACzC,OAAgB,KAAK,aAAgB;IAErC,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,MAAM,qBAAkG;IACjH,QAAQ,CAAC,MAAM,UAAiI;IAChJ,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,MAAM,qBAAsK;IACrL,QAAQ,CAAC,OAAO,UAA8F;IAC9G,QAAQ,CAAC,aAAa,qBAA+K;IACrM,QAAQ,CAAC,MAAM,qBAA4G;IAC3H,QAAQ,CAAC,MAAM,UAAwG;IACvH,QAAQ,CAAC,OAAO,SAA+G;IAC/H,QAAQ,CAAC,YAAY,UAA8J;IAE7K,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;YA+HlB,cAAc;CA+B5B"}
1
+ {"version":3,"file":"renderCommand.d.ts","sourceRoot":"","sources":["../../src/commands/renderCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AA0B5C,qBAAa,aAAc,SAAQ,OAAO;IACzC,OAAgB,KAAK,aAAgB;IAErC,OAAgB,KAAK,4BAOlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,OAAO,qBAAgG;IAChH,QAAQ,CAAC,cAAc,qBAAyJ;IAChL,QAAQ,CAAC,MAAM,UAAiI;IAChJ,QAAQ,CAAC,OAAO,SAAuI;IACvJ,QAAQ,CAAC,MAAM,qBAAsK;IACrL,QAAQ,CAAC,OAAO,UAA8F;IAC9G,QAAQ,CAAC,aAAa,qBAA+K;IACrM,QAAQ,CAAC,MAAM,qBAA4G;IAC3H,QAAQ,CAAC,MAAM,UAAwG;IACvH,QAAQ,CAAC,OAAO,SAA+G;IAC/H,QAAQ,CAAC,OAAO,qBAAuJ;IACvK,QAAQ,CAAC,YAAY,UAA8J;IACnL,QAAQ,CAAC,qBAAqB,UAAkJ;IAChL,QAAQ,CAAC,KAAK,qBAAmO;IAEjP,QAAQ,CAAC,QAAQ,UAAoJ;IACrK,QAAQ,CAAC,YAAY,qBAA0N;IAC/O,QAAQ,CAAC,UAAU,qBAAiM;IACpN,QAAQ,CAAC,WAAW,UAAyH;IAC7I,QAAQ,CAAC,cAAc,qBAAiJ;IAElK,OAAO,IAAI,OAAO,CAAC,MAAM,CAAC;IA4YhC,OAAO,CAAC,gBAAgB;YA8CV,cAAc;CA+B5B"}