browser-debugger-cli 0.6.4 → 0.6.5
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/__tests__/machineReadableHelp.contract.test.d.ts +12 -0
- package/dist/commands/__tests__/machineReadableHelp.contract.test.d.ts.map +1 -0
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js +102 -0
- package/dist/commands/__tests__/machineReadableHelp.contract.test.js.map +1 -0
- package/dist/commands/cdp.js +8 -4
- package/dist/commands/cdp.js.map +1 -1
- package/dist/commands/console.d.ts.map +1 -1
- package/dist/commands/console.js +22 -2
- package/dist/commands/console.js.map +1 -1
- package/dist/commands/dom/a11y.d.ts.map +1 -1
- package/dist/commands/dom/a11y.js +51 -15
- package/dist/commands/dom/a11y.js.map +1 -1
- package/dist/commands/dom/evalHelpers.d.ts +1 -1
- package/dist/commands/dom/evalHelpers.d.ts.map +1 -1
- package/dist/commands/dom/evalHelpers.js +3 -2
- package/dist/commands/dom/evalHelpers.js.map +1 -1
- package/dist/commands/dom/formFillHelpers.d.ts.map +1 -1
- package/dist/commands/dom/formFillHelpers.js +30 -2
- package/dist/commands/dom/formFillHelpers.js.map +1 -1
- package/dist/commands/dom/index.d.ts.map +1 -1
- package/dist/commands/dom/index.js +85 -13
- package/dist/commands/dom/index.js.map +1 -1
- package/dist/commands/dom/reactEventHelpers.d.ts +1 -1
- package/dist/commands/dom/reactEventHelpers.d.ts.map +1 -1
- package/dist/commands/dom/reactEventHelpers.js +3 -3
- package/dist/commands/machineReadableHelp.d.ts +48 -0
- package/dist/commands/machineReadableHelp.d.ts.map +1 -1
- package/dist/commands/machineReadableHelp.js +80 -0
- package/dist/commands/machineReadableHelp.js.map +1 -1
- package/dist/commands/network.d.ts.map +1 -1
- package/dist/commands/network.js +28 -2
- package/dist/commands/network.js.map +1 -1
- package/dist/commands/peek.js +2 -2
- package/dist/commands/peek.js.map +1 -1
- package/dist/commands/shared/CommandRunner.d.ts +2 -0
- package/dist/commands/shared/CommandRunner.d.ts.map +1 -1
- package/dist/commands/shared/CommandRunner.js +3 -0
- package/dist/commands/shared/CommandRunner.js.map +1 -1
- package/dist/commands/shared/validation.d.ts +2 -0
- package/dist/commands/shared/validation.d.ts.map +1 -1
- package/dist/commands/shared/validation.js +5 -2
- package/dist/commands/shared/validation.js.map +1 -1
- package/dist/commands/stop.d.ts.map +1 -1
- package/dist/commands/stop.js +2 -1
- package/dist/commands/stop.js.map +1 -1
- package/dist/commands/tail.d.ts.map +1 -1
- package/dist/commands/tail.js +6 -0
- package/dist/commands/tail.js.map +1 -1
- package/dist/connection/cdp.js +9 -9
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -1
- package/dist/constants.js.map +1 -1
- package/dist/daemon/patternDefinitions.d.ts +47 -0
- package/dist/daemon/patternDefinitions.d.ts.map +1 -0
- package/dist/daemon/patternDefinitions.js +71 -0
- package/dist/daemon/patternDefinitions.js.map +1 -0
- package/dist/daemon/patternDetector.d.ts +60 -0
- package/dist/daemon/patternDetector.d.ts.map +1 -0
- package/dist/daemon/patternDetector.js +74 -0
- package/dist/daemon/patternDetector.js.map +1 -0
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts +11 -0
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.d.ts.map +1 -0
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js +136 -0
- package/dist/daemon/worker/__tests__/PatternDetector.unit.test.js.map +1 -0
- package/dist/daemon/worker/commandRegistry.d.ts.map +1 -1
- package/dist/daemon/worker/commandRegistry.js +13 -2
- package/dist/daemon/worker/commandRegistry.js.map +1 -1
- package/dist/ipc/protocol/commands.d.ts +2 -0
- package/dist/ipc/protocol/commands.d.ts.map +1 -1
- package/dist/ipc/protocol/commands.js.map +1 -1
- package/dist/session/cleanup.d.ts.map +1 -1
- package/dist/session/cleanup.js +2 -0
- package/dist/session/cleanup.js.map +1 -1
- package/dist/session/queryCache.d.ts +35 -0
- package/dist/session/queryCache.d.ts.map +1 -0
- package/dist/session/queryCache.js +83 -0
- package/dist/session/queryCache.js.map +1 -0
- package/dist/telemetry/a11y.d.ts +8 -5
- package/dist/telemetry/a11y.d.ts.map +1 -1
- package/dist/telemetry/a11y.js +34 -19
- package/dist/telemetry/a11y.js.map +1 -1
- package/dist/ui/errors/CommandError.d.ts +5 -1
- package/dist/ui/errors/CommandError.d.ts.map +1 -1
- package/dist/ui/errors/CommandError.js.map +1 -1
- package/dist/ui/formatters/__tests__/preview.unit.test.d.ts +13 -0
- package/dist/ui/formatters/__tests__/preview.unit.test.d.ts.map +1 -0
- package/dist/ui/formatters/__tests__/preview.unit.test.js +180 -0
- package/dist/ui/formatters/__tests__/preview.unit.test.js.map +1 -0
- package/dist/ui/formatters/dom.d.ts.map +1 -1
- package/dist/ui/formatters/dom.js +5 -2
- package/dist/ui/formatters/dom.js.map +1 -1
- package/dist/ui/formatters/helpFormatters.d.ts +41 -0
- package/dist/ui/formatters/helpFormatters.d.ts.map +1 -0
- package/dist/ui/formatters/helpFormatters.js +80 -0
- package/dist/ui/formatters/helpFormatters.js.map +1 -0
- package/dist/ui/formatters/preview.d.ts.map +1 -1
- package/dist/ui/formatters/preview.js +67 -19
- package/dist/ui/formatters/preview.js.map +1 -1
- package/dist/ui/formatters/sessionFormatters.d.ts +58 -0
- package/dist/ui/formatters/sessionFormatters.d.ts.map +1 -0
- package/dist/ui/formatters/sessionFormatters.js +116 -0
- package/dist/ui/formatters/sessionFormatters.js.map +1 -0
- package/dist/ui/messages/commands.d.ts +9 -0
- package/dist/ui/messages/commands.d.ts.map +1 -1
- package/dist/ui/messages/commands.js +11 -1
- package/dist/ui/messages/commands.js.map +1 -1
- package/dist/ui/messages/errors.d.ts +53 -0
- package/dist/ui/messages/errors.d.ts.map +1 -1
- package/dist/ui/messages/errors.js +59 -0
- package/dist/ui/messages/errors.js.map +1 -1
- package/dist/ui/messages/hints.d.ts +33 -0
- package/dist/ui/messages/hints.d.ts.map +1 -0
- package/dist/ui/messages/hints.js +37 -0
- package/dist/ui/messages/hints.js.map +1 -0
- package/dist/ui/messages/session.d.ts +11 -1
- package/dist/ui/messages/session.d.ts.map +1 -1
- package/dist/ui/messages/session.js +14 -21
- package/dist/ui/messages/session.js.map +1 -1
- package/dist/utils/decisionTrees.d.ts +54 -0
- package/dist/utils/decisionTrees.d.ts.map +1 -0
- package/dist/utils/decisionTrees.js +171 -0
- package/dist/utils/decisionTrees.js.map +1 -0
- package/dist/utils/taskMappings.d.ts +47 -0
- package/dist/utils/taskMappings.d.ts.map +1 -0
- package/dist/utils/taskMappings.js +118 -0
- package/dist/utils/taskMappings.js.map +1 -0
- package/package.json +3 -3
|
@@ -0,0 +1,180 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Unit tests for preview formatter MIME type inference.
|
|
3
|
+
*
|
|
4
|
+
* Tests the contract of MIME type to resource type inference:
|
|
5
|
+
* - Correct resource type inference from MIME patterns
|
|
6
|
+
* - Pattern matching rule precedence
|
|
7
|
+
* - Handling of undefined/null inputs
|
|
8
|
+
* - Case-insensitive matching
|
|
9
|
+
*
|
|
10
|
+
* This enables refactoring the MIME_TYPE_RULES array without breaking tests.
|
|
11
|
+
*/
|
|
12
|
+
import assert from 'node:assert';
|
|
13
|
+
import { describe, test } from 'node:test';
|
|
14
|
+
import { formatPreview } from '../../../ui/formatters/preview.js';
|
|
15
|
+
/**
|
|
16
|
+
* Helper to test MIME type inference by checking abbreviations.
|
|
17
|
+
* This tests the public contract without exposing private functions.
|
|
18
|
+
*/
|
|
19
|
+
function inferTypeFromMime(mimeType) {
|
|
20
|
+
const mockOutput = {
|
|
21
|
+
version: '0.0.0',
|
|
22
|
+
success: true,
|
|
23
|
+
timestamp: new Date().toISOString(),
|
|
24
|
+
duration: 0,
|
|
25
|
+
target: { url: 'test', title: 'test' },
|
|
26
|
+
data: {
|
|
27
|
+
network: [
|
|
28
|
+
{
|
|
29
|
+
requestId: 'test-1',
|
|
30
|
+
url: 'https://example.com/test',
|
|
31
|
+
method: 'GET',
|
|
32
|
+
timestamp: Date.now(),
|
|
33
|
+
...(mimeType !== undefined && { mimeType }),
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
const output = formatPreview(mockOutput, { json: false, last: 1 });
|
|
39
|
+
const match = output.match(/\[([A-Z]{3})\]/);
|
|
40
|
+
return match?.[1] ?? 'NONE';
|
|
41
|
+
}
|
|
42
|
+
describe('MIME type to resource type inference', () => {
|
|
43
|
+
describe('Document type inference', () => {
|
|
44
|
+
test('infers Document from text/html', () => {
|
|
45
|
+
assert.strictEqual(inferTypeFromMime('text/html'), 'DOC');
|
|
46
|
+
});
|
|
47
|
+
test('infers Document from text/html with charset', () => {
|
|
48
|
+
assert.strictEqual(inferTypeFromMime('text/html; charset=utf-8'), 'DOC');
|
|
49
|
+
});
|
|
50
|
+
test('infers Document from TEXT/HTML (case-insensitive)', () => {
|
|
51
|
+
assert.strictEqual(inferTypeFromMime('TEXT/HTML'), 'DOC');
|
|
52
|
+
});
|
|
53
|
+
});
|
|
54
|
+
describe('Stylesheet type inference', () => {
|
|
55
|
+
test('infers Stylesheet from text/css', () => {
|
|
56
|
+
assert.strictEqual(inferTypeFromMime('text/css'), 'CSS');
|
|
57
|
+
});
|
|
58
|
+
test('infers Stylesheet from text/css with charset', () => {
|
|
59
|
+
assert.strictEqual(inferTypeFromMime('text/css; charset=utf-8'), 'CSS');
|
|
60
|
+
});
|
|
61
|
+
});
|
|
62
|
+
describe('Script type inference', () => {
|
|
63
|
+
test('infers Script from application/javascript', () => {
|
|
64
|
+
assert.strictEqual(inferTypeFromMime('application/javascript'), 'SCR');
|
|
65
|
+
});
|
|
66
|
+
test('infers Script from text/javascript', () => {
|
|
67
|
+
assert.strictEqual(inferTypeFromMime('text/javascript'), 'SCR');
|
|
68
|
+
});
|
|
69
|
+
test('infers Script from application/ecmascript', () => {
|
|
70
|
+
assert.strictEqual(inferTypeFromMime('application/ecmascript'), 'SCR');
|
|
71
|
+
});
|
|
72
|
+
test('infers Script from application/x-javascript', () => {
|
|
73
|
+
assert.strictEqual(inferTypeFromMime('application/x-javascript'), 'SCR');
|
|
74
|
+
});
|
|
75
|
+
});
|
|
76
|
+
describe('Image type inference', () => {
|
|
77
|
+
test('infers Image from image/png', () => {
|
|
78
|
+
assert.strictEqual(inferTypeFromMime('image/png'), 'IMG');
|
|
79
|
+
});
|
|
80
|
+
test('infers Image from image/jpeg', () => {
|
|
81
|
+
assert.strictEqual(inferTypeFromMime('image/jpeg'), 'IMG');
|
|
82
|
+
});
|
|
83
|
+
test('infers Image from image/svg+xml', () => {
|
|
84
|
+
assert.strictEqual(inferTypeFromMime('image/svg+xml'), 'IMG');
|
|
85
|
+
});
|
|
86
|
+
test('infers Image from image/webp', () => {
|
|
87
|
+
assert.strictEqual(inferTypeFromMime('image/webp'), 'IMG');
|
|
88
|
+
});
|
|
89
|
+
test('infers Image from IMAGE/PNG (case-insensitive)', () => {
|
|
90
|
+
assert.strictEqual(inferTypeFromMime('IMAGE/PNG'), 'IMG');
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
describe('Font type inference', () => {
|
|
94
|
+
test('infers Font from font/woff2', () => {
|
|
95
|
+
assert.strictEqual(inferTypeFromMime('font/woff2'), 'FNT');
|
|
96
|
+
});
|
|
97
|
+
test('infers Font from font/woff', () => {
|
|
98
|
+
assert.strictEqual(inferTypeFromMime('font/woff'), 'FNT');
|
|
99
|
+
});
|
|
100
|
+
test('infers Font from application/font-woff', () => {
|
|
101
|
+
assert.strictEqual(inferTypeFromMime('application/font-woff'), 'FNT');
|
|
102
|
+
});
|
|
103
|
+
});
|
|
104
|
+
describe('Media type inference', () => {
|
|
105
|
+
test('infers Media from video/mp4', () => {
|
|
106
|
+
assert.strictEqual(inferTypeFromMime('video/mp4'), 'MED');
|
|
107
|
+
});
|
|
108
|
+
test('infers Media from audio/mpeg', () => {
|
|
109
|
+
assert.strictEqual(inferTypeFromMime('audio/mpeg'), 'MED');
|
|
110
|
+
});
|
|
111
|
+
test('infers Media from video/webm', () => {
|
|
112
|
+
assert.strictEqual(inferTypeFromMime('video/webm'), 'MED');
|
|
113
|
+
});
|
|
114
|
+
test('infers Media from audio/wav', () => {
|
|
115
|
+
assert.strictEqual(inferTypeFromMime('audio/wav'), 'MED');
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
describe('XHR type inference', () => {
|
|
119
|
+
test('infers XHR from application/json', () => {
|
|
120
|
+
assert.strictEqual(inferTypeFromMime('application/json'), 'XHR');
|
|
121
|
+
});
|
|
122
|
+
test('infers XHR from text/json', () => {
|
|
123
|
+
assert.strictEqual(inferTypeFromMime('text/json'), 'XHR');
|
|
124
|
+
});
|
|
125
|
+
test('infers XHR from application/xml', () => {
|
|
126
|
+
assert.strictEqual(inferTypeFromMime('application/xml'), 'XHR');
|
|
127
|
+
});
|
|
128
|
+
test('infers XHR from text/xml', () => {
|
|
129
|
+
assert.strictEqual(inferTypeFromMime('text/xml'), 'XHR');
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
describe('unknown MIME type handling', () => {
|
|
133
|
+
test('returns OTH for unknown MIME type', () => {
|
|
134
|
+
assert.strictEqual(inferTypeFromMime('application/octet-stream'), 'OTH');
|
|
135
|
+
});
|
|
136
|
+
test('returns OTH for custom MIME type', () => {
|
|
137
|
+
assert.strictEqual(inferTypeFromMime('application/x-custom'), 'OTH');
|
|
138
|
+
});
|
|
139
|
+
test('returns OTH for undefined MIME type', () => {
|
|
140
|
+
assert.strictEqual(inferTypeFromMime(undefined), 'OTH');
|
|
141
|
+
});
|
|
142
|
+
test('returns OTH for empty string MIME type', () => {
|
|
143
|
+
assert.strictEqual(inferTypeFromMime(''), 'OTH');
|
|
144
|
+
});
|
|
145
|
+
});
|
|
146
|
+
describe('pattern matching precedence', () => {
|
|
147
|
+
test('prioritizes first matching rule', () => {
|
|
148
|
+
assert.strictEqual(inferTypeFromMime('text/html'), 'DOC');
|
|
149
|
+
});
|
|
150
|
+
test('handles MIME types with multiple potential matches', () => {
|
|
151
|
+
assert.strictEqual(inferTypeFromMime('application/json+xml'), 'XHR');
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
describe('resourceType takes precedence over MIME inference', () => {
|
|
155
|
+
test('uses CDP resourceType when available', () => {
|
|
156
|
+
const mockOutput = {
|
|
157
|
+
version: '0.0.0',
|
|
158
|
+
success: true,
|
|
159
|
+
timestamp: new Date().toISOString(),
|
|
160
|
+
duration: 0,
|
|
161
|
+
target: { url: 'test', title: 'test' },
|
|
162
|
+
data: {
|
|
163
|
+
network: [
|
|
164
|
+
{
|
|
165
|
+
requestId: 'test-1',
|
|
166
|
+
url: 'https://example.com/test.js',
|
|
167
|
+
method: 'GET',
|
|
168
|
+
timestamp: Date.now(),
|
|
169
|
+
mimeType: 'text/html',
|
|
170
|
+
resourceType: 'Script',
|
|
171
|
+
},
|
|
172
|
+
],
|
|
173
|
+
},
|
|
174
|
+
};
|
|
175
|
+
const output = formatPreview(mockOutput, { json: false, last: 1 });
|
|
176
|
+
assert.ok(output.includes('[SCR]'));
|
|
177
|
+
});
|
|
178
|
+
});
|
|
179
|
+
});
|
|
180
|
+
//# sourceMappingURL=preview.unit.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preview.unit.test.js","sourceRoot":"","sources":["../../../../src/ui/formatters/__tests__/preview.unit.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAG3C,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D;;;GAGG;AACH,SAAS,iBAAiB,CAAC,QAA4B;IACrD,MAAM,UAAU,GAAG;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;QACtC,IAAI,EAAE;YACJ,OAAO,EAAE;gBACP;oBACE,SAAS,EAAE,QAAQ;oBACnB,GAAG,EAAE,0BAA0B;oBAC/B,MAAM,EAAE,KAAK;oBACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;oBACrB,GAAG,CAAC,QAAQ,KAAK,SAAS,IAAI,EAAE,QAAQ,EAAE,CAAC;iBAC5C;aACF;SACF;KACF,CAAC;IAEF,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;IACnE,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IAC7C,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,MAAM,CAAC;AAC9B,CAAC;AAED,QAAQ,CAAC,sCAAsC,EAAE,GAAG,EAAE;IACpD,QAAQ,CAAC,yBAAyB,EAAE,GAAG,EAAE;QACvC,IAAI,CAAC,gCAAgC,EAAE,GAAG,EAAE;YAC1C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,mDAAmD,EAAE,GAAG,EAAE;YAC7D,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,2BAA2B,EAAE,GAAG,EAAE;QACzC,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8CAA8C,EAAE,GAAG,EAAE;YACxD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,uBAAuB,EAAE,GAAG,EAAE;QACrC,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oCAAoC,EAAE,GAAG,EAAE;YAC9C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2CAA2C,EAAE,GAAG,EAAE;YACrD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6CAA6C,EAAE,GAAG,EAAE;YACvD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,eAAe,CAAC,EAAE,KAAK,CAAC,CAAC;QAChE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,gDAAgD,EAAE,GAAG,EAAE;YAC1D,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,qBAAqB,EAAE,GAAG,EAAE;QACnC,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,4BAA4B,EAAE,GAAG,EAAE;YACtC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAClD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,uBAAuB,CAAC,EAAE,KAAK,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;QACpC,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,8BAA8B,EAAE,GAAG,EAAE;YACxC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,CAAC;QAC7D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,6BAA6B,EAAE,GAAG,EAAE;YACvC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,oBAAoB,EAAE,GAAG,EAAE;QAClC,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,2BAA2B,EAAE,GAAG,EAAE;YACrC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,KAAK,CAAC,CAAC;QAClE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,0BAA0B,EAAE,GAAG,EAAE;YACpC,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,UAAU,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3D,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,4BAA4B,EAAE,GAAG,EAAE;QAC1C,IAAI,CAAC,mCAAmC,EAAE,GAAG,EAAE;YAC7C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,0BAA0B,CAAC,EAAE,KAAK,CAAC,CAAC;QAC3E,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,kCAAkC,EAAE,GAAG,EAAE;YAC5C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,qCAAqC,EAAE,GAAG,EAAE;YAC/C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,KAAK,CAAC,CAAC;QAC1D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,wCAAwC,EAAE,GAAG,EAAE;YAClD,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,6BAA6B,EAAE,GAAG,EAAE;QAC3C,IAAI,CAAC,iCAAiC,EAAE,GAAG,EAAE;YAC3C,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE,KAAK,CAAC,CAAC;QAC5D,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,oDAAoD,EAAE,GAAG,EAAE;YAC9D,MAAM,CAAC,WAAW,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,EAAE,KAAK,CAAC,CAAC;QACvE,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,QAAQ,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACjE,IAAI,CAAC,sCAAsC,EAAE,GAAG,EAAE;YAChD,MAAM,UAAU,GAAG;gBACjB,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,QAAQ,EAAE,CAAC;gBACX,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE;gBACtC,IAAI,EAAE;oBACJ,OAAO,EAAE;wBACP;4BACE,SAAS,EAAE,QAAQ;4BACnB,GAAG,EAAE,6BAA6B;4BAClC,MAAM,EAAE,KAAK;4BACb,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;4BACrB,QAAQ,EAAE,WAAW;4BACrB,YAAY,EAAE,QAAyC;yBACxD;qBACF;iBACF;aACF,CAAC;YAEF,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YAEnE,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/dom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/dom.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAGnE;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,cAAc,GAAG,MAAM,CAmC3D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,MAAM,CAcvD;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAE/D;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,KAAK,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,QAAQ,EAAE,OAAO,CAAC;CACnB,GAAG,MAAM,CAwBT"}
|
|
@@ -42,13 +42,16 @@ export function formatDomQuery(data) {
|
|
|
42
42
|
const classInfo = node.classes?.length ? ` class="${node.classes.join(' ')}"` : '';
|
|
43
43
|
return `[${node.index}] <${node.tag}${classInfo}> ${node.preview}`;
|
|
44
44
|
});
|
|
45
|
+
const hasMultipleResults = count > 1;
|
|
46
|
+
const exampleIndex = hasMultipleResults ? (nodes[0]?.index ?? 0) : 0;
|
|
45
47
|
return fmt
|
|
46
48
|
.text(`Found ${count} element${count === 1 ? '' : 's'} matching "${selector}":`)
|
|
47
49
|
.list(nodeLines)
|
|
48
50
|
.blank()
|
|
49
51
|
.section('Next steps:', [
|
|
50
|
-
|
|
51
|
-
|
|
52
|
+
`Get HTML: bdg dom get ${exampleIndex}`,
|
|
53
|
+
`Extract text: bdg cdp Runtime.evaluate --params '{"expression": "document.querySelector('${selector.replace(/\\/g, '\\\\').replace(/'/g, "\\'")}').textContent"}'`,
|
|
54
|
+
`Full details: bdg details dom ${exampleIndex}`,
|
|
52
55
|
])
|
|
53
56
|
.build();
|
|
54
57
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dom.js","sourceRoot":"","sources":["../../../src/ui/formatters/dom.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,UAAU,cAAc,CAAC,IAAoB;IACjD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAC;IACxC,MAAM,GAAG,GAAG,IAAI,eAAe,EAAE,CAAC;IAElC,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;QAChB,MAAM,YAAY,GAAG,QAAQ,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QAE1E,OAAO,GAAG;aACP,IAAI,CAAC,+BAA+B,QAAQ,GAAG,CAAC;aAChD,KAAK,EAAE;aACP,OAAO,CAAC,cAAc,EAAE;YACvB,0DAA0D,YAAY,KAAK;YAC3E,oCAAoC;SACrC,CAAC;aACD,KAAK,EAAE,CAAC;IACb,CAAC;IAED,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,WAAW,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,OAAO,IAAI,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,GAAG,GAAG,SAAS,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;IACrE,CAAC,CAAC,CAAC;IAEH,OAAO,GAAG;SACP,IAAI,CAAC,SAAS,KAAK,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,cAAc,QAAQ,IAAI,CAAC;SAC/E,IAAI,CAAC,SAAS,CAAC;SACf,KAAK,EAAE;SACP,OAAO,CAAC,aAAa,EAAE;QACtB,
|
|
1
|
+
{"version":3,"file":"dom.js","sourceRoot":"","sources":["../../../src/ui/formatters/dom.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Help message formatting helpers for bare command and usage instructions.
|
|
3
|
+
*
|
|
4
|
+
* Provides well-structured sections for agent discovery, task examples,
|
|
5
|
+
* and URL format guidance.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Builds the agent discovery help section.
|
|
9
|
+
*
|
|
10
|
+
* Prominently displays machine-readable schema and CDP discovery commands
|
|
11
|
+
* to guide agents toward efficient tool usage patterns.
|
|
12
|
+
*
|
|
13
|
+
* @returns Formatted agent discovery section
|
|
14
|
+
*/
|
|
15
|
+
export declare function buildAgentDiscoveryHelp(): string;
|
|
16
|
+
/**
|
|
17
|
+
* Builds the common task examples section.
|
|
18
|
+
*
|
|
19
|
+
* Shows complete workflow examples for typical automation tasks,
|
|
20
|
+
* demonstrating session start followed by specific commands.
|
|
21
|
+
*
|
|
22
|
+
* @returns Formatted task examples section
|
|
23
|
+
*/
|
|
24
|
+
export declare function buildCommonTaskExamples(): string;
|
|
25
|
+
/**
|
|
26
|
+
* Builds the URL format examples section.
|
|
27
|
+
*
|
|
28
|
+
* Shows supported URL formats for starting sessions.
|
|
29
|
+
*
|
|
30
|
+
* @returns Formatted URL examples section
|
|
31
|
+
*/
|
|
32
|
+
export declare function buildUrlExamples(): string;
|
|
33
|
+
/**
|
|
34
|
+
* Builds the session management reminder section.
|
|
35
|
+
*
|
|
36
|
+
* Shows commands for managing active sessions and getting help.
|
|
37
|
+
*
|
|
38
|
+
* @returns Formatted session management section
|
|
39
|
+
*/
|
|
40
|
+
export declare function buildSessionManagementReminder(): string;
|
|
41
|
+
//# sourceMappingURL=helpFormatters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpFormatters.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/helpFormatters.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAOhD;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAmBhD;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAMzC;AAED;;;;;;GAMG;AACH,wBAAgB,8BAA8B,IAAI,MAAM,CAMvD"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Help message formatting helpers for bare command and usage instructions.
|
|
3
|
+
*
|
|
4
|
+
* Provides well-structured sections for agent discovery, task examples,
|
|
5
|
+
* and URL format guidance.
|
|
6
|
+
*/
|
|
7
|
+
import { section } from '../../ui/formatting.js';
|
|
8
|
+
/**
|
|
9
|
+
* Builds the agent discovery help section.
|
|
10
|
+
*
|
|
11
|
+
* Prominently displays machine-readable schema and CDP discovery commands
|
|
12
|
+
* to guide agents toward efficient tool usage patterns.
|
|
13
|
+
*
|
|
14
|
+
* @returns Formatted agent discovery section
|
|
15
|
+
*/
|
|
16
|
+
export function buildAgentDiscoveryHelp() {
|
|
17
|
+
return section('For AI Agents:', [
|
|
18
|
+
'bdg --help --json Machine-readable command schema',
|
|
19
|
+
'bdg cdp --list List all 53 CDP domains',
|
|
20
|
+
'bdg cdp --search <term> Search 300+ CDP methods',
|
|
21
|
+
'.claude/skills/bdg/ 15+ recipes & workflow patterns',
|
|
22
|
+
]);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Builds the common task examples section.
|
|
26
|
+
*
|
|
27
|
+
* Shows complete workflow examples for typical automation tasks,
|
|
28
|
+
* demonstrating session start followed by specific commands.
|
|
29
|
+
*
|
|
30
|
+
* @returns Formatted task examples section
|
|
31
|
+
*/
|
|
32
|
+
export function buildCommonTaskExamples() {
|
|
33
|
+
return section('Common Task Workflows:', [
|
|
34
|
+
'Screenshot:',
|
|
35
|
+
' bdg https://example.com',
|
|
36
|
+
' bdg dom screenshot output.png',
|
|
37
|
+
'',
|
|
38
|
+
'Scrape content:',
|
|
39
|
+
' bdg https://news.site',
|
|
40
|
+
' bdg dom query "article h2" --json',
|
|
41
|
+
'',
|
|
42
|
+
'Fill form:',
|
|
43
|
+
' bdg https://example.com/login',
|
|
44
|
+
' bdg dom fill "#email" "test@example.com"',
|
|
45
|
+
' bdg dom click "button[type=submit]"',
|
|
46
|
+
'',
|
|
47
|
+
'Export network data:',
|
|
48
|
+
' bdg https://api.example.com',
|
|
49
|
+
' bdg network har output.har',
|
|
50
|
+
]);
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Builds the URL format examples section.
|
|
54
|
+
*
|
|
55
|
+
* Shows supported URL formats for starting sessions.
|
|
56
|
+
*
|
|
57
|
+
* @returns Formatted URL examples section
|
|
58
|
+
*/
|
|
59
|
+
export function buildUrlExamples() {
|
|
60
|
+
return section('URL Formats:', [
|
|
61
|
+
'bdg example.com (http:// added automatically)',
|
|
62
|
+
'bdg localhost:3000 (local development server)',
|
|
63
|
+
'bdg https://github.com (explicit protocol)',
|
|
64
|
+
]);
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Builds the session management reminder section.
|
|
68
|
+
*
|
|
69
|
+
* Shows commands for managing active sessions and getting help.
|
|
70
|
+
*
|
|
71
|
+
* @returns Formatted session management section
|
|
72
|
+
*/
|
|
73
|
+
export function buildSessionManagementReminder() {
|
|
74
|
+
return section('Existing Session:', [
|
|
75
|
+
'bdg status Check session state',
|
|
76
|
+
'bdg stop End session',
|
|
77
|
+
'bdg --help Show all commands',
|
|
78
|
+
]);
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=helpFormatters.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"helpFormatters.js","sourceRoot":"","sources":["../../../src/ui/formatters/helpFormatters.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE7C;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,OAAO,CAAC,gBAAgB,EAAE;QAC/B,4DAA4D;QAC5D,oDAAoD;QACpD,oDAAoD;QACpD,4DAA4D;KAC7D,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB;IACrC,OAAO,OAAO,CAAC,wBAAwB,EAAE;QACvC,aAAa;QACb,2BAA2B;QAC3B,iCAAiC;QACjC,EAAE;QACF,iBAAiB;QACjB,yBAAyB;QACzB,qCAAqC;QACrC,EAAE;QACF,YAAY;QACZ,iCAAiC;QACjC,4CAA4C;QAC5C,uCAAuC;QACvC,EAAE;QACF,sBAAsB;QACtB,+BAA+B;QAC/B,8BAA8B;KAC/B,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,gBAAgB;IAC9B,OAAO,OAAO,CAAC,cAAc,EAAE;QAC7B,4DAA4D;QAC5D,yDAAyD;QACzD,kDAAkD;KACnD,CAAC,CAAC;AACL,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,8BAA8B;IAC5C,OAAO,OAAO,CAAC,mBAAmB,EAAE;QAClC,qCAAqC;QACrC,6BAA6B;QAC7B,mCAAmC;KACpC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAiGzC;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,+CAA+C;IAC/C,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,+BAA+B;IAC/B,GAAG,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC1B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,+CAA+C;IAC/C,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC9B,8DAA8D;IAC9D,MAAM,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC7B,qEAAqE;IACrE,QAAQ,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM,CAMhF"}
|
|
@@ -27,15 +27,55 @@ const RESOURCE_TYPE_ABBREVIATIONS = {
|
|
|
27
27
|
Other: 'OTH',
|
|
28
28
|
};
|
|
29
29
|
/**
|
|
30
|
-
*
|
|
30
|
+
* Rules for inferring resource types from MIME patterns.
|
|
31
|
+
* Ordered by precedence (first match wins).
|
|
32
|
+
*/
|
|
33
|
+
const MIME_TYPE_RULES = [
|
|
34
|
+
{ type: 'Document', match: /text\/html/i },
|
|
35
|
+
{ type: 'Stylesheet', match: /text\/css/i },
|
|
36
|
+
{ type: 'Script', match: /(java|ecma)script/i },
|
|
37
|
+
{ type: 'Image', match: /^image\//i },
|
|
38
|
+
{ type: 'Font', match: /font/i },
|
|
39
|
+
{ type: 'Media', match: /^(video|audio)\//i },
|
|
40
|
+
{ type: 'XHR', match: /json|xml/i },
|
|
41
|
+
];
|
|
42
|
+
/**
|
|
43
|
+
* Infer resource type from MIME type when CDP doesn't provide it.
|
|
44
|
+
*
|
|
45
|
+
* @param mimeType - MIME type string (e.g., 'application/json', 'text/html')
|
|
46
|
+
* @returns Inferred Protocol.Network.ResourceType or undefined
|
|
47
|
+
*/
|
|
48
|
+
function inferResourceTypeFromMime(mimeType) {
|
|
49
|
+
if (!mimeType)
|
|
50
|
+
return undefined;
|
|
51
|
+
return MIME_TYPE_RULES.find((rule) => rule.match.test(mimeType))?.type;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Format limit hint when data is truncated.
|
|
55
|
+
*
|
|
56
|
+
* @param showing - Number of items currently shown
|
|
57
|
+
* @param total - Total number of items available
|
|
58
|
+
* @returns Hint string with suggestion to use --last, or empty string if showing all
|
|
59
|
+
*/
|
|
60
|
+
function formatLimitHint(showing, total) {
|
|
61
|
+
if (showing >= total)
|
|
62
|
+
return '';
|
|
63
|
+
return ` (showing last ${showing}, use --last ${total} to see all)`;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Get compact abbreviation for resource type.
|
|
67
|
+
*
|
|
68
|
+
* Falls back to MIME type inference when CDP doesn't provide resourceType.
|
|
31
69
|
*
|
|
32
70
|
* @param resourceType - CDP ResourceType value
|
|
71
|
+
* @param mimeType - MIME type for fallback inference
|
|
33
72
|
* @returns 3-4 character abbreviation (e.g., DOC, XHR, SCR)
|
|
34
73
|
*/
|
|
35
|
-
function getResourceTypeAbbr(resourceType) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
74
|
+
function getResourceTypeAbbr(resourceType, mimeType) {
|
|
75
|
+
const type = resourceType ?? inferResourceTypeFromMime(mimeType);
|
|
76
|
+
if (!type)
|
|
77
|
+
return 'OTH';
|
|
78
|
+
return RESOURCE_TYPE_ABBREVIATIONS[type] ?? 'UNK';
|
|
39
79
|
}
|
|
40
80
|
/**
|
|
41
81
|
* Format preview output (peek command)
|
|
@@ -106,17 +146,20 @@ function formatPreviewCompact(output, options) {
|
|
|
106
146
|
const hasConsoleData = output.data.console && output.data.console.length > 0;
|
|
107
147
|
if (!options.console && output.data.network) {
|
|
108
148
|
if (options.console === undefined || hasNetworkData) {
|
|
109
|
-
const requests = output.data.network.slice(-lastCount);
|
|
110
|
-
|
|
149
|
+
const requests = lastCount === 0 ? output.data.network : output.data.network.slice(-lastCount);
|
|
150
|
+
const showingCount = requests.length;
|
|
151
|
+
const totalCount = output.data.network.length;
|
|
152
|
+
const limitHint = formatLimitHint(showingCount, totalCount);
|
|
153
|
+
fmt.text(`NETWORK (${showingCount}/${totalCount})${limitHint}:`);
|
|
111
154
|
if (requests.length === 0) {
|
|
112
155
|
fmt.text(` ${PREVIEW_EMPTY_STATES.NO_DATA}`);
|
|
113
156
|
}
|
|
114
157
|
else {
|
|
115
158
|
const networkLines = requests.map((req) => {
|
|
116
|
-
const typeAbbr = getResourceTypeAbbr(req.resourceType);
|
|
159
|
+
const typeAbbr = getResourceTypeAbbr(req.resourceType, req.mimeType);
|
|
117
160
|
const status = req.status ?? 'pending';
|
|
118
161
|
const url = truncateUrl(req.url, 50);
|
|
119
|
-
return `[${typeAbbr}] ${status} ${req.method} ${url}
|
|
162
|
+
return `[${req.requestId}] [${typeAbbr}] ${status} ${req.method} ${url}`;
|
|
120
163
|
});
|
|
121
164
|
fmt.list(networkLines, 2);
|
|
122
165
|
}
|
|
@@ -125,8 +168,11 @@ function formatPreviewCompact(output, options) {
|
|
|
125
168
|
}
|
|
126
169
|
if (!options.network && output.data.console) {
|
|
127
170
|
if (options.network === undefined || hasConsoleData) {
|
|
128
|
-
const messages = output.data.console.slice(-lastCount);
|
|
129
|
-
|
|
171
|
+
const messages = lastCount === 0 ? output.data.console : output.data.console.slice(-lastCount);
|
|
172
|
+
const showingCount = messages.length;
|
|
173
|
+
const totalCount = output.data.console.length;
|
|
174
|
+
const limitHint = formatLimitHint(showingCount, totalCount);
|
|
175
|
+
fmt.text(`CONSOLE (${showingCount}/${totalCount})${limitHint}:`);
|
|
130
176
|
if (messages.length === 0) {
|
|
131
177
|
fmt.text(` ${PREVIEW_EMPTY_STATES.NO_DATA}`);
|
|
132
178
|
}
|
|
@@ -181,10 +227,11 @@ function formatPreviewVerbose(output, options) {
|
|
|
181
227
|
const hasConsoleData = output.data.console && output.data.console.length > 0;
|
|
182
228
|
if (!options.console && output.data.network) {
|
|
183
229
|
if (options.console === undefined || hasNetworkData) {
|
|
184
|
-
const requests = output.data.network.slice(-lastCount);
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
230
|
+
const requests = lastCount === 0 ? output.data.network : output.data.network.slice(-lastCount);
|
|
231
|
+
const title = lastCount === 0
|
|
232
|
+
? `Network Requests (all ${requests.length})`
|
|
233
|
+
: `Network Requests (last ${requests.length} of ${output.data.network.length})`;
|
|
234
|
+
fmt.text(title).separator('━', 50);
|
|
188
235
|
if (requests.length === 0) {
|
|
189
236
|
fmt.text(PREVIEW_EMPTY_STATES.NO_NETWORK_REQUESTS);
|
|
190
237
|
}
|
|
@@ -207,10 +254,11 @@ function formatPreviewVerbose(output, options) {
|
|
|
207
254
|
}
|
|
208
255
|
if (!options.network && output.data.console) {
|
|
209
256
|
if (options.network === undefined || hasConsoleData) {
|
|
210
|
-
const messages = output.data.console.slice(-lastCount);
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
257
|
+
const messages = lastCount === 0 ? output.data.console : output.data.console.slice(-lastCount);
|
|
258
|
+
const title = lastCount === 0
|
|
259
|
+
? `Console Messages (all ${messages.length})`
|
|
260
|
+
: `Console Messages (last ${messages.length} of ${output.data.console.length})`;
|
|
261
|
+
fmt.text(title).separator('━', 50);
|
|
214
262
|
if (messages.length === 0) {
|
|
215
263
|
fmt.text(PREVIEW_EMPTY_STATES.NO_CONSOLE_MESSAGES);
|
|
216
264
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAChF,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC;;;GAGG;AACH,MAAM,2BAA2B,GAA2B;IAC1D,QAAQ,EAAE,KAAK;IACf,UAAU,EAAE,KAAK;IACjB,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,KAAK;IACX,MAAM,EAAE,KAAK;IACb,SAAS,EAAE,KAAK;IAChB,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,KAAK;IACf,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,IAAI;IACf,QAAQ,EAAE,KAAK;IACf,cAAc,EAAE,KAAK;IACrB,IAAI,EAAE,KAAK;IACX,kBAAkB,EAAE,KAAK;IACzB,SAAS,EAAE,KAAK;IAChB,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;CACb,CAAC;AAEF;;;;;GAKG;AACH,SAAS,
|
|
1
|
+
{"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session-related formatting helpers for landing page sections.
|
|
3
|
+
*
|
|
4
|
+
* Provides well-structured, TSDoc'd helpers for building each section
|
|
5
|
+
* of the landing page, organized by priority (high-level commands first).
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Builds the common tasks section showing task-to-command mappings.
|
|
9
|
+
*
|
|
10
|
+
* Provides agents with clear intent-to-command examples.
|
|
11
|
+
*
|
|
12
|
+
* @returns Formatted common tasks section
|
|
13
|
+
*/
|
|
14
|
+
export declare function buildCommonTasksSection(): string;
|
|
15
|
+
/**
|
|
16
|
+
* Builds the domain commands section with expanded command coverage.
|
|
17
|
+
*
|
|
18
|
+
* Shows all 12+ high-level commands organized by domain (DOM, Network, Console).
|
|
19
|
+
* Previously showed only 2 commands, now provides comprehensive coverage.
|
|
20
|
+
*
|
|
21
|
+
* @returns Formatted domain commands section
|
|
22
|
+
*/
|
|
23
|
+
export declare function buildDomainCommandsSection(): string;
|
|
24
|
+
/**
|
|
25
|
+
* Builds the live monitoring section.
|
|
26
|
+
*
|
|
27
|
+
* Shows commands for real-time data inspection during active sessions.
|
|
28
|
+
*
|
|
29
|
+
* @returns Formatted live monitoring section
|
|
30
|
+
*/
|
|
31
|
+
export declare function buildLiveMonitoringSection(): string;
|
|
32
|
+
/**
|
|
33
|
+
* Builds the session management section.
|
|
34
|
+
*
|
|
35
|
+
* Shows commands for controlling the daemon and session lifecycle.
|
|
36
|
+
*
|
|
37
|
+
* @returns Formatted session management section
|
|
38
|
+
*/
|
|
39
|
+
export declare function buildSessionManagementSection(): string;
|
|
40
|
+
/**
|
|
41
|
+
* Builds the CDP access section positioned as advanced fallback.
|
|
42
|
+
*
|
|
43
|
+
* Provides raw CDP protocol access for advanced use cases not covered
|
|
44
|
+
* by high-level commands. Intentionally positioned after domain commands
|
|
45
|
+
* to guide agents toward wrapper commands first.
|
|
46
|
+
*
|
|
47
|
+
* @returns Formatted CDP section
|
|
48
|
+
*/
|
|
49
|
+
export declare function buildCdpSection(): string;
|
|
50
|
+
/**
|
|
51
|
+
* Builds the discovery section for AI agents.
|
|
52
|
+
*
|
|
53
|
+
* Points agents to machine-readable schemas and documentation resources.
|
|
54
|
+
*
|
|
55
|
+
* @returns Formatted discovery section
|
|
56
|
+
*/
|
|
57
|
+
export declare function buildDiscoverySection(): string;
|
|
58
|
+
//# sourceMappingURL=sessionFormatters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sessionFormatters.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/sessionFormatters.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;GAMG;AACH,wBAAgB,uBAAuB,IAAI,MAAM,CAShD;AAED;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAmBnD;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAQnD;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,IAAI,MAAM,CAOtD;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,IAAI,MAAM,CASxC;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAK9C"}
|