browser-debugger-cli 0.6.1 → 0.6.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.
Files changed (115) hide show
  1. package/README.md +55 -0
  2. package/dist/__tests__/smoke/error-handling.smoke.test.js +9 -4
  3. package/dist/__tests__/smoke/error-handling.smoke.test.js.map +1 -1
  4. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js +27 -24
  5. package/dist/__tests__/smoke/session-lifecycle.smoke.test.js.map +1 -1
  6. package/dist/__testutils__/daemonHelpers.d.ts +13 -1
  7. package/dist/__testutils__/daemonHelpers.d.ts.map +1 -1
  8. package/dist/__testutils__/daemonHelpers.js +54 -5
  9. package/dist/__testutils__/daemonHelpers.js.map +1 -1
  10. package/dist/cdp/protocol.d.ts.map +1 -1
  11. package/dist/cdp/protocol.js +9 -7
  12. package/dist/cdp/protocol.js.map +1 -1
  13. package/dist/commands/cleanup.d.ts.map +1 -1
  14. package/dist/commands/cleanup.js +21 -6
  15. package/dist/commands/cleanup.js.map +1 -1
  16. package/dist/commands/dom/a11y.d.ts +18 -0
  17. package/dist/commands/dom/a11y.d.ts.map +1 -0
  18. package/dist/commands/dom/a11y.js +134 -0
  19. package/dist/commands/dom/a11y.js.map +1 -0
  20. package/dist/commands/dom/evalHelpers.js +1 -1
  21. package/dist/commands/dom/evalHelpers.js.map +1 -1
  22. package/dist/commands/dom/index.d.ts.map +1 -1
  23. package/dist/commands/dom/index.js +41 -20
  24. package/dist/commands/dom/index.js.map +1 -1
  25. package/dist/commands/peek.d.ts.map +1 -1
  26. package/dist/commands/peek.js +2 -0
  27. package/dist/commands/peek.js.map +1 -1
  28. package/dist/commands/stop.d.ts.map +1 -1
  29. package/dist/commands/stop.js +12 -4
  30. package/dist/commands/stop.js.map +1 -1
  31. package/dist/commands/types.d.ts +3 -0
  32. package/dist/commands/types.d.ts.map +1 -1
  33. package/dist/constants.d.ts +6 -0
  34. package/dist/constants.d.ts.map +1 -1
  35. package/dist/constants.js +6 -0
  36. package/dist/constants.js.map +1 -1
  37. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts +19 -0
  38. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.d.ts.map +1 -0
  39. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js +212 -0
  40. package/dist/daemon/__tests__/ipcServer.cleanup.unit.test.js.map +1 -0
  41. package/dist/daemon/launcher.d.ts.map +1 -1
  42. package/dist/daemon/launcher.js +4 -3
  43. package/dist/daemon/launcher.js.map +1 -1
  44. package/dist/daemon/lifecycle/workerCleanup.d.ts.map +1 -1
  45. package/dist/daemon/lifecycle/workerCleanup.js +1 -1
  46. package/dist/daemon/lifecycle/workerCleanup.js.map +1 -1
  47. package/dist/daemon/services/SessionService.js +1 -1
  48. package/dist/daemon/services/SessionService.js.map +1 -1
  49. package/dist/ipc/__tests__/client.contract.test.js +251 -19
  50. package/dist/ipc/__tests__/client.contract.test.js.map +1 -1
  51. package/dist/ipc/__tests__/jsonl.unit.test.js +19 -1
  52. package/dist/ipc/__tests__/jsonl.unit.test.js.map +1 -1
  53. package/dist/ipc/transport/jsonl.d.ts +16 -0
  54. package/dist/ipc/transport/jsonl.d.ts.map +1 -1
  55. package/dist/ipc/transport/jsonl.js +25 -0
  56. package/dist/ipc/transport/jsonl.js.map +1 -1
  57. package/dist/session/chrome.js +2 -2
  58. package/dist/session/chrome.js.map +1 -1
  59. package/dist/session/cleanup.d.ts +21 -0
  60. package/dist/session/cleanup.d.ts.map +1 -1
  61. package/dist/session/cleanup.js +101 -1
  62. package/dist/session/cleanup.js.map +1 -1
  63. package/dist/session/lock.js +1 -1
  64. package/dist/session/lock.js.map +1 -1
  65. package/dist/telemetry/__tests__/a11y.unit.test.d.ts +10 -0
  66. package/dist/telemetry/__tests__/a11y.unit.test.d.ts.map +1 -0
  67. package/dist/telemetry/__tests__/a11y.unit.test.js +265 -0
  68. package/dist/telemetry/__tests__/a11y.unit.test.js.map +1 -0
  69. package/dist/telemetry/a11y.d.ts +78 -0
  70. package/dist/telemetry/a11y.d.ts.map +1 -0
  71. package/dist/telemetry/a11y.js +280 -0
  72. package/dist/telemetry/a11y.js.map +1 -0
  73. package/dist/telemetry/dom.d.ts +1 -1
  74. package/dist/telemetry/dom.d.ts.map +1 -1
  75. package/dist/telemetry/dom.js +32 -1
  76. package/dist/telemetry/dom.js.map +1 -1
  77. package/dist/types.d.ts +77 -0
  78. package/dist/types.d.ts.map +1 -1
  79. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts +2 -0
  80. package/dist/ui/formatters/__tests__/semantic.unit.test.d.ts.map +1 -0
  81. package/dist/ui/formatters/__tests__/semantic.unit.test.js +111 -0
  82. package/dist/ui/formatters/__tests__/semantic.unit.test.js.map +1 -0
  83. package/dist/ui/formatters/a11y.d.ts +30 -0
  84. package/dist/ui/formatters/a11y.d.ts.map +1 -0
  85. package/dist/ui/formatters/a11y.js +178 -0
  86. package/dist/ui/formatters/a11y.js.map +1 -0
  87. package/dist/ui/formatters/preview.d.ts +2 -0
  88. package/dist/ui/formatters/preview.d.ts.map +1 -1
  89. package/dist/ui/formatters/preview.js +27 -4
  90. package/dist/ui/formatters/preview.js.map +1 -1
  91. package/dist/ui/formatters/semantic.d.ts +36 -0
  92. package/dist/ui/formatters/semantic.d.ts.map +1 -0
  93. package/dist/ui/formatters/semantic.js +98 -0
  94. package/dist/ui/formatters/semantic.js.map +1 -0
  95. package/dist/ui/formatters/status.js +1 -1
  96. package/dist/ui/formatters/status.js.map +1 -1
  97. package/dist/ui/messages/commands.d.ts +7 -0
  98. package/dist/ui/messages/commands.d.ts.map +1 -1
  99. package/dist/ui/messages/commands.js +9 -0
  100. package/dist/ui/messages/commands.js.map +1 -1
  101. package/dist/utils/__tests__/errors.unit.test.d.ts +12 -0
  102. package/dist/utils/__tests__/errors.unit.test.d.ts.map +1 -0
  103. package/dist/utils/__tests__/errors.unit.test.js +255 -0
  104. package/dist/utils/__tests__/errors.unit.test.js.map +1 -0
  105. package/dist/utils/__tests__/http.unit.test.d.ts +12 -0
  106. package/dist/utils/__tests__/http.unit.test.d.ts.map +1 -0
  107. package/dist/utils/__tests__/http.unit.test.js +218 -0
  108. package/dist/utils/__tests__/http.unit.test.js.map +1 -0
  109. package/dist/utils/__tests__/process.unit.test.d.ts +14 -0
  110. package/dist/utils/__tests__/process.unit.test.d.ts.map +1 -0
  111. package/dist/utils/__tests__/process.unit.test.js +124 -0
  112. package/dist/utils/__tests__/process.unit.test.js.map +1 -0
  113. package/dist/utils/__tests__/session.contract.test.js +1 -1
  114. package/dist/utils/__tests__/session.contract.test.js.map +1 -1
  115. package/package.json +22 -1
