@vscode/component-explorer-cli 0.1.1-1 → 0.1.1-3
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.
- package/dist/commands/mcpCommand.d.ts +8 -0
- package/dist/commands/mcpCommand.d.ts.map +1 -0
- package/dist/commands/mcpCommand.js +24 -0
- package/dist/commands/mcpCommand.js.map +1 -0
- package/dist/commands/screenshotCommand.js +1 -1
- package/dist/commands/screenshotCommand.js.map +1 -1
- package/dist/commands/serveCommand.d.ts +16 -0
- package/dist/commands/serveCommand.d.ts.map +1 -0
- package/dist/commands/serveCommand.js +137 -0
- package/dist/commands/serveCommand.js.map +1 -0
- package/dist/commands/watchCommand.d.ts.map +1 -1
- package/dist/commands/watchCommand.js +6 -3
- package/dist/commands/watchCommand.js.map +1 -1
- package/dist/componentExplorer.d.ts +1 -0
- package/dist/componentExplorer.d.ts.map +1 -1
- package/dist/componentExplorer.js +17 -6
- package/dist/componentExplorer.js.map +1 -1
- package/dist/daemon/DaemonService.d.ts +132 -0
- package/dist/daemon/DaemonService.d.ts.map +1 -0
- package/dist/daemon/DaemonService.js +457 -0
- package/dist/daemon/DaemonService.js.map +1 -0
- package/dist/daemon/approvalStore.d.ts +51 -0
- package/dist/daemon/approvalStore.d.ts.map +1 -0
- package/dist/daemon/approvalStore.js +58 -0
- package/dist/daemon/approvalStore.js.map +1 -0
- package/dist/daemon/lifecycle.d.ts +8 -0
- package/dist/daemon/lifecycle.d.ts.map +1 -0
- package/dist/daemon/lifecycle.js +51 -0
- package/dist/daemon/lifecycle.js.map +1 -0
- package/dist/daemon/pipeClient.d.ts +4 -0
- package/dist/daemon/pipeClient.d.ts.map +1 -0
- package/dist/daemon/pipeClient.js +98 -0
- package/dist/daemon/pipeClient.js.map +1 -0
- package/dist/daemon/pipeName.d.ts +2 -0
- package/dist/daemon/pipeName.d.ts.map +1 -0
- package/dist/daemon/pipeName.js +14 -0
- package/dist/daemon/pipeName.js.map +1 -0
- package/dist/daemon/pipeServer.d.ts +4 -0
- package/dist/daemon/pipeServer.d.ts.map +1 -0
- package/dist/daemon/pipeServer.js +23 -0
- package/dist/daemon/pipeServer.js.map +1 -0
- package/dist/daemon/types.d.ts +12 -0
- package/dist/daemon/types.d.ts.map +1 -0
- package/dist/explorerSession.d.ts +5 -3
- package/dist/explorerSession.d.ts.map +1 -1
- package/dist/explorerSession.js +6 -3
- package/dist/explorerSession.js.map +1 -1
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js +3 -0
- package/dist/external/vscode-observables/observables/dist/observableInternal/debugLocation.js.map +1 -1
- package/dist/httpServer.d.ts +8 -7
- package/dist/httpServer.d.ts.map +1 -1
- package/dist/httpServer.js +44 -4
- package/dist/httpServer.js.map +1 -1
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -1
- package/dist/mcp/McpServer.d.ts +28 -0
- package/dist/mcp/McpServer.d.ts.map +1 -0
- package/dist/mcp/McpServer.js +386 -0
- package/dist/mcp/McpServer.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js +137 -0
- package/dist/packages/simple-api/dist/chunk-3R7GHWBM.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-A5PE72HI.js +21 -0
- package/dist/packages/simple-api/dist/chunk-A5PE72HI.js.map +1 -0
- package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js +24 -0
- package/dist/packages/simple-api/dist/chunk-SGBCNXYH.js.map +1 -0
- package/dist/packages/simple-api/dist/express.js +96 -0
- package/dist/packages/simple-api/dist/express.js.map +1 -0
- package/dist/watchConfig.d.ts +5 -0
- package/dist/watchConfig.d.ts.map +1 -1
- package/dist/watchConfig.js +14 -2
- package/dist/watchConfig.js.map +1 -1
- package/package.json +11 -3
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpCommand.d.ts","sourceRoot":"","sources":["../../src/commands/mcpCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAI5C,qBAAa,UAAW,SAAQ,OAAO;IACtC,OAAgB,KAAK,aAAa;IAElC,OAAgB,KAAK,4BAKlB;IAEH,QAAQ,CAAC,MAAM,SAA8F;IAEvG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ9B"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { Command, Option } from 'clipanion';
|
|
2
|
+
import { ensureDaemon } from '../daemon/lifecycle.js';
|
|
3
|
+
import { ComponentExplorerMcpServer } from '../mcp/McpServer.js';
|
|
4
|
+
|
|
5
|
+
class McpCommand extends Command {
|
|
6
|
+
static paths = [['mcp']];
|
|
7
|
+
static usage = Command.Usage({
|
|
8
|
+
description: 'Start an MCP server over stdio. Auto-starts a daemon if not already running.',
|
|
9
|
+
examples: [
|
|
10
|
+
['Start MCP server', '$0 mcp -c config.json'],
|
|
11
|
+
],
|
|
12
|
+
});
|
|
13
|
+
config = Option.String('-c,--config', { required: true, description: 'Path to watch config JSON' });
|
|
14
|
+
async execute() {
|
|
15
|
+
// Ensure daemon is running (auto-starts in background if needed)
|
|
16
|
+
const daemon = await ensureDaemon(this.config);
|
|
17
|
+
// Create and connect the MCP server over stdio
|
|
18
|
+
const mcpServer = new ComponentExplorerMcpServer(daemon);
|
|
19
|
+
await mcpServer.connect();
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
export { McpCommand };
|
|
24
|
+
//# sourceMappingURL=mcpCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcpCommand.js","sources":["../../src/commands/mcpCommand.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;AAIM,MAAO,UAAW,SAAQ,OAAO,CAAA;IACtC,OAAgB,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAEjC,IAAA,OAAgB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AACrC,QAAA,WAAW,EAAE,8EAA8E;AAC3F,QAAA,QAAQ,EAAE;YACT,CAAC,kBAAkB,EAAE,uBAAuB,CAAC;AAC7C,SAAA;AACD,KAAA,CAAC;AAEO,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,2BAA2B,EAAE,CAAC;AAE5G,IAAA,MAAM,OAAO,GAAA;;QAEZ,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC;;AAG9C,QAAA,MAAM,SAAS,GAAG,IAAI,0BAA0B,CAAC,MAAM,CAAC;AACxD,QAAA,MAAM,SAAS,CAAC,OAAO,EAAE;IAC1B;;;;;"}
|
|
@@ -30,7 +30,7 @@ class ScreenshotCommand extends Command {
|
|
|
30
30
|
let explorer;
|
|
31
31
|
try {
|
|
32
32
|
this.context.stdout.write('Starting Vite dev server...\n');
|
|
33
|
-
server = await serverFactory.createViteServer(ViteProjectRef.fromSourceRootDir(this.root),
|
|
33
|
+
server = await serverFactory.createViteServer(ViteProjectRef.fromSourceRootDir(this.root), { logger });
|
|
34
34
|
this.context.stdout.write(`Server running at ${server.url}\n`);
|
|
35
35
|
explorer = new BrowserComponentExplorer(browserFactory, server, logger);
|
|
36
36
|
const fixtures = await explorer.listFixtures();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenshotCommand.js","sources":["../../src/commands/screenshotCommand.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;;;AAQM,MAAO,iBAAkB,SAAQ,OAAO,CAAA;IAC7C,OAAgB,KAAK,GAAG,CAAC,CAAC,YAAY,CAAC,CAAC;AAExC,IAAA,OAAgB,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;AACrC,QAAA,WAAW,EAAE,qCAAqC;AAClD,QAAA,QAAQ,EAAE;YACT,CAAC,sBAAsB,EAAE,eAAe,CAAC;YACzC,CAAC,gCAAgC,EAAE,wBAAwB,CAAC;YAC5D,CAAC,gBAAgB,EAAE,mCAAmC,CAAC;AACvD,SAAA;AACD,KAAA,CAAC;AAEO,IAAA,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,8CAA8C,EAAE,CAAC;AAC5G,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAE,iCAAiC,EAAE,CAAC;AACvG,IAAA,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,+CAA+C,EAAE,CAAC;AAC5G,IAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,EAAE,EAAE,EAAE,WAAW,EAAE,wBAAwB,EAAE,CAAC;AAEjG,IAAA,MAAM,OAAO,GAAA;QACZ,MAAM,MAAM,GAAG,IAAI,aAAa,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACtG,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,GAAG,UAAU,GAAG,SAAS;QACtD,MAAM,OAAO,GAAG,IAAI,iBAAiB,CAAC,CAAA,EAAG,IAAI,CAAC,IAAI,CAAA,aAAA,CAAe,CAAC;AAClE,QAAA,MAAM,aAAa,GAAG,IAAI,yCAAyC,EAAE;AACrE,QAAA,MAAM,cAAc,GAAG,IAAI,4BAA4B,EAAE;AAEzD,QAAA,IAAI,MAAM;AACV,QAAA,IAAI,QAAQ;AACZ,QAAA,IAAI;YACH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAAC;AAC1D,YAAA,MAAM,GAAG,MAAM,aAAa,CAAC,gBAAgB,CAAC,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,
|
|
1
|
+
{"version":3,"file":"screenshotCommand.js","sources":["../../src/commands/screenshotCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { Command } from 'clipanion';
|
|
2
|
+
export declare class ServeCommand extends Command {
|
|
3
|
+
static paths: string[][];
|
|
4
|
+
static usage: import("clipanion").Usage;
|
|
5
|
+
readonly verbose: number;
|
|
6
|
+
readonly config: string;
|
|
7
|
+
readonly background: boolean;
|
|
8
|
+
readonly attach: boolean;
|
|
9
|
+
readonly kill: boolean;
|
|
10
|
+
execute(): Promise<void>;
|
|
11
|
+
private _ensureBackground;
|
|
12
|
+
private _attach;
|
|
13
|
+
private _printEvent;
|
|
14
|
+
private _startDaemon;
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=serveCommand.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serveCommand.d.ts","sourceRoot":"","sources":["../../src/commands/serveCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAW5C,qBAAa,YAAa,SAAQ,OAAO;IACxC,OAAgB,KAAK,aAAe;IAEpC,OAAgB,KAAK,4BAgBlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,MAAM,SAA8F;IAC7G,QAAQ,CAAC,UAAU,UAAoG;IACvH,QAAQ,CAAC,MAAM,UAAsG;IACrH,QAAQ,CAAC,IAAI,UAAkF;IAEzF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YA+ChB,iBAAiB;YAsBjB,OAAO;IAgBrB,OAAO,CAAC,WAAW;YAeL,YAAY;CA+B1B"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { Command, Option } from 'clipanion';
|
|
2
|
+
import { spawn } from 'node:child_process';
|
|
3
|
+
import { fileURLToPath } from 'node:url';
|
|
4
|
+
import * as path from 'node:path';
|
|
5
|
+
import { ConsoleLogger, verbosityToLogLevel } from '../logger.js';
|
|
6
|
+
import { ResolvedWatchConfig } from '../watchConfig.js';
|
|
7
|
+
import { DaemonService } from '../daemon/DaemonService.js';
|
|
8
|
+
import { startPipeServer } from '../daemon/pipeServer.js';
|
|
9
|
+
import { daemonPipeName } from '../daemon/pipeName.js';
|
|
10
|
+
import { tryConnect, waitForDaemon } from '../daemon/lifecycle.js';
|
|
11
|
+
|
|
12
|
+
class ServeCommand extends Command {
|
|
13
|
+
static paths = [['serve']];
|
|
14
|
+
static usage = Command.Usage({
|
|
15
|
+
description: 'Start or attach to a Component Explorer daemon.',
|
|
16
|
+
details: `
|
|
17
|
+
Without flags: starts a foreground daemon. Errors if one is already running.
|
|
18
|
+
--background: spawns a detached daemon, prints pipe name, exits. No-op if already running.
|
|
19
|
+
--attach: connects to a running daemon and streams events. Errors if none is running.
|
|
20
|
+
--background --attach: ensures a daemon is running, then attaches.
|
|
21
|
+
--kill: shuts down a running daemon.
|
|
22
|
+
`,
|
|
23
|
+
examples: [
|
|
24
|
+
['Start in foreground', '$0 serve -c config.json'],
|
|
25
|
+
['Start in background', '$0 serve -c config.json --background'],
|
|
26
|
+
['Attach to running daemon', '$0 serve -c config.json --attach'],
|
|
27
|
+
['Ensure daemon + attach', '$0 serve -c config.json --background --attach'],
|
|
28
|
+
['Kill running daemon', '$0 serve -c config.json --kill'],
|
|
29
|
+
],
|
|
30
|
+
});
|
|
31
|
+
verbose = Option.Counter('-v,--verbose', 0, { description: 'Increase log verbosity (-v debug, -vv trace)' });
|
|
32
|
+
config = Option.String('-c,--config', { required: true, description: 'Path to watch config JSON' });
|
|
33
|
+
background = Option.Boolean('--background', false, { description: 'Spawn as a detached background process' });
|
|
34
|
+
attach = Option.Boolean('--attach', false, { description: 'Attach to a running daemon and stream events' });
|
|
35
|
+
kill = Option.Boolean('--kill', false, { description: 'Shut down a running daemon' });
|
|
36
|
+
async execute() {
|
|
37
|
+
const pipeName = daemonPipeName(this.config);
|
|
38
|
+
if (this.kill) {
|
|
39
|
+
const client = await tryConnect(pipeName);
|
|
40
|
+
if (!client) {
|
|
41
|
+
this.context.stderr.write('No daemon running.\n');
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
await client.methods.shutdown();
|
|
45
|
+
this.context.stdout.write('Daemon shut down.\n');
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
if (this.background && this.attach) {
|
|
49
|
+
// Ensure daemon is running, then attach
|
|
50
|
+
await this._ensureBackground(pipeName);
|
|
51
|
+
const client = await tryConnect(pipeName);
|
|
52
|
+
if (!client) {
|
|
53
|
+
this.context.stderr.write('Failed to connect after starting daemon.\n');
|
|
54
|
+
return;
|
|
55
|
+
}
|
|
56
|
+
return this._attach(client, pipeName);
|
|
57
|
+
}
|
|
58
|
+
if (this.background) {
|
|
59
|
+
return this._ensureBackground(pipeName);
|
|
60
|
+
}
|
|
61
|
+
if (this.attach) {
|
|
62
|
+
const client = await tryConnect(pipeName);
|
|
63
|
+
if (!client) {
|
|
64
|
+
this.context.stderr.write(`No daemon running. Start one first:\n $0 serve -c ${this.config}\n`);
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
return this._attach(client, pipeName);
|
|
68
|
+
}
|
|
69
|
+
// Default: start foreground daemon
|
|
70
|
+
const existing = await tryConnect(pipeName);
|
|
71
|
+
if (existing) {
|
|
72
|
+
this.context.stderr.write(`Daemon already running (pipe: ${pipeName}).\nUse --attach to connect to it.\n`);
|
|
73
|
+
return;
|
|
74
|
+
}
|
|
75
|
+
return this._startDaemon(pipeName);
|
|
76
|
+
}
|
|
77
|
+
async _ensureBackground(pipeName) {
|
|
78
|
+
if (await tryConnect(pipeName)) {
|
|
79
|
+
this.context.stdout.write('Daemon already running.\n');
|
|
80
|
+
return;
|
|
81
|
+
}
|
|
82
|
+
const cliEntryPoint = path.resolve(path.dirname(fileURLToPath(import.meta.url)), '../index.js');
|
|
83
|
+
const child = spawn(process.execPath, [cliEntryPoint, 'serve', '-c', this.config], { detached: true, stdio: 'ignore' });
|
|
84
|
+
child.unref();
|
|
85
|
+
await waitForDaemon(pipeName, { timeoutMs: 30_000 });
|
|
86
|
+
this.context.stdout.write(`Daemon started (pipe: ${pipeName})\n`);
|
|
87
|
+
}
|
|
88
|
+
async _attach(client, pipeName) {
|
|
89
|
+
this.context.stdout.write(`Attached to daemon (pipe: ${pipeName})\n`);
|
|
90
|
+
this.context.stdout.write('Listening for events... (Ctrl+C to detach)\n\n');
|
|
91
|
+
const events = await client.methods.events();
|
|
92
|
+
for await (const event of events) {
|
|
93
|
+
this._printEvent(event);
|
|
94
|
+
}
|
|
95
|
+
this.context.stdout.write('\nEvent stream ended.\n');
|
|
96
|
+
}
|
|
97
|
+
_printEvent(event) {
|
|
98
|
+
const ts = new Date().toLocaleTimeString();
|
|
99
|
+
switch (event.type) {
|
|
100
|
+
case 'source-change':
|
|
101
|
+
this.context.stdout.write(`[${ts}] source-change ${event.sessionName} sourceTreeId=${event.sourceTreeId}\n`);
|
|
102
|
+
break;
|
|
103
|
+
case 'ref-change':
|
|
104
|
+
this.context.stdout.write(`[${ts}] ref-change ${event.sessionName} newCommit=${event.newCommit}\n`);
|
|
105
|
+
break;
|
|
106
|
+
case 'log':
|
|
107
|
+
this.context.stdout.write(`[${ts}] [${event.level}] ${event.message}\n`);
|
|
108
|
+
break;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
async _startDaemon(pipeName) {
|
|
112
|
+
const logger = new ConsoleLogger('serve', this.context.stdout, verbosityToLogLevel(this.verbose));
|
|
113
|
+
logger.log(`Reading config from ${this.config}`);
|
|
114
|
+
const resolvedConfig = await ResolvedWatchConfig.fromFile(this.config);
|
|
115
|
+
logger.log('Setting up sessions...');
|
|
116
|
+
const service = await DaemonService.create(resolvedConfig, logger, pipeName);
|
|
117
|
+
logger.log(`Starting pipe server on ${pipeName}`);
|
|
118
|
+
const server = await startPipeServer(pipeName, service);
|
|
119
|
+
this.context.stdout.write(`Daemon listening on ${pipeName}\n`);
|
|
120
|
+
this.context.stdout.write('Press Ctrl+C to stop.\n\n');
|
|
121
|
+
const sessionInfos = service.getSessionInfos();
|
|
122
|
+
for (const s of sessionInfos) {
|
|
123
|
+
this.context.stdout.write(` ${s.name}: ${s.serverUrl} (${s.sourceKind})\n`);
|
|
124
|
+
}
|
|
125
|
+
this.context.stdout.write('\n');
|
|
126
|
+
process.on('SIGINT', () => {
|
|
127
|
+
service.requestShutdown();
|
|
128
|
+
});
|
|
129
|
+
await service.runEventLoop();
|
|
130
|
+
this.context.stdout.write('\nShutting down...\n');
|
|
131
|
+
server.close();
|
|
132
|
+
await service.dispose();
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export { ServeCommand };
|
|
137
|
+
//# sourceMappingURL=serveCommand.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"serveCommand.js","sources":["../../src/commands/serveCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchCommand.d.ts","sourceRoot":"","sources":["../../src/commands/watchCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAiB5C,qBAAa,YAAa,SAAQ,OAAO;IACxC,OAAgB,KAAK,aAAe;IAEpC,OAAgB,KAAK,4BAMlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,IAAI,SAAqF;IAClG,QAAQ,CAAC,MAAM,qBAA+F;IAExG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAOhB,cAAc;YAoCd,kBAAkB;YAkHlB,aAAa;
|
|
1
|
+
{"version":3,"file":"watchCommand.d.ts","sourceRoot":"","sources":["../../src/commands/watchCommand.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAU,MAAM,WAAW,CAAC;AAiB5C,qBAAa,YAAa,SAAQ,OAAO;IACxC,OAAgB,KAAK,aAAe;IAEpC,OAAgB,KAAK,4BAMlB;IAEH,QAAQ,CAAC,OAAO,SAAsG;IACtH,QAAQ,CAAC,IAAI,SAAqF;IAClG,QAAQ,CAAC,MAAM,qBAA+F;IAExG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;YAOhB,cAAc;YAoCd,kBAAkB;YAkHlB,aAAa;CAgD3B"}
|
|
@@ -40,7 +40,7 @@ class WatchCommand extends Command {
|
|
|
40
40
|
const serverFactory = new DefaultComponentExplorerHttpServerFactory();
|
|
41
41
|
const browserFactory = new PlaywrightBrowserPageFactory();
|
|
42
42
|
logger.log('Starting Vite dev server...');
|
|
43
|
-
const server = await serverFactory.createViteServer(ViteProjectRef.fromSourceRootDir(this.root),
|
|
43
|
+
const server = await serverFactory.createViteServer(ViteProjectRef.fromSourceRootDir(this.root), { logger });
|
|
44
44
|
logger.log(`Server running at ${server.url}`);
|
|
45
45
|
const explorer = new BrowserComponentExplorer(browserFactory, server, logger);
|
|
46
46
|
logger.log('Taking initial screenshots...');
|
|
@@ -133,7 +133,7 @@ class WatchCommand extends Command {
|
|
|
133
133
|
}
|
|
134
134
|
await installDependencies(wt.worktreePath, wt.install, logger);
|
|
135
135
|
// Recreate session
|
|
136
|
-
const newSession = await ExplorerSession.create(sessionConfig.name, sessionConfig.viteProject, serverFactory, browserFactory, logger, resolveViteFrom);
|
|
136
|
+
const newSession = await ExplorerSession.create(sessionConfig.name, sessionConfig.viteProject, serverFactory, browserFactory, { logger, resolveViteFrom });
|
|
137
137
|
sessions.set(sessionConfig.name, newSession);
|
|
138
138
|
const cache = caches.get(sessionConfig.name);
|
|
139
139
|
const screenshots = await captureAll(newSession.explorer);
|
|
@@ -195,7 +195,10 @@ class WatchCommand extends Command {
|
|
|
195
195
|
}
|
|
196
196
|
}
|
|
197
197
|
logger.log(`Starting server: ${sessionConfig.name}`);
|
|
198
|
-
const session = await ExplorerSession.create(sessionConfig.name, sessionConfig.viteProject, serverFactory, browserFactory,
|
|
198
|
+
const session = await ExplorerSession.create(sessionConfig.name, sessionConfig.viteProject, serverFactory, browserFactory, {
|
|
199
|
+
logger,
|
|
200
|
+
resolveViteFrom: sessionConfig.source.kind === 'worktree' ? resolveViteFrom : undefined,
|
|
201
|
+
});
|
|
199
202
|
sessions.set(sessionConfig.name, session);
|
|
200
203
|
caches.set(sessionConfig.name, new ScreenshotCache());
|
|
201
204
|
logger.log(`Server ready: ${sessionConfig.name} (${session.serverUrl})`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchCommand.js","sources":["../../src/commands/watchCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"watchCommand.js","sources":["../../src/commands/watchCommand.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -33,6 +33,7 @@ export declare class BrowserComponentExplorer implements ComponentExplorer {
|
|
|
33
33
|
private readonly _logger;
|
|
34
34
|
private _page;
|
|
35
35
|
private _lastState;
|
|
36
|
+
private _screenshotMutex;
|
|
36
37
|
constructor(_browserPageFactory: BrowserPageFactory, _server: ComponentExplorerHttpServer, _logger?: ILogger);
|
|
37
38
|
private _ensureReady;
|
|
38
39
|
private _waitForCliApi;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentExplorer.d.ts","sourceRoot":"","sources":["../src/componentExplorer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,aAAa,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACvD,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,iBAAiB;IACjC,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACvC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,EAAE,SAAS,GAAG,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACpE,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAOD,qBAAa,wBAAyB,YAAW,iBAAiB;
|
|
1
|
+
{"version":3,"file":"componentExplorer.d.ts","sourceRoot":"","sources":["../src/componentExplorer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAe,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AACxE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,KAAK,OAAO,EAAc,MAAM,aAAa,CAAC;AAEvD,MAAM,WAAW,WAAW;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,MAAM,SAAS,GAAG;IAAE,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC;AACvD,MAAM,MAAM,cAAc,GAAG;IAAE,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC5B,QAAQ,CAAC,KAAK,EAAE,SAAS,iBAAiB,EAAE,CAAC;CAC7C;AAED,MAAM,WAAW,iBAAiB;IACjC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IACzC,QAAQ,CAAC,cAAc,EAAE,SAAS,MAAM,EAAE,CAAC;CAC3C;AAED,MAAM,WAAW,iBAAiB;IACjC,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IACvC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC1D,YAAY,CAAC,EAAE,EAAE,SAAS,GAAG,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC;IACpE,aAAa,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAOD,qBAAa,wBAAyB,YAAW,iBAAiB;IAMhE,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAPzB,OAAO,CAAC,KAAK,CAA0B;IACvC,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,gBAAgB,CAAoC;gBAG1C,mBAAmB,EAAE,kBAAkB,EACvC,OAAO,EAAE,2BAA2B,EACpC,OAAO,GAAE,OAAoB;YAGjC,YAAY;YAUZ,cAAc;YAed,SAAS;IAOjB,YAAY,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAKtC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAmBzD,YAAY,CAAC,GAAG,EAAE,SAAS,GAAG,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC;IAIpE,aAAa,CAAC,SAAS,SAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAuC3C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAI9B"}
|
|
@@ -6,6 +6,7 @@ class BrowserComponentExplorer {
|
|
|
6
6
|
_logger;
|
|
7
7
|
_page;
|
|
8
8
|
_lastState;
|
|
9
|
+
_screenshotMutex = Promise.resolve();
|
|
9
10
|
constructor(_browserPageFactory, _server, _logger = nullLogger) {
|
|
10
11
|
this._browserPageFactory = _browserPageFactory;
|
|
11
12
|
this._server = _server;
|
|
@@ -45,12 +46,22 @@ class BrowserComponentExplorer {
|
|
|
45
46
|
return page.evaluateJs('window.__componentExplorerCli__.listFixtures()');
|
|
46
47
|
}
|
|
47
48
|
async screenshotFixture(fixtureId) {
|
|
48
|
-
|
|
49
|
-
const
|
|
50
|
-
|
|
51
|
-
this.
|
|
52
|
-
await
|
|
53
|
-
|
|
49
|
+
// Serialize screenshot calls — the single browser page can only render one fixture at a time
|
|
50
|
+
const prev = this._screenshotMutex;
|
|
51
|
+
let resolve;
|
|
52
|
+
this._screenshotMutex = new Promise(r => { resolve = r; });
|
|
53
|
+
await prev;
|
|
54
|
+
try {
|
|
55
|
+
const page = await this._ensureReady();
|
|
56
|
+
const escapedId = JSON.stringify(fixtureId);
|
|
57
|
+
const debugUrl = `${this._server.url}/___explorer?mode=render&fixture=${encodeURIComponent(fixtureId)}`;
|
|
58
|
+
this._logger.log(`Rendering fixture: ${debugUrl}`);
|
|
59
|
+
await page.evaluateJs(`window.__componentExplorerCli__.renderFixture(${escapedId})`);
|
|
60
|
+
return await page.screenshot(`document.getElementById('root').lastElementChild`);
|
|
61
|
+
}
|
|
62
|
+
finally {
|
|
63
|
+
resolve();
|
|
64
|
+
}
|
|
54
65
|
}
|
|
55
66
|
async codeCoverage(_id) {
|
|
56
67
|
throw new Error('Code coverage not yet implemented');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"componentExplorer.js","sources":["../src/componentExplorer.ts"],"sourcesContent":[null],"names":[],"mappings":";;MAoCa,wBAAwB,CAAA;
|
|
1
|
+
{"version":3,"file":"componentExplorer.js","sources":["../src/componentExplorer.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
import { AsyncStream } from '@hediet/simple-api';
|
|
2
|
+
import { ExplorerSession } from '../explorerSession.js';
|
|
3
|
+
import type { ResolvedWatchConfig } from '../watchConfig.js';
|
|
4
|
+
import { type ILogger } from '../logger.js';
|
|
5
|
+
import { type ApprovalStore } from './approvalStore.js';
|
|
6
|
+
export type DaemonEvent = {
|
|
7
|
+
readonly type: 'source-change';
|
|
8
|
+
readonly sessionName: string;
|
|
9
|
+
readonly sourceTreeId: string;
|
|
10
|
+
} | {
|
|
11
|
+
readonly type: 'ref-change';
|
|
12
|
+
readonly sessionName: string;
|
|
13
|
+
readonly newCommit: string;
|
|
14
|
+
} | {
|
|
15
|
+
readonly type: 'log';
|
|
16
|
+
readonly level: 'info' | 'debug' | 'trace';
|
|
17
|
+
readonly message: string;
|
|
18
|
+
};
|
|
19
|
+
export interface SessionInfo {
|
|
20
|
+
readonly name: string;
|
|
21
|
+
readonly sourceKind: 'current' | 'worktree';
|
|
22
|
+
readonly serverUrl: string;
|
|
23
|
+
readonly sourceTreeId: string;
|
|
24
|
+
}
|
|
25
|
+
export declare class SourceTreeChangedError extends Error {
|
|
26
|
+
constructor(sessionName: string);
|
|
27
|
+
}
|
|
28
|
+
export type DaemonApiType = DaemonService['api']['TMethods'];
|
|
29
|
+
export declare class DaemonService {
|
|
30
|
+
private readonly _config;
|
|
31
|
+
private readonly _pipeName;
|
|
32
|
+
private readonly _logger;
|
|
33
|
+
private readonly _browserFactory;
|
|
34
|
+
private readonly _serverFactory;
|
|
35
|
+
private readonly _sessions;
|
|
36
|
+
private readonly _sessionConfigs;
|
|
37
|
+
private readonly _resolvers;
|
|
38
|
+
private readonly _eventListeners;
|
|
39
|
+
private _shutdownRequested;
|
|
40
|
+
private _shutdownResolvers;
|
|
41
|
+
readonly approvals: ApprovalStore;
|
|
42
|
+
readonly api: import("@hediet/simple-api").ApiImplementation<import("@hediet/simple-api").MapMethods<{
|
|
43
|
+
fixtures: import("@hediet/simple-api").ApiImplementation<import("@hediet/simple-api").MapMethods<{
|
|
44
|
+
list: import("@hediet/simple-api").IMethod<{
|
|
45
|
+
sessionName: string;
|
|
46
|
+
sourceTreeId: string;
|
|
47
|
+
}, import("../componentExplorer.js").FixtureInfo[], undefined>;
|
|
48
|
+
}>, undefined>;
|
|
49
|
+
screenshots: import("@hediet/simple-api").ApiImplementation<import("@hediet/simple-api").MapMethods<{
|
|
50
|
+
take: import("@hediet/simple-api").IMethod<{
|
|
51
|
+
fixtureId: string;
|
|
52
|
+
sourceTreeId: string;
|
|
53
|
+
sessionName: string;
|
|
54
|
+
includeImage?: boolean | undefined;
|
|
55
|
+
}, {
|
|
56
|
+
hash: string;
|
|
57
|
+
sourceTreeId: string;
|
|
58
|
+
image: string | undefined;
|
|
59
|
+
}, undefined>;
|
|
60
|
+
takeBatch: import("@hediet/simple-api").IMethod<{
|
|
61
|
+
fixtureIds: string[];
|
|
62
|
+
sourceTreeId: string;
|
|
63
|
+
sessionName: string;
|
|
64
|
+
includeImages?: boolean | undefined;
|
|
65
|
+
}, {
|
|
66
|
+
sourceTreeId: string;
|
|
67
|
+
screenshots: {
|
|
68
|
+
fixtureId: string;
|
|
69
|
+
hash: string;
|
|
70
|
+
image: string | undefined;
|
|
71
|
+
}[];
|
|
72
|
+
}, undefined>;
|
|
73
|
+
compare: import("@hediet/simple-api").IMethod<{
|
|
74
|
+
fixtureId: string;
|
|
75
|
+
baselineSessionName: string;
|
|
76
|
+
baselineSourceTreeId: string;
|
|
77
|
+
currentSessionName: string;
|
|
78
|
+
currentSourceTreeId: string;
|
|
79
|
+
includeImages?: boolean | undefined;
|
|
80
|
+
}, {
|
|
81
|
+
match: boolean;
|
|
82
|
+
baselineHash: string;
|
|
83
|
+
currentHash: string;
|
|
84
|
+
baselineImage: string | undefined;
|
|
85
|
+
currentImage: string | undefined;
|
|
86
|
+
approval: import("./approvalStore.js").ApprovalInfo | undefined;
|
|
87
|
+
}, undefined>;
|
|
88
|
+
}>, undefined>;
|
|
89
|
+
approvals: import("@hediet/simple-api").ApiImplementation<import("@hediet/simple-api").MapMethods<{
|
|
90
|
+
approve: import("@hediet/simple-api").IMethod<{
|
|
91
|
+
fixtureId: string;
|
|
92
|
+
originalHash: string;
|
|
93
|
+
modifiedHash: string;
|
|
94
|
+
comment: string;
|
|
95
|
+
}, void, undefined>;
|
|
96
|
+
revoke: import("@hediet/simple-api").IMethod<{
|
|
97
|
+
fixtureId: string;
|
|
98
|
+
originalHash: string;
|
|
99
|
+
modifiedHash: string;
|
|
100
|
+
}, void, undefined>;
|
|
101
|
+
list: import("@hediet/simple-api").IMethod<{
|
|
102
|
+
fixtureId?: string | undefined;
|
|
103
|
+
}, import("./approvalStore.js").ApprovalInfo[], undefined>;
|
|
104
|
+
lookup: import("@hediet/simple-api").IMethod<{
|
|
105
|
+
fixtureId: string;
|
|
106
|
+
originalHash: string;
|
|
107
|
+
modifiedHash: string;
|
|
108
|
+
}, import("./approvalStore.js").ApprovalInfo | null, undefined>;
|
|
109
|
+
}>, undefined>;
|
|
110
|
+
events: import("@hediet/simple-api").IMethod<Record<string, never>, AsyncStream<DaemonEvent>, undefined>;
|
|
111
|
+
sessions: import("@hediet/simple-api").IMethod<Record<string, never>, SessionInfo[], undefined>;
|
|
112
|
+
shutdown: import("@hediet/simple-api").IMethod<Record<string, never>, void, undefined>;
|
|
113
|
+
}>, undefined>;
|
|
114
|
+
private constructor();
|
|
115
|
+
static create(config: ResolvedWatchConfig, logger: ILogger, pipeName?: string): Promise<DaemonService>;
|
|
116
|
+
private _buildApi;
|
|
117
|
+
getSession(name: string): ExplorerSession;
|
|
118
|
+
getSessionInfos(): SessionInfo[];
|
|
119
|
+
getSourceTreeId(sessionName: string): string;
|
|
120
|
+
assertSourceTreeId(sessionName: string, expected: string): void;
|
|
121
|
+
eventStream(): AsyncIterable<DaemonEvent>;
|
|
122
|
+
runEventLoop(): Promise<void>;
|
|
123
|
+
private _sourceChangeDisposables;
|
|
124
|
+
private _startSourceChangeWatchers;
|
|
125
|
+
private _handleRefChange;
|
|
126
|
+
requestShutdown(): void;
|
|
127
|
+
dispose(): Promise<void>;
|
|
128
|
+
/** @internal — also called by EventStreamLogger */
|
|
129
|
+
_emit(event: DaemonEvent): void;
|
|
130
|
+
private _setupSession;
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=DaemonService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DaemonService.d.ts","sourceRoot":"","sources":["../../src/daemon/DaemonService.ts"],"names":[],"mappings":"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"}
|