@vscode/component-explorer-cli 0.1.1-1 → 0.1.1-2
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/daemon/DaemonService.d.ts +131 -0
- package/dist/daemon/DaemonService.d.ts.map +1 -0
- package/dist/daemon/DaemonService.js +450 -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 +97 -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/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/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 +7 -3
|
@@ -0,0 +1,386 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
|
|
3
|
+
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
4
|
+
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
// Client-local state
|
|
7
|
+
// ---------------------------------------------------------------------------
|
|
8
|
+
class WatchList {
|
|
9
|
+
_fixtureIds = new Set();
|
|
10
|
+
_hashes = new Map();
|
|
11
|
+
get fixtureIds() { return this._fixtureIds; }
|
|
12
|
+
add(ids) {
|
|
13
|
+
for (const id of ids) {
|
|
14
|
+
this._fixtureIds.add(id);
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
remove(ids) {
|
|
18
|
+
for (const id of ids) {
|
|
19
|
+
this._fixtureIds.delete(id);
|
|
20
|
+
this._hashes.delete(id);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
set(ids) {
|
|
24
|
+
this._fixtureIds.clear();
|
|
25
|
+
this._hashes.clear();
|
|
26
|
+
for (const id of ids) {
|
|
27
|
+
this._fixtureIds.add(id);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
getHash(fixtureId) {
|
|
31
|
+
return this._hashes.get(fixtureId);
|
|
32
|
+
}
|
|
33
|
+
setHash(fixtureId, hash) {
|
|
34
|
+
this._hashes.set(fixtureId, hash);
|
|
35
|
+
}
|
|
36
|
+
toJSON() {
|
|
37
|
+
return {
|
|
38
|
+
fixtureIds: [...this._fixtureIds],
|
|
39
|
+
hashes: Object.fromEntries(this._hashes),
|
|
40
|
+
};
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
// ---------------------------------------------------------------------------
|
|
44
|
+
// ComponentExplorerMcpServer
|
|
45
|
+
// ---------------------------------------------------------------------------
|
|
46
|
+
class ComponentExplorerMcpServer {
|
|
47
|
+
_daemon;
|
|
48
|
+
_mcp;
|
|
49
|
+
_watchList = new WatchList();
|
|
50
|
+
_sessions = [];
|
|
51
|
+
constructor(_daemon) {
|
|
52
|
+
this._daemon = _daemon;
|
|
53
|
+
this._mcp = new McpServer({
|
|
54
|
+
name: 'component-explorer',
|
|
55
|
+
version: '0.1.0',
|
|
56
|
+
});
|
|
57
|
+
this._registerTools();
|
|
58
|
+
}
|
|
59
|
+
async connect() {
|
|
60
|
+
this._sessions = await this._daemon.methods.sessions();
|
|
61
|
+
const transport = new StdioServerTransport();
|
|
62
|
+
await this._mcp.connect(transport);
|
|
63
|
+
}
|
|
64
|
+
// -- Helpers --------------------------------------------------------------
|
|
65
|
+
_defaultSessionName() {
|
|
66
|
+
return this._sessions[0]?.name ?? 'current';
|
|
67
|
+
}
|
|
68
|
+
_defaultBaselineSessionName() {
|
|
69
|
+
const worktree = this._sessions.find(s => s.sourceKind === 'worktree');
|
|
70
|
+
return worktree?.name ?? this._sessions[1]?.name ?? this._defaultSessionName();
|
|
71
|
+
}
|
|
72
|
+
_defaultCurrentSessionName() {
|
|
73
|
+
const current = this._sessions.find(s => s.sourceKind === 'current');
|
|
74
|
+
return current?.name ?? this._defaultSessionName();
|
|
75
|
+
}
|
|
76
|
+
_sourceTreeId(sessionName) {
|
|
77
|
+
const s = this._sessions.find(s => s.name === sessionName);
|
|
78
|
+
return s?.sourceTreeId ?? '';
|
|
79
|
+
}
|
|
80
|
+
_updateSessionSourceTreeId(sessionName, sourceTreeId) {
|
|
81
|
+
const s = this._sessions.find(s => s.name === sessionName);
|
|
82
|
+
if (s) {
|
|
83
|
+
s.sourceTreeId = sourceTreeId;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async _refreshSessions() {
|
|
87
|
+
this._sessions = await this._daemon.methods.sessions();
|
|
88
|
+
}
|
|
89
|
+
// -- Tool registration ---------------------------------------------------
|
|
90
|
+
_registerTools() {
|
|
91
|
+
this._registerListFixtures();
|
|
92
|
+
this._registerScreenshot();
|
|
93
|
+
this._registerCompareScreenshot();
|
|
94
|
+
this._registerApproveDiff();
|
|
95
|
+
this._registerWatchAdd();
|
|
96
|
+
this._registerWatchRemove();
|
|
97
|
+
this._registerWatchSet();
|
|
98
|
+
this._registerWatchCompare();
|
|
99
|
+
this._registerWaitForUpdate();
|
|
100
|
+
this._registerSessions();
|
|
101
|
+
}
|
|
102
|
+
_registerListFixtures() {
|
|
103
|
+
this._mcp.registerTool('list_fixtures', {
|
|
104
|
+
description: 'List all fixtures from a session',
|
|
105
|
+
inputSchema: {
|
|
106
|
+
sessionName: z.string().optional().describe('Session name (defaults to first session)'),
|
|
107
|
+
sourceTreeId: z.string().optional().describe('Source tree ID (defaults to latest known)'),
|
|
108
|
+
},
|
|
109
|
+
}, async (args) => {
|
|
110
|
+
const sessionName = args.sessionName ?? this._defaultSessionName();
|
|
111
|
+
const sourceTreeId = args.sourceTreeId ?? this._sourceTreeId(sessionName);
|
|
112
|
+
const fixtures = await this._daemon.methods.fixtures.list({ sessionName, sourceTreeId });
|
|
113
|
+
return {
|
|
114
|
+
content: [{ type: 'text', text: JSON.stringify(fixtures, null, 2) }],
|
|
115
|
+
};
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
_registerScreenshot() {
|
|
119
|
+
this._mcp.registerTool('screenshot', {
|
|
120
|
+
description: 'Take a screenshot of a single fixture',
|
|
121
|
+
inputSchema: {
|
|
122
|
+
fixtureId: z.string().describe('The fixture ID'),
|
|
123
|
+
sessionName: z.string().optional().describe('Session name (defaults to first session)'),
|
|
124
|
+
sourceTreeId: z.string().optional().describe('Source tree ID (defaults to latest known)'),
|
|
125
|
+
},
|
|
126
|
+
}, async (args) => {
|
|
127
|
+
const sessionName = args.sessionName ?? this._defaultSessionName();
|
|
128
|
+
const sourceTreeId = args.sourceTreeId ?? this._sourceTreeId(sessionName);
|
|
129
|
+
const result = await this._daemon.methods.screenshots.take({
|
|
130
|
+
fixtureId: args.fixtureId,
|
|
131
|
+
sessionName,
|
|
132
|
+
sourceTreeId,
|
|
133
|
+
includeImage: true,
|
|
134
|
+
});
|
|
135
|
+
const r = result;
|
|
136
|
+
this._updateSessionSourceTreeId(sessionName, r.sourceTreeId);
|
|
137
|
+
const content = [
|
|
138
|
+
{ type: 'text', text: `hash: ${r.hash}\nsourceTreeId: ${r.sourceTreeId}` },
|
|
139
|
+
];
|
|
140
|
+
if (r.image) {
|
|
141
|
+
content.push({ type: 'image', data: r.image, mimeType: 'image/png' });
|
|
142
|
+
}
|
|
143
|
+
return { content };
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
_registerCompareScreenshot() {
|
|
147
|
+
this._mcp.registerTool('compare_screenshot', {
|
|
148
|
+
description: 'Compare a fixture\'s screenshot across two sessions (e.g. baseline vs current)',
|
|
149
|
+
inputSchema: {
|
|
150
|
+
fixtureId: z.string().describe('The fixture ID'),
|
|
151
|
+
baselineSessionName: z.string().optional().describe('Baseline session name (defaults to worktree session)'),
|
|
152
|
+
currentSessionName: z.string().optional().describe('Current session name (defaults to current session)'),
|
|
153
|
+
baselineSourceTreeId: z.string().optional().describe('Baseline source tree ID (defaults to latest known)'),
|
|
154
|
+
currentSourceTreeId: z.string().optional().describe('Current source tree ID (defaults to latest known)'),
|
|
155
|
+
},
|
|
156
|
+
}, async (args) => {
|
|
157
|
+
const baselineSessionName = args.baselineSessionName ?? this._defaultBaselineSessionName();
|
|
158
|
+
const currentSessionName = args.currentSessionName ?? this._defaultCurrentSessionName();
|
|
159
|
+
const baselineSourceTreeId = args.baselineSourceTreeId ?? this._sourceTreeId(baselineSessionName);
|
|
160
|
+
const currentSourceTreeId = args.currentSourceTreeId ?? this._sourceTreeId(currentSessionName);
|
|
161
|
+
const result = await this._daemon.methods.screenshots.compare({
|
|
162
|
+
fixtureId: args.fixtureId,
|
|
163
|
+
baselineSessionName,
|
|
164
|
+
baselineSourceTreeId,
|
|
165
|
+
currentSessionName,
|
|
166
|
+
currentSourceTreeId,
|
|
167
|
+
includeImages: true,
|
|
168
|
+
});
|
|
169
|
+
const r = result;
|
|
170
|
+
const info = {
|
|
171
|
+
match: r.match,
|
|
172
|
+
baselineHash: r.baselineHash,
|
|
173
|
+
currentHash: r.currentHash,
|
|
174
|
+
};
|
|
175
|
+
if (r.approval) {
|
|
176
|
+
info.approval = r.approval;
|
|
177
|
+
}
|
|
178
|
+
const content = [
|
|
179
|
+
{ type: 'text', text: JSON.stringify(info, null, 2) },
|
|
180
|
+
];
|
|
181
|
+
if (r.baselineImage) {
|
|
182
|
+
content.push({ type: 'image', data: r.baselineImage, mimeType: 'image/png' });
|
|
183
|
+
}
|
|
184
|
+
if (r.currentImage) {
|
|
185
|
+
content.push({ type: 'image', data: r.currentImage, mimeType: 'image/png' });
|
|
186
|
+
}
|
|
187
|
+
return { content };
|
|
188
|
+
});
|
|
189
|
+
}
|
|
190
|
+
_registerApproveDiff() {
|
|
191
|
+
this._mcp.registerTool('approve_diff', {
|
|
192
|
+
description: 'Approve a visual diff so it won\'t require re-inspection next time',
|
|
193
|
+
inputSchema: {
|
|
194
|
+
fixtureId: z.string(),
|
|
195
|
+
originalHash: z.string(),
|
|
196
|
+
modifiedHash: z.string(),
|
|
197
|
+
comment: z.string().describe('Reason for approving this diff'),
|
|
198
|
+
},
|
|
199
|
+
}, async (args) => {
|
|
200
|
+
await this._daemon.methods.approvals.approve(args);
|
|
201
|
+
return {
|
|
202
|
+
content: [{
|
|
203
|
+
type: 'text',
|
|
204
|
+
text: `Approved diff for ${args.fixtureId}: ${args.originalHash} → ${args.modifiedHash}`,
|
|
205
|
+
}],
|
|
206
|
+
};
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
_registerWatchAdd() {
|
|
210
|
+
this._mcp.registerTool('watch_add', {
|
|
211
|
+
description: 'Add fixtures to the watch list. Watched fixtures are automatically re-screenshotted when source changes.',
|
|
212
|
+
inputSchema: {
|
|
213
|
+
fixtureIds: z.array(z.string()).describe('Fixture IDs to add'),
|
|
214
|
+
},
|
|
215
|
+
}, async (args) => {
|
|
216
|
+
this._watchList.add(args.fixtureIds);
|
|
217
|
+
return {
|
|
218
|
+
content: [{
|
|
219
|
+
type: 'text',
|
|
220
|
+
text: `Watch list: ${[...this._watchList.fixtureIds].join(', ') || '(empty)'}`,
|
|
221
|
+
}],
|
|
222
|
+
};
|
|
223
|
+
});
|
|
224
|
+
}
|
|
225
|
+
_registerWatchRemove() {
|
|
226
|
+
this._mcp.registerTool('watch_remove', {
|
|
227
|
+
description: 'Remove fixtures from the watch list',
|
|
228
|
+
inputSchema: {
|
|
229
|
+
fixtureIds: z.array(z.string()).describe('Fixture IDs to remove'),
|
|
230
|
+
},
|
|
231
|
+
}, async (args) => {
|
|
232
|
+
this._watchList.remove(args.fixtureIds);
|
|
233
|
+
return {
|
|
234
|
+
content: [{
|
|
235
|
+
type: 'text',
|
|
236
|
+
text: `Watch list: ${[...this._watchList.fixtureIds].join(', ') || '(empty)'}`,
|
|
237
|
+
}],
|
|
238
|
+
};
|
|
239
|
+
});
|
|
240
|
+
}
|
|
241
|
+
_registerWatchSet() {
|
|
242
|
+
this._mcp.registerTool('watch_set', {
|
|
243
|
+
description: 'Replace the watch list entirely',
|
|
244
|
+
inputSchema: {
|
|
245
|
+
fixtureIds: z.array(z.string()).describe('Fixture IDs to watch'),
|
|
246
|
+
},
|
|
247
|
+
}, async (args) => {
|
|
248
|
+
this._watchList.set(args.fixtureIds);
|
|
249
|
+
return {
|
|
250
|
+
content: [{
|
|
251
|
+
type: 'text',
|
|
252
|
+
text: `Watch list: ${[...this._watchList.fixtureIds].join(', ') || '(empty)'}`,
|
|
253
|
+
}],
|
|
254
|
+
};
|
|
255
|
+
});
|
|
256
|
+
}
|
|
257
|
+
_registerWatchCompare() {
|
|
258
|
+
this._mcp.registerTool('watch_compare', {
|
|
259
|
+
description: 'Compare all watched fixtures across two sessions. Takes fresh screenshots from both sessions and reports which fixtures differ.',
|
|
260
|
+
inputSchema: {
|
|
261
|
+
baselineSessionName: z.string().optional().describe('Baseline session name (defaults to worktree session)'),
|
|
262
|
+
currentSessionName: z.string().optional().describe('Current session name (defaults to current session)'),
|
|
263
|
+
baselineSourceTreeId: z.string().optional().describe('Baseline source tree ID (defaults to latest known)'),
|
|
264
|
+
currentSourceTreeId: z.string().optional().describe('Current source tree ID (defaults to latest known)'),
|
|
265
|
+
},
|
|
266
|
+
}, async (args) => {
|
|
267
|
+
const ids = [...this._watchList.fixtureIds];
|
|
268
|
+
if (ids.length === 0) {
|
|
269
|
+
return { content: [{ type: 'text', text: 'Watch list is empty. Use watch_add or watch_set first.' }] };
|
|
270
|
+
}
|
|
271
|
+
const baselineSessionName = args.baselineSessionName ?? this._defaultBaselineSessionName();
|
|
272
|
+
const currentSessionName = args.currentSessionName ?? this._defaultCurrentSessionName();
|
|
273
|
+
const baselineSourceTreeId = args.baselineSourceTreeId ?? this._sourceTreeId(baselineSessionName);
|
|
274
|
+
const currentSourceTreeId = args.currentSourceTreeId ?? this._sourceTreeId(currentSessionName);
|
|
275
|
+
const [baselineResult, currentResult] = await Promise.all([
|
|
276
|
+
this._daemon.methods.screenshots.takeBatch({
|
|
277
|
+
fixtureIds: ids,
|
|
278
|
+
sessionName: baselineSessionName,
|
|
279
|
+
sourceTreeId: baselineSourceTreeId,
|
|
280
|
+
}),
|
|
281
|
+
this._daemon.methods.screenshots.takeBatch({
|
|
282
|
+
fixtureIds: ids,
|
|
283
|
+
sessionName: currentSessionName,
|
|
284
|
+
sourceTreeId: currentSourceTreeId,
|
|
285
|
+
}),
|
|
286
|
+
]);
|
|
287
|
+
const br = baselineResult;
|
|
288
|
+
const cr = currentResult;
|
|
289
|
+
const baselineMap = new Map(br.screenshots.map(s => [s.fixtureId, s.hash]));
|
|
290
|
+
const currentMap = new Map(cr.screenshots.map(s => [s.fixtureId, s.hash]));
|
|
291
|
+
const entries = ids.map(id => {
|
|
292
|
+
const bHash = baselineMap.get(id) ?? '';
|
|
293
|
+
const cHash = currentMap.get(id) ?? '';
|
|
294
|
+
return {
|
|
295
|
+
fixtureId: id,
|
|
296
|
+
match: bHash === cHash,
|
|
297
|
+
baselineHash: bHash,
|
|
298
|
+
currentHash: cHash,
|
|
299
|
+
};
|
|
300
|
+
});
|
|
301
|
+
// Look up approvals for changed fixtures
|
|
302
|
+
const results = [];
|
|
303
|
+
for (const entry of entries) {
|
|
304
|
+
let approval = undefined;
|
|
305
|
+
if (!entry.match && entry.baselineHash && entry.currentHash) {
|
|
306
|
+
approval = await this._daemon.methods.approvals.lookup({
|
|
307
|
+
fixtureId: entry.fixtureId,
|
|
308
|
+
originalHash: entry.baselineHash,
|
|
309
|
+
modifiedHash: entry.currentHash,
|
|
310
|
+
}) ?? undefined;
|
|
311
|
+
}
|
|
312
|
+
results.push({ ...entry, approval });
|
|
313
|
+
}
|
|
314
|
+
return {
|
|
315
|
+
content: [{ type: 'text', text: JSON.stringify(results, null, 2) }],
|
|
316
|
+
};
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
_registerWaitForUpdate() {
|
|
320
|
+
this._mcp.registerTool('wait_for_update', {
|
|
321
|
+
description: 'Block until the next source change or ref change event. If fixtures are on the watch list, automatically re-screenshots them and reports which changed.',
|
|
322
|
+
}, async () => {
|
|
323
|
+
const events = await this._daemon.methods.events();
|
|
324
|
+
const iterator = events[Symbol.asyncIterator]();
|
|
325
|
+
const { value: event, done } = await iterator.next();
|
|
326
|
+
// Close the stream after consuming one event
|
|
327
|
+
await iterator.return?.();
|
|
328
|
+
if (done || !event) {
|
|
329
|
+
return { content: [{ type: 'text', text: 'Event stream ended.' }] };
|
|
330
|
+
}
|
|
331
|
+
const ev = event;
|
|
332
|
+
// Update cached session info
|
|
333
|
+
if (ev.type === 'source-change' && ev.sourceTreeId) {
|
|
334
|
+
this._updateSessionSourceTreeId(ev.sessionName, ev.sourceTreeId);
|
|
335
|
+
}
|
|
336
|
+
if (ev.type === 'ref-change') {
|
|
337
|
+
await this._refreshSessions();
|
|
338
|
+
}
|
|
339
|
+
// If there are watched fixtures and this is a source-change, re-screenshot them
|
|
340
|
+
const watchedIds = [...this._watchList.fixtureIds];
|
|
341
|
+
if (ev.type === 'source-change' && watchedIds.length > 0 && ev.sourceTreeId) {
|
|
342
|
+
const batchResult = await this._daemon.methods.screenshots.takeBatch({
|
|
343
|
+
fixtureIds: watchedIds,
|
|
344
|
+
sessionName: ev.sessionName,
|
|
345
|
+
sourceTreeId: ev.sourceTreeId,
|
|
346
|
+
});
|
|
347
|
+
const br = batchResult;
|
|
348
|
+
const changes = [];
|
|
349
|
+
for (const s of br.screenshots) {
|
|
350
|
+
const prevHash = this._watchList.getHash(s.fixtureId);
|
|
351
|
+
const changed = prevHash !== undefined && prevHash !== s.hash;
|
|
352
|
+
this._watchList.setHash(s.fixtureId, s.hash);
|
|
353
|
+
if (changed) {
|
|
354
|
+
changes.push({ fixtureId: s.fixtureId, previousHash: prevHash, hash: s.hash });
|
|
355
|
+
}
|
|
356
|
+
}
|
|
357
|
+
return {
|
|
358
|
+
content: [{
|
|
359
|
+
type: 'text',
|
|
360
|
+
text: JSON.stringify({
|
|
361
|
+
event: ev,
|
|
362
|
+
watchedFixtures: br.screenshots.length,
|
|
363
|
+
changed: changes,
|
|
364
|
+
}, null, 2),
|
|
365
|
+
}],
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
return {
|
|
369
|
+
content: [{ type: 'text', text: JSON.stringify(ev, null, 2) }],
|
|
370
|
+
};
|
|
371
|
+
});
|
|
372
|
+
}
|
|
373
|
+
_registerSessions() {
|
|
374
|
+
this._mcp.registerTool('sessions', {
|
|
375
|
+
description: 'List active sessions with their names, URLs, and current sourceTreeIds',
|
|
376
|
+
}, async () => {
|
|
377
|
+
await this._refreshSessions();
|
|
378
|
+
return {
|
|
379
|
+
content: [{ type: 'text', text: JSON.stringify(this._sessions, null, 2) }],
|
|
380
|
+
};
|
|
381
|
+
});
|
|
382
|
+
}
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
export { ComponentExplorerMcpServer };
|
|
386
|
+
//# sourceMappingURL=McpServer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"McpServer.js","sources":["../../src/mcp/McpServer.ts"],"sourcesContent":[null],"names":["SdkMcpServer"],"mappings":"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"}
|
package/dist/watchConfig.d.ts
CHANGED
|
@@ -37,11 +37,16 @@ export declare class ResolvedCompareConfig {
|
|
|
37
37
|
readonly current: string;
|
|
38
38
|
constructor(baseline: string, current: string);
|
|
39
39
|
}
|
|
40
|
+
export interface ResolvedViteHmrConfig {
|
|
41
|
+
/** Glob patterns for files that keep HMR. Everything else triggers a full reload. */
|
|
42
|
+
readonly allowedPaths: readonly string[];
|
|
43
|
+
}
|
|
40
44
|
export declare class ResolvedWatchConfig {
|
|
41
45
|
readonly screenshotDir: string;
|
|
42
46
|
readonly sessions: readonly ResolvedSessionConfig[];
|
|
43
47
|
readonly compare: ResolvedCompareConfig | undefined;
|
|
44
48
|
readonly repo: IGitRepo;
|
|
49
|
+
readonly viteHmr: ResolvedViteHmrConfig | undefined;
|
|
45
50
|
private constructor();
|
|
46
51
|
static fromFile(configPath: string): Promise<ResolvedWatchConfig>;
|
|
47
52
|
static fromData(data: unknown, configDir: string, repo: IGitRepo): ResolvedWatchConfig;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchConfig.d.ts","sourceRoot":"","sources":["../src/watchConfig.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"watchConfig.d.ts","sourceRoot":"","sources":["../src/watchConfig.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAqDrD,MAAM,MAAM,qBAAqB,GAC9B;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAA;CAAE,GACxB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACzB;IAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACrD;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7B,qBAAa,sBAAsB;IAEjC,QAAQ,CAAC,GAAG,EAAE,MAAM;IACpB,QAAQ,CAAC,YAAY,EAAE,MAAM;IAC7B,QAAQ,CAAC,OAAO,EAAE,qBAAqB;gBAF9B,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,qBAAqB;CAExC;AAED,MAAM,MAAM,oBAAoB,GAC7B;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAA;CAAE,GAC5B;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,QAAQ,EAAE,sBAAsB,CAAA;CAAE,CAAC;AAE5E,qBAAa,qBAAqB;IAEhC,QAAQ,CAAC,IAAI,EAAE,MAAM;IACrB,QAAQ,CAAC,MAAM,EAAE,oBAAoB;IACrC,QAAQ,CAAC,WAAW,EAAE,cAAc;gBAF3B,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,oBAAoB,EAC5B,WAAW,EAAE,cAAc;CAErC;AAED,qBAAa,qBAAqB;IAEhC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM;gBADf,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM;CAEzB;AAED,MAAM,WAAW,qBAAqB;IACrC,qFAAqF;IACrF,QAAQ,CAAC,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CACzC;AAED,qBAAa,mBAAmB;IAE9B,QAAQ,CAAC,aAAa,EAAE,MAAM;IAC9B,QAAQ,CAAC,QAAQ,EAAE,SAAS,qBAAqB,EAAE;IACnD,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS;IACnD,QAAQ,CAAC,IAAI,EAAE,QAAQ;IACvB,QAAQ,CAAC,OAAO,EAAE,qBAAqB,GAAG,SAAS;IALpD,OAAO;WAQM,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;IASvE,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,mBAAmB;CAsDtF"}
|
package/dist/watchConfig.js
CHANGED
|
@@ -31,11 +31,18 @@ const compareConfigSchema = z.object({
|
|
|
31
31
|
baseline: z.string(),
|
|
32
32
|
current: z.string(),
|
|
33
33
|
});
|
|
34
|
+
const viteHmrConfigSchema = z.object({
|
|
35
|
+
allowedPaths: z.array(z.string()),
|
|
36
|
+
});
|
|
37
|
+
const viteConfigOverridesSchema = z.object({
|
|
38
|
+
hmr: viteHmrConfigSchema.optional(),
|
|
39
|
+
});
|
|
34
40
|
const watchConfigSchema = z.object({
|
|
35
41
|
screenshotDir: z.string().optional(),
|
|
36
42
|
sessions: z.array(sessionConfigSchema).min(1),
|
|
37
43
|
compare: compareConfigSchema.optional(),
|
|
38
44
|
viteConfig: z.string().optional(),
|
|
45
|
+
vite: viteConfigOverridesSchema.optional(),
|
|
39
46
|
});
|
|
40
47
|
class ResolvedWorktreeConfig {
|
|
41
48
|
ref;
|
|
@@ -70,11 +77,13 @@ class ResolvedWatchConfig {
|
|
|
70
77
|
sessions;
|
|
71
78
|
compare;
|
|
72
79
|
repo;
|
|
73
|
-
|
|
80
|
+
viteHmr;
|
|
81
|
+
constructor(screenshotDir, sessions, compare, repo, viteHmr) {
|
|
74
82
|
this.screenshotDir = screenshotDir;
|
|
75
83
|
this.sessions = sessions;
|
|
76
84
|
this.compare = compare;
|
|
77
85
|
this.repo = repo;
|
|
86
|
+
this.viteHmr = viteHmr;
|
|
78
87
|
}
|
|
79
88
|
static async fromFile(configPath) {
|
|
80
89
|
const absConfigPath = path.resolve(configPath);
|
|
@@ -125,7 +134,10 @@ class ResolvedWatchConfig {
|
|
|
125
134
|
}
|
|
126
135
|
compare = new ResolvedCompareConfig(parsed.compare.baseline, parsed.compare.current);
|
|
127
136
|
}
|
|
128
|
-
|
|
137
|
+
const viteHmr = parsed.vite?.hmr
|
|
138
|
+
? { allowedPaths: parsed.vite.hmr.allowedPaths }
|
|
139
|
+
: undefined;
|
|
140
|
+
return new ResolvedWatchConfig(screenshotDir, sessions, compare, repo, viteHmr);
|
|
129
141
|
}
|
|
130
142
|
}
|
|
131
143
|
function resolveInstallConfig(raw) {
|
package/dist/watchConfig.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"watchConfig.js","sources":["../src/watchConfig.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAOA;AAEA,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC;AACrC,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACjB,IAAA,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAChB,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACjB,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;AACjC,IAAA,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAChB,CAAA,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;AACrC,IAAA,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;AACf,IAAA,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC3B,IAAA,OAAO,EAAE,qBAAqB,CAAC,QAAQ,EAAE;AACzC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;AACnC,IAAA,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;AAC5C,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;AACpC,IAAA,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AAChB,IAAA,MAAM,EAAE,mBAAmB,CAAC,QAAQ,EAAE;AACtC,IAAA,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;AACpC,IAAA,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;AACpB,IAAA,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;AACnB,CAAA,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;AAClC,IAAA,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7C,IAAA,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;AACvC,IAAA,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,CAAA,CAAC;MAYW,sBAAsB,CAAA;AAExB,IAAA,GAAA;AACA,IAAA,YAAA;AACA,IAAA,OAAA;AAHV,IAAA,WAAA,CACU,GAAW,EACX,YAAoB,EACpB,OAA8B,EAAA;QAF9B,IAAA,CAAA,GAAG,GAAH,GAAG;QACH,IAAA,CAAA,YAAY,GAAZ,YAAY;QACZ,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AACH;MAMY,qBAAqB,CAAA;AAEvB,IAAA,IAAA;AACA,IAAA,MAAA;AACA,IAAA,WAAA;AAHV,IAAA,WAAA,CACU,IAAY,EACZ,MAA4B,EAC5B,WAA2B,EAAA;QAF3B,IAAA,CAAA,IAAI,GAAJ,IAAI;QACJ,IAAA,CAAA,MAAM,GAAN,MAAM;QACN,IAAA,CAAA,WAAW,GAAX,WAAW;IAClB;AACH;MAEY,qBAAqB,CAAA;AAEvB,IAAA,QAAA;AACA,IAAA,OAAA;IAFV,WAAA,CACU,QAAgB,EAChB,OAAe,EAAA;QADf,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AACH;
|
|
1
|
+
{"version":3,"file":"watchConfig.js","sources":["../src/watchConfig.ts"],"sourcesContent":[null],"names":[],"mappings":";;;;;;AAOA;AAEA,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC;AACrC,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACjB,IAAA,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAChB,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;AACjB,IAAA,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACjB,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC;AACjC,IAAA,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAChB,CAAA,CAAC;AAEF,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;AACrC,IAAA,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;AACf,IAAA,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AAC3B,IAAA,OAAO,EAAE,qBAAqB,CAAC,QAAQ,EAAE;AACzC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC;AACnC,IAAA,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IACpB,CAAC,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,oBAAoB,EAAE,CAAC;AAC5C,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;AACpC,IAAA,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;AAChB,IAAA,MAAM,EAAE,mBAAmB,CAAC,QAAQ,EAAE;AACtC,IAAA,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;AACpC,IAAA,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;AACpB,IAAA,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;AACnB,CAAA,CAAC;AAEF,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;AACjC,CAAA,CAAC;AAEF,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;AAC1C,IAAA,GAAG,EAAE,mBAAmB,CAAC,QAAQ,EAAE;AACnC,CAAA,CAAC;AAEF,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;AAClC,IAAA,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACpC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAC7C,IAAA,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE;AACvC,IAAA,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;AACjC,IAAA,IAAI,EAAE,yBAAyB,CAAC,QAAQ,EAAE;AAC1C,CAAA,CAAC;MAYW,sBAAsB,CAAA;AAExB,IAAA,GAAA;AACA,IAAA,YAAA;AACA,IAAA,OAAA;AAHV,IAAA,WAAA,CACU,GAAW,EACX,YAAoB,EACpB,OAA8B,EAAA;QAF9B,IAAA,CAAA,GAAG,GAAH,GAAG;QACH,IAAA,CAAA,YAAY,GAAZ,YAAY;QACZ,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AACH;MAMY,qBAAqB,CAAA;AAEvB,IAAA,IAAA;AACA,IAAA,MAAA;AACA,IAAA,WAAA;AAHV,IAAA,WAAA,CACU,IAAY,EACZ,MAA4B,EAC5B,WAA2B,EAAA;QAF3B,IAAA,CAAA,IAAI,GAAJ,IAAI;QACJ,IAAA,CAAA,MAAM,GAAN,MAAM;QACN,IAAA,CAAA,WAAW,GAAX,WAAW;IAClB;AACH;MAEY,qBAAqB,CAAA;AAEvB,IAAA,QAAA;AACA,IAAA,OAAA;IAFV,WAAA,CACU,QAAgB,EAChB,OAAe,EAAA;QADf,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AACH;MAOY,mBAAmB,CAAA;AAErB,IAAA,aAAA;AACA,IAAA,QAAA;AACA,IAAA,OAAA;AACA,IAAA,IAAA;AACA,IAAA,OAAA;IALV,WAAA,CACU,aAAqB,EACrB,QAA0C,EAC1C,OAA0C,EAC1C,IAAc,EACd,OAA0C,EAAA;QAJ1C,IAAA,CAAA,aAAa,GAAb,aAAa;QACb,IAAA,CAAA,QAAQ,GAAR,QAAQ;QACR,IAAA,CAAA,OAAO,GAAP,OAAO;QACP,IAAA,CAAA,IAAI,GAAJ,IAAI;QACJ,IAAA,CAAA,OAAO,GAAP,OAAO;IACd;AAEH,IAAA,aAAa,QAAQ,CAAC,UAAkB,EAAA;QACvC,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;AAC9C,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QAC/D,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;AAC7C,QAAA,MAAM,UAAU,GAAG,IAAI,UAAU,EAAE;QACnC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,kBAAkB,CAAC,SAAS,CAAC;QAC3D,OAAO,mBAAmB,CAAC,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC;IAC1D;AAEA,IAAA,OAAO,QAAQ,CAAC,IAAa,EAAE,SAAiB,EAAE,IAAc,EAAA;QAC/D,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;AAE5C,QAAA,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,IAAI,cAAc,CAAC;AACrF,QAAA,MAAM,iBAAiB,GAAG,MAAM,CAAC,UAAU,IAAI,gBAAgB;AAC/D,QAAA,MAAM,MAAM,GAAG,IAAI,CAAC,gBAAgB,EAAE;;;AAGtC,QAAA,MAAM,qBAAqB,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;QAEpE,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,IAAG;AAC9C,YAAA,MAAM,aAAa,GAAG,OAAO,CAAC,UAAU,IAAI,iBAAiB;AAC7D,YAAA,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM;AAEhC,YAAA,IAAI,MAA4B;AAChC,YAAA,IAAI,WAA2B;AAE/B,YAAA,IAAI,CAAC,SAAS,IAAI,SAAS,KAAK,SAAS,EAAE;AAC1C,gBAAA,MAAM,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE;AAC5B,gBAAA,WAAW,GAAG,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;YACxF;iBAAO;AACN,gBAAA,MAAM,EAAE,GAAG,SAAS,CAAC,QAAQ;AAC7B,gBAAA,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,IAAI,6BAA6B;gBAC7D,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,YAAY,CAAC;gBACvD,MAAM,OAAO,GAAG,oBAAoB,CAAC,EAAE,CAAC,OAAO,CAAC;AAChD,gBAAA,MAAM,cAAc,GAAG,IAAI,sBAAsB,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,EAAE,OAAO,CAAC;gBAChF,MAAM,GAAG,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE;;gBAEvD,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,qBAAqB,CAAC;AAC3E,gBAAA,WAAW,GAAG,cAAc,CAAC,kBAAkB,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,aAAa,CAAC,CAAC;YAChG;YAEA,OAAO,IAAI,qBAAqB,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC;AACpE,QAAA,CAAC,CAAC;AAEF,QAAA,MAAM,YAAY,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAEvD,QAAA,IAAI,OAA0C;AAC9C,QAAA,IAAI,MAAM,CAAC,OAAO,EAAE;AACnB,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC/C,MAAM,IAAI,KAAK,CAAC,CAAA,8CAAA,EAAiD,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAA,CAAA,CAAG,CAAC;YAC7F;AACA,YAAA,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;gBAC9C,MAAM,IAAI,KAAK,CAAC,CAAA,6CAAA,EAAgD,MAAM,CAAC,OAAO,CAAC,OAAO,CAAA,CAAA,CAAG,CAAC;YAC3F;AACA,YAAA,OAAO,GAAG,IAAI,qBAAqB,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;QACrF;AAEA,QAAA,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,EAAE;cAC1B,EAAE,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY;cAC5C,SAAS;AAEZ,QAAA,OAAO,IAAI,mBAAmB,CAAC,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC;IAChF;AACA;AAED,SAAS,oBAAoB,CAAC,GAAsD,EAAA;IACnF,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,MAAM,EAAE;AAAE,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAAE;AACpE,IAAA,IAAI,GAAG,KAAK,KAAK,EAAE;AAAE,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAAE;AAC9C,IAAA,IAAI,GAAG,KAAK,KAAK,EAAE;AAAE,QAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE;IAAE;AAC7C,IAAA,IAAI,GAAG,KAAK,MAAM,EAAE;AAAE,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAAE;AAC/C,IAAA,IAAI,GAAG,KAAK,MAAM,EAAE;AAAE,QAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE;IAAE;IAC/C,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE;AAChD;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vscode/component-explorer-cli",
|
|
3
|
-
"version": "0.1.1-
|
|
3
|
+
"version": "0.1.1-2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"component-explorer": "./dist/index.js"
|
|
@@ -22,7 +22,10 @@
|
|
|
22
22
|
"test": "vitest --run"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
+
"@hediet/simple-api": "workspace:*",
|
|
26
|
+
"@modelcontextprotocol/sdk": "^1.26.0",
|
|
25
27
|
"clipanion": "^4.0.0-rc.4",
|
|
28
|
+
"express": "^5.0.0",
|
|
26
29
|
"zod": "^4.3.6"
|
|
27
30
|
},
|
|
28
31
|
"peerDependencies": {
|
|
@@ -32,15 +35,16 @@
|
|
|
32
35
|
"devDependencies": {
|
|
33
36
|
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
34
37
|
"@rollup/plugin-typescript": "^12.3.0",
|
|
35
|
-
"
|
|
38
|
+
"@types/express": "^5.0.0",
|
|
36
39
|
"@types/node": "^20.0.0",
|
|
37
|
-
"@vscode/observables": "workspace:*",
|
|
38
40
|
"@vitejs/plugin-react": "^4.3.0",
|
|
39
41
|
"@vscode/component-explorer": "workspace:*",
|
|
40
42
|
"@vscode/component-explorer-vite-plugin": "workspace:*",
|
|
43
|
+
"@vscode/observables": "workspace:*",
|
|
41
44
|
"playwright": "^1.40.0",
|
|
42
45
|
"react": "^18.3.0",
|
|
43
46
|
"react-dom": "^18.3.0",
|
|
47
|
+
"rollup": "^4.0.0",
|
|
44
48
|
"typescript": "^5.4.0",
|
|
45
49
|
"vite": "^6.0.0",
|
|
46
50
|
"vitest": "^1.3.0"
|