@vscode/component-explorer-cli 0.1.1-9 → 0.2.1-0
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/LICENSE +21 -0
- package/SECURITY.md +14 -0
- package/dist/WorktreePool.d.ts +22 -0
- package/dist/WorktreePool.d.ts.map +1 -0
- package/dist/WorktreePool.js +58 -0
- package/dist/WorktreePool.js.map +1 -0
- package/dist/WorktreePool.test.d.ts +2 -0
- package/dist/WorktreePool.test.d.ts.map +1 -0
- package/dist/_virtual/_build-info.js +4 -0
- package/dist/_virtual/_build-info.js.map +1 -0
- package/dist/browserPage.d.ts +15 -1
- package/dist/browserPage.d.ts.map +1 -1
- package/dist/browserPage.js +51 -7
- package/dist/browserPage.js.map +1 -1
- package/dist/commands/acceptCommand.d.ts.map +1 -1
- package/dist/commands/acceptCommand.js +3 -2
- package/dist/commands/acceptCommand.js.map +1 -1
- package/dist/commands/checkStabilityCommand.d.ts +12 -0
- package/dist/commands/checkStabilityCommand.d.ts.map +1 -0
- package/dist/commands/checkStabilityCommand.js +84 -0
- package/dist/commands/checkStabilityCommand.js.map +1 -0
- package/dist/commands/compareCommand.d.ts +1 -0
- package/dist/commands/compareCommand.d.ts.map +1 -1
- package/dist/commands/compareCommand.js +25 -4
- package/dist/commands/compareCommand.js.map +1 -1
- package/dist/commands/mcpCommand.d.ts +1 -0
- package/dist/commands/mcpCommand.d.ts.map +1 -1
- package/dist/commands/mcpCommand.js +23 -10
- package/dist/commands/mcpCommand.js.map +1 -1
- package/dist/commands/screenshotCommand.d.ts +2 -0
- package/dist/commands/screenshotCommand.d.ts.map +1 -1
- package/dist/commands/screenshotCommand.js +19 -4
- package/dist/commands/screenshotCommand.js.map +1 -1
- package/dist/commands/serveCommand.d.ts +4 -0
- package/dist/commands/serveCommand.d.ts.map +1 -1
- package/dist/commands/serveCommand.js +101 -26
- package/dist/commands/serveCommand.js.map +1 -1
- package/dist/commands/watchCommand.d.ts +2 -0
- package/dist/commands/watchCommand.d.ts.map +1 -1
- package/dist/commands/watchCommand.js +18 -66
- package/dist/commands/watchCommand.js.map +1 -1
- package/dist/comparison.d.ts +11 -1
- package/dist/comparison.d.ts.map +1 -1
- package/dist/comparison.js +25 -11
- package/dist/comparison.js.map +1 -1
- package/dist/component-explorer-config.schema.json +260 -55
- package/dist/componentExplorer.d.ts +21 -18
- package/dist/componentExplorer.d.ts.map +1 -1
- package/dist/componentExplorer.js +60 -19
- package/dist/componentExplorer.js.map +1 -1
- package/dist/daemon/DaemonService.d.ts +100 -11
- package/dist/daemon/DaemonService.d.ts.map +1 -1
- package/dist/daemon/DaemonService.js +512 -129
- package/dist/daemon/DaemonService.js.map +1 -1
- package/dist/daemon/dynamicSessions.test.d.ts +2 -0
- package/dist/daemon/dynamicSessions.test.d.ts.map +1 -0
- package/dist/daemon/lifecycle.d.ts +2 -1
- package/dist/daemon/lifecycle.d.ts.map +1 -1
- package/dist/daemon/lifecycle.js +52 -30
- package/dist/daemon/lifecycle.js.map +1 -1
- package/dist/daemon/pipeClient.d.ts.map +1 -1
- package/dist/daemon/pipeClient.js +81 -2
- package/dist/daemon/pipeClient.js.map +1 -1
- package/dist/daemon/pipeServer.d.ts +2 -1
- package/dist/daemon/pipeServer.d.ts.map +1 -1
- package/dist/daemon/pipeServer.js +59 -2
- package/dist/daemon/pipeServer.js.map +1 -1
- package/dist/daemon/version.d.ts +10 -0
- package/dist/daemon/version.d.ts.map +1 -0
- package/dist/daemon/version.js +17 -0
- package/dist/daemon/version.js.map +1 -0
- package/dist/dependencyInstaller.d.ts +2 -2
- package/dist/dependencyInstaller.d.ts.map +1 -1
- package/dist/dependencyInstaller.js.map +1 -1
- package/dist/explorerSession.d.ts +3 -3
- package/dist/explorerSession.d.ts.map +1 -1
- package/dist/explorerSession.js +26 -9
- package/dist/explorerSession.js.map +1 -1
- package/dist/git/gitIndexResolver.d.ts +25 -0
- package/dist/git/gitIndexResolver.d.ts.map +1 -0
- package/dist/git/gitIndexResolver.js +91 -0
- package/dist/git/gitIndexResolver.js.map +1 -0
- package/dist/git/gitIndexResolver.test.d.ts +2 -0
- package/dist/git/gitIndexResolver.test.d.ts.map +1 -0
- package/dist/git/gitService.d.ts +2 -0
- package/dist/git/gitService.d.ts.map +1 -1
- package/dist/git/gitService.js +6 -0
- package/dist/git/gitService.js.map +1 -1
- package/dist/git/gitWorktreeManager.d.ts +6 -0
- package/dist/git/gitWorktreeManager.d.ts.map +1 -1
- package/dist/git/gitWorktreeManager.js +42 -13
- package/dist/git/gitWorktreeManager.js.map +1 -1
- package/dist/git/gitWorktreeManager.test.d.ts +2 -0
- package/dist/git/gitWorktreeManager.test.d.ts.map +1 -0
- package/dist/git/testUtils.d.ts +13 -0
- package/dist/git/testUtils.d.ts.map +1 -0
- package/dist/httpServer.d.ts +18 -7
- package/dist/httpServer.d.ts.map +1 -1
- package/dist/httpServer.js +117 -18
- package/dist/httpServer.js.map +1 -1
- package/dist/httpServer.test.d.ts +2 -0
- package/dist/httpServer.test.d.ts.map +1 -0
- package/dist/index.js +11 -2
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +1 -0
- package/dist/logger.d.ts.map +1 -1
- package/dist/logger.js +7 -1
- package/dist/logger.js.map +1 -1
- package/dist/mcp/McpServer.d.ts +18 -0
- package/dist/mcp/McpServer.d.ts.map +1 -1
- package/dist/mcp/McpServer.js +555 -13
- package/dist/mcp/McpServer.js.map +1 -1
- package/dist/mcp/TaskManager.d.ts +28 -0
- package/dist/mcp/TaskManager.d.ts.map +1 -0
- package/dist/mcp/TaskManager.js +54 -0
- package/dist/mcp/TaskManager.js.map +1 -0
- package/dist/packages/simple-api/dist/{chunk-Q24JOMNK.js → chunk-TAEFVNPN.js} +1 -1
- package/dist/packages/simple-api/dist/chunk-TAEFVNPN.js.map +1 -0
- package/dist/packages/simple-api/dist/express.js +11 -3
- package/dist/packages/simple-api/dist/express.js.map +1 -1
- package/dist/utils.d.ts +7 -0
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +6 -7
- package/dist/utils.js.map +1 -1
- package/dist/visualCache.d.ts +34 -0
- package/dist/visualCache.d.ts.map +1 -0
- package/dist/visualCache.js +90 -0
- package/dist/visualCache.js.map +1 -0
- package/dist/watchConfig.d.ts +68 -15
- package/dist/watchConfig.d.ts.map +1 -1
- package/dist/watchConfig.js +109 -65
- package/dist/watchConfig.js.map +1 -1
- package/package.json +21 -4
- package/dist/packages/simple-api/dist/chunk-Q24JOMNK.js.map +0 -1
package/dist/comparison.d.ts
CHANGED
|
@@ -6,6 +6,8 @@ export interface CompareReportFixtureDetail {
|
|
|
6
6
|
readonly baselineScreenshot?: string;
|
|
7
7
|
readonly currentScreenshot?: string;
|
|
8
8
|
readonly background?: 'light' | 'dark';
|
|
9
|
+
readonly labels?: readonly string[];
|
|
10
|
+
readonly labelsBefore?: readonly string[];
|
|
9
11
|
}
|
|
10
12
|
export interface CompareReport {
|
|
11
13
|
readonly timestamp: string;
|
|
@@ -30,6 +32,7 @@ export interface ComparisonResult {
|
|
|
30
32
|
export interface ScreenshotData {
|
|
31
33
|
readonly data: Uint8Array;
|
|
32
34
|
readonly background?: 'light' | 'dark';
|
|
35
|
+
readonly labels?: readonly string[];
|
|
33
36
|
}
|
|
34
37
|
export interface ComparisonStorage {
|
|
35
38
|
list(): Promise<string[]>;
|
|
@@ -45,7 +48,14 @@ export declare function compareScreenshotsInMemory(currentScreenshots: Map<strin
|
|
|
45
48
|
/**
|
|
46
49
|
* Compare screenshots between two directories on disk.
|
|
47
50
|
*/
|
|
48
|
-
export
|
|
51
|
+
export interface FixtureMetadata {
|
|
52
|
+
readonly background?: 'light' | 'dark';
|
|
53
|
+
readonly labels?: readonly string[];
|
|
54
|
+
}
|
|
55
|
+
export declare function compareScreenshotsOnDisk(currentStorage: ComparisonStorage, baselineStorage: ComparisonStorage, currentFiles: string[], baselineFiles: string[], options?: {
|
|
56
|
+
readonly currentMetadata?: Record<string, FixtureMetadata>;
|
|
57
|
+
readonly baselineMetadata?: Record<string, FixtureMetadata>;
|
|
58
|
+
}): Promise<ComparisonResult>;
|
|
49
59
|
export declare function printComparisonToConsole(result: ComparisonResult, stdout: Writable): void;
|
|
50
60
|
export interface WriteReportOptions {
|
|
51
61
|
readonly reportDir: string;
|
package/dist/comparison.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comparison.d.ts","sourceRoot":"","sources":["../src/comparison.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAI5C,MAAM,WAAW,0BAA0B;IAC1C,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,CAAC;IAC/D,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"comparison.d.ts","sourceRoot":"","sources":["../src/comparison.ts"],"names":[],"mappings":"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"}
|
package/dist/comparison.js
CHANGED
|
@@ -20,16 +20,16 @@ async function compareScreenshotsInMemory(currentScreenshots, baselineStorage) {
|
|
|
20
20
|
const baselineHash = contentHash(baselineData);
|
|
21
21
|
if (currentHash === baselineHash) {
|
|
22
22
|
unchanged.push(fixtureId);
|
|
23
|
-
fixtures[fixtureId] = { status: 'unchanged', baselineHash, currentHash, background: screenshot.background };
|
|
23
|
+
fixtures[fixtureId] = { status: 'unchanged', baselineHash, currentHash, background: screenshot.background, labels: screenshot.labels };
|
|
24
24
|
}
|
|
25
25
|
else {
|
|
26
26
|
changed.push(fixtureId);
|
|
27
|
-
fixtures[fixtureId] = { status: 'changed', baselineHash, currentHash, background: screenshot.background };
|
|
27
|
+
fixtures[fixtureId] = { status: 'changed', baselineHash, currentHash, background: screenshot.background, labels: [...(screenshot.labels ?? []), 'changed'] };
|
|
28
28
|
}
|
|
29
29
|
}
|
|
30
30
|
else {
|
|
31
31
|
added.push(fixtureId);
|
|
32
|
-
fixtures[fixtureId] = { status: 'added', currentHash, background: screenshot.background };
|
|
32
|
+
fixtures[fixtureId] = { status: 'added', currentHash, background: screenshot.background, labels: screenshot.labels };
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
added.sort();
|
|
@@ -37,10 +37,7 @@ async function compareScreenshotsInMemory(currentScreenshots, baselineStorage) {
|
|
|
37
37
|
unchanged.sort();
|
|
38
38
|
return { added, removed: [], changed, unchanged, fixtures };
|
|
39
39
|
}
|
|
40
|
-
|
|
41
|
-
* Compare screenshots between two directories on disk.
|
|
42
|
-
*/
|
|
43
|
-
async function compareScreenshotsOnDisk(currentStorage, baselineStorage, currentFiles, baselineFiles) {
|
|
40
|
+
async function compareScreenshotsOnDisk(currentStorage, baselineStorage, currentFiles, baselineFiles, options) {
|
|
44
41
|
const baselineSet = new Set(baselineFiles);
|
|
45
42
|
const currentSet = new Set(currentFiles);
|
|
46
43
|
const added = [];
|
|
@@ -50,10 +47,15 @@ async function compareScreenshotsOnDisk(currentStorage, baselineStorage, current
|
|
|
50
47
|
const fixtures = {};
|
|
51
48
|
for (const file of currentSet) {
|
|
52
49
|
const fixtureId = file.replace(/\.png$/, '');
|
|
50
|
+
const currentMeta = options?.currentMetadata?.[fixtureId];
|
|
51
|
+
const baselineMeta = options?.baselineMetadata?.[fixtureId];
|
|
52
|
+
const labels = currentMeta?.labels;
|
|
53
|
+
const labelsChanged = baselineMeta && !arraysEqual(baselineMeta.labels ?? [], labels ?? []);
|
|
54
|
+
const labelsBefore = labelsChanged ? baselineMeta.labels : undefined;
|
|
53
55
|
if (!baselineSet.has(file)) {
|
|
54
56
|
added.push(fixtureId);
|
|
55
57
|
const currentData = await currentStorage.read(file);
|
|
56
|
-
fixtures[fixtureId] = { status: 'added', currentHash: contentHash(currentData) };
|
|
58
|
+
fixtures[fixtureId] = { status: 'added', currentHash: contentHash(currentData), background: currentMeta?.background, labels };
|
|
57
59
|
}
|
|
58
60
|
else {
|
|
59
61
|
const baselineData = await baselineStorage.read(file);
|
|
@@ -62,11 +64,11 @@ async function compareScreenshotsOnDisk(currentStorage, baselineStorage, current
|
|
|
62
64
|
const currentHash = contentHash(currentData);
|
|
63
65
|
if (baselineHash === currentHash) {
|
|
64
66
|
unchanged.push(fixtureId);
|
|
65
|
-
fixtures[fixtureId] = { status: 'unchanged', baselineHash, currentHash };
|
|
67
|
+
fixtures[fixtureId] = { status: 'unchanged', baselineHash, currentHash, background: currentMeta?.background, labels, labelsBefore };
|
|
66
68
|
}
|
|
67
69
|
else {
|
|
68
70
|
changed.push(fixtureId);
|
|
69
|
-
fixtures[fixtureId] = { status: 'changed', baselineHash, currentHash };
|
|
71
|
+
fixtures[fixtureId] = { status: 'changed', baselineHash, currentHash, background: currentMeta?.background, labels: [...(labels ?? []), 'changed'], labelsBefore };
|
|
70
72
|
}
|
|
71
73
|
}
|
|
72
74
|
}
|
|
@@ -75,7 +77,8 @@ async function compareScreenshotsOnDisk(currentStorage, baselineStorage, current
|
|
|
75
77
|
if (!currentSet.has(file)) {
|
|
76
78
|
removed.push(fixtureId);
|
|
77
79
|
const baselineData = await baselineStorage.read(file);
|
|
78
|
-
|
|
80
|
+
const baselineMeta = options?.baselineMetadata?.[fixtureId];
|
|
81
|
+
fixtures[fixtureId] = { status: 'removed', baselineHash: contentHash(baselineData), labels: baselineMeta?.labels };
|
|
79
82
|
}
|
|
80
83
|
}
|
|
81
84
|
added.sort();
|
|
@@ -245,6 +248,17 @@ function generateMarkdownReport(report) {
|
|
|
245
248
|
}
|
|
246
249
|
return lines.join('\n');
|
|
247
250
|
}
|
|
251
|
+
function arraysEqual(a, b) {
|
|
252
|
+
if (a.length !== b.length) {
|
|
253
|
+
return false;
|
|
254
|
+
}
|
|
255
|
+
for (let i = 0; i < a.length; i++) {
|
|
256
|
+
if (a[i] !== b[i]) {
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
return true;
|
|
261
|
+
}
|
|
248
262
|
|
|
249
263
|
export { compareScreenshotsInMemory, compareScreenshotsOnDisk, generateMarkdownReport, printComparisonToConsole, writeComparisonReport };
|
|
250
264
|
//# sourceMappingURL=comparison.js.map
|
package/dist/comparison.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"comparison.js","sources":["../src/comparison.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"comparison.js","sources":["../src/comparison.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -17,78 +17,148 @@
|
|
|
17
17
|
"description": "Unique session name"
|
|
18
18
|
},
|
|
19
19
|
"source": {
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
},
|
|
25
|
-
{
|
|
20
|
+
"description": "Source configuration (default: current working tree)",
|
|
21
|
+
"type": "object",
|
|
22
|
+
"properties": {
|
|
23
|
+
"worktree": {
|
|
26
24
|
"type": "object",
|
|
27
25
|
"properties": {
|
|
28
|
-
"
|
|
29
|
-
"type": "
|
|
30
|
-
"
|
|
31
|
-
|
|
26
|
+
"ref": {
|
|
27
|
+
"type": "string",
|
|
28
|
+
"description": "Git ref to check out (branch, tag, commit, or \"INDEX\" for the git staging area)"
|
|
29
|
+
},
|
|
30
|
+
"install": {
|
|
31
|
+
"description": "Dependency install strategy override for this session",
|
|
32
|
+
"anyOf": [
|
|
33
|
+
{
|
|
32
34
|
"type": "string",
|
|
33
|
-
"
|
|
35
|
+
"const": "auto"
|
|
34
36
|
},
|
|
35
|
-
|
|
36
|
-
"
|
|
37
|
-
"
|
|
37
|
+
{
|
|
38
|
+
"type": "string",
|
|
39
|
+
"const": "npm"
|
|
38
40
|
},
|
|
39
|
-
|
|
40
|
-
"
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
"const": "pnpm"
|
|
52
|
-
},
|
|
53
|
-
{
|
|
41
|
+
{
|
|
42
|
+
"type": "string",
|
|
43
|
+
"const": "pnpm"
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
"type": "string",
|
|
47
|
+
"const": "yarn"
|
|
48
|
+
},
|
|
49
|
+
{
|
|
50
|
+
"type": "object",
|
|
51
|
+
"properties": {
|
|
52
|
+
"command": {
|
|
54
53
|
"type": "string",
|
|
55
|
-
"
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
"type": "object",
|
|
59
|
-
"properties": {
|
|
60
|
-
"command": {
|
|
61
|
-
"type": "string",
|
|
62
|
-
"description": "Custom install command to run in the worktree"
|
|
63
|
-
}
|
|
64
|
-
},
|
|
65
|
-
"required": [
|
|
66
|
-
"command"
|
|
67
|
-
],
|
|
68
|
-
"additionalProperties": false
|
|
69
|
-
},
|
|
70
|
-
{
|
|
71
|
-
"type": "boolean",
|
|
72
|
-
"const": false
|
|
54
|
+
"description": "Custom install command to run in the worktree"
|
|
73
55
|
}
|
|
56
|
+
},
|
|
57
|
+
"required": [
|
|
58
|
+
"command"
|
|
74
59
|
],
|
|
75
|
-
"
|
|
60
|
+
"additionalProperties": false
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"type": "boolean",
|
|
64
|
+
"const": false
|
|
65
|
+
}
|
|
66
|
+
]
|
|
67
|
+
}
|
|
68
|
+
},
|
|
69
|
+
"required": [
|
|
70
|
+
"ref"
|
|
71
|
+
],
|
|
72
|
+
"additionalProperties": false,
|
|
73
|
+
"description": "Worktree source configuration"
|
|
74
|
+
}
|
|
75
|
+
},
|
|
76
|
+
"required": [
|
|
77
|
+
"worktree"
|
|
78
|
+
],
|
|
79
|
+
"additionalProperties": false
|
|
80
|
+
},
|
|
81
|
+
"server": {
|
|
82
|
+
"description": "Server configuration for this session (overrides top-level)",
|
|
83
|
+
"oneOf": [
|
|
84
|
+
{
|
|
85
|
+
"type": "object",
|
|
86
|
+
"properties": {
|
|
87
|
+
"type": {
|
|
88
|
+
"type": "string",
|
|
89
|
+
"const": "vite"
|
|
90
|
+
},
|
|
91
|
+
"viteConfig": {
|
|
92
|
+
"description": "Path to vite config file, relative to this config",
|
|
93
|
+
"type": "string"
|
|
94
|
+
},
|
|
95
|
+
"hmr": {
|
|
96
|
+
"type": "object",
|
|
97
|
+
"properties": {
|
|
98
|
+
"allowedPaths": {
|
|
99
|
+
"type": "array",
|
|
100
|
+
"items": {
|
|
101
|
+
"type": "string"
|
|
102
|
+
},
|
|
103
|
+
"description": "Glob patterns for files that keep HMR; everything else triggers a full reload"
|
|
76
104
|
}
|
|
77
105
|
},
|
|
78
106
|
"required": [
|
|
79
|
-
"
|
|
107
|
+
"allowedPaths"
|
|
80
108
|
],
|
|
81
109
|
"additionalProperties": false,
|
|
82
|
-
"description": "
|
|
110
|
+
"description": "Vite HMR configuration"
|
|
111
|
+
}
|
|
112
|
+
},
|
|
113
|
+
"required": [
|
|
114
|
+
"type"
|
|
115
|
+
],
|
|
116
|
+
"additionalProperties": false,
|
|
117
|
+
"description": "Vite dev server configuration"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"type": "object",
|
|
121
|
+
"properties": {
|
|
122
|
+
"type": {
|
|
123
|
+
"type": "string",
|
|
124
|
+
"const": "http"
|
|
125
|
+
},
|
|
126
|
+
"url": {
|
|
127
|
+
"type": "string",
|
|
128
|
+
"description": "URL of the HTTP server. Use ${var:name} to reference named capture groups from wait patterns"
|
|
129
|
+
},
|
|
130
|
+
"cmd": {
|
|
131
|
+
"description": "Command to start the HTTP server (e.g. \"npx rspack serve\")",
|
|
132
|
+
"type": "string"
|
|
133
|
+
},
|
|
134
|
+
"cwd": {
|
|
135
|
+
"description": "Working directory for cmd, relative to this config file (default: config file directory)",
|
|
136
|
+
"type": "string"
|
|
137
|
+
},
|
|
138
|
+
"wait": {
|
|
139
|
+
"description": "Wait for the server to be ready before connecting",
|
|
140
|
+
"type": "object",
|
|
141
|
+
"properties": {
|
|
142
|
+
"stdout": {
|
|
143
|
+
"description": "Regex pattern to wait for on stdout. Named capture groups become variables for the url field",
|
|
144
|
+
"type": "string"
|
|
145
|
+
},
|
|
146
|
+
"stderr": {
|
|
147
|
+
"description": "Regex pattern to wait for on stderr. Named capture groups become variables for the url field",
|
|
148
|
+
"type": "string"
|
|
149
|
+
}
|
|
150
|
+
},
|
|
151
|
+
"additionalProperties": false
|
|
83
152
|
}
|
|
84
153
|
},
|
|
85
154
|
"required": [
|
|
86
|
-
"
|
|
155
|
+
"type",
|
|
156
|
+
"url"
|
|
87
157
|
],
|
|
88
|
-
"additionalProperties": false
|
|
158
|
+
"additionalProperties": false,
|
|
159
|
+
"description": "External HTTP server configuration"
|
|
89
160
|
}
|
|
90
|
-
]
|
|
91
|
-
"description": "Session source: \"current\" for the working tree, or a worktree config for a baseline"
|
|
161
|
+
]
|
|
92
162
|
},
|
|
93
163
|
"viteConfig": {
|
|
94
164
|
"description": "Path to vite config file, relative to this config (overrides top-level viteConfig)",
|
|
@@ -101,7 +171,58 @@
|
|
|
101
171
|
"additionalProperties": false,
|
|
102
172
|
"description": "A component explorer session"
|
|
103
173
|
},
|
|
104
|
-
"description": "List of explorer sessions"
|
|
174
|
+
"description": "List of explorer sessions (currently only \"current\" working tree sessions)"
|
|
175
|
+
},
|
|
176
|
+
"worktree": {
|
|
177
|
+
"description": "Dynamic worktree session pool configuration",
|
|
178
|
+
"type": "object",
|
|
179
|
+
"properties": {
|
|
180
|
+
"setup": {
|
|
181
|
+
"description": "Dependency install strategy for dynamic worktree sessions (default: auto)",
|
|
182
|
+
"anyOf": [
|
|
183
|
+
{
|
|
184
|
+
"type": "string",
|
|
185
|
+
"const": "auto"
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
"type": "string",
|
|
189
|
+
"const": "npm"
|
|
190
|
+
},
|
|
191
|
+
{
|
|
192
|
+
"type": "string",
|
|
193
|
+
"const": "pnpm"
|
|
194
|
+
},
|
|
195
|
+
{
|
|
196
|
+
"type": "string",
|
|
197
|
+
"const": "yarn"
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
"type": "object",
|
|
201
|
+
"properties": {
|
|
202
|
+
"command": {
|
|
203
|
+
"type": "string",
|
|
204
|
+
"description": "Custom install command to run in the worktree"
|
|
205
|
+
}
|
|
206
|
+
},
|
|
207
|
+
"required": [
|
|
208
|
+
"command"
|
|
209
|
+
],
|
|
210
|
+
"additionalProperties": false
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"type": "boolean",
|
|
214
|
+
"const": false
|
|
215
|
+
}
|
|
216
|
+
]
|
|
217
|
+
},
|
|
218
|
+
"maxSlots": {
|
|
219
|
+
"description": "Maximum number of simultaneous worktree sessions (default: 2, max: 3)",
|
|
220
|
+
"type": "integer",
|
|
221
|
+
"minimum": 1,
|
|
222
|
+
"maximum": 3
|
|
223
|
+
}
|
|
224
|
+
},
|
|
225
|
+
"additionalProperties": false
|
|
105
226
|
},
|
|
106
227
|
"compare": {
|
|
107
228
|
"type": "object",
|
|
@@ -122,11 +243,95 @@
|
|
|
122
243
|
"additionalProperties": false,
|
|
123
244
|
"description": "Screenshot comparison configuration"
|
|
124
245
|
},
|
|
246
|
+
"server": {
|
|
247
|
+
"description": "Default server configuration",
|
|
248
|
+
"oneOf": [
|
|
249
|
+
{
|
|
250
|
+
"type": "object",
|
|
251
|
+
"properties": {
|
|
252
|
+
"type": {
|
|
253
|
+
"type": "string",
|
|
254
|
+
"const": "vite"
|
|
255
|
+
},
|
|
256
|
+
"viteConfig": {
|
|
257
|
+
"description": "Path to vite config file, relative to this config",
|
|
258
|
+
"type": "string"
|
|
259
|
+
},
|
|
260
|
+
"hmr": {
|
|
261
|
+
"type": "object",
|
|
262
|
+
"properties": {
|
|
263
|
+
"allowedPaths": {
|
|
264
|
+
"type": "array",
|
|
265
|
+
"items": {
|
|
266
|
+
"type": "string"
|
|
267
|
+
},
|
|
268
|
+
"description": "Glob patterns for files that keep HMR; everything else triggers a full reload"
|
|
269
|
+
}
|
|
270
|
+
},
|
|
271
|
+
"required": [
|
|
272
|
+
"allowedPaths"
|
|
273
|
+
],
|
|
274
|
+
"additionalProperties": false,
|
|
275
|
+
"description": "Vite HMR configuration"
|
|
276
|
+
}
|
|
277
|
+
},
|
|
278
|
+
"required": [
|
|
279
|
+
"type"
|
|
280
|
+
],
|
|
281
|
+
"additionalProperties": false,
|
|
282
|
+
"description": "Vite dev server configuration"
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
"type": "object",
|
|
286
|
+
"properties": {
|
|
287
|
+
"type": {
|
|
288
|
+
"type": "string",
|
|
289
|
+
"const": "http"
|
|
290
|
+
},
|
|
291
|
+
"url": {
|
|
292
|
+
"type": "string",
|
|
293
|
+
"description": "URL of the HTTP server. Use ${var:name} to reference named capture groups from wait patterns"
|
|
294
|
+
},
|
|
295
|
+
"cmd": {
|
|
296
|
+
"description": "Command to start the HTTP server (e.g. \"npx rspack serve\")",
|
|
297
|
+
"type": "string"
|
|
298
|
+
},
|
|
299
|
+
"cwd": {
|
|
300
|
+
"description": "Working directory for cmd, relative to this config file (default: config file directory)",
|
|
301
|
+
"type": "string"
|
|
302
|
+
},
|
|
303
|
+
"wait": {
|
|
304
|
+
"description": "Wait for the server to be ready before connecting",
|
|
305
|
+
"type": "object",
|
|
306
|
+
"properties": {
|
|
307
|
+
"stdout": {
|
|
308
|
+
"description": "Regex pattern to wait for on stdout. Named capture groups become variables for the url field",
|
|
309
|
+
"type": "string"
|
|
310
|
+
},
|
|
311
|
+
"stderr": {
|
|
312
|
+
"description": "Regex pattern to wait for on stderr. Named capture groups become variables for the url field",
|
|
313
|
+
"type": "string"
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
"additionalProperties": false
|
|
317
|
+
}
|
|
318
|
+
},
|
|
319
|
+
"required": [
|
|
320
|
+
"type",
|
|
321
|
+
"url"
|
|
322
|
+
],
|
|
323
|
+
"additionalProperties": false,
|
|
324
|
+
"description": "External HTTP server configuration"
|
|
325
|
+
}
|
|
326
|
+
]
|
|
327
|
+
},
|
|
125
328
|
"viteConfig": {
|
|
126
329
|
"description": "Default vite config file path, relative to this config (default: vite.config.ts)",
|
|
330
|
+
"deprecated": true,
|
|
127
331
|
"type": "string"
|
|
128
332
|
},
|
|
129
333
|
"vite": {
|
|
334
|
+
"deprecated": true,
|
|
130
335
|
"type": "object",
|
|
131
336
|
"properties": {
|
|
132
337
|
"hmr": {
|
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
import type { BrowserPageFactory } from './browserPage.js';
|
|
2
2
|
import type { ComponentExplorerHttpServer } from './httpServer.js';
|
|
3
|
+
import type { IObservable } from '@vscode/observables';
|
|
3
4
|
import { type ILogger } from './logger.js';
|
|
5
|
+
import { SourceTreeId } from './sourceTreeId.js';
|
|
4
6
|
export interface FixtureInfo {
|
|
5
7
|
readonly fixtureId: string;
|
|
6
8
|
readonly fixtureName: string;
|
|
7
9
|
readonly groupPath: string[];
|
|
8
10
|
readonly background: 'light' | 'dark';
|
|
11
|
+
readonly labels: readonly string[];
|
|
12
|
+
readonly expectedVisualDescriptions: readonly string[];
|
|
9
13
|
}
|
|
10
14
|
export type FixtureId = {
|
|
11
15
|
readonly fixtureId: string;
|
|
@@ -21,33 +25,24 @@ export interface CoverageFileEntry {
|
|
|
21
25
|
readonly coveredLines: readonly number[];
|
|
22
26
|
readonly uncoveredLines: readonly number[];
|
|
23
27
|
}
|
|
24
|
-
/**
|
|
25
|
-
* Error captured during fixture rendering.
|
|
26
|
-
* Can be either an unhandled exception or a console error/warning.
|
|
27
|
-
*/
|
|
28
|
-
export type ErrorInfo = ExceptionError | ConsoleError;
|
|
29
|
-
/**
|
|
30
|
-
* Unhandled exception thrown during render.
|
|
31
|
-
*/
|
|
32
28
|
export interface ExceptionError {
|
|
33
|
-
readonly kind: 'exception';
|
|
34
29
|
readonly message: string;
|
|
35
30
|
readonly stack?: string;
|
|
36
31
|
}
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
export interface ConsoleError {
|
|
41
|
-
readonly kind: 'console';
|
|
42
|
-
readonly level: 'error' | 'warn';
|
|
32
|
+
export type RenderEventType = 'console.error' | 'console.warn' | 'console.log' | 'window.error' | 'window.unhandledrejection';
|
|
33
|
+
export interface RenderEvent {
|
|
34
|
+
readonly type: RenderEventType;
|
|
43
35
|
readonly message: string;
|
|
44
36
|
}
|
|
45
37
|
/**
|
|
46
38
|
* Result of taking a screenshot, including any errors captured during rendering.
|
|
47
39
|
*/
|
|
48
40
|
export interface ScreenshotResult {
|
|
49
|
-
readonly image: Uint8Array;
|
|
50
|
-
readonly
|
|
41
|
+
readonly image: Uint8Array | undefined;
|
|
42
|
+
readonly hasError: boolean;
|
|
43
|
+
readonly error?: ExceptionError;
|
|
44
|
+
readonly events: RenderEvent[];
|
|
45
|
+
readonly resultData?: unknown;
|
|
51
46
|
}
|
|
52
47
|
export interface StabilityScreenshot {
|
|
53
48
|
readonly image: Uint8Array;
|
|
@@ -55,9 +50,13 @@ export interface StabilityScreenshot {
|
|
|
55
50
|
}
|
|
56
51
|
export interface StabilityCheckResult {
|
|
57
52
|
readonly screenshots: readonly StabilityScreenshot[];
|
|
58
|
-
readonly
|
|
53
|
+
readonly hasError: boolean;
|
|
54
|
+
readonly error?: ExceptionError;
|
|
55
|
+
readonly events: RenderEvent[];
|
|
56
|
+
readonly resultData?: unknown;
|
|
59
57
|
}
|
|
60
58
|
export interface ComponentExplorer {
|
|
59
|
+
readonly sourceTreeId: IObservable<SourceTreeId>;
|
|
61
60
|
listFixtures(): Promise<FixtureInfo[]>;
|
|
62
61
|
screenshotFixture(fixtureId: string): Promise<ScreenshotResult>;
|
|
63
62
|
screenshotFixtureStabilityCheck(fixtureId: string): Promise<StabilityCheckResult>;
|
|
@@ -73,9 +72,12 @@ export declare class BrowserComponentExplorer implements ComponentExplorer {
|
|
|
73
72
|
private _page;
|
|
74
73
|
private _lastState;
|
|
75
74
|
private _screenshotMutex;
|
|
75
|
+
readonly sourceTreeId: import("@vscode/observables").ISettableObservable<SourceTreeId, void>;
|
|
76
76
|
constructor(_browserPageFactory: BrowserPageFactory, _server: ComponentExplorerHttpServer, _logger?: ILogger);
|
|
77
|
+
private _bumpSourceTreeId;
|
|
77
78
|
private _ensureReady;
|
|
78
79
|
private _waitForCliApi;
|
|
80
|
+
private _assertRuntimeVersionCompatibility;
|
|
79
81
|
private _getState;
|
|
80
82
|
listFixtures(): Promise<FixtureInfo[]>;
|
|
81
83
|
screenshotFixture(fixtureId: string): Promise<ScreenshotResult>;
|
|
@@ -83,6 +85,7 @@ export declare class BrowserComponentExplorer implements ComponentExplorer {
|
|
|
83
85
|
evaluateJs(expression: string, fixtureId?: string): Promise<unknown>;
|
|
84
86
|
codeCoverage(_id: FixtureId | FixtureGroupId): Promise<CoverageData>;
|
|
85
87
|
waitForUpdate(timeoutMs?: number): Promise<void>;
|
|
88
|
+
closePage(): void;
|
|
86
89
|
dispose(): Promise<void>;
|
|
87
90
|
}
|
|
88
91
|
//# sourceMappingURL=componentExplorer.d.ts.map
|