@@ -0,0 +1,178 @@
1
+ import { OutputFormatter } from '../../ui/formatting.js';
2
+ /**
3
+ * Maximum number of nodes to display in tree output before truncating.
4
+ * Prevents overwhelming terminal output for large accessibility trees.
5
+ */
6
+ const MAX_TREE_NODES_DISPLAY = 50;
7
+ /**
8
+ * Separator width for section dividers in formatted output.
9
+ */
10
+ const SEPARATOR_WIDTH = 50;
11
+ /**
12
+ * Format accessibility tree for human-readable output.
13
+ *
14
+ * Displays the tree structure with role, name, and key properties.
15
+ * Shows up to 50 nodes by default for manageable output.
16
+ *
17
+ * @param tree - Accessibility tree data
18
+ * @returns Formatted output string
19
+ */
20
+ export function formatA11yTree(tree) {
21
+ const fmt = new OutputFormatter();
22
+ fmt.text(`Accessibility Tree (${tree.count} nodes)`).separator('─', SEPARATOR_WIDTH).blank();
23
+ const nodes = Array.from(tree.nodes.values()).slice(0, MAX_TREE_NODES_DISPLAY);
24
+ for (const node of nodes) {
25
+ fmt.text(formatA11yNodeOneLine(node));
26
+ }
27
+ if (tree.count > MAX_TREE_NODES_DISPLAY) {
28
+ fmt
29
+ .blank()
30
+ .text(`... and ${tree.count - MAX_TREE_NODES_DISPLAY} more nodes`)
31
+ .text('Use --json flag for complete output');
32
+ }
33
+ return fmt.build();
34
+ }
35
+ /**
36
+ * Format query result for human-readable output.
37
+ *
38
+ * Shows matching nodes with their role, name, and properties.
39
+ *
40
+ * @param result - Query result with matching nodes
41
+ * @returns Formatted output string
42
+ */
43
+ export function formatA11yQueryResult(result) {
44
+ const fmt = new OutputFormatter();
45
+ const patternParts = [];
46
+ if (result.pattern.role) {
47
+ patternParts.push(`role:${result.pattern.role}`);
48
+ }
49
+ if (result.pattern.name) {
50
+ patternParts.push(`name:${result.pattern.name}`);
51
+ }
52
+ if (result.pattern.description) {
53
+ patternParts.push(`description:${result.pattern.description}`);
54
+ }
55
+ const patternStr = patternParts.join(' ');
56
+ fmt
57
+ .text(`Found ${result.count} element${result.count === 1 ? '' : 's'} matching "${patternStr}"`)
58
+ .separator('─', SEPARATOR_WIDTH)
59
+ .blank();
60
+ for (const node of result.nodes) {
61
+ fmt.text(formatA11yNodeOneLine(node)).blank();
62
+ }
63
+ return fmt.build();
64
+ }
65
+ /**
66
+ * Format single accessibility node for human-readable output.
67
+ *
68
+ * Shows detailed properties including role, name, description, value, and states.
69
+ *
70
+ * @param node - Accessibility node
71
+ * @returns Formatted output string
72
+ */
73
+ export function formatA11yNode(node) {
74
+ const fmt = new OutputFormatter();
75
+ fmt.text(`Accessibility Node: ${node.role}`).separator('─', SEPARATOR_WIDTH).blank();
76
+ const props = [];
77
+ if (node.name) {
78
+ props.push(['Name', node.name]);
79
+ }
80
+ if (node.description) {
81
+ props.push(['Description', node.description]);
82
+ }
83
+ if (node.value !== undefined) {
84
+ props.push(['Value', node.value]);
85
+ }
86
+ if (node.focusable) {
87
+ props.push(['Focusable', 'yes']);
88
+ }
89
+ if (node.focused) {
90
+ props.push(['Focused', 'yes']);
91
+ }
92
+ if (node.disabled) {
93
+ props.push(['Disabled', 'yes']);
94
+ }
95
+ if (node.required) {
96
+ props.push(['Required', 'yes']);
97
+ }
98
+ props.push(['Node ID', node.nodeId]);
99
+ if (node.backendDOMNodeId) {
100
+ props.push(['DOM Node ID', String(node.backendDOMNodeId)]);
101
+ }
102
+ fmt.keyValueList(props, 16);
103
+ if (node.properties && Object.keys(node.properties).length > 0) {
104
+ fmt.blank().text('Additional Properties:').blank();
105
+ const additionalProps = Object.entries(node.properties).map(([key, value]) => [key, String(value)]);
106
+ fmt.keyValueList(additionalProps, 20);
107
+ }
108
+ return fmt.build();
109
+ }
110
+ /**
111
+ * Format accessibility node as single line (for tree/query output).
112
+ *
113
+ * Compact format: [Role] "Name" (states)
114
+ *
115
+ * @param node - Accessibility node
116
+ * @returns Single-line formatted string
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * formatA11yNodeOneLine({
121
+ * role: 'button',
122
+ * name: 'Submit',
123
+ * focusable: true,
124
+ * disabled: false
125
+ * });
126
+ * // => '[Button] "Submit" (focusable)'
127
+ * ```
128
+ */
129
+ function formatA11yNodeOneLine(node) {
130
+ const parts = [];
131
+ parts.push(`[${capitalize(node.role)}]`);
132
+ if (node.name) {
133
+ parts.push(`"${node.name}"`);
134
+ }
135
+ const states = [];
136
+ if (node.value !== undefined && node.value !== '') {
137
+ states.push(`value: ${truncate(node.value, 30)}`);
138
+ }
139
+ if (node.focused) {
140
+ states.push('focused');
141
+ }
142
+ if (node.disabled) {
143
+ states.push('disabled');
144
+ }
145
+ if (node.required) {
146
+ states.push('required');
147
+ }
148
+ if (node.focusable && states.length === 0) {
149
+ states.push('focusable');
150
+ }
151
+ if (states.length > 0) {
152
+ parts.push(`(${states.join(', ')})`);
153
+ }
154
+ return parts.join(' ');
155
+ }
156
+ /**
157
+ * Capitalize first letter of string.
158
+ *
159
+ * @param str - Input string
160
+ * @returns Capitalized string
161
+ */
162
+ function capitalize(str) {
163
+ return str.charAt(0).toUpperCase() + str.slice(1);
164
+ }
165
+ /**
166
+ * Truncate string to max length with ellipsis.
167
+ *
168
+ * @param str - Input string
169
+ * @param maxLen - Maximum length
170
+ * @returns Truncated string
171
+ */
172
+ function truncate(str, maxLen) {
173
+ if (str.length <= maxLen) {
174
+ return str;
175
+ }
176
+ return str.substring(0, maxLen - 3) + '...';
177
+ }
178
+ //# sourceMappingURL=a11y.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a11y.js","sourceRoot":"","sources":["../../../src/ui/formatters/a11y.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,8 @@ export interface PreviewOptions {
9
9
  network?: boolean | undefined;
10
10
  /** Limit output to console messages (ignores network data). */
11
11
  console?: boolean | undefined;
12
+ /** Show DOM/A11y tree data. */
13
+ dom?: boolean | undefined;
12
14
  /** Number of recent entries to include. */
13
15
  last: number;
14
16
  /** Use the expanded, human-friendly layout. */
@@ -1 +1 @@
1
- {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AASzC;;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,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"}
1
+ {"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAWzC;;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"}
@@ -1,5 +1,6 @@
1
1
  import { OutputFormatter, truncateUrl, truncateText } from '../../ui/formatting.js';
2
2
  import { PREVIEW_EMPTY_STATES, PREVIEW_HEADERS, compactTipsMessage, verboseCommandsMessage, } from '../../ui/messages/preview.js';
3
+ import { semantic } from './semantic.js';
3
4
  /**
4
5
  * Format preview output (peek command)
5
6
  */
@@ -12,8 +13,8 @@ export function formatPreview(output, options) {
12
13
  /**
13
14
  * Format preview as JSON
14
15
  *
15
- * Returns the output wrapped in a preview object to maintain the
16
- * IPC response structure (.preview.data path for JSON consumers).
16
+ * Returns the output in standard bdg JSON format (consistent with stop command).
17
+ * BREAKING CHANGE: Previously wrapped in preview object, now returns at root level.
17
18
  */
18
19
  function formatPreviewAsJson(output, options) {
19
20
  // Build a new data object so we never mutate the original output
@@ -21,9 +22,15 @@ function formatPreviewAsJson(output, options) {
21
22
  // Apply filters
22
23
  if (options.network) {
23
24
  delete data.console;
25
+ delete data.dom;
24
26
  }
25
27
  if (options.console) {
26
28
  delete data.network;
29
+ delete data.dom;
30
+ }
31
+ if (options.dom) {
32
+ delete data.network;
33
+ delete data.console;
27
34
  }
28
35
  // Apply --last limit
29
36
  const lastCount = options.last;
@@ -35,12 +42,12 @@ function formatPreviewAsJson(output, options) {
35
42
  data.console = data.console.slice(-lastCount);
36
43
  }
37
44
  }
38
- // Wrap in preview object to maintain .preview.data path for JSON consumers
45
+ // Return standard bdg output format (consistent with stop command)
39
46
  const jsonOutput = {
40
47
  ...output,
41
48
  data,
42
49
  };
43
- return JSON.stringify({ preview: jsonOutput }, null, 2);
50
+ return JSON.stringify(jsonOutput, null, 2);
44
51
  }
45
52
  /**
46
53
  * Format preview as human-readable output
@@ -108,6 +115,22 @@ function formatPreviewCompact(output, options) {
108
115
  fmt.blank();
109
116
  }
110
117
  }
118
+ // Show DOM/A11y tree if --dom flag is present
119
+ if (options.dom && output.data.dom?.a11yTree) {
120
+ const tree = output.data.dom.a11yTree;
121
+ fmt.text(`DOM/A11Y TREE (${tree.count} nodes):`);
122
+ const treeWithMap = {
123
+ root: tree.root,
124
+ nodes: new Map(Object.entries(tree.nodes)),
125
+ count: tree.count,
126
+ };
127
+ fmt.text(semantic(treeWithMap));
128
+ fmt.blank();
129
+ }
130
+ else if (options.dom) {
131
+ fmt.text(`DOM: ${PREVIEW_EMPTY_STATES.NO_DATA}`);
132
+ fmt.blank();
133
+ }
111
134
  // Suppress tips in follow mode to reduce screen clutter during live updates
112
135
  if (!options.follow) {
113
136
  fmt.text(compactTipsMessage());
@@ -1 +1 @@
1
- {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preview.js","sourceRoot":"","sources":["../../../src/ui/formatters/preview.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Semantic output formatter for accessibility trees.
3
+ *
4
+ * Converts accessibility tree to token-optimized Markdown-style format.
5
+ * Used by dom get, peek --dom, and session.json output.
6
+ */
7
+ import type { A11yTree } from '../../types.js';
8
+ /**
9
+ * Format accessibility tree as semantic output.
10
+ *
11
+ * Presents page structure using ARIA roles and accessible names.
12
+ * Optimized for token efficiency (70% reduction vs raw HTML).
13
+ *
14
+ * Output format:
15
+ * - Indented tree structure (2 spaces per level)
16
+ * - [Role] "Name" format for each node
17
+ * - Key properties: (focusable), (disabled), (required)
18
+ * - Heading levels: [Heading L1]
19
+ *
20
+ * @param tree - Accessibility tree from collectA11yTree()
21
+ * @returns Markdown-style semantic structure
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * const tree = await collectA11yTree();
26
+ * const output = semantic(tree);
27
+ * console.log(output);
28
+ * // [RootWebArea] "GitHub"
29
+ * // [Banner]
30
+ * // [Link] "Skip to content" (focusable)
31
+ * // [Main]
32
+ * // [Heading L1] "Trending"
33
+ * ```
34
+ */
35
+ export declare function semantic(tree: A11yTree): string;
36
+ //# sourceMappingURL=semantic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic.d.ts","sourceRoot":"","sources":["../../../src/ui/formatters/semantic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAY,MAAM,YAAY,CAAC;AAErD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM,CAuB/C"}
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Semantic output formatter for accessibility trees.
3
+ *
4
+ * Converts accessibility tree to token-optimized Markdown-style format.
5
+ * Used by dom get, peek --dom, and session.json output.
6
+ */
7
+ /**
8
+ * Format accessibility tree as semantic output.
9
+ *
10
+ * Presents page structure using ARIA roles and accessible names.
11
+ * Optimized for token efficiency (70% reduction vs raw HTML).
12
+ *
13
+ * Output format:
14
+ * - Indented tree structure (2 spaces per level)
15
+ * - [Role] "Name" format for each node
16
+ * - Key properties: (focusable), (disabled), (required)
17
+ * - Heading levels: [Heading L1]
18
+ *
19
+ * @param tree - Accessibility tree from collectA11yTree()
20
+ * @returns Markdown-style semantic structure
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * const tree = await collectA11yTree();
25
+ * const output = semantic(tree);
26
+ * console.log(output);
27
+ * // [RootWebArea] "GitHub"
28
+ * // [Banner]
29
+ * // [Link] "Skip to content" (focusable)
30
+ * // [Main]
31
+ * // [Heading L1] "Trending"
32
+ * ```
33
+ */
34
+ export function semantic(tree) {
35
+ const lines = [];
36
+ function traverse(nodeId, depth) {
37
+ const node = tree.nodes.get(nodeId);
38
+ if (!node)
39
+ return;
40
+ const indent = ' '.repeat(depth);
41
+ const roleText = formatRole(node);
42
+ const nameText = node.name ? ` "${node.name}"` : '';
43
+ const propsText = formatProps(node);
44
+ lines.push(`${indent}${roleText}${nameText}${propsText}`);
45
+ if (node.childIds) {
46
+ for (const childId of node.childIds) {
47
+ traverse(childId, depth + 1);
48
+ }
49
+ }
50
+ }
51
+ traverse(tree.root.nodeId, 0);
52
+ return lines.join('\n');
53
+ }
54
+ /**
55
+ * Format role with special handling for headings.
56
+ *
57
+ * @param node - Accessibility node
58
+ * @returns Formatted role string
59
+ */
60
+ function formatRole(node) {
61
+ const role = capitalize(node.role);
62
+ if (node.role.toLowerCase() === 'heading' && node.properties?.['level'] !== undefined) {
63
+ const level = node.properties['level'];
64
+ const levelNum = typeof level === 'number' ? level : Number(level);
65
+ if (!isNaN(levelNum)) {
66
+ return `[Heading L${levelNum}]`;
67
+ }
68
+ }
69
+ return `[${role}]`;
70
+ }
71
+ /**
72
+ * Format node properties as parenthesized list.
73
+ *
74
+ * @param node - Accessibility node
75
+ * @returns Formatted properties string
76
+ */
77
+ function formatProps(node) {
78
+ const props = [];
79
+ if (node.focusable)
80
+ props.push('focusable');
81
+ if (node.focused)
82
+ props.push('focused');
83
+ if (node.disabled)
84
+ props.push('disabled');
85
+ if (node.required)
86
+ props.push('required');
87
+ return props.length > 0 ? ` (${props.join(', ')})` : '';
88
+ }
89
+ /**
90
+ * Capitalize first letter of string.
91
+ *
92
+ * @param str - Input string
93
+ * @returns Capitalized string
94
+ */
95
+ function capitalize(str) {
96
+ return str.charAt(0).toUpperCase() + str.slice(1);
97
+ }
98
+ //# sourceMappingURL=semantic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semantic.js","sourceRoot":"","sources":["../../../src/ui/formatters/semantic.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAc;IACrC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,SAAS,QAAQ,CAAC,MAAc,EAAE,KAAa;QAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,IAAI;YAAE,OAAO;QAElB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACpD,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC;QAEpC,KAAK,CAAC,IAAI,CAAC,GAAG,MAAM,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,EAAE,CAAC,CAAC;QAE1D,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACpC,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;YAC/B,CAAC;QACH,CAAC;IACH,CAAC;IAED,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,IAAc;IAChC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAEnC,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,OAAO,CAAC,KAAK,SAAS,EAAE,CAAC;QACtF,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACvC,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC;YACrB,OAAO,aAAa,QAAQ,GAAG,CAAC;QAClC,CAAC;IACH,CAAC;IAED,OAAO,IAAI,IAAI,GAAG,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,SAAS,WAAW,CAAC,IAAc;IACjC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,IAAI,CAAC,SAAS;QAAE,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAC5C,IAAI,IAAI,CAAC,OAAO;QAAE,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAC1C,IAAI,IAAI,CAAC,QAAQ;QAAE,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IAE1C,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;AAC1D,CAAC;AAED;;;;;GAKG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACpD,CAAC"}
@@ -1,8 +1,8 @@
1
1
  import { getChromeDiagnostics } from '../../connection/diagnostics.js';
2
- import { isProcessAlive } from '../../session/process.js';
3
2
  import { calculateDuration, formatTimeAgo } from '../../session/statusData.js';
4
3
  import { OutputFormatter } from '../../ui/formatting.js';
5
4
  import { formatDiagnosticsForStatus } from '../../ui/messages/chrome.js';
5
+ import { isProcessAlive } from '../../utils/process.js';
6
6
  import { VERSION } from '../../utils/version.js';
7
7
  /**
8
8
  * Format session status for human-readable output
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/ui/formatters/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../../src/ui/formatters/status.ts"],"names":[],"mappings":"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"}
@@ -11,6 +11,13 @@
11
11
  * @returns Formatted success message
12
12
  */
13
13
  export declare function chromeKilledMessage(pid?: number): string;
14
+ /**
15
+ * Generate orphaned daemons cleaned message.
16
+ *
17
+ * @param count - Number of orphaned daemons cleaned up
18
+ * @returns Formatted success message
19
+ */
20
+ export declare function orphanedDaemonsCleanedMessage(count: number): string;
14
21
  /**
15
22
  * Generate warning message.
16
23
  *
@@ -1 +1 @@
1
- {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/commands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAMD;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAErD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5D;AACD;;;;;KAKK;AACL,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3D;AASD;;;;KAIK;AACL,wBAAgB,uBAAuB,IAAI,MAAM,CAgBhD"}
1
+ {"version":3,"file":"commands.d.ts","sourceRoot":"","sources":["../../../src/ui/messages/commands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAEtD;AAMD;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,IAAI,MAAM,CAEpD;AAED;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAErD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE5D;AACD;;;;;KAKK;AACL,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAM9D;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3D;AASD;;;;KAIK;AACL,wBAAgB,uBAAuB,IAAI,MAAM,CAgBhD"}
@@ -17,6 +17,15 @@ import { joinLines } from '../../ui/formatting.js';
17
17
  export function chromeKilledMessage(pid) {
18
18
  return pid ? `Killed Chrome (PID ${pid})` : 'Killed Chrome';
19
19
  }
20
+ /**
21
+ * Generate orphaned daemons cleaned message.
22
+ *
23
+ * @param count - Number of orphaned daemons cleaned up
24
+ * @returns Formatted success message
25
+ */
26
+ export function orphanedDaemonsCleanedMessage(count) {
27
+ return `Cleaned up ${count} orphaned daemon process${count === 1 ? '' : 'es'}`;
28
+ }
20
29
  /**
21
30
  * Generate warning message.
22
31
  *
@@ -1 +1 @@
1
- {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui/messages/commands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC9C,OAAO,GAAG,CAAC,CAAC,CAAC,sBAAsB,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,YAAY,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO,6BAA6B,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO,gCAAgC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,4DAA4D,CAAC;AACtE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,OAAO,4BAA4B,GAAG,eAAe,CAAC;AACxD,CAAC;AACD;;;;;KAKK;AACL,MAAM,UAAU,0BAA0B,CAAC,GAAW;IACpD,OAAO,SAAS,CACd,oBAAoB,GAAG,oBAAoB,EAC3C,2BAA2B,EAC3B,+DAA+D,CAChE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,OAAO,gCAAgC,GAAG,GAAG,CAAC;AAChD,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAC/E;;;;KAIK;AACL,MAAM,UAAU,uBAAuB;IACrC,OAAO,SAAS,CACd,EAAE,EACF,yCAAyC,EACzC,EAAE,EACF,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,EAAE,EACF,6BAA6B,EAC7B,EAAE,EACF,uCAAuC,EACvC,+BAA+B,EAC/B,qCAAqC,EACrC,EAAE,CACH,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../../src/ui/messages/commands.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/C,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAY;IAC9C,OAAO,GAAG,CAAC,CAAC,CAAC,sBAAsB,GAAG,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;AAC9D,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAAa;IACzD,OAAO,cAAc,KAAK,2BAA2B,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;AACjF,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,YAAY,OAAO,EAAE,CAAC;AAC/B,CAAC;AAED,+EAA+E;AAC/E,2BAA2B;AAC3B,+EAA+E;AAE/E;;;;GAIG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B;IACzC,OAAO,6BAA6B,CAAC;AACvC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,4BAA4B;IAC1C,OAAO,gCAAgC,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,4DAA4D,CAAC;AACtE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CAAC,GAAW;IAClD,OAAO,4BAA4B,GAAG,eAAe,CAAC;AACxD,CAAC;AACD;;;;;KAKK;AACL,MAAM,UAAU,0BAA0B,CAAC,GAAW;IACpD,OAAO,SAAS,CACd,oBAAoB,GAAG,oBAAoB,EAC3C,2BAA2B,EAC3B,+DAA+D,CAChE,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAW;IACjD,OAAO,gCAAgC,GAAG,GAAG,CAAC;AAChD,CAAC;AAED,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAE/E,+EAA+E;AAC/E,yBAAyB;AACzB,+EAA+E;AAC/E;;;;KAIK;AACL,MAAM,UAAU,uBAAuB;IACrC,OAAO,SAAS,CACd,EAAE,EACF,yCAAyC,EACzC,EAAE,EACF,mBAAmB,EACnB,sBAAsB,EACtB,0BAA0B,EAC1B,EAAE,EACF,6BAA6B,EAC7B,EAAE,EACF,uCAAuC,EACvC,+BAA+B,EAC/B,qCAAqC,EACrC,EAAE,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Error Utilities Unit Tests
3
+ *
4
+ * Tests error message extraction functions.
5
+ *
6
+ * Following testing philosophy:
7
+ * - Test the BEHAVIOR: "Always returns string, never throws"
8
+ * - Test the PROPERTY: "Handles all error types gracefully"
9
+ * - No mocking needed - pure utility function
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=errors.unit.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.unit.test.d.ts","sourceRoot":"","sources":["../../../src/utils/__tests__/errors.unit.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}